/****************************************************************************************/
/* 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.867384)), 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.867384) 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; }

.c9-cta .wp-block-button__link.c9-button-shape-outline,
.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 #000000;
  padding: 19px 28px 14px 28px;
  font-size: 20px;
  letter-spacing: 0.01em; }

.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: 0.8em; }

.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 1.4rem/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: 1.5em;
  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: 1.9em;
  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 ::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: 1.9em;
  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 ::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 ::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: 1.6em;
    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: 2.6em;
    letter-spacing: 0.055em; }
  .entry-content .subheading2,
  .wp-block-heading .subheading2,
  .subheading2 {
    font-weight: 500;
    font-size: 2.3em;
    letter-spacing: 0.12em; }
  .entry-content .subheading3,
  .wp-block-heading .subheading3,
  .subheading3 {
    font-weight: 100;
    font-size: 2em;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    line-height: 1.2; }
  .entry-content .subheading4,
  .wp-block-heading .subheading4,
  .subheading4 {
    font-size: 1.6em;
    letter-spacing: 0.001em; }
  .entry-content .subheading5,
  .wp-block-heading .subheading5,
  .subheading5 {
    font-size: 1.4em;
    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: 1.8rem !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: 1.2em; }
  /* WordPress Gutenberg Font Sizes */
  .entry-content .has-small-font-size {
    font-size: 1.4em;
    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: 5em;
  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: 5em;
    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: 8em; } }

/****************************************************************************************/
/* 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) 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) 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: 7.9em;
  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: 2.4em;
  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: 1.1em; }
  .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: 2em;
  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: 2em; }

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

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

/****************************************************************************************/
/* 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: 1.6em;
  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: 2em;
  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-family: inherit;
  font-size: 2.99em;
  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; }

/* 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: 1.8em; } }

/****************************************************************************************/
/* 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 1.6em/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: 1.5em;
    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: 2em;
  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: 7.9em;
  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: 1.6em !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: 1.6em;
  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: 1.4em; }

.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: 1.6em; }

.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: 2em;
  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: 1.3em;
  letter-spacing: 0.02em;
  height: auto;
  border: 1px solid #ced4da; }

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

/****************************************************************************************/
/* Utility Classes */
/****************************************************************************************/
.img-shadow,
.is-style-img-shadow {
  position: relative; }

