/****************************************************************************************/
/* Client Specific Styling for C9 Work Specific Theme
/****************************************************************************************/
:root {
  font-family: "helvetica neue", helvetica, sans-serif;
  --default-font: "helvetica neue", helvetica, sans-serif;
}

/*
Use the following with the build tools to generate new client styles for fonts
Remove inherit font settings on the $font-family variables

@import url("https://use.typekit.net/tet3dqk.css");
$headings-font-family: league-gothic;
$font-family-sans-serif: oswald;
$font-family-base: muli;

*/
.c9 dl,
.entry-content p,
.entry-footer,
p {
  line-height: 1.6;
}

a,
.editor-styles-wrapper .block-editor-rich-text__editable a {
  color: #5c5c5c;
}

.entry-content p a {
  background: -webkit-gradient(linear, left bottom, left top, color-stop(12%, rgba(74, 74, 74, 0.4)), color-stop(12%, rgba(74, 74, 74, 0)));
  background: linear-gradient(0deg, rgba(74, 74, 74, 0.4) 12%, rgba(74, 74, 74, 0) 12%);
  text-decoration: none;
}

.entry-content p a:hover,
.entry-content p a:focus {
  background: -webkit-gradient(linear, left bottom, left top, color-stop(20%, rgba(74, 74, 74, 0.6)), color-stop(20%, rgba(74, 74, 74, 0)));
  background: linear-gradient(0deg, rgba(74, 74, 74, 0.6) 20%, rgba(74, 74, 74, 0) 20%);
}

.entry-content p a:focus {
  outline: 1px dotted #000000;
}

body.page {
  background: black;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(1%, rgba(0, 0, 0, 0.8673844538)), color-stop(5%, rgba(0, 0, 0, 0.667)), color-stop(13%, rgba(0, 0, 0, 0)));
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.8673844538) 1%, rgba(0, 0, 0, 0.667) 5%, rgba(0, 0, 0, 0) 13%);
  background-attachment: fixed;
  background-repeat: no-repeat;
}

a:hover {
  color: #000000;
}

.c9 .wrapper {
  margin-top: -115px;
  margin-bottom: 0px;
}

.single-post .wrapper,
.archive .c9 .wrapper {
  margin-top: 0px;
}

@media only screen and (min-width: 768px) {
  .blog .c9 .wrapper,
.archive .c9 .wrapper {
    margin-top: 30px;
  }
}
.c9-layout-column-wrap {
  display: -ms-grid;
}

.c9-grid .c9-layout-column-wrap {
  position: relative;
}

@media only screen and (max-width: 667px) {
  .single .entry-content {
    padding: 20px;
  }

  .page-search-results {
    margin-top: 135px;
  }

  .blog .site .wrapper {
    margin-top: 30px;
  }
}
@media only screen and (min-width: 1200px) {
  .navbar .container {
    width: 1340px;
    max-width: 1340px;
  }

  #left-sidebar,
#right-sidebar {
    background-color: #ffffff;
  }
}
/****************************************************************************************/
/* Client default colors, button colors + background colors */
/****************************************************************************************/
.has-color-orange-color {
  color: #FCBD13 !important;
}

.has-color-yellow-color {
  color: #FEC50A !important;
}

.has-color-white-color {
  color: #ffffff !important;
}

.has-color-black-color {
  color: #000000 !important;
}

.has-color-gray-color {
  color: #4a4a4a !important;
}

.bg-primary,
.has-color-orange-background-color {
  background-color: #FCBD13;
}

.bg-secondary,
.has-color-yellow-background-color {
  background-color: #FEC50A;
}

.has-color-gray-background-color {
  background-color: #ADB1B2;
}

.has-color-white-background-color {
  background-color: #fff;
}

.has-color-black-background-color {
  background-color: #000000;
}

.bg-success {
  background-color: #21a77a;
}

.bg-info {
  background-color: #f7f7f9;
}

.bg-warning {
  background-color: #ec971f;
}

.bg-danger {
  background-color: #843534;
}

.bg-dark {
  background-color: #000000;
}

/****************************************************************************************/
/* Client buttons */
/****************************************************************************************/
.btn,
.btn:visited,
.entry-content .btn,
.entry-content .btn:visited,
.entry-content button,
.entry-content input[type=button],
.entry-content input[type=reset],
.entry-content input[type=submit],
.entry-content .button,
.entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link,
.wp-block-button__link,
.site .wp-block-button:not(.is-style-outline) .wp-block-button__link,
.wp-block-button:not(.is-style-outline) .wp-block-button__link.mce-content-body,
.wp-block-file__button,
.wp-block-file .wp-block-file__button,
#searchsubmit,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:not([href]):not([tabindex]) {
  padding: 19px 28px 14px 28px;
  color: #ffffff;
  font-size: 20px;
  letter-spacing: 0.01em;
  text-align: center;
  line-height: 1;
  border-radius: 0px;
  border: none;
}

.wp-block-button.is-style-outline .wp-block-button__link:not([href]):not([tabindex]),
.wp-block-button.is-style-outline .wp-block-button__link {
  background-image: none;
  background-color: transparent;
  border: 3px solid;
  padding: 16px 25px 11px 25px;
  font-size: 20px;
  letter-spacing: 0.01em;
}

.c9-cta.c9-block-cta .wp-block-button__link.c9-button-shape-outline {
  border: 3px solid;
}

.c9 .entry-content .btn-secondary {
  background-color: #FEC50A;
}

.c9 .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:active,
.c9 .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus {
  color: #ffffff;
  white-space: nowrap;
}

.c9 .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:visited,
.c9 .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.c9 .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link,
.c9 .entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:not([href]):not([tabindex]) {
  color: #ffffff;
}

.c9 button:hover,
.btn:hover,
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover,
.editor-styles-wrapper .button:hover,
.editor-styles-wrapper .button-primary:hover,
.editor-styles-wrapper .mce-content-body.button:hover,
.editor-styles-wrapper .wp-block-button:not(.is-style-outline) .wp-block-button__link:hover {
  opacity: 0.8;
  color: #fff;
}

.btn:hover,
.entry-content button:hover,
.wp-block-button a:hover,
.wp-block-button__link:hover {
  opacity: 0.8;
}

.where-to-buy > .btn:hover {
  color: #000000;
}

@media only screen and (max-width: 667px) {
  .c9 .c9-cta .wp-block-button__link.c9-button-size-small,
.c9 .c9-cta .wp-block-button__link.c9-button-size-medium,
.c9 .c9-cta .wp-block-button__link.c9-button-size-large,
.c9 .c9-cta .wp-block-button__link.c9-button-size-extralarge {
    font-size: 20px;
  }
}
.bg-primary,
.has-color-orange-background-color {
  background-color: #FCBD13 !important;
}

.bg-secondary,
.has-color-yellow-background-color {
  background-color: #FEC50A !important;
}

.has-color-gray-background-color {
  background-color: #ADB1B2 !important;
}

.has-color-white-background-color {
  background-color: #ffffff !important;
}

.has-color-black-background-color {
  background-color: #000000 !important;
}

/****************************************************************************************/
/* tags */
.i-tag,
.tags-links,
.cat-links {
  letter-spacing: 0.01em;
  text-transform: uppercase;
  font-weight: normal;
  color: #000000;
  font-size: 10px;
}

.tags-links a,
.cat-links a {
  text-decoration: none;
  color: #5c5c5c;
  font-weight: 600;
}

.i-tag:before,
.tags-links a:before {
  display: inline;
  content: "\f02b";
  font: normal normal normal 14px/1 FontAwesome;
  color: #FCBD13;
  padding-right: 2px;
}

.tags-links a:hover {
  color: #000000;
}

/****************************************************************************************/
/* Client navbar */
/****************************************************************************************/
#wrapper-navbar {
  z-index: 1020;
}

.header-navbar .navbar {
  background-color: transparent;
}

.header-navbar .navbar-small,
.blog .header-navbar,
.archive .header-navbar,
.single-post .header-navbar,
.error404 .header-navbar,
.search .header-navbar {
  background-color: #000000;
}

.header-navbar .navbar.navbar-small {
  max-height: 55px;
  height: 55px;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
  background-color: #ffffff;
}

.navbar-small {
  max-height: 55px;
  height: 55px;
  -webkit-transition: opacity 0.4s ease-in-out;
  transition: opacity 0.4s ease-in-out;
  background-color: #ffffff;
}

.navbar-small .navbar-brand img {
  max-height: 45px;
  width: auto;
}

.navbar-nav li a,
.header-navbar .navbar-small .nav .nav-item > .nav-link {
  text-transform: uppercase;
  font-size: 15px;
  line-height: 1;
  color: rgba(43, 43, 43, 0.77);
  letter-spacing: 1px;
}

.c9 .dropdown-toggle:after {
  border-top: none;
  border-right: none;
  border-bottom: none;
  border-left: none;
}

@media only screen and (min-width: 1px) {
  .header-navbar {
    height: 55px;
  }

  .navbar-brand img {
    width: auto;
    max-height: 45px;
    height: auto;
  }

  #page .navbar-small-mobile {
    padding-bottom: 0px;
  }

  .navbar-small .navbar-brand {
    background-size: contain;
    max-width: 285px;
    max-height: 45px;
    width: auto;
    height: auto;
    position: absolute;
  }

  .c9work-dark-logo {
    display: inline-block;
  }

  .navbar.navbar-small .c9work-dual-logo {
    display: none;
  }

  .navbar:not(.navbar-small) .c9work-dark-logo {
    display: none;
  }

  .navbar .navbar-brand {
    position: relative;
  }

  .navbar-small .navbar-brand img {
    opacity: 0;
  }

  .navbar .container-fluid .navbar-small-buttons {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }

  .btn-nav-search,
.navbar-toggler {
    color: #5c5c5c;
  }

  .nav-toggle .navbar-toggler:focus,
.nav-toggle .navbar-toggler:hover {
    color: #000000;
  }

  .navbar-toggler[aria-expanded=true] .fa-bars:before {
    content: "\f00d";
  }

  .nav-search,
.nav-toggle {
    display: inline-block;
  }
}
@media only screen and (max-width: 667px) {
  .navbar .container-fluid {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }

  .navbar .container-fluid .c9-custom-logo {
    -ms-flex-item-align: start;
        align-self: flex-start;
  }

  .navbar .container-fluid .navbar-small-buttons {
    margin-left: auto;
  }

  #mega-menu-wrap-primary {
    margin-left: 0px;
  }

  .btn-nav-search,
.navbar-toggler {
    margin: 0px;
    padding: 5px;
  }
}
/* toggle adjustments for tablet when not using mega menu*/
@media only screen and (min-width: 668px) and (max-width: 991px) {
  .navbar-toggler {
    color: #fff;
  }

  .navbar:not(.navbar-small) .navbar-toggler:focus {
    color: #fff;
  }

  .navbar-small .btn-nav-search,
.navbar-small .navbar-toggler {
    color: rgba(0, 0, 0, 0.5);
  }
}
@media only screen and (min-width: 768px) {
  .header-navbar {
    height: 108px;
  }
}
@media only screen and (min-width: 992px) {
  .navbar-brand img {
    max-width: 285px;
    max-height: 92px;
    width: auto;
    height: auto;
  }

  .c9 #mega-menu-wrap-primary {
    width: 100%;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }

  .navbar-nav,
.c9 #mega-menu-wrap-primary #mega-menu-primary {
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }

  .header-navbar {
    height: 115px;
  }

  .navbar-nav > li > a {
    color: #fff;
  }
}
/* navbar container widths for mega menu and normal menus*/
@media only screen and (min-width: 1px) {
  .navbar-nav,
.c9 #mega-menu-wrap-primary #mega-menu-primary {
    width: 100%;
    margin-left: 0px;
  }
}
@media only screen and (min-width: 1px) and (max-width: 414px) {
  .navbar-nav,
.c9 #mega-menu-wrap-primary #mega-menu-primary {
    top: 49px;
  }
}
/* spacing for that weird inbetween tablet size for navigation */
@media only screen and (min-width: 992px) and (max-width: 1024px) {
  .navbar-nav,
.c9 #mega-menu-wrap-primary #mega-menu-primary {
    margin-left: 40px;
  }
}
@media only screen and (min-width: 1200px) {
  .navbar-nav,
.c9 #mega-menu-wrap-primary #mega-menu-primary {
    width: 80%;
    margin-left: 0px;
  }
}
@media only screen and (max-width: 991px) {
  /* initial nav links should be white and then change to black after navbar small kicks in*/
  .navbar:not(.navbar-small) #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-1 .mega-toggle-label,
.navbar:not(.navbar-small) #mega-menu-wrap-primary .mega-menu-toggle .mega-toggle-block-1:after {
    color: #ffffff;
  }

  .header-navbar .navbar-collapse,
.header-navbar .navbar-collapse.show {
    left: 0;
    background-color: #ffffff;
  }
}
/****************************************************************************************/
/* Drop down menus, animations of menus, and button hover animations in main nav */
/****************************************************************************************/
.header-navbar .navbar .nav .nav-item .dropdown-item {
  padding: 10px 8px;
}

.header-navbar .navbar .nav .nav-item .dropdown-menu .nav-item {
  margin: 0 6px;
}

@media only screen and (min-width: 992px) {
  .header-navbar .nav .nav-item .dropdown-menu {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.header-navbar .nav .nav-item .dropdown-menu {
  border-radius: 0px;
  margin-top: 1em;
  border: 0px;
  -webkit-animation: fadeInFromNone 0.5s ease-out;
  animation: fadeInFromNone 0.5s ease-out;
}

.header-navbar .nav .nav-item .dropdown-menu.show {
  display: block;
  -webkit-animation: fadeInFromNone 0.5s ease-out;
  animation: fadeInFromNone 0.5s ease-out;
}

@-webkit-keyframes fadeInFromNone {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
@keyframes fadeInFromNone {
  0% {
    display: none;
    opacity: 0;
  }
  1% {
    display: block;
    opacity: 0;
  }
  100% {
    display: block;
    opacity: 1;
  }
}
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus,
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus > span {
  color: #000000;
  outline: 1px dotted #000000;
}

#mega-menu-wrap-primary #mega-menu-primary a:hover,
#mega-menu-wrap-primary #mega-menu-primary a:focus {
  color: #000000;
}

#mega-menu-wrap-primary #mega-menu-primary a:focus {
  outline: 1px dotted #000000;
}

/* first level nav link hover effects */
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span {
  display: inline-block;
  overflow: hidden;
  padding: 0px;
}
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:before, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:after,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:before,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:after {
  right: 0;
  bottom: 0;
  background: #d99f03;
}
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:before,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:before {
  width: 100%;
  height: 2px;
  -webkit-transform: translateX(-101%);
          transform: translateX(-101%);
}
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:after,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:after {
  width: 2px;
  height: 100%;
  -webkit-transform: translateY(101%);
          transform: translateY(101%);
}
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link > span,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span > span,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span > span {
  display: block;
  padding: 14px 12px;
}
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link > span:before, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link > span:after,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span > span:before,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span > span:after {
  left: 0;
  top: 0;
  background: #d99f03;
}
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link > span:before,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span > span:before {
  width: 100%;
  height: 2px;
  -webkit-transform: translateX(101%);
          transform: translateX(101%);
}
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link > span:after,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span > span:after {
  width: 2px;
  height: 100%;
  -webkit-transform: translateY(-101%);
          transform: translateY(-101%);
}
.c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:focus:before, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:focus:after, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:focus > span:before, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:focus > span:after, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:hover:before, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:hover:after, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:hover > span:before, .c9 .header-navbar:not(.navbar-small) .nav .nav-item > .nav-link:hover > span:after,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:focus:before,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:focus:after,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:focus > span:before,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:focus > span:after,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:hover:before,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:hover:after,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:hover > span:before,
.c9 .header-navbar:not(.navbar-small) .nav .nav-item .nav-link > span:hover > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:focus > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:hover > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:focus:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:focus:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:focus > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:focus > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:hover:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:hover:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:hover > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:hover > span:after {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
  -webkit-transition: -webkit-transform 0.4s ease-in-out;
  transition: -webkit-transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out;
  transition: transform 0.4s ease-in-out, -webkit-transform 0.4s ease-in-out;
}

@media only screen and (min-width: 414px) and (max-width: 991px) {
  /* nav link colors turn white inbetween mobile/tablet/laptop*/
  .header-navbar .nav .nav-item > .nav-link,
.header-navbar .nav .nav-item .nav-link > span {
    color: #000000;
  }
}
.header-navbar .nav .nav-item > .nav-link,
.header-navbar .nav .nav-item .nav-link > span,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span,
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link,
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span {
  position: relative;
  text-decoration: none;
}
.header-navbar .nav .nav-item > .nav-link:before, .header-navbar .nav .nav-item > .nav-link:after,
.header-navbar .nav .nav-item .nav-link > span:before,
.header-navbar .nav .nav-item .nav-link > span:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:after,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:before,
.navbar #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:after,
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:before,
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link:after,
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:before,
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span:after {
  content: "";
  position: absolute;
}

.header-navbar .navbar-small .nav .nav-item > .nav-link,
.header-navbar .navbar-small .nav .nav-item .nav-link > span {
  color: #000000;
}

@media only screen and (max-width: 768px) and (orientation: portrait) {
  .navbar:not(.navbar-small) #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    overflow: visible;
  }

  .navbar:not(.navbar-small) #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item,
.navbar-small #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link,
.navbar-small.fixed-top #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link {
    margin: 0px auto;
    text-align: center;
    min-height: 40px;
  }

  .navbar:not(.navbar-small) #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link > span {
    margin: 0px;
  }
}
/****************************************************************************************/
/* header navbar search customizations */
/****************************************************************************************/
.nav-search {
  margin-right: 10px;
}

@media only screen and (min-width: 992px) {
  .nav-search,
.nav-toggle {
    line-height: 2;
  }

  .nav-search {
    display: none;
  }

  .header-navbar .search,
.c9 #mega-menu-wrap-primary #mega-menu-primary li.search {
    min-width: 125px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 10px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
.header-navbar .nav-search .btn-nav-search,
.header-navbar .navbar-toggler {
  font-size: 20px;
}

.search form {
  display: inline;
}

.c9 .header-navbar .search input:focus {
  outline: 0;
}

.c9 .header-navbar .search:before,
.c9 #mega-menu-wrap-primary #mega-menu-primary li.search:before {
  display: inline-block;
  font-family: "FontAwesome";
  color: #fff;
  font-size: 19px;
  content: "\f002";
}

.search ::-webkit-input-placeholder {
  color: #fff !important;
}

.search ::-moz-placeholder {
  color: #fff !important;
}

.search ::-ms-placeholder {
  color: #fff !important;
}

.search ::-webkit-input-placeholder {
  color: #fff !important;
}

.search :-ms-input-placeholder {
  color: #fff !important;
}

.search ::-ms-input-placeholder {
  color: #fff !important;
}

.search ::-moz-placeholder {
  color: #fff !important;
}

.search ::placeholder {
  color: #fff !important;
}

.header-navbar .search #s {
  background: transparent;
  border: none;
  border-top: 1px solid transparent;
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  border-bottom: 1px solid #fff;
  text-transform: uppercase;
  font-weight: 300;
  line-height: 1;
  width: 65px;
  display: inline-block;
  color: #fff;
  font-size: 19px;
  margin-left: 4px;
  padding-bottom: 0px;
  text-shadow: 1px 1px 3px black;
  min-height: 15px;
}

.header-navbar .search #s:focus {
  background: transparent;
  border-top: 1px dotted rgba(255, 255, 255, 0.8);
  border-left: 1px dotted rgba(255, 255, 255, 0.8);
  border-right: 1px dotted rgba(255, 255, 255, 0.8);
  color: #fff;
}

.header-navbar .navbar-small .search #s:focus {
  color: #000000;
  border-top: 1px dotted rgba(0, 0, 0, 0.2);
  border-left: 1px dotted rgba(0, 0, 0, 0.2);
  border-right: 1px dotted rgba(0, 0, 0, 0.2);
}

.header-navbar .navbar-small .search ::-moz-placeholder {
  color: #000000 !important;
  text-shadow: none;
}

.header-navbar .navbar-small .search ::-webkit-input-placeholder {
  color: #000000 !important;
  text-shadow: none;
}

.header-navbar .navbar-small .search ::-ms-placeholder {
  color: #000000 !important;
  text-shadow: none;
}

.header-navbar .navbar-small .search ::-webkit-input-placeholder {
  color: #000000 #000000 !important;
  text-shadow: none;
}

.header-navbar .navbar-small .search :-ms-input-placeholder {
  color: #9e9e9e !important;
  text-shadow: none;
}

.header-navbar .navbar-small .search ::-ms-input-placeholder {
  color: #000000 !important;
  text-shadow: none;
}

.header-navbar .navbar-small .search ::-moz-placeholder {
  color: #000000 !important;
  text-shadow: none;
}

.header-navbar .navbar-small .search ::placeholder {
  color: #000000 !important;
  text-shadow: none;
}

.header-navbar .navbar-small .search:before,
.header-navbar .navbar-small .search #s,
.header-navbar .navbar-small .search #s:focus {
  color: #000000;
  text-shadow: none;
}

.c9 .header-navbar .navbar-small .search:before,
.c9 .navbar-small #mega-menu-wrap-primary #mega-menu-primary li.search:before {
  color: #000000;
}

.header-navbar .navbar-small .search #s {
  border-bottom: 1px solid #000000;
}

@media only screen and (max-width: 991px) {
  .c9 .header-navbar li.search,
.c9 #mega-menu-wrap-primary #mega-menu-primary li.search {
    display: none;
  }

  .header-navbar .navbar:not(.navbar-small) .nav-search .btn-nav-search {
    color: #ffffff;
  }

  .header-navbar .navbar:not(.navbar-small) .search #s {
    border-bottom: 1px solid #000000;
    color: #000000;
  }

  .c9 .navbar:not(.navbar-small) #mega-menu-wrap-primary #mega-menu-primary li.search:before,
.c9 .navbar:not(.navbar-small) li.search:before {
    color: #000000;
  }

  .header-navbar .navbar-small .search ::-moz-placeholder {
    color: #000000 !important;
    text-shadow: none;
  }

  .header-navbar .search ::-webkit-input-placeholder {
    color: #000000 !important;
    text-shadow: none;
  }

  .header-navbar .search ::-ms-placeholder {
    color: #000000 !important;
    text-shadow: none;
  }

  .header-navbar .search ::-webkit-input-placeholder {
    color: #000000 !important;
    text-shadow: none;
  }

  .header-navbar .search :-ms-input-placeholder {
    color: #000000 !important;
    text-shadow: none;
  }

  .header-navbar .search ::-ms-input-placeholder {
    color: #000000 !important;
    text-shadow: none;
  }

  .header-navbar .search ::-moz-placeholder {
    color: #000000 !important;
    text-shadow: none;
  }

  .header-navbar .search ::placeholder {
    color: #000000 !important;
    text-shadow: none;
  }
}
/****************************************************************************************/
/* Client Typography */
/****************************************************************************************/
.h4,
.h5,
.h6,
h4,
h5,
h6 {
  margin-bottom: 0.25em;
}

.c9-site-title,
.c9 .h1,
.c9 .h2,
.c9 .h3,
.c9 .h4,
.c9 .h5,
.c9 .h6,
.c9 h1,
.c9 h2,
.c9 h3,
.c9 h4,
.c9 h5,
.c9 h6 {
  letter-spacing: 0.04em;
}

.c9-txl,
.display-1,
.display-2,
.display-3,
.display-4,
.display-5,
.display-6 {
  line-height: 1.1;
}

.entry-content,
.wp-block-pullquote,
.wp-block-pullquote blockquote p,
#wrapper-footer {
  word-wrap: break-word;
  font-family: inherit;
}

.navbar,
.navbar ul li .dropdown-item,
.navbar ul li a,
.mega-menu-wrap,
.header-navbar .navbar .nav .nav-item .nav-link,
.header-navbar .navbar .nav .nav-item .dropdown-item {
  font-family: inherit;
}

.xxl-heading .c9-txl {
  font-size: 180px !important;
  line-height: 0.9;
  letter-spacing: 0.02em;
}

.c9 .c9-heading h1,
.c9 .c9-heading h2,
.c9 .c9-heading h3,
.c9 .c9-heading h4,
.c9 .c9-heading h5,
.c9 .c9-heading h6 {
  line-height: 1;
}

@media only screen and (max-width: 568px) {
  .xxl-heading .c9-txl {
    font-size: 100px !important;
    line-height: 0.9;
    letter-spacing: 0.02em;
  }

  .entry-content p[class$=-font-size] {
    line-height: 1;
  }
}
@media only screen and (min-width: 1px) {
  /* section heading accents */
  .editor-styles-wrapper .editor-rich-text .section-heading-accent,
.section-heading-accent,
.editor-styles-wrapper .editor-rich-text .section-heading-accent-alt,
.section-heading-accent-alt,
.entry-content .section-heading-accent-alt,
.entry-content h3.section-heading-accent,
.entry-content h3.section-heading-accent-alt {
    margin: 10px auto;
    font-size: 16px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: 0.08em;
    text-align: center;
    text-transform: uppercase;
    color: #000000;
  }
}
@media only screen and (min-width: 768px) {
  /* subheadings */
  .entry-content .subheading1,
.entry-content .subheading2,
.entry-content .subheading3,
.entry-content .subheading4,
.entry-content .subheading5,
.wp-block-heading .subheading1,
.wp-block-heading .subheading2,
.wp-block-heading .subheading3,
.wp-block-heading .subheading4,
.wp-block-heading .subheading5 {
    font-weight: 400;
    font-size: 26px;
    letter-spacing: 0.055em;
  }

  .entry-content .subheading2,
.wp-block-heading .subheading2,
.subheading2 {
    font-weight: 500;
    font-size: 23px;
    letter-spacing: 0.12em;
  }

  .entry-content .subheading3,
.wp-block-heading .subheading3,
.subheading3 {
    font-weight: 100;
    font-size: 20px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    line-height: 1.2;
  }

  .entry-content .subheading4,
.wp-block-heading .subheading4,
.subheading4 {
    font-size: 16px;
    letter-spacing: 0.001em;
  }

  .entry-content .subheading5,
.wp-block-heading .subheading5,
.subheading5 {
    font-size: 14px;
    letter-spacing: 0.125em;
    font-weight: 400;
  }

  .icon-label,
.entry-content .icon-label,
.wp-block-heading .icon-label {
    text-transform: uppercase;
    font-weight: 600;
    font-size: 18px !important;
    letter-spacing: 0.2em;
    line-height: 1.1;
  }

  .entry-meta,
.entry-meta a {
    text-transform: uppercase;
    letter-spacing: 0.05em;
    line-height: 1;
    color: #2b2b2b;
  }

  .entry-footer-content {
    margin-top: 30px;
  }

  .entry-footer .comments-link {
    display: block;
    text-align: right;
    text-transform: uppercase;
    font-size: 12px;
  }

  /* WordPress Gutenberg Font Sizes */
  .entry-content .has-small-font-size {
    font-size: 14px;
    line-height: 1.3;
    letter-spacing: 0.02em;
  }
}
.editor-styles-wrapper .is-style-black-bar[data-type="core/paragraph"],
.entry-content p.is-style-black-bar {
  display: block;
  text-align: center;
  text-transform: uppercase;
  font-family: inherit;
  font-size: 20px;
  min-height: 16px;
  max-height: 20px;
  color: #000000;
  background-color: #000000;
  letter-spacing: 0.06px;
  line-height: 1;
}

.editor-styles-wrapper .is-style-black-bar[data-type="core/paragraph"] strong,
.entry-content p.is-style-black-bar strong {
  background-color: #fff;
  color: #000000;
  padding: 0px 20px;
  font-weight: bold;
}

@media only screen and (max-width: 667px) {
  .entry-content p.is-style-black-bar strong,
.editor-styles-wrapper .is-style-black-bar[data-type="core/paragraph"] strong {
    min-height: 12px;
  }

  .entry-content p.is-style-black-bar strong,
.editor-styles-wrapper .is-style-black-bar[data-type="core/paragraph"] strong {
    padding: 5px 8px 2px 8px !important;
  }
}
.editor-styles-wrapper .wp-block-separator.is-style-black-bar,
.c9 .entry-content .wp-block-separator.is-style-black-bar {
  width: 100%;
  height: 20px;
  background-color: #000000;
}

/****************************************************************************************/
/* Client page title header on logins, search, pages, posts, etc. */
/****************************************************************************************/
.page-template-fullwidthpage .c9 .entry-header,
.container-width-page-wrapper.c9 .page .entry-header {
  background-color: #FCBD13;
}

.c9 .entry-header {
  margin-bottom: 20px;
}

.page-search-results .home-search .entry-title {
  color: #ffffff;
  font-size: 50px;
  line-height: 1;
  letter-spacing: 0.12em;
  text-align: center;
  text-transform: uppercase;
  font-weight: 500;
  margin-top: 80px;
}

@media only screen and (min-width: 1px) {
  .c9 .page .entry-header h1 {
    font-size: 50px;
    text-align: center;
    color: #ffffff;
    margin: 70px auto;
    line-height: 1;
  }
}
@media only screen and (min-width: 768px) {
  .c9 .page .entry-header h1 {
    font-size: 80px;
  }
}
/****************************************************************************************/
/* Client unordered and ordered list stylings */
/****************************************************************************************/
.entry-content ul:not(.wp-block-gallery):not(.wc-block-grid__products):not(.gfield_checkbox):not(.gfield_radio):not(.nav-tabs):not(.c9-share-list):not(.products) li,
.editor-styles-wrapper .is-root-container > ul:not(.wp-block-gallery):not(.wc-block-grid__products):not(.gfield_checkbox):not(.gfield_radio):not(.nav-tabs):not(.c9-share-list):not(.products):not(.wp-block-social-links) li,
.entry-content ol:not(.wp-block-gallery):not(.wc-block-grid__products):not(.gfield_checkbox):not(.gfield_radio):not(.nav-tabs):not(.c9-share-list):not(.products) li,
.editor-styles-wrapper .is-root-container > ol:not(.wp-block-gallery):not(.wc-block-grid__products):not(.gfield_checkbox):not(.gfield_radio):not(.nav-tabs):not(.c9-share-list):not(.products):not(.wp-block-social-links) li {
  line-height: 1.6;
}

.entry-content ol li:before {
  margin-left: -21px;
}

.entry-content ol li,
.editor-styles-wrapper .editor-rich-text ol li,
.entry-content ul:not(.wp-block-gallery):not(.blocks-gallery-grid):not(.products):not(.nav-tabs):not(.page-numbers):not(.wp-block-archives):not(.wp-block-social-links) li,
.editor-styles-wrapper .editor-rich-text ul:not(.wp-block-gallery):not(.blocks-gallery-grid):not(.products):not(.nav-tabs):not(.page-numbers):not(.wp-block-archives):not(.wp-block-social-links) li {
  margin: 15px 0px;
}

.editor-styles-wrapper ol li,
.entry-content ol li {
  padding-left: 0px;
}

@media only screen and (max-width: 414px) {
  .c9 .entry-content .c9-horizontal-tabs.resources-tabs ul.nav.nav-tabs {
    margin-top: 0px;
  }

  .c9 .entry-content .c9-horizontal-tabs.resources-tabs .c9-horizontal-tabs-tab ul:not(.blocks-gallery-grid):not(.wc-block-grid__products):not(.gfield_checkbox):not(.gfield_radio):not(.nav-tabs):not(.c9-share-list):not(.products) {
    margin: 0px;
  }

  .home .c9-horizontal-tabs-tab:last-child .wp-block-spacer {
    display: none;
  }

  .home .by-user-gallery .blocks-gallery-item:nth-child(3) {
    max-width: 50%;
    height: auto;
    margin: 0px auto;
  }
}
.entry-content ul:not(.wp-block-gallery) li,
.editor-styles-wrapper .editor-rich-text ul:not(.wp-block-gallery) li {
  position: relative;
}

/****************************************************************************************/
/* horizontal rules customized*/
/****************************************************************************************/
.entry-content .wp-block-column .wp-block-separator.is-style-wide,
.wp-block-columns .wp-block-separator.is-style-wide {
  width: 60%;
  max-width: 60%;
}

/****************************************************************************************/
/* resources guide */
/****************************************************************************************/
@media only screen and (max-width: 414px) {
  .c9-grid.p5 .c9-layout-columns-2 .c9-column-inner ul:not(.wp-block-gallery) {
    margin: 0px !important;
  }
}
/****************************************************************************************/
/* Client Tabs + Toggles */
/****************************************************************************************/
/* big style toggles */
.c9 .c9-toggles .c9-toggles-toggle,
.editor-styles-wrapper .c9-toggles .c9-toggles-toggle {
  padding: 29px 0px 15px 0px;
  border-top: 1px solid #979797;
}

.c9 .c9-toggles .c9-toggles-toggle .c9-toggles-item-collapse {
  top: -4px;
}

.c9-toggles .c9-toggles-toggle:last-child {
  border-bottom: 1px solid #979797;
}

.c9-vertical-tabs .c9-tabs-content.tab-content {
  padding: 25px;
}

.c9 .c9-toggles.is-style-default .c9-toggles-item-heading .c9-toggles-toggle-label,
.editor-styles-wrapper .c9-toggles.is-style-default .c9-toggles-item-heading .c9-toggles-toggle-label {
  text-transform: uppercase;
  color: #000000;
  font-size: 79px;
  text-align: left;
  line-height: 0.9;
  -webkit-transition: color 0.5s ease-out;
  transition: color 0.5s ease-out;
}

.c9 .c9-toggles .c9-toggles-item-heading:hover .c9-toggles-toggle-label {
  color: #4a4a4a;
}

.c9 .c9-toggles .c9-toggles-item-heading {
  cursor: pointer;
}

/* small style toggle */
.editor-styles-wrapper .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-heading .c9-toggles-toggle-label,
.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-heading .c9-toggles-toggle-label {
  font-family: inherit;
  text-transform: none;
}