.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: 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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNsaWVudC5zY3NzIiwiLi4vLi4vYXNzZXRzL3N0eWxlcy90aGVtZS9fdGhlbWVfdmFyaWFibGVzLnNjc3MiLCJfY2xpZW50X3ZhcmlhYmxlcy5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLDBGQUEwRjtBQUMxRjswRkFDMEY7QUNBMUY7RUFDQyxxREFBb0Q7RUFDcEQsd0RBQWUsRUFDZjs7QUNIRDs7Ozs7Ozs7O0VBU0U7QUZMRjs7OztFQUlDLGlCRVFxQixFRlByQjs7QUFFRDs7RUFFQyxlRW9CbUIsRUZuQm5COztBQUVEO0VBQ0MsMElBQXFGO0VBQXJGLHNGQUFxRjtFQUNyRixzQkFBcUIsRUFDckI7O0FBRUQ7O0VBRUMsMElBQXFGO0VBQXJGLHNGQUFxRixFQUNyRjs7QUFFRDtFQUNDLDRCRUVhLEVGRGI7O0FBRUQ7RUFDQyxrQkFBd0I7RUFDeEIsOEtBQXdIO0VBQXhILCtHQUF3SDtFQUN4SCw2QkFBNEI7RUFDNUIsNkJBQTRCLEVBQzVCOztBQUVEO0VBQ0MsZUVOeUIsRUZPekI7O0FBRUQ7RUFDQyxtQkFBa0I7RUFDbEIsbUJBQWtCLEVBQ2xCOztBQUVEOztFQUVDLGdCQUFlLEVBQ2Y7O0FBRUQ7RUFFQzs7SUFFQyxpQkFBZ0IsRUFDaEIsRUFBQTs7QUFHRjtFQUNDLGtCQUFpQixFQUNqQjs7QUFFRDtFQUNDLG1CQUFrQixFQUNsQjs7QUFFRDtFQUNDO0lBQ0MsY0FBYSxFQUNiO0VBRUQ7SUFDQyxrQkFBaUIsRUFDakI7RUFFRDtJQUNDLGlCQUFnQixFQUNoQixFQUFBOztBQUdGO0VBQ0M7SUFDQyxjQUFhO0lBQ2Isa0JBQWlCLEVBQ2pCO0VBRUQ7O0lBRUMsMEJFM0RhLEVGNERiLEVBQUE7O0FBR0YsMEZBQTBGO0FBQzFGLDhEQUE4RDtBQUM5RCwwRkFBMEY7QUFDMUY7RUFDQywwQkFBMEIsRUFDMUI7O0FBRUQ7RUFDQywwQkFBNEIsRUFDNUI7O0FBRUQ7RUFDQywwQkFBd0IsRUFDeEI7O0FBRUQ7RUFDQywwQkFBdUIsRUFDdkI7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MEZBQTBGO0FBQzFGOztFQUVDLGNBQWEsRUFDYjs7QUFFRDtFQUNDLDRCQUEyQjtFQUMzQixtQkFBa0I7RUFDbEIsaUJBQWdCLEVBQ2hCOztBQUVEO0VBQ0MsaUJBQWdCLEVBQ2hCOztBQUVEO0VBQ0MsZ0JBQWU7RUFDZixtQkFBa0IsRUFDbEI7O0FBRUQ7RUFDQywyQkFBMEI7RUFDMUIsZUFBYyxFQUNkOztBQUVEOztFQUVDLGVFcjJGYztFRnMyRmQsZUFBYztFQUNkLGlCQUFnQjtFQUNoQixhQUFZO0VBQ1osbUJBQWtCO0VBQ2xCLGtCQUFpQjtFQUNqQixzQ0FBcUM7RUFDckMsaUJBQWdCLEVBQ2hCOztBQUVEO0VBQ0MscUJBQWE7RUFBYixxQkFBYTtFQUFiLGNBQWE7RUFDYiwwQkFBbUI7TUFBbkIsdUJBQW1CO1VBQW5CLG9CQUFtQjtFQUNuQix5QkFBdUI7TUFBdkIsc0JBQXVCO1VBQXZCLHdCQUF1QixFQUN2Qjs7QUFFRDtFQUNDLG1CQUFrQjtFQUNsQixxQkV4NEYrQjtFRnk0Ri9CLGlCQUFnQjtFQUNoQix1QkFBc0I7RUFDdEIsYUFBWTtFQUNaLDBCQUFvQyxFQUNwQzs7QUFFRDtFQUNDLDBCRWg0RmEsRUZpNEZiOztBQUVELDBGQUEwRjtBQUMxRixxQkFBcUI7QUFDckIsMEZBQTBGO0FBQzFGOztFQUVDLG1CQUFrQixFQUNsQjs7QUFFRDs7RUFFQyxZQUFXLEVBQ1g7O0FBRUQ7O0VBRUMsbUJBQWtCO0VBQ2xCLGNBQWE7RUFDYixXQUFVO0VBQ1YsWUFBVztFQUNYLGVBQWM7RUFDZCxZQUFXO0VBQ1gsYUFBWTtFQUNaLHdGQUF1RjtFQUN2Riw2QkFBNEIsRUFDNUIiLCJmaWxlIjoiY2xpZW50LmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IFNwZWNpZmljIFN0eWxpbmcgZm9yIEM5IFdvcmsgU3BlY2lmaWMgVGhlbWVcbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AaW1wb3J0IFwiY2xpZW50X3ZhcmlhYmxlc1wiO1xuXG4uYzkgZGwsXG4uZW50cnktY29udGVudCBwLFxuLmVudHJ5LWZvb3RlcixcbnAge1xuXHRsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG59XG5cbmEsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5ibG9jay1lZGl0b3ItcmljaC10ZXh0X19lZGl0YWJsZSBhIHtcblx0Y29sb3I6ICRsaW5rLWNvbG9yO1xufVxuXG4uZW50cnktY29udGVudCBwIGEge1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSg3NCwgNzQsIDc0LCAwLjQpIDEyJSwgcmdiYSg3NCwgNzQsIDc0LCAwKSAxMiUpO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi5lbnRyeS1jb250ZW50IHAgYTpob3Zlcixcbi5lbnRyeS1jb250ZW50IHAgYTpmb2N1cyB7XG5cdGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgwZGVnLCByZ2JhKDc0LCA3NCwgNzQsIDAuNikgMjAlLCByZ2JhKDc0LCA3NCwgNzQsIDApIDIwJSk7XG59XG5cbi5lbnRyeS1jb250ZW50IHAgYTpmb2N1cyB7XG5cdG91dGxpbmU6IDFweCBkb3R0ZWQgJGRhcms7XG59XG5cbmJvZHkucGFnZSB7XG5cdGJhY2tncm91bmQ6IHJnYigwLCAwLCAwKTtcblx0YmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgcmdiYSgwLCAwLCAwLCAwLjg2NzM4NDQ1Mzc4MTUxMjYpIDElLCByZ2JhKDAsIDAsIDAsIDAuNjY3KSA1JSwgcmdiYSgwLCAwLCAwLCAwKSAxMyUpO1xuXHRiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG5hOmhvdmVyIHtcblx0Y29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xufVxuXG4uYzkgLndyYXBwZXIge1xuXHRtYXJnaW4tdG9wOiAtMTE1cHg7XG5cdG1hcmdpbi1ib3R0b206IDBweDtcbn1cblxuLnNpbmdsZS1wb3N0IC53cmFwcGVyLFxuLmFyY2hpdmUgLmM5IC53cmFwcGVyIHtcblx0bWFyZ2luLXRvcDogMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cblx0LmJsb2cgLmM5IC53cmFwcGVyLFxuXHQuYXJjaGl2ZSAuYzkgLndyYXBwZXIge1xuXHRcdG1hcmdpbi10b3A6IDMwcHg7XG5cdH1cbn1cblxuLmM5LWxheW91dC1jb2x1bW4td3JhcCB7XG5cdGRpc3BsYXk6IC1tcy1ncmlkO1xufVxuXG4uYzktZ3JpZCAuYzktbGF5b3V0LWNvbHVtbi13cmFwIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2N3B4KSB7XG5cdC5zaW5nbGUgLmVudHJ5LWNvbnRlbnQge1xuXHRcdHBhZGRpbmc6IDIwcHg7XG5cdH1cblxuXHQucGFnZS1zZWFyY2gtcmVzdWx0cyB7XG5cdFx0bWFyZ2luLXRvcDogMTM1cHg7XG5cdH1cblxuXHQuYmxvZyAuc2l0ZSAud3JhcHBlciB7XG5cdFx0bWFyZ2luLXRvcDogMzBweDtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuXHQubmF2YmFyIC5jb250YWluZXIge1xuXHRcdHdpZHRoOiAxMzQwcHg7XG5cdFx0bWF4LXdpZHRoOiAxMzQwcHg7XG5cdH1cblxuXHQjbGVmdC1zaWRlYmFyLFxuXHQjcmlnaHQtc2lkZWJhciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xuXHR9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogQ2xpZW50IGRlZmF1bHQgY29sb3JzLCBidXR0b24gY29sb3JzICsgYmFja2dyb3VuZCBjb2xvcnMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmhhcy1jb2xvci1vcmFuZ2UtY29sb3Ige1xuXHRjb2xvcjogJHByaW1hcnkgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci15ZWxsb3ctY29sb3Ige1xuXHRjb2xvcjogJHNlY29uZGFyeSAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLXdoaXRlLWNvbG9yIHtcblx0Y29sb3I6ICRsaWdodCAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLWJsYWNrLWNvbG9yIHtcblx0Y29sb3I6ICRkYXJrICFpbXBvcnRhbnQ7XG59XG5cbi5oYXMtY29sb3ItZ3JheS1jb2xvciB7XG5cdGNvbG9yOiAkZ3JheS05MDAgIWltcG9ydGFudDtcbn1cblxuLmJnLXByaW1hcnksXG4uaGFzLWNvbG9yLW9yYW5nZS1iYWNrZ3JvdW5kLWNvbG9yIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG59XG5cbi5iZy1zZWNvbmRhcnksXG4uaGFzLWNvbG9yLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeTtcbn1cblxuLmhhcy1jb2xvci1ncmF5LWJhY2tncm91bmQtY29sb3Ige1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JheS0xMDA7XG59XG5cbi5oYXMtY29sb3Itd2hpdGUtYmFja2dyb3VuZC1jb2xvciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5oYXMtY29sb3ItYmxhY2stYmFja2dyb3VuZC1jb2xvciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xufVxuXG4uYmctc3VjY2VzcyB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRzdWNjZXNzO1xufVxuXG4uYmctaW5mbyB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRpbmZvO1xufVxuXG4uYmctd2FybmluZyB7XG5cdGJhY2tncm91bmQtY29sb3I6ICR3YXJuaW5nO1xufVxuXG4uYmctZGFuZ2VyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRhbmdlcjtcbn1cblxuLmJnLWRhcmsge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgYnV0dG9ucyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uYnRuLFxuLmJ0bjp2aXNpdGVkLFxuLmVudHJ5LWNvbnRlbnQgLmJ0bixcbi5lbnRyeS1jb250ZW50IC5idG46dmlzaXRlZCxcbi5lbnRyeS1jb250ZW50IGJ1dHRvbixcbi5lbnRyeS1jb250ZW50IGlucHV0W3R5cGU9XCJidXR0b25cIl0sXG4uZW50cnktY29udGVudCBpbnB1dFt0eXBlPVwicmVzZXRcIl0sXG4uZW50cnktY29udGVudCBpbnB1dFt0eXBlPVwic3VibWl0XCJdLFxuLmVudHJ5LWNvbnRlbnQgLmJ1dHRvbixcbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLndwLWJsb2NrLWJ1dHRvbl9fbGluayxcbi5zaXRlIC53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rLFxuLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbmsubWNlLWNvbnRlbnQtYm9keSxcbi53cC1ibG9jay1maWxlX19idXR0b24sXG4ud3AtYmxvY2stZmlsZSAud3AtYmxvY2stZmlsZV9fYnV0dG9uLFxuI3NlYXJjaHN1Ym1pdCxcbi53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSB7XG5cdHBhZGRpbmc6IDE5cHggMjhweCAxNHB4IDI4cHg7XG5cdGNvbG9yOiAkbGlnaHQ7XG5cdGZvbnQtc2l6ZTogMjBweDtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDFlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRsaW5lLWhlaWdodDogMTtcblx0Ym9yZGVyLXJhZGl1czogMHB4O1xuXHRib3JkZXI6IG5vbmU7XG59XG5cbi5jOS1jdGEgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5jOS1idXR0b24tc2hhcGUtb3V0bGluZSxcbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rOm5vdChbaHJlZl0pOm5vdChbdGFiaW5kZXhdKSxcbi53cC1ibG9jay1idXR0b24uaXMtc3R5bGUtb3V0bGluZSAud3AtYmxvY2stYnV0dG9uX19saW5rIHtcblx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlcjogM3B4IHNvbGlkICRkYXJrO1xuXHRwYWRkaW5nOiAxOXB4IDI4cHggMTRweCAyOHB4O1xuXHRmb250LXNpemU6IDIwcHg7XG5cdGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG59XG5cbi5jOSAuZW50cnktY29udGVudCAuYnRuLXNlY29uZGFyeSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnk7XG59XG5cbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazphY3RpdmUsXG4uYzkgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMge1xuXHRjb2xvcjogJGxpZ2h0O1xuXHR3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4uYzkgLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6dmlzaXRlZCxcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3Zlcixcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluayxcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uOm5vdCguaXMtc3R5bGUtb3V0bGluZSkgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpub3QoW2hyZWZdKTpub3QoW3RhYmluZGV4XSkge1xuXHRjb2xvcjogJGxpZ2h0O1xufVxuXG4uYzkgYnV0dG9uOmhvdmVyLFxuLmJ0bjpob3Zlcixcbi53cC1ibG9jay1idXR0b246bm90KC5pcy1zdHlsZS1vdXRsaW5lKSAud3AtYmxvY2stYnV0dG9uX19saW5rOmhvdmVyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYnV0dG9uOmhvdmVyLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYnV0dG9uLXByaW1hcnk6aG92ZXIsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5tY2UtY29udGVudC1ib2R5LmJ1dHRvbjpob3Zlcixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6aG92ZXIge1xuXHRvcGFjaXR5OiAwLjg7XG5cdGNvbG9yOiAjZmZmO1xufVxuXG4uYnRuOmhvdmVyLFxuLmVudHJ5LWNvbnRlbnQgYnV0dG9uOmhvdmVyLFxuLndwLWJsb2NrLWJ1dHRvbiBhOmhvdmVyLFxuLndwLWJsb2NrLWJ1dHRvbl9fbGluazpob3ZlciB7XG5cdG9wYWNpdHk6IDAuODtcbn1cblxuLndoZXJlLXRvLWJ1eT4uYnRuOmhvdmVyIHtcblx0Y29sb3I6ICRkYXJrO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2N3B4KSB7XG5cblx0LmM5IC5jOS1jdGEgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5jOS1idXR0b24tc2l6ZS1zbWFsbCxcblx0LmM5IC5jOS1jdGEgLndwLWJsb2NrLWJ1dHRvbl9fbGluay5jOS1idXR0b24tc2l6ZS1tZWRpdW0sXG5cdC5jOSAuYzktY3RhIC53cC1ibG9jay1idXR0b25fX2xpbmsuYzktYnV0dG9uLXNpemUtbGFyZ2UsXG5cdC5jOSAuYzktY3RhIC53cC1ibG9jay1idXR0b25fX2xpbmsuYzktYnV0dG9uLXNpemUtZXh0cmFsYXJnZSB7XG5cdFx0Zm9udC1zaXplOiAyMHB4O1xuXHR9XG59XG5cbi5iZy1wcmltYXJ5LFxuLmhhcy1jb2xvci1vcmFuZ2UtYmFja2dyb3VuZC1jb2xvciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG59XG5cbi5iZy1zZWNvbmRhcnksXG4uaGFzLWNvbG9yLXllbGxvdy1iYWNrZ3JvdW5kLWNvbG9yIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeSAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLWdyYXktYmFja2dyb3VuZC1jb2xvciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRncmF5LTEwMCAhaW1wb3J0YW50O1xufVxuXG4uaGFzLWNvbG9yLXdoaXRlLWJhY2tncm91bmQtY29sb3Ige1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQgIWltcG9ydGFudDtcbn1cblxuLmhhcy1jb2xvci1ibGFjay1iYWNrZ3JvdW5kLWNvbG9yIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRhcmsgIWltcG9ydGFudDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiB0YWdzICovXG5cbi5pLXRhZyxcbi50YWdzLWxpbmtzLFxuLmNhdC1saW5rcyB7XG5cdGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cdGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblx0Zm9udC1zaXplOiAwLjhlbTtcbn1cblxuLnRhZ3MtbGlua3MgYSxcbi5jYXQtbGlua3MgYSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0Y29sb3I6ICRsaW5rLWNvbG9yO1xuXHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG59XG5cbi5pLXRhZzpiZWZvcmUsXG4udGFncy1saW5rcyBhOmJlZm9yZSB7XG5cdGRpc3BsYXk6IGlubGluZTtcblx0Y29udGVudDogXCJcXGYwMmJcIjtcblx0Zm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMS40cmVtLzEgRm9udEF3ZXNvbWU7XG5cdGNvbG9yOiAkcHJpbWFyeTtcblx0cGFkZGluZy1yaWdodDogMnB4O1xufVxuXG4udGFncy1saW5rcyBhOmhvdmVyIHtcblx0Y29sb3I6ICRkYXJrO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBuYXZiYXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuI3dyYXBwZXItbmF2YmFyIHtcblx0ei1pbmRleDogMTAyMDtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsLFxuLmJsb2cgLmhlYWRlci1uYXZiYXIsXG4uYXJjaGl2ZSAuaGVhZGVyLW5hdmJhcixcbi5zaW5nbGUtcG9zdCAuaGVhZGVyLW5hdmJhcixcbi5lcnJvcjQwNCAuaGVhZGVyLW5hdmJhcixcbi5zZWFyY2ggLmhlYWRlci1uYXZiYXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci5uYXZiYXItc21hbGwge1xuXHRtYXgtaGVpZ2h0OiA1NXB4O1xuXHRoZWlnaHQ6IDU1cHg7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC40cyBlYXNlLWluLW91dDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0O1xufVxuXG4ubmF2YmFyLXNtYWxsIHtcblx0bWF4LWhlaWdodDogNTVweDtcblx0aGVpZ2h0OiA1NXB4O1xuXHR0cmFuc2l0aW9uOiBvcGFjaXR5IDAuNHMgZWFzZS1pbi1vdXQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcbn1cblxuLm5hdmJhci1zbWFsbCAubmF2YmFyLWJyYW5kIGltZyB7XG5cdG1heC1oZWlnaHQ6IDQ1cHg7XG5cdHdpZHRoOiBhdXRvO1xufVxuXG4ubmF2YmFyLW5hdiBsaSBhLFxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAubmF2IC5uYXYtaXRlbT4ubmF2LWxpbmsge1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRmb250LXNpemU6IDEuNWVtO1xuXHRsaW5lLWhlaWdodDogMTtcblx0Y29sb3I6IHJnYmEoNDMsIDQzLCA0MywgMC43Nyk7XG5cdGxldHRlci1zcGFjaW5nOiAxcHg7XG59XG5cbi5jOSAuZHJvcGRvd24tdG9nZ2xlOmFmdGVyIHtcblx0Ym9yZGVyLXRvcDogbm9uZTtcblx0Ym9yZGVyLXJpZ2h0OiBub25lO1xuXHRib3JkZXItYm90dG9tOiBub25lO1xuXHRib3JkZXItbGVmdDogbm9uZTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIHtcblx0LmhlYWRlci1uYXZiYXIge1xuXHRcdGhlaWdodDogNTVweDtcblx0fVxuXG5cdC5uYXZiYXItYnJhbmQgaW1nIHtcblx0XHR3aWR0aDogYXV0bztcblx0XHRtYXgtaGVpZ2h0OiA0NXB4O1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXG5cdCNwYWdlIC5uYXZiYXItc21hbGwtbW9iaWxlIHtcblx0XHRwYWRkaW5nLWJvdHRvbTogMHB4O1xuXHR9XG5cblx0Lm5hdmJhci1zbWFsbCAubmF2YmFyLWJyYW5kIHtcblx0XHRiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG5cdFx0bWF4LXdpZHRoOiAyODVweDtcblx0XHRtYXgtaGVpZ2h0OiA0NXB4O1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdGhlaWdodDogYXV0bztcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdH1cblxuXHQuYzl3b3JrLWRhcmstbG9nbyB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR9XG5cblx0Lm5hdmJhci5uYXZiYXItc21hbGwgLmM5d29yay1kdWFsLWxvZ28ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAuYzl3b3JrLWRhcmstbG9nbyB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5uYXZiYXIgLm5hdmJhci1icmFuZCB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cblx0Lm5hdmJhci1zbWFsbCAubmF2YmFyLWJyYW5kIGltZyB7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXG5cdC5uYXZiYXIgLmNvbnRhaW5lci1mbHVpZCAubmF2YmFyLXNtYWxsLWJ1dHRvbnMge1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG5cdH1cblxuXHQuYnRuLW5hdi1zZWFyY2gsXG5cdC5uYXZiYXItdG9nZ2xlciB7XG5cdFx0Y29sb3I6ICRsaW5rLWNvbG9yO1xuXHR9XG5cblx0Lm5hdi10b2dnbGUgLm5hdmJhci10b2dnbGVyOmZvY3VzLFxuXHQubmF2LXRvZ2dsZSAubmF2YmFyLXRvZ2dsZXI6aG92ZXIge1xuXHRcdGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcblx0fVxuXG5cdC5uYXZiYXItdG9nZ2xlclthcmlhLWV4cGFuZGVkPXRydWVdIC5mYS1iYXJzOmJlZm9yZSB7XG5cdFx0Y29udGVudDogJ1xcZjAwZCc7XG5cdH1cblxuXHQubmF2LXNlYXJjaCxcblx0Lm5hdi10b2dnbGUge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2N3B4KSB7XG5cdC5uYXZiYXIgLmNvbnRhaW5lci1mbHVpZCB7XG5cdFx0anVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXHRcdGZsZXgtZGlyZWN0aW9uOiByb3c7XG5cdH1cblxuXHQubmF2YmFyIC5jb250YWluZXItZmx1aWQgLmM5LWN1c3RvbS1sb2dvIHtcblx0XHRhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuXHR9XG5cblx0Lm5hdmJhciAuY29udGFpbmVyLWZsdWlkIC5uYXZiYXItc21hbGwtYnV0dG9ucyB7XG5cdFx0bWFyZ2luLWxlZnQ6IGF1dG87XG5cdH1cblxuXHQjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDBweDtcblx0fVxuXG5cdC5idG4tbmF2LXNlYXJjaCxcblx0Lm5hdmJhci10b2dnbGVyIHtcblx0XHRtYXJnaW46IDBweDtcblx0XHRwYWRkaW5nOiA1cHg7XG5cdH1cblxufVxuXG4vKiB0b2dnbGUgYWRqdXN0bWVudHMgZm9yIHRhYmxldCB3aGVuIG5vdCB1c2luZyBtZWdhIG1lbnUqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA2NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG5cdC5uYXZiYXItdG9nZ2xlciB7XG5cdFx0Y29sb3I6ICNmZmY7XG5cdH1cblxuXHQubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2YmFyLXRvZ2dsZXI6Zm9jdXMge1xuXHRcdGNvbG9yOiAjZmZmO1xuXHR9XG5cblx0Lm5hdmJhci1zbWFsbCAuYnRuLW5hdi1zZWFyY2gsXG5cdC5uYXZiYXItc21hbGwgLm5hdmJhci10b2dnbGVyIHtcblx0XHRjb2xvcjogcmdiYSgwLCAwLCAwLCAuNSk7XG5cdH1cblxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cdC5oZWFkZXItbmF2YmFyIHtcblx0XHRoZWlnaHQ6IDEwOHB4O1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcblx0Lm5hdmJhci1icmFuZCBpbWcge1xuXHRcdG1heC13aWR0aDogMjg1cHg7XG5cdFx0bWF4LWhlaWdodDogOTJweDtcblx0XHR3aWR0aDogYXV0bztcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXHQuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGRpc3BsYXk6IC1tcy1mbGV4O1xuXHRcdGRpc3BsYXk6IGZsZXg7XG5cdFx0anVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cdH1cblxuXHQubmF2YmFyLW5hdixcblx0LmM5ICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSB7XG5cdFx0ZGlzcGxheTogLW1zLWZsZXg7XG5cdFx0ZGlzcGxheTogZmxleDtcblx0XHRqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cdH1cblxuXHQuaGVhZGVyLW5hdmJhciB7XG5cdFx0aGVpZ2h0OiAxMTVweDtcblx0fVxuXG5cdC5uYXZiYXItbmF2PmxpPmEge1xuXHRcdGNvbG9yOiAjZmZmO1xuXHR9XG5cbn1cblxuLyogbmF2YmFyIGNvbnRhaW5lciB3aWR0aHMgZm9yIG1lZ2EgbWVudSBhbmQgbm9ybWFsIG1lbnVzKi9cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSB7XG5cblx0Lm5hdmJhci1uYXYsXG5cdC5jOSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbi1sZWZ0OiAwcHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIGFuZCAobWF4LXdpZHRoOiA0MTRweCkge1xuXG5cdC5uYXZiYXItbmF2LFxuXHQuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IHtcblx0XHR0b3A6IDQ5cHg7XG5cdH1cbn1cblxuXG4vKiBzcGFjaW5nIGZvciB0aGF0IHdlaXJkIGluYmV0d2VlbiB0YWJsZXQgc2l6ZSBmb3IgbmF2aWdhdGlvbiAqL1xuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuXG5cdC5uYXZiYXItbmF2LFxuXHQuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IHtcblx0XHRtYXJnaW4tbGVmdDogNDBweDtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDEyMDBweCkge1xuXG5cdC5uYXZiYXItbmF2LFxuXHQuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IHtcblx0XHR3aWR0aDogODAlO1xuXHRcdG1hcmdpbi1sZWZ0OiAwcHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTFweCkge1xuXG5cdC8qIGluaXRpYWwgbmF2IGxpbmtzIHNob3VsZCBiZSB3aGl0ZSBhbmQgdGhlbiBjaGFuZ2UgdG8gYmxhY2sgYWZ0ZXIgbmF2YmFyIHNtYWxsIGtpY2tzIGluKi9cblx0Lm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgLm1lZ2EtbWVudS10b2dnbGUgLm1lZ2EtdG9nZ2xlLWJsb2NrLTEgLm1lZ2EtdG9nZ2xlLWxhYmVsLFxuXHQubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAubWVnYS1tZW51LXRvZ2dsZSAubWVnYS10b2dnbGUtYmxvY2stMTphZnRlciB7XG5cdFx0Y29sb3I6ICRsaWdodDtcblx0fVxuXG5cdC5oZWFkZXItbmF2YmFyIC5uYXZiYXItY29sbGFwc2UsXG5cdC5oZWFkZXItbmF2YmFyIC5uYXZiYXItY29sbGFwc2Uuc2hvdyB7XG5cdFx0bGVmdDogMDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQ7XG5cdH1cblxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIERyb3AgZG93biBtZW51cywgYW5pbWF0aW9ucyBvZiBtZW51cywgYW5kIGJ1dHRvbiBob3ZlciBhbmltYXRpb25zIGluIG1haW4gbmF2ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLmRyb3Bkb3duLWl0ZW0ge1xuXHRwYWRkaW5nOiAxMHB4IDhweDtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhciAubmF2IC5uYXYtaXRlbSAuZHJvcGRvd24tbWVudSAubmF2LWl0ZW0ge1xuXHRtYXJnaW46IDAgNnB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG5cdC5oZWFkZXItbmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5kcm9wZG93bi1tZW51IHtcblx0XHRsZWZ0OiA1MCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MCUpO1xuXHR9XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5kcm9wZG93bi1tZW51IHtcblx0Ym9yZGVyLXJhZGl1czogMHB4O1xuXHRtYXJnaW4tdG9wOiAxZW07XG5cdGJvcmRlcjogMHB4O1xuXHQtd2Via2l0LWFuaW1hdGlvbjogZmFkZUluRnJvbU5vbmUgMC41cyBlYXNlLW91dDtcblx0YW5pbWF0aW9uOiBmYWRlSW5Gcm9tTm9uZSAwLjVzIGVhc2Utb3V0O1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbSAuZHJvcGRvd24tbWVudS5zaG93IHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdC13ZWJraXQtYW5pbWF0aW9uOiBmYWRlSW5Gcm9tTm9uZSAwLjVzIGVhc2Utb3V0O1xuXHRhbmltYXRpb246IGZhZGVJbkZyb21Ob25lIDAuNXMgZWFzZS1vdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Gcm9tTm9uZSB7XG5cdDAlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQxJSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXG5cdDEwMCUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5Gcm9tTm9uZSB7XG5cdDAlIHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHRcdG9wYWNpdHk6IDA7XG5cdH1cblxuXHQxJSB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0b3BhY2l0eTogMDtcblx0fVxuXG5cdDEwMCUge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG9wYWNpdHk6IDE7XG5cdH1cbn1cblxuLm5hdmJhci1zbWFsbC5maXhlZC10b3AgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbms6Zm9jdXMsXG4ubmF2YmFyLXNtYWxsLmZpeGVkLXRvcCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluazpmb2N1cz5zcGFuIHtcblx0Y29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xuXHRvdXRsaW5lOiAxcHggZG90dGVkICRsaW5rLWhvdmVyLWNvbG9yO1xufVxuXG4jbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgYTpob3ZlcixcbiNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSBhOmZvY3VzIHtcblx0Y29sb3I6ICRsaW5rLWhvdmVyLWNvbG9yO1xufVxuXG4jbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnkgYTpmb2N1cyB7XG5cdG91dGxpbmU6IDFweCBkb3R0ZWQgJGxpbmstaG92ZXItY29sb3I7XG59XG5cbi8qIGZpcnN0IGxldmVsIG5hdiBsaW5rIGhvdmVyIGVmZmVjdHMgKi9cbi5jOSAuaGVhZGVyLW5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgLm5hdiAubmF2LWl0ZW0+Lm5hdi1saW5rLFxuLmM5IC5oZWFkZXItbmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAubmF2IC5uYXYtaXRlbSAubmF2LWxpbms+c3Bhbixcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbmssXG4ubmF2YmFyICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeT5saS5tZWdhLW1lbnUtaXRlbT5hLm1lZ2EtbWVudS1saW5rPnNwYW4ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHBhZGRpbmc6IDBweDtcblxuXHQmOmJlZm9yZSxcblx0JjphZnRlciB7XG5cdFx0cmlnaHQ6IDA7XG5cdFx0Ym90dG9tOiAwO1xuXHRcdGJhY2tncm91bmQ6IGRhcmtlbigkcHJpbWFyeSwgMTAlKTtcblx0fVxuXG5cdCY6YmVmb3JlIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IDJweDtcblx0XHR0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMSUpO1xuXHR9XG5cblx0JjphZnRlciB7XG5cdFx0d2lkdGg6IDJweDtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMSUpO1xuXHR9XG5cblx0PnNwYW4ge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHBhZGRpbmc6IDE0cHggMTJweDtcblxuXHRcdCY6YmVmb3JlLFxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdGJhY2tncm91bmQ6IGRhcmtlbigkcHJpbWFyeSwgMTAlKTtcblx0XHR9XG5cblx0XHQmOmJlZm9yZSB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMnB4O1xuXHRcdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMSUpO1xuXHRcdH1cblxuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0d2lkdGg6IDJweDtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAxJSk7XG5cdFx0fVxuXHR9XG5cblx0Jjpmb2N1czpiZWZvcmUsXG5cdCY6Zm9jdXM6YWZ0ZXIsXG5cdCY6Zm9jdXM+c3BhbjpiZWZvcmUsXG5cdCY6Zm9jdXM+c3BhbjphZnRlcixcblx0Jjpob3ZlcjpiZWZvcmUsXG5cdCY6aG92ZXI6YWZ0ZXIsXG5cdCY6aG92ZXI+c3BhbjpiZWZvcmUsXG5cdCY6aG92ZXI+c3BhbjphZnRlciB7XG5cdFx0dHJhbnNmb3JtOiB0cmFuc2xhdGUoMCwgMCk7XG5cdFx0dHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuNHMgZWFzZS1pbi1vdXQ7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0MTRweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSB7XG5cblx0LyogbmF2IGxpbmsgY29sb3JzIHR1cm4gd2hpdGUgaW5iZXR3ZWVuIG1vYmlsZS90YWJsZXQvbGFwdG9wKi9cblx0LmhlYWRlci1uYXZiYXIgLm5hdiAubmF2LWl0ZW0+Lm5hdi1saW5rLFxuXHQuaGVhZGVyLW5hdmJhciAubmF2IC5uYXYtaXRlbSAubmF2LWxpbms+c3BhbiB7XG5cdFx0Y29sb3I6ICRkYXJrO1xuXHR9XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXYgLm5hdi1pdGVtPi5uYXYtbGluayxcbi5oZWFkZXItbmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluaz5zcGFuLFxuLm5hdmJhciAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluayxcbi5uYXZiYXIgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbms+c3Bhbixcbi5uYXZiYXItc21hbGwuZml4ZWQtdG9wICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeT5saS5tZWdhLW1lbnUtaXRlbT5hLm1lZ2EtbWVudS1saW5rLFxuLm5hdmJhci1zbWFsbC5maXhlZC10b3AgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbms+c3BhbiB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdCY6YmVmb3JlLFxuXHQmOmFmdGVyIHtcblx0XHRjb250ZW50OiBcIlwiO1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0fVxufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5uYXYgLm5hdi1pdGVtPi5uYXYtbGluayxcbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLm5hdiAubmF2LWl0ZW0gLm5hdi1saW5rPnNwYW4ge1xuXHRjb2xvcjogJGRhcms7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KSB7XG5cdC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeT5saS5tZWdhLW1lbnUtaXRlbT5hLm1lZ2EtbWVudS1saW5rIHtcblx0XHRvdmVyZmxvdzogdmlzaWJsZTtcblx0fVxuXG5cdC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeT5saS5tZWdhLW1lbnUtaXRlbSxcblx0Lm5hdmJhci1zbWFsbCAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluayxcblx0Lm5hdmJhci1zbWFsbC5maXhlZC10b3AgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5PmxpLm1lZ2EtbWVudS1pdGVtPmEubWVnYS1tZW51LWxpbmsge1xuXHRcdG1hcmdpbjogMHB4IGF1dG87XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1pbi1oZWlnaHQ6IDQwcHg7XG5cdH1cblxuXHQubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSAjbWVnYS1tZW51LXdyYXAtcHJpbWFyeSAjbWVnYS1tZW51LXByaW1hcnk+bGkubWVnYS1tZW51LWl0ZW0+YS5tZWdhLW1lbnUtbGluaz5zcGFuIHtcblx0XHRtYXJnaW46IDBweDtcblx0fVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGhlYWRlciBuYXZiYXIgc2VhcmNoIGN1c3RvbWl6YXRpb25zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLm5hdi1zZWFyY2gge1xuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcblxuXHQubmF2LXNlYXJjaCxcblx0Lm5hdi10b2dnbGUge1xuXHRcdGxpbmUtaGVpZ2h0OiAyO1xuXHR9XG5cblx0Lm5hdi1zZWFyY2gge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQuaGVhZGVyLW5hdmJhciAuc2VhcmNoLFxuXHQuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGxpLnNlYXJjaCB7XG5cdFx0bWluLXdpZHRoOiAxMjVweDtcblx0XHRkaXNwbGF5OiBmbGV4O1xuXHRcdGZvbnQtc2l6ZTogMTBweDtcblx0XHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRcdGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblx0fVxufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2LXNlYXJjaCAuYnRuLW5hdi1zZWFyY2gsXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXRvZ2dsZXIge1xuXHRmb250LXNpemU6IDIwcHg7XG59XG5cbi5zZWFyY2ggZm9ybSB7XG5cdGRpc3BsYXk6IGlubGluZTtcbn1cblxuLmM5IC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggaW5wdXQ6Zm9jdXMge1xuXHRvdXRsaW5lOiAwO1xufVxuXG4uYzkgLmhlYWRlci1uYXZiYXIgLnNlYXJjaDpiZWZvcmUsXG4uYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGxpLnNlYXJjaDpiZWZvcmUge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGZvbnQtZmFtaWx5OiBcIkZvbnRBd2Vzb21lXCI7XG5cdGNvbG9yOiAjZmZmO1xuXHRmb250LXNpemU6IDEuOWVtO1xuXHRjb250ZW50OiBcIlxcZjAwMlwiO1xufVxuXG4uc2VhcmNoIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5zZWFyY2ggOjotbW96LXBsYWNlaG9sZGVyIHtcblx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6Oi1tcy1wbGFjZWhvbGRlciB7XG5cdGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5zZWFyY2ggOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcblx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcblx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG59XG5cbi5zZWFyY2ggOjotbW96LXBsYWNlaG9sZGVyIHtcblx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLnNlYXJjaCA6OnBsYWNlaG9sZGVyIHtcblx0Y29sb3I6ICNmZmYgIWltcG9ydGFudDtcbn1cblxuLmhlYWRlci1uYXZiYXIgLnNlYXJjaCAjcyB7XG5cdGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuXHRib3JkZXI6IG5vbmU7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLWxlZnQ6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0Ym9yZGVyLXJpZ2h0OiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZmZmO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRmb250LXdlaWdodDogMzAwO1xuXHRsaW5lLWhlaWdodDogMTtcblx0d2lkdGg6IDY1cHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Y29sb3I6ICNmZmY7XG5cdGZvbnQtc2l6ZTogMS45ZW07XG5cdG1hcmdpbi1sZWZ0OiA0cHg7XG5cdHBhZGRpbmctYm90dG9tOiAwcHg7XG5cdHRleHQtc2hhZG93OiAxcHggMXB4IDNweCByZ2JhKDAsIDAsIDAsIDEpO1xuXHRtaW4taGVpZ2h0OiAxNXB4O1xufVxuXG4uaGVhZGVyLW5hdmJhciAuc2VhcmNoICNzOmZvY3VzIHtcblx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cdGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuOCk7XG5cdGJvcmRlci1sZWZ0OiAxcHggZG90dGVkIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjgpO1xuXHRib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAuOCk7XG5cdGNvbG9yOiAjZmZmO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggI3M6Zm9jdXMge1xuXHRjb2xvcjogJGRhcms7XG5cdGJvcmRlci10b3A6IDFweCBkb3R0ZWQgcmdiYSgwLCAwLCAwLCAuMik7XG5cdGJvcmRlci1sZWZ0OiAxcHggZG90dGVkIHJnYmEoMCwgMCwgMCwgLjIpO1xuXHRib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgcmdiYSgwLCAwLCAwLCAuMik7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCA6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCA6Oi1tcy1wbGFjZWhvbGRlciB7XG5cdGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuXHR0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoIDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdGNvbG9yOiAkZGFyayRkYXJrICFpbXBvcnRhbnQ7XG5cdHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdGNvbG9yOiByZ2IoMTU4LCAxNTgsIDE1OCkgIWltcG9ydGFudDtcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaCA6Oi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG5cdGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuXHR0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoIDo6LW1vei1wbGFjZWhvbGRlciB7XG5cdGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuXHR0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoIDo6cGxhY2Vob2xkZXIge1xuXHRjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcblx0dGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbi5oZWFkZXItbmF2YmFyIC5uYXZiYXItc21hbGwgLnNlYXJjaDpiZWZvcmUsXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggI3MsXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggI3M6Zm9jdXMge1xuXHRjb2xvcjogJGRhcms7XG5cdHRleHQtc2hhZG93OiBub25lO1xufVxuXG4uYzkgLmhlYWRlci1uYXZiYXIgLm5hdmJhci1zbWFsbCAuc2VhcmNoOmJlZm9yZSxcbi5jOSAubmF2YmFyLXNtYWxsICNtZWdhLW1lbnUtd3JhcC1wcmltYXJ5ICNtZWdhLW1lbnUtcHJpbWFyeSBsaS5zZWFyY2g6YmVmb3JlIHtcblx0Y29sb3I6ICRkYXJrO1xufVxuXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggI3Mge1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGRhcms7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcblxuXHQuYzkgLmhlYWRlci1uYXZiYXIgbGkuc2VhcmNoLFxuXHQuYzkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGxpLnNlYXJjaCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5oZWFkZXItbmF2YmFyIC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5uYXYtc2VhcmNoIC5idG4tbmF2LXNlYXJjaCB7XG5cdFx0Y29sb3I6ICRsaWdodDtcblx0fVxuXG5cdC5oZWFkZXItbmF2YmFyIC5uYXZiYXI6bm90KC5uYXZiYXItc21hbGwpIC5zZWFyY2ggI3Mge1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZGFyaztcblx0XHRjb2xvcjogJGRhcms7XG5cdH1cblxuXHQuYzkgLm5hdmJhcjpub3QoLm5hdmJhci1zbWFsbCkgI21lZ2EtbWVudS13cmFwLXByaW1hcnkgI21lZ2EtbWVudS1wcmltYXJ5IGxpLnNlYXJjaDpiZWZvcmUsXG5cdC5jOSAubmF2YmFyOm5vdCgubmF2YmFyLXNtYWxsKSBsaS5zZWFyY2g6YmVmb3JlIHtcblx0XHRjb2xvcjogJGRhcms7XG5cdH1cblxuXHQuaGVhZGVyLW5hdmJhciAubmF2YmFyLXNtYWxsIC5zZWFyY2ggOjotbW96LXBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcblx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0fVxuXG5cdC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcblx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0fVxuXG5cdC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjotbXMtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuXHRcdHRleHQtc2hhZG93OiBub25lO1xuXHR9XG5cblx0LmhlYWRlci1uYXZiYXIgLnNlYXJjaCA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuXHRcdHRleHQtc2hhZG93OiBub25lO1xuXHR9XG5cblx0LmhlYWRlci1uYXZiYXIgLnNlYXJjaCA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcblx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0fVxuXG5cdC5oZWFkZXItbmF2YmFyIC5zZWFyY2ggOjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuXHRcdHRleHQtc2hhZG93OiBub25lO1xuXHR9XG5cblx0LmhlYWRlci1uYXZiYXIgLnNlYXJjaCA6Oi1tb3otcGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiAkZGFyayAhaW1wb3J0YW50O1xuXHRcdHRleHQtc2hhZG93OiBub25lO1xuXHR9XG5cblx0LmhlYWRlci1uYXZiYXIgLnNlYXJjaCA6OnBsYWNlaG9sZGVyIHtcblx0XHRjb2xvcjogJGRhcmsgIWltcG9ydGFudDtcblx0XHR0ZXh0LXNoYWRvdzogbm9uZTtcblx0fVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBUeXBvZ3JhcGh5ICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5oNCxcbi5oNSxcbi5oNixcbmg0LFxuaDUsXG5oNiB7XG5cdG1hcmdpbi1ib3R0b206IDAuMjVlbTtcbn1cblxuLmM5LXNpdGUtdGl0bGUsXG4uYzkgLmgxLFxuLmM5IC5oMixcbi5jOSAuaDMsXG4uYzkgLmg0LFxuLmM5IC5oNSxcbi5jOSAuaDYsXG4uYzkgaDEsXG4uYzkgaDIsXG4uYzkgaDMsXG4uYzkgaDQsXG4uYzkgaDUsXG4uYzkgaDYge1xuXHRsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xufVxuXG4uYzktdHhsLFxuLmRpc3BsYXktMSxcbi5kaXNwbGF5LTIsXG4uZGlzcGxheS0zLFxuLmRpc3BsYXktNCxcbi5kaXNwbGF5LTUsXG4uZGlzcGxheS02IHtcblx0bGluZS1oZWlnaHQ6IDEuMTtcbn1cblxuLmVudHJ5LWNvbnRlbnQsXG4ud3AtYmxvY2stcHVsbHF1b3RlLFxuLndwLWJsb2NrLXB1bGxxdW90ZSBibG9ja3F1b3RlIHAsXG4jd3JhcHBlci1mb290ZXIge1xuXHR3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbn1cblxuLm5hdmJhcixcbi5uYXZiYXIgdWwgbGkgLmRyb3Bkb3duLWl0ZW0sXG4ubmF2YmFyIHVsIGxpIGEsXG4ubWVnYS1tZW51LXdyYXAsXG4uaGVhZGVyLW5hdmJhciAubmF2YmFyIC5uYXYgLm5hdi1pdGVtIC5uYXYtbGluayxcbi5oZWFkZXItbmF2YmFyIC5uYXZiYXIgLm5hdiAubmF2LWl0ZW0gLmRyb3Bkb3duLWl0ZW0ge1xuXHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY7XG59XG5cbi54eGwtaGVhZGluZyAuYzktdHhsIHtcblx0Zm9udC1zaXplOiAxODBweCAhaW1wb3J0YW50O1xuXHRsaW5lLWhlaWdodDogMC45O1xuXHRsZXR0ZXItc3BhY2luZzogMC4wMmVtO1xufVxuXG4uYzkgLmM5LWhlYWRpbmcgaDEsXG4uYzkgLmM5LWhlYWRpbmcgaDIsXG4uYzkgLmM5LWhlYWRpbmcgaDMsXG4uYzkgLmM5LWhlYWRpbmcgaDQsXG4uYzkgLmM5LWhlYWRpbmcgaDUsXG4uYzkgLmM5LWhlYWRpbmcgaDYge1xuXHRsaW5lLWhlaWdodDogMTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjhweCkge1xuXHQueHhsLWhlYWRpbmcgLmM5LXR4bCB7XG5cdFx0Zm9udC1zaXplOiAxMDBweCAhaW1wb3J0YW50O1xuXHRcdGxpbmUtaGVpZ2h0OiAwLjk7XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcblx0fVxuXG5cdC5lbnRyeS1jb250ZW50IHBbY2xhc3MkPVwiLWZvbnQtc2l6ZVwiXSB7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAxcHgpIHtcblxuXHQvKiBzZWN0aW9uIGhlYWRpbmcgYWNjZW50cyAqL1xuXHQuZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5lZGl0b3ItcmljaC10ZXh0IC5zZWN0aW9uLWhlYWRpbmctYWNjZW50LFxuXHQuc2VjdGlvbi1oZWFkaW5nLWFjY2VudCxcblx0LmVkaXRvci1zdHlsZXMtd3JhcHBlciAuZWRpdG9yLXJpY2gtdGV4dCAuc2VjdGlvbi1oZWFkaW5nLWFjY2VudC1hbHQsXG5cdC5zZWN0aW9uLWhlYWRpbmctYWNjZW50LWFsdCxcblx0LmVudHJ5LWNvbnRlbnQgLnNlY3Rpb24taGVhZGluZy1hY2NlbnQtYWx0LFxuXHQuZW50cnktY29udGVudCBoMy5zZWN0aW9uLWhlYWRpbmctYWNjZW50LFxuXHQuZW50cnktY29udGVudCBoMy5zZWN0aW9uLWhlYWRpbmctYWNjZW50LWFsdCB7XG5cdFx0bWFyZ2luOiAxMHB4IGF1dG87XG5cdFx0Zm9udC1zaXplOiAxLjZlbTtcblx0XHRmb250LXdlaWdodDogNTAwO1xuXHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjA4ZW07XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Y29sb3I6ICRkYXJrO1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcblxuXHQvKiBzdWJoZWFkaW5ncyAqL1xuXHQuZW50cnktY29udGVudCAuc3ViaGVhZGluZzEsXG5cdC5lbnRyeS1jb250ZW50IC5zdWJoZWFkaW5nMixcblx0LmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmczLFxuXHQuZW50cnktY29udGVudCAuc3ViaGVhZGluZzQsXG5cdC5lbnRyeS1jb250ZW50IC5zdWJoZWFkaW5nNSxcblx0LndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmcxLFxuXHQud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzIsXG5cdC53cC1ibG9jay1oZWFkaW5nIC5zdWJoZWFkaW5nMyxcblx0LndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmc0LFxuXHQud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzUge1xuXHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0Zm9udC1zaXplOiAyLjZlbTtcblx0XHRsZXR0ZXItc3BhY2luZzogMC4wNTVlbTtcblx0fVxuXG5cdC5lbnRyeS1jb250ZW50IC5zdWJoZWFkaW5nMixcblx0LndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmcyLFxuXHQuc3ViaGVhZGluZzIge1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0Zm9udC1zaXplOiAyLjNlbTtcblx0XHRsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuXHR9XG5cblx0LmVudHJ5LWNvbnRlbnQgLnN1YmhlYWRpbmczLFxuXHQud3AtYmxvY2staGVhZGluZyAuc3ViaGVhZGluZzMsXG5cdC5zdWJoZWFkaW5nMyB7XG5cdFx0Zm9udC13ZWlnaHQ6IDEwMDtcblx0XHRmb250LXNpemU6IDJlbTtcblx0XHRsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0bGluZS1oZWlnaHQ6IDEuMjtcblx0fVxuXG5cdC5lbnRyeS1jb250ZW50IC5zdWJoZWFkaW5nNCxcblx0LndwLWJsb2NrLWhlYWRpbmcgLnN1YmhlYWRpbmc0LFxuXHQuc3ViaGVhZGluZzQge1xuXHRcdGZvbnQtc2l6ZTogMS42ZW07XG5cdFx0bGV0dGVyLXNwYWNpbmc6IDAuMDAxZW07XG5cdH1cblxuXHQuZW50cnktY29udGVudCAuc3ViaGVhZGluZzUsXG5cdC53cC1ibG9jay1oZWFkaW5nIC5zdWJoZWFkaW5nNSxcblx0LnN1YmhlYWRpbmc1IHtcblx0XHRmb250LXNpemU6IDEuNGVtO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjEyNWVtO1xuXHRcdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuXHR9XG5cblx0Lmljb24tbGFiZWwsXG5cdC5lbnRyeS1jb250ZW50IC5pY29uLWxhYmVsLFxuXHQud3AtYmxvY2staGVhZGluZyAuaWNvbi1sYWJlbCB7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0XHRmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG5cdFx0Zm9udC1zaXplOiAxLjhyZW0gIWltcG9ydGFudDtcblx0XHRsZXR0ZXItc3BhY2luZzogMC4yZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuMTtcblx0fVxuXG5cdC5lbnRyeS1tZXRhLFxuXHQuZW50cnktbWV0YSBhIHtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0Y29sb3I6ICRncmF5LTcwMDtcblx0fVxuXG5cdC5lbnRyeS1mb290ZXItY29udGVudCB7XG5cdFx0bWFyZ2luLXRvcDogMzBweDtcblx0fVxuXG5cdC5lbnRyeS1mb290ZXIgLmNvbW1lbnRzLWxpbmsge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0Zm9udC1zaXplOiAxLjJlbTtcblx0fVxuXG5cdC8qIFdvcmRQcmVzcyBHdXRlbmJlcmcgRm9udCBTaXplcyAqL1xuXHQuZW50cnktY29udGVudCAuaGFzLXNtYWxsLWZvbnQtc2l6ZSB7XG5cdFx0Zm9udC1zaXplOiAxLjRlbTtcblx0XHRsaW5lLWhlaWdodDogMS4zO1xuXHRcdGxldHRlci1zcGFjaW5nOiAwLjAyZW07XG5cdH1cbn1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtc3R5bGUtYmxhY2stYmFyW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdLFxuLmVudHJ5LWNvbnRlbnQgcC5pcy1zdHlsZS1ibGFjay1iYXIge1xuXHRkaXNwbGF5OiBibG9jaztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG5cdGZvbnQtc2l6ZTogMjBweDtcblx0bWluLWhlaWdodDogMTZweDtcblx0bWF4LWhlaWdodDogMjBweDtcblx0Y29sb3I6ICRkYXJrO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDZweDtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXN0eWxlLWJsYWNrLWJhcltkYXRhLXR5cGU9XCJjb3JlL3BhcmFncmFwaFwiXSBzdHJvbmcsXG4uZW50cnktY29udGVudCBwLmlzLXN0eWxlLWJsYWNrLWJhciBzdHJvbmcge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRjb2xvcjogJGRhcms7XG5cdHBhZGRpbmc6IDBweCAyMHB4O1xuXHRmb250LXdlaWdodDogYm9sZDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjdweCkge1xuXG5cdC5lbnRyeS1jb250ZW50IHAuaXMtc3R5bGUtYmxhY2stYmFyIHN0cm9uZyxcblx0LmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtc3R5bGUtYmxhY2stYmFyW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdIHN0cm9uZyB7XG5cdFx0bWluLWhlaWdodDogMTJweDtcblx0fVxuXG5cdC5lbnRyeS1jb250ZW50IHAuaXMtc3R5bGUtYmxhY2stYmFyIHN0cm9uZyxcblx0LmVkaXRvci1zdHlsZXMtd3JhcHBlciAuaXMtc3R5bGUtYmxhY2stYmFyW2RhdGEtdHlwZT1cImNvcmUvcGFyYWdyYXBoXCJdIHN0cm9uZyB7XG5cdFx0cGFkZGluZzogNXB4IDhweCAycHggOHB4ICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWJsYWNrLWJhcixcbi5jOSAuZW50cnktY29udGVudCAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLWJsYWNrLWJhciB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDIwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBwYWdlIHRpdGxlIGhlYWRlciBvbiBsb2dpbnMsIHNlYXJjaCwgcGFnZXMsIHBvc3RzLCBldGMuICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnBhZ2UtdGVtcGxhdGUtZnVsbHdpZHRocGFnZSAuYzkgLmVudHJ5LWhlYWRlcixcbi5jb250YWluZXItd2lkdGgtcGFnZS13cmFwcGVyLmM5IC5wYWdlIC5lbnRyeS1oZWFkZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbn1cblxuLmM5IC5lbnRyeS1oZWFkZXIge1xuXHRtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyAuaG9tZS1zZWFyY2ggLmVudHJ5LXRpdGxlIHtcblx0Y29sb3I6ICRsaWdodDtcblx0Zm9udC1zaXplOiA1ZW07XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRsZXR0ZXItc3BhY2luZzogMC4xMmVtO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdG1hcmdpbi10b3A6IDgwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMXB4KSB7XG5cdC5jOSAucGFnZSAuZW50cnktaGVhZGVyIGgxIHtcblx0XHRmb250LXNpemU6IDVlbTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Y29sb3I6ICRsaWdodDtcblx0XHRtYXJnaW46IDcwcHggYXV0bztcblx0XHRsaW5lLWhlaWdodDogMTtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSB7XG5cdC5jOSAucGFnZSAuZW50cnktaGVhZGVyIGgxIHtcblx0XHRmb250LXNpemU6IDhlbTtcblx0fVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCB1bm9yZGVyZWQgYW5kIG9yZGVyZWQgbGlzdCBzdHlsaW5ncyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZW50cnktY29udGVudCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMpOm5vdCguZ2ZpZWxkX2NoZWNrYm94KTpub3QoLmdmaWVsZF9yYWRpbyk6bm90KC5uYXYtdGFicyk6bm90KC5jOS1zaGFyZS1saXN0KTpub3QoLnByb2R1Y3RzKSBsaSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmlzLXJvb3QtY29udGFpbmVyPnVsOm5vdCgud3AtYmxvY2stZ2FsbGVyeSk6bm90KC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyk6bm90KC5nZmllbGRfY2hlY2tib3gpOm5vdCguZ2ZpZWxkX3JhZGlvKTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpOm5vdCgucHJvZHVjdHMpIGxpLFxuLmVudHJ5LWNvbnRlbnQgb2w6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzKTpub3QoLmdmaWVsZF9jaGVja2JveCk6bm90KC5nZmllbGRfcmFkaW8pOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCk6bm90KC5wcm9kdWN0cykgbGksXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5pcy1yb290LWNvbnRhaW5lcj5vbDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMpOm5vdCguZ2ZpZWxkX2NoZWNrYm94KTpub3QoLmdmaWVsZF9yYWRpbyk6bm90KC5uYXYtdGFicyk6bm90KC5jOS1zaGFyZS1saXN0KTpub3QoLnByb2R1Y3RzKSBsaSB7XG5cdGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgb2wgbGk6YmVmb3JlIHtcblx0bWFyZ2luLWxlZnQ6IC0yMXB4O1xufVxuXG4uZW50cnktY29udGVudCBvbCBsaSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmVkaXRvci1yaWNoLXRleHQgb2wgbGksXG4uZW50cnktY29udGVudCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCguYmxvY2tzLWdhbGxlcnktZ3JpZCk6bm90KC5wcm9kdWN0cyk6bm90KC5uYXYtdGFicyk6bm90KC5wYWdlLW51bWJlcnMpOm5vdCgud3AtYmxvY2stYXJjaGl2ZXMpOm5vdCgud3AtYmxvY2stc29jaWFsLWxpbmtzKSBsaSxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmVkaXRvci1yaWNoLXRleHQgdWw6bm90KC53cC1ibG9jay1nYWxsZXJ5KTpub3QoLmJsb2Nrcy1nYWxsZXJ5LWdyaWQpOm5vdCgucHJvZHVjdHMpOm5vdCgubmF2LXRhYnMpOm5vdCgucGFnZS1udW1iZXJzKTpub3QoLndwLWJsb2NrLWFyY2hpdmVzKTpub3QoLndwLWJsb2NrLXNvY2lhbC1saW5rcykgbGkge1xuXHRtYXJnaW46IDE1cHggMHB4O1xufVxuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIG9sIGxpLFxuLmVudHJ5LWNvbnRlbnQgb2wgbGkge1xuXHRwYWRkaW5nLWxlZnQ6IDBweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MTRweCkge1xuXHQuYzkgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicy5yZXNvdXJjZXMtdGFicyB1bC5uYXYubmF2LXRhYnMge1xuXHRcdG1hcmdpbi10b3A6IDBweDtcblx0fVxuXG5cdC5jOSAuZW50cnktY29udGVudCAuYzktaG9yaXpvbnRhbC10YWJzLnJlc291cmNlcy10YWJzIC5jOS1ob3Jpem9udGFsLXRhYnMtdGFiIHVsOm5vdCguYmxvY2tzLWdhbGxlcnktZ3JpZCk6bm90KC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyk6bm90KC5nZmllbGRfY2hlY2tib3gpOm5vdCguZ2ZpZWxkX3JhZGlvKTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpOm5vdCgucHJvZHVjdHMpIHtcblx0XHRtYXJnaW46IDBweDtcblx0fVxuXG5cdC5ob21lIC5jOS1ob3Jpem9udGFsLXRhYnMtdGFiOmxhc3QtY2hpbGQgLndwLWJsb2NrLXNwYWNlciB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXG5cdC5ob21lIC5ieS11c2VyLWdhbGxlcnkgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW06bnRoLWNoaWxkKDMpIHtcblx0XHRtYXgtd2lkdGg6IDUwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bWFyZ2luOiAwcHggYXV0bztcblx0fVxufVxuXG4uZW50cnktY29udGVudCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpIGxpLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuZWRpdG9yLXJpY2gtdGV4dCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpIGxpIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGhvcml6b250YWwgcnVsZXMgY3VzdG9taXplZCovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWNvbHVtbiAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLXdpZGUsXG4ud3AtYmxvY2stY29sdW1ucyAud3AtYmxvY2stc2VwYXJhdG9yLmlzLXN0eWxlLXdpZGUge1xuXHR3aWR0aDogNjAlO1xuXHRtYXgtd2lkdGg6IDYwJTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiByZXNvdXJjZXMgZ3VpZGUgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNHB4KSB7XG5cdC5jOS1ncmlkLnA1IC5jOS1sYXlvdXQtY29sdW1ucy0yIC5jOS1jb2x1bW4taW5uZXIgdWw6bm90KC53cC1ibG9jay1nYWxsZXJ5KSB7XG5cdFx0bWFyZ2luOiAwcHggIWltcG9ydGFudDtcblx0fVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBUYWJzICsgVG9nZ2xlcyAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi8qIGJpZyBzdHlsZSB0b2dnbGVzICovXG5cbi5jOSAuYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy10b2dnbGUsXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jOS10b2dnbGVzIC5jOS10b2dnbGVzLXRvZ2dsZSB7XG5cdHBhZGRpbmc6IDI5cHggMHB4IDE1cHggMHB4O1xuXHRib3JkZXItdG9wOiAxcHggc29saWQgIzk3OTc5Nztcbn1cblxuLmM5IC5jOS10b2dnbGVzIC5jOS10b2dnbGVzLXRvZ2dsZSAuYzktdG9nZ2xlcy1pdGVtLWNvbGxhcHNlIHtcblx0dG9wOiAtNHB4O1xufVxuXG4uYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy10b2dnbGU6bGFzdC1jaGlsZCB7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjOTc5Nzk3O1xufVxuXG4uYzktdmVydGljYWwtdGFicyAuYzktdGFicy1jb250ZW50LnRhYi1jb250ZW50IHtcblx0cGFkZGluZzogMjVweDtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLWRlZmF1bHQgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nIC5jOS10b2dnbGVzLXRvZ2dsZS1sYWJlbCxcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtZGVmYXVsdCAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmcgLmM5LXRvZ2dsZXMtdG9nZ2xlLWxhYmVsIHtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0Y29sb3I6ICRkYXJrO1xuXHRmb250LXNpemU6IDcuOWVtO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRsaW5lLWhlaWdodDogMC45O1xuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjVzIGVhc2Utb3V0O1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nOmhvdmVyIC5jOS10b2dnbGVzLXRvZ2dsZS1sYWJlbCB7XG5cdGNvbG9yOiAkZ3JheS05MDA7XG59XG5cbi5jOSAuYzktdG9nZ2xlcyAuYzktdG9nZ2xlcy1pdGVtLWhlYWRpbmcge1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi8qIHNtYWxsIHN0eWxlIHRvZ2dsZSAqL1xuXG4uZWRpdG9yLXN0eWxlcy13cmFwcGVyIC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZyAuYzktdG9nZ2xlcy10b2dnbGUtbGFiZWwsXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nIC5jOS10b2dnbGVzLXRvZ2dsZS1sYWJlbCB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcblx0dGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSAuZmEtYW5nbGUtcmlnaHQ6YmVmb3JlLFxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0tY29sbGFwc2UgLmZhLWFuZ2xlLXJpZ2h0OmJlZm9yZSB7XG5cdGNvbG9yOiAkcHJpbWFyeTtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIHtcblx0cGFkZGluZzogMTVweCAwcHg7XG5cdGJvcmRlcjogbm9uZTtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlOmxhc3QtY2hpbGQge1xuXHRib3JkZXI6IG5vbmU7XG59XG5cbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAubWItMCB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZyB7XG5cdHBhZGRpbmctbGVmdDogNTBweDtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZyAuYzktdG9nZ2xlcy10b2dnbGUtbGFiZWwge1xuXHRmb250LXNpemU6IDIuNGVtO1xuXHRjb2xvcjogJGRhcms7XG5cdGxldHRlci1zcGFjaW5nOiAwLjA1cHg7XG5cdHRleHQtYWxpZ246IGxlZnQ7XG5cdGxpbmUtaGVpZ2h0OiAxLjI7XG5cdHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0bGVmdDogLTUwcHg7XG5cdHRvcDogMTNweDtcblx0cmlnaHQ6IGF1dG87XG59XG5cbi5jOSAuYzktdG9nZ2xlcy5pcy1zdHlsZS10b2dnbGVzLXNtYWxsIC5jOS10b2dnbGVzLXRvZ2dsZSAuYzktdG9nZ2xlcy1pdGVtLWNvbGxhcHNlIC5mYXMsXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nOm5vdChbZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiXSkgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSAuZmEtYW5nbGUtcmlnaHQsXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1oZWFkaW5nW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIC5jOS10b2dnbGVzLWl0ZW0tY29sbGFwc2UgLmZhLWFuZ2xlLXJpZ2h0IHtcblx0dHJhbnNmb3JtOiBub25lO1xufVxuXG4uYzkgLmM5LXRvZ2dsZXMuaXMtc3R5bGUtdG9nZ2xlcy1zbWFsbCAuYzktdG9nZ2xlcy10b2dnbGUgLmM5LXRvZ2dsZXMtaXRlbS1jb2xsYXBzZSB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXHRib3JkZXI6IDIuOHB4IHNvbGlkICRkYXJrO1xuXHRwYWRkaW5nOiA1cHg7XG5cdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0aGVpZ2h0OiAyN3B4O1xuXHR3aWR0aDogMjdweDtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5mYS1hbmdsZS1yaWdodDpiZWZvcmUge1xuXHRjb250ZW50OiBcIlxcZjA2N1wiO1xuXHRjb2xvcjogI2ViYjkwMDtcblx0Zm9udC1zaXplOiAxNnB4O1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZy10b3A6IDJweDtcbn1cblxuLmM5IC5jOS10b2dnbGVzLmlzLXN0eWxlLXRvZ2dsZXMtc21hbGwgLmM5LXRvZ2dsZXMtdG9nZ2xlIC5jOS10b2dnbGVzLWl0ZW0taGVhZGluZ1thcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSAuZmEtYW5nbGUtcmlnaHQ6YmVmb3JlIHtcblx0Y29udGVudDogXCJcXGYwNjhcIjtcbn1cblxuLyogdGFicyAqL1xuXG4uYzkgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicyB1bC5uYXYubmF2LXRhYnMge1xuXHRtYXJnaW46IDMwcHggMHB4IDBweCAwcHg7XG59XG5cbi5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgLmJsb2Nrcy1nYWxsZXJ5LWdyaWQgLmJsb2Nrcy1nYWxsZXJ5LWl0ZW0gYSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmM5LWhvcml6b250YWwtdGFicyAubmF2LXRhYnMgLm5hdi1saW5rLFxuLndvb2NvbW1lcmNlIC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpIGEge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjYWRiMWIyO1xuXHRjb2xvcjogJGdyYXktNzAwO1xufVxuXG4uZW50cnktY29udGVudCAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSB7XG5cdG1hcmdpbjogMHB4IDEwcHg7XG59XG5cbi5jOSAuYzktaG9yaXpvbnRhbC10YWJzIC5uYXYtdGFicyAubmF2LWxpbms6aG92ZXIsXG4ud29vY29tbWVyY2UgLmM5IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkgYTpob3ZlciB7XG5cdGNvbG9yOiAkZ3JheS03MDA7XG5cdGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgzNWRlZywgI2ZmZiA3NSUsICRwcmltYXJ5IDI1JSk7XG5cdGJhY2tncm91bmQtY29sb3I6ICRsaWdodDtcblx0Ym9yZGVyLWJvdHRvbTogMHB4O1xufVxuXG4uYzkgLmM5LWhvcml6b250YWwtdGFicyAubmF2LXRhYnMgLm5hdi1saW5rLmFjdGl2ZSxcbi53b29jb21tZXJjZSAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaS5hY3RpdmUgYS5uYXYtbGluayB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xufVxuXG4ud29vY29tbWVyY2UgLmM5IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlOmFmdGVyLFxuLndvb2NvbW1lcmNlIC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzIGxpOmFmdGVyIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzPmxpPi5uYXYtbGluayB7XG5cdHBhZGRpbmc6IDEzcHggNTVweDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQuYzkgLmM5LWhvcml6b250YWwtdGFicyAubmF2LXRhYnMgLm5hdi1saW5rIHtcblx0XHRwYWRkaW5nOiAxM3B4IDIwcHg7XG5cdH1cblxuXHQuYzkgLmVudHJ5LWNvbnRlbnQgLm5hdi5uYXYtdGFicyAubmF2LWl0ZW0ge1xuXHRcdG1hcmdpbjogMHB4IDdweDtcblx0fVxuXG5cdC5jOSAuZW50cnktY29udGVudCAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbTpmaXJzdC1jaGlsZCB7XG5cdFx0bWFyZ2luLWxlZnQ6IDBweDtcblx0fVxuXG5cdC5jOSAuZW50cnktY29udGVudCAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbTpsYXN0LWNoaWxkIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDBweDtcblx0fVxufVxuXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaS5hY3RpdmUsXG4ud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSB7XG5cdGJvcmRlci1yYWRpdXM6IDA7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRtYXJnaW46IDBweDtcblx0cGFkZGluZzogMHB4O1xuXHRib3JkZXItYm90dG9tOiAwcHg7XG5cdG1hcmdpbi1yaWdodDogMTJweDtcbn1cblxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMge1xuXHRwYWRkaW5nLWxlZnQ6IDBweDtcbn1cblxuLndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGk6bGFzdC1jaGlsZCB7XG5cdG1hcmdpbi1yaWdodDogMHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cblx0Lndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnMgbGkuYWN0aXZlLFxuXHQud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSB7XG5cdFx0bWFyZ2luLXJpZ2h0OiA4cHg7XG5cdH1cblxuXHQud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicyBsaSAubmF2LWxpbmsge1xuXHRcdHBhZGRpbmc6IDExcHggMTlweDtcblx0fVxuXG5cdC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi5uYXYtdGFicyAubmF2LWl0ZW0sXG5cdC5wcm9kdWN0IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi5uYXYtdGFicyAubmF2LWl0ZW0ge1xuXHRcdG1hcmdpbjogMHB4IDZweDtcblx0fVxuXG5cdC53b29jb21tZXJjZS5zaW5nbGUtcHJvZHVjdCAuYzkgZGl2LnByb2R1Y3QgLndvb2NvbW1lcmNlLXRhYnMgdWwudGFicz5saT4ubmF2LWxpbmsge1xuXHRcdHBhZGRpbmc6IDEzcHggMzBweDtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY2N3B4KSB7XG5cblx0LmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicyAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSxcblx0LnByb2R1Y3QgLmM5LWhvcml6b250YWwtdGFicyAubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSB7XG5cdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0bWFyZ2luOiAwcHggM3B4O1xuXHR9XG5cblx0LmM5LWhvcml6b250YWwtdGFicyAubmF2LXRhYnMgLm5hdi1saW5rIHtcblx0XHRwYWRkaW5nOiAxMXB4IDE5cHg7XG5cdFx0Zm9udC1zaXplOiAxLjFlbTtcblx0fVxuXG5cdC5lbnRyeS1jb250ZW50IC5jOS1ob3Jpem9udGFsLXRhYnMgLm5hdi5uYXYtdGFicyxcblx0LnByb2R1Y3QgLmM5LWhvcml6b250YWwtdGFicyAubmF2Lm5hdi10YWJzIHtcblx0XHRwYWRkaW5nOiAwcHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MTRweCkge1xuXHQud29vY29tbWVyY2Uuc2luZ2xlLXByb2R1Y3QgLmM5IGRpdi5wcm9kdWN0IC53b29jb21tZXJjZS10YWJzIHVsLnRhYnM+bGkge1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbjogMHB4O1xuXHR9XG5cblx0Lndvb2NvbW1lcmNlLnNpbmdsZS1wcm9kdWN0IC5jOSBkaXYucHJvZHVjdCAud29vY29tbWVyY2UtdGFicyB1bC50YWJzPmxpPmEge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXG5cdC5jOSAuZW50cnktY29udGVudCAuYzktaG9yaXpvbnRhbC10YWJzPi5uYXYubmF2LXRhYnMsXG5cdC5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LWhvcml6b250YWwtdGFicz4ubmF2Lm5hdi10YWJzIHtcblx0XHRmbGV4LXdyYXA6IHdyYXA7XG5cdH1cblxuXHQuYzkgLmVudHJ5LWNvbnRlbnQgLmM5LWhvcml6b250YWwtdGFicz4ubmF2Lm5hdi10YWJzIC5uYXYtaXRlbSB7XG5cdFx0ZmxleC1ncm93OiAxO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRtYXJnaW46IDNweDtcblx0fVxuXG5cdC5jOSAuYzktaG9yaXpvbnRhbC10YWJzIC5uYXYtdGFicyAubmF2LWxpbmsge1xuXHRcdHBhZGRpbmc6IDEzcHggMTBweDtcblx0fVxuXG5cdC5zaW5nbGUtcHJvZHVjdCAuYzktaG9yaXpvbnRhbC10YWJzPi5uYXYubmF2LXRhYnMgLm5hdi1saW5rIHtcblx0XHRmb250LXNpemU6IDExcHg7XG5cdH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgU2VhcmNoICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5zZWFyY2gtcmVzdWx0cyAjd3JhcHBlci1uYXZiYXIsXG4uYzkuc2VhcmNoICN3cmFwcGVyLW5hdmJhcixcbi5zZWFyY2gtbm8tcmVzdWx0cyAjd3JhcHBlci1uYXZiYXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuXHQuc2VhcmNoLXJlc3VsdHMgI3dyYXBwZXItbmF2YmFyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSB7XG5cdC5wYWdlLXNlYXJjaC1yZXN1bHRzIHtcblx0XHRtYXJnaW4tdG9wOiAxMzVweDtcblx0fVxufVxuXG4uc2VhcmNoLXJlc3VsdHMgLnNpdGUtbWFpbiAuY29udGFpbmVyIC5lbnRyeS1zdW1tYXJ5IHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnNlYXJjaC1yZXN1bHRzIC5zaXRlLW1haW4gLmNvbnRhaW5lciAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSBhIHtcblx0Y29sb3I6ICRkYXJrO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjNzO1xufVxuXG4uc2VhcmNoLXJlc3VsdHMgLnNpdGUtbWFpbiAuY29udGFpbmVyIC5lbnRyeS1oZWFkZXIgLmVudHJ5LXRpdGxlIGE6aG92ZXIge1xuXHRjb2xvcjogJHByaW1hcnk7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogZnVsbHNjcmVlbiBzZWFyY2ggKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4jZnVsbHNjcmVlbnNlYXJjaCAuYnRuIHtcblx0Zm9udC1zaXplOiAyZW07XG5cdGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRjb2xvcjogJGxpZ2h0O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqIFdvcmRQcmVzcyBQYXNzd29yZCBGb3JtICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLnBvc3QtcGFzc3dvcmQtZm9ybSBwIGxhYmVsIHtcblx0Zm9udC1zaXplOiAyMHB4O1xufVxuXG4ucG9zdC1wYXNzd29yZC1mb3JtIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuXHRtaW4taGVpZ2h0OiA1NXB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBBcmNoaXZlLCBUYWcsIENhdGVnb3J5LCBCbG9nIEluZGV4ICsgRGVmYXVsdCBIb21lIEJsb2cgUG9zdHMsIFNlYXJjaCBSZXN1bHRzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5ibG9nIC5jOSAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSBhLFxuLmFyY2hpdmUgLmM5IC5lbnRyeS10aXRsZSBhLFxuLnNlYXJjaC1yZXN1bHRzIC5jOSAuZW50cnktdGl0bGUgYSB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmJsb2cgLmM5IC5lbnRyeS1oZWFkZXIgLmVudHJ5LXRpdGxlIGE6Zm9jdXMsXG4uYXJjaGl2ZSAuYzkgLmVudHJ5LXRpdGxlIGE6Zm9jdXMsXG4uc2VhcmNoLXJlc3VsdHMgLmM5IC5lbnRyeS10aXRsZSBhOmZvY3VzIHtcblx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG59XG5cbi5ibG9nIC5jOSAuZW50cnktaGVhZGVyIC5lbnRyeS10aXRsZSxcbi5hcmNoaXZlIC5jOSAuZW50cnktdGl0bGUsXG4uc2VhcmNoLXJlc3VsdHMgLmM5IC5lbnRyeS10aXRsZSB7XG5cdGxpbmUtaGVpZ2h0OiAxLjE7XG5cdGZvbnQtc2l6ZTogMmVtO1xufVxuXG4uc2VhcmNoLXJlc3VsdHMgLmVudHJ5LWZvb3RlciB7XG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xufVxuXG4uc2VhcmNoLXJlc3VsdHMgLmNhdC1saW5rcyxcbi5zZWFyY2gtcmVzdWx0cyAudGFncy1saW5rcyB7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRmb250LXNpemU6IDAuN2VtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBCbG9nIFNpbmdsZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZW50cnktYmlnLWhlYWRlciAuZW50cnktdGl0bGUtYm94IC5lbnRyeS1tZXRhLFxuLmVudHJ5LWJpZy1oZWFkZXIgLmVudHJ5LXRpdGxlLWJveCAuZW50cnktbWV0YSAuYXV0aG9yIGEsXG4uZW50cnktYmlnLWhlYWRlciAuZW50cnktdGl0bGUtYm94IC5lbnRyeS1tZXRhIC5ieWxpbmUsXG4uZW50cnktYmlnLWhlYWRlciAuZW50cnktdGl0bGUtYm94IC5lbnRyeS1tZXRhIC5wb3N0ZWQtb24sXG4uZW50cnktYmlnLWhlYWRlciAuZW50cnktdGl0bGUtYm94IC5lbnRyeS1tZXRhIC5wb3N0ZWQtb24gYSB7XG5cdGNvbG9yOiAkbGlnaHQ7XG5cdGZvbnQtc2l6ZTogMTJweDtcbn1cblxuLmVudHJ5LW1ldGEgLnVwZGF0ZWQge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBBbmltYXRpb25zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbiNpY29uLW1vdXNlLXNjcm9sbCB7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bWFyZ2luOiBhdXRvO1xuXHR3aWR0aDogMjVweDtcblx0aGVpZ2h0OiAyNXB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBGb290ZXIgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmZvb3Rlci1lbnRpcmV0eSB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0ei1pbmRleDogNDA7XG59XG5cbiN3cmFwcGVyLWZvb3Rlci1mdWxsIHtcblx0Y29sb3I6ICRncmF5LTEwMDtcblx0YmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cdG1hcmdpbi10b3A6IDBweDtcblx0Ym9yZGVyLXRvcDogMXB4IHNvbGlkICNkOGQ4ZDg7XG59XG5cbiN3cmFwcGVyLWZvb3RlciB7XG5cdGNvbG9yOiAkZ3JheS0xMDA7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbiN3cmFwcGVyLWZvb3Rlci1mdWxsIC53aWRnZXRfbmF2X21lbnUgYSxcbiN3cmFwcGVyLWZvb3Rlci1mdWxsIGEge1xuXHRjb2xvcjogJGxpbmstY29sb3I7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuI3dyYXBwZXItZm9vdGVyLWZ1bGwgYTpob3ZlciB7XG5cdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHRjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XG59XG5cbi5mb290ZXItd3JhcHBlciB7XG5cdGJvcmRlci10b3A6IDFweCBzb2xpZCAjZDhkOGQ4O1xufVxuXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyLFxuI3dyYXBwZXItZm9vdGVyIC5zaXRlLWZvb3RlciAucm93LFxuI3dyYXBwZXItZm9vdGVyIC5zaXRlLWZvb3RlciAucm93IHAsXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIC5jb3B5cmlnaHQge1xuXHRsaW5lLWhlaWdodDogMS4xO1xufVxuXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIHAsXG4uZm9vdGVyLWxpbmtzIGEsXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIGEge1xuXHR0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuXHRjb2xvcjogIzRhNGE0YTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDVweDtcblx0dHJhbnNpdGlvbjogY29sb3IgMC4zcztcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4jd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIGE6aG92ZXIge1xuXHRjb2xvcjogJGRhcms7XG59XG5cbi5mb290ZXItc29jaWFsIGEge1xuXHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG59XG5cbi5mb290ZXItc29jaWFsIGEgaTpiZWZvcmUge1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi5mb290ZXItc29jaWFsIGEgLmZhYjpiZWZvcmUge1xuXHRjb2xvcjogJGdyYXktMjAwO1xuXHR0cmFuc2l0aW9uOiBjb2xvciAwLjRzO1xuXHRmb250LWZhbWlseTogXCJmb250YXdlc29tZVwiO1xufVxuXG4uZm9vdGVyLXNvY2lhbCBhOmhvdmVyIC5mYWI6YmVmb3JlIHtcblx0Y29sb3I6ICRkYXJrO1xufVxuXG4uZm9vdGVyLXNvY2lhbC13cmFwcGVyIHtcblx0bWFyZ2luLXRvcDogLTVweDtcbn1cblxuLmZvb3Rlci1zZWFyY2gge1xuXHRtYXJnaW4tdG9wOiAtMTBweDtcbn1cblxuLmZvb3Rlci1zZWFyY2ggLmlucHV0LWdyb3VwIC5pbnB1dC1ncm91cC1hcHBlbmQge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG4uZm9vdGVyLXNlYXJjaCAuaW5wdXQtZ3JvdXAge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6IDIwO1xuXHRtYXgtd2lkdGg6IDE4MHB4O1xufVxuXG4uZm9vdGVyLXNlYXJjaCAuaW5wdXQtZ3JvdXA6YWZ0ZXIge1xuXHRmb250LWZhbWlseTogXCJGb250QXdlc29tZVwiO1xuXHRjb2xvcjogIzliOWI5Yjtcblx0Y29udGVudDogXCJcXGYwMDJcIjtcblx0Zm9udC1zaXplOiAxLjZlbTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogMTBweDtcblx0dG9wOiA1MCU7XG5cdHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblx0ei1pbmRleDogMjI7XG59XG5cbi5mb290ZXItc2VhcmNoIC5pbnB1dC1ncm91cC5zZWFyY2gtZmllbGQge1xuXHRwYWRkaW5nOiAxMHB4IDEycHg7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC5mb290ZXItc2VhcmNoIHtcblx0XHRtYXJnaW4tdG9wOiAzMHB4O1xuXHR9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY3cHgpIHtcblx0LmZvb3Rlci13aWRnZXQud2lkZ2V0LWNvcnRleC1pbnN0YWdyYW0ge1xuXHRcdHBhZGRpbmctYm90dG9tOiAwcHg7XG5cdH1cblxuXHQjd3JhcHBlci1mb290ZXIgLnNpdGUtZm9vdGVyIHtcblx0XHRwYWRkaW5nOiAyMHB4IDBweDtcblx0fVxuXG5cdCNuYXZfbWVudS02IHtcblx0XHRkaXNwbGF5OiBub25lO1xuXHR9XG5cblx0I25hdl9tZW51LTcsXG5cdCNuYXZfbWVudS04IHtcblx0XHRtYXgtd2lkdGg6IDUwJTtcblx0fVxuXG5cdC5mb290ZXItc29jaWFsLXdyYXBwZXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdG1hcmdpbi1ib3R0b206IDE1cHg7XG5cdH1cblxuXHQuZm9vdGVyLWxpbmtzLXdyYXBwZXIge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHR9XG5cblx0LmZvb3Rlci1jb3B5cmlnaHQtd3JhcHBlciB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG5cblx0LmZvb3Rlci1zZWFyY2gtd3JhcHBlciB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzNzVweCkge1xuXHQuY29weXJpZ2h0IHtcblx0XHRtYXJnaW4tdG9wOiAxNXB4O1xuXHR9XG59XG5cbiN3cmFwcGVyLWZvb3RlciAuc2l0ZS1mb290ZXIgLmZvb3Rlci1jb3B5cmlnaHQtd3JhcHBlciAuY29weXJpZ2h0IHtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgd2lkZ2V0IGN1c3RvbWl6YXRpb25zKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBhbGwgd2lkZ2V0cyAqL1xuXG4uZm9vdGVyLXdpZGdldCAubWVudSAubWVudS1pdGVtLFxuLmZvb3Rlci13aWRnZXQ+dWw+bGkge1xuXHRmb250LXNpemU6IDE1cHg7XG5cdGxpbmUtaGVpZ2h0OiAyO1xuXHRwYWRkaW5nLWxlZnQ6IDBweDtcblx0bWFyZ2luOiAwO1xufVxuXG4uZm9vdGVyLXdpZGdldCBoMyB7XG5cdGZvbnQtc2l6ZTogMmVtO1xuXHRsZXR0ZXItc3BhY2luZzogMC4wNGVtO1xuXHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRsaW5lLWhlaWdodDogMTtcblx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuXHRjb2xvcjogJGRhcms7XG5cdGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmZvb3Rlci13aWRnZXQgLm1lbnUgLm1lbnUtaXRlbSBhIHtcblx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1zYW5zLXNlcmlmO1xuXHRsZXR0ZXItc3BhY2luZzogMC4wNHB4O1xufVxuXG4uZm9vdGVyLXdpZGdldC53aWRnZXRfY3VzdG9tX2h0bWw6bGFzdC1jaGlsZCAud2lkZ2V0LXRpdGxlOmJlZm9yZSB7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Y29udGVudDogXCJcXGYxNmRcIjtcblx0Zm9udC1mYW1pbHk6IFwiRm9udEF3ZXNvbWVcIjtcblx0Y29sb3I6ICM5YjliOWI7XG5cdHBhZGRpbmctcmlnaHQ6IDRweDtcbn1cblxuLmZvb3Rlci13aWRnZXQgLnNiX2luc3RhZ3JhbV9oZWFkZXIsXG4uZm9vdGVyLXdpZGdldCAjc2JfaW5zdGFncmFtICNzYmlfbG9hZCAuc2JpX2xvYWRfYnRuIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuI3NiX2luc3RhZ3JhbSAuc2JpX2ZvbGxvd19idG4gYSB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRjb2xvcjogIzRhNGE0YTtcbn1cblxuI3NiX2luc3RhZ3JhbSAuc2JpX2ZvbGxvd19idG4gYTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXHRib3gtc2hhZG93OiBub25lO1xuXHRjb2xvcjogJGRhcms7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmZvb3Rlci13aWRnZXQgLmluc3RhZ3JhbS1waWNzIHtcblx0bWFyZ2luOiAwcHg7XG5cdHBhZGRpbmc6IDBweDtcbn1cblxuLmZvb3Rlci13aWRnZXQgLmluc3RhZ3JhbS1waWNzIGxpIHtcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0cGFkZGluZzogMHB4O1xuXHRtYXgtd2lkdGg6IDQ4JTtcblx0bWFyZ2luOiAxJSA0JSA0JSAwJTtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG4uZm9vdGVyLXdpZGdldCAuaW5zdGFncmFtLXBpY3MgbGk6bnRoLWNoaWxkKGV2ZW4pIHtcblx0bWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIENsaWVudCBHcmF2aXR5IEZvcm1zICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5jOSAuZ2Zvcm1fd3JhcHBlciBsYWJlbC5nZmllbGRfbGFiZWwsXG4uYzkgLmdmb3JtX3dyYXBwZXIgbGVnZW5kLmdmaWVsZF9sYWJlbCxcbi53cC1ibG9ja1tkYXRhLXR5cGU9XCJncmF2aXR5Zm9ybXMvYmxvY2tcIl0gLmdmb3JtX3dyYXBwZXIgbGFiZWwuZ2ZpZWxkX2xhYmVsLFxuLndwLWJsb2NrW2RhdGEtdHlwZT1cImdyYXZpdHlmb3Jtcy9ibG9ja1wiXSAuZ2Zvcm1fd3JhcHBlciBsZWdlbmQuZ2ZpZWxkX2xhYmVsLFxuLmM5IC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSB7XG5cdGZvbnQtc2l6ZTogMThweDtcbn1cblxuLmM5IC5nZm9ybV9jb25maXJtYXRpb25fbWVzc2FnZSB7XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cbi5jOSAuZ2Zvcm1fd3JhcHBlciBpbnB1dDpub3QoW3R5cGU9XCJyYWRpb1wiXSk6bm90KFt0eXBlPVwiY2hlY2tib3hcIl0pOm5vdChbdHlwZT1cInN1Ym1pdFwiXSk6bm90KFt0eXBlPVwiYnV0dG9uXCJdKTpub3QoW3R5cGU9XCJpbWFnZVwiXSk6bm90KFt0eXBlPVwiZmlsZVwiXSksXG4uYzkgLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLmM5IC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4uYzkgLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4uYzkgLmdmb3JtX3dyYXBwZXIgdGV4dGFyZWEsXG4ud3AtYmxvY2tbZGF0YS10eXBlPVwiZ3Jhdml0eWZvcm1zL2Jsb2NrXCJdIC5nZm9ybV93cmFwcGVyIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbi53cC1ibG9ja1tkYXRhLXR5cGU9XCJncmF2aXR5Zm9ybXMvYmxvY2tcIl0gLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi53cC1ibG9ja1tkYXRhLXR5cGU9XCJncmF2aXR5Zm9ybXMvYmxvY2tcIl0gLmdmb3JtX3dyYXBwZXIgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4ud3AtYmxvY2tbZGF0YS10eXBlPVwiZ3Jhdml0eWZvcm1zL2Jsb2NrXCJdIC5nZm9ybV93cmFwcGVyIHRleHRhcmVhIC5jOSBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sXG4uYzkgaW5wdXRbdHlwZT1cInRlbFwiXSxcbi5jOSBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbi5jOSBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4uYzkgaW5wdXRbdHlwZT1cInVybFwiXSxcbi5jOSB0ZXh0YXJlYSxcbi5jOSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnNlYXJjaC1mb3JtIC5zZWFyY2gtZmllbGQsXG4uZm9vdGVyLXNlYXJjaC13cmFwcGVyIC5maWVsZFt0eXBlPXRleHRdIHtcblx0Zm9udC1zaXplOiAxNnB4O1xuXHRtaW4taGVpZ2h0OiA1NXB4O1xufVxuXG4uYzkgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3Rlcixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciB7XG5cdGZvbnQtc2l6ZTogMTBweDtcbn1cblxuLmM5IC5lbnRyeS1jb250ZW50IHVsLmdmb3JtX2ZpZWxkcyB7XG5cdHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5naW5wdXRfY2FyZF9leHBpcmF0aW9uX2NvbnRhaW5lciBzZWxlY3QsXG4uZ2lucHV0X2NhcmRfZXhwaXJhdGlvbl9jb250YWluZXIgbGFiZWwge1xuXHRmbG9hdDogbGVmdDtcbn1cblxuLmM5IC5naW5wdXRfY29udGFpbmVyX2NyZWRpdGNhcmQgbGFiZWwsXG4uYzkgLmdpbnB1dF9jYXJkX2V4cGlyYXRpb25fY29udGFpbmVyIGxhYmVsIHtcblx0bWFyZ2luLWJvdHRvbTogMTBweCAhaW1wb3J0YW50O1xufVxuXG4uZ2lucHV0X2NhcmRfZXhwaXJhdGlvbl9jb250YWluZXI6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRkaXNwbGF5OiBibG9jaztcblx0Y2xlYXI6IGJvdGg7XG59XG5cbi5jOSAuZ2Zvcm1fd3JhcHBlciAuZmllbGRfZGVzY3JpcHRpb25fYmVsb3cgLmdmaWVsZF9kZXNjcmlwdGlvbiB7XG5cdHBhZGRpbmctdG9wOiAwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogRmlsZSBBdHRhY2htZW50cyArIFN1Ym1pdCBCdXR0b25zICovXG5cbi5jOSAuZ2Zvcm1fd3JhcHBlciBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX3NhZmFyaSBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlci5nZl9icm93c2VyX2Nocm9tZSBpbnB1dC5idXR0b24uZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyxcbi5jOSAuZ2Zvcm1fd3JhcHBlciAuZ2Zvcm1fZm9vdGVyIGlucHV0LmJ1dHRvbixcbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmdmb3JtX3dyYXBwZXIgLmdmb3JtX2Zvb3RlciBpbnB1dC5idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgI2ViYjkwMCAwJSwgI2VhZGMyMyAxMDAlKTtcblx0cGFkZGluZzogMTlweCAyOHB4IDE0cHggMjhweCAhaW1wb3J0YW50O1xuXHRjb2xvcjogJGRhcms7XG5cdGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG5cdGZvbnQtc2l6ZTogMi45OWVtO1xuXHRsZXR0ZXItc3BhY2luZzogMC4wMWVtO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHRib3JkZXItcmFkaXVzOiAwcHg7XG5cdGJvcmRlcjogMHB4O1xufVxuXG4uZW50cnktY29udGVudCB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCkgbGkuZ2ZpZWxkLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciB1bDpub3QoLndwLWJsb2NrLWdhbGxlcnkpOm5vdCgubmF2LXRhYnMpOm5vdCguYzktc2hhcmUtbGlzdCkgbGkuZ2ZpZWxkIHtcblx0bWFyZ2luOiAxNXB4IDBweDtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbnMgLndwLWJsb2NrLWJ1dHRvbiB7XG5cdG1hcmdpbi1yaWdodDogOHB4O1xufVxuXG4vKiBCdXR0b24gYW5kIGlucHV0IGZvY3VzIHN0eWxlcyAqL1xuLndwLWJsb2NrLWJ1dHRvbl9fbGluazpmb2N1cyxcbi5idG46Zm9jdXMsXG4ud3AtYmxvY2stZmlsZV9fYnV0dG9uOmZvY3VzLFxuLmM5IC5lbnRyeS1jb250ZW50IGJ1dHRvbjpmb2N1cyxcbi53cC1ibG9jay1idXR0b25fX2xpbms6bm90KFtocmVmXSk6bm90KFt0YWJpbmRleF0pOmZvY3VzLFxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWJ1dHRvbjpub3QoLmlzLXN0eWxlLW91dGxpbmUpIC53cC1ibG9jay1idXR0b25fX2xpbms6Zm9jdXMsXG4uZW50cnktY29udGVudCAud3AtYmxvY2stYnV0dG9uX19saW5rOmZvY3VzLFxuLmVudHJ5LWNvbnRlbnQgaW5wdXRbdHlwZT1cInRleHRcIl06Zm9jdXMsXG4jZnVsbHNjcmVlbnNlYXJjaCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOmZvY3VzLFxuLnNlYXJjaC1jbG9zZTpmb2N1cyB7XG5cdGJveC1zaGFkb3c6IDFweCAxcHggOXB4IHJnYmEoMCwgMCwgMCwgLjUpO1xuXHRvdXRsaW5lOiAxcHggZG90dGVkICRsaWdodDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDbGllbnQgQ3VzdG9taXphdGlvbnMgdG8gQ29yZSBCbG9ja3MgICsgQzkgQmxvY2tzICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGM5LWdyaWQgKi9cbi5lZGl0b3Itc3R5bGVzLXdyYXBwZXIgLmM5LWNvbHVtbi1jb250YWluZXIsXG4uYzktY29sdW1uLWNvbnRhaW5lciB7XG5cdHotaW5kZXg6IDEyO1xufVxuXG4vKiBoZWFkZXIgY3VzdG9taXphdGlvbnMgdG8gYzktZ3JpZHMgKi9cbi5pcy1zdHlsZS1ncmF5LWRpYWdvbmFsLFxuLmdyYXktZGlhZ29uYWwge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uaXMtc3R5bGUtZ3JheS1kaWFnb25hbDphZnRlcixcbi5ncmF5LWRpYWdvbmFsOmFmdGVyIHtcblx0ei1pbmRleDogOTtcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRib3R0b206IC0xNjVweDtcblx0bGVmdDogMDtcblx0aGVpZ2h0OiA2MCU7XG5cdHdpZHRoOiAxMDB2dztcblx0Y29udGVudDogdXJsKHdsLWRpYWdvbmFsLWJnLnN2Zyk7XG5cdHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcblx0dHJhbnNmb3JtOiBzY2FsZVgoMy4zKTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuXG5cdC5pcy1zdHlsZS1ncmF5LWRpYWdvbmFsOmFmdGVyLFxuXHQuZ3JheS1kaWFnb25hbDphZnRlciB7XG5cdFx0aGVpZ2h0OiAyMCU7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjhweCkge1xuXG5cdC5pcy1zdHlsZS1ncmF5LWRpYWdvbmFsOmFmdGVyLFxuXHQuZ3JheS1kaWFnb25hbDphZnRlciB7XG5cdFx0aGVpZ2h0OiAxMCU7XG5cdH1cbn1cblxuLmlzLXN0eWxlLWRhcmstZ3JhZGllbnQtbGVmdCxcbi5kYXJrLWdyYWRpZW50LWxlZnQge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogYmxhY2sgZ3JhZGllbnQgZm9yIGFib3V0IHBhZ2UgYmFja2dyb3VuZHMgKi9cblxuLmlzLXN0eWxlLWRhcmstZ3JhZGllbnQtbGVmdDphZnRlcixcbi5kYXJrLWdyYWRpZW50LWxlZnQ6YWZ0ZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdHRvcDogMDtcblx0Ym90dG9tOiAwO1xuXHRjb250ZW50OiBcIlwiO1xuXHR6LWluZGV4OiA3O1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAxMDAlO1xuXHRiYWNrZ3JvdW5kOiByZ2JhKDAsIDAsIDAsIDEpO1xuXHRiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxlZnQgdG9wLCByaWdodCB0b3AsIGNvbG9yLXN0b3AoMCUsIHJnYmEoMCwgMCwgMCwgMSkpLCBjb2xvci1zdG9wKDM3JSwgcmdiYSgwLCAwLCAwLCAxKSksIGNvbG9yLXN0b3AoMTAwJSwgcmdiYSgwLCAwLCAwLCAwKSkpO1xuXHRiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsIHJnYmEoMCwgMCwgMCwgMSkgMCUsIHJnYmEoMCwgMCwgMCwgMSkgMzclLCByZ2JhKDAsIDAsIDAsIDApIDEwMCUpO1xuXHQvLyBmaWx0ZXI6IHByb2dpZDogRFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nIzAwMDAwMCcsIGVuZENvbG9yc3RyPScjMDAwMDAwJywgR3JhZGllbnRUeXBlPTEpO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGdhbGxlcnkgYWRqdXN0bWVudHMgIGZvciBjb3JlIGdhbGxlcnkgYmxvY2sgKi9cblxuLmVudHJ5LWNvbnRlbnQgLmNvbnRhaW5lciAud3AtYmxvY2stZ2FsbGVyeSB7XG5cdG1heC13aWR0aDogMTE0MHB4O1xufVxuXG4ud3AtYmxvY2stZ2FsbGVyeSAuYmxvY2tzLWdhbGxlcnktaXRlbSBhIGltZyB7XG5cdG9wYWNpdHk6IDE7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC40cztcblx0Y3Vyc29yOiBwb2ludGVyO1xufVxuXG4ud3AtYmxvY2stZ2FsbGVyeSAuYmxvY2tzLWdhbGxlcnktaXRlbSBhOmhvdmVyIGltZyB7XG5cdG9wYWNpdHk6IDAuOTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKmNhbGwgdG8gYWN0aW9uIGJsb2NrKi9cblxuLmM5LWN0YSAuYzktY3RhLWJ1dHRvbiAuc3F1YXJlIHtcblx0Y29sb3I6ICRkYXJrO1xuXHRib3JkZXItcmFkaXVzOiAwcHg7XG5cdGZvbnQtc2l6ZTogMzBweDtcblx0bGV0dGVyLXNwYWNpbmc6IDAuOTdweDtcblx0bGluZS1oZWlnaHQ6IDE7XG59XG5cbi5jOS1jdGEgLmM5LWN0YS1idXR0b24gLnNxdWFyZTpob3ZlciB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLmM5LWN0YS1jb250ZW50IC5jOS1jdGEtdGV4dFtzdHlsZV0gcCB7XG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuXHQuYzktY3RhIC5jOS1jdGEtYnV0dG9uIC5zcXVhcmUge1xuXHRcdGZvbnQtc2l6ZTogMS44ZW07XG5cdH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBDOSBzb2NpYWwgc2hhcmUgYmxvY2sgKi9cblxuLmM5LXNvY2lhbC1zaGFyaW5nIC5jOS1zaGFyZS1saXN0IGEge1xuXHRtYXJnaW46IDBweCAycHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogcG9zdHMgZ3JpZCBibG9jayAqL1xuXG4uYzktYmxvY2stcG9zdC1ncmlkIC5jOS1ibG9jay1wb3N0LWdyaWQtYnlsaW5lIHtcblx0Zm9udDogJGZvbnQtd2VpZ2h0LWxpZ2h0IDEuNmVtLzEgJGhlYWRpbmdzLWZvbnQtZmFtaWx5LCBoZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG59XG5cbi5jOS1ibG9jay1wb3N0LWdyaWQgaGVhZGVyIC5jOS1ibG9jay1wb3N0LWdyaWQtdGl0bGUsXG4uYzktYmxvY2stcG9zdC1ncmlkIC5jOS1ibG9jay1wb3N0LWdyaWQtYnlsaW5lIHtcblx0bWFyZ2luLWJvdHRvbTogMC41ZW07XG59XG5cbi5lbnRyeS1jb250ZW50IC5jOS1ibG9jay1wb3N0LWdyaWQtZXhjZXJwdCBwLFxuLmVkaXRvci1zdHlsZXMtd3JhcHBlciAuYzktYmxvY2stcG9zdC1ncmlkLWV4Y2VycHQgcCB7XG5cdGxpbmUtaGVpZ2h0OiAxLjU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogd29vY29tbWVyY2UgcHJvZHVjdHMgYmxvY2tzIGFuZCBwcm9kdWN0IHNpbmdsZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIGZvbnQgc2l6ZSBzZXR0aW5nICovXG5cbi53b29jb21tZXJjZS1zdG9yZS1ub3RpY2UsXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IHRhYmxlLFxuLmM5LXByb2R1Y3QtY2F0YWxvZyxcbi5jOSAucHJvZHVjdF9tZXRhLFxuLmM5IC5jb21tZW50LXJlc3BvbmQsXG4ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC10aXRsZSxcbi53Yy1ibG9jay1ncmlkX19wcm9kdWN0LXByaWNlIHtcblx0Zm9udC1zaXplOiAxNnB4O1xufVxuXG4ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1saW5rIHtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHByb2R1Y3Qgc2luZ2xlIHByb2R1Y3RfbWV0YSAqL1xuXG4uYzkgLnByb2R1Y3RfbWV0YT5zcGFuIHtcblx0ZGlzcGxheTogYmxvY2s7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogcmV2aWV3cyBmb3JtICovXG5cbi5jOSAud29vY29tbWVyY2UtUmV2aWV3cyxcbi5jOSAud29vY29tbWVyY2UtdGFicyAuYzktdGFicy1jb250ZW50IHtcblx0bWF4LXdpZHRoOiA2NzVweDtcbn1cblxuLmM5IC5lbnRyeS1jb250ZW50IC5jb21tZW50LWZvcm0gLmNvbW1lbnQtZm9ybS1jb21tZW50LFxuLmM5IC5lbnRyeS1jb250ZW50IC5jb21tZW50LWZvcm0gcCxcbi5jOSAud29vY29tbWVyY2Utb3JkZXJpbmcsXG4ud29vY29tbWVyY2UgLmM5IGRpdi5wcm9kdWN0IHAuc3RvY2ssXG4ud29vY29tbWVyY2Utbm90aWNlcy13cmFwcGVyLFxuLnNob3BfdGFibGUsXG4uYzkgLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbi5jOSAud29vY29tbWVyY2UgYS5idXR0b24sXG4uYzkgLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24sXG4uYzkgLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbiB7XG5cdGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLndvb2NvbW1lcmNlLW5vdGljZXMtd3JhcHBlciB7XG5cdG1heC13aWR0aDogOTYwcHg7XG5cdG1hcmdpbjogMHB4IGF1dG87XG59XG5cbi5jOSAuZW50cnktY29udGVudCAuY29tbWVudC1mb3JtIGxhYmVsIHtcblx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gdGFibGUgKi9cblxuLndvb2NvbW1lcmNlIC5jOSB0YWJsZS5zaG9wX2F0dHJpYnV0ZXMgdGQsXG4ud29vY29tbWVyY2UgLmM5IHRhYmxlLnNob3BfYXR0cmlidXRlcyAud29vY29tbWVyY2UtcHJvZHVjdC1hdHRyaWJ1dGVzLWl0ZW1fX3ZhbHVlIHAge1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRsaW5lLWhlaWdodDogMTtcblx0Zm9udC1zaXplOiAxMnB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHd3b29jb21tZXJjZSBhZGQgdG8gY2FydCBmb3JtIHRhYmxlICovXG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBmb3JtLmNhcnQgLmdyb3VwX3RhYmxlIHRkIHtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiB3b29jb21tZXJjZSB0ZXh0IGZvcm1hdHRpbmcgYW5kIGNvbG9yIGNoYW5nZXMgKi9cblxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByaWNlLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IHAucHJpY2UsXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3Qgc3Bhbi5wcmljZSB7XG5cdGNvbG9yOiAkZGFyaztcblx0Zm9udC1zaXplOiAxNnB4O1xufVxuXG4ud29vY29tbWVyY2UgLmM5IHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLnByaWNlIGlucyB7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBwcm9kdWN0IHNpbmdsZSBxdWFudGl0eSBmaWVsZCAqL1xuXG4ud29vY29tbWVyY2UgLmM5IC5xdWFudGl0eSAucXR5IHtcblx0bWluLWhlaWdodDogNTNweDtcblx0Zm9udC1zaXplOiAxNnB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHdvb2NvbW1lcmNlIGJ1dHRvbnMgKi9cblxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbixcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbixcbi5jOSAud29vY29tbWVyY2UgdGQuYWN0aW9ucyAuY291cG9uIGJ1dHRvbi5idXR0b24ge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcblx0cGFkZGluZzogMTlweCAyOHB4IDE0cHggMjhweDtcblx0Y29sb3I6ICRsaWdodDtcbn1cblxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0OmRpc2FibGVkW2Rpc2FibGVkXSxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5kaXNhYmxlZCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbjpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbjpkaXNhYmxlZFtkaXNhYmxlZF0sXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5kaXNhYmxlZCxcbi53b29jb21tZXJjZSBidXR0b24uYnV0dG9uOmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b246ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5kaXNhYmxlZCxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b246ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uOmRpc2FibGVkW2Rpc2FibGVkXSB7XG5cdHBhZGRpbmc6IDE5cHggMjhweCAxNHB4IDI4cHg7XG59XG5cbi53b29jb21tZXJjZSAuYzkgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LFxuLndvb2NvbW1lcmNlIC5jOSBhLmJ1dHRvbixcbi53b29jb21tZXJjZSAuYzkgYnV0dG9uLmJ1dHRvbixcbi53b29jb21tZXJjZSAuYzkgaW5wdXQuYnV0dG9uLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uIHtcblx0cGFkZGluZzogMTlweCAyOHB4IDE0cHggMjhweDtcblx0Y29sb3I6ICRsaWdodDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG5cdGZvbnQtc2l6ZTogMjBweDtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDhlbTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRsaW5lLWhlaWdodDogMTtcblx0Ym9yZGVyLXJhZGl1czogMHB4O1xuXHRib3JkZXI6IG5vbmU7XG59XG5cbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0LmRpc2FibGVkLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQuZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgI3Jlc3BvbmQgaW5wdXQjc3VibWl0LmFsdDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSAjcmVzcG9uZCBpbnB1dCNzdWJtaXQuYWx0OmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlICNyZXNwb25kIGlucHV0I3N1Ym1pdC5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdC5kaXNhYmxlZCxcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQuZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgYS5idXR0b24uYWx0OmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpkaXNhYmxlZDpob3Zlcixcbi53b29jb21tZXJjZSBhLmJ1dHRvbi5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGEuYnV0dG9uLmFsdDpkaXNhYmxlZFtkaXNhYmxlZF06aG92ZXIsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQuZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6ZGlzYWJsZWQsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6ZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgYnV0dG9uLmJ1dHRvbi5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGJ1dHRvbi5idXR0b24uYWx0OmRpc2FibGVkW2Rpc2FibGVkXTpob3Zlcixcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0LmRpc2FibGVkLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQuZGlzYWJsZWQ6aG92ZXIsXG4ud29vY29tbWVyY2UgaW5wdXQuYnV0dG9uLmFsdDpkaXNhYmxlZCxcbi53b29jb21tZXJjZSBpbnB1dC5idXR0b24uYWx0OmRpc2FibGVkOmhvdmVyLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdLFxuLndvb2NvbW1lcmNlIGlucHV0LmJ1dHRvbi5hbHQ6ZGlzYWJsZWRbZGlzYWJsZWRdOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGdyYXktNzAwO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2OHB4KSB7XG5cdC5jOSAud2MtYmxvY2stZ3JpZD4ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndwLWJsb2NrLWJ1dHRvbl9fbGluazpub3QoLmlzLXN0eWxlLW91dGxpbmUpIHtcblx0XHRmb250LXNpemU6IDE2cHg7XG5cdFx0cGFkZGluZzogMTlweCAxNXB4IDE0cHggMTVweFxuXHR9XG59XG5cbi5lbnRyeS1jb250ZW50IC53Yy1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0OmJlZm9yZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5jOS13b29jb21tZXJjZSAuZW50cnktY29udGVudD4uY29udGFpbmVyIHtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2OHB4KSB7XG5cdC53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGEgaW1nIHtcblx0XHRtYXgtaGVpZ2h0OiAxNDZweDtcblx0fVxufVxuXG4ud29vY29tbWVyY2UgLnByb2R1Y3RzIGxpLnByb2R1Y3Q6YmVmb3JlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuXHRmb250LXNpemU6IDE4cHg7XG5cdGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5ib2R5IC53b29jb21tZXJjZS1pbmZvIHtcblx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRmb250LXNpemU6IDIwcHg7XG5cdGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG5cdGNvbG9yOiBibGFjaztcblx0bGV0dGVyLXNwYWNpbmc6IDAuNXB4O1xufVxuXG5ib2R5IC53b29jb21tZXJjZS1pbmZvOmJlZm9yZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogb24gc2FsZSBib3hlcyBuZWVkIGJvcmRlciBib3ggc2l6aW5nIHJlZG9uZSAqL1xuXG4ub25zYWxlIHtcblx0Ym94LXNpemluZzogY29udGVudC1ib3g7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogaG9tZXBhZ2UgKyBjYXRhbG9nIHdvb2NvbW1lcmNlIHByb2R1Y3QgYmxvY2tzICovXG5cbi53Yy1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0czpvbmx5LWNoaWxkIHtcblx0bWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4ud2MtYmxvY2stZ3JpZCBpbnMge1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbi53Yy1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LW9uc2FsZSB7XG5cdGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRiYWNrZ3JvdW5kOiAkZGFyaztcblx0Y29sb3I6ICRsaWdodDtcblx0Zm9udC1zaXplOiAxMHB4O1xuXHRwYWRkaW5nOiAycHggOHB4O1xufVxuXG4uZW50cnktY29udGVudCAud2MtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHM6bm90KC53cC1ibG9jay1nYWxsZXJ5KSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG5cdG1hcmdpbi10b3A6IDBweDtcblx0bWFyZ2luLWJvdHRvbTogMHB4O1xufVxuXG4ud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCxcbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyxcbi5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG5cdG1hcmdpbjogMHB4O1xuXHRwYWRkaW5nOiAwcHg7XG59XG5cbi53Yy1ibG9jay1ncmlkPi53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyxcbi5lbnRyeS1jb250ZW50IC53Yy1ibG9jay1ncmlkPi53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndvb2NvbW1lcmNlLXBsYWNlaG9sZGVyIHtcblx0bWluLXdpZHRoOiAyMDBweDtcblx0aGVpZ2h0OiBhdXRvO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cdC5lbnRyeS1jb250ZW50IC53b29jb21tZXJjZS1wbGFjZWhvbGRlciB7XG5cdFx0bWluLXdpZHRoOiAxMDBweDtcblx0fVxufVxuXG4uZW50cnktY29udGVudCAud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgYSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1pbWFnZSAuc2l6ZS13b29jb21tZXJjZV90aHVtYm5haWwsXG4uYXJjaGl2ZS53b29jb21tZXJjZSB1bC5wcm9kdWN0cyBsaS5wcm9kdWN0IGEgaW1nIHtcblx0d2lkdGg6IGF1dG87XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IGEgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgLnNpemUtd29vY29tbWVyY2VfdGh1bWJuYWlsOmhvdmVyLFxuLmFyY2hpdmUud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIGltZzpob3ZlciB7XG5cdG9wYWNpdHk6IDAuOTtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkge1xuXHQud2MtYmxvY2stZ3JpZC5oYXMtNC1jb2x1bW5zIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IHtcblx0XHRtYXgtd2lkdGg6IDI0JTtcblx0fVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuXG5cdC5hcmNoaXZlLndvb2NvbW1lcmNlIHVsLnByb2R1Y3RzIGxpLnByb2R1Y3QgYSBpbWcsXG5cdC5lbnRyeS1jb250ZW50IC53cC1ibG9jay1ncmlkIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCBhIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0LWltYWdlIC5zaXplLXdvb2NvbW1lcmNlX3RodW1ibmFpbCB7XG5cdFx0bWF4LWhlaWdodDogMjA1cHg7XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2NjdweCkge1xuXHQuYzkgLndjLWJsb2NrLWdyaWQuaGFzLTQtY29sdW1ucyAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdCB7XG5cdFx0bWF4LXdpZHRoOiA1MCU7XG5cdFx0ZmxleC1iYXNpczogNTAlO1xuXHR9XG5cblx0LmFyY2hpdmUud29vY29tbWVyY2UgdWwucHJvZHVjdHMgbGkucHJvZHVjdCBhIGltZyxcblx0LmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IGEgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2UgLnNpemUtd29vY29tbWVyY2VfdGh1bWJuYWlsIHtcblx0XHRtYXgtaGVpZ2h0OiAxMzNweDtcblx0fVxufVxuXG4uZW50cnktY29udGVudCAud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QgYSAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdC1pbWFnZSB7XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdHRyYW5zaXRpb246IG9wYWNpdHkgMC4zcztcbn1cblxuLmVudHJ5LWNvbnRlbnQgLndwLWJsb2NrLWdyaWQgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3RzIC53Yy1ibG9jay1ncmlkX19wcm9kdWN0IGEgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3QtaW1hZ2U6aG92ZXIge1xuXHRvcGFjaXR5OiAwLjk1O1xufVxuXG4ud3AtYmxvY2stZ3JpZCAud2MtYmxvY2stZ3JpZF9fcHJvZHVjdHMgLndjLWJsb2NrLWdyaWRfX3Byb2R1Y3Q6YmVmb3JlIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnNpbmdsZS1wcm9kdWN0ICN3cmFwcGVyLW5hdmJhciB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRkYXJrO1xufVxuXG4ud29vY29tbWVyY2UgLnNpdGUtbWFpbiBkaXYucHJvZHVjdCBkaXYuc3VtbWFyeSB7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcblxuXHQuc2luZ2xlLXByb2R1Y3QgLnBhbmVsLFxuXHQuc2luZ2xlLXByb2R1Y3QgLnBhbmVsIHAsXG5cdC5zaW5nbGUtcHJvZHVjdCAucGFuZWwgdWwsXG5cdC5zaW5nbGUtcHJvZHVjdCAucGFuZWwgdWwgbGkge1xuXHRcdGZvbnQtc2l6ZTogMS41ZW07XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTtcblx0XHRsZXR0ZXItc3BhY2luZzogMC4wM2VtO1xuXHR9XG5cblx0LnNpbmdsZS1wcm9kdWN0IC5wYW5lbCB1bCBsaTpiZWZvcmUge1xuXHRcdHRvcDogMnB4O1xuXHR9XG59XG5cbi53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHAge1xuXHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0bWFyZ2luLWJvdHRvbTogMTVweCAhaW1wb3J0YW50O1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHA6YWZ0ZXIge1xuXHRjb250ZW50OiBcIlwiO1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6IDA7XG5cdGJvdHRvbTogMDtcblx0d2lkdGg6IDc1JTtcblx0aGVpZ2h0OiAxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICM5Nzk3OTc7XG59XG5cbi5zaW5nbGUtcHJvZHVjdCAud29vY29tbWVyY2UtVGFicy1wYW5lbDpmaXJzdC1jaGlsZCB1bCBsaSB7XG5cdG1hcmdpbjogMTBweCAwcHg7XG59XG5cbi5zaW5nbGUtcHJvZHVjdCAuZmxleC12aWV3cG9ydCB7XG5cdG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbi53b29jb21tZXJjZSBkaXYucHJvZHVjdCBkaXYuaW1hZ2VzIC5mbGV4LWNvbnRyb2wtdGh1bWJzIHtcblx0bWFyZ2luLWxlZnQ6IC01cHg7XG5cdG1hcmdpbi1yaWdodDogLTVweDtcbn1cblxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGRpdi5pbWFnZXMgLmZsZXgtY29udHJvbC10aHVtYnMgbGkge1xuXHRwYWRkaW5nOiAwcHggNXB4O1xufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZGl2LmltYWdlcyAuZmxleC1jb250cm9sLXRodW1icyBsaTpiZWZvcmUge1xuXHRkaXNwbGF5OiBub25lO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNHB4KSB7XG5cdC5zaW5nbGUtcHJvZHVjdCAud29vY29tbWVyY2UtVGFicy1wYW5lbDpmaXJzdC1jaGlsZCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKmJyZWFkY3J1bWJzKi9cblxuLndvb2NvbW1lcmNlIC5zaXRlLW1haW4gLndvb2NvbW1lcmNlLWJyZWFkY3J1bWIge1xuXHRtYXgtd2lkdGg6IDExNDBweDtcblx0bWFyZ2luOiAzMHB4IGF1dG87XG5cdHBhZGRpbmc6IDBweCAxNXB4O1xuXHRmb250LXNpemU6IDJlbTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDVweDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0Y29sb3I6ICRkYXJrO1xuXHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4ud29vY29tbWVyY2UgLnNpdGUtbWFpbiAud29vY29tbWVyY2UtYnJlYWRjcnVtYiBhIHtcblx0Y29sb3I6ICRkYXJrO1xuXHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdHRyYW5zaXRpb246IGNvbG9yIDAuM3M7XG59XG5cbi53b29jb21tZXJjZSAuc2l0ZS1tYWluIC53b29jb21tZXJjZS1icmVhZGNydW1iIGE6aG92ZXIge1xuXHRjb2xvcjogIzliOWI5Yjtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHByb2R1Y3QgaW5kZXggZnJvbSBicmVhZGNydW1icyAqL1xuXG4uYzkud29vY29tbWVyY2UgI3dyYXBwZXItbmF2YmFyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogJGRhcms7XG59XG5cbi5jOSAud29vY29tbWVyY2UtcHJvZHVjdHMtaGVhZGVyX190aXRsZSB7XG5cdGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG5cdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdGZvbnQtc2l6ZTogNy45ZW07XG5cdGxpbmUtaGVpZ2h0OiAxO1xufVxuXG4uYzkud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcblx0Zm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xufVxuXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyBuYXYge1xuXHRtYXJnaW46IDBweCBhdXRvO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5wYWdlLXNlYXJjaC1yZXN1bHRzIG5hdiAucGFnaW5hdGlvbiB7XG5cdG1heC13aWR0aDogMTE0MHB4O1xuXHRtYXJnaW46IDBweCBhdXRvO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLnBhZ2Utc2VhcmNoLXJlc3VsdHMgbmF2IC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0ge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5jOS53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbixcbi5wYWdlLXNlYXJjaC1yZXN1bHRzIG5hdiAucGFnaW5hdGlvbiB7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogV29vQ29tbWVyY2UgQ2hlY2tvdXQgKi9cblxuLndvb2NvbW1lcmNlLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTEsXG4ud29vY29tbWVyY2UtcGFnZS53b29jb21tZXJjZS1jaGVja291dCAuY29sMi1zZXQgLmNvbC0xLFxuLndvb2NvbW1lcmNlLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wyLXNldCAuY29sLTIsXG4ud29vY29tbWVyY2UtcGFnZS53b29jb21tZXJjZS1jaGVja291dCAuY29sMi1zZXQgLmNvbC0yIHtcblx0bWF4LXdpZHRoOiAxMDAlO1xufVxuXG4uYzkgLndvb2NvbW1lcmNlIHRhYmxlLnNob3BfdGFibGUge1xuXHRib3JkZXItcmFkaXVzOiAwcHg7XG59XG5cbi53b29jb21tZXJjZSB0ZC5wcm9kdWN0LW5hbWUgLndjLWl0ZW0tbWV0YSAud2MtaXRlbS1tZXRhLWxhYmVsLFxuLndvb2NvbW1lcmNlIHRkLnByb2R1Y3QtbmFtZSAud2MtaXRlbS1tZXRhIGR0LFxuLndvb2NvbW1lcmNlIHRkLnByb2R1Y3QtbmFtZSBkbC52YXJpYXRpb24gLndjLWl0ZW0tbWV0YS1sYWJlbCxcbi53b29jb21tZXJjZSB0ZC5wcm9kdWN0LW5hbWUgZGwudmFyaWF0aW9uIGR0IHtcblx0Zm9udC1zaXplOiAxNnB4O1xufVxuXG4vKiBXb29Db21tZXJjZSBGb3JtcyB0ZXh0IGlucHV0cyAqL1xuLmM5IC53b29jb21tZXJjZSBmb3JtIC5mb3JtLXJvdyAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSBmb3JtIC5mb3JtLXJvdyAuaW5wdXQtdGV4dCxcbi5jOSAuc2VsZWN0Mi1jb250YWluZXIgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUsXG4uc2luZ2xlLXByb2R1Y3Qud29vY29tbWVyY2UgZm9ybS5jYXJ0IGlucHV0W3R5cGU9XCJudW1iZXJcIl0sXG4ud2MtYmxvY2stcHJvZHVjdC1jYXRlZ29yaWVzIHNlbGVjdCB7XG5cdGhlaWdodDogNDVweDtcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcbn1cblxuXG4uYnljb25zb2xld29vb2R0X2RlbGl2ZXJ5X3R5cGUge1xuXHRmb250LWZhbWlseTogaW5oZXJpdDtcbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuXG5cdC5zaW5nbGUtcHJvZHVjdCAuYzkgLndvb2NvbW1lcmNlIC53Yy1wYW8tYWRkb24tY29udGFpbmVyLndjLXBhby1hZGRvbi10b3BwaW5ncyAuZm9ybS1yb3csXG5cdC5zaW5nbGUtcHJvZHVjdCAuYzkgLndvb2NvbW1lcmNlIC53Yy1wYW8tYWRkb24tY29udGFpbmVyLndjLXBhby1hZGRvbi1idW4tc3R5bGUgLmZvcm0tcm93LFxuXHQuc2luZ2xlLXByb2R1Y3QgLmM5IC53b29jb21tZXJjZSAud2MtcGFvLWFkZG9uLWNvbnRhaW5lci53Yy1wYW8tcmVxdWlyZWQtYWRkb24gLmZvcm0tcm93IHtcblx0XHR3aWR0aDogNDglO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0fVxufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC52YXJpYXRpb25zIHRkLFxuLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyB0aCB7XG5cdGxpbmUtaGVpZ2h0OiAxO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ud29vY29tbWVyY2UgZGl2LnByb2R1Y3QgZm9ybS5jYXJ0IC5yZXNldF92YXJpYXRpb25zIHtcblx0cG9zaXRpb246IGFic29sdXRlO1xufVxuXG4uYzkgLndvb2NvbW1lcmNlIGRpdi5wcm9kdWN0IGZvcm0uY2FydCAudmFyaWF0aW9ucyBzZWxlY3QsXG4ud2MtYmxvY2stcHJvZHVjdC1jYXRlZ29yaWVzIHNlbGVjdCB7XG5cdC1tb3otYXBwZWFyYW5jZTogbm9uZTtcblx0LXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiAwO1xuXHRwYWRkaW5nLWxlZnQ6IDEycHg7XG5cdGhlaWdodDogNDVweDtcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiAyMDtcblx0Ym9yZGVyOiAxcHggc29saWQgI2NjYztcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0Y29sb3I6ICRncmF5LTkwMDtcbn1cblxuLmM5IC53b29jb21tZXJjZSBzZWxlY3Qge1xuXHRib3JkZXI6IDFweCBzb2xpZCAjY2NjO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xufVxuXG4uYzkgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fYXJyb3cge1xuXHRoZWlnaHQ6IDQ1cHg7XG5cdHJpZ2h0OiAxMHB4O1xufVxuXG4uYzkgLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIC5zZWxlY3QyLXNlbGVjdGlvbl9fcmVuZGVyZWQge1xuXHRsaW5lLWhlaWdodDogNDVweDtcbn1cblxuLmM5IC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG5cdHBhZGRpbmc6IDJweCA4cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRncmF5LTUwMDtcblx0bGluZS1oZWlnaHQ6IDE7XG5cdGZvbnQtc2l6ZTogMTZweDtcbn1cblxuLyogY291cG9uICovXG4uYzkgLndvb2NvbW1lcmNlICNjb250ZW50IHRhYmxlLmNhcnQgdGQuYWN0aW9ucyAuY291cG9uIC5pbnB1dC10ZXh0LFxuLmM5IC53b29jb21tZXJjZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSAjY29udGVudCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAuaW5wdXQtdGV4dCxcbi5jOSAud29vY29tbWVyY2UtcGFnZSB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbiAjY291cG9uX2NvZGUge1xuXHR3aWR0aDogMTI1cHggIWltcG9ydGFudDtcbn1cblxuLmM5IC53b29jb21tZXJjZSAjY29udGVudCB0YWJsZS5jYXJ0IHRkLmFjdGlvbnMgLmNvdXBvbixcbi5jOSAud29vY29tbWVyY2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24sXG4uYzkgLndvb2NvbW1lcmNlLXBhZ2UgI2NvbnRlbnQgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24sXG4uYzkgLndvb2NvbW1lcmNlLXBhZ2UgdGFibGUuY2FydCB0ZC5hY3Rpb25zIC5jb3Vwb24ge1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQxNHB4KSB7XG5cdC5jaGVja291dF9jb3Vwb24gLmlucHV0LXRleHQge1xuXHRcdG1heC13aWR0aDogMTIzcHg7XG5cdH1cblxuXHQuYzkgLndvb2NvbW1lcmNlIC5jaGVja291dF9jb3Vwb24gLmJ1dHRvbiB7XG5cdFx0cGFkZGluZzogMTZweCAyMHB4O1xuXHR9XG59XG5cbi8qIHdvb2NvbW1lcmNlIGxvZ2luIGZvcm0gKi9cbi5jOSAud29vY29tbWVyY2UgLndvb2NvbW1lcmNlLWZvcm0tbG9naW4sXG4uYzkgLndvb2NvbW1lcmNlIGZvcm0ubG9naW4sXG4uYzkgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIge1xuXHRtYXgtd2lkdGg6IDQ1MHB4O1xufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG5cblx0LmM5IC53b29jb21tZXJjZSAud29vY29tbWVyY2UtZm9ybS1sb2dpbixcblx0LmM5IC53b29jb21tZXJjZSBmb3JtLmxvZ2luLFxuXHQuYzkgLndvb2NvbW1lcmNlIGZvcm0ucmVnaXN0ZXIge1xuXHRcdG1heC13aWR0aDogMTAwJTtcblx0XHR3aWR0aDogMTAwJTtcblx0fVxufVxuXG4vKiB3b29jb21tZXJjZSB1c2VyIGFjY291bnQgYWRtaW4gcGFuZWwqL1xuLmM5IC53b29jb21tZXJjZS1BZGRyZXNzZXMge1xuXHRtYXJnaW4tdG9wOiAzMHB4O1xufVxuXG4uYzkgLndvb2NvbW1lcmNlLUFkZHJlc3NlcyAud29vY29tbWVyY2UtQWRkcmVzcyB7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cblxuLmM5IC5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG5cdGJvcmRlci1yYWRpdXM6IDBweDtcbn1cblxuLndvb2NvbW1lcmNlLXBhZ2UgLmNvbC0xLFxuLndvb2NvbW1lcmNlLXBhZ2UgLmNvbC0yIHtcblx0bWF4LXdpZHRoOiBub25lO1xufVxuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQgLmNvbC0xLFxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IC5jb2wtMiB7XG5cdHBhZGRpbmctbGVmdDogMDtcblx0cGFkZGluZy1yaWdodDogMDtcbn1cblxuLyogd29vY29tbWVyY2UgZGF0ZSArIHRpbWUgcGlja2VyICovXG4udWktZGF0ZXBpY2tlciB7XG5cdHdpZHRoOiAyNzVweDtcblx0cGFkZGluZzogNnB4O1xuXHRtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi51aS1jb3JuZXItYWxsLFxuLnVpLWNvcm5lci1ib3R0b20sXG4udWktY29ybmVyLXJpZ2h0LFxuLnVpLWNvcm5lci1iciB7XG5cdGJvcmRlci1yYWRpdXM6IDBweDtcbn1cblxuLnVpLXN0YXRlLWRlZmF1bHQsXG4udWktd2lkZ2V0LWNvbnRlbnQgLnVpLXN0YXRlLWRlZmF1bHQsXG4udWktd2lkZ2V0LWhlYWRlciAudWktc3RhdGUtZGVmYXVsdCB7XG5cdHBhZGRpbmc6IDRweDtcbn1cblxuLnVpLXdpZGdldC1oZWFkZXIge1xuXHRiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuXHRiYWNrZ3JvdW5kOiAkZ3JheS01MDA7XG5cdGNvbG9yOiAkZGFyaztcbn1cblxuLnVpLWRhdGVwaWNrZXIgLnVpLWRhdGVwaWNrZXItcHJldixcbi51aS1kYXRlcGlja2VyIC51aS1kYXRlcGlja2VyLW5leHQge1xuXHR0b3A6IDUwJTtcblx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG4udWktdGltZXBpY2tlci13cmFwcGVyLFxuLnVpLWRhdGVwaWNrZXItY2FsZW5kYXIsXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcblx0Zm9udC1zaXplOiAxLjZlbSAhaW1wb3J0YW50O1xufVxuXG4udWktZGF0ZXBpY2tlciAudWktZGF0ZXBpY2tlci10aXRsZSB7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi51aS10aW1lcGlja2VyLWxpc3QgbGkge1xuXHRwYWRkaW5nOiAxMnB4O1xufVxuXG5saS51aS10aW1lcGlja2VyLXNlbGVjdGVkLFxuLnVpLXRpbWVwaWNrZXItbGlzdCBsaTpob3Zlcixcbi51aS10aW1lcGlja2VyLWxpc3QgLnVpLXRpbWVwaWNrZXItc2VsZWN0ZWQ6aG92ZXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcbn1cblxuLyogb3JkZXIgY29uZmlybWF0aW9uICovXG51bC5vcmRlcl9kZXRhaWxzIGxpIHtcblx0Zm9udC1zaXplOiAxNHB4ICFpbXBvcnRhbnQ7XG59XG5cbi53b29jb21tZXJjZSB1bC5vcmRlcl9kZXRhaWxzIGxpIHN0cm9uZyB7XG5cdGZvbnQtc2l6ZTogMTZweCAhaW1wb3J0YW50O1xufVxuXG4ub3JkZXJfZGV0YWlsczpub3QoLmJsb2Nrcy1nYWxsZXJ5LWdyaWQpOm5vdCgud3AtYmxvY2stZ2FsbGVyeSk6bm90KC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyk6bm90KC5nZmllbGRfY2hlY2tib3gpOm5vdCguZ2ZpZWxkX3JhZGlvKTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpOm5vdCgucHJvZHVjdHMpOm5vdCguZ2Zvcm1fZmllbGRzKSBsaSB7XG5cdHBhZGRpbmc6IDhweCAyMHB4O1xufVxuXG4uZW50cnktY29udGVudCAub3JkZXJfZGV0YWlsczpub3QoLmJsb2Nrcy1nYWxsZXJ5LWdyaWQpOm5vdCgud3AtYmxvY2stZ2FsbGVyeSk6bm90KC53Yy1ibG9jay1ncmlkX19wcm9kdWN0cyk6bm90KC5nZmllbGRfY2hlY2tib3gpOm5vdCguZ2ZpZWxkX3JhZGlvKTpub3QoLm5hdi10YWJzKTpub3QoLmM5LXNoYXJlLWxpc3QpOm5vdCgucHJvZHVjdHMpOm5vdCguZ2Zvcm1fZmllbGRzKSB7XG5cdHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLyogd29vY29tbWVyY2Ugc3RvcmUgbm90aWNlICovXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi53b29jb21tZXJjZS1zdG9yZS1ub3RpY2UsXG5wLmRlbW9fc3RvcmUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcblx0Zm9udC1zaXplOiAxLjZlbTtcblx0dG9wOiBhdXRvO1xuXHRib3R0b206IDA7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0aGVpZ2h0OiA1MHB4O1xuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1pdGVtczogY2VudGVyO1xuXHRqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cblxuLndvb2NvbW1lcmNlLXN0b3JlLW5vdGljZV9fZGlzbWlzcy1saW5rIHtcblx0bWFyZ2luOiAwcHggOHB4O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi8qIHBhZ2luYXRpb24gdHdlYWsgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmFyY2hpdmUgbmF2IC5wYWdpbmF0aW9uIC5wYWdlLWl0ZW0gLnBhZ2UtbGluayxcbi5ibG9nIG5hdiAucGFnaW5hdGlvbiAucGFnZS1pdGVtIC5wYWdlLWxpbmssXG4ucGFnZS1zZWFyY2gtcmVzdWx0cyBuYXYgLnBhZ2luYXRpb24gLnBhZ2UtaXRlbSAucGFnZS1saW5rLFxuLnNpbmdsZSAubmF2aWdhdGlvbiAubmF2LW5leHQgYSxcbi5zaW5nbGUgLm5hdmlnYXRpb24gLm5hdi1wcmV2aW91cyBhIHtcblx0Zm9udC1zaXplOiAxLjRlbTtcbn1cblxuLmM5IC53b29jb21tZXJjZSBuYXYud29vY29tbWVyY2UtcGFnaW5hdGlvbiB7XG5cdGZvbnQtZmFtaWx5OiAkaGVhZGluZ3MtZm9udC1mYW1pbHk7XG59XG5cbi5jOSAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgLnBhZ2UtbnVtYmVycyxcbi5jOSAud29vY29tbWVyY2UgbmF2Lndvb2NvbW1lcmNlLXBhZ2luYXRpb24gdWwgbGkgc3BhbiB7XG5cdGZvbnQtc2l6ZTogMTRweDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiA0MDQgZXJyb3IgcGFnZSAqL1xuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZXJyb3ItNDA0IC53aWRnZXRfcmVjZW50X2VudHJpZXMsXG4uZXJyb3ItNDA0IC53aWRnZXRfYXJjaGl2ZSB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cbi5lcnJvci00MDQge1xuXHRtYXJnaW46IDE1NXB4IGF1dG8gMHB4IGF1dG87XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0bWF4LXdpZHRoOiA5NjBweDtcbn1cblxuLmVycm9yLTQwNCAucGFnZS1jb250ZW50IHAge1xuXHRmb250LXNpemU6IDEuNmVtO1xufVxuXG4uZXJyb3ItNDA0IGgxIHtcblx0Zm9udC1zaXplOiA4MHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5lcnJvci00MDQgLnBhZ2UtY29udGVudCAuc2VhcmNoLWZvcm0ge1xuXHRtYXJnaW46IDBweCBhdXRvIDgwcHggYXV0bztcblx0bWF4LXdpZHRoOiA2MCU7XG59XG5cbi5lcnJvci00MDQgLnBhZ2UtY29udGVudCAuc2VhcmNoLWZvcm0gLmJ0bi1wcmltYXJ5LFxuLnNlYXJjaCAucGFnZS1jb250ZW50IC5zZWFyY2gtZm9ybSAuYnRuLXByaW1hcnkge1xuXHRjb2xvcjogJGxpZ2h0O1xuXHRmb250LXNpemU6IDJlbTtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Ym9yZGVyOiBub25lO1xuXHRib3JkZXItcmFkaXVzOiAwcHg7XG5cdG1hcmdpbi1sZWZ0OiAyMHB4O1xuXHRwYWRkaW5nOiA2cHggMzBweCAycHggMzBweCAhaW1wb3J0YW50O1xuXHRtaW4taGVpZ2h0OiA1NXB4O1xufVxuXG4uZXJyb3ItNDA0IC5wYWdlLWNvbnRlbnQgLnNlYXJjaC1mb3JtIC5pbnB1dC1ncm91cCB7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4uZXJyb3ItNDA0IC5wYWdlLWNvbnRlbnQgLnNlYXJjaC1mb3JtIC5pbnB1dC1ncm91cC5zZWFyY2gtZmllbGQge1xuXHRwYWRkaW5nOiAxMHB4IDEycHg7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcblx0Zm9udC1zaXplOiAxLjNlbTtcblx0bGV0dGVyLXNwYWNpbmc6IDAuMDJlbTtcblx0aGVpZ2h0OiBhdXRvO1xuXHRib3JkZXI6IDFweCBzb2xpZCByZ2IoMjA2LCAyMTIsIDIxOCk7XG59XG5cbi5lcnJvcjQwNCAjd3JhcHBlci1uYXZiYXIge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyaztcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBVdGlsaXR5IENsYXNzZXMgKi9cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmltZy1zaGFkb3csXG4uaXMtc3R5bGUtaW1nLXNoYWRvdyB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmlzLXN0eWxlLWltZy1zaGFkb3cgaW1nLFxuLmltZy1zaGFkb3cgaW1nIHtcblx0ei1pbmRleDogMTA7XG59XG5cbi5pcy1zdHlsZS1pbWctc2hhZG93LndwLWJsb2NrLWltYWdlOmFmdGVyLFxuLmltZy1zaGFkb3cud3AtYmxvY2staW1hZ2U6YWZ0ZXIge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdGJvdHRvbTogLTMwcHg7XG5cdHotaW5kZXg6IDg7XG5cdGNvbnRlbnQ6IFwiXCI7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHR3aWR0aDogMTAwJTtcblx0aGVpZ2h0OiAzMHB4O1xuXHRiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSwgcmdiYSgwLCAwLCAwLCAwLjQpIDAlLCByZ2JhKDAsIDAsIDAsIDApIDY4JSk7XG5cdGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG4iLCIvLyBjOVxuLy8gSnVzdCBjb3B5IGEgdmFyaWFibGUgZnJvbSBzcmMvc2Fzcy9ib290c3RyYXA0L192YXJpYWJsZXMuc2NzcywgcGFzdGUgaXQgaGVyZSBhbmQgZWRpdCB0aGUgdmFsdWUuXG46cm9vdCB7XG5cdGZvbnQtZmFtaWx5OiBcImhlbHZldGljYSBuZXVlXCIsIGhlbHZldGljYSwgc2Fucy1zZXJpZjtcblx0LS1kZWZhdWx0LWZvbnQ6IFwiaGVsdmV0aWNhIG5ldWVcIiwgaGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xufVxuXG4vLyBUeXBvZ3JhcGh5XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6IDcwMDtcblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IGluaGVyaXQ7XG4kZm9udC1mYW1pbHktYmFzZTogaW5oZXJpdDtcbiRmb250LXdlaWdodC1saWdodDogMTAwO1xuJGxpbmUtaGVpZ2h0LWJhc2U6IDEuMztcblxuJGRpc3BsYXkxLXNpemU6IDhyZW07XG4kZGlzcGxheTEtd2VpZ2h0OiA3MDA7XG4kZGlzcGxheS1saW5lLWhlaWdodDogOHJlbTtcblxuJGRpc3BsYXkyLXNpemU6IDdyZW07XG4kZGlzcGxheTItd2VpZ2h0OiA3MDA7XG4kZGlzcGxheS1saW5lLWhlaWdodDogN3JlbTtcblxuJGRpc3BsYXkzLXNpemU6IDUuNHJlbTtcbiRkaXNwbGF5My13ZWlnaHQ6IDcwMDtcbiRkaXNwbGF5LWxpbmUtaGVpZ2h0OiA1LjRyZW07XG5cbiRkaXNwbGF5NC1zaXplOiA0LjJyZW07XG4kZGlzcGxheTQtd2VpZ2h0OiA3MDA7XG4kZGlzcGxheS1saW5lLWhlaWdodDogNC4ycmVtO1xuXG4kaGVhZGluZ3MtbWFyZ2luLWJvdHRvbTogMXJlbTtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogMS40O1xuJGlucHV0LWJvcmRlci1yYWRpdXM6IDBweDtcbiRlbmFibGUtcm91bmRlZDogZmFsc2U7XG5cbi8vIENvbG9yc1xuJHByaW1hcnk6ICMwMDAwMDA7XG4kc2Vjb25kYXJ5OiAjMzMzMzMzO1xuJHN1Y2Nlc3M6ICMyMWE3N2E7XG4kaW5mbzogI2Y3ZjdmOTtcbiR3YXJuaW5nOiAjZWM5NzFmO1xuJGRhbmdlcjogIzg0MzUzNDtcbiRkYXJrOiAjMDAwMDAwO1xuJGxpZ2h0OiAjZmZmZmZmO1xuXG4kbGluay1ob3Zlci1jb2xvcjogIzAwMDAwMDtcbiRsaW5rLWNvbG9yOiAjNGE0YTRhO1xuXG4kZ3JheS0xMDA6ICNmMWYxZjE7XG4kZ3JheS0yMDA6ICNlY2VlZWY7XG4kZ3JheS01MDA6ICNkMmQyZDI7XG4kZ3JheS02MDA6IHJnYmEoMTUxLCAxNTEsIDE1MSwgMSk7XG4kZ3JheS03MDA6ICMyYjJiMmI7XG4kZ3JheS04MDA6ICM3Njc2NzY7XG4kZ3JheS05MDA6ICM0YTRhNGE7XG4iLCJAaW1wb3J0IFwiLi4vLi4vYXNzZXRzL3N0eWxlcy90aGVtZS90aGVtZV92YXJpYWJsZXNcIjtcblxuLypcblVzZSB0aGUgZm9sbG93aW5nIHdpdGggdGhlIGJ1aWxkIHRvb2xzIHRvIGdlbmVyYXRlIG5ldyBjbGllbnQgc3R5bGVzIGZvciBmb250c1xuUmVtb3ZlIGluaGVyaXQgZm9udCBzZXR0aW5ncyBvbiB0aGUgJGZvbnQtZmFtaWx5IHZhcmlhYmxlc1xuXG5AaW1wb3J0IHVybChcImh0dHBzOi8vdXNlLnR5cGVraXQubmV0L3RldDNkcWsuY3NzXCIpO1xuJGhlYWRpbmdzLWZvbnQtZmFtaWx5OiBsZWFndWUtZ290aGljO1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IG9zd2FsZDtcbiRmb250LWZhbWlseS1iYXNlOiBtdWxpO1xuXG4qL1xuXG4vLyBUeXBvZ3JhcGh5XG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogaW5oZXJpdDtcbiRmb250LWZhbWlseS1iYXNlOiBpbmhlcml0O1xuXG4kbGluZS1oZWlnaHQtYmFzZTogMS42O1xuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiA3MDA7XG4kZm9udC13ZWlnaHQtYmFzZTogNDAwO1xuJGZvbnQtd2VpZ2h0LWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ub3JtYWw6ICRmb250LXdlaWdodC1iYXNlO1xuXG4vLyBDb2xvcnNcbiRwcmltYXJ5OiAjRkNCRDEzO1xuJHNlY29uZGFyeTogI0ZFQzUwQTtcbiRzdWNjZXNzOiAjMjFhNzdhO1xuJGluZm86ICNmN2Y3Zjk7XG4kd2FybmluZzogI2VjOTcxZjtcbiRkYW5nZXI6ICM4NDM1MzQ7XG4kZGFyazogIzAwMDAwMDtcbiRsaWdodDogI2ZmZmZmZjtcblxuJGxpbmstaG92ZXItY29sb3I6ICMwMDAwMDA7XG4kbGluay1jb2xvcjogIzVjNWM1YztcblxuJGdyYXktMTAwOiAjQURCMUIyO1xuJGdyYXktMjAwOiAjOWI5YjliO1xuJGdyYXktNTAwOiAjZDJkMmQyO1xuJGdyYXktNjAwOiByZ2JhKDE1MSwgMTUxLCAxNTEsIDEpO1xuJGdyYXktNzAwOiAjMmIyYjJiO1xuJGdyYXktODAwOiAjNzY3Njc2O1xuJGdyYXktOTAwOiAjNGE0YTRhO1xuXG4kYm9keS1jb2xvcjogIzEyMTIxMjtcbiJdfQ== */