.editor-styles-wrapper .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-collapse .fa-angle-right:before,
.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-collapse .fa-angle-right:before {
  color: #FCBD13;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle {
  padding: 15px 0px;
  border: none;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle:last-child {
  border: none;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .mb-0 {
  position: relative;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-heading {
  padding-left: 50px;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-heading .c9-toggles-toggle-label {
  font-size: 24px;
  color: #000000;
  letter-spacing: 0.05px;
  text-align: left;
  line-height: 1.2;
  text-transform: none;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-collapse {
  position: absolute;
  left: -50px;
  top: 13px;
  right: auto;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-collapse .fas,
.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-heading:not([data-toggle=collapse]) .c9-toggles-item-collapse .fa-angle-right,
.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-heading[aria-expanded=true] .c9-toggles-item-collapse .fa-angle-right {
  -webkit-transform: none;
          transform: none;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-collapse {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 2.8px solid #000000;
  padding: 5px;
  border-radius: 50%;
  height: 27px;
  width: 27px;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .fa-angle-right:before {
  content: "\f067";
  color: #ebb900;
  font-size: 16px;
  display: block;
  padding-top: 2px;
}

.c9 .c9-toggles.is-style-toggles-small .c9-toggles-toggle .c9-toggles-item-heading[aria-expanded=true] .fa-angle-right:before {
  content: "\f068";
}

/* tabs */
.c9 .entry-content .c9-horizontal-tabs ul.nav.nav-tabs {
  margin: 30px 0px 0px 0px;
}

.entry-content .c9-horizontal-tabs .blocks-gallery-grid .blocks-gallery-item a {
  text-decoration: none;
}

.c9-horizontal-tabs .nav-tabs .nav-link,
.woocommerce .c9 div.product .woocommerce-tabs ul.tabs li a {
  background-color: #adb1b2;
  color: #2b2b2b;
}

.entry-content .nav.nav-tabs .nav-item {
  margin: 0px 10px;
}

.c9 .c9-horizontal-tabs .nav-tabs .nav-link:hover,
.woocommerce .c9 div.product .woocommerce-tabs ul.tabs li a:hover {
  color: #2b2b2b;
  background-image: linear-gradient(35deg, #fff 75%, #FCBD13 25%);
  background-color: #ffffff;
  border-bottom: 0px;
}

.c9 .c9-horizontal-tabs .nav-tabs .nav-link.active,
.woocommerce .c9 div.product .woocommerce-tabs ul.tabs li.active a.nav-link {
  background-color: #FCBD13;
}

.woocommerce .c9 div.product .woocommerce-tabs ul.tabs li.active:after,
.woocommerce .c9 div.product .woocommerce-tabs ul.tabs li:after {
  display: none;
}

.woocommerce.single-product .c9 div.product .woocommerce-tabs ul.tabs > li > .nav-link {
  padding: 13px 55px;
}

@media only screen and (max-width: 768px) {
  .c9 .c9-horizontal-tabs .nav-tabs .nav-link {
    padding: 13px 20px;
  }

  .c9 .entry-content .nav.nav-tabs .nav-item {
    margin: 0px 7px;
  }

  .c9 .entry-content .nav.nav-tabs .nav-item:first-child {
    margin-left: 0px;
  }

  .c9 .entry-content .nav.nav-tabs .nav-item:last-child {
    margin-right: 0px;
  }
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li {
  border-radius: 0;
  background-color: transparent;
  margin: 0px;
  padding: 0px;
  border-bottom: 0px;
  margin-right: 12px;
}

.woocommerce.single-product div.product .woocommerce-tabs ul.tabs {
  padding-left: 0px;
}

.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li:last-child {
  margin-right: 0px;
}

@media only screen and (max-width: 768px) {
  .woocommerce.single-product div.product .woocommerce-tabs ul.tabs li.active,
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li {
    margin-right: 8px;
  }

  .woocommerce.single-product div.product .woocommerce-tabs ul.tabs li .nav-link {
    padding: 11px 19px;
  }

  .entry-content .c9-horizontal-tabs .nav.nav-tabs .nav-item,
.product .c9-horizontal-tabs .nav.nav-tabs .nav-item {
    margin: 0px 6px;
  }

  .woocommerce.single-product .c9 div.product .woocommerce-tabs ul.tabs > li > .nav-link {
    padding: 13px 30px;
  }
}
@media only screen and (max-width: 667px) {
  .entry-content .c9-horizontal-tabs .nav.nav-tabs .nav-item,
.product .c9-horizontal-tabs .nav.nav-tabs .nav-item {
    line-height: 1;
    margin: 0px 3px;
  }

  .c9-horizontal-tabs .nav-tabs .nav-link {
    padding: 11px 19px;
    font-size: 11px;
  }

  .entry-content .c9-horizontal-tabs .nav.nav-tabs,
.product .c9-horizontal-tabs .nav.nav-tabs {
    padding: 0px;
  }
}
@media only screen and (max-width: 414px) {
  .woocommerce.single-product .c9 div.product .woocommerce-tabs ul.tabs > li {
    display: block;
    width: 100%;
    margin: 0px;
  }

  .woocommerce.single-product .c9 div.product .woocommerce-tabs ul.tabs > li > a {
    width: 100%;
    text-align: center;
  }

  .c9 .entry-content .c9-horizontal-tabs > .nav.nav-tabs,
.editor-styles-wrapper .c9-horizontal-tabs > .nav.nav-tabs {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }

  .c9 .entry-content .c9-horizontal-tabs > .nav.nav-tabs .nav-item {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
    text-align: center;
    margin: 3px;
  }

  .c9 .c9-horizontal-tabs .nav-tabs .nav-link {
    padding: 13px 10px;
  }

  .single-product .c9-horizontal-tabs > .nav.nav-tabs .nav-link {
    font-size: 11px;
  }
}
/****************************************************************************************/
/* Client Search */
/****************************************************************************************/
.search-results #wrapper-navbar,
.c9.search #wrapper-navbar,
.search-no-results #wrapper-navbar {
  background-color: #000000;
}

@media only screen and (min-width: 768px) {
  .search-results #wrapper-navbar {
    background-color: #000000;
  }
}
@media only screen and (min-width: 992px) {
  .page-search-results {
    margin-top: 135px;
  }
}
.search-results .site-main .container .entry-summary {
  display: none;
}

.search-results .site-main .container .entry-header .entry-title a {
  color: #000000;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.search-results .site-main .container .entry-header .entry-title a:hover {
  color: #FCBD13;
}

/****************************************************************************************/
/* fullscreen search */
/****************************************************************************************/
#fullscreensearch .btn {
  font-size: 20px;
  font-family: inherit;
  font-weight: bold;
  margin-top: 20px;
  color: #ffffff;
}

/****************************************************************************************/
/**************************** WordPress Password Form **********************************/
/****************************************************************************************/
.post-password-form p label {
  font-size: 20px;
}

.post-password-form input[type=submit] {
  min-height: 55px;
}

/****************************************************************************************/
/* Client Archive, Tag, Category, Blog Index + Default Home Blog Posts, Search Results */
/****************************************************************************************/
.blog .c9 .entry-header .entry-title a,
.archive .c9 .entry-title a,
.search-results .c9 .entry-title a {
  text-decoration: none;
}

.blog .c9 .entry-header .entry-title a:focus,
.archive .c9 .entry-title a:focus,
.search-results .c9 .entry-title a:focus {
  text-decoration: underline;
}

.blog .c9 .entry-header .entry-title,
.archive .c9 .entry-title,
.search-results .c9 .entry-title {
  line-height: 1.1;
  font-size: 20px;
}

.search-results .entry-footer {
  line-height: 1.25;
}

.search-results .cat-links,
.search-results .tags-links {
  display: block;
  font-size: 7px;
}

/****************************************************************************************/
/* Client Blog Single */
/****************************************************************************************/
.entry-big-header .entry-title-box .entry-meta,
.entry-big-header .entry-title-box .entry-meta .author a,
.entry-big-header .entry-title-box .entry-meta .byline,
.entry-big-header .entry-title-box .entry-meta .posted-on,
.entry-big-header .entry-title-box .entry-meta .posted-on a {
  color: #ffffff;
  font-size: 12px;
}

.entry-meta .updated {
  display: none;
}

/****************************************************************************************/
/* Client Animations */
/****************************************************************************************/
#icon-mouse-scroll {
  text-align: center;
  margin: auto;
  width: 25px;
  height: 25px;
}

/****************************************************************************************/
/* Client Footer */
/****************************************************************************************/
.footer-entirety {
  position: relative;
  z-index: 40;
}

#wrapper-footer-full {
  color: #ADB1B2;
  background-color: transparent;
  margin-top: 0px;
  border-top: 1px solid #d8d8d8;
}

#wrapper-footer {
  color: #ADB1B2;
  background-color: #fff;
}

#wrapper-footer-full .widget_nav_menu a,
#wrapper-footer-full a {
  color: #5c5c5c;
  text-decoration: none;
}

#wrapper-footer-full a:hover {
  text-decoration: underline;
  color: #000000;
}

.footer-wrapper {
  border-top: 1px solid #d8d8d8;
}

#wrapper-footer .site-footer,
#wrapper-footer .site-footer .row,
#wrapper-footer .site-footer .row p,
#wrapper-footer .site-footer .copyright {
  line-height: 1.1;
}

#wrapper-footer .site-footer p,
.footer-links a,
#wrapper-footer .site-footer a {
  text-transform: none;
  font-family: inherit;
  color: #4a4a4a;
  letter-spacing: 0.05px;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  text-decoration: none;
}

#wrapper-footer .site-footer a:hover {
  color: #000000;
}

.footer-social a {
  margin-right: 10px;
}

.footer-social a i:before {
  font-style: normal;
}

.footer-social a .fab:before {
  color: #9b9b9b;
  -webkit-transition: color 0.4s;
  transition: color 0.4s;
  font-family: "fontawesome";
}

.footer-social a:hover .fab:before {
  color: #000000;
}

.footer-social-wrapper {
  margin-top: -5px;
}

.footer-search {
  margin-top: -10px;
}

.footer-search .input-group .input-group-append {
  display: none;
}

.footer-search .input-group {
  position: relative;
  z-index: 20;
  max-width: 180px;
}

.footer-search .input-group:after {
  font-family: "FontAwesome";
  color: #9b9b9b;
  content: "\f002";
  font-size: 16px;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 22;
}

.footer-search .input-group.search-field {
  padding: 10px 12px;
  font-family: inherit;
  letter-spacing: 0.02em;
  height: auto;
}

@media only screen and (max-width: 768px) {
  .footer-search {
    margin-top: 30px;
  }
}
@media only screen and (max-width: 667px) {
  .footer-widget.widget-cortex-instagram {
    padding-bottom: 0px;
  }

  #wrapper-footer .site-footer {
    padding: 20px 0px;
  }

  #nav_menu-6 {
    display: none;
  }

  #nav_menu-7,
#nav_menu-8 {
    max-width: 50%;
  }

  .footer-social-wrapper {
    width: 100%;
    margin-bottom: 15px;
  }

  .footer-links-wrapper {
    width: 100%;
  }

  .footer-copyright-wrapper {
    width: 100%;
    max-width: 100%;
  }

  .footer-search-wrapper {
    width: 100%;
  }
}
@media only screen and (max-width: 375px) {
  .copyright {
    margin-top: 15px;
  }
}
#wrapper-footer .site-footer .footer-copyright-wrapper .copyright {
  text-transform: uppercase;
}

/****************************************************************************************/
/* Client widget customizations*/
/****************************************************************************************/
/****************************************************************************************/
/* all widgets */
.footer-widget .menu .menu-item,
.footer-widget > ul > li {
  font-size: 15px;
  line-height: 2;
  padding-left: 0px;
  margin: 0;
}

.footer-widget h3 {
  font-size: 20px;
  letter-spacing: 0.04em;
  text-align: left;
  line-height: 1;
  font-family: inherit;
  color: #000000;
  font-weight: 600;
  text-transform: uppercase;
}

.footer-widget .menu .menu-item a {
  font-family: inherit;
  letter-spacing: 0.04px;
}

.footer-widget.widget_custom_html:last-child .widget-title:before {
  display: inline-block;
  content: "\f16d";
  font-family: "FontAwesome";
  color: #9b9b9b;
  padding-right: 4px;
}

.footer-widget .sb_instagram_header,
.footer-widget #sb_instagram #sbi_load .sbi_load_btn {
  display: none;
}

#sb_instagram .sbi_follow_btn a {
  background-color: transparent;
  color: #4a4a4a;
}

#sb_instagram .sbi_follow_btn a:hover {
  background-color: transparent;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #000000;
  text-decoration: none;
}

.footer-widget .instagram-pics {
  margin: 0px;
  padding: 0px;
}

.footer-widget .instagram-pics li {
  list-style: none;
  padding: 0px;
  max-width: 48%;
  margin: 1% 4% 4% 0%;
  display: inline-block;
}

.footer-widget .instagram-pics li:nth-child(even) {
  margin-right: 0;
}

/****************************************************************************************/
/* Client Gravity Forms */
/****************************************************************************************/
.c9 .gform_wrapper label.gfield_label,
.c9 .gform_wrapper legend.gfield_label,
.wp-block[data-type="gravityforms/block"] .gform_wrapper label.gfield_label,
.wp-block[data-type="gravityforms/block"] .gform_wrapper legend.gfield_label,
.c9 .gform_confirmation_message {
  font-size: 18px;
}

.c9 .gform_confirmation_message {
  margin-bottom: 30px;
}

.c9 .gform_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.c9 .gform_wrapper input[type=password],
.c9 .gform_wrapper input[type=tel],
.c9 .gform_wrapper input[type=text],
.c9 .gform_wrapper textarea,
.wp-block[data-type="gravityforms/block"] .gform_wrapper input[type=password],
.wp-block[data-type="gravityforms/block"] .gform_wrapper input[type=tel],
.wp-block[data-type="gravityforms/block"] .gform_wrapper input[type=text],
.wp-block[data-type="gravityforms/block"] .gform_wrapper textarea .c9 input[type=password],
.c9 input[type=tel],
.c9 input[type=text],
.c9 input[type=email],
.c9 input[type=url],
.c9 textarea,
.c9 input[type=search],
.search-form .search-field,
.footer-search-wrapper .field[type=text] {
  font-size: 16px;
  min-height: 55px;
}

.c9 .gform_wrapper .gform_footer,
.editor-styles-wrapper .gform_wrapper .gform_footer {
  font-size: 10px;
}

.c9 .entry-content ul.gform_fields {
  padding-left: 0px !important;
}

.ginput_card_expiration_container select,
.ginput_card_expiration_container label {
  float: left;
}

.c9 .ginput_container_creditcard label,
.c9 .ginput_card_expiration_container label {
  margin-bottom: 10px !important;
}

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

.c9 .gform_wrapper .field_description_below .gfield_description {
  padding-top: 0px;
}

/****************************************************************************************/
/* File Attachments + Submit Buttons */
.c9 .gform_wrapper input.button.gform_button_select_files,
.c9 .gform_wrapper.gf_browser_safari input.button.gform_button_select_files,
.c9 .gform_wrapper.gf_browser_chrome input.button.gform_button_select_files,
.c9 .gform_wrapper .gform_footer input.button,
.editor-styles-wrapper .gform_wrapper .gform_footer input.button {
  background-image: -webkit-gradient(linear, left bottom, left top, from(#ebb900), to(#eadc23));
  background-image: linear-gradient(0deg, #ebb900 0%, #eadc23 100%);
  padding: 19px 28px 14px 28px !important;
  color: #000000;
  font-size: 29px;
  letter-spacing: 0.01em;
  text-align: center;
  line-height: 1;
  border-radius: 0px;
  border: 0px;
}

.entry-content ul:not(.wp-block-gallery):not(.nav-tabs):not(.c9-share-list) li.gfield,
.editor-styles-wrapper ul:not(.wp-block-gallery):not(.nav-tabs):not(.c9-share-list) li.gfield {
  margin: 15px 0px;
}

.entry-content .wp-block-buttons .wp-block-button {
  margin-right: 8px;
}

.c9-block-cta .c9-cta-content .wp-block-button__link,
.c9-block-cta.c9-cta .wp-block-button__link {
  font-size: 20px;
}

/* Button and input focus styles */
.wp-block-button__link:focus,
.btn:focus,
.wp-block-file__button:focus,
.c9 .entry-content button:focus,
.wp-block-button__link:not([href]):not([tabindex]):focus,
.entry-content .wp-block-button:not(.is-style-outline) .wp-block-button__link:focus,
.entry-content .wp-block-button__link:focus,
.entry-content input[type=text]:focus,
#fullscreensearch input[type=search]:focus,
.search-close:focus {
  -webkit-box-shadow: 1px 1px 9px rgba(0, 0, 0, 0.5);
          box-shadow: 1px 1px 9px rgba(0, 0, 0, 0.5);
  outline: 1px dotted #ffffff;
}

/****************************************************************************************/
/* Client Customizations to Core Blocks  + C9 Blocks */
/****************************************************************************************/
/* c9-grid */
.editor-styles-wrapper .c9-column-container,
.c9-column-container {
  z-index: 12;
}

/* header customizations to c9-grids */
.is-style-gray-diagonal,
.gray-diagonal {
  overflow: hidden;
}

.is-style-gray-diagonal:after,
.gray-diagonal:after {
  z-index: 9;
  position: absolute;
  bottom: -165px;
  left: 0;
  height: 60%;
  width: 100vw;
  content: url(wl-diagonal-bg.svg);
  -webkit-transform-origin: 0 0;
          transform-origin: 0 0;
  -webkit-transform: scaleX(3.3);
          transform: scaleX(3.3);
}

@media only screen and (max-width: 768px) {
  .is-style-gray-diagonal:after,
.gray-diagonal:after {
    height: 20%;
  }
}
@media only screen and (max-width: 568px) {
  .is-style-gray-diagonal:after,
.gray-diagonal:after {
    height: 10%;
  }
}
.is-style-dark-gradient-left,
.dark-gradient-left {
  position: relative;
}

/****************************************************************************************/
/* black gradient for about page backgrounds */
.is-style-dark-gradient-left:after,
.dark-gradient-left:after {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  content: "";
  z-index: 7;
  width: 100%;
  height: 100%;
  background: black;
  background: -webkit-gradient(left top, right top, color-stop(0%, black), color-stop(37%, black), color-stop(100%, rgba(0, 0, 0, 0)));
  background: -webkit-gradient(linear, left top, right top, from(black), color-stop(37%, black), to(rgba(0, 0, 0, 0)));
  background: linear-gradient(to right, black 0%, black 37%, rgba(0, 0, 0, 0) 100%);
}

/****************************************************************************************/
/* gallery adjustments  for core gallery block */
.entry-content .container .wp-block-gallery {
  max-width: 1140px;
}

.wp-block-gallery .blocks-gallery-item a img {
  opacity: 1;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
  cursor: pointer;
}

.wp-block-gallery .blocks-gallery-item a:hover img {
  opacity: 0.9;
}

/****************************************************************************************/
/*call to action block*/
.c9-cta .c9-cta-button .square {
  color: #000000;
  border-radius: 0px;
  font-size: 30px;
  letter-spacing: 0.97px;
  line-height: 1;
}

.c9-cta .c9-cta-button .square:hover {
  text-decoration: none;
}

.entry-content .c9-cta-content .c9-cta-text[style] p {
  font-size: inherit;
}

@media only screen and (max-width: 768px) {
  .c9-cta .c9-cta-button .square {
    font-size: 18px;
  }
}
/****************************************************************************************/
/* C9 social share block */
.c9-social-sharing .c9-share-list a {
  margin: 0px 2px;
}

/****************************************************************************************/
/* posts grid block */
.c9-block-post-grid .c9-block-post-grid-byline {
  font: 100 16px/1 inherit, helvetica, sans-serif;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.c9-block-post-grid header .c9-block-post-grid-title,
.c9-block-post-grid .c9-block-post-grid-byline {
  margin-bottom: 0.5em;
}

.entry-content .c9-block-post-grid-excerpt p,
.editor-styles-wrapper .c9-block-post-grid-excerpt p {
  line-height: 1.5;
}

/****************************************************************************************/
/* woocommerce products blocks and product single */
/****************************************************************************************/
/****************************************************************************************/
/* font size setting */
.woocommerce-store-notice,
.woocommerce div.product form.cart table,
.c9-product-catalog,
.c9 .product_meta,
.c9 .comment-respond,
.wc-block-grid__product .wc-block-grid__product-title,
.wc-block-grid__product-price {
  font-size: 16px;
}

.wc-block-grid__product-link {
  text-decoration: none;
}

/****************************************************************************************/
/* product single product_meta */
.c9 .product_meta > span {
  display: block;
}

/****************************************************************************************/
/* reviews form */
.c9 .woocommerce-Reviews,
.c9 .woocommerce-tabs .c9-tabs-content {
  max-width: 675px;
}

.c9 .entry-content .comment-form .comment-form-comment,
.c9 .entry-content .comment-form p,
.c9 .woocommerce-ordering,
.woocommerce .c9 div.product p.stock,
.woocommerce-notices-wrapper,
.shop_table,
.c9 .woocommerce #respond input#submit,
.c9 .woocommerce a.button,
.c9 .woocommerce button.button,
.c9 .woocommerce input.button {
  font-size: 16px;
}

.woocommerce-notices-wrapper {
  max-width: 960px;
  margin: 0px auto;
}

.c9 .entry-content .comment-form label {
  margin-right: 10px;
}

/****************************************************************************************/
/* woocommerce additional information table */
.woocommerce .c9 table.shop_attributes td,
.woocommerce .c9 table.shop_attributes .woocommerce-product-attributes-item__value p {
  vertical-align: middle;
  line-height: 1;
  font-size: 12px;
}

/****************************************************************************************/
/* wwoocommerce add to cart form table */
.woocommerce div.product form.cart .group_table td {
  vertical-align: middle;
}

/****************************************************************************************/
/* woocommerce text formatting and color changes */
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: #000000;
  font-size: 16px;
}

.woocommerce .c9 ul.products li.product .price ins {
  text-decoration: none;
}

/****************************************************************************************/
/* product single quantity field */
.woocommerce .c9 .quantity .qty {
  min-height: 53px;
  font-size: 16px;
}

/****************************************************************************************/
/* woocommerce buttons */
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.c9 .woocommerce td.actions .coupon button.button {
  background-color: #000000;
  letter-spacing: 0.08em;
  padding: 19px 28px 14px 28px;
  color: #ffffff;
}

.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled] {
  padding: 19px 28px 14px 28px;
}

.woocommerce .c9 #respond input#submit,
.woocommerce .c9 a.button,
.woocommerce .c9 button.button,
.woocommerce .c9 input.button,
.woocommerce a.button {
  padding: 19px 28px 14px 28px;
  color: #ffffff;
  background-color: #000000;
  font-size: 20px;
  letter-spacing: 0.08em;
  text-align: center;
  line-height: 1;
  border-radius: 0px;
  border: none;
}

.woocommerce #respond input#submit.alt.disabled,
.woocommerce #respond input#submit.alt.disabled:hover,
.woocommerce #respond input#submit.alt:disabled,
.woocommerce #respond input#submit.alt:disabled:hover,
.woocommerce #respond input#submit.alt:disabled[disabled],
.woocommerce #respond input#submit.alt:disabled[disabled]:hover,
.woocommerce a.button.alt.disabled,
.woocommerce a.button.alt.disabled:hover,
.woocommerce a.button.alt:disabled,
.woocommerce a.button.alt:disabled:hover,
.woocommerce a.button.alt:disabled[disabled],
.woocommerce a.button.alt:disabled[disabled]:hover,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt.disabled:hover,
.woocommerce button.button.alt:disabled,
.woocommerce button.button.alt:disabled:hover,
.woocommerce button.button.alt:disabled[disabled],
.woocommerce button.button.alt:disabled[disabled]:hover,
.woocommerce input.button.alt.disabled,
.woocommerce input.button.alt.disabled:hover,
.woocommerce input.button.alt:disabled,
.woocommerce input.button.alt:disabled:hover,
.woocommerce input.button.alt:disabled[disabled],
.woocommerce input.button.alt:disabled[disabled]:hover {
  background-color: #2b2b2b;
}

@media only screen and (max-width: 568px) {
  .c9 .wc-block-grid > .wc-block-grid__products .wp-block-button__link:not(.is-style-outline) {
    font-size: 16px;
    padding: 19px 15px 14px 15px;
  }
}
.entry-content .wc-block-grid .wc-block-grid__product:before {
  display: none;
}

.c9-woocommerce .entry-content > .container {
  position: relative;
}

@media only screen and (max-width: 568px) {
  .woocommerce ul.products li.product a img {
    max-height: 146px;
  }
}
.woocommerce .products li.product:before {
  display: none;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-size: 18px;
  line-height: 1;
}

body .woocommerce-info {
  border: none !important;
  background: white;
  font-size: 20px;
  font-family: inherit;
  color: black;
  letter-spacing: 0.5px;
}

body .woocommerce-info:before {
  display: none;
}

/****************************************************************************************/
/* on sale boxes need border box sizing redone */
.onsale {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

/****************************************************************************************/
/* homepage + catalog woocommerce product blocks */
.wc-block-grid .wc-block-grid__products:only-child {
  margin-bottom: 0px;
}

.wc-block-grid ins {
  text-decoration: none;
}

.wc-block-grid .wc-block-grid__product-onsale {
  border: 1px solid transparent;
  background: #000000;
  color: #ffffff;
  font-size: 10px;
  padding: 2px 8px;
}

.entry-content .wc-block-grid .wc-block-grid__products:not(.wp-block-gallery) .wc-block-grid__product {
  margin-top: 0px;
  margin-bottom: 0px;
}

.wc-block-grid__product,
.entry-content .wp-block-grid .wc-block-grid__products,
.entry-content .wp-block-grid .wc-block-grid__products .wc-block-grid__product {
  margin: 0px;
  padding: 0px;
}

.wc-block-grid > .wc-block-grid__products,
.entry-content .wc-block-grid > .wc-block-grid__products {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.entry-content .woocommerce-placeholder {
  min-width: 200px;
  height: auto;
}

@media only screen and (max-width: 768px) {
  .entry-content .woocommerce-placeholder {
    min-width: 100px;
  }
}
.entry-content .wp-block-grid .wc-block-grid__products .wc-block-grid__product a .wc-block-grid__product-image .size-woocommerce_thumbnail,
.archive.woocommerce ul.products li.product a img {
  width: auto;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.entry-content .wp-block-grid .wc-block-grid__products .wc-block-grid__product a .wc-block-grid__product-image .size-woocommerce_thumbnail:hover,
.archive.woocommerce ul.products li.product a img:hover {
  opacity: 0.9;
}

@media only screen and (min-width: 992px) {
  .wc-block-grid.has-4-columns .wc-block-grid__product {
    max-width: 24%;
  }
}
@media only screen and (max-width: 1024px) {
  .archive.woocommerce ul.products li.product a img,
.entry-content .wp-block-grid .wc-block-grid__products .wc-block-grid__product a .wc-block-grid__product-image .size-woocommerce_thumbnail {
    max-height: 205px;
  }
}
@media only screen and (max-width: 667px) {
  .c9 .wc-block-grid.has-4-columns .wc-block-grid__product {
    max-width: 50%;
    -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
  }

  .archive.woocommerce ul.products li.product a img,
.entry-content .wp-block-grid .wc-block-grid__products .wc-block-grid__product a .wc-block-grid__product-image .size-woocommerce_thumbnail {
    max-height: 133px;
  }
}
.entry-content .wp-block-grid .wc-block-grid__products .wc-block-grid__product a .wc-block-grid__product-image {
  margin-bottom: 30px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.entry-content .wp-block-grid .wc-block-grid__products .wc-block-grid__product a .wc-block-grid__product-image:hover {
  opacity: 0.95;
}

.wp-block-grid .wc-block-grid__products .wc-block-grid__product:before {
  display: none;
}

.single-product #wrapper-navbar {
  background-color: #000000;
}

.woocommerce .site-main div.product div.summary {
  margin-bottom: 10px;
}

@media only screen and (max-width: 768px) {
  .single-product .panel,
.single-product .panel p,
.single-product .panel ul,
.single-product .panel ul li {
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.03em;
  }

  .single-product .panel ul li:before {
    top: 2px;
  }
}
.woocommerce-product-details__short-description p {
  padding-bottom: 20px;
  margin-bottom: 15px !important;
  position: relative;
}

.woocommerce-product-details__short-description p:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 75%;
  height: 1px;
  background-color: #979797;
}

.single-product .woocommerce-Tabs-panel:first-child ul li {
  margin: 10px 0px;
}

.single-product .flex-viewport {
  margin-bottom: 10px;
}

.woocommerce div.product div.images .flex-control-thumbs {
  margin-left: -5px;
  margin-right: -5px;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  padding: 0px 5px;
}

.woocommerce div.product div.images .flex-control-thumbs li:before {
  display: none;
}

@media only screen and (max-width: 414px) {
  .single-product .woocommerce-Tabs-panel:first-child {
    width: 100%;
  }
}
/****************************************************************************************/
/*breadcrumbs*/
.woocommerce .site-main .woocommerce-breadcrumb {
  max-width: 1140px;
  margin: 30px auto;
  padding: 0px 15px;
  font-size: 20px;
  letter-spacing: 0.05px;
  text-align: left;
  color: #000000;
  text-transform: uppercase;
}

.woocommerce .site-main .woocommerce-breadcrumb a {
  color: #000000;
  text-decoration: none;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.woocommerce .site-main .woocommerce-breadcrumb a:hover {
  color: #9b9b9b;
  text-decoration: none;
}

/****************************************************************************************/
/* product index from breadcrumbs */
.c9.woocommerce #wrapper-navbar {
  background-color: #000000;
}

.c9 .woocommerce-products-header__title {
  font-family: inherit;
  font-weight: 700;
  font-size: 79px;
  line-height: 1;
}

.c9.woocommerce-result-count {
  font-family: inherit;
}

.page-search-results nav {
  margin: 0px auto;
  text-align: center;
}

.page-search-results nav .pagination {
  max-width: 1140px;
  margin: 0px auto;
  text-align: center;
  display: inline-block;
}

.page-search-results nav .pagination .page-item {
  display: inline-block;
}

.c9.woocommerce nav.woocommerce-pagination,
.page-search-results nav .pagination {
  margin-bottom: 20px;
}

/****************************************************************************************/
/* WooCommerce Checkout */
.woocommerce.woocommerce-checkout .col2-set .col-1,
.woocommerce-page.woocommerce-checkout .col2-set .col-1,
.woocommerce.woocommerce-checkout .col2-set .col-2,
.woocommerce-page.woocommerce-checkout .col2-set .col-2 {
  max-width: 100%;
}

.c9 .woocommerce table.shop_table {
  border-radius: 0px;
}

.woocommerce td.product-name .wc-item-meta .wc-item-meta-label,
.woocommerce td.product-name .wc-item-meta dt,
.woocommerce td.product-name dl.variation .wc-item-meta-label,
.woocommerce td.product-name dl.variation dt {
  font-size: 16px;
}

/* WooCommerce Forms text inputs */
.c9 .woocommerce form .form-row .input-text,
.c9 .woocommerce-page form .form-row .input-text,
.c9 .select2-container .select2-selection--single,
.single-product.woocommerce form.cart input[type=number],
.wc-block-product-categories select {
  height: 45px;
  border: 1px solid #ccc;
}

.byconsolewooodt_delivery_type {
  font-family: inherit;
}

@media only screen and (min-width: 768px) {
  .single-product .c9 .woocommerce .wc-pao-addon-container.wc-pao-addon-toppings .form-row,
.single-product .c9 .woocommerce .wc-pao-addon-container.wc-pao-addon-bun-style .form-row,
.single-product .c9 .woocommerce .wc-pao-addon-container.wc-pao-required-addon .form-row {
    width: 48%;
    display: inline-block;
  }
}
.woocommerce div.product form.cart .variations td,
.woocommerce div.product form.cart .variations th {
  line-height: 1;
  vertical-align: middle;
}

.woocommerce div.product form.cart .reset_variations {
  position: absolute;
}

.c9 .woocommerce div.product form.cart .variations select,
.wc-block-product-categories select {
  -moz-appearance: none;
  -webkit-appearance: none;
  border-radius: 0;
  padding-left: 12px;
  height: 45px;
  position: relative;
  z-index: 20;
  border: 1px solid #ccc;
  background-color: #fff;
  color: #4a4a4a;
}

.c9 .woocommerce select {
  border: 1px solid #ccc;
  background-color: #fff;
}

.c9 .select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 45px;
  right: 10px;
}

.c9 .select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 45px;
}

.c9 .select2-container--default .select2-selection--single {
  padding: 2px 8px;
  border: 1px solid #d2d2d2;
  line-height: 1;
  font-size: 16px;
}

/* coupon */
.c9 .woocommerce #content table.cart td.actions .coupon .input-text,
.c9 .woocommerce table.cart td.actions .coupon .input-text,
.c9 .woocommerce-page #content table.cart td.actions .coupon .input-text,
.c9 .woocommerce-page table.cart td.actions .coupon .input-text,
.c9 .woocommerce-page table.cart td.actions .coupon #coupon_code {
  width: 125px !important;
}

.c9 .woocommerce #content table.cart td.actions .coupon,
.c9 .woocommerce table.cart td.actions .coupon,
.c9 .woocommerce-page #content table.cart td.actions .coupon,
.c9 .woocommerce-page table.cart td.actions .coupon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media only screen and (max-width: 414px) {
  .checkout_coupon .input-text {
    max-width: 123px;
  }

  .c9 .woocommerce .checkout_coupon .button {
    padding: 16px 20px;
  }
}
/* woocommerce login form */
.c9 .woocommerce .woocommerce-form-login,
.c9 .woocommerce form.login,
.c9 .woocommerce form.register {
  max-width: 450px;
}

@media only screen and (max-width: 768px) {
  .c9 .woocommerce .woocommerce-form-login,
.c9 .woocommerce form.login,
.c9 .woocommerce form.register {
    max-width: 100%;
    width: 100%;
  }
}
/* woocommerce user account admin panel*/
.c9 .woocommerce-Addresses {
  margin-top: 30px;
}

.c9 .woocommerce-Addresses .woocommerce-Address {
  max-width: 100%;
}

.c9 .select2-container--default .select2-selection--single {
  border-radius: 0px;
}

.woocommerce-page .col-1,
.woocommerce-page .col-2 {
  max-width: none;
}

.woocommerce-checkout .col-1,
.woocommerce-checkout .col-2 {
  padding-left: 0;
  padding-right: 0;
}

/* woocommerce date + time picker */
.ui-datepicker {
  width: 275px;
  padding: 6px;
  max-width: 100%;
}

.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
  border-radius: 0px;
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default {
  padding: 4px;
}

.ui-widget-header {
  background-image: none;
  background: #d2d2d2;
  color: #000000;
}

.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

.ui-timepicker-wrapper,
.ui-datepicker-calendar,
.ui-datepicker .ui-datepicker-title {
  font-family: inherit;
  font-size: 16px !important;
}

.ui-datepicker .ui-datepicker-title {
  text-transform: uppercase;
}

.ui-timepicker-list li {
  padding: 12px;
}

li.ui-timepicker-selected,
.ui-timepicker-list li:hover,
.ui-timepicker-list .ui-timepicker-selected:hover {
  background-color: #FCBD13;
}

/* order confirmation */
ul.order_details li {
  font-size: 14px !important;
}

.woocommerce ul.order_details li strong {
  font-size: 16px !important;
}

.order_details:not(.blocks-gallery-grid):not(.wp-block-gallery):not(.wc-block-grid__products):not(.gfield_checkbox):not(.gfield_radio):not(.nav-tabs):not(.c9-share-list):not(.products):not(.gform_fields) li {
  padding: 8px 20px;
}

.entry-content .order_details:not(.blocks-gallery-grid):not(.wp-block-gallery):not(.wc-block-grid__products):not(.gfield_checkbox):not(.gfield_radio):not(.nav-tabs):not(.c9-share-list):not(.products):not(.gform_fields) {
  padding-left: 0px !important;
}

/*******************************************************************************************/
/* woocommerce store notice */
/*******************************************************************************************/
.woocommerce-store-notice,
p.demo_store {
  background-color: #000000;
  font-size: 16px;
  top: auto;
  bottom: 0;
  position: fixed;
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.woocommerce-store-notice__dismiss-link {
  margin: 0px 8px;
}

/****************************************************************************************/
/* pagination tweak */
/****************************************************************************************/
.archive nav .pagination .page-item .page-link,
.blog nav .pagination .page-item .page-link,
.page-search-results nav .pagination .page-item .page-link,
.single .navigation .nav-next a,
.single .navigation .nav-previous a {
  font-size: 14px;
}

.c9 .woocommerce nav.woocommerce-pagination {
  font-family: inherit;
}

.c9 .woocommerce nav.woocommerce-pagination ul li .page-numbers,
.c9 .woocommerce nav.woocommerce-pagination ul li span {
  font-size: 14px;
}

/****************************************************************************************/
/* 404 error page */
/****************************************************************************************/
.error-404 .widget_recent_entries,
.error-404 .widget_archive {
  display: none;
}

.error-404 {
  margin: 155px auto 0px auto;
  text-align: center;
  max-width: 960px;
}

.error-404 .page-content p {
  font-size: 16px;
}

.error-404 h1 {
  font-size: 80px;
  text-align: center;
}

.error-404 .page-content .search-form {
  margin: 0px auto 80px auto;
  max-width: 60%;
}

.error-404 .page-content .search-form .btn-primary,
.search .page-content .search-form .btn-primary {
  color: #ffffff;
  font-size: 20px;
  font-weight: 700;
  border: none;
  border-radius: 0px;
  margin-left: 20px;
  padding: 6px 30px 2px 30px !important;
  min-height: 55px;
}

.error-404 .page-content .search-form .input-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.error-404 .page-content .search-form .input-group.search-field {
  padding: 10px 12px;
  font-family: inherit;
  font-size: 13px;
  letter-spacing: 0.02em;
  height: auto;
  border: 1px solid #ced4da;
}

.error404 #wrapper-navbar {
  background-color: #000000;
}

/****************************************************************************************/
/* Utility Classes */
/****************************************************************************************/
.img-shadow,
.is-style-img-shadow,
:not([data-align]) > .wp-block-image.is-style-img-shadow {
  position: relative;
  display: block;
}

.is-style-img-shadow img,
.img-shadow img {
  z-index: 10;
}

.is-style-img-shadow.wp-block-image:after,
.img-shadow.wp-block-image:after {
  position: relative;
  bottom: -30px;
  z-index: 8;
  content: "";
  display: inline-block;
  width: 100%;
  height: 30px;
  background-image: radial-gradient(ellipse, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 68%);
  background-repeat: no-repeat;
}
/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNsaWVudC5zY3NzIiwiLi4vLi4vYXNzZXRzL3N0eWxlcy90aGVtZS9fdGhlbWVfdmFyaWFibGVzLnNjc3MiLCJjbGllbnQuY3NzIiwiX2NsaWVudF92YXJpYWJsZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSx5RkFBQTtBQUNBO3lGQUFBO0FDQ0E7RUFDQyxvREFBQTtFQUNBLHVEQUFBO0FDRUQ7O0FDSkE7Ozs7Ozs7OztDQUFBO0FISUE7Ozs7RUFJSSxnQkdRZTtBREtuQjs7QUZWQTs7RUFFSSxjR29CUztBRFBiOztBRlZBO0VBQ0kseUlBQUE7RUFBQSxxRkFBQTtFQUNBLHFCQUFBO0FFYUo7O0FGVkE7O0VBRUkseUlBQUE7RUFBQSxxRkFBQTtBRWFKOztBRlZBO0VBQ0ksMkJBQUE7QUVhSjs7QUZWQTtFQUNJLGlCQUFBO0VBQ0EsaUxBQUE7RUFBQSxrSEFBQTtFQUNBLDRCQUFBO0VBQ0EsNEJBQUE7QUVhSjs7QUZWQTtFQUNJLGNHTmU7QURtQm5COztBRlZBO0VBQ0ksa0JBQUE7RUFDQSxrQkFBQTtBRWFKOztBRlZBOztFQUVJLGVBQUE7QUVhSjs7QUZWQTtFQUVJOztJQUVJLGdCQUFBO0VFWU47QUFDRjtBRlRBO0VBQ0ksaUJBQUE7QUVXSjs7QUZSQTtFQUNJLGtCQUFBO0FFV0o7O0FGUkE7RUFDSTtJQUNJLGFBQUE7RUVXTjs7RUZSRTtJQUNJLGlCQUFBO0VFV047O0VGUkU7SUFDSSxnQkFBQTtFRVdOO0FBQ0Y7QUZSQTtFQUNJO0lBQ0ksYUFBQTtJQUNBLGlCQUFBO0VFVU47O0VGUEU7O0lBRUkseUJHM0RBO0VEcUVOO0FBQ0Y7QUZQQSx5RkFBQTtBQUNBLDZEQUFBO0FBQ0EseUZBQUE7QUFDQTtFQUNJLHlCQUFBO0FFU0o7O0FGTkE7RUFDSSx5QkFBQTtBRVNKOztBRk5BO0VBQ0kseUJBQUE7QUVTSjs7QUZOQTtFQUNJLHlCQUFBO0FFU0o7O0FGTkE7RUFDSSx5QkFBQTtBRVNKOztBRk5BOztFQUVJLHlCRy9GTTtBRHdHVjs7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O0FFN0RKOztBRmdFQTtFQUNJLDBCQUFBO0VBQ0EsY0FBQTtBRTdESjs7QUZnRUE7O0VBRUksY0c3MkZJO0VIODJGSixlQUFBO0VBQ0EsZ0JBQUE7RUFDQSxZQUFBO0VBQ0Esa0JBQUE7RUFDQSxpQkFBQTtFQUNBLHFDQUFBO0VBQ0EsZ0JBQUE7QUU3REo7O0FGZ0VBO0VBQ0ksb0JBQUE7RUFBQSxvQkFBQTtFQUFBLGFBQUE7RUFDQSx5QkFBQTtNQUFBLHNCQUFBO1VBQUEsbUJBQUE7RUFDQSx3QkFBQTtNQUFBLHFCQUFBO1VBQUEsdUJBQUE7QUU3REo7O0FGZ0VBO0VBQ0ksa0JBQUE7RUFDQSxvQkdoNUZxQjtFSGk1RnJCLGVBQUE7RUFDQSxzQkFBQTtFQUNBLFlBQUE7RUFDQSx5QkFBQTtBRTdESjs7QUZnRUE7RUFDSSx5Qkd4NEZHO0FEMjBGUDs7QUZnRUEseUZBQUE7QUFDQSxvQkFBQTtBQUNBLHlGQUFBO0FBQ0E7OztFQUdJLGtCQUFBO0VBQ0EsY0FBQTtBRTdESjs7QUZnRUE7O0VBRUksV0FBQTtBRTdESjs7QUZnRUE7O0VBRUksa0JBQUE7RUFDQSxhQUFBO0VBQ0EsVUFBQTtFQUNBLFdBQUE7RUFDQSxxQkFBQTtFQUNBLFdBQUE7RUFDQSxZQUFBO0VBQ0EsdUZBQUE7RUFDQSw0QkFBQTtBRTdESiIsImZpbGUiOiJjbGllbnQuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgU3BlY2lmaWMgU3R5bGluZyBmb3IgQzkgV29yayBTcGVjaWZpYyBUaGVtZVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBpbXBvcnQgXCJjbGllbnRfdmFyaWFibGVzXCI7XG5cbi5jOSBkbCxcbi5lbnRyeS1jb250ZW50IHAsXG4uZW50cnktZm9vdGVyLFxucCB7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuXG5hLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYmxvY2stZWRpdG9yLXJpY2gtdGV4dF9fZWRpdGFibGUgYSB7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xufVxuXG4uZW50cnktY29udGVudCBwIGEge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDc0LCA3NCwgNzQsIDAuNCkgMTIlLCByZ2JhKDc0LCA3NCwgNzQsIDApIDEyJSk7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZW50cnktY29udGVudCBwIGE6aG92ZXIsXG4uZW50cnktY29udGVudCBwIGE6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDc0LCA3NCwgNzQsIDAuNikgMjAlLCByZ2JhKDc0LCA3NCwgNzQsIDApIDIwJSk7XG59XG5cbi5lbnRyeS1jb250ZW50IHAgYTpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCAkZGFyaztcbn1cblxuYm9keS5wYWdlIHtcbiAgICBiYWNrZ3JvdW5kOiByZ2IoMCwgMCwgMCk7XG4gICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwLjg2NzM4NDQ1Mzc4MTUxMjYpIDElLCByZ2JhKDAsIDAsIDAsIDAuNjY3KSA1JSwgcmdiYSgwLCAwLCAwLCAwKSAxMyUpO1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuYTpob3ZlciB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xufVxuXG4uYzkgLndyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IC0xMTVweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG59XG5cbi5zaW5nbGUtcG9zdCAud3JhcHBlcixcbi5hcmNoaXZlIC5jOSAud3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cbiAgICAuYmxvZyAuYzkgLndyYXBwZXIsXG4gICAgLmFyY2hpdmUgLmM5IC53cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG59XG5cbi5jOS1sYXlvdXQtY29sdW1uLXdyYXAge1xuICAgIGRpc3BsYXk6IC1tcy1ncmlkO1xufVxuXG4uYzktZ3JpZCAuYzktbGF5b3V0LWNvbHVtbi13cmFwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY3cHgpIHtcbiAgICAuc2luZ2xlIC5lbnRyeS1jb250ZW50IHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICB9XG5cbiAgICAucGFnZS1zZWFyY2gtcmVzdWx0cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEzNXB4O1xuICAgIH1cblxuICAgIC5ibG9nIC5zaXRlIC53cmFwcGVyIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMTIwMHB4KSB7XG4gICAgLm5hdmJhciAuY29udGFpbmVyIHtcbiAgICAgICAgd2lkdGg6IDEzNDBweDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMzQwcHg7XG4gICAgfVxuXG4gICAgI2xlZnQtc2lkZWJhcixcbiAgICAjcmlnaHQtc2lkZWJhciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IGRlZmF1bHQgY29sb3JzLCBidXR0b24gY29sb3JzICsgYmFja2dyb3VuZCBjb2xvcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmhhcy1jb2xvci1vcmFuZ2UtY29sb3Ige1xuICAgIGNvbG9yOiAkcHJpbWFyeSAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLXllbGxvdy1jb2xvciB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnkgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci13aGl0ZS1jb2xvciB7XG4gICAgY29sb3I6ICRsaWdodCAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLWJsYWNrLWNvbG9yIHtcbiAgICBjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci1ncmF5LWNvbG9yIHtcbiAgICBjb2xvcjogJGdyYXktOTAwICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1wcmltYXJ5LFxuLmhhcy1jb2xvci1vcmFuZ2UtYmFja2dyb3VuZC1jb2xvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG59XG5cbi5iZy1zZWNvbmRhcnksXG4uaGFzLWNvbG9yLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5O1xufVxuXG4uaGFzLWNvbG9yLWdyYXktYmFja2dyb3VuZC1jb2xvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktMTAwO1xufVxuXG4uaGFzLWNvbG9yLXdoaXRlLWJhY2tncm91bmQtY29sb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5oYXMtY29sb3ItYmxhY2stYmFja2dyb3VuZC1jb2xvciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG59XG5cbi5iZy1zdWNjZXNzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc3VjY2Vzcztcbn1cblxuLmJnLWluZm8ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbmZvO1xufVxuXG4uYmctd2FybmluZyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdhcm5pbmc7XG59XG5cbi5iZy1kYW5nZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYW5nZXI7XG59XG5cbi5iZy1kYXJrIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgYnV0dG9ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5idG4sXG4uYnRuOnZpc2l0ZWQsXG4uZW50cnktY29udGVudCAuYnRuLFxuLmVudHJ5LWNvbnRlbnQgLmJ0bjp2aXNpdGVkLFxuLmVudHJ5LWNvbnRlbnQgYnV0dG9uLFxuLmVudHJ5LWNvbnRlbnQgaW5wdXRbdHlwZT1cImJ1dHRvblwiXSxcbi5lbnRyeS1jb250ZW50IGlucHV0W3R5cGU9XCJyZXNldFwiXSxcbi5lbnRyeS1jb250ZW50IGlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG4uZW50cnktY29udGVudCAuYnV0dG9uLFxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4ud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLnNpdGUgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4ud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5tY2UtY29udGVudC1ib2R5LFxuLndwLWJsb2NrLWZpbGVfX2J1dHRvbixcbi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24sXG4jc2VhcmNoc3VibWl0LFxuLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHtcbiAgICBwYWRkaW5nOiAxOXB4IDI4cHggMTRweCAyOHB4O1xuICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICBib3JkZXI6IG5vbmU7XG59XG5cbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSxcbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogM3B4IHNvbGlkO1xuICAgIHBhZGRpbmc6IDE2cHggMjVweCAxMXB4IDI1cHg7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG59XG5cbi5jOS1jdGEuYzktYmxvY2stY3RhIC53cC1ibG9jay1idXR0b25fX2xpbmsuYzktYnV0dG9uLXNoYXBlLW91dGxpbmUge1xuICAgIGJvcmRlcjogM3B4IHNvbGlkO1xufVxuXG4uYzkgLmVudHJ5LWNvbnRlbnQgLmJ0bi1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnk7XG59XG5cbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazphY3RpdmUsXG4uYzkgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLmM5IC5lbnRyeS1jb250ZW50IC53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOnZpc2l0ZWQsXG4uYzkgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIsXG4uYzkgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4uYzkgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHtcbiAgICBjb2xvcjogJGxpZ2h0O1xufVxuXG4uYzkgYnV0dG9uOmhvdmVyLFxuLmJ0bjpob3Zlcixcbi53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYnV0dG9uOmhvdmVyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYnV0dG9uLXByaW1hcnk6aG92ZXIsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5tY2UtY29udGVudC1ib2R5LmJ1dHRvbjpob3Zlcixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODtcbiAgICBjb2xvcjogI2ZmZjtcbn1cblxuLmJ0bjpob3Zlcixcbi5lbnRyeS1jb250ZW50IGJ1dHRvbjpob3Zlcixcbi53cC1ibG9jay1idXR0b24gYTpob3Zlcixcbi53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIge1xuICAgIG9wYWNpdHk6IDAuODtcbn1cblxuLndoZXJlLXRvLWJ1eT4uYnRuOmhvdmVyIHtcbiAgICBjb2xvcjogJGRhcms7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY3cHgpIHtcblxuICAgIC5jOSAuYzktY3RhIC53cC1ibG9jay1idXR0b25fX2xpbmsuYzktYnV0dG9uLXNpemUtc21hbGwsXG4gICAgLmM5IC5jOS1jdGEgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5jOS1idXR0b24tc2l6ZS1tZWRpdW0sXG4gICAgLmM5IC5jOS1jdGEgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5jOS1idXR0b24tc2l6ZS1sYXJnZSxcbiAgICAuYzkgLmM5LWN0YSAud3AtYmxvY2stYnV0dG9uX19saW5rLmM5LWJ1dHRvbi1zaXplLWV4dHJhbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxufVxuXG4uYmctcHJpbWFyeSxcbi5oYXMtY29sb3Itb3JhbmdlLWJhY2tncm91bmQtY29sb3Ige1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1zZWNvbmRhcnksXG4uaGFzLWNvbG9yLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5ICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtY29sb3ItZ3JheS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0xMDAgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci13aGl0ZS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHRhZ3MgKi9cblxuLmktdGFnLFxuLnRhZ3MtbGlua3MsXG4uY2F0LWxpbmtzIHtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAxMHB4O1xufVxuXG4udGFncy1saW5rcyBhLFxuLmNhdC1saW5rcyBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbn1cblxuLmktdGFnOmJlZm9yZSxcbi50YWdzLWxpbmtzIGE6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgY29udGVudDogXCJcXGYwMmJcIjtcbiAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xuICAgIHBhZGRpbmctcmlnaHQ6IDJweDtcbn1cblxuLnRhZ3MtbGlua3MgYTpob3ZlciB7XG4gICAgY29sb3I6ICRkYXJrO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBuYXZiYXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3dyYXBwZXItbmF2YmFyIHtcbiAgICB6LWluZGV4OiAxMDIwO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCxcbi5ibG9nIC5oZWFkZXItbmF2YmFyLFxuLmFyY2hpdmUgLmhlYWRlci1uYXZiYXIsXG4uc2luZ2xlLXBvc3QgLmhlYWRlci1uYXZiYXIsXG4uZXJyb3I0MDQgLmhlYWRlci1uYXZiYXIsXG4uc2VhcmNoIC5oZWFkZXItbmF2YmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci5uYXZiYXItc21hbGwge1xuICAgIG1heC1oZWlnaHQ6IDU1cHg7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XG59XG5cbi5uYXZiYXItc21hbGwge1xuICAgIG1heC1oZWlnaHQ6IDU1cHg7XG4gICAgaGVpZ2h0OiA1NXB4O1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLWluLW91dDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XG59XG5cbi5uYXZiYXItc21hbGwgLm5hdmJhci1icmFuZCBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDQ1cHg7XG4gICAgd2lkdGg6IGF1dG87XG59XG5cbi5uYXZiYXItbmF2IGxpIGEsXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5uYXYgLm5hdi1pdGVtPi5uYXYtbGluayB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6IHJnYmEoNDMsIDQzLCA0MywgMC43Nyk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbn1cblxuLmM5IC5kcm9wZG93bi10b2dnbGU6YWZ0ZXIge1xuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSB7XG4gICAgLmhlYWRlci1uYXZiYXIge1xuICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgfVxuXG4gICAgLm5hdmJhci1icmFuZCBpbWcge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWF4LWhlaWdodDogNDVweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuICAgICNwYWdlIC5uYXZiYXItc21hbGwtbW9iaWxlIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICB9XG5cbiAgICAubmF2YmFyLXNtYWxsIC5uYXZiYXItYnJhbmQge1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIG1heC13aWR0aDogMjg1cHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB9XG5cbiAgICAuYzl3b3JrLWRhcmstbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG5cbiAgICAubmF2YmFyLm5hdmJhci1zbWFsbCAuYzl3b3JrLWR1YWwtbG9nbyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLmM5d29yay1kYXJrLWxvZ28ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5uYXZiYXIgLm5hdmJhci1icmFuZCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAubmF2YmFyLXNtYWxsIC5uYXZiYXItYnJhbmQgaW1nIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICB9XG5cbiAgICAubmF2YmFyIC5jb250YWluZXItZmx1aWQgLm5hdmJhci1zbWFsbC1idXR0b25zIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB9XG5cbiAgICAuYnRuLW5hdi1zZWFyY2gsXG4gICAgLm5hdmJhci10b2dnbGVyIHtcbiAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICAgIH1cblxuICAgIC5uYXYtdG9nZ2xlIC5uYXZiYXItdG9nZ2xlcjpmb2N1cyxcbiAgICAubmF2LXRvZ2dsZSAubmF2YmFyLXRvZ2dsZXI6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuXG4gICAgLm5hdmJhci10b2dnbGVyW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gLmZhLWJhcnM6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJ1xcZjAwZCc7XG4gICAgfVxuXG4gICAgLm5hdi1zZWFyY2gsXG4gICAgLm5hdi10b2dnbGUge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2N3B4KSB7XG4gICAgLm5hdmJhciAuY29udGFpbmVyLWZsdWlkIHtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIH1cblxuICAgIC5uYXZiYXIgLmNvbnRhaW5lci1mbHVpZCAuYzktY3VzdG9tLWxvZ28ge1xuICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgIH1cblxuICAgIC5uYXZiYXIgLmNvbnRhaW5lci1mbHVpZCAubmF2YmFyLXNtYWxsLWJ1dHRvbnMge1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG5cbiAgICAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgfVxuXG4gICAgLmJ0bi1uYXYtc2VhcmNoLFxuICAgIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgfVxuXG59XG5cbi8qIHRvZ2dsZSBhZGp1c3RtZW50cyBmb3IgdGFibGV0IHdoZW4gbm90IHVzaW5nIG1lZ2EgbWVudSovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAubmF2YmFyLXRvZ2dsZXIge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2YmFyLXRvZ2dsZXI6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICB9XG5cbiAgICAubmF2YmFyLXNtYWxsIC5idG4tbmF2LXNlYXJjaCxcbiAgICAubmF2YmFyLXNtYWxsIC5uYXZiYXItdG9nZ2xlciB7XG4gICAgICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIC41KTtcbiAgICB9XG5cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5oZWFkZXItbmF2YmFyIHtcbiAgICAgICAgaGVpZ2h0OiAxMDhweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAubmF2YmFyLWJyYW5kIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMjg1cHg7XG4gICAgICAgIG1heC1oZWlnaHQ6IDkycHg7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuXG4gICAgLmM5ICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAubmF2YmFyLW5hdixcbiAgICAuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IHtcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICAuaGVhZGVyLW5hdmJhciB7XG4gICAgICAgIGhlaWdodDogMTE1cHg7XG4gICAgfVxuXG4gICAgLm5hdmJhci1uYXY+bGk+YSB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgIH1cblxufVxuXG4vKiBuYXZiYXIgY29udGFpbmVyIHdpZHRocyBmb3IgbWVnYSBtZW51IGFuZCBub3JtYWwgbWVudXMqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIHtcblxuICAgIC5uYXZiYXItbmF2LFxuICAgIC5jOSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSBhbmQgKG1heC13aWR0aDogNDE0cHgpIHtcblxuICAgIC5uYXZiYXItbmF2LFxuICAgIC5jOSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkge1xuICAgICAgICB0b3A6IDQ5cHg7XG4gICAgfVxufVxuXG5cbi8qIHNwYWNpbmcgZm9yIHRoYXQgd2VpcmQgaW5iZXR3ZWVuIHRhYmxldCBzaXplIGZvciBuYXZpZ2F0aW9uICovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG5cbiAgICAubmF2YmFyLW5hdixcbiAgICAuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuXG4gICAgLm5hdmJhci1uYXYsXG4gICAgLmM5ICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSB7XG4gICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG5cbiAgICAvKiBpbml0aWFsIG5hdiBsaW5rcyBzaG91bGQgYmUgd2hpdGUgYW5kIHRoZW4gY2hhbmdlIHRvIGJsYWNrIGFmdGVyIG5hdmJhciBzbWFsbCBraWNrcyBpbiovXG4gICAgLm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgLm1lZ2EtbWVudS10b2dnbGUgLm1lZ2EtdG9nZ2xlLWJsb2NrLTEgLm1lZ2EtdG9nZ2xlLWxhYmVsLFxuICAgIC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5IC5tZWdhLW1lbnUtdG9nZ2xlIC5tZWdhLXRvZ2dsZS1ibG9jay0xOmFmdGVyIHtcbiAgICAgICAgY29sb3I6ICRsaWdodDtcbiAgICB9XG5cbiAgICAuaGVhZGVyLW5hdmJhciAubmF2YmFyLWNvbGxhcHNlLFxuICAgIC5oZWFkZXItbmF2YmFyIC5uYXZiYXItY29sbGFwc2Uuc2hvdyB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbiAgICB9XG5cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBEcm9wIGRvd24gbWVudXMsIGFuaW1hdGlvbnMgb2YgbWVudXMsIGFuZCBidXR0b24gaG92ZXIgYW5pbWF0aW9ucyBpbiBtYWluIG5hdiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5kcm9wZG93bi1pdGVtIHtcbiAgICBwYWRkaW5nOiAxMHB4IDhweDtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhciAubmF2IC5uYXYtaXRlbSAuZHJvcGRvd24tbWVudSAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbjogMCA2cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAuaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbSAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuICAgIH1cbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnUge1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICBtYXJnaW4tdG9wOiAxZW07XG4gICAgYm9yZGVyOiAwcHg7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJbkZyb21Ob25lIDAuNXMgZWFzZS1vdXQ7XG4gICAgYW5pbWF0aW9uOiBmYWRlSW5Gcm9tTm9uZSAwLjVzIGVhc2Utb3V0O1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbSAuZHJvcGRvd24tbWVudS5zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluRnJvbU5vbmUgMC41cyBlYXNlLW91dDtcbiAgICBhbmltYXRpb246IGZhZGVJbkZyb21Ob25lIDAuNXMgZWFzZS1vdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Gcm9tTm9uZSB7XG4gICAgMCUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDElIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5Gcm9tTm9uZSB7XG4gICAgMCUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgIDElIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuXG4gICAgMTAwJSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbn1cblxuLm5hdmJhci1zbWFsbC5maXhlZC10b3AgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbms6Zm9jdXMsXG4ubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluazpmb2N1cz5zcGFuIHtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCAkbGluay1ob3Zlci1jb2xvcjtcbn1cblxuI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGE6aG92ZXIsXG4jbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgYTpmb2N1cyB7XG4gICAgY29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xufVxuXG4jbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgYTpmb2N1cyB7XG4gICAgb3V0bGluZTogMXB4IGRvdHRlZCAkbGluay1ob3Zlci1jb2xvcjtcbn1cblxuLyogZmlyc3QgbGV2ZWwgbmF2IGxpbmsgaG92ZXIgZWZmZWN0cyAqL1xuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbT4ubmF2LWxpbmssXG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluaz5zcGFuLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluayxcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbms+c3BhbiB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgcGFkZGluZzogMHB4O1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkcHJpbWFyeSwgMTAlKTtcbiAgICB9XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDElKTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAxJSk7XG4gICAgfVxuXG4gICAgPnNwYW4ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMTRweCAxMnB4O1xuXG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHByaW1hcnksIDEwJSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMSUpO1xuICAgICAgICB9XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB3aWR0aDogMnB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDElKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICY6Zm9jdXM6YmVmb3JlLFxuICAgICY6Zm9jdXM6YWZ0ZXIsXG4gICAgJjpmb2N1cz5zcGFuOmJlZm9yZSxcbiAgICAmOmZvY3VzPnNwYW46YWZ0ZXIsXG4gICAgJjpob3ZlcjpiZWZvcmUsXG4gICAgJjpob3ZlcjphZnRlcixcbiAgICAmOmhvdmVyPnNwYW46YmVmb3JlLFxuICAgICY6aG92ZXI+c3BhbjphZnRlciB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBlYXNlLWluLW91dDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDE0cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuXG4gICAgLyogbmF2IGxpbmsgY29sb3JzIHR1cm4gd2hpdGUgaW5iZXR3ZWVuIG1vYmlsZS90YWJsZXQvbGFwdG9wKi9cbiAgICAuaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbT4ubmF2LWxpbmssXG4gICAgLmhlYWRlci1uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rPnNwYW4ge1xuICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgfVxufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbT4ubmF2LWxpbmssXG4uaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbSAubmF2LWxpbms+c3Bhbixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbmssXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeT5saS5tZWdhLW1lbnUtaXRlbT5hLm1lZ2EtbWVudS1saW5rPnNwYW4sXG4ubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluayxcbi5uYXZiYXItc21hbGwuZml4ZWQtdG9wICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeT5saS5tZWdhLW1lbnUtaXRlbT5hLm1lZ2EtbWVudS1saW5rPnNwYW4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmJlZm9yZSxcbiAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIH1cbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAubmF2IC5uYXYtaXRlbT4ubmF2LWxpbmssXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluaz5zcGFuIHtcbiAgICBjb2xvcjogJGRhcms7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG4gICAgLm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbmsge1xuICAgICAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0sXG4gICAgLm5hdmJhci1zbWFsbCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluayxcbiAgICAubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluayB7XG4gICAgICAgIG1hcmdpbjogMHB4IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWluLWhlaWdodDogNDBweDtcbiAgICB9XG5cbiAgICAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluaz5zcGFuIHtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGhlYWRlciBuYXZiYXIgc2VhcmNoIGN1c3RvbWl6YXRpb25zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLm5hdi1zZWFyY2gge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuXG4gICAgLm5hdi1zZWFyY2gsXG4gICAgLm5hdi10b2dnbGUge1xuICAgICAgICBsaW5lLWhlaWdodDogMjtcbiAgICB9XG5cbiAgICAubmF2LXNlYXJjaCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlYWRlci1uYXZiYXIgLnNlYXJjaCxcbiAgICAuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGxpLnNlYXJjaCB7XG4gICAgICAgIG1pbi13aWR0aDogMTI1cHg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIH1cbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdi1zZWFyY2ggLmJ0bi1uYXYtc2VhcmNoLFxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci10b2dnbGVyIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5zZWFyY2ggZm9ybSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uYzkgLmhlYWRlci1uYXZiYXIgLnNlYXJjaCBpbnB1dDpmb2N1cyB7XG4gICAgb3V0bGluZTogMDtcbn1cblxuLmM5IC5oZWFkZXItbmF2YmFyIC5zZWFyY2g6YmVmb3JlLFxuLmM5ICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSBsaS5zZWFyY2g6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gICAgY29udGVudDogXCJcXGYwMDJcIjtcbn1cblxuLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5zZWFyY2ggOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoIDo6LW1zLXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoIDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6OnBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uaGVhZGVyLW5hdmJhciAuc2VhcmNoICNzIHtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHdpZHRoOiA2NXB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogI2ZmZjtcbiAgICBmb250LXNpemU6IDE5cHg7XG4gICAgbWFyZ2luLWxlZnQ6IDRweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgIHRleHQtc2hhZG93OiAxcHggMXB4IDNweCByZ2JhKDAsIDAsIDAsIDEpO1xuICAgIG1pbi1oZWlnaHQ6IDE1cHg7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5zZWFyY2ggI3M6Zm9jdXMge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuOCk7XG4gICAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuOCk7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpO1xuICAgIGNvbG9yOiAjZmZmO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggI3M6Zm9jdXMge1xuICAgIGNvbG9yOiAkZGFyaztcbiAgICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoMCwgMCwgMCwgLjIpO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggZG90dGVkIHJnYmEoMCwgMCwgMCwgLjIpO1xuICAgIGJvcmRlci1yaWdodDogMXB4IGRvdHRlZCByZ2JhKDAsIDAsIDAsIC4yKTtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRkYXJrICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjotbXMtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGRhcmskZGFyayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJnYigxNTgsIDE1OCwgMTU4KSAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoIDo6cGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2g6YmVmb3JlLFxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoICNzLFxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoICNzOmZvY3VzIHtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5jOSAuaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2g6YmVmb3JlLFxuLmM5IC5uYXZiYXItc21hbGwgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGxpLnNlYXJjaDpiZWZvcmUge1xuICAgIGNvbG9yOiAkZGFyaztcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoICNzIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcms7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcblxuICAgIC5jOSAuaGVhZGVyLW5hdmJhciBsaS5zZWFyY2gsXG4gICAgLmM5ICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSBsaS5zZWFyY2gge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5oZWFkZXItbmF2YmFyIC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYtc2VhcmNoIC5idG4tbmF2LXNlYXJjaCB7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgfVxuXG4gICAgLmhlYWRlci1uYXZiYXIgLm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLnNlYXJjaCAjcyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyaztcbiAgICAgICAgY29sb3I6ICRkYXJrO1xuICAgIH1cblxuICAgIC5jOSAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgbGkuc2VhcmNoOmJlZm9yZSxcbiAgICAuYzkgLm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgbGkuc2VhcmNoOmJlZm9yZSB7XG4gICAgICAgIGNvbG9yOiAkZGFyaztcbiAgICB9XG5cbiAgICAuaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRkYXJrICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRkYXJrICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjotbXMtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlYWRlci1uYXZiYXIgLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlYWRlci1uYXZiYXIgLnNlYXJjaCA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRkYXJrICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlYWRlci1uYXZiYXIgLnNlYXJjaCA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgICBjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgfVxuXG4gICAgLmhlYWRlci1uYXZiYXIgLnNlYXJjaCA6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICRkYXJrICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgVHlwb2dyYXBoeSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uaDQsXG4uaDUsXG4uaDYsXG5oNCxcbmg1LFxuaDYge1xuICAgIG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbn1cblxuLmM5LXNpdGUtdGl0bGUsXG4uYzkgLmgxLFxuLmM5IC5oMixcbi5jOSAuaDMsXG4uYzkgLmg0LFxuLmM5IC5oNSxcbi5jOSAuaDYsXG4uYzkgaDEsXG4uYzkgaDIsXG4uYzkgaDMsXG4uYzkgaDQsXG4uYzkgaDUsXG4uYzkgaDYge1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG59XG5cbi5jOS10eGwsXG4uZGlzcGxheS0xLFxuLmRpc3BsYXktMixcbi5kaXNwbGF5LTMsXG4uZGlzcGxheS00LFxuLmRpc3BsYXktNSxcbi5kaXNwbGF5LTYge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG5cbi5lbnRyeS1jb250ZW50LFxuLndwLWJsb2NrLXB1bGxxdW90ZSxcbi53cC1ibG9jay1wdWxscXVvdGUgYmxvY2txdW90ZSBwLFxuI3dyYXBwZXItZm9vdGVyIHtcbiAgICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xufVxuXG4ubmF2YmFyLFxuLm5hdmJhciB1bCBsaSAuZHJvcGRvd24taXRlbSxcbi5uYXZiYXIgdWwgbGkgYSxcbi5tZWdhLW1lbnUtd3JhcCxcbi5oZWFkZXItbmF2YmFyIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rLFxuLmhlYWRlci1uYXZiYXIgLm5hdmJhciAubmF2IC5uYXYtaXRlbSAuZHJvcGRvd24taXRlbSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xufVxuXG4ueHhsLWhlYWRpbmcgLmM5LXR4bCB7XG4gICAgZm9udC1zaXplOiAxODBweCAhaW1wb3J0YW50O1xuICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbn1cblxuLmM5IC5jOS1oZWFkaW5nIGgxLFxuLmM5IC5jOS1oZWFkaW5nIGgyLFxuLmM5IC5jOS1oZWFkaW5nIGgzLFxuLmM5IC5jOS1oZWFkaW5nIGg0LFxuLmM5IC5jOS1oZWFkaW5nIGg1LFxuLmM5IC5jOS1oZWFkaW5nIGg2IHtcbiAgICBsaW5lLWhlaWdodDogMTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjhweCkge1xuICAgIC54eGwtaGVhZGluZyAuYzktdHhsIHtcbiAgICAgICAgZm9udC1zaXplOiAxMDBweCAhaW1wb3J0YW50O1xuICAgICAgICBsaW5lLWhlaWdodDogMC45O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICAgIH1cblxuICAgIC5lbnRyeS1jb250ZW50IHBbY2xhc3MkPVwiLWZvbnQtc2l6ZVwiXSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIHtcblxuICAgIC8qIHNlY3Rpb24gaGVhZGluZyBhY2NlbnRzICovXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuZWRpdG9yLXJpY2gtdGV4dCAuc2VjdGlvbi1oZWFkaW5nLWFjY2VudCxcbiAgICAuc2VjdGlvbi1oZWFkaW5nLWFjY2VudCxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5lZGl0b3ItcmljaC10ZXh0IC5zZWN0aW9uLWhlYWRpbmctYWNjZW50LWFsdCxcbiAgICAuc2VjdGlvbi1oZWFkaW5nLWFjY2VudC1hbHQsXG4gICAgLmVudHJ5LWNvbnRlbnQgLnNlY3Rpb24taGVhZGluZy1hY2NlbnQtYWx0LFxuICAgIC5lbnRyeS1jb250ZW50IGgzLnNlY3Rpb24taGVhZGluZy1hY2NlbnQsXG4gICAgLmVudHJ5LWNvbnRlbnQgaDMuc2VjdGlvbi1oZWFkaW5nLWFjY2VudC1hbHQge1xuICAgICAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBjb2xvcjogJGRhcms7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cbiAgICAvKiBzdWJoZWFkaW5ncyAqL1xuICAgIC5lbnRyeS1jb250ZW50IC5zdWJoZWFkaW5nMSxcbiAgICAuZW50cnktY29udGVudCAuc3ViaGVhZGluZzIsXG4gICAgLmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmczLFxuICAgIC5lbnRyeS1jb250ZW50IC5zdWJoZWFkaW5nNCxcbiAgICAuZW50cnktY29udGVudCAuc3ViaGVhZGluZzUsXG4gICAgLndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmcxLFxuICAgIC53cC1ibG9jay1oZWFkaW5nIC5zdWJoZWFkaW5nMixcbiAgICAud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzMsXG4gICAgLndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmc0LFxuICAgIC53cC1ibG9jay1oZWFkaW5nIC5zdWJoZWFkaW5nNSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMjZweDtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDU1ZW07XG4gICAgfVxuXG4gICAgLmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmcyLFxuICAgIC53cC1ibG9jay1oZWFkaW5nIC5zdWJoZWFkaW5nMixcbiAgICAuc3ViaGVhZGluZzIge1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBmb250LXNpemU6IDIzcHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjEyZW07XG4gICAgfVxuXG4gICAgLmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmczLFxuICAgIC53cC1ibG9jay1oZWFkaW5nIC5zdWJoZWFkaW5nMyxcbiAgICAuc3ViaGVhZGluZzMge1xuICAgICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuXG4gICAgLmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmc0LFxuICAgIC53cC1ibG9jay1oZWFkaW5nIC5zdWJoZWFkaW5nNCxcbiAgICAuc3ViaGVhZGluZzQge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjAwMWVtO1xuICAgIH1cblxuICAgIC5lbnRyeS1jb250ZW50IC5zdWJoZWFkaW5nNSxcbiAgICAud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzUsXG4gICAgLnN1YmhlYWRpbmc1IHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xMjVlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgfVxuXG4gICAgLmljb24tbGFiZWwsXG4gICAgLmVudHJ5LWNvbnRlbnQgLmljb24tbGFiZWwsXG4gICAgLndwLWJsb2NrLWhlYWRpbmcgLmljb24tbGFiZWwge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4yZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgfVxuXG4gICAgLmVudHJ5LW1ldGEsXG4gICAgLmVudHJ5LW1ldGEgYSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBjb2xvcjogJGdyYXktNzAwO1xuICAgIH1cblxuICAgIC5lbnRyeS1mb290ZXItY29udGVudCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgfVxuXG4gICAgLmVudHJ5LWZvb3RlciAuY29tbWVudHMtbGluayB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgIH1cblxuICAgIC8qIFdvcmRQcmVzcyBHdXRlbmJlcmcgRm9udCBTaXplcyAqL1xuICAgIC5lbnRyeS1jb250ZW50IC5oYXMtc21hbGwtZm9udC1zaXplIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICAgIH1cbn1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtc3R5bGUtYmxhY2stYmFyW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdLFxuLmVudHJ5LWNvbnRlbnQgcC5pcy1zdHlsZS1ibGFjay1iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbWluLWhlaWdodDogMTZweDtcbiAgICBtYXgtaGVpZ2h0OiAyMHB4O1xuICAgIGNvbG9yOiAkZGFyaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1zdHlsZS1ibGFjay1iYXJbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gc3Ryb25nLFxuLmVudHJ5LWNvbnRlbnQgcC5pcy1zdHlsZS1ibGFjay1iYXIgc3Ryb25nIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGNvbG9yOiAkZGFyaztcbiAgICBwYWRkaW5nOiAwcHggMjBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjdweCkge1xuXG4gICAgLmVudHJ5LWNvbnRlbnQgcC5pcy1zdHlsZS1ibGFjay1iYXIgc3Ryb25nLFxuICAgIC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXN0eWxlLWJsYWNrLWJhcltkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSBzdHJvbmcge1xuICAgICAgICBtaW4taGVpZ2h0OiAxMnB4O1xuICAgIH1cblxuICAgIC5lbnRyeS1jb250ZW50IHAuaXMtc3R5bGUtYmxhY2stYmFyIHN0cm9uZyxcbiAgICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1zdHlsZS1ibGFjay1iYXJbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gc3Ryb25nIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDhweCAycHggOHB4ICFpbXBvcnRhbnQ7XG4gICAgfVxufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1zZXBhcmF0b3IuaXMtc3R5bGUtYmxhY2stYmFyLFxuLmM5IC5lbnRyeS1jb250ZW50IC53cC1ibG9jay1zZXBhcmF0b3IuaXMtc3R5bGUtYmxhY2stYmFyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IHBhZ2UgdGl0bGUgaGVhZGVyIG9uIGxvZ2lucywgc2VhcmNoLCBwYWdlcywgcG9zdHMsIGV0Yy4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4ucGFnZS10ZW1wbGF0ZS1mdWxsd2lkdGhwYWdlIC5jOSAuZW50cnktaGVhZGVyLFxuLmNvbnRhaW5lci13aWR0aC1wYWdlLXdyYXBwZXIuYzkgLnBhZ2UgLmVudHJ5LWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG59XG5cbi5jOSAuZW50cnktaGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyAuaG9tZS1zZWFyY2ggLmVudHJ5LXRpdGxlIHtcbiAgICBjb2xvcjogJGxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbWFyZ2luLXRvcDogODBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIHtcbiAgICAuYzkgLnBhZ2UgLmVudHJ5LWhlYWRlciBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogNTBweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGxpZ2h0O1xuICAgICAgICBtYXJnaW46IDcwcHggYXV0bztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgLmM5IC5wYWdlIC5lbnRyeS1oZWFkZXIgaDEge1xuICAgICAgICBmb250LXNpemU6IDgwcHg7XG4gICAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCB1bm9yZGVyZWQgYW5kIG9yZGVyZWQgbGlzdCBzdHlsaW5ncyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZW50cnktY29udGVudCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMpOm5vdCguZ2ZpZWxkX2NoZWNrYm94KTpub3QoLmdmaWVsZF9yYWRpbyk6bm90KC5uYXYtdGFicyk6bm90KC5jOS1zaGFyZS1saXN0KTpub3QoLnByb2R1Y3RzKSBsaSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXJvb3QtY29udGFpbmVyPnVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSk6bm90KC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyk6bm90KC5nZmllbGRfY2hlY2tib3gpOm5vdCguZ2ZpZWxkX3JhZGlvKTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpOm5vdCgucHJvZHVjdHMpOm5vdCgud3AtYmxvY2stc29jaWFsLWxpbmtzKSBsaSxcbi5lbnRyeS1jb250ZW50IG9sOm5vdCgud3AtYmxvY2stZ2FsbGVyeSk6bm90KC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyk6bm90KC5nZmllbGRfY2hlY2tib3gpOm5vdCguZ2ZpZWxkX3JhZGlvKTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpOm5vdCgucHJvZHVjdHMpIGxpLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtcm9vdC1jb250YWluZXI+b2w6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzKTpub3QoLmdmaWVsZF9jaGVja2JveCk6bm90KC5nZmllbGRfcmFkaW8pOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCk6bm90KC5wcm9kdWN0cyk6bm90KC53cC1ibG9jay1zb2NpYWwtbGlua3MpIGxpIHtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5cbi5lbnRyeS1jb250ZW50IG9sIGxpOmJlZm9yZSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0yMXB4O1xufVxuXG4uZW50cnktY29udGVudCBvbCBsaSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmVkaXRvci1yaWNoLXRleHQgb2wgbGksXG4uZW50cnktY29udGVudCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCguYmxvY2tzLWdhbGxlcnktZ3JpZCk6bm90KC5wcm9kdWN0cyk6bm90KC5uYXYtdGFicyk6bm90KC5wYWdlLW51bWJlcnMpOm5vdCgud3AtYmxvY2stYXJjaGl2ZXMpOm5vdCgud3AtYmxvY2stc29jaWFsLWxpbmtzKSBsaSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmVkaXRvci1yaWNoLXRleHQgdWw6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLmJsb2Nrcy1nYWxsZXJ5LWdyaWQpOm5vdCgucHJvZHVjdHMpOm5vdCgubmF2LXRhYnMpOm5vdCgucGFnZS1udW1iZXJzKTpub3QoLndwLWJsb2NrLWFyY2hpdmVzKTpub3QoLndwLWJsb2NrLXNvY2lhbC1saW5rcykgbGkge1xuICAgIG1hcmdpbjogMTVweCAwcHg7XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgb2wgbGksXG4uZW50cnktY29udGVudCBvbCBsaSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgICAuYzkgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicy5yZXNvdXJjZXMtdGFicyB1bC5uYXYubmF2LXRhYnMge1xuICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgfVxuXG4gICAgLmM5IC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMucmVzb3VyY2VzLXRhYnMgLmM5LWhvcml6b250YWwtdGFicy10YWIgdWw6bm90KC5ibG9ja3MtZ2FsbGVyeS1ncmlkKTpub3QoLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzKTpub3QoLmdmaWVsZF9jaGVja2JveCk6bm90KC5nZmllbGRfcmFkaW8pOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCk6bm90KC5wcm9kdWN0cykge1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICB9XG5cbiAgICAuaG9tZSAuYzktaG9yaXpvbnRhbC10YWJzLXRhYjpsYXN0LWNoaWxkIC53cC1ibG9jay1zcGFjZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5ob21lIC5ieS11c2VyLWdhbGxlcnkgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW06bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwcHggYXV0bztcbiAgICB9XG59XG5cbi5lbnRyeS1jb250ZW50IHVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSkgbGksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5lZGl0b3ItcmljaC10ZXh0IHVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSkgbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBob3Jpem9udGFsIHJ1bGVzIGN1c3RvbWl6ZWQqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1jb2x1bW4gLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS13aWRlLFxuLndwLWJsb2NrLWNvbHVtbnMgLndwLWJsb2NrLXNlcGFyYXRvci5pcy1zdHlsZS13aWRlIHtcbiAgICB3aWR0aDogNjAlO1xuICAgIG1heC13aWR0aDogNjAlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHJlc291cmNlcyBndWlkZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgICAuYzktZ3JpZC5wNSAuYzktbGF5b3V0LWNvbHVtbnMtMiAuYzktY29sdW1uLWlubmVyIHVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSkge1xuICAgICAgICBtYXJnaW46IDBweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgVGFicyArIFRvZ2dsZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKiBiaWcgc3R5bGUgdG9nZ2xlcyAqL1xuXG4uYzkgLmM5LXRvZ2dsZXMgLmM5LXRvZ2dsZXMtdG9nZ2xlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy10b2dnbGUge1xuICAgIHBhZGRpbmc6IDI5cHggMHB4IDE1cHggMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjOTc5Nzk3O1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0tY29sbGFwc2Uge1xuICAgIHRvcDogLTRweDtcbn1cblxuLmM5LXRvZ2dsZXMgLmM5LXRvZ2dsZXMtdG9nZ2xlOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTc5Nzk3O1xufVxuXG4uYzktdmVydGljYWwtdGFicyAuYzktdGFicy1jb250ZW50LnRhYi1jb250ZW50IHtcbiAgICBwYWRkaW5nOiAyNXB4O1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtZGVmYXVsdCAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmcgLmM5LXRvZ2dsZXMtdG9nZ2xlLWxhYmVsLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYzktdG9nZ2xlcy5pcy1zdHlsZS1kZWZhdWx0IC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZyAuYzktdG9nZ2xlcy10b2dnbGUtbGFiZWwge1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgY29sb3I6ICRkYXJrO1xuICAgIGZvbnQtc2l6ZTogNzlweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGxpbmUtaGVpZ2h0OiAwLjk7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC41cyBlYXNlLW91dDtcbn1cblxuLmM5IC5jOS10b2dnbGVzIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZzpob3ZlciAuYzktdG9nZ2xlcy10b2dnbGUtbGFiZWwge1xuICAgIGNvbG9yOiAkZ3JheS05MDA7XG59XG5cbi5jOSAuYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmcge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLyogc21hbGwgc3R5bGUgdG9nZ2xlICovXG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nIC5jOS10b2dnbGVzLXRvZ2dsZS1sYWJlbCxcbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmcgLmM5LXRvZ2dsZXMtdG9nZ2xlLWxhYmVsIHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSAuZmEtYW5nbGUtcmlnaHQ6YmVmb3JlLFxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0tY29sbGFwc2UgLmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG4gICAgY29sb3I6ICRwcmltYXJ5O1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUge1xuICAgIHBhZGRpbmc6IDE1cHggMHB4O1xuICAgIGJvcmRlcjogbm9uZTtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlcjogbm9uZTtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5tYi0wIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmcge1xuICAgIHBhZGRpbmctbGVmdDogNTBweDtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZyAuYzktdG9nZ2xlcy10b2dnbGUtbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAuYzktdG9nZ2xlcy1pdGVtLWNvbGxhcHNlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogLTUwcHg7XG4gICAgdG9wOiAxM3B4O1xuICAgIHJpZ2h0OiBhdXRvO1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSAuZmFzLFxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZzpub3QoW2RhdGEtdG9nZ2xlPVwiY29sbGFwc2VcIl0pIC5jOS10b2dnbGVzLWl0ZW0tY29sbGFwc2UgLmZhLWFuZ2xlLXJpZ2h0LFxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZ1thcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAuYzktdG9nZ2xlcy1pdGVtLWNvbGxhcHNlIC5mYS1hbmdsZS1yaWdodCB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlcjogMi44cHggc29saWQgJGRhcms7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBoZWlnaHQ6IDI3cHg7XG4gICAgd2lkdGg6IDI3cHg7XG59XG5cbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAuZmEtYW5nbGUtcmlnaHQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjA2N1wiO1xuICAgIGNvbG9yOiAjZWJiOTAwO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nLXRvcDogMnB4O1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIC5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDY4XCI7XG59XG5cbi8qIHRhYnMgKi9cblxuLmM5IC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgdWwubmF2Lm5hdi10YWJzIHtcbiAgICBtYXJnaW46IDMwcHggMHB4IDBweCAwcHg7XG59XG5cbi5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0gYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYzktaG9yaXpvbnRhbC10YWJzIC5uYXYtdGFicyAubmF2LWxpbmssXG4ud29vY29tbWVyY2UgLmM5IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkgYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2FkYjFiMjtcbiAgICBjb2xvcjogJGdyYXktNzAwO1xufVxuXG4uZW50cnktY29udGVudCAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luOiAwcHggMTBweDtcbn1cblxuLmM5IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi10YWJzIC5uYXYtbGluazpob3Zlcixcbi53b29jb21tZXJjZSAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSBhOmhvdmVyIHtcbiAgICBjb2xvcjogJGdyYXktNzAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgzNWRlZywgI2ZmZiA3NSUsICRwcmltYXJ5IDI1JSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuICAgIGJvcmRlci1ib3R0b206IDBweDtcbn1cblxuLmM5IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi10YWJzIC5uYXYtbGluay5hY3RpdmUsXG4ud29vY29tbWVyY2UgLmM5IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlIGEubmF2LWxpbmsge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xufVxuXG4ud29vY29tbWVyY2UgLmM5IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlOmFmdGVyLFxuLndvb2NvbW1lcmNlIC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgLmM5IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnM+bGk+Lm5hdi1saW5rIHtcbiAgICBwYWRkaW5nOiAxM3B4IDU1cHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAuYzkgLmM5LWhvcml6b250YWwtdGFicyAubmF2LXRhYnMgLm5hdi1saW5rIHtcbiAgICAgICAgcGFkZGluZzogMTNweCAyMHB4O1xuICAgIH1cblxuICAgIC5jOSAuZW50cnktY29udGVudCAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSB7XG4gICAgICAgIG1hcmdpbjogMHB4IDdweDtcbiAgICB9XG5cbiAgICAuYzkgLmVudHJ5LWNvbnRlbnQgLm5hdi5uYXYtdGFicyAubmF2LWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tbGVmdDogMHB4O1xuICAgIH1cblxuICAgIC5jOSAuZW50cnktY29udGVudCAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaS5hY3RpdmUsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW46IDBweDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICAgIG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMge1xuICAgIHBhZGRpbmctbGVmdDogMHB4O1xufVxuXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuXG4gICAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlLFxuICAgIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkgLm5hdi1saW5rIHtcbiAgICAgICAgcGFkZGluZzogMTFweCAxOXB4O1xuICAgIH1cblxuICAgIC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi5uYXYtdGFicyAubmF2LWl0ZW0sXG4gICAgLnByb2R1Y3QgLmM5LWhvcml6b250YWwtdGFicyAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSB7XG4gICAgICAgIG1hcmdpbjogMHB4IDZweDtcbiAgICB9XG5cbiAgICAud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgLmM5IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnM+bGk+Lm5hdi1saW5rIHtcbiAgICAgICAgcGFkZGluZzogMTNweCAzMHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjdweCkge1xuXG4gICAgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicyAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSxcbiAgICAucHJvZHVjdCAuYzktaG9yaXpvbnRhbC10YWJzIC5uYXYubmF2LXRhYnMgLm5hdi1pdGVtIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIG1hcmdpbjogMHB4IDNweDtcbiAgICB9XG5cbiAgICAuYzktaG9yaXpvbnRhbC10YWJzIC5uYXYtdGFicyAubmF2LWxpbmsge1xuICAgICAgICBwYWRkaW5nOiAxMXB4IDE5cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICB9XG5cbiAgICAuZW50cnktY29udGVudCAuYzktaG9yaXpvbnRhbC10YWJzIC5uYXYubmF2LXRhYnMsXG4gICAgLnByb2R1Y3QgLmM5LWhvcml6b250YWwtdGFicyAubmF2Lm5hdi10YWJzIHtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MTRweCkge1xuICAgIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicz5saSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzPmxpPmEge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5jOSAuZW50cnktY29udGVudCAuYzktaG9yaXpvbnRhbC10YWJzPi5uYXYubmF2LXRhYnMsXG4gICAgLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYzktaG9yaXpvbnRhbC10YWJzPi5uYXYubmF2LXRhYnMge1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuXG4gICAgLmM5IC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnM+Lm5hdi5uYXYtdGFicyAubmF2LWl0ZW0ge1xuICAgICAgICBmbGV4LWdyb3c6IDE7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luOiAzcHg7XG4gICAgfVxuXG4gICAgLmM5IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgICAgIHBhZGRpbmc6IDEzcHggMTBweDtcbiAgICB9XG5cbiAgICAuc2luZ2xlLXByb2R1Y3QgLmM5LWhvcml6b250YWwtdGFicz4ubmF2Lm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IFNlYXJjaCAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uc2VhcmNoLXJlc3VsdHMgI3dyYXBwZXItbmF2YmFyLFxuLmM5LnNlYXJjaCAjd3JhcHBlci1uYXZiYXIsXG4uc2VhcmNoLW5vLXJlc3VsdHMgI3dyYXBwZXItbmF2YmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgIC5zZWFyY2gtcmVzdWx0cyAjd3JhcHBlci1uYXZiYXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAucGFnZS1zZWFyY2gtcmVzdWx0cyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEzNXB4O1xuICAgIH1cbn1cblxuLnNlYXJjaC1yZXN1bHRzIC5zaXRlLW1haW4gLmNvbnRhaW5lciAuZW50cnktc3VtbWFyeSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlYXJjaC1yZXN1bHRzIC5zaXRlLW1haW4gLmNvbnRhaW5lciAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSBhIHtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcztcbn1cblxuLnNlYXJjaC1yZXN1bHRzIC5zaXRlLW1haW4gLmNvbnRhaW5lciAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSBhOmhvdmVyIHtcbiAgICBjb2xvcjogJHByaW1hcnk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogZnVsbHNjcmVlbiBzZWFyY2ggKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4jZnVsbHNjcmVlbnNlYXJjaCAuYnRuIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGNvbG9yOiAkbGlnaHQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiogV29yZFByZXNzIFBhc3N3b3JkIEZvcm0gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4ucG9zdC1wYXNzd29yZC1mb3JtIHAgbGFiZWwge1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICBtaW4taGVpZ2h0OiA1NXB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBBcmNoaXZlLCBUYWcsIENhdGVnb3J5LCBCbG9nIEluZGV4ICsgRGVmYXVsdCBIb21lIEJsb2cgUG9zdHMsIFNlYXJjaCBSZXN1bHRzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5ibG9nIC5jOSAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSBhLFxuLmFyY2hpdmUgLmM5IC5lbnRyeS10aXRsZSBhLFxuLnNlYXJjaC1yZXN1bHRzIC5jOSAuZW50cnktdGl0bGUgYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYmxvZyAuYzkgLmVudHJ5LWhlYWRlciAuZW50cnktdGl0bGUgYTpmb2N1cyxcbi5hcmNoaXZlIC5jOSAuZW50cnktdGl0bGUgYTpmb2N1cyxcbi5zZWFyY2gtcmVzdWx0cyAuYzkgLmVudHJ5LXRpdGxlIGE6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xufVxuXG4uYmxvZyAuYzkgLmVudHJ5LWhlYWRlciAuZW50cnktdGl0bGUsXG4uYXJjaGl2ZSAuYzkgLmVudHJ5LXRpdGxlLFxuLnNlYXJjaC1yZXN1bHRzIC5jOSAuZW50cnktdGl0bGUge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjE7XG4gICAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4uc2VhcmNoLXJlc3VsdHMgLmVudHJ5LWZvb3RlciB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG5cbi5zZWFyY2gtcmVzdWx0cyAuY2F0LWxpbmtzLFxuLnNlYXJjaC1yZXN1bHRzIC50YWdzLWxpbmtzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDdweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgQmxvZyBTaW5nbGUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSxcbi5lbnRyeS1iaWctaGVhZGVyIC5lbnRyeS10aXRsZS1ib3ggLmVudHJ5LW1ldGEgLmF1dGhvciBhLFxuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSAuYnlsaW5lLFxuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSAucG9zdGVkLW9uLFxuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSAucG9zdGVkLW9uIGEge1xuICAgIGNvbG9yOiAkbGlnaHQ7XG4gICAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4uZW50cnktbWV0YSAudXBkYXRlZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgQW5pbWF0aW9ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jaWNvbi1tb3VzZS1zY3JvbGwge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgd2lkdGg6IDI1cHg7XG4gICAgaGVpZ2h0OiAyNXB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBGb290ZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmZvb3Rlci1lbnRpcmV0eSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDQwO1xufVxuXG4jd3JhcHBlci1mb290ZXItZnVsbCB7XG4gICAgY29sb3I6ICRncmF5LTEwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOGQ4ZDg7XG59XG5cbiN3cmFwcGVyLWZvb3RlciB7XG4gICAgY29sb3I6ICRncmF5LTEwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4jd3JhcHBlci1mb290ZXItZnVsbCAud2lkZ2V0X25hdl9tZW51IGEsXG4jd3JhcHBlci1mb290ZXItZnVsbCBhIHtcbiAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4jd3JhcHBlci1mb290ZXItZnVsbCBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG59XG5cbi5mb290ZXItd3JhcHBlciB7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOGQ4ZDg7XG59XG5cbiN3cmFwcGVyLWZvb3RlciAuc2l0ZS1mb290ZXIsXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIC5yb3csXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIC5yb3cgcCxcbiN3cmFwcGVyLWZvb3RlciAuc2l0ZS1mb290ZXIgLmNvcHlyaWdodCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuMTtcbn1cblxuI3dyYXBwZXItZm9vdGVyIC5zaXRlLWZvb3RlciBwLFxuLmZvb3Rlci1saW5rcyBhLFxuI3dyYXBwZXItZm9vdGVyIC5zaXRlLWZvb3RlciBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgY29sb3I6ICM0YTRhNGE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDVweDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuI3dyYXBwZXItZm9vdGVyIC5zaXRlLWZvb3RlciBhOmhvdmVyIHtcbiAgICBjb2xvcjogJGRhcms7XG59XG5cbi5mb290ZXItc29jaWFsIGEge1xuICAgIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuLmZvb3Rlci1zb2NpYWwgYSBpOmJlZm9yZSB7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4uZm9vdGVyLXNvY2lhbCBhIC5mYWI6YmVmb3JlIHtcbiAgICBjb2xvcjogJGdyYXktMjAwO1xuICAgIHRyYW5zaXRpb246IGNvbG9yIDAuNHM7XG4gICAgZm9udC1mYW1pbHk6IFwiZm9udGF3ZXNvbWVcIjtcbn1cblxuLmZvb3Rlci1zb2NpYWwgYTpob3ZlciAuZmFiOmJlZm9yZSB7XG4gICAgY29sb3I6ICRkYXJrO1xufVxuXG4uZm9vdGVyLXNvY2lhbC13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAtNXB4O1xufVxuXG4uZm9vdGVyLXNlYXJjaCB7XG4gICAgbWFyZ2luLXRvcDogLTEwcHg7XG59XG5cbi5mb290ZXItc2VhcmNoIC5pbnB1dC1ncm91cCAuaW5wdXQtZ3JvdXAtYXBwZW5kIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZm9vdGVyLXNlYXJjaCAuaW5wdXQtZ3JvdXAge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyMDtcbiAgICBtYXgtd2lkdGg6IDE4MHB4O1xufVxuXG4uZm9vdGVyLXNlYXJjaCAuaW5wdXQtZ3JvdXA6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gICAgY29sb3I6ICM5YjliOWI7XG4gICAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAxMHB4O1xuICAgIHRvcDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB6LWluZGV4OiAyMjtcbn1cblxuLmZvb3Rlci1zZWFyY2ggLmlucHV0LWdyb3VwLnNlYXJjaC1maWVsZCB7XG4gICAgcGFkZGluZzogMTBweCAxMnB4O1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgIC5mb290ZXItc2VhcmNoIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY3cHgpIHtcbiAgICAuZm9vdGVyLXdpZGdldC53aWRnZXQtY29ydGV4LWluc3RhZ3JhbSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwcHg7XG4gICAgfVxuXG4gICAgI3dyYXBwZXItZm9vdGVyIC5zaXRlLWZvb3RlciB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMHB4O1xuICAgIH1cblxuICAgICNuYXZfbWVudS02IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAjbmF2X21lbnUtNyxcbiAgICAjbmF2X21lbnUtOCB7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgIH1cblxuICAgIC5mb290ZXItc29jaWFsLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG5cbiAgICAuZm9vdGVyLWxpbmtzLXdyYXBwZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuZm9vdGVyLWNvcHlyaWdodC13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuZm9vdGVyLXNlYXJjaC13cmFwcGVyIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDM3NXB4KSB7XG4gICAgLmNvcHlyaWdodCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgfVxufVxuXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIC5mb290ZXItY29weXJpZ2h0LXdyYXBwZXIgLmNvcHlyaWdodCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgd2lkZ2V0IGN1c3RvbWl6YXRpb25zKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBhbGwgd2lkZ2V0cyAqL1xuXG4uZm9vdGVyLXdpZGdldCAubWVudSAubWVudS1pdGVtLFxuLmZvb3Rlci13aWRnZXQ+dWw+bGkge1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgICBwYWRkaW5nLWxlZnQ6IDBweDtcbiAgICBtYXJnaW46IDA7XG59XG5cbi5mb290ZXItd2lkZ2V0IGgzIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5mb290ZXItd2lkZ2V0IC5tZW51IC5tZW51LWl0ZW0gYSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA0cHg7XG59XG5cbi5mb290ZXItd2lkZ2V0LndpZGdldF9jdXN0b21faHRtbDpsYXN0LWNoaWxkIC53aWRnZXQtdGl0bGU6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgY29udGVudDogXCJcXGYxNmRcIjtcbiAgICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICAgIGNvbG9yOiAjOWI5YjliO1xuICAgIHBhZGRpbmctcmlnaHQ6IDRweDtcbn1cblxuLmZvb3Rlci13aWRnZXQgLnNiX2luc3RhZ3JhbV9oZWFkZXIsXG4uZm9vdGVyLXdpZGdldCAjc2JfaW5zdGFncmFtICNzYmlfbG9hZCAuc2JpX2xvYWRfYnRuIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4jc2JfaW5zdGFncmFtIC5zYmlfZm9sbG93X2J0biBhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogIzRhNGE0YTtcbn1cblxuI3NiX2luc3RhZ3JhbSAuc2JpX2ZvbGxvd19idG4gYTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZm9vdGVyLXdpZGdldCAuaW5zdGFncmFtLXBpY3Mge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbn1cblxuLmZvb3Rlci13aWRnZXQgLmluc3RhZ3JhbS1waWNzIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIHBhZGRpbmc6IDBweDtcbiAgICBtYXgtd2lkdGg6IDQ4JTtcbiAgICBtYXJnaW46IDElIDQlIDQlIDAlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmZvb3Rlci13aWRnZXQgLmluc3RhZ3JhbS1waWNzIGxpOm50aC1jaGlsZChldmVuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBHcmF2aXR5IEZvcm1zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5jOSAuZ2Zvcm1fd3JhcHBlciBsYWJlbC5nZmllbGRfbGFiZWwsXG4uYzkgLmdmb3JtX3dyYXBwZXIgbGVnZW5kLmdmaWVsZF9sYWJlbCxcbi53cC1ibG9ja1tkYXRhLXR5cGU9XCJncmF2aXR5Zm9ybXMvYmxvY2tcIl0gLmdmb3JtX3dyYXBwZXIgbGFiZWwuZ2ZpZWxkX2xhYmVsLFxuLndwLWJsb2NrW2RhdGEtdHlwZT1cImdyYXZpdHlmb3Jtcy9ibG9ja1wiXSAuZ2Zvcm1fd3JhcHBlciBsZWdlbmQuZ2ZpZWxkX2xhYmVsLFxuLmM5IC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4uYzkgLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xufVxuXG4uYzkgLmdmb3JtX3dyYXBwZXIgaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKTpub3QoW3R5cGU9XCJzdWJtaXRcIl0pOm5vdChbdHlwZT1cImJ1dHRvblwiXSk6bm90KFt0eXBlPVwiaW1hZ2VcIl0pOm5vdChbdHlwZT1cImZpbGVcIl0pLFxuLmM5IC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi5jOSAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLmM5IC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLmM5IC5nZm9ybV93cmFwcGVyIHRleHRhcmVhLFxuLndwLWJsb2NrW2RhdGEtdHlwZT1cImdyYXZpdHlmb3Jtcy9ibG9ja1wiXSAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4ud3AtYmxvY2tbZGF0YS10eXBlPVwiZ3Jhdml0eWZvcm1zL2Jsb2NrXCJdIC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4ud3AtYmxvY2tbZGF0YS10eXBlPVwiZ3Jhdml0eWZvcm1zL2Jsb2NrXCJdIC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLndwLWJsb2NrW2RhdGEtdHlwZT1cImdyYXZpdHlmb3Jtcy9ibG9ja1wiXSAuZ2Zvcm1fd3JhcHBlciB0ZXh0YXJlYSAuYzkgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLmM5IGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4uYzkgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uYzkgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLmM5IGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4uYzkgdGV4dGFyZWEsXG4uYzkgaW5wdXRbdHlwZT1cInNlYXJjaFwiXSxcbi5zZWFyY2gtZm9ybSAuc2VhcmNoLWZpZWxkLFxuLmZvb3Rlci1zZWFyY2gtd3JhcHBlciAuZmllbGRbdHlwZT10ZXh0XSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIG1pbi1oZWlnaHQ6IDU1cHg7XG59XG5cbi5jOSAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIHtcbiAgICBmb250LXNpemU6IDEwcHg7XG59XG5cbi5jOSAuZW50cnktY29udGVudCB1bC5nZm9ybV9maWVsZHMge1xuICAgIHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5naW5wdXRfY2FyZF9leHBpcmF0aW9uX2NvbnRhaW5lciBzZWxlY3QsXG4uZ2lucHV0X2NhcmRfZXhwaXJhdGlvbl9jb250YWluZXIgbGFiZWwge1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4uYzkgLmdpbnB1dF9jb250YWluZXJfY3JlZGl0Y2FyZCBsYWJlbCxcbi5jOSAuZ2lucHV0X2NhcmRfZXhwaXJhdGlvbl9jb250YWluZXIgbGFiZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbn1cblxuLmdpbnB1dF9jYXJkX2V4cGlyYXRpb25fY29udGFpbmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG4uYzkgLmdmb3JtX3dyYXBwZXIgLmZpZWxkX2Rlc2NyaXB0aW9uX2JlbG93IC5nZmllbGRfZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmctdG9wOiAwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogRmlsZSBBdHRhY2htZW50cyArIFN1Ym1pdCBCdXR0b25zICovXG5cbi5jOSAuZ2Zvcm1fd3JhcHBlciBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX3NhZmFyaSBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX2Nocm9tZSBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0LmJ1dHRvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBpbnB1dC5idXR0b24ge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgwZGVnLCAjZWJiOTAwIDAlLCAjZWFkYzIzIDEwMCUpO1xuICAgIHBhZGRpbmc6IDE5cHggMjhweCAxNHB4IDI4cHggIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgZm9udC1zaXplOiAyOXB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgICBib3JkZXI6IDBweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgdWw6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpIGxpLmdmaWVsZCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgdWw6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpIGxpLmdmaWVsZCB7XG4gICAgbWFyZ2luOiAxNXB4IDBweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbnMgLndwLWJsb2NrLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG59XG5cbi5jOS1ibG9jay1jdGEgLmM5LWN0YS1jb250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbmssXG4uYzktYmxvY2stY3RhLmM5LWN0YSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgICBmb250LXNpemU6IDIwcHg7XG59XG5cbi8qIEJ1dHRvbiBhbmQgaW5wdXQgZm9jdXMgc3R5bGVzICovXG4ud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLFxuLmJ0bjpmb2N1cyxcbi53cC1ibG9jay1maWxlX19idXR0b246Zm9jdXMsXG4uYzkgLmVudHJ5LWNvbnRlbnQgYnV0dG9uOmZvY3VzLFxuLndwLWJsb2NrLWJ1dHRvbl9fbGluazpub3QoW2hyZWZdKTpub3QoW3RhYmluZGV4XSk6Zm9jdXMsXG4uZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyxcbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsXG4uZW50cnktY29udGVudCBpbnB1dFt0eXBlPVwidGV4dFwiXTpmb2N1cyxcbiNmdWxsc2NyZWVuc2VhcmNoIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Zm9jdXMsXG4uc2VhcmNoLWNsb3NlOmZvY3VzIHtcbiAgICBib3gtc2hhZG93OiAxcHggMXB4IDlweCByZ2JhKDAsIDAsIDAsIC41KTtcbiAgICBvdXRsaW5lOiAxcHggZG90dGVkICRsaWdodDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgQ3VzdG9taXphdGlvbnMgdG8gQ29yZSBCbG9ja3MgICsgQzkgQmxvY2tzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGM5LWdyaWQgKi9cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LWNvbHVtbi1jb250YWluZXIsXG4uYzktY29sdW1uLWNvbnRhaW5lciB7XG4gICAgei1pbmRleDogMTI7XG59XG5cbi8qIGhlYWRlciBjdXN0b21pemF0aW9ucyB0byBjOS1ncmlkcyAqL1xuLmlzLXN0eWxlLWdyYXktZGlhZ29uYWwsXG4uZ3JheS1kaWFnb25hbCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmlzLXN0eWxlLWdyYXktZGlhZ29uYWw6YWZ0ZXIsXG4uZ3JheS1kaWFnb25hbDphZnRlciB7XG4gICAgei1pbmRleDogOTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtMTY1cHg7XG4gICAgbGVmdDogMDtcbiAgICBoZWlnaHQ6IDYwJTtcbiAgICB3aWR0aDogMTAwdnc7XG4gICAgY29udGVudDogdXJsKHdsLWRpYWdvbmFsLWJnLnN2Zyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogMCAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGVYKDMuMyk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcblxuICAgIC5pcy1zdHlsZS1ncmF5LWRpYWdvbmFsOmFmdGVyLFxuICAgIC5ncmF5LWRpYWdvbmFsOmFmdGVyIHtcbiAgICAgICAgaGVpZ2h0OiAyMCU7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2OHB4KSB7XG5cbiAgICAuaXMtc3R5bGUtZ3JheS1kaWFnb25hbDphZnRlcixcbiAgICAuZ3JheS1kaWFnb25hbDphZnRlciB7XG4gICAgICAgIGhlaWdodDogMTAlO1xuICAgIH1cbn1cblxuLmlzLXN0eWxlLWRhcmstZ3JhZGllbnQtbGVmdCxcbi5kYXJrLWdyYWRpZW50LWxlZnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBibGFjayBncmFkaWVudCBmb3IgYWJvdXQgcGFnZSBiYWNrZ3JvdW5kcyAqL1xuXG4uaXMtc3R5bGUtZGFyay1ncmFkaWVudC1sZWZ0OmFmdGVyLFxuLmRhcmstZ3JhZGllbnQtbGVmdDphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIHotaW5kZXg6IDc7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQ6IHJnYmEoMCwgMCwgMCwgMSk7XG4gICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsZWZ0IHRvcCwgcmlnaHQgdG9wLCBjb2xvci1zdG9wKDAlLCByZ2JhKDAsIDAsIDAsIDEpKSwgY29sb3Itc3RvcCgzNyUsIHJnYmEoMCwgMCwgMCwgMSkpLCBjb2xvci1zdG9wKDEwMCUsIHJnYmEoMCwgMCwgMCwgMCkpKTtcbiAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMSkgMCUsIHJnYmEoMCwgMCwgMCwgMSkgMzclLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuICAgIC8vIGZpbHRlcjogcHJvZ2lkOiBEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScjMDAwMDAwJywgZW5kQ29sb3JzdHI9JyMwMDAwMDAnLCBHcmFkaWVudFR5cGU9MSk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogZ2FsbGVyeSBhZGp1c3RtZW50cyAgZm9yIGNvcmUgZ2FsbGVyeSBibG9jayAqL1xuXG4uZW50cnktY29udGVudCAuY29udGFpbmVyIC53cC1ibG9jay1nYWxsZXJ5IHtcbiAgICBtYXgtd2lkdGg6IDExNDBweDtcbn1cblxuLndwLWJsb2NrLWdhbGxlcnkgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0gYSBpbWcge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLndwLWJsb2NrLWdhbGxlcnkgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0gYTpob3ZlciBpbWcge1xuICAgIG9wYWNpdHk6IDAuOTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKmNhbGwgdG8gYWN0aW9uIGJsb2NrKi9cblxuLmM5LWN0YSAuYzktY3RhLWJ1dHRvbiAuc3F1YXJlIHtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC45N3B4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYzktY3RhIC5jOS1jdGEtYnV0dG9uIC5zcXVhcmU6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLmM5LWN0YS1jb250ZW50IC5jOS1jdGEtdGV4dFtzdHlsZV0gcCB7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmM5LWN0YSAuYzktY3RhLWJ1dHRvbiAuc3F1YXJlIHtcbiAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDOSBzb2NpYWwgc2hhcmUgYmxvY2sgKi9cblxuLmM5LXNvY2lhbC1zaGFyaW5nIC5jOS1zaGFyZS1saXN0IGEge1xuICAgIG1hcmdpbjogMHB4IDJweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBwb3N0cyBncmlkIGJsb2NrICovXG5cbi5jOS1ibG9jay1wb3N0LWdyaWQgLmM5LWJsb2NrLXBvc3QtZ3JpZC1ieWxpbmUge1xuICAgIGZvbnQ6ICRmb250LXdlaWdodC1saWdodCAxNnB4LzEgJGhlYWRpbmdzLWZvbnQtZmFtaWx5LCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xufVxuXG4uYzktYmxvY2stcG9zdC1ncmlkIGhlYWRlciAuYzktYmxvY2stcG9zdC1ncmlkLXRpdGxlLFxuLmM5LWJsb2NrLXBvc3QtZ3JpZCAuYzktYmxvY2stcG9zdC1ncmlkLWJ5bGluZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5cbi5lbnRyeS1jb250ZW50IC5jOS1ibG9jay1wb3N0LWdyaWQtZXhjZXJwdCBwLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYzktYmxvY2stcG9zdC1ncmlkLWV4Y2VycHQgcCB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiB3b29jb21tZXJjZSBwcm9kdWN0cyBibG9ja3MgYW5kIHByb2R1Y3Qgc2luZ2xlICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogZm9udCBzaXplIHNldHRpbmcgKi9cblxuLndvb2NvbW1lcmNlLXN0b3JlLW5vdGljZSxcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgdGFibGUsXG4uYzktcHJvZHVjdC1jYXRhbG9nLFxuLmM5IC5wcm9kdWN0X21ldGEsXG4uYzkgLmNvbW1lbnQtcmVzcG9uZCxcbi53Yy1ibG9jay1ncmlkX19wcm9kdWN0IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXRpdGxlLFxuLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcHJpY2Uge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtbGluayB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHByb2R1Y3Qgc2luZ2xlIHByb2R1Y3RfbWV0YSAqL1xuXG4uYzkgLnByb2R1Y3RfbWV0YT5zcGFuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiByZXZpZXdzIGZvcm0gKi9cblxuLmM5IC53b29jb21tZXJjZS1SZXZpZXdzLFxuLmM5IC53b29jb21tZXJjZS10YWJzIC5jOS10YWJzLWNvbnRlbnQge1xuICAgIG1heC13aWR0aDogNjc1cHg7XG59XG5cbi5jOSAuZW50cnktY29udGVudCAuY29tbWVudC1mb3JtIC5jb21tZW50LWZvcm0tY29tbWVudCxcbi5jOSAuZW50cnktY29udGVudCAuY29tbWVudC1mb3JtIHAsXG4uYzkgLndvb2NvbW1lcmNlLW9yZGVyaW5nLFxuLndvb2NvbW1lcmNlIC5jOSBkaXYucHJvZHVjdCBwLnN0b2NrLFxuLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlcixcbi5zaG9wX3RhYmxlLFxuLmM5IC53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4uYzkgLndvb2NvbW1lcmNlIGEuYnV0dG9uLFxuLmM5IC53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuLmM5IC53b29jb21tZXJjZSBpbnB1dC5idXR0b24ge1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlciB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xufVxuXG4uYzkgLmVudHJ5LWNvbnRlbnQgLmNvbW1lbnQtZm9ybSBsYWJlbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gdGFibGUgKi9cblxuLndvb2NvbW1lcmNlIC5jOSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGQsXG4ud29vY29tbWVyY2UgLmM5IHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2UtcHJvZHVjdC1hdHRyaWJ1dGVzLWl0ZW1fX3ZhbHVlIHAge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHd3b29jb21tZXJjZSBhZGQgdG8gY2FydCBmb3JtIHRhYmxlICovXG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLmdyb3VwX3RhYmxlIHRkIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIHRleHQgZm9ybWF0dGluZyBhbmQgY29sb3IgY2hhbmdlcyAqL1xuXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJpY2UsXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgcC5wcmljZSxcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBzcGFuLnByaWNlIHtcbiAgICBjb2xvcjogJGRhcms7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4ud29vY29tbWVyY2UgLmM5IHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByaWNlIGlucyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHByb2R1Y3Qgc2luZ2xlIHF1YW50aXR5IGZpZWxkICovXG5cbi53b29jb21tZXJjZSAuYzkgLnF1YW50aXR5IC5xdHkge1xuICAgIG1pbi1oZWlnaHQ6IDUzcHg7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIGJ1dHRvbnMgKi9cblxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbixcbi5jOSAud29vY29tbWVyY2UgdGQuYWN0aW9ucyAuY291cG9uIGJ1dHRvbi5idXR0b24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gICAgcGFkZGluZzogMTlweCAyOHB4IDE0cHggMjhweDtcbiAgICBjb2xvcjogJGxpZ2h0O1xufVxuXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmRpc2FibGVkLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uOmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdIHtcbiAgICBwYWRkaW5nOiAxOXB4IDI4cHggMTRweCAyOHB4O1xufVxuXG4ud29vY29tbWVyY2UgLmM5ICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbi53b29jb21tZXJjZSAuYzkgYS5idXR0b24sXG4ud29vY29tbWVyY2UgLmM5IGJ1dHRvbi5idXR0b24sXG4ud29vY29tbWVyY2UgLmM5IGlucHV0LmJ1dHRvbixcbi53b29jb21tZXJjZSBhLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTlweCAyOHB4IDE0cHggMjhweDtcbiAgICBjb2xvcjogJGxpZ2h0O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wOGVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgYm9yZGVyOiBub25lO1xufVxuXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQuZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGdyYXktNzAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2OHB4KSB7XG4gICAgLmM5IC53Yy1ibG9jay1ncmlkPi53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdCguaXMtc3R5bGUtb3V0bGluZSkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHBhZGRpbmc6IDE5cHggMTVweCAxNHB4IDE1cHhcbiAgICB9XG59XG5cbi5lbnRyeS1jb250ZW50IC53Yy1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0OmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLmM5LXdvb2NvbW1lcmNlIC5lbnRyeS1jb250ZW50Pi5jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjhweCkge1xuICAgIC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGEgaW1nIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTQ2cHg7XG4gICAgfVxufVxuXG4ud29vY29tbWVyY2UgLnByb2R1Y3RzIGxpLnByb2R1Y3Q6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4ud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5ib2R5IC53b29jb21tZXJjZS1pbmZvIHtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICBmb250LXNpemU6IDIwcHg7XG4gICAgZm9udC1mYW1pbHk6ICRoZWFkaW5ncy1mb250LWZhbWlseTtcbiAgICBjb2xvcjogYmxhY2s7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG5ib2R5IC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBvbiBzYWxlIGJveGVzIG5lZWQgYm9yZGVyIGJveCBzaXppbmcgcmVkb25lICovXG5cbi5vbnNhbGUge1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGhvbWVwYWdlICsgY2F0YWxvZyB3b29jb21tZXJjZSBwcm9kdWN0IGJsb2NrcyAqL1xuXG4ud2MtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHM6b25seS1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4ud2MtYmxvY2stZ3JpZCBpbnMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLndjLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Qtb25zYWxlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kOiAkZGFyaztcbiAgICBjb2xvcjogJGxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICBwYWRkaW5nOiAycHggOHB4O1xufVxuXG4uZW50cnktY29udGVudCAud2MtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHM6bm90KC53cC1ibG9jay1nYWxsZXJ5KSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG4gICAgbWFyZ2luLXRvcDogMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbn1cblxuLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QsXG4uZW50cnktY29udGVudCAud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMsXG4uZW50cnktY29udGVudCAud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Qge1xuICAgIG1hcmdpbjogMHB4O1xuICAgIHBhZGRpbmc6IDBweDtcbn1cblxuLndjLWJsb2NrLWdyaWQ+LndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzLFxuLmVudHJ5LWNvbnRlbnQgLndjLWJsb2NrLWdyaWQ+LndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xufVxuXG4uZW50cnktY29udGVudCAud29vY29tbWVyY2UtcGxhY2Vob2xkZXIge1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgaGVpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgLmVudHJ5LWNvbnRlbnQgLndvb2NvbW1lcmNlLXBsYWNlaG9sZGVyIHtcbiAgICAgICAgbWluLXdpZHRoOiAxMDBweDtcbiAgICB9XG59XG5cbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCBhIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWltYWdlIC5zaXplLXdvb2NvbW1lcmNlX3RodW1ibmFpbCxcbi5hcmNoaXZlLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYSBpbWcge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IGEgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgLnNpemUtd29vY29tbWVyY2VfdGh1bWJuYWlsOmhvdmVyLFxuLmFyY2hpdmUud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIGltZzpob3ZlciB7XG4gICAgb3BhY2l0eTogMC45O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLndjLWJsb2NrLWdyaWQuaGFzLTQtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG4gICAgICAgIG1heC13aWR0aDogMjQlO1xuICAgIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcblxuICAgIC5hcmNoaXZlLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYSBpbWcsXG4gICAgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IGEgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgLnNpemUtd29vY29tbWVyY2VfdGh1bWJuYWlsIHtcbiAgICAgICAgbWF4LWhlaWdodDogMjA1cHg7XG4gICAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2N3B4KSB7XG4gICAgLmM5IC53Yy1ibG9jay1ncmlkLmhhcy00LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Qge1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgIH1cblxuICAgIC5hcmNoaXZlLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYSBpbWcsXG4gICAgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IGEgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgLnNpemUtd29vY29tbWVyY2VfdGh1bWJuYWlsIHtcbiAgICAgICAgbWF4LWhlaWdodDogMTMzcHg7XG4gICAgfVxufVxuXG4uZW50cnktY29udGVudCAud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgYSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1pbWFnZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3M7XG59XG5cbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCBhIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWltYWdlOmhvdmVyIHtcbiAgICBvcGFjaXR5OiAwLjk1O1xufVxuXG4ud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2luZ2xlLXByb2R1Y3QgI3dyYXBwZXItbmF2YmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuLndvb2NvbW1lcmNlIC5zaXRlLW1haW4gZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkge1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcblxuICAgIC5zaW5nbGUtcHJvZHVjdCAucGFuZWwsXG4gICAgLnNpbmdsZS1wcm9kdWN0IC5wYW5lbCBwLFxuICAgIC5zaW5nbGUtcHJvZHVjdCAucGFuZWwgdWwsXG4gICAgLnNpbmdsZS1wcm9kdWN0IC5wYW5lbCB1bCBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICB9XG5cbiAgICAuc2luZ2xlLXByb2R1Y3QgLnBhbmVsIHVsIGxpOmJlZm9yZSB7XG4gICAgICAgIHRvcDogMnB4O1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24gcCB7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24gcDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICBib3R0b206IDA7XG4gICAgd2lkdGg6IDc1JTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjOTc5Nzk3O1xufVxuXG4uc2luZ2xlLXByb2R1Y3QgLndvb2NvbW1lcmNlLVRhYnMtcGFuZWw6Zmlyc3QtY2hpbGQgdWwgbGkge1xuICAgIG1hcmdpbjogMTBweCAwcHg7XG59XG5cbi5zaW5nbGUtcHJvZHVjdCAuZmxleC12aWV3cG9ydCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMgLmZsZXgtY29udHJvbC10aHVtYnMge1xuICAgIG1hcmdpbi1sZWZ0OiAtNXB4O1xuICAgIG1hcmdpbi1yaWdodDogLTVweDtcbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMgLmZsZXgtY29udHJvbC10aHVtYnMgbGkge1xuICAgIHBhZGRpbmc6IDBweCA1cHg7XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJzIGxpOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MTRweCkge1xuICAgIC5zaW5nbGUtcHJvZHVjdCAud29vY29tbWVyY2UtVGFicy1wYW5lbDpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKmJyZWFkY3J1bWJzKi9cblxuLndvb2NvbW1lcmNlIC5zaXRlLW1haW4gLndvb2NvbW1lcmNlLWJyZWFkY3J1bWIge1xuICAgIG1heC13aWR0aDogMTE0MHB4O1xuICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICAgIHBhZGRpbmc6IDBweCAxNXB4O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNXB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY29sb3I6ICRkYXJrO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi53b29jb21tZXJjZSAuc2l0ZS1tYWluIC53b29jb21tZXJjZS1icmVhZGNydW1iIGEge1xuICAgIGNvbG9yOiAkZGFyaztcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMC4zcztcbn1cblxuLndvb2NvbW1lcmNlIC5zaXRlLW1haW4gLndvb2NvbW1lcmNlLWJyZWFkY3J1bWIgYTpob3ZlciB7XG4gICAgY29sb3I6ICM5YjliOWI7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHByb2R1Y3QgaW5kZXggZnJvbSBicmVhZGNydW1icyAqL1xuXG4uYzkud29vY29tbWVyY2UgI3dyYXBwZXItbmF2YmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuLmM5IC53b29jb21tZXJjZS1wcm9kdWN0cy1oZWFkZXJfX3RpdGxlIHtcbiAgICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgZm9udC1zaXplOiA3OXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYzkud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG59XG5cbi5wYWdlLXNlYXJjaC1yZXN1bHRzIG5hdiB7XG4gICAgbWFyZ2luOiAwcHggYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlLXNlYXJjaC1yZXN1bHRzIG5hdiAucGFnaW5hdGlvbiB7XG4gICAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gICAgbWFyZ2luOiAwcHggYXV0bztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyBuYXYgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uYzkud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24sXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyBuYXYgLnBhZ2luYXRpb24ge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogV29vQ29tbWVyY2UgQ2hlY2tvdXQgKi9cblxuLndvb2NvbW1lcmNlLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTEsXG4ud29vY29tbWVyY2UtcGFnZS53b29jb21tZXJjZS1jaGVja291dCAuY29sMi1zZXQgLmNvbC0xLFxuLndvb2NvbW1lcmNlLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTIsXG4ud29vY29tbWVyY2UtcGFnZS53b29jb21tZXJjZS1jaGVja291dCAuY29sMi1zZXQgLmNvbC0yIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi5jOSAud29vY29tbWVyY2UgdGFibGUuc2hvcF90YWJsZSB7XG4gICAgYm9yZGVyLXJhZGl1czogMHB4O1xufVxuXG4ud29vY29tbWVyY2UgdGQucHJvZHVjdC1uYW1lIC53Yy1pdGVtLW1ldGEgLndjLWl0ZW0tbWV0YS1sYWJlbCxcbi53b29jb21tZXJjZSB0ZC5wcm9kdWN0LW5hbWUgLndjLWl0ZW0tbWV0YSBkdCxcbi53b29jb21tZXJjZSB0ZC5wcm9kdWN0LW5hbWUgZGwudmFyaWF0aW9uIC53Yy1pdGVtLW1ldGEtbGFiZWwsXG4ud29vY29tbWVyY2UgdGQucHJvZHVjdC1uYW1lIGRsLnZhcmlhdGlvbiBkdCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4vKiBXb29Db21tZXJjZSBGb3JtcyB0ZXh0IGlucHV0cyAqL1xuLmM5IC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSBmb3JtIC5mb3JtLXJvdyAuaW5wdXQtdGV4dCxcbi5jOSAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsXG4uc2luZ2xlLXByb2R1Y3Qud29vY29tbWVyY2UgZm9ybS5jYXJ0IGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4ud2MtYmxvY2stcHJvZHVjdC1jYXRlZ29yaWVzIHNlbGVjdCB7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG59XG5cblxuLmJ5Y29uc29sZXdvb29kdF9kZWxpdmVyeV90eXBlIHtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuXG4gICAgLnNpbmdsZS1wcm9kdWN0IC5jOSAud29vY29tbWVyY2UgLndjLXBhby1hZGRvbi1jb250YWluZXIud2MtcGFvLWFkZG9uLXRvcHBpbmdzIC5mb3JtLXJvdyxcbiAgICAuc2luZ2xlLXByb2R1Y3QgLmM5IC53b29jb21tZXJjZSAud2MtcGFvLWFkZG9uLWNvbnRhaW5lci53Yy1wYW8tYWRkb24tYnVuLXN0eWxlIC5mb3JtLXJvdyxcbiAgICAuc2luZ2xlLXByb2R1Y3QgLmM5IC53b29jb21tZXJjZSAud2MtcGFvLWFkZG9uLWNvbnRhaW5lci53Yy1wYW8tcmVxdWlyZWQtYWRkb24gLmZvcm0tcm93IHtcbiAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyB0ZCxcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgdGgge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnJlc2V0X3ZhcmlhdGlvbnMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmM5IC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgc2VsZWN0LFxuLndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcyBzZWxlY3Qge1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDEycHg7XG4gICAgaGVpZ2h0OiA0NXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAyMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgY29sb3I6ICRncmF5LTkwMDtcbn1cblxuLmM5IC53b29jb21tZXJjZSBzZWxlY3Qge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbn1cblxuLmM5IC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSAuc2VsZWN0Mi1zZWxlY3Rpb25fX2Fycm93IHtcbiAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgcmlnaHQ6IDEwcHg7XG59XG5cbi5jOSAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG59XG5cbi5jOSAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgIHBhZGRpbmc6IDJweCA4cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGdyYXktNTAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLyogY291cG9uICovXG4uYzkgLndvb2NvbW1lcmNlICNjb250ZW50IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0LFxuLmM5IC53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAjY291cG9uX2NvZGUge1xuICAgIHdpZHRoOiAxMjVweCAhaW1wb3J0YW50O1xufVxuXG4uYzkgLndvb2NvbW1lcmNlICNjb250ZW50IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uLFxuLmM5IC53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbixcbi5jOSAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbixcbi5jOSAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNHB4KSB7XG4gICAgLmNoZWNrb3V0X2NvdXBvbiAuaW5wdXQtdGV4dCB7XG4gICAgICAgIG1heC13aWR0aDogMTIzcHg7XG4gICAgfVxuXG4gICAgLmM5IC53b29jb21tZXJjZSAuY2hlY2tvdXRfY291cG9uIC5idXR0b24ge1xuICAgICAgICBwYWRkaW5nOiAxNnB4IDIwcHg7XG4gICAgfVxufVxuXG4vKiB3b29jb21tZXJjZSBsb2dpbiBmb3JtICovXG4uYzkgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWxvZ2luLFxuLmM5IC53b29jb21tZXJjZSBmb3JtLmxvZ2luLFxuLmM5IC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHtcbiAgICBtYXgtd2lkdGg6IDQ1MHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cbiAgICAuYzkgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWxvZ2luLFxuICAgIC5jOSAud29vY29tbWVyY2UgZm9ybS5sb2dpbixcbiAgICAuYzkgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbn1cblxuLyogd29vY29tbWVyY2UgdXNlciBhY2NvdW50IGFkbWluIHBhbmVsKi9cbi5jOSAud29vY29tbWVyY2UtQWRkcmVzc2VzIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4uYzkgLndvb2NvbW1lcmNlLUFkZHJlc3NlcyAud29vY29tbWVyY2UtQWRkcmVzcyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYzkgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbi53b29jb21tZXJjZS1wYWdlIC5jb2wtMSxcbi53b29jb21tZXJjZS1wYWdlIC5jb2wtMiB7XG4gICAgbWF4LXdpZHRoOiBub25lO1xufVxuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLmNvbC0xLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wtMiB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG59XG5cbi8qIHdvb2NvbW1lcmNlIGRhdGUgKyB0aW1lIHBpY2tlciAqL1xuLnVpLWRhdGVwaWNrZXIge1xuICAgIHdpZHRoOiAyNzVweDtcbiAgICBwYWRkaW5nOiA2cHg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4udWktY29ybmVyLWFsbCxcbi51aS1jb3JuZXItYm90dG9tLFxuLnVpLWNvcm5lci1yaWdodCxcbi51aS1jb3JuZXItYnIge1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbn1cblxuLnVpLXN0YXRlLWRlZmF1bHQsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRlZmF1bHQsXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZGVmYXVsdCB7XG4gICAgcGFkZGluZzogNHB4O1xufVxuXG4udWktd2lkZ2V0LWhlYWRlciB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiAkZ3JheS01MDA7XG4gICAgY29sb3I6ICRkYXJrO1xufVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4udWktdGltZXBpY2tlci13cmFwcGVyLFxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7XG4gICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnVpLXRpbWVwaWNrZXItbGlzdCBsaSB7XG4gICAgcGFkZGluZzogMTJweDtcbn1cblxubGkudWktdGltZXBpY2tlci1zZWxlY3RlZCxcbi51aS10aW1lcGlja2VyLWxpc3QgbGk6aG92ZXIsXG4udWktdGltZXBpY2tlci1saXN0IC51aS10aW1lcGlja2VyLXNlbGVjdGVkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbn1cblxuLyogb3JkZXIgY29uZmlybWF0aW9uICovXG51bC5vcmRlcl9kZXRhaWxzIGxpIHtcbiAgICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbn1cblxuLndvb2NvbW1lcmNlIHVsLm9yZGVyX2RldGFpbHMgbGkgc3Ryb25nIHtcbiAgICBmb250LXNpemU6IDE2cHggIWltcG9ydGFudDtcbn1cblxuLm9yZGVyX2RldGFpbHM6bm90KC5ibG9ja3MtZ2FsbGVyeS1ncmlkKTpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMpOm5vdCguZ2ZpZWxkX2NoZWNrYm94KTpub3QoLmdmaWVsZF9yYWRpbyk6bm90KC5uYXYtdGFicyk6bm90KC5jOS1zaGFyZS1saXN0KTpub3QoLnByb2R1Y3RzKTpub3QoLmdmb3JtX2ZpZWxkcykgbGkge1xuICAgIHBhZGRpbmc6IDhweCAyMHB4O1xufVxuXG4uZW50cnktY29udGVudCAub3JkZXJfZGV0YWlsczpub3QoLmJsb2Nrcy1nYWxsZXJ5LWdyaWQpOm5vdCgud3AtYmxvY2stZ2FsbGVyeSk6bm90KC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyk6bm90KC5nZmllbGRfY2hlY2tib3gpOm5vdCguZ2ZpZWxkX3JhZGlvKTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpOm5vdCgucHJvZHVjdHMpOm5vdCguZ2Zvcm1fZmllbGRzKSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiB3b29jb21tZXJjZSBzdG9yZSBub3RpY2UgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLndvb2NvbW1lcmNlLXN0b3JlLW5vdGljZSxcbnAuZGVtb19zdG9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi53b29jb21tZXJjZS1zdG9yZS1ub3RpY2VfX2Rpc21pc3MtbGluayB7XG4gICAgbWFyZ2luOiAwcHggOHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHBhZ2luYXRpb24gdHdlYWsgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmFyY2hpdmUgbmF2IC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluayxcbi5ibG9nIG5hdiAucGFnaW5hdGlvbiAucGFnZS1pdGVtIC5wYWdlLWxpbmssXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyBuYXYgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rLFxuLnNpbmdsZSAubmF2aWdhdGlvbiAubmF2LW5leHQgYSxcbi5zaW5nbGUgLm5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyBhIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG59XG5cbi5jOSAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24ge1xuICAgIGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG59XG5cbi5jOSAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgLnBhZ2UtbnVtYmVycyxcbi5jOSAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIDQwNCBlcnJvciBwYWdlICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5lcnJvci00MDQgLndpZGdldF9yZWNlbnRfZW50cmllcyxcbi5lcnJvci00MDQgLndpZGdldF9hcmNoaXZlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uZXJyb3ItNDA0IHtcbiAgICBtYXJnaW46IDE1NXB4IGF1dG8gMHB4IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1heC13aWR0aDogOTYwcHg7XG59XG5cbi5lcnJvci00MDQgLnBhZ2UtY29udGVudCBwIHtcbiAgICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5lcnJvci00MDQgaDEge1xuICAgIGZvbnQtc2l6ZTogODBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5lcnJvci00MDQgLnBhZ2UtY29udGVudCAuc2VhcmNoLWZvcm0ge1xuICAgIG1hcmdpbjogMHB4IGF1dG8gODBweCBhdXRvO1xuICAgIG1heC13aWR0aDogNjAlO1xufVxuXG4uZXJyb3ItNDA0IC5wYWdlLWNvbnRlbnQgLnNlYXJjaC1mb3JtIC5idG4tcHJpbWFyeSxcbi5zZWFyY2ggLnBhZ2UtY29udGVudCAuc2VhcmNoLWZvcm0gLmJ0bi1wcmltYXJ5IHtcbiAgICBjb2xvcjogJGxpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDIwcHg7XG4gICAgcGFkZGluZzogNnB4IDMwcHggMnB4IDMwcHggIWltcG9ydGFudDtcbiAgICBtaW4taGVpZ2h0OiA1NXB4O1xufVxuXG4uZXJyb3ItNDA0IC5wYWdlLWNvbnRlbnQgLnNlYXJjaC1mb3JtIC5pbnB1dC1ncm91cCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZXJyb3ItNDA0IC5wYWdlLWNvbnRlbnQgLnNlYXJjaC1mb3JtIC5pbnB1dC1ncm91cC5zZWFyY2gtZmllbGQge1xuICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG4gICAgZm9udC1zaXplOiAxM3B4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYigyMDYsIDIxMiwgMjE4KTtcbn1cblxuLmVycm9yNDA0ICN3cmFwcGVyLW5hdmJhciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogVXRpbGl0eSBDbGFzc2VzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5pbWctc2hhZG93LFxuLmlzLXN0eWxlLWltZy1zaGFkb3csXG46bm90KFtkYXRhLWFsaWduXSk+LndwLWJsb2NrLWltYWdlLmlzLXN0eWxlLWltZy1zaGFkb3cge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLmlzLXN0eWxlLWltZy1zaGFkb3cgaW1nLFxuLmltZy1zaGFkb3cgaW1nIHtcbiAgICB6LWluZGV4OiAxMDtcbn1cblxuLmlzLXN0eWxlLWltZy1zaGFkb3cud3AtYmxvY2staW1hZ2U6YWZ0ZXIsXG4uaW1nLXNoYWRvdy53cC1ibG9jay1pbWFnZTphZnRlciB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvdHRvbTogLTMwcHg7XG4gICAgei1pbmRleDogODtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGVsbGlwc2UsIHJnYmEoMCwgMCwgMCwgMC40KSAwJSwgcmdiYSgwLCAwLCAwLCAwKSA2OCUpO1xuICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59IiwiLy8gYzlcbi8vIEp1c3QgY29weSBhIHZhcmlhYmxlIGZyb20gc3JjL3Nhc3MvYm9vdHN0cmFwNC9fdmFyaWFibGVzLnNjc3MsIHBhc3RlIGl0IGhlcmUgYW5kIGVkaXQgdGhlIHZhbHVlLlxuOnJvb3Qge1xuXHRmb250LWZhbWlseTogXCJoZWx2ZXRpY2EgbmV1ZVwiLCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdC0tZGVmYXVsdC1mb250OiBcImhlbHZldGljYSBuZXVlXCIsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbn1cblxuLy8gVHlwb2dyYXBoeVxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA3MDA7XG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiBpbmhlcml0O1xuJGZvbnQtZmFtaWx5LWJhc2U6IGluaGVyaXQ7XG4kZm9udC13ZWlnaHQtbGlnaHQ6IDEwMDtcbiRsaW5lLWhlaWdodC1iYXNlOiAxLjM7XG5cbiRkaXNwbGF5MS1zaXplOiA4cmVtO1xuJGRpc3BsYXkxLXdlaWdodDogNzAwO1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6IDhyZW07XG5cbiRkaXNwbGF5Mi1zaXplOiA3cmVtO1xuJGRpc3BsYXkyLXdlaWdodDogNzAwO1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6IDdyZW07XG5cbiRkaXNwbGF5My1zaXplOiA1LjRyZW07XG4kZGlzcGxheTMtd2VpZ2h0OiA3MDA7XG4kZGlzcGxheS1saW5lLWhlaWdodDogNS40cmVtO1xuXG4kZGlzcGxheTQtc2l6ZTogNC4ycmVtO1xuJGRpc3BsYXk0LXdlaWdodDogNzAwO1xuJGRpc3BsYXktbGluZS1oZWlnaHQ6IDQuMnJlbTtcblxuJGhlYWRpbmdzLW1hcmdpbi1ib3R0b206IDFyZW07XG4kaGVhZGluZ3MtbGluZS1oZWlnaHQ6IDEuNDtcbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAwcHg7XG4kZW5hYmxlLXJvdW5kZWQ6IGZhbHNlO1xuXG4vLyBDb2xvcnNcbiRwcmltYXJ5OiAjMDAwMDAwO1xuJHNlY29uZGFyeTogIzMzMzMzMztcbiRzdWNjZXNzOiAjMjFhNzdhO1xuJGluZm86ICNmN2Y3Zjk7XG4kd2FybmluZzogI2VjOTcxZjtcbiRkYW5nZXI6ICM4NDM1MzQ7XG4kZGFyazogIzAwMDAwMDtcbiRsaWdodDogI2ZmZmZmZjtcblxuJGxpbmstaG92ZXItY29sb3I6ICMwMDAwMDA7XG4kbGluay1jb2xvcjogIzRhNGE0YTtcblxuJGdyYXktMTAwOiAjZjFmMWYxO1xuJGdyYXktMjAwOiAjZWNlZWVmO1xuJGdyYXktNTAwOiAjZDJkMmQyO1xuJGdyYXktNjAwOiByZ2JhKDE1MSwgMTUxLCAxNTEsIDEpO1xuJGdyYXktNzAwOiAjMmIyYjJiO1xuJGdyYXktODAwOiAjNzY3Njc2O1xuJGdyYXktOTAwOiAjNGE0YTRhO1xuIiwiLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgU3BlY2lmaWMgU3R5bGluZyBmb3IgQzkgV29yayBTcGVjaWZpYyBUaGVtZVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG46cm9vdCB7XG4gIGZvbnQtZmFtaWx5OiBcImhlbHZldGljYSBuZXVlXCIsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgLS1kZWZhdWx0LWZvbnQ6IFwiaGVsdmV0aWNhIG5ldWVcIiwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xufVxuXG4vKlxuVXNlIHRoZSBmb2xsb3dpbmcgd2l0aCB0aGUgYnVpbGQgdG9vbHMgdG8gZ2VuZXJhdGUgbmV3IGNsaWVudCBzdHlsZXMgZm9yIGZvbnRzXG5SZW1vdmUgaW5oZXJpdCBmb250IHNldHRpbmdzIG9uIHRoZSAkZm9udC1mYW1pbHkgdmFyaWFibGVzXG5cbkBpbXBvcnQgdXJsKFwiaHR0cHM6Ly91c2UudHlwZWtpdC5uZXQvdGV0M2Rxay5jc3NcIik7XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6IGxlYWd1ZS1nb3RoaWM7XG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogb3N3YWxkO1xuJGZvbnQtZmFtaWx5LWJhc2U6IG11bGk7XG5cbiovXG4uYzkgZGwsXG4uZW50cnktY29udGVudCBwLFxuLmVudHJ5LWZvb3RlcixcbnAge1xuICBsaW5lLWhlaWdodDogMS42O1xufVxuXG5hLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYmxvY2stZWRpdG9yLXJpY2gtdGV4dF9fZWRpdGFibGUgYSB7XG4gIGNvbG9yOiAjNWM1YzVjO1xufVxuXG4uZW50cnktY29udGVudCBwIGEge1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSg3NCwgNzQsIDc0LCAwLjQpIDEyJSwgcmdiYSg3NCwgNzQsIDc0LCAwKSAxMiUpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lbnRyeS1jb250ZW50IHAgYTpob3Zlcixcbi5lbnRyeS1jb250ZW50IHAgYTpmb2N1cyB7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDc0LCA3NCwgNzQsIDAuNikgMjAlLCByZ2JhKDc0LCA3NCwgNzQsIDApIDIwJSk7XG59XG5cbi5lbnRyeS1jb250ZW50IHAgYTpmb2N1cyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgIzAwMDAwMDtcbn1cblxuYm9keS5wYWdlIHtcbiAgYmFja2dyb3VuZDogYmxhY2s7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgxODBkZWcsIHJnYmEoMCwgMCwgMCwgMC44NjczODQ0NTM4KSAxJSwgcmdiYSgwLCAwLCAwLCAwLjY2NykgNSUsIHJnYmEoMCwgMCwgMCwgMCkgMTMlKTtcbiAgYmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cblxuYTpob3ZlciB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYzkgLndyYXBwZXIge1xuICBtYXJnaW4tdG9wOiAtMTE1cHg7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbn1cblxuLnNpbmdsZS1wb3N0IC53cmFwcGVyLFxuLmFyY2hpdmUgLmM5IC53cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5ibG9nIC5jOSAud3JhcHBlcixcbi5hcmNoaXZlIC5jOSAud3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuLmM5LWxheW91dC1jb2x1bW4td3JhcCB7XG4gIGRpc3BsYXk6IC1tcy1ncmlkO1xufVxuXG4uYzktZ3JpZCAuYzktbGF5b3V0LWNvbHVtbi13cmFwIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2N3B4KSB7XG4gIC5zaW5nbGUgLmVudHJ5LWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDIwcHg7XG4gIH1cblxuICAucGFnZS1zZWFyY2gtcmVzdWx0cyB7XG4gICAgbWFyZ2luLXRvcDogMTM1cHg7XG4gIH1cblxuICAuYmxvZyAuc2l0ZSAud3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgLm5hdmJhciAuY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTM0MHB4O1xuICAgIG1heC13aWR0aDogMTM0MHB4O1xuICB9XG5cbiAgI2xlZnQtc2lkZWJhcixcbiNyaWdodC1zaWRlYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBkZWZhdWx0IGNvbG9ycywgYnV0dG9uIGNvbG9ycyArIGJhY2tncm91bmQgY29sb3JzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5oYXMtY29sb3Itb3JhbmdlLWNvbG9yIHtcbiAgY29sb3I6ICNGQ0JEMTMgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci15ZWxsb3ctY29sb3Ige1xuICBjb2xvcjogI0ZFQzUwQSAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLXdoaXRlLWNvbG9yIHtcbiAgY29sb3I6ICNmZmZmZmYgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci1ibGFjay1jb2xvciB7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtY29sb3ItZ3JheS1jb2xvciB7XG4gIGNvbG9yOiAjNGE0YTRhICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1wcmltYXJ5LFxuLmhhcy1jb2xvci1vcmFuZ2UtYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGQ0JEMTM7XG59XG5cbi5iZy1zZWNvbmRhcnksXG4uaGFzLWNvbG9yLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZFQzUwQTtcbn1cblxuLmhhcy1jb2xvci1ncmF5LWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjQURCMUIyO1xufVxuXG4uaGFzLWNvbG9yLXdoaXRlLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uaGFzLWNvbG9yLWJsYWNrLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG4uYmctc3VjY2VzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMWE3N2E7XG59XG5cbi5iZy1pbmZvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmOTtcbn1cblxuLmJnLXdhcm5pbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM5NzFmO1xufVxuXG4uYmctZGFuZ2VyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzg0MzUzNDtcbn1cblxuLmJnLWRhcmsge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBidXR0b25zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5idG4sXG4uYnRuOnZpc2l0ZWQsXG4uZW50cnktY29udGVudCAuYnRuLFxuLmVudHJ5LWNvbnRlbnQgLmJ0bjp2aXNpdGVkLFxuLmVudHJ5LWNvbnRlbnQgYnV0dG9uLFxuLmVudHJ5LWNvbnRlbnQgaW5wdXRbdHlwZT1idXR0b25dLFxuLmVudHJ5LWNvbnRlbnQgaW5wdXRbdHlwZT1yZXNldF0sXG4uZW50cnktY29udGVudCBpbnB1dFt0eXBlPXN1Ym1pdF0sXG4uZW50cnktY29udGVudCAuYnV0dG9uLFxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4ud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLnNpdGUgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbmssXG4ud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5tY2UtY29udGVudC1ib2R5LFxuLndwLWJsb2NrLWZpbGVfX2J1dHRvbixcbi53cC1ibG9jay1maWxlIC53cC1ibG9jay1maWxlX19idXR0b24sXG4jc2VhcmNoc3VibWl0LFxuLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pIHtcbiAgcGFkZGluZzogMTlweCAyOHB4IDE0cHggMjhweDtcbiAgY29sb3I6ICNmZmZmZmY7XG4gIGZvbnQtc2l6ZTogMjBweDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDFlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3JkZXI6IG5vbmU7XG59XG5cbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSxcbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogM3B4IHNvbGlkO1xuICBwYWRkaW5nOiAxNnB4IDI1cHggMTFweCAyNXB4O1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG59XG5cbi5jOS1jdGEuYzktYmxvY2stY3RhIC53cC1ibG9jay1idXR0b25fX2xpbmsuYzktYnV0dG9uLXNoYXBlLW91dGxpbmUge1xuICBib3JkZXI6IDNweCBzb2xpZDtcbn1cblxuLmM5IC5lbnRyeS1jb250ZW50IC5idG4tc2Vjb25kYXJ5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZFQzUwQTtcbn1cblxuLmM5IC5lbnRyeS1jb250ZW50IC53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOmFjdGl2ZSxcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uYzkgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6dmlzaXRlZCxcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlcixcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluayxcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpub3QoW2hyZWZdKTpub3QoW3RhYmluZGV4XSkge1xuICBjb2xvcjogI2ZmZmZmZjtcbn1cblxuLmM5IGJ1dHRvbjpob3Zlcixcbi5idG46aG92ZXIsXG4ud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlcixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJ1dHRvbjpob3Zlcixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmJ1dHRvbi1wcmltYXJ5OmhvdmVyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAubWNlLWNvbnRlbnQtYm9keS5idXR0b246aG92ZXIsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyIHtcbiAgb3BhY2l0eTogMC44O1xuICBjb2xvcjogI2ZmZjtcbn1cblxuLmJ0bjpob3Zlcixcbi5lbnRyeS1jb250ZW50IGJ1dHRvbjpob3Zlcixcbi53cC1ibG9jay1idXR0b24gYTpob3Zlcixcbi53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIge1xuICBvcGFjaXR5OiAwLjg7XG59XG5cbi53aGVyZS10by1idXkgPiAuYnRuOmhvdmVyIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY3cHgpIHtcbiAgLmM5IC5jOS1jdGEgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5jOS1idXR0b24tc2l6ZS1zbWFsbCxcbi5jOSAuYzktY3RhIC53cC1ibG9jay1idXR0b25fX2xpbmsuYzktYnV0dG9uLXNpemUtbWVkaXVtLFxuLmM5IC5jOS1jdGEgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5jOS1idXR0b24tc2l6ZS1sYXJnZSxcbi5jOSAuYzktY3RhIC53cC1ibG9jay1idXR0b25fX2xpbmsuYzktYnV0dG9uLXNpemUtZXh0cmFsYXJnZSB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICB9XG59XG4uYmctcHJpbWFyeSxcbi5oYXMtY29sb3Itb3JhbmdlLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNCRDEzICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1zZWNvbmRhcnksXG4uaGFzLWNvbG9yLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZFQzUwQSAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLWdyYXktYmFja2dyb3VuZC1jb2xvciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNBREIxQjIgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci13aGl0ZS1iYWNrZ3JvdW5kLWNvbG9yIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZiAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLWJsYWNrLWJhY2tncm91bmQtY29sb3Ige1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogdGFncyAqL1xuLmktdGFnLFxuLnRhZ3MtbGlua3MsXG4uY2F0LWxpbmtzIHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDFlbTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLnRhZ3MtbGlua3MgYSxcbi5jYXQtbGlua3MgYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICM1YzVjNWM7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5pLXRhZzpiZWZvcmUsXG4udGFncy1saW5rcyBhOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgY29udGVudDogXCJcXGYwMmJcIjtcbiAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICBjb2xvcjogI0ZDQkQxMztcbiAgcGFkZGluZy1yaWdodDogMnB4O1xufVxuXG4udGFncy1saW5rcyBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IG5hdmJhciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4jd3JhcHBlci1uYXZiYXIge1xuICB6LWluZGV4OiAxMDIwO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwsXG4uYmxvZyAuaGVhZGVyLW5hdmJhcixcbi5hcmNoaXZlIC5oZWFkZXItbmF2YmFyLFxuLnNpbmdsZS1wb3N0IC5oZWFkZXItbmF2YmFyLFxuLmVycm9yNDA0IC5oZWFkZXItbmF2YmFyLFxuLnNlYXJjaCAuaGVhZGVyLW5hdmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXIubmF2YmFyLXNtYWxsIHtcbiAgbWF4LWhlaWdodDogNTVweDtcbiAgaGVpZ2h0OiA1NXB4O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZS1pbi1vdXQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG59XG5cbi5uYXZiYXItc21hbGwge1xuICBtYXgtaGVpZ2h0OiA1NXB4O1xuICBoZWlnaHQ6IDU1cHg7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLWluLW91dDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbn1cblxuLm5hdmJhci1zbWFsbCAubmF2YmFyLWJyYW5kIGltZyB7XG4gIG1heC1oZWlnaHQ6IDQ1cHg7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4ubmF2YmFyLW5hdiBsaSBhLFxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAubmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluayB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiByZ2JhKDQzLCA0MywgNDMsIDAuNzcpO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuXG4uYzkgLmRyb3Bkb3duLXRvZ2dsZTphZnRlciB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG4gIGJvcmRlci1yaWdodDogbm9uZTtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSB7XG4gIC5oZWFkZXItbmF2YmFyIHtcbiAgICBoZWlnaHQ6IDU1cHg7XG4gIH1cblxuICAubmF2YmFyLWJyYW5kIGltZyB7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgbWF4LWhlaWdodDogNDVweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cblxuICAjcGFnZSAubmF2YmFyLXNtYWxsLW1vYmlsZSB7XG4gICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgfVxuXG4gIC5uYXZiYXItc21hbGwgLm5hdmJhci1icmFuZCB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgIG1heC13aWR0aDogMjg1cHg7XG4gICAgbWF4LWhlaWdodDogNDVweDtcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICB9XG5cbiAgLmM5d29yay1kYXJrLWxvZ28ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxuXG4gIC5uYXZiYXIubmF2YmFyLXNtYWxsIC5jOXdvcmstZHVhbC1sb2dvIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLmM5d29yay1kYXJrLWxvZ28ge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubmF2YmFyIC5uYXZiYXItYnJhbmQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5uYXZiYXItc21hbGwgLm5hdmJhci1icmFuZCBpbWcge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAubmF2YmFyIC5jb250YWluZXItZmx1aWQgLm5hdmJhci1zbWFsbC1idXR0b25zIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICB9XG5cbiAgLmJ0bi1uYXYtc2VhcmNoLFxuLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogIzVjNWM1YztcbiAgfVxuXG4gIC5uYXYtdG9nZ2xlIC5uYXZiYXItdG9nZ2xlcjpmb2N1cyxcbi5uYXYtdG9nZ2xlIC5uYXZiYXItdG9nZ2xlcjpob3ZlciB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cblxuICAubmF2YmFyLXRvZ2dsZXJbYXJpYS1leHBhbmRlZD10cnVlXSAuZmEtYmFyczpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxmMDBkXCI7XG4gIH1cblxuICAubmF2LXNlYXJjaCxcbi5uYXYtdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY3cHgpIHtcbiAgLm5hdmJhciAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuXG4gIC5uYXZiYXIgLmNvbnRhaW5lci1mbHVpZCAuYzktY3VzdG9tLWxvZ28ge1xuICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gIH1cblxuICAubmF2YmFyIC5jb250YWluZXItZmx1aWQgLm5hdmJhci1zbWFsbC1idXR0b25zIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgfVxuXG4gICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5IHtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICB9XG5cbiAgLmJ0bi1uYXYtc2VhcmNoLFxuLm5hdmJhci10b2dnbGVyIHtcbiAgICBtYXJnaW46IDBweDtcbiAgICBwYWRkaW5nOiA1cHg7XG4gIH1cbn1cbi8qIHRvZ2dsZSBhZGp1c3RtZW50cyBmb3IgdGFibGV0IHdoZW4gbm90IHVzaW5nIG1lZ2EgbWVudSovXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDY2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgfVxuXG4gIC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXZiYXItdG9nZ2xlcjpmb2N1cyB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAubmF2YmFyLXNtYWxsIC5idG4tbmF2LXNlYXJjaCxcbi5uYXZiYXItc21hbGwgLm5hdmJhci10b2dnbGVyIHtcbiAgICBjb2xvcjogcmdiYSgwLCAwLCAwLCAwLjUpO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5oZWFkZXItbmF2YmFyIHtcbiAgICBoZWlnaHQ6IDEwOHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC5uYXZiYXItYnJhbmQgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDI4NXB4O1xuICAgIG1heC1oZWlnaHQ6IDkycHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG5cbiAgLmM5ICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLm5hdmJhci1uYXYsXG4uYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IHtcbiAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5oZWFkZXItbmF2YmFyIHtcbiAgICBoZWlnaHQ6IDExNXB4O1xuICB9XG5cbiAgLm5hdmJhci1uYXYgPiBsaSA+IGEge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG59XG4vKiBuYXZiYXIgY29udGFpbmVyIHdpZHRocyBmb3IgbWVnYSBtZW51IGFuZCBub3JtYWwgbWVudXMqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIHtcbiAgLm5hdmJhci1uYXYsXG4uYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDFweCkgYW5kIChtYXgtd2lkdGg6IDQxNHB4KSB7XG4gIC5uYXZiYXItbmF2LFxuLmM5ICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSB7XG4gICAgdG9wOiA0OXB4O1xuICB9XG59XG4vKiBzcGFjaW5nIGZvciB0aGF0IHdlaXJkIGluYmV0d2VlbiB0YWJsZXQgc2l6ZSBmb3IgbmF2aWdhdGlvbiAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAubmF2YmFyLW5hdixcbi5jOSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkge1xuICAgIG1hcmdpbi1sZWZ0OiA0MHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAubmF2YmFyLW5hdixcbi5jOSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkge1xuICAgIHdpZHRoOiA4MCU7XG4gICAgbWFyZ2luLWxlZnQ6IDBweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuICAvKiBpbml0aWFsIG5hdiBsaW5rcyBzaG91bGQgYmUgd2hpdGUgYW5kIHRoZW4gY2hhbmdlIHRvIGJsYWNrIGFmdGVyIG5hdmJhciBzbWFsbCBraWNrcyBpbiovXG4gIC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5IC5tZWdhLW1lbnUtdG9nZ2xlIC5tZWdhLXRvZ2dsZS1ibG9jay0xIC5tZWdhLXRvZ2dsZS1sYWJlbCxcbi5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5IC5tZWdhLW1lbnUtdG9nZ2xlIC5tZWdhLXRvZ2dsZS1ibG9jay0xOmFmdGVyIHtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgfVxuXG4gIC5oZWFkZXItbmF2YmFyIC5uYXZiYXItY29sbGFwc2UsXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLWNvbGxhcHNlLnNob3cge1xuICAgIGxlZnQ6IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBEcm9wIGRvd24gbWVudXMsIGFuaW1hdGlvbnMgb2YgbWVudXMsIGFuZCBidXR0b24gaG92ZXIgYW5pbWF0aW9ucyBpbiBtYWluIG5hdiAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5kcm9wZG93bi1pdGVtIHtcbiAgcGFkZGluZzogMTBweCA4cHg7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnUgLm5hdi1pdGVtIHtcbiAgbWFyZ2luOiAwIDZweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAuaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbSAuZHJvcGRvd24tbWVudSB7XG4gICAgbGVmdDogNTAlO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgfVxufVxuLmhlYWRlci1uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLmRyb3Bkb3duLW1lbnUge1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgYm9yZGVyOiAwcHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlSW5Gcm9tTm9uZSAwLjVzIGVhc2Utb3V0O1xuICBhbmltYXRpb246IGZhZGVJbkZyb21Ob25lIDAuNXMgZWFzZS1vdXQ7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5kcm9wZG93bi1tZW51LnNob3cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgLXdlYmtpdC1hbmltYXRpb246IGZhZGVJbkZyb21Ob25lIDAuNXMgZWFzZS1vdXQ7XG4gIGFuaW1hdGlvbjogZmFkZUluRnJvbU5vbmUgMC41cyBlYXNlLW91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkZyb21Ob25lIHtcbiAgMCUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxJSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbkZyb21Ob25lIHtcbiAgMCUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxJSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMDAlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG4ubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbms6Zm9jdXMsXG4ubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbms6Zm9jdXMgPiBzcGFuIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgIzAwMDAwMDtcbn1cblxuI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGE6aG92ZXIsXG4jbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgYTpmb2N1cyB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4jbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgYTpmb2N1cyB7XG4gIG91dGxpbmU6IDFweCBkb3R0ZWQgIzAwMDAwMDtcbn1cblxuLyogZmlyc3QgbGV2ZWwgbmF2IGxpbmsgaG92ZXIgZWZmZWN0cyAqL1xuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluayxcbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3Bhbixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwcHg7XG59XG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtID4gLm5hdi1saW5rOmJlZm9yZSwgLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluazphZnRlcixcbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3BhbjpiZWZvcmUsXG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW46YWZ0ZXIsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazpiZWZvcmUsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazphZnRlcixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3BhbjpiZWZvcmUsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayA+IHNwYW46YWZ0ZXIge1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiAjZDk5ZjAzO1xufVxuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluazpiZWZvcmUsXG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW46YmVmb3JlLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbms6YmVmb3JlLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmJlZm9yZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDJweDtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDElKTtcbn1cbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbms6YWZ0ZXIsXG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW46YWZ0ZXIsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazphZnRlcixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3BhbjphZnRlciB7XG4gIHdpZHRoOiAycHg7XG4gIGhlaWdodDogMTAwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMSUpO1xufVxuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluayA+IHNwYW4sXG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW4gPiBzcGFuLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuID4gc3BhbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAxNHB4IDEycHg7XG59XG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtID4gLm5hdi1saW5rID4gc3BhbjpiZWZvcmUsIC5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbmsgPiBzcGFuOmFmdGVyLFxuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsgPiBzcGFuID4gc3BhbjpiZWZvcmUsXG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW4gPiBzcGFuOmFmdGVyLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmJlZm9yZSxcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3BhbjphZnRlcixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3BhbiA+IHNwYW46YmVmb3JlLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuID4gc3BhbjphZnRlciB7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgYmFja2dyb3VuZDogI2Q5OWYwMztcbn1cbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbmsgPiBzcGFuOmJlZm9yZSxcbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3BhbiA+IHNwYW46YmVmb3JlLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmJlZm9yZSxcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3BhbiA+IHNwYW46YmVmb3JlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMnB4O1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAxJSk7XG59XG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtID4gLm5hdi1saW5rID4gc3BhbjphZnRlcixcbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3BhbiA+IHNwYW46YWZ0ZXIsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayA+IHNwYW46YWZ0ZXIsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayA+IHNwYW4gPiBzcGFuOmFmdGVyIHtcbiAgd2lkdGg6IDJweDtcbiAgaGVpZ2h0OiAxMDAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMSUpO1xufVxuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluazpmb2N1czpiZWZvcmUsIC5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbms6Zm9jdXM6YWZ0ZXIsIC5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbms6Zm9jdXMgPiBzcGFuOmJlZm9yZSwgLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluazpmb2N1cyA+IHNwYW46YWZ0ZXIsIC5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbms6aG92ZXI6YmVmb3JlLCAuYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtID4gLm5hdi1saW5rOmhvdmVyOmFmdGVyLCAuYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtID4gLm5hdi1saW5rOmhvdmVyID4gc3BhbjpiZWZvcmUsIC5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbms6aG92ZXIgPiBzcGFuOmFmdGVyLFxuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsgPiBzcGFuOmZvY3VzOmJlZm9yZSxcbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3Bhbjpmb2N1czphZnRlcixcbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3Bhbjpmb2N1cyA+IHNwYW46YmVmb3JlLFxuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSAubmF2LWxpbmsgPiBzcGFuOmZvY3VzID4gc3BhbjphZnRlcixcbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3Bhbjpob3ZlcjpiZWZvcmUsXG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW46aG92ZXI6YWZ0ZXIsXG4uYzkgLmhlYWRlci1uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW46aG92ZXIgPiBzcGFuOmJlZm9yZSxcbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3Bhbjpob3ZlciA+IHNwYW46YWZ0ZXIsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazpmb2N1czpiZWZvcmUsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazpmb2N1czphZnRlcixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rOmZvY3VzID4gc3BhbjpiZWZvcmUsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazpmb2N1cyA+IHNwYW46YWZ0ZXIsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazpob3ZlcjpiZWZvcmUsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazpob3ZlcjphZnRlcixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rOmhvdmVyID4gc3BhbjpiZWZvcmUsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazpob3ZlciA+IHNwYW46YWZ0ZXIsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayA+IHNwYW46Zm9jdXM6YmVmb3JlLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmZvY3VzOmFmdGVyLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmZvY3VzID4gc3BhbjpiZWZvcmUsXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayA+IHNwYW46Zm9jdXMgPiBzcGFuOmFmdGVyLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmhvdmVyOmJlZm9yZSxcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3Bhbjpob3ZlcjphZnRlcixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3Bhbjpob3ZlciA+IHNwYW46YmVmb3JlLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmhvdmVyID4gc3BhbjphZnRlciB7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKDAsIDApO1xuICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC40cyBlYXNlLWluLW91dDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MTRweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC8qIG5hdiBsaW5rIGNvbG9ycyB0dXJuIHdoaXRlIGluYmV0d2VlbiBtb2JpbGUvdGFibGV0L2xhcHRvcCovXG4gIC5oZWFkZXItbmF2YmFyIC5uYXYgLm5hdi1pdGVtID4gLm5hdi1saW5rLFxuLmhlYWRlci1uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3BhbiB7XG4gICAgY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbi5oZWFkZXItbmF2YmFyIC5uYXYgLm5hdi1pdGVtID4gLm5hdi1saW5rLFxuLmhlYWRlci1uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3Bhbixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuLFxuLm5hdmJhci1zbWFsbC5maXhlZC10b3AgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rLFxuLm5hdmJhci1zbWFsbC5maXhlZC10b3AgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3BhbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuLmhlYWRlci1uYXZiYXIgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbms6YmVmb3JlLCAuaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbSA+IC5uYXYtbGluazphZnRlcixcbi5oZWFkZXItbmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW46YmVmb3JlLFxuLmhlYWRlci1uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rID4gc3BhbjphZnRlcixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rOmJlZm9yZSxcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rOmFmdGVyLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmJlZm9yZSxcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rID4gc3BhbjphZnRlcixcbi5uYXZiYXItc21hbGwuZml4ZWQtdG9wICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluazpiZWZvcmUsXG4ubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbms6YWZ0ZXIsXG4ubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuOmJlZm9yZSxcbi5uYXZiYXItc21hbGwuZml4ZWQtdG9wICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtID4gYS5tZWdhLW1lbnUtbGluayA+IHNwYW46YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLm5hdiAubmF2LWl0ZW0gPiAubmF2LWxpbmssXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayA+IHNwYW4ge1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkgYW5kIChvcmllbnRhdGlvbjogcG9ydHJhaXQpIHtcbiAgLm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5ID4gbGkubWVnYS1tZW51LWl0ZW0gPiBhLm1lZ2EtbWVudS1saW5rIHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgfVxuXG4gIC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSA+IGxpLm1lZ2EtbWVudS1pdGVtLFxuLm5hdmJhci1zbWFsbCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmssXG4ubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsge1xuICAgIG1hcmdpbjogMHB4IGF1dG87XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1pbi1oZWlnaHQ6IDQwcHg7XG4gIH1cblxuICAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgPiBsaS5tZWdhLW1lbnUtaXRlbSA+IGEubWVnYS1tZW51LWxpbmsgPiBzcGFuIHtcbiAgICBtYXJnaW46IDBweDtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBoZWFkZXIgbmF2YmFyIHNlYXJjaCBjdXN0b21pemF0aW9ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4ubmF2LXNlYXJjaCB7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuICAubmF2LXNlYXJjaCxcbi5uYXYtdG9nZ2xlIHtcbiAgICBsaW5lLWhlaWdodDogMjtcbiAgfVxuXG4gIC5uYXYtc2VhcmNoIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmhlYWRlci1uYXZiYXIgLnNlYXJjaCxcbi5jOSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgbGkuc2VhcmNoIHtcbiAgICBtaW4td2lkdGg6IDEyNXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZm9udC1zaXplOiAxMHB4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICB9XG59XG4uaGVhZGVyLW5hdmJhciAubmF2LXNlYXJjaCAuYnRuLW5hdi1zZWFyY2gsXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXRvZ2dsZXIge1xuICBmb250LXNpemU6IDIwcHg7XG59XG5cbi5zZWFyY2ggZm9ybSB7XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmM5IC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggaW5wdXQ6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4uYzkgLmhlYWRlci1uYXZiYXIgLnNlYXJjaDpiZWZvcmUsXG4uYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGxpLnNlYXJjaDpiZWZvcmUge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG4gIGNvbG9yOiAjZmZmO1xuICBmb250LXNpemU6IDE5cHg7XG4gIGNvbnRlbnQ6IFwiXFxmMDAyXCI7XG59XG5cbi5zZWFyY2ggOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoIDo6LW1zLXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoIDo6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uc2VhcmNoIDo6cGxhY2Vob2xkZXIge1xuICBjb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xufVxuXG4uaGVhZGVyLW5hdmJhciAuc2VhcmNoICNzIHtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmZmY7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICB3aWR0aDogNjVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC1zaXplOiAxOXB4O1xuICBtYXJnaW4tbGVmdDogNHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICB0ZXh0LXNoYWRvdzogMXB4IDFweCAzcHggYmxhY2s7XG4gIG1pbi1oZWlnaHQ6IDE1cHg7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5zZWFyY2ggI3M6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMXB4IGRvdHRlZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuOCk7XG4gIGJvcmRlci1sZWZ0OiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC44KTtcbiAgY29sb3I6ICNmZmY7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCAjczpmb2N1cyB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBib3JkZXItdG9wOiAxcHggZG90dGVkIHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgYm9yZGVyLWxlZnQ6IDFweCBkb3R0ZWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuICBib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoIDo6LW1zLXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzAwMDAwMCAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjOWU5ZTllICFpbXBvcnRhbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjpwbGFjZWhvbGRlciB7XG4gIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2g6YmVmb3JlLFxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoICNzLFxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoICNzOmZvY3VzIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uYzkgLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoOmJlZm9yZSxcbi5jOSAubmF2YmFyLXNtYWxsICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSBsaS5zZWFyY2g6YmVmb3JlIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCAjcyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDAwMDAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gIC5jOSAuaGVhZGVyLW5hdmJhciBsaS5zZWFyY2gsXG4uYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGxpLnNlYXJjaCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5oZWFkZXItbmF2YmFyIC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYtc2VhcmNoIC5idG4tbmF2LXNlYXJjaCB7XG4gICAgY29sb3I6ICNmZmZmZmY7XG4gIH1cblxuICAuaGVhZGVyLW5hdmJhciAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAuc2VhcmNoICNzIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxuXG4gIC5jOSAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgbGkuc2VhcmNoOmJlZm9yZSxcbi5jOSAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSBsaS5zZWFyY2g6YmVmb3JlIHtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxuXG4gIC5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuaGVhZGVyLW5hdmJhciAuc2VhcmNoIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjotbXMtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuaGVhZGVyLW5hdmJhciAuc2VhcmNoIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIH1cblxuICAuaGVhZGVyLW5hdmJhciAuc2VhcmNoIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgfVxuXG4gIC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjpwbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICMwMDAwMDAgIWltcG9ydGFudDtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgVHlwb2dyYXBoeSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uaDQsXG4uaDUsXG4uaDYsXG5oNCxcbmg1LFxuaDYge1xuICBtYXJnaW4tYm90dG9tOiAwLjI1ZW07XG59XG5cbi5jOS1zaXRlLXRpdGxlLFxuLmM5IC5oMSxcbi5jOSAuaDIsXG4uYzkgLmgzLFxuLmM5IC5oNCxcbi5jOSAuaDUsXG4uYzkgLmg2LFxuLmM5IGgxLFxuLmM5IGgyLFxuLmM5IGgzLFxuLmM5IGg0LFxuLmM5IGg1LFxuLmM5IGg2IHtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDRlbTtcbn1cblxuLmM5LXR4bCxcbi5kaXNwbGF5LTEsXG4uZGlzcGxheS0yLFxuLmRpc3BsYXktMyxcbi5kaXNwbGF5LTQsXG4uZGlzcGxheS01LFxuLmRpc3BsYXktNiB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG5cbi5lbnRyeS1jb250ZW50LFxuLndwLWJsb2NrLXB1bGxxdW90ZSxcbi53cC1ibG9jay1wdWxscXVvdGUgYmxvY2txdW90ZSBwLFxuI3dyYXBwZXItZm9vdGVyIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuLm5hdmJhcixcbi5uYXZiYXIgdWwgbGkgLmRyb3Bkb3duLWl0ZW0sXG4ubmF2YmFyIHVsIGxpIGEsXG4ubWVnYS1tZW51LXdyYXAsXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayxcbi5oZWFkZXItbmF2YmFyIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLmRyb3Bkb3duLWl0ZW0ge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuLnh4bC1oZWFkaW5nIC5jOS10eGwge1xuICBmb250LXNpemU6IDE4MHB4ICFpbXBvcnRhbnQ7XG4gIGxpbmUtaGVpZ2h0OiAwLjk7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG59XG5cbi5jOSAuYzktaGVhZGluZyBoMSxcbi5jOSAuYzktaGVhZGluZyBoMixcbi5jOSAuYzktaGVhZGluZyBoMyxcbi5jOSAuYzktaGVhZGluZyBoNCxcbi5jOSAuYzktaGVhZGluZyBoNSxcbi5jOSAuYzktaGVhZGluZyBoNiB7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2OHB4KSB7XG4gIC54eGwtaGVhZGluZyAuYzktdHhsIHtcbiAgICBmb250LXNpemU6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgbGluZS1oZWlnaHQ6IDAuOTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgcFtjbGFzcyQ9LWZvbnQtc2l6ZV0ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDFweCkge1xuICAvKiBzZWN0aW9uIGhlYWRpbmcgYWNjZW50cyAqL1xuICAuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5lZGl0b3ItcmljaC10ZXh0IC5zZWN0aW9uLWhlYWRpbmctYWNjZW50LFxuLnNlY3Rpb24taGVhZGluZy1hY2NlbnQsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5lZGl0b3ItcmljaC10ZXh0IC5zZWN0aW9uLWhlYWRpbmctYWNjZW50LWFsdCxcbi5zZWN0aW9uLWhlYWRpbmctYWNjZW50LWFsdCxcbi5lbnRyeS1jb250ZW50IC5zZWN0aW9uLWhlYWRpbmctYWNjZW50LWFsdCxcbi5lbnRyeS1jb250ZW50IGgzLnNlY3Rpb24taGVhZGluZy1hY2NlbnQsXG4uZW50cnktY29udGVudCBoMy5zZWN0aW9uLWhlYWRpbmctYWNjZW50LWFsdCB7XG4gICAgbWFyZ2luOiAxMHB4IGF1dG87XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAvKiBzdWJoZWFkaW5ncyAqL1xuICAuZW50cnktY29udGVudCAuc3ViaGVhZGluZzEsXG4uZW50cnktY29udGVudCAuc3ViaGVhZGluZzIsXG4uZW50cnktY29udGVudCAuc3ViaGVhZGluZzMsXG4uZW50cnktY29udGVudCAuc3ViaGVhZGluZzQsXG4uZW50cnktY29udGVudCAuc3ViaGVhZGluZzUsXG4ud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzEsXG4ud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzIsXG4ud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzMsXG4ud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzQsXG4ud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzUge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1NWVtO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmcyLFxuLndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmcyLFxuLnN1YmhlYWRpbmcyIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGZvbnQtc2l6ZTogMjNweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmczLFxuLndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmczLFxuLnN1YmhlYWRpbmczIHtcbiAgICBmb250LXdlaWdodDogMTAwO1xuICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IC5zdWJoZWFkaW5nNCxcbi53cC1ibG9jay1oZWFkaW5nIC5zdWJoZWFkaW5nNCxcbi5zdWJoZWFkaW5nNCB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAwMWVtO1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmc1LFxuLndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmc1LFxuLnN1YmhlYWRpbmc1IHtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMTI1ZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgfVxuXG4gIC5pY29uLWxhYmVsLFxuLmVudHJ5LWNvbnRlbnQgLmljb24tbGFiZWwsXG4ud3AtYmxvY2staGVhZGluZyAuaWNvbi1sYWJlbCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGZvbnQtc2l6ZTogMThweCAhaW1wb3J0YW50O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjJlbTtcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICB9XG5cbiAgLmVudHJ5LW1ldGEsXG4uZW50cnktbWV0YSBhIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICMyYjJiMmI7XG4gIH1cblxuICAuZW50cnktZm9vdGVyLWNvbnRlbnQge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cblxuICAuZW50cnktZm9vdGVyIC5jb21tZW50cy1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgfVxuXG4gIC8qIFdvcmRQcmVzcyBHdXRlbmJlcmcgRm9udCBTaXplcyAqL1xuICAuZW50cnktY29udGVudCAuaGFzLXNtYWxsLWZvbnQtc2l6ZSB7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtc3R5bGUtYmxhY2stYmFyW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdLFxuLmVudHJ5LWNvbnRlbnQgcC5pcy1zdHlsZS1ibGFjay1iYXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBtaW4taGVpZ2h0OiAxNnB4O1xuICBtYXgtaGVpZ2h0OiAyMHB4O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDZweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXN0eWxlLWJsYWNrLWJhcltkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSBzdHJvbmcsXG4uZW50cnktY29udGVudCBwLmlzLXN0eWxlLWJsYWNrLWJhciBzdHJvbmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgcGFkZGluZzogMHB4IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2N3B4KSB7XG4gIC5lbnRyeS1jb250ZW50IHAuaXMtc3R5bGUtYmxhY2stYmFyIHN0cm9uZyxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXN0eWxlLWJsYWNrLWJhcltkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSBzdHJvbmcge1xuICAgIG1pbi1oZWlnaHQ6IDEycHg7XG4gIH1cblxuICAuZW50cnktY29udGVudCBwLmlzLXN0eWxlLWJsYWNrLWJhciBzdHJvbmcsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1zdHlsZS1ibGFjay1iYXJbZGF0YS10eXBlPVwiY29yZS9wYXJhZ3JhcGhcIl0gc3Ryb25nIHtcbiAgICBwYWRkaW5nOiA1cHggOHB4IDJweCA4cHggIWltcG9ydGFudDtcbiAgfVxufVxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWJsYWNrLWJhcixcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWJsYWNrLWJhciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IHBhZ2UgdGl0bGUgaGVhZGVyIG9uIGxvZ2lucywgc2VhcmNoLCBwYWdlcywgcG9zdHMsIGV0Yy4gKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnBhZ2UtdGVtcGxhdGUtZnVsbHdpZHRocGFnZSAuYzkgLmVudHJ5LWhlYWRlcixcbi5jb250YWluZXItd2lkdGgtcGFnZS13cmFwcGVyLmM5IC5wYWdlIC5lbnRyeS1oZWFkZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNCRDEzO1xufVxuXG4uYzkgLmVudHJ5LWhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi5wYWdlLXNlYXJjaC1yZXN1bHRzIC5ob21lLXNlYXJjaCAuZW50cnktdGl0bGUge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiA1MHB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMTJlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNTAwO1xuICBtYXJnaW4tdG9wOiA4MHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDFweCkge1xuICAuYzkgLnBhZ2UgLmVudHJ5LWhlYWRlciBoMSB7XG4gICAgZm9udC1zaXplOiA1MHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogI2ZmZmZmZjtcbiAgICBtYXJnaW46IDcwcHggYXV0bztcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuYzkgLnBhZ2UgLmVudHJ5LWhlYWRlciBoMSB7XG4gICAgZm9udC1zaXplOiA4MHB4O1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCB1bm9yZGVyZWQgYW5kIG9yZGVyZWQgbGlzdCBzdHlsaW5ncyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZW50cnktY29udGVudCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMpOm5vdCguZ2ZpZWxkX2NoZWNrYm94KTpub3QoLmdmaWVsZF9yYWRpbyk6bm90KC5uYXYtdGFicyk6bm90KC5jOS1zaGFyZS1saXN0KTpub3QoLnByb2R1Y3RzKSBsaSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXJvb3QtY29udGFpbmVyID4gdWw6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzKTpub3QoLmdmaWVsZF9jaGVja2JveCk6bm90KC5nZmllbGRfcmFkaW8pOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCk6bm90KC5wcm9kdWN0cyk6bm90KC53cC1ibG9jay1zb2NpYWwtbGlua3MpIGxpLFxuLmVudHJ5LWNvbnRlbnQgb2w6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzKTpub3QoLmdmaWVsZF9jaGVja2JveCk6bm90KC5nZmllbGRfcmFkaW8pOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCk6bm90KC5wcm9kdWN0cykgbGksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1yb290LWNvbnRhaW5lciA+IG9sOm5vdCgud3AtYmxvY2stZ2FsbGVyeSk6bm90KC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyk6bm90KC5nZmllbGRfY2hlY2tib3gpOm5vdCguZ2ZpZWxkX3JhZGlvKTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpOm5vdCgucHJvZHVjdHMpOm5vdCgud3AtYmxvY2stc29jaWFsLWxpbmtzKSBsaSB7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbi5lbnRyeS1jb250ZW50IG9sIGxpOmJlZm9yZSB7XG4gIG1hcmdpbi1sZWZ0OiAtMjFweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgb2wgbGksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5lZGl0b3ItcmljaC10ZXh0IG9sIGxpLFxuLmVudHJ5LWNvbnRlbnQgdWw6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLmJsb2Nrcy1nYWxsZXJ5LWdyaWQpOm5vdCgucHJvZHVjdHMpOm5vdCgubmF2LXRhYnMpOm5vdCgucGFnZS1udW1iZXJzKTpub3QoLndwLWJsb2NrLWFyY2hpdmVzKTpub3QoLndwLWJsb2NrLXNvY2lhbC1saW5rcykgbGksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5lZGl0b3ItcmljaC10ZXh0IHVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSk6bm90KC5ibG9ja3MtZ2FsbGVyeS1ncmlkKTpub3QoLnByb2R1Y3RzKTpub3QoLm5hdi10YWJzKTpub3QoLnBhZ2UtbnVtYmVycyk6bm90KC53cC1ibG9jay1hcmNoaXZlcyk6bm90KC53cC1ibG9jay1zb2NpYWwtbGlua3MpIGxpIHtcbiAgbWFyZ2luOiAxNXB4IDBweDtcbn1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciBvbCBsaSxcbi5lbnRyeS1jb250ZW50IG9sIGxpIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgLmM5IC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMucmVzb3VyY2VzLXRhYnMgdWwubmF2Lm5hdi10YWJzIHtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gIH1cblxuICAuYzkgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicy5yZXNvdXJjZXMtdGFicyAuYzktaG9yaXpvbnRhbC10YWJzLXRhYiB1bDpub3QoLmJsb2Nrcy1nYWxsZXJ5LWdyaWQpOm5vdCgud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMpOm5vdCguZ2ZpZWxkX2NoZWNrYm94KTpub3QoLmdmaWVsZF9yYWRpbyk6bm90KC5uYXYtdGFicyk6bm90KC5jOS1zaGFyZS1saXN0KTpub3QoLnByb2R1Y3RzKSB7XG4gICAgbWFyZ2luOiAwcHg7XG4gIH1cblxuICAuaG9tZSAuYzktaG9yaXpvbnRhbC10YWJzLXRhYjpsYXN0LWNoaWxkIC53cC1ibG9jay1zcGFjZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAuaG9tZSAuYnktdXNlci1nYWxsZXJ5IC5ibG9ja3MtZ2FsbGVyeS1pdGVtOm50aC1jaGlsZCgzKSB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbjogMHB4IGF1dG87XG4gIH1cbn1cbi5lbnRyeS1jb250ZW50IHVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSkgbGksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5lZGl0b3ItcmljaC10ZXh0IHVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSkgbGkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogaG9yaXpvbnRhbCBydWxlcyBjdXN0b21pemVkKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbiAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLXdpZGUsXG4ud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLXdpZGUge1xuICB3aWR0aDogNjAlO1xuICBtYXgtd2lkdGg6IDYwJTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiByZXNvdXJjZXMgZ3VpZGUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MTRweCkge1xuICAuYzktZ3JpZC5wNSAuYzktbGF5b3V0LWNvbHVtbnMtMiAuYzktY29sdW1uLWlubmVyIHVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSkge1xuICAgIG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IFRhYnMgKyBUb2dnbGVzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGJpZyBzdHlsZSB0b2dnbGVzICovXG4uYzkgLmM5LXRvZ2dsZXMgLmM5LXRvZ2dsZXMtdG9nZ2xlLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy10b2dnbGUge1xuICBwYWRkaW5nOiAyOXB4IDBweCAxNXB4IDBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICM5Nzk3OTc7XG59XG5cbi5jOSAuYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSB7XG4gIHRvcDogLTRweDtcbn1cblxuLmM5LXRvZ2dsZXMgLmM5LXRvZ2dsZXMtdG9nZ2xlOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzk3OTc5Nztcbn1cblxuLmM5LXZlcnRpY2FsLXRhYnMgLmM5LXRhYnMtY29udGVudC50YWItY29udGVudCB7XG4gIHBhZGRpbmc6IDI1cHg7XG59XG5cbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS1kZWZhdWx0IC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZyAuYzktdG9nZ2xlcy10b2dnbGUtbGFiZWwsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jOS10b2dnbGVzLmlzLXN0eWxlLWRlZmF1bHQgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nIC5jOS10b2dnbGVzLXRvZ2dsZS1sYWJlbCB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDc5cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAwLjk7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuNXMgZWFzZS1vdXQ7XG59XG5cbi5jOSAuYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmc6aG92ZXIgLmM5LXRvZ2dsZXMtdG9nZ2xlLWxhYmVsIHtcbiAgY29sb3I6ICM0YTRhNGE7XG59XG5cbi5jOSAuYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmcge1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIHNtYWxsIHN0eWxlIHRvZ2dsZSAqL1xuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmcgLmM5LXRvZ2dsZXMtdG9nZ2xlLWxhYmVsLFxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZyAuYzktdG9nZ2xlcy10b2dnbGUtbGFiZWwge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSAuZmEtYW5nbGUtcmlnaHQ6YmVmb3JlLFxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0tY29sbGFwc2UgLmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG4gIGNvbG9yOiAjRkNCRDEzO1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUge1xuICBwYWRkaW5nOiAxNXB4IDBweDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGU6bGFzdC1jaGlsZCB7XG4gIGJvcmRlcjogbm9uZTtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5tYi0wIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nIHtcbiAgcGFkZGluZy1sZWZ0OiA1MHB4O1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nIC5jOS10b2dnbGVzLXRvZ2dsZS1sYWJlbCB7XG4gIGZvbnQtc2l6ZTogMjRweDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cHg7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxLjI7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogLTUwcHg7XG4gIHRvcDogMTNweDtcbiAgcmlnaHQ6IGF1dG87XG59XG5cbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAuYzktdG9nZ2xlcy1pdGVtLWNvbGxhcHNlIC5mYXMsXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nOm5vdChbZGF0YS10b2dnbGU9Y29sbGFwc2VdKSAuYzktdG9nZ2xlcy1pdGVtLWNvbGxhcHNlIC5mYS1hbmdsZS1yaWdodCxcbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmdbYXJpYS1leHBhbmRlZD10cnVlXSAuYzktdG9nZ2xlcy1pdGVtLWNvbGxhcHNlIC5mYS1hbmdsZS1yaWdodCB7XG4gIHRyYW5zZm9ybTogbm9uZTtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0tY29sbGFwc2Uge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYm9yZGVyOiAyLjhweCBzb2xpZCAjMDAwMDAwO1xuICBwYWRkaW5nOiA1cHg7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgaGVpZ2h0OiAyN3B4O1xuICB3aWR0aDogMjdweDtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2N1wiO1xuICBjb2xvcjogI2ViYjkwMDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZy10b3A6IDJweDtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZ1thcmlhLWV4cGFuZGVkPXRydWVdIC5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjA2OFwiO1xufVxuXG4vKiB0YWJzICovXG4uYzkgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicyB1bC5uYXYubmF2LXRhYnMge1xuICBtYXJnaW46IDMwcHggMHB4IDBweCAwcHg7XG59XG5cbi5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0gYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmM5LWhvcml6b250YWwtdGFicyAubmF2LXRhYnMgLm5hdi1saW5rLFxuLndvb2NvbW1lcmNlIC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpIGEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiMWIyO1xuICBjb2xvcjogIzJiMmIyYjtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLm5hdi5uYXYtdGFicyAubmF2LWl0ZW0ge1xuICBtYXJnaW46IDBweCAxMHB4O1xufVxuXG4uYzkgLmM5LWhvcml6b250YWwtdGFicyAubmF2LXRhYnMgLm5hdi1saW5rOmhvdmVyLFxuLndvb2NvbW1lcmNlIC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpIGE6aG92ZXIge1xuICBjb2xvcjogIzJiMmIyYjtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KDM1ZGVnLCAjZmZmIDc1JSwgI0ZDQkQxMyAyNSUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBib3JkZXItYm90dG9tOiAwcHg7XG59XG5cbi5jOSAuYzktaG9yaXpvbnRhbC10YWJzIC5uYXYtdGFicyAubmF2LWxpbmsuYWN0aXZlLFxuLndvb2NvbW1lcmNlIC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpLmFjdGl2ZSBhLm5hdi1saW5rIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZDQkQxMztcbn1cblxuLndvb2NvbW1lcmNlIC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpLmFjdGl2ZTphZnRlcixcbi53b29jb21tZXJjZSAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaTphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyA+IGxpID4gLm5hdi1saW5rIHtcbiAgcGFkZGluZzogMTNweCA1NXB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jOSAuYzktaG9yaXpvbnRhbC10YWJzIC5uYXYtdGFicyAubmF2LWxpbmsge1xuICAgIHBhZGRpbmc6IDEzcHggMjBweDtcbiAgfVxuXG4gIC5jOSAuZW50cnktY29udGVudCAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSB7XG4gICAgbWFyZ2luOiAwcHggN3B4O1xuICB9XG5cbiAgLmM5IC5lbnRyeS1jb250ZW50IC5uYXYubmF2LXRhYnMgLm5hdi1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tbGVmdDogMHB4O1xuICB9XG5cbiAgLmM5IC5lbnRyeS1jb250ZW50IC5uYXYubmF2LXRhYnMgLm5hdi1pdGVtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICB9XG59XG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaS5hY3RpdmUsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZzogMHB4O1xuICBib3JkZXItYm90dG9tOiAwcHg7XG4gIG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMge1xuICBwYWRkaW5nLWxlZnQ6IDBweDtcbn1cblxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGk6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpLmFjdGl2ZSxcbi53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgfVxuXG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpIC5uYXYtbGluayB7XG4gICAgcGFkZGluZzogMTFweCAxOXB4O1xuICB9XG5cbiAgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicyAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSxcbi5wcm9kdWN0IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi5uYXYtdGFicyAubmF2LWl0ZW0ge1xuICAgIG1hcmdpbjogMHB4IDZweDtcbiAgfVxuXG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyA+IGxpID4gLm5hdi1saW5rIHtcbiAgICBwYWRkaW5nOiAxM3B4IDMwcHg7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY3cHgpIHtcbiAgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicyAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSxcbi5wcm9kdWN0IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi5uYXYtdGFicyAubmF2LWl0ZW0ge1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIG1hcmdpbjogMHB4IDNweDtcbiAgfVxuXG4gIC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi10YWJzIC5uYXYtbGluayB7XG4gICAgcGFkZGluZzogMTFweCAxOXB4O1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxuXG4gIC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi5uYXYtdGFicyxcbi5wcm9kdWN0IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi5uYXYtdGFicyB7XG4gICAgcGFkZGluZzogMHB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNHB4KSB7XG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyA+IGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW46IDBweDtcbiAgfVxuXG4gIC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyA+IGxpID4gYSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmM5IC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgPiAubmF2Lm5hdi10YWJzLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYzktaG9yaXpvbnRhbC10YWJzID4gLm5hdi5uYXYtdGFicyB7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICB9XG5cbiAgLmM5IC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgPiAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSB7XG4gICAgZmxleC1ncm93OiAxO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW46IDNweDtcbiAgfVxuXG4gIC5jOSAuYzktaG9yaXpvbnRhbC10YWJzIC5uYXYtdGFicyAubmF2LWxpbmsge1xuICAgIHBhZGRpbmc6IDEzcHggMTBweDtcbiAgfVxuXG4gIC5zaW5nbGUtcHJvZHVjdCAuYzktaG9yaXpvbnRhbC10YWJzID4gLm5hdi5uYXYtdGFicyAubmF2LWxpbmsge1xuICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgU2VhcmNoICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5zZWFyY2gtcmVzdWx0cyAjd3JhcHBlci1uYXZiYXIsXG4uYzkuc2VhcmNoICN3cmFwcGVyLW5hdmJhcixcbi5zZWFyY2gtbm8tcmVzdWx0cyAjd3JhcHBlci1uYXZiYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gIC5zZWFyY2gtcmVzdWx0cyAjd3JhcHBlci1uYXZiYXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgLnBhZ2Utc2VhcmNoLXJlc3VsdHMge1xuICAgIG1hcmdpbi10b3A6IDEzNXB4O1xuICB9XG59XG4uc2VhcmNoLXJlc3VsdHMgLnNpdGUtbWFpbiAuY29udGFpbmVyIC5lbnRyeS1zdW1tYXJ5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnNlYXJjaC1yZXN1bHRzIC5zaXRlLW1haW4gLmNvbnRhaW5lciAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSBhIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG59XG5cbi5zZWFyY2gtcmVzdWx0cyAuc2l0ZS1tYWluIC5jb250YWluZXIgLmVudHJ5LWhlYWRlciAuZW50cnktdGl0bGUgYTpob3ZlciB7XG4gIGNvbG9yOiAjRkNCRDEzO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGZ1bGxzY3JlZW4gc2VhcmNoICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNmdWxsc2NyZWVuc2VhcmNoIC5idG4ge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgbWFyZ2luLXRvcDogMjBweDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKiogV29yZFByZXNzIFBhc3N3b3JkIEZvcm0gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnBvc3QtcGFzc3dvcmQtZm9ybSBwIGxhYmVsIHtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gIG1pbi1oZWlnaHQ6IDU1cHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IEFyY2hpdmUsIFRhZywgQ2F0ZWdvcnksIEJsb2cgSW5kZXggKyBEZWZhdWx0IEhvbWUgQmxvZyBQb3N0cywgU2VhcmNoIFJlc3VsdHMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmJsb2cgLmM5IC5lbnRyeS1oZWFkZXIgLmVudHJ5LXRpdGxlIGEsXG4uYXJjaGl2ZSAuYzkgLmVudHJ5LXRpdGxlIGEsXG4uc2VhcmNoLXJlc3VsdHMgLmM5IC5lbnRyeS10aXRsZSBhIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uYmxvZyAuYzkgLmVudHJ5LWhlYWRlciAuZW50cnktdGl0bGUgYTpmb2N1cyxcbi5hcmNoaXZlIC5jOSAuZW50cnktdGl0bGUgYTpmb2N1cyxcbi5zZWFyY2gtcmVzdWx0cyAuYzkgLmVudHJ5LXRpdGxlIGE6Zm9jdXMge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLmJsb2cgLmM5IC5lbnRyeS1oZWFkZXIgLmVudHJ5LXRpdGxlLFxuLmFyY2hpdmUgLmM5IC5lbnRyeS10aXRsZSxcbi5zZWFyY2gtcmVzdWx0cyAuYzkgLmVudHJ5LXRpdGxlIHtcbiAgbGluZS1oZWlnaHQ6IDEuMTtcbiAgZm9udC1zaXplOiAyMHB4O1xufVxuXG4uc2VhcmNoLXJlc3VsdHMgLmVudHJ5LWZvb3RlciB7XG4gIGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4uc2VhcmNoLXJlc3VsdHMgLmNhdC1saW5rcyxcbi5zZWFyY2gtcmVzdWx0cyAudGFncy1saW5rcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDdweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgQmxvZyBTaW5nbGUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSxcbi5lbnRyeS1iaWctaGVhZGVyIC5lbnRyeS10aXRsZS1ib3ggLmVudHJ5LW1ldGEgLmF1dGhvciBhLFxuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSAuYnlsaW5lLFxuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSAucG9zdGVkLW9uLFxuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSAucG9zdGVkLW9uIGEge1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAxMnB4O1xufVxuXG4uZW50cnktbWV0YSAudXBkYXRlZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IEFuaW1hdGlvbnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI2ljb24tbW91c2Utc2Nyb2xsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW46IGF1dG87XG4gIHdpZHRoOiAyNXB4O1xuICBoZWlnaHQ6IDI1cHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IEZvb3RlciAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZm9vdGVyLWVudGlyZXR5IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiA0MDtcbn1cblxuI3dyYXBwZXItZm9vdGVyLWZ1bGwge1xuICBjb2xvcjogI0FEQjFCMjtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOGQ4ZDg7XG59XG5cbiN3cmFwcGVyLWZvb3RlciB7XG4gIGNvbG9yOiAjQURCMUIyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4jd3JhcHBlci1mb290ZXItZnVsbCAud2lkZ2V0X25hdl9tZW51IGEsXG4jd3JhcHBlci1mb290ZXItZnVsbCBhIHtcbiAgY29sb3I6ICM1YzVjNWM7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuI3dyYXBwZXItZm9vdGVyLWZ1bGwgYTpob3ZlciB7XG4gIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICBjb2xvcjogIzAwMDAwMDtcbn1cblxuLmZvb3Rlci13cmFwcGVyIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNkOGQ4ZDg7XG59XG5cbiN3cmFwcGVyLWZvb3RlciAuc2l0ZS1mb290ZXIsXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIC5yb3csXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIC5yb3cgcCxcbiN3cmFwcGVyLWZvb3RlciAuc2l0ZS1mb290ZXIgLmNvcHlyaWdodCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjE7XG59XG5cbiN3cmFwcGVyLWZvb3RlciAuc2l0ZS1mb290ZXIgcCxcbi5mb290ZXItbGlua3MgYSxcbiN3cmFwcGVyLWZvb3RlciAuc2l0ZS1mb290ZXIgYSB7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgY29sb3I6ICM0YTRhNGE7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1cHg7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuI3dyYXBwZXItZm9vdGVyIC5zaXRlLWZvb3RlciBhOmhvdmVyIHtcbiAgY29sb3I6ICMwMDAwMDA7XG59XG5cbi5mb290ZXItc29jaWFsIGEge1xuICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5mb290ZXItc29jaWFsIGEgaTpiZWZvcmUge1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5mb290ZXItc29jaWFsIGEgLmZhYjpiZWZvcmUge1xuICBjb2xvcjogIzliOWI5YjtcbiAgdHJhbnNpdGlvbjogY29sb3IgMC40cztcbiAgZm9udC1mYW1pbHk6IFwiZm9udGF3ZXNvbWVcIjtcbn1cblxuLmZvb3Rlci1zb2NpYWwgYTpob3ZlciAuZmFiOmJlZm9yZSB7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4uZm9vdGVyLXNvY2lhbC13cmFwcGVyIHtcbiAgbWFyZ2luLXRvcDogLTVweDtcbn1cblxuLmZvb3Rlci1zZWFyY2gge1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbn1cblxuLmZvb3Rlci1zZWFyY2ggLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1hcHBlbmQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZm9vdGVyLXNlYXJjaCAuaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDIwO1xuICBtYXgtd2lkdGg6IDE4MHB4O1xufVxuXG4uZm9vdGVyLXNlYXJjaCAuaW5wdXQtZ3JvdXA6YWZ0ZXIge1xuICBmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuICBjb2xvcjogIzliOWI5YjtcbiAgY29udGVudDogXCJcXGYwMDJcIjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxMHB4O1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB6LWluZGV4OiAyMjtcbn1cblxuLmZvb3Rlci1zZWFyY2ggLmlucHV0LWdyb3VwLnNlYXJjaC1maWVsZCB7XG4gIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG4gIGhlaWdodDogYXV0bztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZm9vdGVyLXNlYXJjaCB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjdweCkge1xuICAuZm9vdGVyLXdpZGdldC53aWRnZXQtY29ydGV4LWluc3RhZ3JhbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgfVxuXG4gICN3cmFwcGVyLWZvb3RlciAuc2l0ZS1mb290ZXIge1xuICAgIHBhZGRpbmc6IDIwcHggMHB4O1xuICB9XG5cbiAgI25hdl9tZW51LTYge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAjbmF2X21lbnUtNyxcbiNuYXZfbWVudS04IHtcbiAgICBtYXgtd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5mb290ZXItc29jaWFsLXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIH1cblxuICAuZm9vdGVyLWxpbmtzLXdyYXBwZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmZvb3Rlci1jb3B5cmlnaHQtd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmZvb3Rlci1zZWFyY2gtd3JhcHBlciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMzc1cHgpIHtcbiAgLmNvcHlyaWdodCB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxufVxuI3dyYXBwZXItZm9vdGVyIC5zaXRlLWZvb3RlciAuZm9vdGVyLWNvcHlyaWdodC13cmFwcGVyIC5jb3B5cmlnaHQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCB3aWRnZXQgY3VzdG9taXphdGlvbnMqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGFsbCB3aWRnZXRzICovXG4uZm9vdGVyLXdpZGdldCAubWVudSAubWVudS1pdGVtLFxuLmZvb3Rlci13aWRnZXQgPiB1bCA+IGxpIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMjtcbiAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gIG1hcmdpbjogMDtcbn1cblxuLmZvb3Rlci13aWRnZXQgaDMge1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA0ZW07XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5mb290ZXItd2lkZ2V0IC5tZW51IC5tZW51LWl0ZW0gYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNHB4O1xufVxuXG4uZm9vdGVyLXdpZGdldC53aWRnZXRfY3VzdG9tX2h0bWw6bGFzdC1jaGlsZCAud2lkZ2V0LXRpdGxlOmJlZm9yZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgY29udGVudDogXCJcXGYxNmRcIjtcbiAgZm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcbiAgY29sb3I6ICM5YjliOWI7XG4gIHBhZGRpbmctcmlnaHQ6IDRweDtcbn1cblxuLmZvb3Rlci13aWRnZXQgLnNiX2luc3RhZ3JhbV9oZWFkZXIsXG4uZm9vdGVyLXdpZGdldCAjc2JfaW5zdGFncmFtICNzYmlfbG9hZCAuc2JpX2xvYWRfYnRuIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI3NiX2luc3RhZ3JhbSAuc2JpX2ZvbGxvd19idG4gYSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBjb2xvcjogIzRhNGE0YTtcbn1cblxuI3NiX2luc3RhZ3JhbSAuc2JpX2ZvbGxvd19idG4gYTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3gtc2hhZG93OiBub25lO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZm9vdGVyLXdpZGdldCAuaW5zdGFncmFtLXBpY3Mge1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZzogMHB4O1xufVxuXG4uZm9vdGVyLXdpZGdldCAuaW5zdGFncmFtLXBpY3MgbGkge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nOiAwcHg7XG4gIG1heC13aWR0aDogNDglO1xuICBtYXJnaW46IDElIDQlIDQlIDAlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5mb290ZXItd2lkZ2V0IC5pbnN0YWdyYW0tcGljcyBsaTpudGgtY2hpbGQoZXZlbikge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IEdyYXZpdHkgRm9ybXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmM5IC5nZm9ybV93cmFwcGVyIGxhYmVsLmdmaWVsZF9sYWJlbCxcbi5jOSAuZ2Zvcm1fd3JhcHBlciBsZWdlbmQuZ2ZpZWxkX2xhYmVsLFxuLndwLWJsb2NrW2RhdGEtdHlwZT1cImdyYXZpdHlmb3Jtcy9ibG9ja1wiXSAuZ2Zvcm1fd3JhcHBlciBsYWJlbC5nZmllbGRfbGFiZWwsXG4ud3AtYmxvY2tbZGF0YS10eXBlPVwiZ3Jhdml0eWZvcm1zL2Jsb2NrXCJdIC5nZm9ybV93cmFwcGVyIGxlZ2VuZC5nZmllbGRfbGFiZWwsXG4uYzkgLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgZm9udC1zaXplOiAxOHB4O1xufVxuXG4uYzkgLmdmb3JtX2NvbmZpcm1hdGlvbl9tZXNzYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cblxuLmM5IC5nZm9ybV93cmFwcGVyIGlucHV0Om5vdChbdHlwZT1yYWRpb10pOm5vdChbdHlwZT1jaGVja2JveF0pOm5vdChbdHlwZT1zdWJtaXRdKTpub3QoW3R5cGU9YnV0dG9uXSk6bm90KFt0eXBlPWltYWdlXSk6bm90KFt0eXBlPWZpbGVdKSxcbi5jOSAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPXBhc3N3b3JkXSxcbi5jOSAuZ2Zvcm1fd3JhcHBlciBpbnB1dFt0eXBlPXRlbF0sXG4uYzkgLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT10ZXh0XSxcbi5jOSAuZ2Zvcm1fd3JhcHBlciB0ZXh0YXJlYSxcbi53cC1ibG9ja1tkYXRhLXR5cGU9XCJncmF2aXR5Zm9ybXMvYmxvY2tcIl0gLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1wYXNzd29yZF0sXG4ud3AtYmxvY2tbZGF0YS10eXBlPVwiZ3Jhdml0eWZvcm1zL2Jsb2NrXCJdIC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9dGVsXSxcbi53cC1ibG9ja1tkYXRhLXR5cGU9XCJncmF2aXR5Zm9ybXMvYmxvY2tcIl0gLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT10ZXh0XSxcbi53cC1ibG9ja1tkYXRhLXR5cGU9XCJncmF2aXR5Zm9ybXMvYmxvY2tcIl0gLmdmb3JtX3dyYXBwZXIgdGV4dGFyZWEgLmM5IGlucHV0W3R5cGU9cGFzc3dvcmRdLFxuLmM5IGlucHV0W3R5cGU9dGVsXSxcbi5jOSBpbnB1dFt0eXBlPXRleHRdLFxuLmM5IGlucHV0W3R5cGU9ZW1haWxdLFxuLmM5IGlucHV0W3R5cGU9dXJsXSxcbi5jOSB0ZXh0YXJlYSxcbi5jOSBpbnB1dFt0eXBlPXNlYXJjaF0sXG4uc2VhcmNoLWZvcm0gLnNlYXJjaC1maWVsZCxcbi5mb290ZXItc2VhcmNoLXdyYXBwZXIgLmZpZWxkW3R5cGU9dGV4dF0ge1xuICBmb250LXNpemU6IDE2cHg7XG4gIG1pbi1oZWlnaHQ6IDU1cHg7XG59XG5cbi5jOSAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIHtcbiAgZm9udC1zaXplOiAxMHB4O1xufVxuXG4uYzkgLmVudHJ5LWNvbnRlbnQgdWwuZ2Zvcm1fZmllbGRzIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcbn1cblxuLmdpbnB1dF9jYXJkX2V4cGlyYXRpb25fY29udGFpbmVyIHNlbGVjdCxcbi5naW5wdXRfY2FyZF9leHBpcmF0aW9uX2NvbnRhaW5lciBsYWJlbCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4uYzkgLmdpbnB1dF9jb250YWluZXJfY3JlZGl0Y2FyZCBsYWJlbCxcbi5jOSAuZ2lucHV0X2NhcmRfZXhwaXJhdGlvbl9jb250YWluZXIgbGFiZWwge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5naW5wdXRfY2FyZF9leHBpcmF0aW9uX2NvbnRhaW5lcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBjbGVhcjogYm90aDtcbn1cblxuLmM5IC5nZm9ybV93cmFwcGVyIC5maWVsZF9kZXNjcmlwdGlvbl9iZWxvdyAuZ2ZpZWxkX2Rlc2NyaXB0aW9uIHtcbiAgcGFkZGluZy10b3A6IDBweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBGaWxlIEF0dGFjaG1lbnRzICsgU3VibWl0IEJ1dHRvbnMgKi9cbi5jOSAuZ2Zvcm1fd3JhcHBlciBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX3NhZmFyaSBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX2Nocm9tZSBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0LmJ1dHRvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBpbnB1dC5idXR0b24ge1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgI2ViYjkwMCAwJSwgI2VhZGMyMyAxMDAlKTtcbiAgcGFkZGluZzogMTlweCAyOHB4IDE0cHggMjhweCAhaW1wb3J0YW50O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAyOXB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlcjogMHB4O1xufVxuXG4uZW50cnktY29udGVudCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCkgbGkuZ2ZpZWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCkgbGkuZ2ZpZWxkIHtcbiAgbWFyZ2luOiAxNXB4IDBweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbnMgLndwLWJsb2NrLWJ1dHRvbiB7XG4gIG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4uYzktYmxvY2stY3RhIC5jOS1jdGEtY29udGVudCAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLmM5LWJsb2NrLWN0YS5jOS1jdGEgLndwLWJsb2NrLWJ1dHRvbl9fbGluayB7XG4gIGZvbnQtc2l6ZTogMjBweDtcbn1cblxuLyogQnV0dG9uIGFuZCBpbnB1dCBmb2N1cyBzdHlsZXMgKi9cbi53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsXG4uYnRuOmZvY3VzLFxuLndwLWJsb2NrLWZpbGVfX2J1dHRvbjpmb2N1cyxcbi5jOSAuZW50cnktY29udGVudCBidXR0b246Zm9jdXMsXG4ud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKTpmb2N1cyxcbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLFxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyxcbi5lbnRyeS1jb250ZW50IGlucHV0W3R5cGU9dGV4dF06Zm9jdXMsXG4jZnVsbHNjcmVlbnNlYXJjaCBpbnB1dFt0eXBlPXNlYXJjaF06Zm9jdXMsXG4uc2VhcmNoLWNsb3NlOmZvY3VzIHtcbiAgYm94LXNoYWRvdzogMXB4IDFweCA5cHggcmdiYSgwLCAwLCAwLCAwLjUpO1xuICBvdXRsaW5lOiAxcHggZG90dGVkICNmZmZmZmY7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IEN1c3RvbWl6YXRpb25zIHRvIENvcmUgQmxvY2tzICArIEM5IEJsb2NrcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBjOS1ncmlkICovXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jOS1jb2x1bW4tY29udGFpbmVyLFxuLmM5LWNvbHVtbi1jb250YWluZXIge1xuICB6LWluZGV4OiAxMjtcbn1cblxuLyogaGVhZGVyIGN1c3RvbWl6YXRpb25zIHRvIGM5LWdyaWRzICovXG4uaXMtc3R5bGUtZ3JheS1kaWFnb25hbCxcbi5ncmF5LWRpYWdvbmFsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmlzLXN0eWxlLWdyYXktZGlhZ29uYWw6YWZ0ZXIsXG4uZ3JheS1kaWFnb25hbDphZnRlciB7XG4gIHotaW5kZXg6IDk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYm90dG9tOiAtMTY1cHg7XG4gIGxlZnQ6IDA7XG4gIGhlaWdodDogNjAlO1xuICB3aWR0aDogMTAwdnc7XG4gIGNvbnRlbnQ6IHVybCh3bC1kaWFnb25hbC1iZy5zdmcpO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gIHRyYW5zZm9ybTogc2NhbGVYKDMuMyk7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmlzLXN0eWxlLWdyYXktZGlhZ29uYWw6YWZ0ZXIsXG4uZ3JheS1kaWFnb25hbDphZnRlciB7XG4gICAgaGVpZ2h0OiAyMCU7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTY4cHgpIHtcbiAgLmlzLXN0eWxlLWdyYXktZGlhZ29uYWw6YWZ0ZXIsXG4uZ3JheS1kaWFnb25hbDphZnRlciB7XG4gICAgaGVpZ2h0OiAxMCU7XG4gIH1cbn1cbi5pcy1zdHlsZS1kYXJrLWdyYWRpZW50LWxlZnQsXG4uZGFyay1ncmFkaWVudC1sZWZ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGJsYWNrIGdyYWRpZW50IGZvciBhYm91dCBwYWdlIGJhY2tncm91bmRzICovXG4uaXMtc3R5bGUtZGFyay1ncmFkaWVudC1sZWZ0OmFmdGVyLFxuLmRhcmstZ3JhZGllbnQtbGVmdDphZnRlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHotaW5kZXg6IDc7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQ6IGJsYWNrO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUsIGJsYWNrKSwgY29sb3Itc3RvcCgzNyUsIGJsYWNrKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDAsIDAsIDAsIDApKSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgYmxhY2sgMCUsIGJsYWNrIDM3JSwgcmdiYSgwLCAwLCAwLCAwKSAxMDAlKTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBnYWxsZXJ5IGFkanVzdG1lbnRzICBmb3IgY29yZSBnYWxsZXJ5IGJsb2NrICovXG4uZW50cnktY29udGVudCAuY29udGFpbmVyIC53cC1ibG9jay1nYWxsZXJ5IHtcbiAgbWF4LXdpZHRoOiAxMTQwcHg7XG59XG5cbi53cC1ibG9jay1nYWxsZXJ5IC5ibG9ja3MtZ2FsbGVyeS1pdGVtIGEgaW1nIHtcbiAgb3BhY2l0eTogMTtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjRzO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi53cC1ibG9jay1nYWxsZXJ5IC5ibG9ja3MtZ2FsbGVyeS1pdGVtIGE6aG92ZXIgaW1nIHtcbiAgb3BhY2l0eTogMC45O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qY2FsbCB0byBhY3Rpb24gYmxvY2sqL1xuLmM5LWN0YSAuYzktY3RhLWJ1dHRvbiAuc3F1YXJlIHtcbiAgY29sb3I6ICMwMDAwMDA7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC45N3B4O1xuICBsaW5lLWhlaWdodDogMTtcbn1cblxuLmM5LWN0YSAuYzktY3RhLWJ1dHRvbiAuc3F1YXJlOmhvdmVyIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4uZW50cnktY29udGVudCAuYzktY3RhLWNvbnRlbnQgLmM5LWN0YS10ZXh0W3N0eWxlXSBwIHtcbiAgZm9udC1zaXplOiBpbmhlcml0O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jOS1jdGEgLmM5LWN0YS1idXR0b24gLnNxdWFyZSB7XG4gICAgZm9udC1zaXplOiAxOHB4O1xuICB9XG59XG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIEM5IHNvY2lhbCBzaGFyZSBibG9jayAqL1xuLmM5LXNvY2lhbC1zaGFyaW5nIC5jOS1zaGFyZS1saXN0IGEge1xuICBtYXJnaW46IDBweCAycHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogcG9zdHMgZ3JpZCBibG9jayAqL1xuLmM5LWJsb2NrLXBvc3QtZ3JpZCAuYzktYmxvY2stcG9zdC1ncmlkLWJ5bGluZSB7XG4gIGZvbnQ6IDEwMCAxNnB4LzEgaW5oZXJpdCwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xufVxuXG4uYzktYmxvY2stcG9zdC1ncmlkIGhlYWRlciAuYzktYmxvY2stcG9zdC1ncmlkLXRpdGxlLFxuLmM5LWJsb2NrLXBvc3QtZ3JpZCAuYzktYmxvY2stcG9zdC1ncmlkLWJ5bGluZSB7XG4gIG1hcmdpbi1ib3R0b206IDAuNWVtO1xufVxuXG4uZW50cnktY29udGVudCAuYzktYmxvY2stcG9zdC1ncmlkLWV4Y2VycHQgcCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LWJsb2NrLXBvc3QtZ3JpZC1leGNlcnB0IHAge1xuICBsaW5lLWhlaWdodDogMS41O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIHByb2R1Y3RzIGJsb2NrcyBhbmQgcHJvZHVjdCBzaW5nbGUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBmb250IHNpemUgc2V0dGluZyAqL1xuLndvb2NvbW1lcmNlLXN0b3JlLW5vdGljZSxcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgdGFibGUsXG4uYzktcHJvZHVjdC1jYXRhbG9nLFxuLmM5IC5wcm9kdWN0X21ldGEsXG4uYzkgLmNvbW1lbnQtcmVzcG9uZCxcbi53Yy1ibG9jay1ncmlkX19wcm9kdWN0IC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXRpdGxlLFxuLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtcHJpY2Uge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWxpbmsge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogcHJvZHVjdCBzaW5nbGUgcHJvZHVjdF9tZXRhICovXG4uYzkgLnByb2R1Y3RfbWV0YSA+IHNwYW4ge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiByZXZpZXdzIGZvcm0gKi9cbi5jOSAud29vY29tbWVyY2UtUmV2aWV3cyxcbi5jOSAud29vY29tbWVyY2UtdGFicyAuYzktdGFicy1jb250ZW50IHtcbiAgbWF4LXdpZHRoOiA2NzVweDtcbn1cblxuLmM5IC5lbnRyeS1jb250ZW50IC5jb21tZW50LWZvcm0gLmNvbW1lbnQtZm9ybS1jb21tZW50LFxuLmM5IC5lbnRyeS1jb250ZW50IC5jb21tZW50LWZvcm0gcCxcbi5jOSAud29vY29tbWVyY2Utb3JkZXJpbmcsXG4ud29vY29tbWVyY2UgLmM5IGRpdi5wcm9kdWN0IHAuc3RvY2ssXG4ud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyLFxuLnNob3BfdGFibGUsXG4uYzkgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbi5jOSAud29vY29tbWVyY2UgYS5idXR0b24sXG4uYzkgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sXG4uYzkgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbiB7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlciB7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIG1hcmdpbjogMHB4IGF1dG87XG59XG5cbi5jOSAuZW50cnktY29udGVudCAuY29tbWVudC1mb3JtIGxhYmVsIHtcbiAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gdGFibGUgKi9cbi53b29jb21tZXJjZSAuYzkgdGFibGUuc2hvcF9hdHRyaWJ1dGVzIHRkLFxuLndvb2NvbW1lcmNlIC5jOSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgLndvb2NvbW1lcmNlLXByb2R1Y3QtYXR0cmlidXRlcy1pdGVtX192YWx1ZSBwIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiB3d29vY29tbWVyY2UgYWRkIHRvIGNhcnQgZm9ybSB0YWJsZSAqL1xuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAuZ3JvdXBfdGFibGUgdGQge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIHRleHQgZm9ybWF0dGluZyBhbmQgY29sb3IgY2hhbmdlcyAqL1xuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByaWNlLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHAucHJpY2UsXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3Qgc3Bhbi5wcmljZSB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi53b29jb21tZXJjZSAuYzkgdWwucHJvZHVjdHMgbGkucHJvZHVjdCAucHJpY2UgaW5zIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHByb2R1Y3Qgc2luZ2xlIHF1YW50aXR5IGZpZWxkICovXG4ud29vY29tbWVyY2UgLmM5IC5xdWFudGl0eSAucXR5IHtcbiAgbWluLWhlaWdodDogNTNweDtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIGJ1dHRvbnMgKi9cbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQsXG4ud29vY29tbWVyY2UgYS5idXR0b24sXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24sXG4uYzkgLndvb2NvbW1lcmNlIHRkLmFjdGlvbnMgLmNvdXBvbiBidXR0b24uYnV0dG9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbiAgbGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcbiAgcGFkZGluZzogMTlweCAyOHB4IDE0cHggMjhweDtcbiAgY29sb3I6ICNmZmZmZmY7XG59XG5cbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmRpc2FibGVkLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdDpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgYS5idXR0b24uZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYS5idXR0b246ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYS5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbjpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0ge1xuICBwYWRkaW5nOiAxOXB4IDI4cHggMTRweCAyOHB4O1xufVxuXG4ud29vY29tbWVyY2UgLmM5ICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbi53b29jb21tZXJjZSAuYzkgYS5idXR0b24sXG4ud29vY29tbWVyY2UgLmM5IGJ1dHRvbi5idXR0b24sXG4ud29vY29tbWVyY2UgLmM5IGlucHV0LmJ1dHRvbixcbi53b29jb21tZXJjZSBhLmJ1dHRvbiB7XG4gIHBhZGRpbmc6IDE5cHggMjhweCAxNHB4IDI4cHg7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgYm9yZGVyOiBub25lO1xufVxuXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQuZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0LmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXTpob3ZlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyYjJiMmI7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTY4cHgpIHtcbiAgLmM5IC53Yy1ibG9jay1ncmlkID4gLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53cC1ibG9jay1idXR0b25fX2xpbms6bm90KC5pcy1zdHlsZS1vdXRsaW5lKSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuICAgIHBhZGRpbmc6IDE5cHggMTVweCAxNHB4IDE1cHg7XG4gIH1cbn1cbi5lbnRyeS1jb250ZW50IC53Yy1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0OmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jOS13b29jb21tZXJjZSAuZW50cnktY29udGVudCA+IC5jb250YWluZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTY4cHgpIHtcbiAgLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYSBpbWcge1xuICAgIG1heC1oZWlnaHQ6IDE0NnB4O1xuICB9XG59XG4ud29vY29tbWVyY2UgLnByb2R1Y3RzIGxpLnByb2R1Y3Q6YmVmb3JlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICBmb250LXNpemU6IDE4cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5ib2R5IC53b29jb21tZXJjZS1pbmZvIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBjb2xvcjogYmxhY2s7XG4gIGxldHRlci1zcGFjaW5nOiAwLjVweDtcbn1cblxuYm9keSAud29vY29tbWVyY2UtaW5mbzpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIG9uIHNhbGUgYm94ZXMgbmVlZCBib3JkZXIgYm94IHNpemluZyByZWRvbmUgKi9cbi5vbnNhbGUge1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBob21lcGFnZSArIGNhdGFsb2cgd29vY29tbWVyY2UgcHJvZHVjdCBibG9ja3MgKi9cbi53Yy1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0czpvbmx5LWNoaWxkIHtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4ud2MtYmxvY2stZ3JpZCBpbnMge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi53Yy1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LW9uc2FsZSB7XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kOiAjMDAwMDAwO1xuICBjb2xvcjogI2ZmZmZmZjtcbiAgZm9udC1zaXplOiAxMHB4O1xuICBwYWRkaW5nOiAycHggOHB4O1xufVxuXG4uZW50cnktY29udGVudCAud2MtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHM6bm90KC53cC1ibG9jay1nYWxsZXJ5KSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgbWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCxcbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyxcbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG4gIG1hcmdpbjogMHB4O1xuICBwYWRkaW5nOiAwcHg7XG59XG5cbi53Yy1ibG9jay1ncmlkID4gLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzLFxuLmVudHJ5LWNvbnRlbnQgLndjLWJsb2NrLWdyaWQgPiAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi5lbnRyeS1jb250ZW50IC53b29jb21tZXJjZS1wbGFjZWhvbGRlciB7XG4gIG1pbi13aWR0aDogMjAwcHg7XG4gIGhlaWdodDogYXV0bztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZW50cnktY29udGVudCAud29vY29tbWVyY2UtcGxhY2Vob2xkZXIge1xuICAgIG1pbi13aWR0aDogMTAwcHg7XG4gIH1cbn1cbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCBhIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWltYWdlIC5zaXplLXdvb2NvbW1lcmNlX3RodW1ibmFpbCxcbi5hcmNoaXZlLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYSBpbWcge1xuICB3aWR0aDogYXV0bztcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xufVxuXG4uZW50cnktY29udGVudCAud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgYSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1pbWFnZSAuc2l6ZS13b29jb21tZXJjZV90aHVtYm5haWw6aG92ZXIsXG4uYXJjaGl2ZS53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGEgaW1nOmhvdmVyIHtcbiAgb3BhY2l0eTogMC45O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gIC53Yy1ibG9jay1ncmlkLmhhcy00LWNvbHVtbnMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Qge1xuICAgIG1heC13aWR0aDogMjQlO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuYXJjaGl2ZS53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGEgaW1nLFxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IGEgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgLnNpemUtd29vY29tbWVyY2VfdGh1bWJuYWlsIHtcbiAgICBtYXgtaGVpZ2h0OiAyMDVweDtcbiAgfVxufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjdweCkge1xuICAuYzkgLndjLWJsb2NrLWdyaWQuaGFzLTQtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG4gICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgZmxleC1iYXNpczogNTAlO1xuICB9XG5cbiAgLmFyY2hpdmUud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIGltZyxcbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCBhIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWltYWdlIC5zaXplLXdvb2NvbW1lcmNlX3RodW1ibmFpbCB7XG4gICAgbWF4LWhlaWdodDogMTMzcHg7XG4gIH1cbn1cbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCBhIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWltYWdlIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzO1xufVxuXG4uZW50cnktY29udGVudCAud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgYSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1pbWFnZTpob3ZlciB7XG4gIG9wYWNpdHk6IDAuOTU7XG59XG5cbi53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdDpiZWZvcmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uc2luZ2xlLXByb2R1Y3QgI3dyYXBwZXItbmF2YmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDAwMDtcbn1cblxuLndvb2NvbW1lcmNlIC5zaXRlLW1haW4gZGl2LnByb2R1Y3QgZGl2LnN1bW1hcnkge1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5zaW5nbGUtcHJvZHVjdCAucGFuZWwsXG4uc2luZ2xlLXByb2R1Y3QgLnBhbmVsIHAsXG4uc2luZ2xlLXByb2R1Y3QgLnBhbmVsIHVsLFxuLnNpbmdsZS1wcm9kdWN0IC5wYW5lbCB1bCBsaSB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgfVxuXG4gIC5zaW5nbGUtcHJvZHVjdCAucGFuZWwgdWwgbGk6YmVmb3JlIHtcbiAgICB0b3A6IDJweDtcbiAgfVxufVxuLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24gcCB7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLndvb2NvbW1lcmNlLXByb2R1Y3QtZGV0YWlsc19fc2hvcnQtZGVzY3JpcHRpb24gcDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICB3aWR0aDogNzUlO1xuICBoZWlnaHQ6IDFweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzk3OTc5Nztcbn1cblxuLnNpbmdsZS1wcm9kdWN0IC53b29jb21tZXJjZS1UYWJzLXBhbmVsOmZpcnN0LWNoaWxkIHVsIGxpIHtcbiAgbWFyZ2luOiAxMHB4IDBweDtcbn1cblxuLnNpbmdsZS1wcm9kdWN0IC5mbGV4LXZpZXdwb3J0IHtcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMgLmZsZXgtY29udHJvbC10aHVtYnMge1xuICBtYXJnaW4tbGVmdDogLTVweDtcbiAgbWFyZ2luLXJpZ2h0OiAtNXB4O1xufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyAuZmxleC1jb250cm9sLXRodW1icyBsaSB7XG4gIHBhZGRpbmc6IDBweCA1cHg7XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJzIGxpOmJlZm9yZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDE0cHgpIHtcbiAgLnNpbmdsZS1wcm9kdWN0IC53b29jb21tZXJjZS1UYWJzLXBhbmVsOmZpcnN0LWNoaWxkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKmJyZWFkY3J1bWJzKi9cbi53b29jb21tZXJjZSAuc2l0ZS1tYWluIC53b29jb21tZXJjZS1icmVhZGNydW1iIHtcbiAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gIG1hcmdpbjogMzBweCBhdXRvO1xuICBwYWRkaW5nOiAwcHggMTVweDtcbiAgZm9udC1zaXplOiAyMHB4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wNXB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBjb2xvcjogIzAwMDAwMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLndvb2NvbW1lcmNlIC5zaXRlLW1haW4gLndvb2NvbW1lcmNlLWJyZWFkY3J1bWIgYSB7XG4gIGNvbG9yOiAjMDAwMDAwO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG59XG5cbi53b29jb21tZXJjZSAuc2l0ZS1tYWluIC53b29jb21tZXJjZS1icmVhZGNydW1iIGE6aG92ZXIge1xuICBjb2xvcjogIzliOWI5YjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHByb2R1Y3QgaW5kZXggZnJvbSBicmVhZGNydW1icyAqL1xuLmM5Lndvb2NvbW1lcmNlICN3cmFwcGVyLW5hdmJhciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG59XG5cbi5jOSAud29vY29tbWVyY2UtcHJvZHVjdHMtaGVhZGVyX190aXRsZSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXdlaWdodDogNzAwO1xuICBmb250LXNpemU6IDc5cHg7XG4gIGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYzkud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbi5wYWdlLXNlYXJjaC1yZXN1bHRzIG5hdiB7XG4gIG1hcmdpbjogMHB4IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLnBhZ2Utc2VhcmNoLXJlc3VsdHMgbmF2IC5wYWdpbmF0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMTQwcHg7XG4gIG1hcmdpbjogMHB4IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyBuYXYgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLmM5Lndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uLFxuLnBhZ2Utc2VhcmNoLXJlc3VsdHMgbmF2IC5wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBXb29Db21tZXJjZSBDaGVja291dCAqL1xuLndvb2NvbW1lcmNlLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTEsXG4ud29vY29tbWVyY2UtcGFnZS53b29jb21tZXJjZS1jaGVja291dCAuY29sMi1zZXQgLmNvbC0xLFxuLndvb2NvbW1lcmNlLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTIsXG4ud29vY29tbWVyY2UtcGFnZS53b29jb21tZXJjZS1jaGVja291dCAuY29sMi1zZXQgLmNvbC0yIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYzkgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUge1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbi53b29jb21tZXJjZSB0ZC5wcm9kdWN0LW5hbWUgLndjLWl0ZW0tbWV0YSAud2MtaXRlbS1tZXRhLWxhYmVsLFxuLndvb2NvbW1lcmNlIHRkLnByb2R1Y3QtbmFtZSAud2MtaXRlbS1tZXRhIGR0LFxuLndvb2NvbW1lcmNlIHRkLnByb2R1Y3QtbmFtZSBkbC52YXJpYXRpb24gLndjLWl0ZW0tbWV0YS1sYWJlbCxcbi53b29jb21tZXJjZSB0ZC5wcm9kdWN0LW5hbWUgZGwudmFyaWF0aW9uIGR0IHtcbiAgZm9udC1zaXplOiAxNnB4O1xufVxuXG4vKiBXb29Db21tZXJjZSBGb3JtcyB0ZXh0IGlucHV0cyAqL1xuLmM5IC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSBmb3JtIC5mb3JtLXJvdyAuaW5wdXQtdGV4dCxcbi5jOSAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsXG4uc2luZ2xlLXByb2R1Y3Qud29vY29tbWVyY2UgZm9ybS5jYXJ0IGlucHV0W3R5cGU9bnVtYmVyXSxcbi53Yy1ibG9jay1wcm9kdWN0LWNhdGVnb3JpZXMgc2VsZWN0IHtcbiAgaGVpZ2h0OiA0NXB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xufVxuXG4uYnljb25zb2xld29vb2R0X2RlbGl2ZXJ5X3R5cGUge1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAuc2luZ2xlLXByb2R1Y3QgLmM5IC53b29jb21tZXJjZSAud2MtcGFvLWFkZG9uLWNvbnRhaW5lci53Yy1wYW8tYWRkb24tdG9wcGluZ3MgLmZvcm0tcm93LFxuLnNpbmdsZS1wcm9kdWN0IC5jOSAud29vY29tbWVyY2UgLndjLXBhby1hZGRvbi1jb250YWluZXIud2MtcGFvLWFkZG9uLWJ1bi1zdHlsZSAuZm9ybS1yb3csXG4uc2luZ2xlLXByb2R1Y3QgLmM5IC53b29jb21tZXJjZSAud2MtcGFvLWFkZG9uLWNvbnRhaW5lci53Yy1wYW8tcmVxdWlyZWQtYWRkb24gLmZvcm0tcm93IHtcbiAgICB3aWR0aDogNDglO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyB0ZCxcbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgdGgge1xuICBsaW5lLWhlaWdodDogMTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAucmVzZXRfdmFyaWF0aW9ucyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbn1cblxuLmM5IC53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLnZhcmlhdGlvbnMgc2VsZWN0LFxuLndjLWJsb2NrLXByb2R1Y3QtY2F0ZWdvcmllcyBzZWxlY3Qge1xuICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMDtcbiAgcGFkZGluZy1sZWZ0OiAxMnB4O1xuICBoZWlnaHQ6IDQ1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjA7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gIGNvbG9yOiAjNGE0YTRhO1xufVxuXG4uYzkgLndvb2NvbW1lcmNlIHNlbGVjdCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjY2M7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5jOSAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19hcnJvdyB7XG4gIGhlaWdodDogNDVweDtcbiAgcmlnaHQ6IDEwcHg7XG59XG5cbi5jOSAuc2VsZWN0Mi1jb250YWluZXItLWRlZmF1bHQgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gIGxpbmUtaGVpZ2h0OiA0NXB4O1xufVxuXG4uYzkgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgcGFkZGluZzogMnB4IDhweDtcbiAgYm9yZGVyOiAxcHggc29saWQgI2QyZDJkMjtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLyogY291cG9uICovXG4uYzkgLndvb2NvbW1lcmNlICNjb250ZW50IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0LFxuLmM5IC53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAjY291cG9uX2NvZGUge1xuICB3aWR0aDogMTI1cHggIWltcG9ydGFudDtcbn1cblxuLmM5IC53b29jb21tZXJjZSAjY29udGVudCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbixcbi5jOSAud29vY29tbWVyY2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24sXG4uYzkgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24sXG4uYzkgLndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNHB4KSB7XG4gIC5jaGVja291dF9jb3Vwb24gLmlucHV0LXRleHQge1xuICAgIG1heC13aWR0aDogMTIzcHg7XG4gIH1cblxuICAuYzkgLndvb2NvbW1lcmNlIC5jaGVja291dF9jb3Vwb24gLmJ1dHRvbiB7XG4gICAgcGFkZGluZzogMTZweCAyMHB4O1xuICB9XG59XG4vKiB3b29jb21tZXJjZSBsb2dpbiBmb3JtICovXG4uYzkgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWxvZ2luLFxuLmM5IC53b29jb21tZXJjZSBmb3JtLmxvZ2luLFxuLmM5IC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHtcbiAgbWF4LXdpZHRoOiA0NTBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuYzkgLndvb2NvbW1lcmNlIC53b29jb21tZXJjZS1mb3JtLWxvZ2luLFxuLmM5IC53b29jb21tZXJjZSBmb3JtLmxvZ2luLFxuLmM5IC53b29jb21tZXJjZSBmb3JtLnJlZ2lzdGVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi8qIHdvb2NvbW1lcmNlIHVzZXIgYWNjb3VudCBhZG1pbiBwYW5lbCovXG4uYzkgLndvb2NvbW1lcmNlLUFkZHJlc3NlcyB7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG59XG5cbi5jOSAud29vY29tbWVyY2UtQWRkcmVzc2VzIC53b29jb21tZXJjZS1BZGRyZXNzIHtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYzkgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xufVxuXG4ud29vY29tbWVyY2UtcGFnZSAuY29sLTEsXG4ud29vY29tbWVyY2UtcGFnZSAuY29sLTIge1xuICBtYXgtd2lkdGg6IG5vbmU7XG59XG5cbi53b29jb21tZXJjZS1jaGVja291dCAuY29sLTEsXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLmNvbC0yIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xufVxuXG4vKiB3b29jb21tZXJjZSBkYXRlICsgdGltZSBwaWNrZXIgKi9cbi51aS1kYXRlcGlja2VyIHtcbiAgd2lkdGg6IDI3NXB4O1xuICBwYWRkaW5nOiA2cHg7XG4gIG1heC13aWR0aDogMTAwJTtcbn1cblxuLnVpLWNvcm5lci1hbGwsXG4udWktY29ybmVyLWJvdHRvbSxcbi51aS1jb3JuZXItcmlnaHQsXG4udWktY29ybmVyLWJyIHtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xufVxuXG4udWktc3RhdGUtZGVmYXVsdCxcbi51aS13aWRnZXQtY29udGVudCAudWktc3RhdGUtZGVmYXVsdCxcbi51aS13aWRnZXQtaGVhZGVyIC51aS1zdGF0ZS1kZWZhdWx0IHtcbiAgcGFkZGluZzogNHB4O1xufVxuXG4udWktd2lkZ2V0LWhlYWRlciB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICNkMmQyZDI7XG4gIGNvbG9yOiAjMDAwMDAwO1xufVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci1wcmV2LFxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItbmV4dCB7XG4gIHRvcDogNTAlO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi51aS10aW1lcGlja2VyLXdyYXBwZXIsXG4udWktZGF0ZXBpY2tlci1jYWxlbmRhcixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLXRpdGxlIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xufVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi51aS10aW1lcGlja2VyLWxpc3QgbGkge1xuICBwYWRkaW5nOiAxMnB4O1xufVxuXG5saS51aS10aW1lcGlja2VyLXNlbGVjdGVkLFxuLnVpLXRpbWVwaWNrZXItbGlzdCBsaTpob3Zlcixcbi51aS10aW1lcGlja2VyLWxpc3QgLnVpLXRpbWVwaWNrZXItc2VsZWN0ZWQ6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkNCRDEzO1xufVxuXG4vKiBvcmRlciBjb25maXJtYXRpb24gKi9cbnVsLm9yZGVyX2RldGFpbHMgbGkge1xuICBmb250LXNpemU6IDE0cHggIWltcG9ydGFudDtcbn1cblxuLndvb2NvbW1lcmNlIHVsLm9yZGVyX2RldGFpbHMgbGkgc3Ryb25nIHtcbiAgZm9udC1zaXplOiAxNnB4ICFpbXBvcnRhbnQ7XG59XG5cbi5vcmRlcl9kZXRhaWxzOm5vdCguYmxvY2tzLWdhbGxlcnktZ3JpZCk6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzKTpub3QoLmdmaWVsZF9jaGVja2JveCk6bm90KC5nZmllbGRfcmFkaW8pOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCk6bm90KC5wcm9kdWN0cyk6bm90KC5nZm9ybV9maWVsZHMpIGxpIHtcbiAgcGFkZGluZzogOHB4IDIwcHg7XG59XG5cbi5lbnRyeS1jb250ZW50IC5vcmRlcl9kZXRhaWxzOm5vdCguYmxvY2tzLWdhbGxlcnktZ3JpZCk6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzKTpub3QoLmdmaWVsZF9jaGVja2JveCk6bm90KC5nZmllbGRfcmFkaW8pOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCk6bm90KC5wcm9kdWN0cyk6bm90KC5nZm9ybV9maWVsZHMpIHtcbiAgcGFkZGluZy1sZWZ0OiAwcHggIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiB3b29jb21tZXJjZSBzdG9yZSBub3RpY2UgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLndvb2NvbW1lcmNlLXN0b3JlLW5vdGljZSxcbnAuZGVtb19zdG9yZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMwMDAwMDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgdG9wOiBhdXRvO1xuICBib3R0b206IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLndvb2NvbW1lcmNlLXN0b3JlLW5vdGljZV9fZGlzbWlzcy1saW5rIHtcbiAgbWFyZ2luOiAwcHggOHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHBhZ2luYXRpb24gdHdlYWsgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmFyY2hpdmUgbmF2IC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluayxcbi5ibG9nIG5hdiAucGFnaW5hdGlvbiAucGFnZS1pdGVtIC5wYWdlLWxpbmssXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyBuYXYgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rLFxuLnNpbmdsZSAubmF2aWdhdGlvbiAubmF2LW5leHQgYSxcbi5zaW5nbGUgLm5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyBhIHtcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuXG4uYzkgLndvb2NvbW1lcmNlIG5hdi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG59XG5cbi5jOSAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgLnBhZ2UtbnVtYmVycyxcbi5jOSAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgc3BhbiB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiA0MDQgZXJyb3IgcGFnZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZXJyb3ItNDA0IC53aWRnZXRfcmVjZW50X2VudHJpZXMsXG4uZXJyb3ItNDA0IC53aWRnZXRfYXJjaGl2ZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5lcnJvci00MDQge1xuICBtYXJnaW46IDE1NXB4IGF1dG8gMHB4IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWF4LXdpZHRoOiA5NjBweDtcbn1cblxuLmVycm9yLTQwNCAucGFnZS1jb250ZW50IHAge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5lcnJvci00MDQgaDEge1xuICBmb250LXNpemU6IDgwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmVycm9yLTQwNCAucGFnZS1jb250ZW50IC5zZWFyY2gtZm9ybSB7XG4gIG1hcmdpbjogMHB4IGF1dG8gODBweCBhdXRvO1xuICBtYXgtd2lkdGg6IDYwJTtcbn1cblxuLmVycm9yLTQwNCAucGFnZS1jb250ZW50IC5zZWFyY2gtZm9ybSAuYnRuLXByaW1hcnksXG4uc2VhcmNoIC5wYWdlLWNvbnRlbnQgLnNlYXJjaC1mb3JtIC5idG4tcHJpbWFyeSB7XG4gIGNvbG9yOiAjZmZmZmZmO1xuICBmb250LXNpemU6IDIwcHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBtYXJnaW4tbGVmdDogMjBweDtcbiAgcGFkZGluZzogNnB4IDMwcHggMnB4IDMwcHggIWltcG9ydGFudDtcbiAgbWluLWhlaWdodDogNTVweDtcbn1cblxuLmVycm9yLTQwNCAucGFnZS1jb250ZW50IC5zZWFyY2gtZm9ybSAuaW5wdXQtZ3JvdXAge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLmVycm9yLTQwNCAucGFnZS1jb250ZW50IC5zZWFyY2gtZm9ybSAuaW5wdXQtZ3JvdXAuc2VhcmNoLWZpZWxkIHtcbiAgcGFkZGluZzogMTBweCAxMnB4O1xuICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xuICBoZWlnaHQ6IGF1dG87XG4gIGJvcmRlcjogMXB4IHNvbGlkICNjZWQ0ZGE7XG59XG5cbi5lcnJvcjQwNCAjd3JhcHBlci1uYXZiYXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwMDAwO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIFV0aWxpdHkgQ2xhc3NlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uaW1nLXNoYWRvdyxcbi5pcy1zdHlsZS1pbWctc2hhZG93LFxuOm5vdChbZGF0YS1hbGlnbl0pID4gLndwLWJsb2NrLWltYWdlLmlzLXN0eWxlLWltZy1zaGFkb3cge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uaXMtc3R5bGUtaW1nLXNoYWRvdyBpbWcsXG4uaW1nLXNoYWRvdyBpbWcge1xuICB6LWluZGV4OiAxMDtcbn1cblxuLmlzLXN0eWxlLWltZy1zaGFkb3cud3AtYmxvY2staW1hZ2U6YWZ0ZXIsXG4uaW1nLXNoYWRvdy53cC1ibG9jay1pbWFnZTphZnRlciB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiAtMzBweDtcbiAgei1pbmRleDogODtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzMHB4O1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSwgcmdiYSgwLCAwLCAwLCAwLjQpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDY4JSk7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59IiwiQGltcG9ydCBcIi4uLy4uL2Fzc2V0cy9zdHlsZXMvdGhlbWUvdGhlbWVfdmFyaWFibGVzXCI7XG5cbi8qXG5Vc2UgdGhlIGZvbGxvd2luZyB3aXRoIHRoZSBidWlsZCB0b29scyB0byBnZW5lcmF0ZSBuZXcgY2xpZW50IHN0eWxlcyBmb3IgZm9udHNcblJlbW92ZSBpbmhlcml0IGZvbnQgc2V0dGluZ3Mgb24gdGhlICRmb250LWZhbWlseSB2YXJpYWJsZXNcblxuQGltcG9ydCB1cmwoXCJodHRwczovL3VzZS50eXBla2l0Lm5ldC90ZXQzZHFrLmNzc1wiKTtcbiRoZWFkaW5ncy1mb250LWZhbWlseTogbGVhZ3VlLWdvdGhpYztcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiBvc3dhbGQ7XG4kZm9udC1mYW1pbHktYmFzZTogbXVsaTtcblxuKi9cblxuLy8gVHlwb2dyYXBoeVxuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiBpbmhlcml0O1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IGluaGVyaXQ7XG4kZm9udC1mYW1pbHktYmFzZTogaW5oZXJpdDtcblxuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuNjtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogNzAwO1xuJGZvbnQtd2VpZ2h0LWJhc2U6IDQwMDtcbiRmb250LXdlaWdodC1ib2xkOiA2MDA7XG4kZm9udC13ZWlnaHQtbm9ybWFsOiAkZm9udC13ZWlnaHQtYmFzZTtcblxuLy8gQ29sb3JzXG4kcHJpbWFyeTogI0ZDQkQxMztcbiRzZWNvbmRhcnk6ICNGRUM1MEE7XG4kc3VjY2VzczogIzIxYTc3YTtcbiRpbmZvOiAjZjdmN2Y5O1xuJHdhcm5pbmc6ICNlYzk3MWY7XG4kZGFuZ2VyOiAjODQzNTM0O1xuJGRhcms6ICMwMDAwMDA7XG4kbGlnaHQ6ICNmZmZmZmY7XG5cbiRsaW5rLWhvdmVyLWNvbG9yOiAjMDAwMDAwO1xuJGxpbmstY29sb3I6ICM1YzVjNWM7XG5cbiRncmF5LTEwMDogI0FEQjFCMjtcbiRncmF5LTIwMDogIzliOWI5YjtcbiRncmF5LTUwMDogI2QyZDJkMjtcbiRncmF5LTYwMDogcmdiYSgxNTEsIDE1MSwgMTUxLCAxKTtcbiRncmF5LTcwMDogIzJiMmIyYjtcbiRncmF5LTgwMDogIzc2NzY3NjtcbiRncmF5LTkwMDogIzRhNGE0YTtcblxuJGJvZHktY29sb3I6ICMxMjEyMTI7XG4iXX0= */
