@charset "UTF-8";

/* Cubic Bezier Transition */

@media print {
  body {
    background-color: #fff !important;
    direction: ltr;
  }

  .page-bar {
    display: none;
  }

  .page-sidebar-wrapper {
    display: none;
  }

  .page-quick-sidebar-wrapper {
    display: none;
  }

  .theme-panel {
    display: none;
  }

  .hidden-print {
    display: none;
  }

  .page-footer {
    display: none;
  }

  .no-page-break {
    page-break-after: avoid;
  }

  .page-container {
    margin: 0px !important;
    padding: 0px !important;
  }

  .page-content {
    padding: 0 !important;
    min-height: 300px !important;
    padding: 0px 20px 20px !important;
    margin: 0 !important;
  }

  .table th,
  .table td {
    text-align: left !important;
  }
}

/***
Page Header
***/

.page-header.navbar {
  width: 100%;
  padding: 0 20px 0 20px;
  margin: 0;
  border: 0px;
  padding: 0px;
  box-shadow: none;
  height: 50px;
  min-height: 50px;
  filter: none;
  background-image: none;
  /* Fixed header */
  /* Header logo */
  /* Search box */
  /* Menu Toggler */
  /* Top menu */
}

.page-header.navbar.navbar-fixed-top {
  z-index: 9995;
}

.page-header.navbar.navbar-static-top {
  z-index: 9995;
}

.page-header.navbar .page-logo {
  float: left;
  display: block;
  width: 235px;
  height: 50px;
  padding-left: 20px;
  padding-right: 20px;
}

.page-sidebar-closed.page-sidebar-closed-hide-logo .page-header.navbar .page-logo {
  padding: 0;
}

.page-header.navbar .page-logo > .logo-image,
.page-header.navbar .page-logo > a {
  display: inline-block;
  float: left;
}

.page-header.navbar .page-logo .logo-default {
  margin: 18px 0 0 0;
}

.page-header.navbar .page-logo .logo-mini {
  display: none;
  margin-left: 5px;
}

.page-header.navbar .page-logo .text-logo {
  padding-left: 20px;
  padding-top: 12px;
}

.page-header.navbar .search-form {
  display: inline-block;
  width: 50px;
  position: relative;
  float: left;
  transition: all 0.6s;
}

.page-header.navbar .search-form .input-group .form-control {
  height: 50px;
  border: 0;
  background: transparent !important;
  font-size: 13px;
  padding-left: 0;
  margin-left: 12px;
  text-indent: -150000px;
}

.page-header.navbar .search-form .input-group .form-control:hover {
  cursor: pointer;
}

.page-header.navbar .search-form .input-group .input-group-btn {
  height: 50px;
}

.page-header.navbar .search-form .input-group .input-group-btn .btn.submit {
  margin-left: -24px;
  padding: 0;
  width: 50px;
  background: none;
  margin-top: 4px;
  display: block;
}

.page-header.navbar .search-form .input-group .input-group-btn .btn.submit > i {
  font-size: 15px;
}

.page-header.navbar .search-form.open {
  transition: all 0.6s;
  width: 300px !important;
}

.page-header.navbar .search-form.open .input-group .form-control {
  text-indent: 0;
}

.page-header.navbar .search-form.open .input-group .form-control:hover {
  cursor: text;
}

.page-header.navbar .search-form.open .input-group .input-group-btn .btn.submit {
  margin-left: 0;
}

.page-header.navbar .menu-toggler {
  cursor: pointer;
  opacity: 0.7;
  filter: alpha(opacity=70);
  display: block;
  webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.page-header.navbar .menu-toggler > span {
  outline: none !important;
}

.page-header.navbar .menu-toggler > span:hover {
  background: #ffffff;
}

.page-header.navbar .menu-toggler > span:hover:before,
.page-header.navbar .menu-toggler > span:hover:after {
  background: #ffffff;
}

.page-header.navbar .menu-toggler > span,
.page-header.navbar .menu-toggler > span:before,
.page-header.navbar .menu-toggler > span:after {
  display: inline-block;
  width: 19px;
  height: 1px;
  background: #ffffff;
  position: relative;
  top: -6px;
  transition: all ease .3s;
}

.page-header.navbar .menu-toggler > span:before,
.page-header.navbar .menu-toggler > span:after {
  position: absolute;
  left: 0;
  content: '';
}

.page-header.navbar .menu-toggler > span:before {
  top: 6px;
}

.page-header.navbar .menu-toggler > span:after {
  top: -6px;
}

.page-header.navbar .menu-toggler.th-toggle-exit > span {
  background-color: transparent !important;
}

.page-header.navbar .menu-toggler.th-toggle-exit > span:after {
  webkit-transform: translateY(6px) rotateZ(45deg);
  transform: translateY(6px) rotateZ(45deg);
}

.page-header.navbar .menu-toggler.th-toggle-exit > span:before {
  webkit-transform: translateY(-6px) rotateZ(-45deg);
  transform: translateY(-6px) rotateZ(-45deg);
}

.page-header.navbar .menu-toggler:hover {
  webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.page-header.navbar .menu-toggler.sidebar-toggler {
  float: right;
  margin: 15.5px 0 0 0;
}

.page-sidebar-closed.page-sidebar-closed-hide-logo .page-header.navbar .menu-toggler.sidebar-toggler {
  margin-right: 13px;
}

.page-header.navbar .menu-toggler.responsive-toggler {
  display: none;
  float: right;
  margin: 15.5px 6px 0 6px;
}

.page-header.navbar .top-menu {
  margin: 0;
  padding: 0;
  float: right;
}

.page-header.navbar .top-menu .navbar-nav {
  padding: 0;
  margin-right: 20px;
  display: block;
  /* Extended Dropdowns */
  /* Notification */
  /* Inbox */
  /* Tasks */
  /* User */
  /* Language */
  /* Dark version */
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown {
  margin: 0px;
  padding: 0px 4px;
  height: 50px;
  display: inline-block;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown:last-child {
  padding-right: 0px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown > .dropdown-toggle {
  margin: 0px;
  padding: 19px 10px 10px 10px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown > .dropdown-toggle:last-child {
  padding-right: 0;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown > .dropdown-toggle > i {
  font-size: 17px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown > .dropdown-toggle > i.glyphicon {
  font-size: 16px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown > .dropdown-toggle > .badge {
  font-family: "Open Sans", sans-serif;
  position: absolute;
  top: 10px;
  right: 20px;
  font-weight: 300;
  padding: 3px 6px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown > .dropdown-toggle:focus {
  background: none;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-menu {
  margin-top: 1px;
  border-radius: 4px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-menu:before {
  position: absolute;
  top: -7px;
  right: 9px;
  display: inline-block !important;
  border-right: 7px solid transparent;
  border-bottom: 7px solid #eee;
  border-left: 7px solid transparent;
  border-bottom-color: rgba(0, 0, 0, 0.2);
  content: '';
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-menu:after {
  position: absolute;
  top: -6px;
  right: 10px;
  display: inline-block !important;
  border-right: 6px solid transparent;
  border-bottom: 6px solid #fff;
  border-left: 6px solid transparent;
  content: '';
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-menu > li > a {
  color: #555;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu {
  min-width: 160px;
  max-width: 275px;
  width: 275px;
  z-index: 9995;
  /* header notifications dropdowns */
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu > li.external {
  display: block;
  overflow: hidden;
  padding: 15px 15px;
  letter-spacing: 0.5px;
  border-radius: 4px 4px 0 0;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu > li.external > h3 {
  margin: 0;
  padding: 0;
  float: left;
  font-size: 13px;
  display: inline-block;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu > li.external > a {
  display: inline-block;
  padding: 0;
  background: none;
  clear: inherit;
  font-size: 13px;
  font-weight: 300;
  position: absolute;
  right: 10px;
  border: 0;
  margin-top: -1px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu > li.external > a:hover {
  text-decoration: none;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu .dropdown-menu-list {
  padding-right: 0 !important;
  padding-left: 0;
  list-style: none;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu .dropdown-menu-list > li > a {
  display: block;
  clear: both;
  font-weight: 300;
  line-height: 20px;
  white-space: normal;
  font-size: 13px;
  padding: 16px 15px 18px;
  text-shadow: none;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu .dropdown-menu-list > li > a:hover {
  opacity: 1;
  filter: alpha(opacity=100);
  text-decoration: none;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu .dropdown-menu-list > li:first-child a {
  border-top: none;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu .dropdown-menu-list > li a .details {
  overflow: hidden;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu .dropdown-menu-list > li a .details .label-icon {
  margin-right: 10px;
  border-radius: 50%;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu .dropdown-menu-list > li a .details .label-icon i {
  margin-right: 2px;
  margin-left: 1px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu .dropdown-menu-list > li a .details .label-icon .badge {
  right: 15px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu .dropdown-menu-list > li a .time {
  float: right;
  max-width: 75px;
  font-size: 11px;
  font-weight: 400;
  opacity: 0.7;
  filter: alpha(opacity=70);
  text-align: right;
  padding: 1px 5px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox > .dropdown-menu .dropdown-menu-list > li .photo {
  float: left;
  margin: 0 6px 6px 0;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox > .dropdown-menu .dropdown-menu-list > li .photo img {
  height: 40px;
  width: 40px;
  border-radius: 50% !important;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox > .dropdown-menu .dropdown-menu-list > li .subject {
  display: block;
  margin-left: 46px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox > .dropdown-menu .dropdown-menu-list > li .subject .from {
  font-size: 13px;
  font-weight: 600;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox > .dropdown-menu .dropdown-menu-list > li .subject .time {
  font-size: 12px;
  font-weight: 400;
  opacity: 0.5;
  filter: alpha(opacity=50);
  float: right;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox > .dropdown-menu .dropdown-menu-list > li .message {
  display: block !important;
  font-size: 12px;
  line-height: 1.3;
  margin-left: 46px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu .dropdown-menu-list > li .task {
  margin-bottom: 5px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu .dropdown-menu-list > li .task .desc {
  font-size: 13px;
  font-weight: 300;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu .dropdown-menu-list > li .task .percent {
  float: right;
  font-weight: 600;
  display: inline-block;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu .dropdown-menu-list > li .progress {
  display: block;
  height: 8px;
  margin: 8px 0 2px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu .dropdown-menu-list > li .progress .progress-bar {
  box-shadow: none;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-toggle {
  padding: 16px 6px 13px 8px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-toggle > .username {
  display: inline-block;
  font-size: 13px;
  font-weight: 300;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-toggle > img {
  float: left;
  margin-top: -5px;
  margin-right: 5px;
  height: 29px;
  display: inline-block;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-toggle > i {
  display: inline-block;
  margin-top: 5px;
  margin: 0;
  font-size: 13px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-menu {
  width: 175px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-menu > li > a {
  font-size: 14px;
  font-weight: 300;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-menu > li > a i {
  width: 15px;
  display: inline-block;
  margin-right: 9px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-menu > li > a .badge {
  margin-right: 10px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-language {
  padding-left: 0;
  padding-right: 0;
  margin: 0;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-language > .dropdown-toggle {
  padding: 16px 3px 13px 7px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-language > .dropdown-toggle > img {
  margin-bottom: 2px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-language > .dropdown-toggle > i {
  font-size: 14px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-language > .dropdown-menu > li > a {
  font-size: 13px;
}

.page-header.navbar .top-menu .navbar-nav > li.dropdown-language > .dropdown-menu > li > a > img {
  margin-bottom: 2px;
  margin-right: 5px;
}

.page-header.navbar .top-menu .navbar-nav li.dropdown-dark .dropdown-menu:before {
  border-left: none;
  border-right: none;
}

.page-header.navbar .top-menu .navbar-nav li.dropdown-dark .dropdown-menu .dropdown-menu-list > li.external a {
  background: none !important;
  border: none !important;
}

/* Allow expanded search for above 768px */

@media (min-width: 768px) {
  /* 768px */

  .page-header.navbar {
    /* Search box */
  }

  .page-header.navbar .search-form.search-form-expanded {
    width: 200px;
  }

  .page-header.navbar .search-form.search-form-expanded .input-group .form-control {
    text-indent: 0;
  }

  .page-header.navbar .search-form.search-form-expanded .input-group .form-control:hover {
    cursor: text;
  }

  .page-header.navbar .search-form.search-form-expanded .input-group .input-group-btn .btn.submit {
    margin-left: 0;
  }
}

/*** 
Horizontal Menu 
***/

.page-header.navbar {
  /* Header container */
  /* Mega menu */
}

.page-header.navbar .container {
  position: relative;
}

.page-header.navbar .hor-menu {
  margin: 0 0 0 -17px;
  margin: 0;
  float: left;
}

.page-header.navbar .hor-menu .navbar-nav {
  min-height: 50px;
  position: static;
  /* Mega menu */
  /* Mega Menu Dropdown */
  /* Classic menu */
}

.page-header.navbar .hor-menu .navbar-nav.navbar-right .dropdown-menu {
  left: auto;
  right: 0;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown {
  position: static;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu {
  left: auto;
  width: auto;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content {
  font-family: "Open Sans", sans-serif;
  padding: 15px;
  margin: 0;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content.mega-menu-responsive-content {
  padding: 10px 18px 10px 45px;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu {
  padding: 0;
  margin: 0;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu:last-child {
  border-right: 0;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu li {
  margin: 0 !important;
  list-style: none;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu li > h3 {
  margin-top: 5px;
  padding-left: 6px;
  font-size: 15px;
  font-weight: 400;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu li > a {
  display: block;
  white-space: normal;
  font-family: "Open Sans", sans-serif;
  padding: 7px;
  margin: 0;
  font-size: 14px;
  font-weight: 300;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu li > a:hover {
  text-decoration: none;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu li > a.iconify {
  padding: 7px 7px 7px 30px;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu li > a.iconify > i {
  position: absolute;
  top: auto !important;
  margin-left: -24px;
  font-size: 15px;
  margin-top: 3px !important;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu li > a .badge,
.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown > .dropdown-menu .mega-menu-content .mega-menu-submenu li > a .label {
  margin-left: 5px;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown.mega-menu-full .dropdown-menu {
  left: 20px;
  right: 20px;
}

.page-header.navbar .hor-menu .navbar-nav > li.mega-menu-dropdown:hover > .dropdown-menu {
  display: block;
}

.page-header.navbar .hor-menu .navbar-nav > li.menu-dropdown .dropdown-menu:after,
.page-header.navbar .hor-menu .navbar-nav > li.menu-dropdown .dropdown-menu:before {
  display: none !important;
}

.page-header.navbar .hor-menu .navbar-nav > li > a {
  font-size: 14px;
  font-weight: 400;
  padding: 13px 13px;
  min-height: 50px;
}

.page-header.navbar .hor-menu .navbar-nav > li > a:focus {
  background: none !important;
}

.page-header.navbar .hor-menu .navbar-nav > li.current .selected,
.page-header.navbar .hor-menu .navbar-nav > li.active .selected {
  left: 50%;
  bottom: 0;
  position: absolute;
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid transparent;
  display: inline-block;
  margin: 0;
  width: 0;
  height: 0px;
  margin-left: -7px;
  margin-bottom: -6px;
}

.page-header.navbar .hor-menu .navbar-nav > li .dropdown-menu {
  margin-top: 0;
  border: none;
}

.page-header.navbar .hor-menu .navbar-nav > li .dropdown-menu li > a {
  font-family: "Open Sans", sans-serif;
  font-size: 14px;
  font-weight: 300;
  padding: 9px 10px;
  white-space: normal;
}

.page-header.navbar .hor-menu .navbar-nav > li .dropdown-menu li > a .label,
.page-header.navbar .hor-menu .navbar-nav > li .dropdown-menu li > a .badge {
  font-weight: 300;
}

.page-header.navbar .hor-menu .navbar-nav > li.classic-menu-dropdown .dropdown-menu {
  min-width: 195px;
  max-width: 235px;
}

.page-header.navbar .hor-menu .navbar-nav > li.classic-menu-dropdown:hover > .dropdown-menu {
  display: block;
}

.page-header.navbar .hor-menu .navbar-nav > li .dropdown-submenu > .dropdown-menu {
  top: 0;
}

.page-header.navbar .hor-menu .navbar-nav > li .dropdown-submenu > a:after {
  top: 9px;
  right: 10px;
}

/* Form medium devices upto large devices */

@media (min-width: 992px) and (max-width: 1200px) {
  /* 992px 1200px */

  /* Boxed layout */

  .page-boxed .page-header.navbar {
    /* Top menu */
  }

  .page-boxed .page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-toggle .username.username-hide-on-mobile {
    display: none;
  }

  .page-boxed .page-header.navbar .top-menu .navbar-nav > li.dropdown-language .dropdown-toggle .langname {
    display: none;
  }
}

@media (min-width: 992px) {
  /* 992px */

  /* Page header */

  .page-header.navbar {
    /* Header logo */
  }

  .page-sidebar-closed.page-sidebar-closed-hide-logo .page-header.navbar .page-logo {
    padding: 0;
  }

  .page-sidebar-closed.page-sidebar-closed-hide-logo .page-header.navbar .page-logo {
    width: 45px;
  }

  .page-sidebar-closed.page-sidebar-closed-hide-logo .page-header.navbar .page-logo .logo-default {
    display: none;
  }

  /* Boxed Layout */

  .page-boxed .page-header.navbar {
    /* Page logo */
    /* Top menu */
  }

  .page-boxed .page-header.navbar .page-logo {
    width: 236px;
  }

  .page-boxed .page-header.navbar .top-menu .navbar-nav {
    margin-right: 0px;
  }

  /* Sidebar closed & logo hidden */

  .page-sidebar-closed.page-sidebar-closed-hide-logo.page-boxed .page-header.navbar {
    /* Page logo */
  }

  .page-sidebar-closed.page-sidebar-closed-hide-logo.page-boxed .page-header.navbar .page-logo {
    width: 46px;
  }

  /* Boxed layout & page sidebar fixed layout */

  .page-boxed.page-sidebar-fixed .page-header.navbar {
    /* Page logo */
  }

  .page-boxed.page-sidebar-fixed .page-header.navbar .page-logo {
    width: 235px;
  }
}

@media (max-width: 991px) {
  /* 991px */

  /* Page header */

  .page-header.navbar {
    padding: 0 20px 0 20px;
    position: relative;
    clear: both;
    /* Page logo */
    /* Menu Toggler */
    /* Top Menu */
  }

  .page-header.navbar .page-logo {
    width: auto;
    padding: 0;
    margin-right: 10px;
    margin-left: 0px !important;
    padding-left: 0px !important;
  }

  .page-header.navbar .page-logo img {
    margin-left: 4px !important;
  }

  .page-header.navbar .menu-toggler.sidebar-toggler {
    display: none !important;
  }

  .page-header.navbar .menu-toggler.responsive-toggler {
    display: block;
  }

  .page-header.navbar .top-menu .navbar-nav {
    display: inline-block;
    margin: 0 10px 0 0;
  }

  .page-header.navbar .top-menu .navbar-nav > li {
    float: left;
  }

  .page-header.navbar .top-menu .navbar-nav .nav li.dropdown i {
    display: inline-block;
    position: relative;
    top: 1px;
    right: 0px;
  }

  .page-header.navbar .top-menu .navbar-nav .open .dropdown-menu {
    position: absolute;
  }

  /* Fixed header for mobile */

  .page-header-fixed.page-header-fixed-mobile .navbar-fixed-top {
    position: fixed;
  }

  /* Boxed Layout */

  .page-boxed .page-header.navbar > .container {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  /* 768px & 991px */

  /* Boxed Layout */

  .page-boxed .page-header.navbar {
    margin: auto !important;
    padding: 0;
  }

  .page-boxed .page-header.navbar > .container {
    margin: auto !important;
  }
}

@media (max-width: 767px) {
  /* 767px */

  /* Page header */

  .page-header.navbar {
    padding: 0 10px 0 10px;
    /* Header logo */
    /* Search box */
    /* Top navigation menu*/
  }

  .page-header.navbar .page-logo {
    width: auto;
  }

  .page-header.navbar .search-form.open {
    z-index: 3;
    left: 10px;
    right: 10px;
    position: absolute;
    width: auto !important;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended > .dropdown-menu {
    max-width: 255px;
    width: 255px;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu {
    margin-right: -190px;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu:after,
  .page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu:before {
    margin-right: 190px;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox .dropdown-menu {
    margin-right: -150px;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox .dropdown-menu:after,
  .page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox .dropdown-menu:before {
    margin-right: 150px;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu {
    margin-right: -110px;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu:after,
  .page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu:before {
    margin-right: 110px;
  }
}

@media (max-width: 580px) {
  /* Page header */

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-toggle .username.username-hide-on-mobile {
    display: none;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-language .dropdown-toggle .langname {
    display: none;
  }
}

@media (max-width: 480px) {
  /* 480px */

  /* Fixed header for mobile */

  .page-header-fixed.page-header-fixed-mobile .page-header.navbar {
    height: 100px;
  }

  .page-header.navbar {
    /* Top menu */
  }

  .page-header.navbar .top-menu {
    display: block;
    clear: both;
    float: none;
  }

  .page-header.navbar .top-menu .navbar-nav {
    margin-right: 0;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-toggle {
    padding: 19px 6px 10px 6px;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-language .dropdown-toggle {
    padding: 16px 4px 13px 2px;
  }

  .page-header.navbar .top-menu .navbar-nav > li.dropdown-user .dropdown-toggle {
    padding: 16px 0px 13px 2px;
  }
}

/***
Pace - Page Progress
***/

.pace .pace-progress {
  z-index: 10005;
  top: 50px;
  height: 2px;
  box-shadow: none;
}

.pace .pace-progress-inner {
  box-shadow: none;
}

.pace .pace-inactive {
  display: none;
}

.pace .pace-activity {
  top: 54px;
  z-index: 10005;
  right: 20px;
  border-radius: 10px !important;
}

@media (max-width: 480px) {
  /* 480px */

  .page-header-fixed .pace .pace-progress {
    top: 100px;
  }

  .page-header-fixed .pace .pace-activity {
    top: 104px;
  }
}

/***
Page container
***/

.page-container {
  margin: 0px;
  padding: 0px;
  position: relative;
  /* Fixed header */
  /* Fixed footer for mobile */
}

.page-container:before,
.page-container:after {
  content: " ";
  display: table;
}

.page-container:after {
  clear: both;
}

.page-header-fixed .page-container {
  margin-top: 50px;
}

.page-footer-fixed.page-footer-fixed-mobile .page-container {
  margin-bottom: 20px !important;
}

@media (min-width: 992px) {
  /* Page container in fixed footer */

  .page-footer-fixed .page-container {
    margin-bottom: 20px !important;
  }
}

@media (max-width: 991px) {
  /* Page container */

  .page-container {
    margin: 0 !important;
    padding: 0 !important;
  }

  .page-header-fixed.page-header-fixed-mobile .page-container {
    margin-top: 50px !important;
  }
}

@media (max-width: 480px) {
  /* Page container */

  .page-header-fixed.page-header-fixed-mobile .page-container {
    margin-top: 100px !important;
  }
}

/***
Page sidebar
***/

/* Page Sidebar */

.page-sidebar,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover {
  /* Default sidebar menu */
  /* light sidebar menu */
}

.page-sidebar.navbar-collapse,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover.navbar-collapse {
  padding: 0;
  box-shadow: none;
}

.page-sidebar .page-sidebar-menu,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu {
  list-style: none;
  margin: 0;
  padding: 0;
  /* 1st level links */
  /* all links */
}

.page-sidebar .page-sidebar-menu > li,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li {
  display: block;
  margin: 0;
  padding: 0;
  border: 0px;
}

.page-sidebar .page-sidebar-menu > li.sidebar-toggler-wrapper,
.page-sidebar .page-sidebar-menu > li.sidebar-search-wrapper,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.sidebar-toggler-wrapper,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.sidebar-search-wrapper {
  border: 0 !important;
}

.page-sidebar .page-sidebar-menu > li.sidebar-toggler-wrapper:before,
.page-sidebar .page-sidebar-menu > li.sidebar-toggler-wrapper:after,
.page-sidebar .page-sidebar-menu > li.sidebar-search-wrapper:before,
.page-sidebar .page-sidebar-menu > li.sidebar-search-wrapper:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.sidebar-toggler-wrapper:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.sidebar-toggler-wrapper:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.sidebar-search-wrapper:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.sidebar-search-wrapper:after {
  content: " ";
  display: table;
}

.page-sidebar .page-sidebar-menu > li.sidebar-toggler-wrapper:after,
.page-sidebar .page-sidebar-menu > li.sidebar-search-wrapper:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.sidebar-toggler-wrapper:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.sidebar-search-wrapper:after {
  clear: both;
}

.page-sidebar .page-sidebar-menu > li.start > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.start > a {
  border-top-color: transparent !important;
}

.page-sidebar .page-sidebar-menu > li.last > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.last > a {
  border-bottom-color: transparent !important;
}

.page-sidebar .page-sidebar-menu > li > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a {
  display: block;
  position: relative;
  margin: 0;
  border: 0px;
  padding: 10px 15px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 300;
}

.page-sidebar .page-sidebar-menu > li > a > i,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > i {
  font-size: 16px;
  margin-right: 5px;
  text-shadow: none;
}

.page-sidebar .page-sidebar-menu > li > a > i.glyphicon,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > i.glyphicon {
  margin-left: 1px;
  margin-right: 4px;
}

.page-sidebar .page-sidebar-menu > li > a > [class^="icon-"],
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > [class^="icon-"] {
  margin-left: 1px;
  margin-right: 4px;
}

.page-sidebar-fixed .page-sidebar .page-sidebar-menu > li > a,
.page-sidebar-fixed
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a {
  transition: all 0.2s ease;
}

.page-sidebar-reversed.page-sidebar-fixed .page-sidebar .page-sidebar-menu > li > a,
.page-sidebar-reversed.page-sidebar-fixed
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a {
  transition: none;
}

.page-sidebar .page-sidebar-menu > li.heading,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.heading {
  padding: 15px 15px 15px 15px;
}

.page-sidebar .page-sidebar-menu > li.heading > h3,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.heading > h3 {
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-weight: 300;
}

.page-sidebar .page-sidebar-menu > li.heading + li > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.heading + li > a {
  border-top: 0;
}

.page-sidebar .page-sidebar-menu > li.open > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.open > a {
  font-size: 14px;
}

.page-sidebar .page-sidebar-menu > li.active > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a {
  border: none;
  text-shadow: none;
  font-size: 14px;
}

.page-sidebar .page-sidebar-menu > li.active > a > .selected,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a > .selected {
  display: block;
  background-image: none;
  /* will be set in a theme css file*/
  float: right;
  position: absolute;
  right: 0px;
  top: 8px;
  background: none;
  width: 0;
  height: 0;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-right: 12px solid #ffffff;
}

.page-sidebar-reversed .page-sidebar .page-sidebar-menu > li.active > a > .selected,
.page-sidebar-reversed
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a > .selected {
  right: auto;
  left: 0;
  border-right: 0;
  border-left: 8px solid #ffffff;
}

.page-container-bg-solid .page-sidebar .page-sidebar-menu > li.active > a > .selected,
.page-container-bg-solid
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a > .selected {
  border-color: transparent #eef1f5 transparent transparent;
}

.page-container-bg-solid.page-sidebar-reversed .page-sidebar .page-sidebar-menu > li.active > a > .selected,
.page-container-bg-solid.page-sidebar-reversed
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a > .selected {
  border-color: transparent transparent transparent #eef1f5;
}

.page-sidebar .page-sidebar-menu li > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li > a {
  position: relative;
}

.page-sidebar .page-sidebar-menu li > a > .arrow:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li > a > .arrow:before {
  float: right;
  width: 20px;
  text-align: center;
  display: inline;
  font-size: 16px;
  font-family: FontAwesome;
  height: auto;
  content: "\f104";
  font-weight: 300;
  text-shadow: none;
  position: absolute;
  top: 4px;
  right: 14px;
}

.page-sidebar .page-sidebar-menu li > a > .arrow.open:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li > a > .arrow.open:before {
  content: "\f107";
}

.page-sidebar .page-sidebar-menu li > a > .badge,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li > a > .badge {
  float: right;
  margin-top: 1px;
  margin-right: 0px;
  position: absolute;
  right: 14px;
  top: 6px;
}

.page-sidebar .page-sidebar-menu > li > a > .arrow:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > .arrow:before {
  top: 8px;
}

.page-sidebar .page-sidebar-menu .sub-menu,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu {
  list-style: none;
  display: none;
  padding: 0;
  margin: 8px 0px 8px 0px;
}

.page-sidebar .page-sidebar-menu .sub-menu li,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu li {
  background: none;
  margin: 0px;
  padding: 0px;
  margin-top: 1px !important;
  /* 2nd level sub menu */
}

.page-sidebar .page-sidebar-menu .sub-menu li > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu li > a {
  display: block;
  margin: 0;
  padding: 6px 15px 6px 43px;
  text-decoration: none;
  font-size: 14px;
  font-weight: 300;
  background: none;
}

.page-sidebar .page-sidebar-menu .sub-menu li > a > i,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu li > a > i {
  font-size: 14px;
}

.page-sidebar .page-sidebar-menu .sub-menu li > .sub-menu,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu li > .sub-menu {
  margin: 0;
}

.page-sidebar .page-sidebar-menu .sub-menu li > .sub-menu > li,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu li > .sub-menu > li {
  /* 3rd level sub menu */
}

.page-sidebar .page-sidebar-menu .sub-menu li > .sub-menu > li > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu li > .sub-menu > li > a {
  padding-left: 60px;
}

.page-sidebar .page-sidebar-menu .sub-menu li > .sub-menu > li > .sub-menu,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu li > .sub-menu > li > .sub-menu {
  margin: 0;
}

.page-sidebar .page-sidebar-menu .sub-menu li > .sub-menu > li > .sub-menu > li > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu li > .sub-menu > li > .sub-menu > li > a {
  padding-left: 80px;
}

.page-sidebar .page-sidebar-menu .sub-menu.always-open,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu.always-open {
  display: block;
}

.page-sidebar .page-sidebar-menu li.active > .sub-menu,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li.active > .sub-menu {
  display: block;
}

.page-sidebar .page-sidebar-menu.page-sidebar-menu-light > li > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu.page-sidebar-menu-light > li > a {
  border: 0;
  margin: 0;
  padding-left: 11px;
  border-left: 4px solid transparent;
}

.page-sidebar .page-sidebar-menu.page-sidebar-menu-light > li .sub-menu,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu.page-sidebar-menu-light > li .sub-menu {
  margin: 0;
  padding: 1px 0;
}

.page-sidebar .page-sidebar-menu.page-sidebar-menu-light > li .sub-menu li > a,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu.page-sidebar-menu-light > li .sub-menu li > a {
  padding-top: 8px;
  padding-bottom: 8px;
}

.page-sidebar .page-sidebar-menu.page-sidebar-menu-light > li .sub-menu li:first-child,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu.page-sidebar-menu-light > li .sub-menu li:first-child {
  margin-top: 0 !important;
}

.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-light > li > a,
.page-sidebar-reversed
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu.page-sidebar-menu-light > li > a {
  padding-left: 15px;
  padding-right: 11px;
  border-left: 0;
  border-right: 4px solid transparent;
}

.page-sidebar .sidebar-toggler,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler {
  webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  display: block;
  cursor: pointer;
  opacity: 0.7;
  filter: alpha(opacity=70);
  padding: 6px 8px;
  margin-top: 15px;
  margin-right: 16px;
  float: right;
  border-radius: 4px;
}

.page-sidebar .sidebar-toggler > span,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span {
  outline: none !important;
}

.page-sidebar .sidebar-toggler > span:hover,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:hover {
  background: #ffffff;
}

.page-sidebar .sidebar-toggler > span:hover:before,
.page-sidebar .sidebar-toggler > span:hover:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:hover:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:hover:after {
  background: #ffffff;
}

.page-sidebar .sidebar-toggler > span,
.page-sidebar .sidebar-toggler > span:before,
.page-sidebar .sidebar-toggler > span:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:after {
  display: inline-block;
  width: 16px;
  height: 1px;
  background: #ffffff;
  position: relative;
  top: -5px;
  transition: all ease .3s;
}

.page-sidebar .sidebar-toggler > span:before,
.page-sidebar .sidebar-toggler > span:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:after {
  position: absolute;
  left: 0;
  content: '';
}

.page-sidebar .sidebar-toggler > span:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:before {
  top: 5px;
}

.page-sidebar .sidebar-toggler > span:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler > span:after {
  top: -5px;
}

.page-sidebar .sidebar-toggler.th-toggle-exit > span,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler.th-toggle-exit > span {
  background-color: transparent !important;
}

.page-sidebar .sidebar-toggler.th-toggle-exit > span:after,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler.th-toggle-exit > span:after {
  webkit-transform: translateY(5px) rotateZ(45deg);
  transform: translateY(5px) rotateZ(45deg);
}

.page-sidebar .sidebar-toggler.th-toggle-exit > span:before,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler.th-toggle-exit > span:before {
  webkit-transform: translateY(-5px) rotateZ(-45deg);
  transform: translateY(-5px) rotateZ(-45deg);
}

.page-sidebar .sidebar-toggler:hover,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-toggler:hover {
  webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  opacity: 1;
  filter: alpha(opacity=100);
}

.page-sidebar .sidebar-search,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search {
  padding: 0;
  margin: 22px 18px 22px 18px;
}

.page-sidebar .sidebar-search .remove,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search .remove {
  display: none;
}

.page-sidebar .sidebar-search .remove > i,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search .remove > i {
  font-size: 16px;
}

.page-sidebar .sidebar-search .input-group,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search .input-group {
  border-radius: 4px;
}

.page-sidebar .sidebar-search .input-group .form-control,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search .input-group .form-control {
  border: 0;
  font-size: 14px;
  padding: 0;
  height: auto;
  line-height: auto;
  border-radius: 4px;
}

.page-sidebar .sidebar-search .input-group .input-group-btn .btn,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search .input-group .input-group-btn .btn {
  padding: 2px 0 0 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: 100% 3px;
}

.page-sidebar .sidebar-search .input-group .input-group-btn .btn > i,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search .input-group .input-group-btn .btn > i {
  font-size: 15px;
}

.page-sidebar .sidebar-search.sidebar-search-bordered,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search.sidebar-search-bordered {
  margin: 25px 18px 25px 18px;
}

.page-sidebar .sidebar-search.sidebar-search-bordered .input-group .form-control,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search.sidebar-search-bordered .input-group .form-control {
  font-size: 13px;
  padding: 6px 8px;
}

.page-sidebar .sidebar-search.sidebar-search-bordered .input-group .input-group-btn .btn,
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .sidebar-search.sidebar-search-bordered .input-group .input-group-btn .btn {
  margin-right: 6px;
}

@media (min-width: 992px) {
  /* 992px */

  .page-sidebar {
    width: 235px;
    float: left;
    position: relative;
    margin-right: -100%;
  }

  .page-full-width .page-sidebar {
    display: none !important;
  }

  .page-sidebar.collapse {
    display: block;
    max-height: none !important;
  }

  .page-sidebar-reversed .page-sidebar {
    float: right;
    margin-right: 0;
    margin-left: -100%;
  }

  .page-sidebar-reversed.page-sidebar-fixed .page-sidebar {
    margin-left: -235px;
  }

  .page-sidebar-reversed.page-sidebar-fixed .page-sidebar-wrapper {
    position: relative;
    float: right;
  }

  .page-sidebar-fixed .page-sidebar {
    position: fixed !important;
    margin-left: 0;
    top: 50px;
  }

  .page-sidebar-fixed .page-sidebar-menu > li.last {
    margin-bottom: 15px !important;
  }

  .page-sidebar-fixed .page-sidebar-menu .sub-menu {
    height: auto !important;
  }

  /* Sidebar Closed */

  .page-sidebar-closed .page-sidebar {
    width: 45px !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed {
    /* sidebar */
    width: 45px !important;
    /* sidebar toggler */
    /* sidebar search */
    /* sidebar bordered search */
    /* sidebar search expanded */
    /* sidebar bordered search expanded */
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li {
    /* hide opened sub menu */
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li.open > .sub-menu,
  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li > .sub-menu {
    display: none !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover {
    width: 256px !important;
    position: relative !important;
    z-index: 10000;
    display: block !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > a {
    border-radius: 0 4px 0 0;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > a > i {
    margin-right: 10px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > a > .title {
    display: inline !important;
    padding-left: 15px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > a > .badge {
    display: block !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > a > .selected {
    display: none;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover.heading {
    width: 45px !important;
    box-shadow: none;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > .sub-menu {
    width: 210px;
    position: absolute;
    z-index: 2000;
    left: 46px;
    margin-top: 0;
    top: 100%;
    display: block !important;
    border-radius: 0 0 4px 4px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > .sub-menu > li > a {
    padding-left: 15px !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > .sub-menu > li > .sub-menu > li > a {
    padding-left: 30px !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > .sub-menu > li > .sub-menu > li > .sub-menu > li > a {
    padding-left: 45px !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li.heading > h3 {
    display: none;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li.sidebar-toggler-wrapper .sidebar-toggler {
    margin-right: 8px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li.sidebar-toggler-wrapper:hover {
    width: 45px !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li.sidebar-search-wrapper:hover {
    width: 45px !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li > a {
    padding-left: 11px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li > a .selected {
    right: -3px !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li > a > .badge,
  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li > a > .title,
  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li > a > .arrow {
    display: none !important;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-toggler {
    margin-left: 3px;
    margin-right: 3px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search .input-group {
    border-color: transparent;
    margin-left: -4px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search .input-group .form-control {
    display: none;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search .input-group .input-group-btn .btn {
    display: block;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.sidebar-search-bordered .input-group {
    padding: 5px 0 3px 0;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open {
    height: 40px;
    margin-top: 15px;
    margin-bottom: 14px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open .input-group {
    width: 210px;
    position: relative;
    z-index: 1;
    margin-left: 24px;
    padding: 0;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open .input-group .form-control {
    background: none;
    border: 0;
    display: block;
    padding: 8px 8px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open .input-group .input-group-btn .btn {
    display: block;
    margin-right: 8px;
    margin-top: 1px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open .remove {
    background-repeat: no-repeat;
    width: 11px;
    height: 11px;
    margin: 10px -5px 8px -7px;
    display: block;
    float: left;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open.sidebar-search-bordered {
    height: 38px;
    margin-top: 23px;
    margin-bottom: 23px;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open.sidebar-search-bordered .input-group {
    padding: 0;
  }

  .page-sidebar-closed .page-sidebar .page-sidebar-menu.page-sidebar-menu-light.page-sidebar-menu-closed > li > a {
    padding-right: 11px;
    padding-left: 7px;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar {
    margin-left: -45px;
    width: 45px;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed {
    /* sidebar */
    /* sidebar search */
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li > .sub-menu {
    left: auto;
    right: 46px;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover {
    margin-left: -211px;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > a {
    border-radius: 4px 0 0 0;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > a > .title {
    padding-left: 0;
    padding-right: 15px;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li:hover > a > i {
    margin-right: 0;
    margin-left: 2px;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li.sidebar-search-wrapper:hover,
  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed > li.sidebar-toggler-wrapper:hover {
    margin-left: 0;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open .input-group {
    margin-left: -227px;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open .input-group .input-group-btn .btn {
    margin-right: 10px !important;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-closed .sidebar-search.open .remove {
    margin: 9px 4px 12px -16px  !important;
    float: right !important;
  }

  .page-sidebar-closed.page-sidebar-reversed .page-sidebar .page-sidebar-menu.page-sidebar-menu-light.page-sidebar-menu-closed > li > a {
    padding-right: 7px;
    padding-left: 11px;
  }

  .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover {
    width: 235px !important;
    display: block;
    z-index: 10000;
  }

  .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu {
    width: 235px !important;
  }

  .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .selected {
    display: none !important;
  }

  .page-sidebar-closed.page-sidebar-fixed.page-sidebar-reversed .page-sidebar:hover {
    width: 235px !important;
    z-index: 10000;
    margin-left: -235px !important;
  }

  .page-sidebar-closed.page-sidebar-fixed.page-sidebar-reversed .page-sidebar:hover .page-sidebar-menu {
    width: 235px !important;
  }

  .page-sidebar-closed.page-sidebar-hide .page-sidebar {
    display: none !important;
  }

  /* Sidebar Menu Wirh Hoverable Submenu */

  .page-sidebar-menu.page-sidebar-menu-hover-submenu li .sub-menu {
    display: none;
    width: 210px;
    z-index: 2000;
    position: absolute;
    border-radius: 4px;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu li .sub-menu > li > a {
    margin: 3px;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu li.active .sub-menu,
  .page-sidebar-menu.page-sidebar-menu-hover-submenu li.open .sub-menu {
    display: none !important;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu li a > .arrow {
    display: none;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu li:hover > a > .arrow {
    display: block;
    float: right;
    position: absolute;
    right: 0;
    margin-top: -20px;
    background: none;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 12px double transparent;
    border-bottom: 12px double transparent;
    border-left: 0;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu li:hover > a > .arrow:after,
  .page-sidebar-menu.page-sidebar-menu-hover-submenu li:hover > a > .arrow:before {
    display: none;
  }

  .page-sidebar-reversed .page-sidebar-menu.page-sidebar-menu-hover-submenu li:hover > a > .arrow {
    right: auto;
    left: 0;
    border-right: 0;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu li:hover > .sub-menu {
    display: inline-block !important;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > a > .arrow {
    z-index: 1;
    right: 0px;
    margin-top: -23px;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > a > .selected {
    display: none;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > .sub-menu {
    margin-left: 235px;
    margin-top: -40px;
  }

  .page-sidebar-reversed .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > .sub-menu {
    margin-left: -210px !important;
  }

  .page-sidebar-closed .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > .sub-menu {
    margin-left: 0;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > .sub-menu > li > a {
    padding-left: 15px;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > .sub-menu > li .sub-menu {
    margin-left: 210px;
    margin-top: -38px !important;
  }

  .page-sidebar-reversed .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > .sub-menu > li .sub-menu {
    margin-left: -210px !important;
  }

  .page-sidebar-menu.page-sidebar-menu-hover-submenu > li:hover > .sub-menu > li .sub-menu > li > a {
    padding-left: 10px;
    padding-right: 10px;
  }

  .page-sidebar-menu.page-sidebar-menu-light.page-sidebar-menu-hover-submenu li:hover > .sub-menu {
    margin-top: -41px;
  }

  .page-sidebar-menu.page-sidebar-menu-light.page-sidebar-menu-hover-submenu li:hover > .sub-menu > li > .sub-menu {
    margin-top: -41px;
  }
}

.page-sidebar-wrapper .page-sidebar-menu > li.sidebar-mobile-offcanvas-toggler {
  display: none;
}

@media (max-width: 991px) {
  /* 991px */

  .page-sidebar {
    border-top: 0 !important;
    margin: 20px;
  }

  .page-sidebar .sidebar-toggler {
    display: none;
  }

  .page-sidebar .selected {
    display: none !important;
  }

  .page-sidebar.navbar-collapse {
    max-height: none;
    /* set some max height to have a scrollable menu on mobile devices */
  }

  .page-sidebar.navbar-collapse.collapse {
    display: none !important;
  }

  .page-sidebar.navbar-collapse.in {
    border-top: 0 !important;
    margin: 20px;
    position: relative;
    overflow: hidden !important;
    overflow-y: auto !important;
    display: block !important;
  }

  .page-sidebar.navbar-collapse.navbar-no-scroll {
    max-height: none !important;
  }

  .page-sidebar .mega-menu-responsive-content {
    padding: 10px 18px 10px 45px;
  }

  .page-full-width .page-sidebar-menu {
    display: block;
  }

  .page-sidebar-mobile-offcanvas .page-sidebar-wrapper {
    z-index: 10000;
    position: fixed;
    top: 0;
    bottom: 0;
    overflow-y: auto;
    width: 235px;
    left: -235px;
    transition: all 0.3s;
  }

  .page-sidebar-mobile-offcanvas .page-sidebar-wrapper .page-sidebar {
    margin: 0 !important;
  }

  .page-sidebar-mobile-offcanvas .page-sidebar-wrapper .page-sidebar .page-sidebar-menu {
    width: 100%;
    margin: 0 !important;
    padding: 0 0 20px 0;
  }

  .page-sidebar-mobile-offcanvas .page-sidebar-wrapper .page-sidebar .page-sidebar-menu > li.sidebar-mobile-offcanvas-toggler {
    display: block;
    border: 0;
    text-align: right;
  }

  .page-sidebar-mobile-offcanvas .page-sidebar-wrapper .page-sidebar .page-sidebar-menu > li.sidebar-mobile-offcanvas-toggler > a {
    border: 0;
  }

  .page-sidebar-mobile-offcanvas .page-sidebar-wrapper .page-sidebar .page-sidebar-menu > li.sidebar-mobile-offcanvas-toggler > a:hover {
    background: none;
  }

  .page-sidebar-mobile-offcanvas.page-sidebar-mobile-offcanvas-open .page-sidebar-wrapper {
    left: 0;
    transition: all 0.3s;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  /* 768px & 991px */

  .page-sidebar .btn-navbar.collapsed .arrow {
    display: none;
  }

  .page-sidebar .btn-navbar .arrow {
    position: absolute;
    right: 25px;
    width: 0;
    height: 0;
    top: 50px;
    border-bottom: 15px solid #5f646b;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
  }
}

@media (max-width: 480px) {
  /* 480px */

  /* Page sidebar */

  .page-sidebar,
  .page-sidebar.in {
    margin: 0 10px 10px 10px !important;
  }

  .page-header-fixed.page-header-fixed-mobile .page-sidebar,
  .page-header-fixed.page-header-fixed-mobile
  .page-sidebar.in {
    margin-top: 10px !important;
  }
}

/***
Page content
***/

/* Page title */

.page-title {
  padding: 0px;
  font-size: 28px;
  letter-spacing: -1px;
  display: block;
  color: #666;
  margin: 0px 0px 15px 0px;
  font-weight: 300;
  /* subtitle */
}

.page-title small {
  font-size: 14px;
  letter-spacing: 0px;
  font-weight: 300;
  color: #888;
}

.page-content-white .page-title,
.page-container-bg-solid .page-title {
  color: #666;
  margin-bottom: 20px;
  margin-top: 20px;
}

.page-content-white .page-title small,
.page-container-bg-solid .page-title small {
  color: #666;
}

.page-content-white .page-title {
  margin: 25px 0;
  font-size: 24px;
}

/* Page breadcrumb */

.page-bar {
  padding: 0px;
  background-color: #f1f4f7;
  margin-bottom: 25px;
  border-radius: 4px;
}

.page-bar:before,
.page-bar:after {
  content: " ";
  display: table;
}

.page-bar:after {
  clear: both;
}

.page-bar .page-breadcrumb {
  display: inline-block;
  float: left;
  padding: 8px;
  margin: 0;
  list-style: none;
}

.page-bar .page-breadcrumb > li {
  display: inline-block;
}

.ie8 .page-bar .page-breadcrumb > li {
  margin-right: 1px;
}

.page-bar .page-breadcrumb > li > a,
.page-bar .page-breadcrumb > li > span {
  color: #888;
  font-size: 14px;
  text-shadow: none;
}

.page-bar .page-breadcrumb > li > i {
  color: #aaa;
  font-size: 14px;
  text-shadow: none;
}

.page-bar .page-breadcrumb > li > i[class^="icon-"],
.page-bar .page-breadcrumb > li > i[class*="icon-"] {
  color: #807f7f;
}

.page-bar .page-toolbar {
  display: inline-block;
  float: right;
  padding: 0;
}

.page-bar .page-toolbar .btn-fit-height {
  border-radius: 0 4px 4px 0;
  padding-top: 8px;
  padding-bottom: 8px;
}

.page-md .page-bar .page-toolbar .btn-fit-height {
  padding-top: 9px;
  padding-bottom: 9px;
  box-shadow: none !important;
}

.page-content-white .page-bar,
.page-container-bg-solid .page-bar {
  background-color: #ffffff;
  position: relative;
  padding: 0px 20px;
  margin: -25px -20px 0 -20px;
}

.page-content-white .page-bar .page-breadcrumb,
.page-container-bg-solid .page-bar .page-breadcrumb {
  padding: 11px 0;
}

.page-content-white .page-bar .page-breadcrumb > li > a,
.page-content-white .page-bar .page-breadcrumb > li > span,
.page-container-bg-solid .page-bar .page-breadcrumb > li > a,
.page-container-bg-solid .page-bar .page-breadcrumb > li > span {
  color: #888;
}

.page-content-white .page-bar .page-breadcrumb > li > i,
.page-container-bg-solid .page-bar .page-breadcrumb > li > i {
  color: #aaa;
}

.page-content-white .page-bar .page-breadcrumb > li > i.fa-circle,
.page-container-bg-solid .page-bar .page-breadcrumb > li > i.fa-circle {
  font-size: 5px;
  margin: 0 5px;
  position: relative;
  top: -3px;
  opacity: 0.4;
  filter: alpha(opacity=40);
}

.page-content-white .page-bar .page-breadcrumb > li > i[class^="icon-"],
.page-content-white .page-bar .page-breadcrumb > li > i[class*="icon-"],
.page-container-bg-solid .page-bar .page-breadcrumb > li > i[class^="icon-"],
.page-container-bg-solid .page-bar .page-breadcrumb > li > i[class*="icon-"] {
  color: #8c8c8c;
}

.page-content-white .page-bar .page-toolbar,
.page-container-bg-solid .page-bar .page-toolbar {
  padding: 6px 0;
}

.page-content-white .page-bar .page-toolbar .btn,
.page-container-bg-solid .page-bar .page-toolbar .btn {
  margin-top: -2px;
}

.page-content-white .page-bar .page-toolbar .btn.btn-sm,
.page-container-bg-solid .page-bar .page-toolbar .btn.btn-sm {
  margin-top: 0px;
}

/* Page content */

.page-content {
  margin-top: 0px;
  padding: 0px;
  background-color: #fff;
}

.page-container-bg-solid .page-content {
  background: #eef1f5;
}

.page-content-white .page-content .page-bar {
  border-bottom: 1px solid #e7ecf1;
}

.page-content-white.page-md .page-content .page-bar,
.page-container-bg-solid.page-md .page-content .page-bar {
  border-radius: 0 !important;
}

.page-full-width .page-content {
  margin-left: 0px !important;
}

@media (min-width: 992px) {
  /* 992px */

  /* Page content */

  .page-content-wrapper {
    float: left;
    width: 100%;
  }

  .page-content-wrapper .page-content {
    margin-left: 235px;
    margin-top: 0px;
    min-height: 600px;
    padding: 25px 20px 10px 20px;
  }

  .page-content-wrapper .page-content.no-min-height {
    min-height: auto;
  }

  .page-sidebar-fixed.page-sidebar-hover-on .page-content-wrapper .page-content {
    margin-left: 45px;
  }

  .page-sidebar-reversed .page-content-wrapper .page-content {
    margin-left: 0 !important;
    margin-right: 235px !important;
  }

  .page-sidebar-reversed.page-sidebar-fixed.page-sidebar-hover-on .page-content-wrapper .page-content {
    margin-left: 0;
    margin-right: 45px;
  }

  .page-sidebar-reversed.page-sidebar-closed .page-content-wrapper .page-content {
    margin-left: 0 !important;
    margin-right: 45px !important;
  }

  .page-sidebar-closed .page-content-wrapper .page-content {
    margin-left: 45px !important;
  }

  .page-sidebar-closed.page-sidebar-hide .page-content-wrapper .page-content {
    margin-left: 0 !important;
  }

  .page-sidebar-closed.page-sidebar-reversed.page-sidebar-hide .page-content-wrapper .page-content {
    margin-right: 0 !important;
  }

  .page-full-width .page-content-wrapper .page-content {
    margin-left: 0px !important;
  }
}

@media (max-width: 991px) {
  /* 991px */

  html,
  body {
    overflow-x: hidden;
  }

  /* Bg solid content's breadcrumb */

  .page-content-white .page-bar,
  .page-container-bg-solid .page-bar {
    margin-top: -20px;
  }

  /* Boxed page container  */

  .page-boxed > .container {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Page content */

  .page-content-wrapper .page-content {
    margin: 0px !important;
    padding: 20px 20px 20px 20px !important;
    min-height: 280px;
  }

  .page-sidebar-mobile-offcanvas .page-wrapper {
    left: 0;
    transition: all 0.3s;
  }

  .page-sidebar-mobile-offcanvas .page-wrapper .page-header {
    transition: all 0.3s;
  }

  .page-sidebar-mobile-offcanvas.page-sidebar-mobile-offcanvas-open {
    overflow-x: hidden;
    transition: all 0.3s;
  }

  .page-sidebar-mobile-offcanvas.page-sidebar-mobile-offcanvas-open .page-wrapper {
    position: relative;
    left: 235px;
    transition: all 0.3s;
  }

  .page-sidebar-mobile-offcanvas.page-sidebar-mobile-offcanvas-open .page-wrapper .page-header {
    transition: all 0.3s;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  /*  768px & 991px */

  /* Boxed page container */

  .page-boxed > .container {
    margin: auto !important;
  }
}

@media (max-width: 767px) {
  /* 767px */

  /* Page content */

  .page-content-wrapper .page-content {
    padding: 20px 10px 10px 10px !important;
    overflow: hidden;
    /* Page title */
  }

  .page-content-wrapper .page-content .page-title {
    margin-bottom: 20px;
    font-size: 18px;
  }

  .page-content-wrapper .page-content .page-title small {
    font-size: 13px;
    padding-top: 3px;
  }
}

@media (max-width: 480px) {
  /* 480px */

  /* Dashboard date range panel */

  .page-content-wrapper .page-content .page-title small {
    display: block;
    clear: both;
  }
}

/***
Page footer
***/

.page-footer {
  padding: 8px 20px 5px 20px;
  font-size: 13px;
  height: 33px;
}

.page-footer:before,
.page-footer:after {
  content: " ";
  display: table;
}

.page-footer:after {
  clear: both;
}

.page-footer .page-footer-inner {
  float: left;
  display: inline-block;
}

.page-footer-fixed.page-footer-fixed-mobile .page-footer {
  position: fixed;
  left: 0;
  right: 0;
  z-index: 10000;
  bottom: 0;
}

.page-footer-fixed.page-footer-fixed-mobile.page-sidebar-fixed .page-footer {
  margin-left: 0 !important;
}

@media (min-width: 992px) {
  /* 992px */

  /* Default footer */

  .page-footer {
    clear: left;
  }

  /* Fixed footer */

  .page-footer-fixed .page-footer {
    position: fixed;
    left: 0;
    right: 0;
    z-index: 10000;
    bottom: 0;
  }

  /* Footer with footer sidebar */

  .page-sidebar-fixed.page-sidebar-closed .page-footer {
    margin-left: 45px;
  }

  .page-sidebar-fixed.page-footer-fixed .page-footer {
    margin-left: 0 !important;
  }

  /* Fixed Sidebar */

  .page-sidebar-fixed .page-footer {
    margin-left: 235px;
    padding: 8px 20px 5px 20px;
  }

  /* Boxed page */

  .page-boxed .page-footer {
    padding: 8px 0 5px 0;
  }

  .page-boxed.page-sidebar-fixed .page-footer {
    padding-right: 20px;
    padding-left: 20px;
  }

  /* Page sidebar reversed */

  .page-sidebar-reversed.page-sidebar-fixed .page-footer {
    margin-left: 0;
    margin-right: 235px;
    padding: 8px 20px 5px 20px;
  }

  .page-sidebar-reversed.page-sidebar-fixed.page-footer-fixed .page-footer {
    margin-left: 0;
    margin-right: 0;
  }

  .page-sidebar-reversed.page-sidebar-fixed.page-sidebar-closed .page-footer {
    margin-right: 45px;
  }
}

@media (max-width: 991px) {
  /* 991px */

  /* Boxed Layout */

  .page-boxed .page-footer {
    padding-left: 0px;
    padding-right: 0px;
  }
}

@media (max-width: 767px) {
  /* 767px */

  /* Default footer & boxed footer */

  .page-footer,
  .page-boxed .page-footer {
    padding-left: 10px;
    padding-right: 10px;
  }

  /* Fixed footer */

  .page-footer-fixed .page-footer .container {
    padding-left: 0;
    padding-right: 0;
  }
}

/* Scroll Top Top */

.scroll-to-top {
  display: inline-block;
  padding: 1px;
  text-align: center;
  position: fixed;
  bottom: 10px;
  z-index: 10001;
  display: none;
  right: 10px;
}

.scroll-to-top > i {
  display: inline-block;
  color: #687991;
  font-size: 30px;
  opacity: 0.6;
  filter: alpha(opacity=60);
}

.scroll-to-top:hover {
  cursor: pointer;
}

.scroll-to-top:hover > i {
  opacity: 1;
  filter: alpha(opacity=100);
}

@media (min-width: 992px) {
  /* 992px */

  .scroll-to-top {
    right: 20px;
  }
}

@media (max-width: 991px) {
  /* 991px */

  .scroll-to-top {
    bottom: 10px;
    right: 10px;
  }

  .scroll-to-top > i {
    font-size: 28px;
  }
}

/***
Theme Panel
***/

.theme-panel {
  width: 420px;
  margin-top: -13px;
  margin-right: 0px;
  z-index: 100;
  float: right;
  position: relative;
  /* content solid bg color */
}

.theme-panel > .toggler {
  top: 4px;
  right: 0;
  padding: 20px;
  cursor: pointer;
  position: absolute;
  background: #536881 url(/images/icon-color.png?8ea411376cb9da9395329f1286b232a9) center no-repeat;
  border-radius: 4px;
}

.theme-panel > .toggler:hover {
  background-color: #3f4f62 !important;
}

.theme-panel > .toggler-close {
  display: none;
  top: 4px;
  right: 0;
  padding: 20px;
  z-index: 101;
  cursor: pointer;
  position: absolute;
  background: #2b3643 url(/images/icon-color-close.png?f461c5690cd9c39a39eea4fd22d5640e) center no-repeat !important;
  border-radius: 4px;
}

.theme-panel > .toggler-close:hover {
  background-color: #212933 !important;
}

.theme-panel > .theme-options {
  top: 4px;
  right: 0;
  display: none;
  position: absolute;
  z-index: 100;
  background: #2b3643;
  border-radius: 4px;
}

.theme-panel > .theme-options > .theme-option {
  color: #c6cfda;
  padding: 15px;
  border-top: 1px solid #354353;
  margin-top: 0px;
  margin-bottom: 0px;
}

.theme-panel > .theme-options > .theme-option > span {
  text-transform: uppercase;
  display: inline-block;
  width: 145px;
  font-size: 13px;
  font-weight: 300;
}

.theme-panel > .theme-options > .theme-option > select.form-control {
  display: inline;
  width: 135px;
  padding: 2px;
  text-transform: lowercase;
}

.theme-panel > .theme-options > .theme-option.theme-colors {
  border-top: 0;
}

.theme-panel > .theme-options > .theme-option.theme-colors > span {
  display: block;
  width: auto;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul {
  list-style: none;
  padding: 0;
  display: block;
  margin-bottom: 10px !important;
  margin-top: 15px;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li {
  width: 40px;
  height: 40px;
  margin: 0 4px;
  cursor: pointer;
  list-style: none;
  float: left;
  border: solid 1px #707070;
  /* theme colors */
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li:first-child {
  margin-left: 0;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li:hover,
.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.current {
  border: solid 2px #d64635;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-default {
  background: #333438;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-darkblue {
  background: #2b3643;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-blue {
  background: #2D5F8B;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-grey {
  background: #697380;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-light {
  background: #F9FAFD;
}

.theme-panel > .theme-options > .theme-option.theme-colors > ul > li.color-light2 {
  background: #F1F1F1;
}

.page-content-white .theme-panel,
.page-container-bg-solid .theme-panel {
  position: absolute;
  margin-top: 30px;
  margin-right: 20px;
  right: 0;
}

.page-content-white .theme-panel > .toggler1,
.page-container-bg-solid .theme-panel > .toggler1 {
  background: #BFCAD1 url(/images/icon-color.png?8ea411376cb9da9395329f1286b232a9) center no-repeat;
}

.page-content-white.page-sidebar-reversed .theme-panel,
.page-container-bg-solid.page-sidebar-reversed .theme-panel {
  margin-right: 255px;
}

.page-content-white.page-sidebar-reversed.page-sidebar-closed .theme-panel,
.page-container-bg-solid.page-sidebar-reversed.page-sidebar-closed .theme-panel {
  margin-right: 65px;
}

/******************
Page Quick Sidebar
******************/

/* Quick sidebar toggler */

.page-header .top-menu .dropdown-quick-sidebar-toggler > .dropdown-toggle {
  padding: 19px 10px 10px 10px !important;
}

.page-header .top-menu .dropdown-quick-sidebar-toggler > .dropdown-toggle i {
  top: 0px;
}

.page-header .top-menu .dropdown-quick-sidebar-toggler > .dropdown-toggle i:before {
  content: "";
}

.page-quick-sidebar-open .page-header .top-menu .dropdown-quick-sidebar-toggler > .dropdown-toggle i:before {
  content: "";
}

/* Page Portlet Fullscreen */

.page-portlet-fullscreen .page-quick-sidebar-wrapper,
.page-portlet-fullscreen .page-quick-sidebar-toggler {
  z-index: -1;
}

/* Quick sidebar toggler */

.page-quick-sidebar-toggler {
  overflow: hidden;
  z-index: 99999;
  display: none;
  width: 28px;
  height: 27px;
  position: fixed;
  top: 10px;
  right: 15px;
  text-align: center;
  padding-top: 6px;
}

.page-quick-sidebar-toggler:hover {
  background: #303a43;
}

.page-quick-sidebar-open .page-quick-sidebar-toggler {
  display: inline-block;
}

.page-quick-sidebar-open .page-quick-sidebar-toggler:hover {
  background: none;
}

.page-quick-sidebar-toggler > i {
  color: #99a8b5;
  font-size: 17px;
}

.page-quick-sidebar-toggler > i:hover {
  color: #fff !important;
}

.page-quick-sidebar-open .page-quick-sidebar-toggler > i:before {
  content: "";
}

/* Quick sidebar wrapper */

.page-quick-sidebar-wrapper {
  transition: right 0.3s;
  z-index: 10500;
  position: fixed;
  top: 0;
  bottom: 0;
  width: 320px;
  right: -320px;
  overflow: hidden;
  color: #99a8b5;
  background: #21282e;
}

.page-quick-sidebar-open .page-quick-sidebar-wrapper {
  transition: right 0.3s;
  right: 0;
}

.page-quick-sidebar-wrapper .page-quick-sidebar {
  background: #21282e;
  /* Quick sidebar tabs content */
  /* Quick sidebar general list heading */
  /* Quick sidebar general list-items */
  /* Inner content */
  /* Quick sidebar list */
  /* Quick sidebar list item */
  /* Quick sidebar list item shown */
  /* Quick sidebar chat */
  /* Quick sidebar alerts */
  /* Quick sidebar settings */
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs {
  margin: 0;
  padding: 0;
  border: 0;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li {
  display: table-cell !important;
  width: 1%  !important;
  padding: 0;
  margin: 0;
  float: none;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li > a {
  position: relative;
  display: block;
  text-align: center;
  border: 0;
  height: auto;
  font-size: 14px;
  padding: 45px 15px 8px;
  text-transform: uppercase;
  background: none;
  margin-right: 0;
  color: #90a1af;
  border: 0;
  border-bottom: 3px solid rgba(243, 86, 93, 0.3);
  border-radius: 0;
  outline: none !important;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li > a > .badge {
  position: absolute;
  top: 45px;
  right: 3px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li.active > a,
.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li:hover > a {
  border: 0;
  border-bottom: 3px solid #f3565d;
  background: none;
  color: #fff;
  text-decoration: none;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu {
  border: 0;
  background: #36424c;
  box-shadow: 5px 5px rgba(97, 117, 135, 0.1);
  margin-top: 8px;
  margin-right: 20px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu:before {
  position: absolute;
  top: -7px;
  right: 19px;
  display: inline-block !important;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-bottom: 7px solid #36424c;
  content: '';
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu:after {
  position: absolute;
  top: -6px;
  right: 20px;
  display: inline-block !important;
  border-right: 6px solid transparent;
  border-left: 6px solid transparent;
  border-bottom: 7px solid #36424c;
  content: '';
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu > li > a {
  padding: 10px 15px;
  color: #99a8b5;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu > li > a > i {
  color: #93a3b1;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu > li:hover > a {
  background: #3d4a55;
  color: #99a8b5;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu > li:hover > a > i {
  color: #9babb8;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu > li.active > a {
  background: #38444f;
  color: #99a8b5;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li .dropdown-menu > li.divider {
  background-color: #3d4a55;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .nav-tabs > li.open > a.dropdown-toggle {
  border-bottom: 3px solid #f3565d;
  background: none;
  text-decoration: none;
  color: #90a1af;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .tab-content {
  margin: 0;
  padding: 0;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .list-heading {
  font-size: 16px;
  margin: 10px 10px;
  color: #6c8296;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .list-items {
  margin: 0;
  padding: 0;
  list-style: none;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .list-items > li {
  margin: 0;
  padding: 15px;
  background: none;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #273037;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .list-items > li:hover {
  background: #273037;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .list-items > li:last-child {
  border-bottom: 0;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .list-items.borderless li {
  border: 0;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .inner-content {
  margin: 10px 10px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-list {
  position: absolute !important;
  width: 320px !important;
  transition: margin 0.3s;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-item {
  width: 320px;
  position: absolute !important;
  width: 320px !important;
  transition: margin 0.3s;
  margin-left: 320px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-item .page-quick-sidebar-nav {
  padding: 15px 10px 0px 10px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-item .page-quick-sidebar-nav .page-quick-sidebar-back-to-list {
  vertical-align: middle;
  display: inline-block;
  font-size: 14px;
  color: #90a1af;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-item .page-quick-sidebar-nav .page-quick-sidebar-back-to-list:hover {
  text-decoration: none;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-item .page-quick-sidebar-nav .page-quick-sidebar-back-to-list > i {
  font-size: 17px;
  line-height: 17px;
  vertical-align: top;
  margin-right: 3px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-content-item-shown .page-quick-sidebar-list {
  transition: margin 0.3s;
  margin-left: -320px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-content-item-shown .page-quick-sidebar-list .slimScrollBar,
.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-content-item-shown .page-quick-sidebar-list .slimScrollRail {
  display: none !important;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-content-item-shown .page-quick-sidebar-item {
  transition: margin 0.3s;
  margin-left: 0;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users {
  padding: 10px 0;
  position: relative;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media {
  padding: 15px 15px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media .media-object {
  border-radius: 50% !important;
  width: 45.71428571px;
  opacity: 0.8;
  filter: alpha(opacity=80);
  float: left;
  margin-right: 10px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media .media-object:before,
.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media .media-object:after {
  content: " ";
  display: table;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media .media-object:after {
  clear: both;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media:hover {
  cursor: pointer;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media:hover .media-object {
  opacity: 1;
  filter: alpha(opacity=100);
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media .media-body .media-heading {
  margin: 5px 0 0 0;
  font-size: 14px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media .media-body .media-heading-sub {
  font-size: 11px;
  text-transform: uppercase;
  color: #657b8d;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media .media-body .media-heading-small {
  font-size: 10px;
  color: #5d7081;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-users .media-list .media .media-status {
  margin-top: 10px;
  right: 10px;
  position: absolute;
  display: inline-block;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages {
  padding: 0px 10px;
  position: relative;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post {
  transition: display 0.3s;
  padding: 5px 0;
  margin: 10px auto;
  font-size: 13px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post .body {
  color: #c3c3c3;
  display: block;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post .avatar {
  width: 45.71428571px;
  border-radius: 50% !important;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post.in .avatar {
  float: left;
  margin-right: 10px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post.out .avatar {
  float: right;
  margin-left: 10px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post .name {
  font-size: 12px;
  font-weight: 300;
  color: #8496a7;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post .datetime {
  font-size: 12px;
  font-weight: 300;
  color: #8496a7;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post .message {
  display: block;
  padding: 5px;
  position: relative;
  color: #90a1af;
  background: #36424c;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post.in .message {
  text-align: left;
  margin-left: 55px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post.in .message .arrow {
  display: block;
  position: absolute;
  top: 9px;
  left: -6px;
  width: 0;
  height: 0;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-right-width: 6px;
  border-right-style: solid;
  border-right-color: #36424c;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post.out .message {
  margin-right: 55px;
  text-align: right;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post.out .message .arrow {
  display: block;
  position: absolute;
  top: 9px;
  right: -6px;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left-width: 6px;
  border-left-style: solid;
  border-left-color: #36424c;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post.out .name,
.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-messages .post.out .datetime {
  text-align: right;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-chat .page-quick-sidebar-chat-user .page-quick-sidebar-chat-user-form {
  padding: 20px 10px 15px 10px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-alerts .page-quick-sidebar-alerts-list {
  padding: 10px 0;
  position: relative;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-alerts .page-quick-sidebar-alerts-list .feeds li a {
  color: #7e91a2;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-alerts .page-quick-sidebar-alerts-list .feeds li a .label {
  margin-top: 5px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-alerts .page-quick-sidebar-alerts-list .feeds li a .desc {
  text-decoration: underline;
  padding: 0;
  color: #788c9e;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-alerts .page-quick-sidebar-alerts-list .feeds li a .date {
  color: #5d7081;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-settings .page-quick-sidebar-settings-list {
  padding: 10px 0;
  position: relative;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-settings .page-quick-sidebar-settings-list .list-items li .bootstrap-switch {
  margin-top: -3px;
  float: right;
  border: 0;
  min-width: 59px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-settings .page-quick-sidebar-settings-list .list-items li .form-control {
  width: 75px !important;
  padding: 4px 4px !important;
  float: right;
  border: 0;
  margin-top: -4px;
}

.page-quick-sidebar-wrapper .page-quick-sidebar .page-quick-sidebar-settings .page-quick-sidebar-settings-list .list-items li select.form-control {
  padding: 4px 0px !important;
}

.quick-nav {
  position: fixed;
  z-index: 10103;
  top: 50%;
  right: 10px;
  margin-top: -230px;
  pointer-events: none;
}

.quick-nav .quick-nav-bg {
  /* this is the stretching navigation background */
  position: absolute;
  z-index: 10102;
  top: 0;
  right: 0;
  width: 60px;
  height: 60px;
  border-radius: 30px !important;
  background: #36C6D3;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  webkit-transition: height .2s, box-shadow .2s;
  transition: height .2s, box-shadow .2s;
}

.quick-nav.nav-is-visible {
  pointer-events: auto;
}

.quick-nav.nav-is-visible .quick-nav-bg {
  height: 100%;
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.2);
}

.quick-nav-trigger {
  position: absolute;
  z-index: 10103;
  top: 0;
  right: 0;
  height: 60px;
  width: 60px;
  border-radius: 50% !important;
  overflow: hidden;
  white-space: nowrap;
  color: transparent;
  pointer-events: auto;
}

.quick-nav-trigger span,
.quick-nav-trigger span::after,
.quick-nav-trigger span::before {
  /* this is the hamburger icon */
  position: absolute;
  width: 16px;
  height: 2px;
  background-color: #ffffff;
}

.quick-nav-trigger span {
  /* middle line of the hamburger icon */
  webkit-transition: background-color 0.2s;
  transition: background-color 0.2s;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  webkit-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

.quick-nav-trigger span::after,
.quick-nav-trigger span::before {
  /* top and bottom lines of the hamburger icon */
  content: '';
  top: 0;
  left: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  webkit-transition: transform 0.2s;
  transition: transform 0.2s;
}

.quick-nav-trigger span::before {
  webkit-transform: translateY(-6px);
  transform: translateY(-6px);
}

.quick-nav-trigger span::after {
  webkit-transform: translateY(6px);
  transform: translateY(6px);
}

.no-touch .quick-nav-trigger:hover ~ .quick-nav-bg {
  box-shadow: 0 6px 30px rgba(0, 0, 0, 0.2);
}

.nav-is-visible .quick-nav-trigger span {
  background-color: transparent;
}

.nav-is-visible .quick-nav-trigger span::before {
  webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.nav-is-visible .quick-nav-trigger span::after {
  webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.quick-nav ul {
  position: relative;
  z-index: 10103;
  padding: 60px 0 0;
  visibility: hidden;
  webkit-transition: visibility 0.3s;
  transition: visibility 0.3s;
  text-align: right;
  list-style: none;
}

.quick-nav ul > li a {
  position: relative;
  display: block;
  height: 50px;
  line-height: 50px;
  padding: 0 calc(1em + 60px) 0 1em;
  font-size: 1.4rem;
  webkit-transition: color 0.2s;
  transition: color 0.2s;
}

.quick-nav ul > li a:hover {
  text-decoration: none;
}

.quick-nav ul > li a:hover > span {
  text-decoration: none;
}

.quick-nav ul > li a > i {
  /* navigation item icons */
  content: '';
  position: absolute;
  height: 16px;
  width: 16px;
  font-size: 18px;
  right: 24px;
  top: 16px;
  color: #ebebeb;
}

.quick-nav ul > li a::before {
  /* line visible next to the active navigation item */
  content: '';
  position: absolute;
  width: 3px;
  height: 16px;
  top: 50%;
  right: 60px;
  webkit-transform: translateX(3px) translateY(-50%) scaleY(0);
  transform: translateX(3px) translateY(-50%) scaleY(0);
  background-color: #FF3F3F;
}

.quick-nav ul > li span {
  /* navigation item labels */
  color: #ebebeb;
  font-weight: 400;
  display: block;
  opacity: 0;
  webkit-transform: translateX(-25px);
  transform: translateX(-25px);
}

.quick-nav ul > li:last-child {
  padding-bottom: 10px;
}

.quick-nav.nav-is-visible ul {
  visibility: visible;
}

.quick-nav.nav-is-visible ul a::after {
  /* navigation item icons */
  webkit-transform: translateY(-50%) scale(1);
  transform: translateY(-50%) scale(1);
  animation: scaleIn 0.15s backwards;
  webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}

.quick-nav.nav-is-visible ul a:hover::after {
  opacity: 1;
}

.quick-nav.nav-is-visible ul a:hover::before {
  webkit-transform: translateX(3px) translateY(-50%) scaleY(2);
  transform: translateX(3px) translateY(-50%) scaleY(2);
  webkit-transition: transform 0.15s 0.3s;
  transition: transform 0.15s 0.3s;
}

.quick-nav.nav-is-visible ul a:hover > span {
  color: white;
}

.quick-nav.nav-is-visible ul a:hover > i {
  color: #fafafa;
}

.quick-nav.nav-is-visible ul span {
  opacity: 1;
  webkit-transform: translateX(0);
  transform: translateX(0);
  animation: slideIn 0.15s backwards;
  webkit-transition: transform 0.2s;
  transition: transform 0.2s;
}

.no-touch .quick-nav.nav-is-visible ul a:hover::after {
  opacity: 1;
}

.no-touch .quick-nav.nav-is-visible ul a:hover span {
  webkit-transform: translateX(-5px);
  transform: translateX(-5px);
}

.quick-nav-overlay {
  display: none;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  position: fixed;
  z-index: 10101;
  background: rgba(0, 0, 0, 0);
}

.quick-nav.nav-is-visible + .quick-nav-overlay {
  background: rgba(0, 0, 0, 0.8);
  display: block;
  transition: background .7s ease-out;
}

@media (max-width: 991px) {
  /* 991px */

  .quick-nav {
    top: 120px;
    margin-top: 0;
  }
}

/***  
Page Loading       
***/

.page-on-load {
  background: #fefefe;
}

.page-on-load .page-header,
.page-on-load .page-container,
.page-on-load .page-footer,
.page-on-load > .clearfix {
  display: none;
  transition: all 2s;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL2xheW91dC9sYXlvdXQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvX3ZhcmlhYmxlcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2dsb2JhbC9fY29sb3JzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvX21peGlucy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2hpZGUtdGV4dC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19pbWFnZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2l6ZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL190YWItZm9jdXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtb3ZlcmZsb3cuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL192ZW5kb3ItcHJlZml4ZXMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19idXR0b25zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fcGFuZWxzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2xpc3QtZ3JvdXAuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fcHJvZ3Jlc3MtYmFyLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fYm9yZGVyLXJhZGl1cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fY2VudGVyLWJsb2NrLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fbmF2LXZlcnRpY2FsLWFsaWduLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9ib290c3RyYXAvbWl4aW5zL19ncmlkLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvZ2xvYmFsL19ib290c3RyYXAtb3ZlcnJpZGUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9nbG9iYWwvY29tcG9uZW50cy9fbWl4aW5zLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvbGF5b3V0cy9sYXlvdXQvX3ZhcmlhYmxlcy5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2xheW91dHMvbGF5b3V0L2xheW91dC9fcHJpbnQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL2xheW91dC9sYXlvdXQvX2hlYWRlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2xheW91dHMvbGF5b3V0L2xheW91dC9fcGFnZS1jb250YWluZXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL2xheW91dC9sYXlvdXQvX3NpZGViYXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL2xheW91dC9sYXlvdXQvX2NvbnRlbnQuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL2xheW91dC9sYXlvdXQvX2Zvb3Rlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2xheW91dHMvbGF5b3V0L2xheW91dC9fdGhlbWUtcGFuZWwuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL2xheW91dC9sYXlvdXQvX3F1aWNrLXNpZGViYXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL3F1aWNrLXNpZGViYXIvX3F1aWNrLXNpZGViYXIuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9sYXlvdXRzL3F1aWNrLXNpZGViYXIvX3F1aWNrLW5hdi5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIyMgTWFpbiBMYXlvdXQgQ1NTIEJ1aWxkZXJcblxuQGltcG9ydCAnLi4vLi4vZ2xvYmFsL192YXJpYWJsZXMnOyAvLyBnbG9iYWwgbWV0cm9uaWMgZnJhbWV3b3JrIHZhcmlhYmxlc1xuQGltcG9ydCAnLi4vLi4vZ2xvYmFsL2NvbXBvbmVudHMvX21peGlucyc7IC8vIGdsb2JhbCBtZXRyb25pYyBmcmFtZXdvcmsgbWl4aW5nc1xuXG5AaW1wb3J0ICdfdmFyaWFibGVzJzsgLy8gdGhlbWUgbGV2ZWwgdmFyaWFibGVzICBcblxuQGltcG9ydCAnbGF5b3V0L19wcmludCc7IC8vIHByaW50IGxheW91dCAgICAgXG4gICAgICAgICAgICAgIFxuQGltcG9ydCAnbGF5b3V0L19oZWFkZXInOyAvLyBwYWdlIGhlYWRlciAgIFxuQGltcG9ydCAnbGF5b3V0L19wYWdlLWNvbnRhaW5lcic7IC8vIHBhZ2UgbWFpbiBjb250YWluZXIgICAgICAgXG5AaW1wb3J0ICdsYXlvdXQvX3NpZGViYXInOyAgLy8gcGFnZSBzaWRlYmFyICAgICAgICBcbkBpbXBvcnQgJ2xheW91dC9fY29udGVudCc7IC8vIHBhZ2UgY29uc25kZSAgICAgICAgICAgICAgICAgICAgICAgIFxuQGltcG9ydCAnbGF5b3V0L19mb290ZXInOyAgIC8vIHBhZ2UgZm9vdGVyICAgICAgICAgICAgICAgICAgICAgXG5AaW1wb3J0ICdsYXlvdXQvX3RoZW1lLXBhbmVsJzsgIC8vIHRoZW1lIGN1c3RvbWl6ZXIgcGFuZWxcbkBpbXBvcnQgJ2xheW91dC9fcXVpY2stc2lkZWJhcic7ICAvLyBxdWljayBzaWRlYmFyIHRvZ2dsZXIgICAgICAgICAgICAgICAgICBcblxuQGltcG9ydCAnLi4vcXVpY2stc2lkZWJhci9fcXVpY2stc2lkZWJhcic7ICAvLyBxdWljayBzaWRlYmFyIGNvbnRlbnQgXG5AaW1wb3J0ICcuLi9xdWljay1zaWRlYmFyL19xdWljay1uYXYnOyAgLy8gcXVpY2sgbmF2aWdhdGlvbiAgIFxuXG4vKioqICBcblBhZ2UgTG9hZGluZyAgICAgICBcbioqKi9cblxuLnBhZ2Utb24tbG9hZCB7XG5cdGJhY2tncm91bmQ6ICNmZWZlZmU7XG5cblx0LnBhZ2UtaGVhZGVyLFxuXHQucGFnZS1jb250YWluZXIsXG5cdC5wYWdlLWZvb3Rlcixcblx0PiAuY2xlYXJmaXgge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDJzO1xuXHR9XG59IiwiLy8jIyBCb290c3RyYXAgXG4vL1xuLy8gQ29yZSBib290c3RyYXAgdmFyaWFibGVzIGFuZCBtaXhpbnNcbkBpbXBvcnQgXCJjb2xvcnNcIjtcblxuQGltcG9ydCBcIi4uL2Jvb3RzdHJhcC92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi9ib290c3RyYXAvbWl4aW5zXCI7XG5cbiRkaXJlY3Rpb246IFx0XHRcdFx0XHRcdCdsdHInICFkZWZhdWx0O1xuJHRoZW1lLXN0eWxlOiBcdFx0XHRcdFx0XHQnc3F1YXJlJyAhZGVmYXVsdDsgICAgICAgICBcbiR0aGVtZS10eXBlOiAgXHRcdFx0XHRcdFx0J2RlZmF1bHQnICFkZWZhdWx0O1xuICAgIFxuLy8jIyAgVHlwb2dyYXBoeVxuLy9cbi8vIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktcHJpbWFyeTogIFx0ICBcdFx0IFx0XCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1uYXY6XHQgIFx0XHQgXHRcdFJvYm90bywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1kZWZhdWx0OiAgXHQgIFx0XHQgXHRcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRnZW5lcmFsLWhlYWRpbmctY29sb3I6XHRcdFx0XHQjM2Y0NDRhO1xuJGdlbmVyYWwtdGV4dC1jb2xvcjogIFx0XHRcdFx0ZGFya2VuKCM2Nzc1ODEsIDUlKTtcbiRnZW5lcmFsLXRyYW5zaXRpb246XHRcdFx0XHRhbGwgMC4zcztcblxuLy8gR2xvYmFsIHRleHQgY29sb3Igb24gPGJvZHk+XG4kdGV4dC1jb2xvcjogICAgICAgICAgICBcdFx0XHQjMzMzMzMzICFkZWZhdWx0OyAgICAgIFxuICBcbi8vIEdsb2JhbCBsaWdodCB0ZXh0IGNvbG9yIG9uIDxib2R5PlxuJHRleHQtbGlnaHQtY29sb3I6ICAgICBcdCBcdFx0XHQjZmZmZmZmICFkZWZhdWx0OyAgXG5cbi8vIEdsb2JhbCBtdXRlZCB0ZXh0IGNvbG9yIG9uIDxib2R5PlxuJHRleHQtbXV0ZWQtY29sb3I6ICAgICAgXHRcdFx0IzQ0NDQ0NCAhZGVmYXVsdDtcbiAgIFxuLy8gR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgIFx0XHRcdCM1YjliZDEgIWRlZmF1bHQ7XG5cbi8vIExpbmsgaG92ZXIgY29sb3IuXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBcdFx0XHRkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG5cbiRwcmltYXJ5LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM2NUEwRDAgIWRlZmF1bHQ7XG5cbiRnZW5lcmFsLWJvcmRlci1yYWRpdXM6XHRcdFx0XHQ0cHggIWRlZmF1bHQ7XG5cbkBpZiAkdGhlbWUtdHlwZSA9PSBcIm1hdGVyaWFsLWRlc2lnblwiIHtcblx0JGdlbmVyYWwtYm9yZGVyLXJhZGl1czpcdFx0XHQycHggIWdsb2JhbDtcbn0gXG5cbiRkcm9wZG93bi1zaGFkb3c6XHRcdFx0XHRcdDVweCA1cHggcmdiYSgjNjY2LCAwLjEpO1xuJGljb24tc2l6ZS1ub3JtYWw6XHRcdFx0XHRcdDE0cHggIWRlZmF1bHQ7XG4kYnJhbmQtZGVmYXVsdDpcdFx0XHRcdFx0XHRsaWdodGVuKCNiN2MwY2UsIDElKSAhZGVmYXVsdDsgIFxuJGdlbmVyYWwtcGFuZWwtYmctY29sb3I6XHRcdFx0I2YxZjRmNyAhZGVmYXVsdDtcbiRnZW5lcmFsLXBhbmVsLWJvcmRlci1jb2xvcjpcdFx0ZGFya2VuKCNmMWY0ZjcsIDMlKSAhZGVmYXVsdDtcbiRnZW5lcmFsLXBhbmVsLWZvbnQtY29sb3I6XHRcdFx0IzNmNDQ0YSAhZGVmYXVsdDtcbiRnZW5lcmFsLXNoYWRvdzpcdFx0XHRcdFx0MHB4IDJweCAzcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wMyk7ICBcbiRnZW5lcmFsLWljb24tY29sb3I6XHRcdFx0XHRkYXJrZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDE1JSk7XG4kcGFnZS1jb250ZW50LXNvbGlkLWJnLWNvbG9yOiAgICAgICBkYXJrZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDElKSAhZGVmYXVsdDsgLy8gY29udGVudCBzb2xpZCBiZyBjb2xvci4gZGVmYXVsdDojRjBGMkY3LlxuXG4vLyMjIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIFx0XHRcdDk5OTU7XG4kemluZGV4LW5hdmJhci1hYm92ZTogICAgICBcdFx0XHQ5OTk5O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgXHRcdFx0MTAwMDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgIFx0XHRcdDEwMTA7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICBcdFx0XHQxMDMwO1xuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgXHRcdFx0MTAzMDtcbiR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDogIFx0XHRcdDEwMDQ5OyBcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIFx0XHRcdDEwMDUwO1xuJHppbmRleC10b3A6XHRcdFx0XHRcdFx0MTAxMDA7XG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgXHRcdDQ4MHB4ICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXQgIFxuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICBcdFx0NzY4cHggIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgIFx0XHQ5OTJweCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgXHQgXHQxMjAwcHggIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlIC8gd2lkZXIgZGVza3RvcCAgICAgIFxuJHNjcmVlbi1sZy1tZWQ6ICAgICAgICAgICAgICAgICAgICAgMTI2MHB4ICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgXHRcdCgkc2NyZWVuLXNtLW1pbiAtIDEpICFkZWZhdWx0OyAgLy8gNzY3cHhcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgXHRcdCgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0OyAgLy8gOTkxcHhcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgXHRcdCgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0OyAgLy8gMTE5OXB4ICBcblxuLy8jIyBJbWFnZSAgcGF0aHNcbiRnbG9iYWwtaW1nLXBhdGg6ICAgICAgICAgICBcdFx0Jy4uL2ltZy8nICFkZWZhdWx0OyBcbiRwYWdlLWltZy1wYXRoOiAgICAgICAgICAgXHRcdFx0Jy4uL2ltZy8nICFkZWZhdWx0OyAgIFxuJHBhZ2UtbWVkaWEtcGF0aDogICAgICAgICAgIFx0XHQnLi4vbWVkaWEvJyAhZGVmYXVsdDsgXG5cbi8vIE1ldHJvbmljIGdyaWQgc3lzdGVtXG5cbiRtLWxheW91dC1icmVha3BvaW50czogKFxuICAvLyBTbWFsbCBzY3JlZW4gLyBwaG9uZVxuICB4czogNDgwcHgsXG4gIC8vIE1lZGl1bSBzY3JlZW4gLyB0YWJsZXRcbiAgc206IDc2OHB4LFxuICAvLyBMYXJnZSBzY3JlZW4gLyBkZXNrdG9wXG4gIG1kOiA5OTJweCxcbiAgLy8gRXh0cmEgbGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4gIGxnOiAxMjYwcHhcbikgIWRlZmF1bHQ7XG5cbi8vPT0gR3JpZCBzeXN0ZW1cblxuLy8qKiBOdW1iZXIgb2YgY29sdW1ucyBpbiB0aGUgZ3JpZC5cbiRtLWdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuJG0tZ3JpZC1jb2x1bW5zLWd1dHRlcjogICAgICAgMjBweCAhZGVmYXVsdDtcblxuXG5AaW1wb3J0IFwiX2Jvb3RzdHJhcC1vdmVycmlkZVwiOyIsIi8vQ29tcG9uZW50IGNvbG9yc1xuXG4kY29tcG9uZW50LWNvbG9yczogKFxuXHRcIndoaXRlXCI6XHQoYmFzZTojZmZmZmZmLCBmb250OiAjNjY2KSxcblx0XCJkZWZhdWx0XCI6XHQoYmFzZTojZTFlNWVjLCBmb250OiAjNjY2KSxcblx0XCJkYXJrXCI6XHQoYmFzZTojMmYzNTNiLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlXCI6XHQoYmFzZTojMzU5OGRjLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLW1hZGlzb25cIjpcdChiYXNlOiM1NzhlYmUsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImJsdWUtY2hhbWJyYXlcIjpcdChiYXNlOiMyQzNFNTAsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImJsdWUtZWJvbnljbGF5XCI6XHQoYmFzZTojMjIzMTNGLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLWhva2lcIjpcdChiYXNlOiM2NzgwOUYsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImJsdWUtc3RlZWxcIjpcdChiYXNlOiM0Qjc3QkUsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImJsdWUtc29mdFwiOlx0KGJhc2U6IzRjODdiOSwgZm9udDogI0ZGRkZGRiksXG5cdFwiYmx1ZS1kYXJrXCI6XHQoYmFzZTojNWU3MzhiLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLXNoYXJwXCI6XHQoYmFzZTojNUM5QkQxLCBmb250OiAjRkZGRkZGKSxcblx0XCJibHVlLW9sZW9cIjpcdChiYXNlOiM5NEEwQjIsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImJsdWUtbGlnaHRcIjogKGJhc2U6IzAwQkZGRiwgZm9udDogI0ZGRkZGRiksXG5cdFwiZ3JlZW5cIjpcdChiYXNlOiMzMmM1ZDIsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZWVuLW1lYWRvd1wiOlx0KGJhc2U6IzFCQkM5QiwgZm9udDogI0ZGRkZGRiksXG5cdFwiZ3JlZW4tc2VhZ3JlZW5cIjpcdChiYXNlOiMxQkEzOUMsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZWVuLXR1cnF1b2lzZVwiOlx0KGJhc2U6IzM2RDdCNywgZm9udDogI0ZGRkZGRiksXG5cdFwiZ3JlZW4taGF6ZVwiOlx0KGJhc2U6IzQ0YjZhZSwgZm9udDogI0ZGRkZGRiksXG5cdFwiZ3JlZW4tanVuZ2xlXCI6XHQoYmFzZTojMjZDMjgxLCBmb250OiAjRkZGRkZGKSxcblx0XCJncmVlbi1zb2Z0XCI6XHQoYmFzZTojM2ZhYmE0LCBmb250OiAjRkZGRkZGKSxcblx0XCJncmVlbi1kYXJrXCI6XHQoYmFzZTojNERCM0EyLCBmb250OiAjRkZGRkZGKSxcblx0XCJncmVlbi1zaGFycFwiOlx0KGJhc2U6IzJhYjRjMCwgZm9udDogI0ZGRkZGRiksXG5cdFwiZ3JlZW4tc3RlZWxcIjpcdChiYXNlOiMyOWI0YjYsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZXlcIjpcdChiYXNlOiNFNUU1RTUsIGZvbnQ6ICMzMzMzMzMpLFxuXHRcImdyZXktc3RlZWxcIjpcdChiYXNlOiNlOWVkZWYsIGZvbnQ6ICM4MDg5OGUpLFxuXHRcImdyZXktY2FyYXJyYVwiOlx0KGJhc2U6I2ZhZmFmYSwgZm9udDogIzMzMzMzMyksXG5cdFwiZ3JleS1nYWxsZXJ5XCI6XHQoYmFzZTojNTU1NTU1LCBmb250OiAjZmZmZmZmKSxcblx0XCJncmV5LWNhc2NhZGVcIjpcdChiYXNlOiM5NUE1QTYsIGZvbnQ6ICNGRkZGRkYpLFxuXHRcImdyZXktc2lsdmVyXCI6XHQoYmFzZTojQkZCRkJGLCBmb250OiAjRkFGQ0ZCKSxcblx0XCJncmV5LXNhbHNhXCI6XHQoYmFzZTojQUNCNUMzLCBmb250OiAjRkFGQ0ZCKSxcblx0XCJncmV5LXNhbHRcIjpcdChiYXNlOiNiZmNhZDEsIGZvbnQ6ICNGQUZDRkIpLFxuXHRcImdyZXktbWludFwiOlx0KGJhc2U6IzUyNWU2NCwgZm9udDogI0ZGRkZGRiksXG5cdFwicmVkXCI6XHQoYmFzZTojZTc1MDVhLCBmb250OiAjZmZmZmZmKSxcblx0XCJyZWQtcGlua1wiOlx0KGJhc2U6I0UwODI4MywgZm9udDogI2ZmZmZmZiksXG5cdFwicmVkLXN1bmdsb1wiOlx0KGJhc2U6I0UyNkE2QSwgZm9udDogI2ZmZmZmZiksXG5cdFwicmVkLWludGVuc2VcIjpcdChiYXNlOiNlMzViNWEsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInJlZC10aHVuZGVyYmlyZFwiOlx0KGJhc2U6I0Q5MUUxOCwgZm9udDogI2ZmZmZmZiksXG5cdFwicmVkLWZsYW1pbmdvXCI6XHQoYmFzZTojRUY0ODM2LCBmb250OiAjZmZmZmZmKSxcblx0XCJyZWQtc29mdFwiOlx0KGJhc2U6I2QwNTQ1NCwgZm9udDogI2ZmZmZmZiksXG5cdFwicmVkLWhhemVcIjpcdChiYXNlOiNmMzZhNWEsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInJlZC1taW50XCI6XHQoYmFzZTojZTQzYTQ1LCBmb250OiAjZmZmZmZmKSxcblx0XCJ5ZWxsb3dcIjpcdChiYXNlOiNjNDlmNDcsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInllbGxvdy1nb2xkXCI6XHQoYmFzZTojRTg3RTA0LCBmb250OiAjZmZmZmZmKSxcblx0XCJ5ZWxsb3ctY2FzYWJsYW5jYVwiOlx0KGJhc2U6I2YyNzg0YiwgZm9udDogI2ZmZmZmZiksXG5cdFwieWVsbG93LWNydXN0YVwiOlx0KGJhc2U6I2YzYzIwMCwgZm9udDogI2ZmZmZmZiksXG5cdFwieWVsbG93LWxlbW9uXCI6XHQoYmFzZTojRjdDQTE4LCBmb250OiAjZmZmZmZmKSxcblx0XCJ5ZWxsb3ctc2FmZnJvblwiOlx0KGJhc2U6I0Y0RDAzRiwgZm9udDogI2ZmZmZmZiksXG5cdFwieWVsbG93LXNvZnRcIjpcdChiYXNlOiNjOGQwNDYsIGZvbnQ6ICNmZmZmZmYpLFxuXHRcInllbGxvdy1oYXplXCI6XHQoYmFzZTojYzViZjY2LCBmb250OiAjZmZmZmZmKSxcblx0XCJ5ZWxsb3ctbWludFwiOlx0KGJhc2U6I2M1Yjk2YiwgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlXCI6XHQoYmFzZTojOEU0NEFELCBmb250OiAjZmZmZmZmKSxcblx0XCJwdXJwbGUtcGx1bVwiOlx0KGJhc2U6Izg3NzVhNywgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlLW1lZGl1bVwiOlx0KGJhc2U6I0JGNTVFQywgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlLXN0dWRpb1wiOlx0KGJhc2U6IzhFNDRBRCwgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlLXdpc3RlcmlhXCI6XHQoYmFzZTojOUI1OUI2LCBmb250OiAjZmZmZmZmKSxcblx0XCJwdXJwbGUtc2VhbmNlXCI6XHQoYmFzZTojOUExMkIzLCBmb250OiAjZmZmZmZmKSxcblx0XCJwdXJwbGUtaW50ZW5zZVwiOlx0KGJhc2U6Izg3NzVhNywgZm9udDogI2ZmZmZmZiksXG5cdFwicHVycGxlLXNoYXJwXCI6XHQoYmFzZTojNzk2Nzk5LCBmb250OiAjZmZmZmZmKSxcblx0XCJwdXJwbGUtc29mdFwiOlx0KGJhc2U6Izg4NzdhOSwgZm9udDogI2ZmZmZmZilcbik7XG4iLCIkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyOiBmYWxzZSAhZGVmYXVsdDtcbi8vXG4vLyBWYXJpYWJsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy89PSBDb2xvcnNcbi8vXG4vLyMjIEdyYXkgYW5kIGJyYW5kIGNvbG9ycyBmb3IgdXNlIGFjcm9zcyBCb290c3RyYXAuXG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGdyYXktZGFya2VyOiAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMTMuNSUpICFkZWZhdWx0OyAvLyAjMjIyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAyMCUpICFkZWZhdWx0OyAgIC8vICMzMzNcbiRncmF5OiAgICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKSAhZGVmYXVsdDsgLy8gIzU1NVxuJGdyYXktbGlnaHQ6ICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgNDYuNyUpICFkZWZhdWx0OyAvLyAjNzc3XG4kZ3JheS1saWdodGVyOiAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA5My41JSkgIWRlZmF1bHQ7IC8vICNlZWVcblxuJGJyYW5kLXByaW1hcnk6ICAgICAgICAgZGFya2VuKCM0MjhiY2EsIDYuNSUpICFkZWZhdWx0OyAvLyAjMzM3YWI3XG4kYnJhbmQtc3VjY2VzczogICAgICAgICAjNWNiODVjICFkZWZhdWx0O1xuJGJyYW5kLWluZm86ICAgICAgICAgICAgIzViYzBkZSAhZGVmYXVsdDtcbiRicmFuZC13YXJuaW5nOiAgICAgICAgICNmMGFkNGUgIWRlZmF1bHQ7XG4kYnJhbmQtZGFuZ2VyOiAgICAgICAgICAjZDk1MzRmICFkZWZhdWx0O1xuXG5cbi8vPT0gU2NhZmZvbGRpbmdcbi8vXG4vLyMjIFNldHRpbmdzIGZvciBzb21lIG9mIHRoZSBtb3N0IGdsb2JhbCBzdHlsZXMuXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgYDxib2R5PmAuXG4kYm9keS1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgdGV4dCBjb2xvciBvbiBgPGJvZHk+YC5cbiR0ZXh0LWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIHRleHR1YWwgbGluayBjb2xvci5cbiRsaW5rLWNvbG9yOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGNvbG9yIHNldCB2aWEgYGRhcmtlbigpYCBmdW5jdGlvbi5cbiRsaW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkbGluay1jb2xvciwgMTUlKSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBkZWNvcmF0aW9uLlxuJGxpbmstaG92ZXItZGVjb3JhdGlvbjogdW5kZXJsaW5lICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwb2dyYXBoeVxuLy9cbi8vIyMgRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXG5cbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXG5cbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxuXG4vLyBbY29udmVydGVyXSBJZiAkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyIGlmIHVzZWQsIHByb3ZpZGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgYXNzZXRzIGxvYWQgcGF0aC5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgYmVjYXVzZSBzb21lIGFzc2V0IGhlbHBlcnMsIHN1Y2ggYXMgU3Byb2NrZXRzLCBkbyBub3Qgd29yayB3aXRoIGZpbGUtcmVsYXRpdmUgcGF0aHMuXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XG5cbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgMXB4ICFkZWZhdWx0O1xuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMzMzMzMyAhZGVmYXVsdDsgLy8gZXh0cmEgZGVjaW1hbHMgZm9yIFdpbiA4LjEgQ2hyb21lXG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgNHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAzcHggIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRlIGRyb3Bkb3ducy5cbiRjYXJldC13aWR0aC1iYXNlOiAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIENhcmV0cyBpbmNyZWFzZSBzbGlnaHRseSBpbiBzaXplIGZvciBsYXJnZXIgY29tcG9uZW50cy5cbiRjYXJldC13aWR0aC1sYXJnZTogICAgICAgICA1cHggIWRlZmF1bHQ7XG5cblxuLy89PSBUYWJsZXNcbi8vXG4vLyMjIEN1c3RvbWl6ZXMgdGhlIGAudGFibGVgIGNvbXBvbmVudCB3aXRoIGJhc2ljIHZhbHVlcywgZWFjaCB1c2VkIGFjcm9zcyBhbGwgdGFibGUgdmFyaWF0aW9ucy5cblxuLy8qKiBQYWRkaW5nIGZvciBgPHRoPmBzIGFuZCBgPHRkPmBzLlxuJHRhYmxlLWNlbGwtcGFkZGluZzogICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgZm9yIGNlbGxzIGluIGAudGFibGUtY29uZGVuc2VkYC5cbiR0YWJsZS1jb25kZW5zZWQtY2VsbC1wYWRkaW5nOiAgNXB4ICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBhbGwgdGFibGVzLlxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLXN0cmlwZWRgLlxuJHRhYmxlLWJnLWFjY2VudDogICAgICAgICAgICAgICAjZjlmOWY5ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtaG92ZXJgLlxuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHRhYmxlLWJnLWFjdGl2ZTogICAgICAgICAgICAgICAkdGFibGUtYmctaG92ZXIgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0YWJsZSBhbmQgY2VsbCBib3JkZXJzLlxuJHRhYmxlLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gQnV0dG9uc1xuLy9cbi8vIyMgRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbm9ybWFsICFkZWZhdWx0O1xuXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4td2FybmluZy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYW5nZXItYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vIEFsbG93cyBmb3IgY3VzdG9taXppbmcgYnV0dG9uIHJhZGl1cyBpbmRlcGVuZGVudGx5IGZyb20gZ2xvYmFsIGJvcmRlciByYWRpdXNcbiRidG4tYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybXNcbi8vXG4vLyMjXG5cbi8vKiogYDxpbnB1dD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZzogICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0PmAgYm9yZGVyIGNvbG9yXG4kaW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyBUT0RPOiBSZW5hbWUgYCRpbnB1dC1ib3JkZXItcmFkaXVzYCB0byBgJGlucHV0LWJvcmRlci1yYWRpdXMtYmFzZWAgaW4gdjRcbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuLy8gVGhpcyBoYXMgbm8gZWZmZWN0IG9uIGA8c2VsZWN0PmBzIGluIHNvbWUgYnJvd3NlcnMsIGR1ZSB0byB0aGUgbGltaXRlZCBzdHlsYWJpbGl0eSBvZiBgPHNlbGVjdD5gcyBpbiBDU1MuXG4kaW5wdXQtYm9yZGVyLXJhZGl1czogICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbDogICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGlucHV0cyBvbiBmb2N1c1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgIzY2YWZlOSAhZGVmYXVsdDtcblxuLy8qKiBQbGFjZWhvbGRlciB0ZXh0IGNvbG9yXG4kaW5wdXQtY29sb3ItcGxhY2Vob2xkZXI6ICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1iYXNlOiAgICAgICAgICAgICAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1sYXJnZTogICAgICAgICAgICAgKGNlaWwoJGZvbnQtc2l6ZS1sYXJnZSAqICRsaW5lLWhlaWdodC1sYXJnZSkgKyAoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LXNtYWxsOiAgICAgICAgICAgICAoZmxvb3IoJGZvbnQtc2l6ZS1zbWFsbCAqICRsaW5lLWhlaWdodC1zbWFsbCkgKyAoJHBhZGRpbmctc21hbGwtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuXG4vLyoqIGAuZm9ybS1ncm91cGAgbWFyZ2luXG4kZm9ybS1ncm91cC1tYXJnaW4tYm90dG9tOiAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kbGVnZW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJGxlZ2VuZC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xuJGlucHV0LWdyb3VwLWFkZG9uLWJnOiAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0ZXh0dWFsIGlucHV0IGFkZG9uc1xuJGlucHV0LWdyb3VwLWFkZG9uLWJvcmRlci1jb2xvcjogJGlucHV0LWJvcmRlciAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBjdXJzb3IgZm9yIGZvcm0gY29udHJvbHMgYW5kIGJ1dHRvbnMuXG4kY3Vyc29yLWRpc2FibGVkOiAgICAgICAgICAgICAgICBub3QtYWxsb3dlZCAhZGVmYXVsdDtcblxuXG4vLz09IERyb3Bkb3duc1xuLy9cbi8vIyMgRHJvcGRvd24gbWVudSBjb250YWluZXIgYW5kIGNvbnRlbnRzLlxuXG4vLyoqIEJhY2tncm91bmQgZm9yIHRoZSBkcm9wZG93biBtZW51LlxuJGRyb3Bkb3duLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYC5cbiRkcm9wZG93bi1ib3JkZXI6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjE1KSAhZGVmYXVsdDtcbi8vKiogRHJvcGRvd24gbWVudSBgYm9yZGVyLWNvbG9yYCAqKmZvciBJRTgqKi5cbiRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4vLyoqIERpdmlkZXIgY29sb3IgZm9yIGJldHdlZW4gZHJvcGRvd24gaXRlbXMuXG4kZHJvcGRvd24tZGl2aWRlci1iZzogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIERyb3Bkb3duIGxpbmsgdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWNvbG9yOiAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4vLyoqIEhvdmVyIGNvbG9yIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWNvbG9yOiAgICAgIGRhcmtlbigkZ3JheS1kYXJrLCA1JSkgIWRlZmF1bHQ7XG4vLyoqIEhvdmVyIGJhY2tncm91bmQgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItYmc6ICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtY29sb3I6ICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnOiAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1kaXNhYmxlZC1jb2xvcjogICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBoZWFkZXJzIHdpdGhpbiBkcm9wZG93biBtZW51cy5cbiRkcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIERlcHJlY2F0ZWQgYCRkcm9wZG93bi1jYXJldC1jb2xvcmAgYXMgb2YgdjMuMS4wXG4kZHJvcGRvd24tY2FyZXQtY29sb3I6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuXG5cbi8vLS0gWi1pbmRleCBtYXN0ZXIgbGlzdFxuLy9cbi8vIFdhcm5pbmc6IEF2b2lkIGN1c3RvbWl6aW5nIHRoZXNlIHZhbHVlcy4gVGhleSdyZSB1c2VkIGZvciBhIGJpcmQncyBleWUgdmlld1xuLy8gb2YgY29tcG9uZW50cyBkZXBlbmRlbnQgb24gdGhlIHotYXhpcyBhbmQgYXJlIGRlc2lnbmVkIHRvIGFsbCB3b3JrIHRvZ2V0aGVyLlxuLy9cbi8vIE5vdGU6IFRoZXNlIHZhcmlhYmxlcyBhcmUgbm90IGdlbmVyYXRlZCBpbnRvIHRoZSBDdXN0b21pemVyLlxuXG4kemluZGV4LW5hdmJhcjogICAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtcG9wb3ZlcjogICAgICAgICAgIDEwNjAgIWRlZmF1bHQ7XG4kemluZGV4LXRvb2x0aXA6ICAgICAgICAgICAxMDcwICFkZWZhdWx0O1xuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgMTAzMCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDogIDEwNDAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICAxMDUwICFkZWZhdWx0O1xuXG5cbi8vPT0gTWVkaWEgcXVlcmllcyBicmVha3BvaW50c1xuLy9cbi8vIyMgRGVmaW5lIHRoZSBicmVha3BvaW50cyBhdCB3aGljaCB5b3VyIGxheW91dCB3aWxsIGNoYW5nZSwgYWRhcHRpbmcgdG8gZGlmZmVyZW50IHNjcmVlbiBzaXplcy5cblxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14c2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXhzOiAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzLW1pbmAgYXMgb2YgdjMuMi4wXG4kc2NyZWVuLXhzLW1pbjogICAgICAgICAgICAgICRzY3JlZW4teHMgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tcGhvbmVgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1waG9uZTogICAgICAgICAgICAgICAkc2NyZWVuLXhzLW1pbiAhZGVmYXVsdDtcblxuLy8gU21hbGwgc2NyZWVuIC8gdGFibGV0XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tc21gIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1zbTogICAgICAgICAgICAgICAgICA3NjhweCAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1zbSAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi10YWJsZXRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi10YWJsZXQ6ICAgICAgICAgICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1tZGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLW1kOiAgICAgICAgICAgICAgICAgIDk5MnB4ICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1taW46ICAgICAgICAgICAgICAkc2NyZWVuLW1kICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1kZXNrdG9wOiAgICAgICAgICAgICAkc2NyZWVuLW1kLW1pbiAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGdgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZzogICAgICAgICAgICAgICAgICAxMjAwcHggIWRlZmF1bHQ7XG4kc2NyZWVuLWxnLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbGcgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbGctZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnLWRlc2t0b3A6ICAgICAgICAgICRzY3JlZW4tbGctbWluICFkZWZhdWx0O1xuXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cbiRzY3JlZW4teHMtbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLW1kLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi1tZC1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1sZy1taW4gLSAxKSAhZGVmYXVsdDtcblxuXG4vLz09IEdyaWQgc3lzdGVtXG4vL1xuLy8jIyBEZWZpbmUgeW91ciBjdXN0b20gcmVzcG9uc2l2ZSBncmlkLlxuXG4vLyoqIE51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuJGdyaWQtY29sdW1uczogICAgICAgICAgICAgIDEyICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGJldHdlZW4gY29sdW1ucy4gR2V0cyBkaXZpZGVkIGluIGhhbGYgZm9yIHRoZSBsZWZ0IGFuZCByaWdodC5cbiRncmlkLWd1dHRlci13aWR0aDogICAgICAgICAzMHB4ICFkZWZhdWx0O1xuLy8gTmF2YmFyIGNvbGxhcHNlXG4vLyoqIFBvaW50IGF0IHdoaWNoIHRoZSBuYXZiYXIgYmVjb21lcyB1bmNvbGxhcHNlZC5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQ6ICAgICAkc2NyZWVuLXNtLW1pbiAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWdpbnMgY29sbGFwc2luZy5cbiRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4OiAoJGdyaWQtZmxvYXQtYnJlYWtwb2ludCAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29udGFpbmVyIHNpemVzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIG1heGltdW0gd2lkdGggb2YgYC5jb250YWluZXJgIGZvciBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbiRjb250YWluZXItdGFibGV0OiAgICAgICAgICAgICAoNzIwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tc20tbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLXNtOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci10YWJsZXQgIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4kY29udGFpbmVyLWRlc2t0b3A6ICAgICAgICAgICAgKDk0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLW1kLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1tZDogICAgICAgICAgICAgICAgICRjb250YWluZXItZGVza3RvcCAhZGVmYXVsdDtcblxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXG4kY29udGFpbmVyLWxhcmdlLWRlc2t0b3A6ICAgICAgKDExNDBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1sZy1taW5gIGFuZCB1cC5cbiRjb250YWluZXItbGc6ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLWxhcmdlLWRlc2t0b3AgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZiYXJcbi8vXG4vLyMjXG5cbi8vIEJhc2ljcyBvZiBhIG5hdmJhclxuJG5hdmJhci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJG5hdmJhci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAkbGluZS1oZWlnaHQtY29tcHV0ZWQgIWRlZmF1bHQ7XG4kbmF2YmFyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgIGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSkgIWRlZmF1bHQ7XG4kbmF2YmFyLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICgoJG5hdmJhci1oZWlnaHQgLSAkbGluZS1oZWlnaHQtY29tcHV0ZWQpIC8gMikgIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ6ICAgICAgIDM0MHB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICNmOGY4ZjggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgbGlua3NcbiRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJnLCA2LjUlKSAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtYmc6ICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAkbmF2YmFyLWRlZmF1bHQtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICBkYXJrZW4oJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnOiAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBOYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAjODg4ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1ib3JkZXItY29sb3I6ICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PT0gSW52ZXJ0ZWQgbmF2YmFyXG4vLyBSZXNldCBpbnZlcnRlZCBuYXZiYXIgYmFzaWNzXG4kbmF2YmFyLWludmVyc2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICMyMjIgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBsaW5rc1xuJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWxpZ2h0LCAxNSUpICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtYmc6ICAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgYnJhbmQgbGFiZWxcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1jb2xvcjogICAgICAgICAgICAgICAgJG5hdmJhci1pbnZlcnNlLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBJbnZlcnRlZCBuYXZiYXIgdG9nZ2xlXG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWhvdmVyLWJnOiAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWljb24tYmFyLWJnOiAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBOYXZzXG4vL1xuLy8jI1xuXG4vLz09PSBTaGFyZWQgbmF2IHN0eWxlc1xuJG5hdi1saW5rLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kbmF2LWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtZGlzYWJsZWQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLz09IFRhYnNcbiRuYXYtdGFicy1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYmc6ICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgI2RkZCAhZGVmYXVsdDtcblxuJG5hdi10YWJzLWp1c3RpZmllZC1saW5rLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi10YWJzLWp1c3RpZmllZC1hY3RpdmUtbGluay1ib3JkZXItY29sb3I6ICAgICAkYm9keS1iZyAhZGVmYXVsdDtcblxuLy89PSBQaWxsc1xuJG5hdi1waWxscy1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBQYWdpbmF0aW9uXG4vL1xuLy8jI1xuXG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAkbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1ob3Zlci1ib3JkZXI6ICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iZzogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tZGlzYWJsZWQtYm9yZGVyOiAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2VyXG4vL1xuLy8jI1xuXG4kcGFnZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1iZyAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJvcmRlciAhZGVmYXVsdDtcbiRwYWdlci1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRwYWdlci1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWhvdmVyLWJnICFkZWZhdWx0O1xuXG4kcGFnZXItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4kcGFnZXItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkcGFnaW5hdGlvbi1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG5cbiRwYWdlci1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG5cbi8vPT0gSnVtYm90cm9uXG4vL1xuLy8jI1xuXG4kanVtYm90cm9uLXBhZGRpbmc6ICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1jb2xvcjogICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRqdW1ib3Ryb24tYmc6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctY29sb3I6ICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1mb250LXNpemU6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS41KSkgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWhlYWRpbmctZm9udC1zaXplOiAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiA0LjUpKSAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICAjM2M3NjNkICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgI2RmZjBkOCAhZGVmYXVsdDtcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1zdWNjZXNzLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1pbmZvLXRleHQ6ICAgICAgICAgICAgICAgICMzMTcwOGYgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1iZzogICAgICAgICAgICAgICAgICAjZDllZGY3ICFkZWZhdWx0O1xuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWluZm8tYmcsIC0xMCksIDclKSAhZGVmYXVsdDtcblxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgIzhhNmQzYiAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICNmY2Y4ZTMgIWRlZmF1bHQ7XG4kc3RhdGUtd2FybmluZy1ib3JkZXI6ICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtd2FybmluZy1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICAjYTk0NDQyICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgI2YyZGVkZSAhZGVmYXVsdDtcbiRzdGF0ZS1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS1kYW5nZXItYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuXG4vLz09IFRvb2x0aXBzXG4vL1xuLy8jI1xuXG4vLyoqIFRvb2x0aXAgbWF4IHdpZHRoXG4kdG9vbHRpcC1tYXgtd2lkdGg6ICAgICAgICAgICAyMDBweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCB0ZXh0IGNvbG9yXG4kdG9vbHRpcC1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIGJhY2tncm91bmQgY29sb3JcbiR0b29sdGlwLWJnOiAgICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kdG9vbHRpcC1vcGFjaXR5OiAgICAgICAgICAgICAuOSAhZGVmYXVsdDtcblxuLy8qKiBUb29sdGlwIGFycm93IHdpZHRoXG4kdG9vbHRpcC1hcnJvdy13aWR0aDogICAgICAgICA1cHggIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYXJyb3cgY29sb3JcbiR0b29sdGlwLWFycm93LWNvbG9yOiAgICAgICAgICR0b29sdGlwLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gUG9wb3ZlcnNcbi8vXG4vLyMjXG5cbi8vKiogUG9wb3ZlciBib2R5IGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBtYXhpbXVtIHdpZHRoXG4kcG9wb3Zlci1tYXgtd2lkdGg6ICAgICAgICAgICAgICAgICAgIDI3NnB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGJvcmRlciBjb2xvclxuJHBvcG92ZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBmYWxsYmFjayBib3JkZXIgY29sb3JcbiRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIHRpdGxlIGJhY2tncm91bmQgY29sb3JcbiRwb3BvdmVyLXRpdGxlLWJnOiAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRwb3BvdmVyLWJnLCAzJSkgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctd2lkdGg6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGFycm93IGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1jb2xvcjogICAgICAgICAgICAgICAgICRwb3BvdmVyLWJnICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgd2lkdGhcbiRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoOiAgICAgICAgICAgKCRwb3BvdmVyLWFycm93LXdpZHRoICsgMSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yOiAgICAgICAgICAgZmFkZV9pbigkcG9wb3Zlci1ib3JkZXItY29sb3IsIDAuMDUpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG91dGVyIGFycm93IGZhbGxiYWNrIGNvbG9yXG4kcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjogIGRhcmtlbigkcG9wb3Zlci1mYWxsYmFjay1ib3JkZXItY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG5cblxuLy89PSBMYWJlbHNcbi8vXG4vLyMjXG5cbi8vKiogRGVmYXVsdCBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtZGVmYXVsdC1iZzogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogUHJpbWFyeSBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtcHJpbWFyeS1iZzogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtc3VjY2Vzcy1iZzogICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogSW5mbyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtaW5mby1iZzogICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBsYWJlbCBiYWNrZ3JvdW5kIGNvbG9yXG4kbGFiZWwtd2FybmluZy1iZzogICAgICAgICAgICAkYnJhbmQtd2FybmluZyAhZGVmYXVsdDtcbi8vKiogRGFuZ2VyIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kYW5nZXItYmc6ICAgICAgICAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBsYWJlbCB0ZXh0IGNvbG9yXG4kbGFiZWwtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IHRleHQgY29sb3Igb2YgYSBsaW5rZWQgbGFiZWxcbiRsYWJlbC1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBNb2RhbHNcbi8vXG4vLyMjXG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCBib2R5XG4kbW9kYWwtaW5uZXItcGFkZGluZzogICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4vLyoqIFBhZGRpbmcgYXBwbGllZCB0byB0aGUgbW9kYWwgdGl0bGVcbiRtb2RhbC10aXRsZS1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIHRpdGxlIGxpbmUtaGVpZ2h0XG4kbW9kYWwtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAkbGluZS1oZWlnaHQtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIG1vZGFsIGNvbnRlbnQgYXJlYVxuJG1vZGFsLWNvbnRlbnQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvclxuJG1vZGFsLWNvbnRlbnQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4yKSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgY29udGVudCBib3JkZXIgY29sb3IgKipmb3IgSUU4KipcbiRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjogICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBNb2RhbCBiYWNrZHJvcCBiYWNrZ3JvdW5kIGNvbG9yXG4kbW9kYWwtYmFja2Ryb3AtYmc6ICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBiYWNrZHJvcCBvcGFjaXR5XG4kbW9kYWwtYmFja2Ryb3Atb3BhY2l0eTogICAgICAuNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgaGVhZGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I6ICAgI2U1ZTVlNSAhZGVmYXVsdDtcbi8vKiogTW9kYWwgZm9vdGVyIGJvcmRlciBjb2xvclxuJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I6ICAgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3IgIWRlZmF1bHQ7XG5cbiRtb2RhbC1sZzogICAgICAgICAgICAgICAgICAgIDkwMHB4ICFkZWZhdWx0O1xuJG1vZGFsLW1kOiAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtc206ICAgICAgICAgICAgICAgICAgICAzMDBweCAhZGVmYXVsdDtcblxuXG4vLz09IEFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGFsZXJ0IGNvbG9ycywgYm9yZGVyIHJhZGl1cywgYW5kIHBhZGRpbmcuXG5cbiRhbGVydC1wYWRkaW5nOiAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kYWxlcnQtYm9yZGVyLXJhZGl1czogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgYm9sZCAhZGVmYXVsdDtcblxuJGFsZXJ0LXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC13YXJuaW5nLWJnOiAgICAgICAgICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LWRhbmdlci1iZzogICAgICAgICAgICAgJHN0YXRlLWRhbmdlci1iZyAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyICFkZWZhdWx0O1xuXG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHRoZSB3aG9sZSBwcm9ncmVzcyBjb21wb25lbnRcbiRwcm9ncmVzcy1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFByb2dyZXNzIGJhciB0ZXh0IGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBWYXJpYWJsZSBmb3Igc2V0dGluZyByb3VuZGVkIGNvcm5lcnMgb24gcHJvZ3Jlc3MgYmFyLlxuJHByb2dyZXNzLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm8gIWRlZmF1bHQ7XG5cblxuLy89PSBMaXN0IGdyb3VwXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb24gYC5saXN0LWdyb3VwLWl0ZW1gXG4kbGlzdC1ncm91cC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIGAubGlzdC1ncm91cC1pdGVtYCBib3JkZXIgY29sb3JcbiRsaXN0LWdyb3VwLWJvcmRlcjogICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogTGlzdCBncm91cCBib3JkZXIgcmFkaXVzXG4kbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzOiAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvZiBzaW5nbGUgbGlzdCBpdGVtcyBvbiBob3ZlclxuJGxpc3QtZ3JvdXAtaG92ZXItYmc6ICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtY29sb3I6ICAgICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtYmc6ICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3Igb2YgYWN0aXZlIGxpc3QgZWxlbWVudHNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXI6ICAgICAgJGxpc3QtZ3JvdXAtYWN0aXZlLWJnICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIGZvciBjb250ZW50IHdpdGhpbiBhY3RpdmUgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtYWN0aXZlLXRleHQtY29sb3I6ICBsaWdodGVuKCRsaXN0LWdyb3VwLWFjdGl2ZS1iZywgNDAlKSAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGRpc2FibGVkIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6ICRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kbGlzdC1ncm91cC1saW5rLWNvbG9yOiAgICAgICAgICM1NTUgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhvdmVyLWNvbG9yOiAgICRsaXN0LWdyb3VwLWxpbmstY29sb3IgIWRlZmF1bHQ7XG4kbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I6ICMzMzMgIWRlZmF1bHQ7XG5cblxuLy89PSBQYW5lbHNcbi8vXG4vLyMjXG5cbiRwYW5lbC1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtYm9keS1wYWRkaW5nOiAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWhlYWRpbmctcGFkZGluZzogICAgICAgMTBweCAxNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1wYWRkaW5nOiAgICAgICAgJHBhbmVsLWhlYWRpbmctcGFkZGluZyAhZGVmYXVsdDtcbiRwYW5lbC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBlbGVtZW50cyB3aXRoaW4gcGFuZWxzXG4kcGFuZWwtaW5uZXItYm9yZGVyOiAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHBhbmVsLWZvb3Rlci1iZzogICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHBhbmVsLWRlZmF1bHQtdGV4dDogICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWJvcmRlcjogICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZGVmYXVsdC1oZWFkaW5nLWJnOiAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuXG5cbi8vPT0gVGh1bWJuYWlsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFyb3VuZCB0aGUgdGh1bWJuYWlsIGltYWdlXG4kdGh1bWJuYWlsLXBhZGRpbmc6ICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4vLyoqIFRodW1ibmFpbCBiYWNrZ3JvdW5kIGNvbG9yXG4kdGh1bWJuYWlsLWJnOiAgICAgICAgICAgICAgICAkYm9keS1iZyAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciBjb2xvclxuJHRodW1ibmFpbC1ib3JkZXI6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJvcmRlciByYWRpdXNcbiR0aHVtYm5haWwtYm9yZGVyLXJhZGl1czogICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG5cbi8vKiogQ3VzdG9tIHRleHQgY29sb3IgZm9yIHRodW1ibmFpbCBjYXB0aW9uc1xuJHRodW1ibmFpbC1jYXB0aW9uLWNvbG9yOiAgICAgJHRleHQtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgY2FwdGlvblxuJHRodW1ibmFpbC1jYXB0aW9uLXBhZGRpbmc6ICAgOXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gV2VsbHNcbi8vXG4vLyMjXG5cbiR3ZWxsLWJnOiAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kd2VsbC1ib3JkZXI6ICAgICAgICAgICAgICAgICBkYXJrZW4oJHdlbGwtYmcsIDclKSAhZGVmYXVsdDtcblxuXG4vLz09IEJhZGdlc1xuLy9cbi8vIyNcblxuJGJhZGdlLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogTGlua2VkIGJhZGdlIHRleHQgY29sb3Igb24gaG92ZXJcbiRiYWRnZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYmFkZ2UtYmc6ICAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBCYWRnZSB0ZXh0IGNvbG9yIGluIGFjdGl2ZSBuYXYgbGlua1xuJGJhZGdlLWFjdGl2ZS1jb2xvcjogICAgICAgICAgJGxpbmstY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhZGdlIGJhY2tncm91bmQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWJnOiAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kYmFkZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICBib2xkICFkZWZhdWx0O1xuJGJhZGdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRiYWRnZS1ib3JkZXItcmFkaXVzOiAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG5cblxuLy89PSBCcmVhZGNydW1ic1xuLy9cbi8vIyNcblxuJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbDogICA4cHggIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw6IDE1cHggIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgYmFja2dyb3VuZCBjb2xvclxuJGJyZWFkY3J1bWItYmc6ICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuLy8qKiBCcmVhZGNydW1iIHRleHQgY29sb3JcbiRicmVhZGNydW1iLWNvbG9yOiAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBvZiBjdXJyZW50IHBhZ2UgaW4gdGhlIGJyZWFkY3J1bWJcbiRicmVhZGNydW1iLWFjdGl2ZS1jb2xvcjogICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIFRleHR1YWwgc2VwYXJhdG9yIGZvciBiZXR3ZWVuIGJyZWFkY3J1bWIgZWxlbWVudHNcbiRicmVhZGNydW1iLXNlcGFyYXRvcjogICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDYXJvdXNlbFxuLy9cbi8vIyNcblxuJGNhcm91c2VsLXRleHQtc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgIDAgMXB4IDJweCByZ2JhKDAsMCwwLC42KSAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNvbnRyb2wtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgMTUlICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgIC41ICFkZWZhdWx0O1xuJGNhcm91c2VsLWNvbnRyb2wtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1pbmRpY2F0b3ItYWN0aXZlLWJnOiAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ2xvc2Vcbi8vXG4vLyMjXG5cbiRjbG9zZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kY2xvc2UtY29sb3I6ICAgICAgICAgICAgICAgICAjMDAwICFkZWZhdWx0O1xuJGNsb3NlLXRleHQtc2hhZG93OiAgICAgICAgICAgMCAxcHggMCAjZmZmICFkZWZhdWx0O1xuXG5cbi8vPT0gQ29kZVxuLy9cbi8vIyNcblxuJGNvZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgI2M3MjU0ZSAhZGVmYXVsdDtcbiRjb2RlLWJnOiAgICAgICAgICAgICAgICAgICAgICNmOWYyZjQgIWRlZmF1bHQ7XG5cbiRrYmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4ka2JkLWJnOiAgICAgICAgICAgICAgICAgICAgICAjMzMzICFkZWZhdWx0O1xuXG4kcHJlLWJnOiAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHByZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRwcmUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDogICAzNDBweCAhZGVmYXVsdDtcblxuXG4vLz09IFR5cGVcbi8vXG4vLyMjXG5cbi8vKiogSG9yaXpvbnRhbCBvZmZzZXQgZm9yIGZvcm1zIGFuZCBsaXN0cy5cbiRjb21wb25lbnQtb2Zmc2V0LWhvcml6b250YWw6IDE4MHB4ICFkZWZhdWx0O1xuLy8qKiBUZXh0IG11dGVkIGNvbG9yXG4kdGV4dC1tdXRlZDogICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQWJicmV2aWF0aW9ucyBhbmQgYWNyb255bXMgYm9yZGVyIGNvbG9yXG4kYWJici1ib3JkZXItY29sb3I6ICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogSGVhZGluZ3Mgc21hbGwgY29sb3JcbiRoZWFkaW5ncy1zbWFsbC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIHNtYWxsIGNvbG9yXG4kYmxvY2txdW90ZS1zbWFsbC1jb2xvcjogICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBmb250IHNpemVcbiRibG9ja3F1b3RlLWZvbnQtc2l6ZTogICAgICAgICgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSAhZGVmYXVsdDtcbi8vKiogQmxvY2txdW90ZSBib3JkZXIgY29sb3JcbiRibG9ja3F1b3RlLWJvcmRlci1jb2xvcjogICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIFBhZ2UgaGVhZGVyIGJvcmRlciBjb2xvclxuJHBhZ2UtaGVhZGVyLWJvcmRlci1jb2xvcjogICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogV2lkdGggb2YgaG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0IHRpdGxlc1xuJGRsLWhvcml6b250YWwtb2Zmc2V0OiAgICAgICAgJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbCAhZGVmYXVsdDtcbi8vKiogUG9pbnQgYXQgd2hpY2ggLmRsLWhvcml6b250YWwgYmVjb21lcyBob3Jpem9udGFsXG4kZGwtaG9yaXpvbnRhbC1icmVha3BvaW50OiAgICAkZ3JpZC1mbG9hdC1icmVha3BvaW50ICFkZWZhdWx0O1xuLy8qKiBIb3Jpem9udGFsIGxpbmUgY29sb3IuXG4kaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuIiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvaGlkZS10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL29wYWNpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LWZpbHRlclwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LW92ZXJmbG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3ZlbmRvci1wcmVmaXhlc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0c1wiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhbmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcHJvZ3Jlc3MtYmFyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NlbnRlci1ibG9ja1wiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtdmVydGljYWwtYWxpZ25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuIiwiLy8gQ1NTIGltYWdlIHJlcGxhY2VtZW50XG4vL1xuLy8gSGVhZHMgdXAhIHYzIGxhdW5jaGVkIHdpdGggb25seSBgLmhpZGUtdGV4dCgpYCwgYnV0IHBlciBvdXIgcGF0dGVybiBmb3Jcbi8vIG1peGlucyBiZWluZyByZXVzZWQgYXMgY2xhc3NlcyB3aXRoIHRoZSBzYW1lIG5hbWUsIHRoaXMgZG9lc24ndCBob2xkIHVwLiBBc1xuLy8gb2YgdjMuMC4xIHdlIGhhdmUgYWRkZWQgYC50ZXh0LWhpZGUoKWAgYW5kIGRlcHJlY2F0ZWQgYC5oaWRlLXRleHQoKWAuXG4vL1xuLy8gU291cmNlOiBodHRwczovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZS9jb21taXQvYWEwMzk2ZWFlNzU3XG5cbi8vIERlcHJlY2F0ZWQgYXMgb2YgdjMuMC4xIChoYXMgYmVlbiByZW1vdmVkIGluIHY0KVxuQG1peGluIGhpZGUtdGV4dCgpIHtcbiAgZm9udDogMC8wIGE7XG4gIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDA7XG59XG5cbi8vIE5ldyBtaXhpbiB0byB1c2UgYXMgb2YgdjMuMC4xXG5AbWl4aW4gdGV4dC1oaWRlKCkge1xuICBAaW5jbHVkZSBoaWRlLXRleHQ7XG59XG4iLCIvLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCRvcGFjaXR5KSB7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xuICAvLyBJRTggZmlsdGVyXG4gICRvcGFjaXR5LWllOiAoJG9wYWNpdHkgKiAxMDApO1xuICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9JG9wYWNpdHktaWUpO1xufVxuIiwiLy8gSW1hZ2UgTWl4aW5zXG4vLyAtIFJlc3BvbnNpdmUgaW1hZ2Vcbi8vIC0gUmV0aW5hIGltYWdlXG5cblxuLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5AbWl4aW4gaW1nLXJlc3BvbnNpdmUoJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuIE5vdGUgdGhhdCB0aGVcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMXh9XCIpLCBcIiN7JGZpbGUtMXh9XCIpKTtcblxuICBAbWVkaWFcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgIG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAgICAgICAgICAgICAgICBtaW4tcmVzb2x1dGlvbjogMmRwcHgpIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0yeH1cIiksIFwiI3skZmlsZS0yeH1cIikpO1xuICAgIGJhY2tncm91bmQtc2l6ZTogJHdpZHRoLTF4ICRoZWlnaHQtMXg7XG4gIH1cbn1cbiIsIi8vIExhYmVsc1xuXG5AbWl4aW4gbGFiZWwtdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gICZbaHJlZl0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUmVzZXQgZmlsdGVycyBmb3IgSUVcbi8vXG4vLyBXaGVuIHlvdSBuZWVkIHRvIHJlbW92ZSBhIGdyYWRpZW50IGJhY2tncm91bmQsIGRvIG5vdCBmb3JnZXQgdG8gdXNlIHRoaXMgdG8gcmVzZXRcbi8vIHRoZSBJRSBmaWx0ZXIgZm9yIElFOSBhbmQgYmVsb3cuXG5cbkBtaXhpbiByZXNldC1maWx0ZXIoKSB7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KGVuYWJsZWQgPSBmYWxzZSk7XG59XG4iLCIvLyBSZXNpemUgYW55dGhpbmdcblxuQG1peGluIHJlc2l6YWJsZSgkZGlyZWN0aW9uKSB7XG4gIHJlc2l6ZTogJGRpcmVjdGlvbjsgLy8gT3B0aW9uczogaG9yaXpvbnRhbCwgdmVydGljYWwsIGJvdGhcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxufVxuIiwiLy8gUmVzcG9uc2l2ZSB1dGlsaXRpZXNcblxuLy9cbi8vIE1vcmUgZWFzaWx5IGluY2x1ZGUgYWxsIHRoZSBzdGF0ZXMgZm9yIHJlc3BvbnNpdmUtdXRpbGl0aWVzLmxlc3MuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlI3skcGFyZW50fSAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aCN7JHBhcmVudH0sXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xuICBAaW5jbHVkZSBzaXplKCRzaXplLCAkc2l6ZSk7XG59XG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcblxuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgLy8gV2ViS2l0LXNwZWNpZmljLiBPdGhlciBicm93c2VycyB3aWxsIGtlZXAgdGhlaXIgZGVmYXVsdCBvdXRsaW5lIHN0eWxlLlxuICAvLyAoSW5pdGlhbGx5IHRyaWVkIHRvIGFsc28gZm9yY2UgZGVmYXVsdCB2aWEgYG91dGxpbmU6IGluaXRpYWxgLFxuICAvLyBidXQgdGhhdCBzZWVtcyB0byBlcnJvbmVvdXNseSByZW1vdmUgdGhlIG91dGxpbmUgaW4gRmlyZWZveCBhbHRvZ2V0aGVyLilcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGxpbmUtYnJlYWs6IGF1dG87XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIC13ZWJraXQtaHlwaGVuczogJG1vZGU7XG4gICAgIC1tb3otaHlwaGVuczogJG1vZGU7XG4gICAgICAtbXMtaHlwaGVuczogJG1vZGU7IC8vIElFMTArXG4gICAgICAgLW8taHlwaGVuczogJG1vZGU7XG4gICAgICAgICAgaHlwaGVuczogJG1vZGU7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuICAuYWxlcnQtbGluayB7XG4gICAgY29sb3I6IGRhcmtlbigkdGV4dC1jb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuIiwiLy8gUGFuZWxzXG5cbkBtaXhpbiBwYW5lbC12YXJpYW50KCRib3JkZXIsICRoZWFkaW5nLXRleHQtY29sb3IsICRoZWFkaW5nLWJnLWNvbG9yLCAkaGVhZGluZy1ib3JkZXIpIHtcbiAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuXG4gICYgPiAucGFuZWwtaGVhZGluZyB7XG4gICAgY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaGVhZGluZy1ib3JkZXI7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICAgIC5iYWRnZSB7XG4gICAgICBjb2xvcjogJGhlYWRpbmctYmctY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuICAmID4gLnBhbmVsLWZvb3RlciB7XG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gUGFnaW5hdGlvblxuXG5AbWl4aW4gcGFnaW5hdGlvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gID4gbGkge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgfVxuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gTGlzdCBHcm91cHNcblxuQG1peGluIGxpc3QtZ3JvdXAtaXRlbS12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQsICRjb2xvcikge1xuICAubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcblxuICAgIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiwgYnV0dG9uJiB0byBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9XG4gIH1cblxuICBhLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0sXG4gIGJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuXG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICAgICYuYWN0aXZlLFxuICAgICYuYWN0aXZlOmhvdmVyLFxuICAgICYuYWN0aXZlOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIvLyBIb3Jpem9udGFsIGRpdmlkZXJzXG4vL1xuLy8gRGl2aWRlcnMgKGJhc2ljYWxseSBhbiBocikgd2l0aGluIGRyb3Bkb3ducyBhbmQgbmF2IGxpc3RzXG5cbkBtaXhpbiBuYXYtZGl2aWRlcigkY29sb3I6ICNlNWU1ZTUpIHtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbn1cbiIsIi8vIEZvcm0gdmFsaWRhdGlvbiBzdGF0ZXNcbi8vXG4vLyBVc2VkIGluIGZvcm1zLmxlc3MgdG8gZ2VuZXJhdGUgdGhlIGZvcm0gdmFsaWRhdGlvbiBDU1MgZm9yIHdhcm5pbmdzLCBlcnJvcnMsXG4vLyBhbmQgc3VjY2Vzc2VzLlxuXG5AbWl4aW4gZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHRleHQtY29sb3I6ICM1NTUsICRib3JkZXItY29sb3I6ICNjY2MsICRiYWNrZ3JvdW5kLWNvbG9yOiAjZjVmNWY1KSB7XG4gIC8vIENvbG9yIHRoZSBsYWJlbCBhbmQgaGVscCB0ZXh0XG4gIC5oZWxwLWJsb2NrLFxuICAuY29udHJvbC1sYWJlbCxcbiAgLnJhZGlvLFxuICAuY2hlY2tib3gsXG4gIC5yYWRpby1pbmxpbmUsXG4gIC5jaGVja2JveC1pbmxpbmUsXG4gICYucmFkaW8gbGFiZWwsXG4gICYuY2hlY2tib3ggbGFiZWwsXG4gICYucmFkaW8taW5saW5lIGxhYmVsLFxuICAmLmNoZWNrYm94LWlubGluZSBsYWJlbCAge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxuICAvLyBTZXQgdGhlIGJvcmRlciBhbmQgYm94IHNoYWRvdyBvbiBzcGVjaWZpYyBpbnB1dHMgdG8gbWF0Y2hcbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSkpOyAvLyBSZWRlY2xhcmUgc28gdHJhbnNpdGlvbnMgd29ya1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlci1jb2xvciwgMTAlKTtcbiAgICAgICRzaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgNnB4IGxpZ2h0ZW4oJGJvcmRlci1jb2xvciwgMjAlKTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG4gICAgfVxuICB9XG4gIC8vIFNldCB2YWxpZGF0aW9uIHN0YXRlcyBhbHNvIGZvciBhZGRvbnNcbiAgLmlucHV0LWdyb3VwLWFkZG9uIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICB9XG4gIC8vIE9wdGlvbmFsIGZlZWRiYWNrIGljb25cbiAgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG59XG5cblxuLy8gRm9ybSBjb250cm9sIGZvY3VzIHN0YXRlXG4vL1xuLy8gR2VuZXJhdGUgYSBjdXN0b21pemVkIGZvY3VzIHN0YXRlIGFuZCBmb3IgYW55IGlucHV0IHdpdGggdGhlIHNwZWNpZmllZCBjb2xvcixcbi8vIHdoaWNoIGRlZmF1bHRzIHRvIHRoZSBgJGlucHV0LWJvcmRlci1mb2N1c2AgdmFyaWFibGUuXG4vL1xuLy8gV2UgaGlnaGx5IGVuY291cmFnZSB5b3UgdG8gbm90IGN1c3RvbWl6ZSB0aGUgZGVmYXVsdCB2YWx1ZSwgYnV0IGluc3RlYWQgdXNlXG4vLyB0aGlzIHRvIHR3ZWFrIGNvbG9ycyBvbiBhbiBhcy1uZWVkZWQgYmFzaXMuIFRoaXMgYWVzdGhldGljIGNoYW5nZSBpcyBiYXNlZCBvblxuLy8gV2ViS2l0J3MgZGVmYXVsdCBzdHlsZXMsIGJ1dCBhcHBsaWNhYmxlIHRvIGEgd2lkZXIgcmFuZ2Ugb2YgYnJvd3NlcnMuIEl0c1xuLy8gdXNhYmlsaXR5IGFuZCBhY2Nlc3NpYmlsaXR5IHNob3VsZCBiZSB0YWtlbiBpbnRvIGFjY291bnQgd2l0aCBhbnkgY2hhbmdlLlxuLy9cbi8vIEV4YW1wbGUgdXNhZ2U6IGNoYW5nZSB0aGUgZGVmYXVsdCBibHVlIGJvcmRlciBhbmQgc2hhZG93IHRvIHdoaXRlIGZvciBiZXR0ZXJcbi8vIGNvbnRyYXN0IGFnYWluc3QgYSBkYXJrIGdyYXkgYmFja2dyb3VuZC5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtZm9jdXMoJGNvbG9yOiAkaW5wdXQtYm9yZGVyLWZvY3VzKSB7XG4gICRjb2xvci1yZ2JhOiByZ2JhKHJlZCgkY29sb3IpLCBncmVlbigkY29sb3IpLCBibHVlKCRjb2xvciksIC42KTtcbiAgJjpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgb3V0bGluZTogMDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsMCwwLC4wNzUpLCAwIDAgOHB4ICRjb2xvci1yZ2JhKTtcbiAgfVxufVxuXG4vLyBGb3JtIGNvbnRyb2wgc2l6aW5nXG4vL1xuLy8gUmVsYXRpdmUgdGV4dCBzaXplLCBwYWRkaW5nLCBhbmQgYm9yZGVyLXJhZGlpIGNoYW5nZXMgZm9yIGZvcm0gY29udHJvbHMuIEZvclxuLy8gaG9yaXpvbnRhbCBzaXppbmcsIHdyYXAgY29udHJvbHMgaW4gdGhlIHByZWRlZmluZWQgZ3JpZCBjbGFzc2VzLiBgPHNlbGVjdD5gXG4vLyBlbGVtZW50IGdldHMgc3BlY2lhbCBsb3ZlIGJlY2F1c2UgaXQncyBzcGVjaWFsLCBhbmQgdGhhdCdzIGEgZmFjdCFcbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGlucHV0LXNpemUoJHBhcmVudCwgJGlucHV0LWhlaWdodCwgJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gIH1cblxuICBzZWxlY3QjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gIH1cblxuICB0ZXh0YXJlYSN7JHBhcmVudH0sXG4gIHNlbGVjdFttdWx0aXBsZV0jeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbn1cbiIsIi8vIFByb2dyZXNzIGJhcnNcblxuQG1peGluIHByb2dyZXNzLWJhci12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgLy8gRGVwcmVjYXRlZCBwYXJlbnQgY2xhc3MgcmVxdWlyZW1lbnQgYXMgb2YgdjMuMi4wXG4gIC5wcm9ncmVzcy1zdHJpcGVkICYge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG4gIH1cbn1cbiIsIi8vIFRhYmxlc1xuXG5AbWl4aW4gdGFibGUtcm93LXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCkge1xuICAvLyBFeGFjdCBzZWxlY3RvcnMgYmVsb3cgcmVxdWlyZWQgdG8gb3ZlcnJpZGUgYC50YWJsZS1zdHJpcGVkYCBhbmQgcHJldmVudFxuICAvLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuICAudGFibGUgPiB0aGVhZCA+IHRyLFxuICAudGFibGUgPiB0Ym9keSA+IHRyLFxuICAudGFibGUgPiB0Zm9vdCA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfSxcbiAgICA+IHRoLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfSA+IHRkLFxuICAgICYuI3skc3RhdGV9ID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgfVxuICB9XG5cbiAgLy8gSG92ZXIgc3RhdGVzIGZvciBgLnRhYmxlLWhvdmVyYFxuICAvLyBOb3RlOiB0aGlzIGlzIG5vdCBhdmFpbGFibGUgZm9yIGNlbGxzIG9yIHJvd3Mgd2l0aGluIGB0aGVhZGAgb3IgYHRmb290YC5cbiAgLnRhYmxlLWhvdmVyID4gdGJvZHkgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgPiB0aC4jeyRzdGF0ZX06aG92ZXIsXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0ZCxcbiAgICAmOmhvdmVyID4gLiN7JHN0YXRlfSxcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gQ29udGV4dHVhbCBiYWNrZ3JvdW5kc1xuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBiZy12YXJpYW50KCRwYXJlbnQsICRjb2xvcikge1xuICAjeyRwYXJlbnR9IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBTaW5nbGUgc2lkZSBib3JkZXItcmFkaXVzXG5cbkBtaXhpbiBib3JkZXItdG9wLXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xuICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1sZWZ0LXJhZGl1cygkcmFkaXVzKSB7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG4iLCIvLyBHcmFkaWVudHNcblxuXG5cbi8vIEhvcml6b250YWwgZ3JhZGllbnQsIGZyb20gbGVmdCB0byByaWdodFxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuLy8gVmVydGljYWwgZ3JhZGllbnQsIGZyb20gdG9wIHRvIGJvdHRvbVxuLy9cbi8vIENyZWF0ZXMgdHdvIGNvbG9yIHN0b3BzLCBzdGFydCBhbmQgZW5kLCBieSBzcGVjaWZ5aW5nIGEgY29sb3IgYW5kIHBvc2l0aW9uIGZvciBlYWNoIGNvbG9yIHN0b3AuXG4vLyBDb2xvciBzdG9wcyBhcmUgbm90IGF2YWlsYWJsZSBpbiBJRTkgYW5kIGJlbG93LlxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQodG9wLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgIC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byBib3R0b20sICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93blxufVxuXG5AbWl4aW4gZ3JhZGllbnQtZGlyZWN0aW9uYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkZGVnOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbn1cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXJhZGlhbCgkaW5uZXItY29sb3I6ICM1NTUsICRvdXRlci1jb2xvcjogIzMzMykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXN0cmlwZWQoJGNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LC4xNSksICRhbmdsZTogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xufVxuIiwiLy8gQ2xlYXJmaXhcbi8vXG4vLyBGb3IgbW9kZXJuIGJyb3dzZXJzXG4vLyAxLiBUaGUgc3BhY2UgY29udGVudCBpcyBvbmUgd2F5IHRvIGF2b2lkIGFuIE9wZXJhIGJ1ZyB3aGVuIHRoZVxuLy8gICAgY29udGVudGVkaXRhYmxlIGF0dHJpYnV0ZSBpcyBpbmNsdWRlZCBhbnl3aGVyZSBlbHNlIGluIHRoZSBkb2N1bWVudC5cbi8vICAgIE90aGVyd2lzZSBpdCBjYXVzZXMgc3BhY2UgdG8gYXBwZWFyIGF0IHRoZSB0b3AgYW5kIGJvdHRvbSBvZiBlbGVtZW50c1xuLy8gICAgdGhhdCBhcmUgY2xlYXJmaXhlZC5cbi8vIDIuIFRoZSB1c2Ugb2YgYHRhYmxlYCByYXRoZXIgdGhhbiBgYmxvY2tgIGlzIG9ubHkgbmVjZXNzYXJ5IGlmIHVzaW5nXG4vLyAgICBgOmJlZm9yZWAgdG8gY29udGFpbiB0aGUgdG9wLW1hcmdpbnMgb2YgY2hpbGQgZWxlbWVudHMuXG4vL1xuLy8gU291cmNlOiBodHRwOi8vbmljb2xhc2dhbGxhZ2hlci5jb20vbWljcm8tY2xlYXJmaXgtaGFjay9cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGNsZWFyOiBib3RoO1xuICB9XG59XG4iLCIvLyBDZW50ZXItYWxpZ24gYSBibG9jayBsZXZlbCBlbGVtZW50XG5cbkBtaXhpbiBjZW50ZXItYmxvY2soKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xufVxuIiwiLy8gTmF2YmFyIHZlcnRpY2FsIGFsaWduXG4vL1xuLy8gVmVydGljYWxseSBjZW50ZXIgZWxlbWVudHMgaW4gdGhlIG5hdmJhci5cbi8vIEV4YW1wbGU6IGFuIGVsZW1lbnQgaGFzIGEgaGVpZ2h0IG9mIDMwcHgsIHNvIHdyaXRlIG91dCBgLm5hdmJhci12ZXJ0aWNhbC1hbGlnbigzMHB4KTtgIHRvIGNhbGN1bGF0ZSB0aGUgYXBwcm9wcmlhdGUgdG9wIG1hcmdpbi5cblxuQG1peGluIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkZWxlbWVudC1oZWlnaHQpIHtcbiAgbWFyZ2luLXRvcDogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbiAgbWFyZ2luLWJvdHRvbTogKCgkbmF2YmFyLWhlaWdodCAtICRlbGVtZW50LWhlaWdodCkgLyAyKTtcbn1cbiIsIi8vIEZyYW1ld29yayBncmlkIGdlbmVyYXRpb25cbi8vXG4vLyBVc2VkIG9ubHkgYnkgQm9vdHN0cmFwIHRvIGdlbmVyYXRlIHRoZSBjb3JyZWN0IG51bWJlciBvZiBncmlkIGNsYXNzZXMgZ2l2ZW5cbi8vIGFueSB2YWx1ZSBvZiBgJGdyaWQtY29sdW1uc2AuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gbWFrZS1ncmlkLWNvbHVtbnMoJGk6IDEsICRsaXN0OiBcIi5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIikge1xuICBAZm9yICRpIGZyb20gKDEgKyAxKSB0aHJvdWdoICRncmlkLWNvbHVtbnMge1xuICAgICRsaXN0OiBcIiN7JGxpc3R9LCAuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvLyBQcmV2ZW50IGNvbHVtbnMgZnJvbSBjb2xsYXBzaW5nIHdoZW4gZW1wdHlcbiAgICBtaW4taGVpZ2h0OiAxcHg7XG4gICAgLy8gSW5uZXIgZ3V0dGVyIHZpYSBwYWRkaW5nXG4gICAgcGFkZGluZy1sZWZ0OiAgY2VpbCgoJGdyaWQtZ3V0dGVyLXdpZHRoIC8gMikpO1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIHBhZGRpbmctbGVmdDogIGZsb29yKCgkZ3V0dGVyIC8gMikpO1xuICBwYWRkaW5nLXJpZ2h0OiBjZWlsKCgkZ3V0dGVyIC8gMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gQ3JlYXRlcyBhIHdyYXBwZXIgZm9yIGEgc2VyaWVzIG9mIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXJvdygkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLWxlZnQ6ICBjZWlsKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLXJpZ2h0OiBmbG9vcigoJGd1dHRlciAvIC0yKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgZXh0cmEgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2UteHMtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbWVkaXVtIGNvbHVtbnNcbkBtaXhpbiBtYWtlLW1kLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cblxuLy8gR2VuZXJhdGUgdGhlIGxhcmdlIGNvbHVtbnNcbkBtaXhpbiBtYWtlLWxnLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLWxlZnQ6ICAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8vPT0gQ29sb3JzXG5cbiRncmF5LWJhc2U6ICAgICAgICAgICAgICBcdFx0ZGFya2VuKCMzNDQ5NUUsIDIwJSk7IFxuJGdyYXktZGFyazogICAgICAgICAgICAgIFx0XHRsaWdodGVuKCRncmF5LWJhc2UsIDIwJSk7IFxuJGdyYXk6ICAgICAgICAgICAgICAgICAgIFx0XHRsaWdodGVuKCRncmF5LWJhc2UsIDMzLjUlKTtcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBcdFx0bGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSk7XG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIFx0XHRkYXJrZW4oIzQyOGJjYSwgNi41JSk7XG4kYnJhbmQtc3VjY2VzczogICAgICAgICBcdFx0bGlnaHRlbigjMzJjNWQyLCAxJSk7IFxuJGJyYW5kLWluZm86ICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oIzU4OTNkZCwgMyUpOyBcbiRicmFuZC13YXJuaW5nOiAgICAgICAgXHRcdFx0I0YxQzQwRjsgIFxuJGJyYW5kLWRhbmdlcjogICAgICAgICAgXHRcdGxpZ2h0ZW4oI2ViNWQ2OCwgMyUpOyAgICBcblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiA7XG4vLyoqIGA8aW5wdXQgZGlzYWJsZWQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICBkYXJrZW4oI2YxZjRmNywgMSUpO1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGA8aW5wdXQ+YHNcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oIzAwMDAwMCwgMzMuNSUpO1xuLy8qKiBgPGlucHV0PmAgYm9yZGVyIGNvbG9yXG4kaW5wdXQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICBkYXJrZW4oI2UxZTVlYywgMTAlKTtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGlucHV0cyBvbiBmb2N1c1xuJGlucHV0LWJvcmRlci1mb2N1czogICAgICAgICAgICAgZGFya2VuKCRpbnB1dC1ib3JkZXIsIDE1JSk7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OTtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyaztcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgO1xuXG4vLz09IERyb3Bkb3duc1xuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICNlMWU1ZWM7IC8vIHNldCBieSBrZWVudGhlbWVzXG5cbi8vPT0gV2VsbHNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgXHRsaWdodGVuKCRncmF5LWJhc2UsIDg3JSk7ICAvLyBzZXQgYnkga2VlbnRoZW1lc1xuXG4vLz09IFRhYmxlc1xuXG4vLyoqIERlZmF1bHQgYmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBhbGwgdGFibGVzLlxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4gIFxuJHRhYmxlLWJnLWFjY2VudDogICAgICAgICAgICAgICBsaWdodGVuKCRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yLCAzJSk7ICBcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtaG92ZXJgLlxuJHRhYmxlLWJnLWhvdmVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDElKTtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyO1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICBcdGRhcmtlbigkZ2VuZXJhbC1wYW5lbC1iZy1jb2xvciwgMyUpO1xuXG4vLz09IEZvcm0gc3RhdGVzIGFuZCBhbGVydHNcbi8vXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxuXG4kc3RhdGUtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAgICBkYXJrZW4oJGJyYW5kLXN1Y2Nlc3MsIDEwJSk7ICBcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXN1Y2Nlc3MsIDI4JSk7XG4kc3RhdGUtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICBsaWdodGVuKCRicmFuZC1zdWNjZXNzLCAyOCUpO1xuXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICBcdCBkYXJrZW4oJGJyYW5kLWluZm8sIDEyJSk7ICBcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgIFx0IGxpZ2h0ZW4oJGJyYW5kLWluZm8sIDI5JSk7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICBcdCBsaWdodGVuKCRicmFuZC1pbmZvLCAyOSUpO1xuXG4kc3RhdGUtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAgICBkYXJrZW4oJGJyYW5kLWRhbmdlciwgMTAlKTsgIFxuJHN0YXRlLWRhbmdlci1iZzogICAgICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtZGFuZ2VyLCAyNiUpO1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtZGFuZ2VyLCAyNiUpO1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICBkYXJrZW4oJGJyYW5kLXdhcm5pbmcsIDEwJSk7ICBcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXdhcm5pbmcsIDI3JSk7ICBcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXdhcm5pbmcsIDI3JSk7XG5cbi8vPT0gQnV0dG9uc1xuLy9cbi8vIyMgRm9yIGVhY2ggb2YgQm9vdHN0cmFwJ3MgYnV0dG9ucywgZGVmaW5lIHRleHQsIGJhY2tncm91bmQgYW5kIGJvcmRlciBjb2xvci5cblxuJGJ0bi1mb250LXdlaWdodDogICAgICAgICAgICAgICAgbm9ybWFsO1xuXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjMzMzO1xuJGJ0bi1kZWZhdWx0LWJnOiAgICAgICAgICAgICAgICAgI2ZmZjtcbiRidG4tZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgICNjY2M7XG5cbiRidG4tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICNmZmY7XG4kYnRuLXByaW1hcnktYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDUlKTtcblxuJGJ0bi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzO1xuJGJ0bi1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tc3VjY2Vzcy1iZywgNSUpO1xuXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmO1xuJGJ0bi1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICAgJGJyYW5kLWluZm87XG4kYnRuLWluZm8tYm9yZGVyOiAgICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1pbmZvLWJnLCA1JSk7XG5cbiRidG4td2FybmluZy1jb2xvcjogICAgICAgICAgICAgICNmZmY7XG4kYnRuLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtd2FybmluZztcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKTtcblxuJGJ0bi1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZjtcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXI7XG4kYnRuLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1kYW5nZXItYmcsIDUlKTtcblxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQ7XG5cblxuLy89PSBBbGVydHNcbi8vXG4vLyMjIERlZmluZSBhbGVydCBjb2xvcnMsIGJvcmRlciByYWRpdXMsIGFuZCBwYWRkaW5nLlxuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZztcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXI7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnO1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlcjtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmc7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyO1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnO1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXI7XG5cbi8vPT0gUHJvZ3Jlc3MgYmFyc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1iZzogICAgICAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4vLyoqIFN1Y2Nlc3MgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2Vzcztcbi8vKiogV2FybmluZyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItd2FybmluZy1iZzogICAgICRicmFuZC13YXJuaW5nO1xuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWRhbmdlci1iZzogICAgICAkYnJhbmQtZGFuZ2VyO1xuLy8qKiBJbmZvIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm87XG5cbi8vPT0gUGFuZWxzXG4vL1xuLy8jI1xuXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmO1xuJHBhbmVsLXByaW1hcnktYm9yZGVyOiAgICAgICAgJGJyYW5kLXByaW1hcnk7XG4kcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnOiAgICAkYnJhbmQtcHJpbWFyeTtcblxuJHBhbmVsLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtdGV4dDtcbiRwYW5lbC1zdWNjZXNzLWJvcmRlcjogICAgICAgICRzdGF0ZS1zdWNjZXNzLWJvcmRlcjtcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnO1xuXG4kcGFuZWwtaW5mby10ZXh0OiAgICAgICAgICAgICAkc3RhdGUtaW5mby10ZXh0O1xuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyO1xuJHBhbmVsLWluZm8taGVhZGluZy1iZzogICAgICAgJHN0YXRlLWluZm8tYmc7XG5cbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQ7XG4kcGFuZWwtd2FybmluZy1ib3JkZXI6ICAgICAgICAkc3RhdGUtd2FybmluZy1ib3JkZXI7XG4kcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnOiAgICAkc3RhdGUtd2FybmluZy1iZztcblxuJHBhbmVsLWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0O1xuJHBhbmVsLWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXI7XG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnO1xuXG4vLz09IExpc3QgR3JvdXBcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgIFx0XHQkZ2VuZXJhbC1wYW5lbC1iZy1jb2xvcjtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWNvbG9yOlx0XHRcdGxpZ2h0ZW4oJGdlbmVyYWwtcGFuZWwtZm9udC1jb2xvciwgNDUlKTtcbiRsaXN0LWdyb3VwLWRpc2FibGVkLXRleHQtY29sb3I6XHRsaWdodGVuKCRnZW5lcmFsLXBhbmVsLWZvbnQtY29sb3IsIDQ1JSk7IiwiLy9cbi8vIE1peGluc1xuLy8gQmFzZWQgb24gVHdpdHRlciBCb290c3RyYXAncyBfbWl4aW5ncy5zY3NzXG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiIFwiOyAvLyAxXG4gICAgZGlzcGxheTogdGFibGU7IC8vIDJcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuXG4vLyBPcGFjaXR5XG5cbkBtaXhpbiBvcGFjaXR5KCR2YWx1ZSwgJGltcG9ydGFudDogJycpIHtcbiAgb3BhY2l0eTogJHZhbHVlICN7JGltcG9ydGFudH07XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0jeyR2YWx1ZSAqIDEwMH0pICN7JGltcG9ydGFudH07XG59XG5cbi8vIEJvcmRlciByYWRpdXMuXG5cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXMsICRpbXBvcnRhbnQ6ICcnKSB7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHJhZGl1cyN7JGltcG9ydGFudH07XG4gIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1cyN7JGltcG9ydGFudH07XG4gIC1tcy1ib3JkZXItcmFkaXVzOiAkcmFkaXVzI3skaW1wb3J0YW50fTsgIFxuICAtby1ib3JkZXItcmFkaXVzOiAkcmFkaXVzI3skaW1wb3J0YW50fTsgICAgICBcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cyN7JGltcG9ydGFudH07IFxufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgJjo6LW1vei1wbGFjZWhvbGRlciAgICAgICAgICAgeyBjb2xvcjogJGNvbG9yOyBvcGFjaXR5OiAxOyB9IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciAgICAgICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vIEJ5IGRlZmF1bHQgc2V0IHRvOiBub25lXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93KSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xufVxuXG4vLyBMYWJlbHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICZbaHJlZl0ge1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gIGVhc2Utb3V0KCRkdXJhdGlvbjogNDUwbXMsICRwcm9wZXJ0eTogYWxsLCAkZGVsYXk6IDBtcykge1xuICB0cmFuc2l0aW9uOiAkcHJvcGVydHkgJGR1cmF0aW9uIGN1YmljLWJlemllcigwLjIzLCAxLCAwLjMyLCAxKSAkZGVsYXk7XG59XG5cbkBtaXhpbiAgcHVsc2F0ZSgkYW5pbWF0aW9uLW5hbWUsICRzdGFydC1zaXplOiAwLjc1LCAkZW5kLXNpemU6IDEsICRkdXJhdGlvbjogMS41cykge1xuICBAa2V5ZnJhbWVzIFwiI3skYW5pbWF0aW9uLW5hbWV9XCIge1xuICAgIDAlLCAxMDAlIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHN0YXJ0LXNpemUpO1xuICAgIH1cbiAgICA1MCUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkZW5kLXNpemUpO1xuICAgIH1cbiAgfSAgXG4gIGFuaW1hdGlvbjogJGFuaW1hdGlvbi1uYW1lICRkdXJhdGlvbiBlYXNlIDBzIGluZmluaXRlO1xufVxuXG4vKiBDdWJpYyBCZXppZXIgVHJhbnNpdGlvbiAqL1xuQG1peGluIGN1YmljLXRyYW5zaXRpb24gKCRkZWxheSwgJGR1cmF0aW9uLCAkcHJvcGVydHkpIHtcbiAgICB0cmFuc2l0aW9uOiB7XG4gICAgICAgIGR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgIHByb3BlcnR5OiAkcHJvcGVydHk7XG4gICAgICAgIHRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNywgMSwgMC43LCAxKTtcbiAgICB9IFxufVxuXG5AbWl4aW4gYmFja2dyb3VuZC1vcGFjaXR5KCRjb2xvciwgJG9wYWNpdHk6IDAuMykge1xuICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAkb3BhY2l0eSk7XG59XG5cbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigkcG9zaXRpb246IGFic29sdXRlKSB7XG4gIHBvc2l0aW9uOiAjeyRwb3NpdGlvbn07XG4gIHRvcDogNTAlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtKCRkZWdyZWUpIHsgIFxuICB3ZWJraXQtdHJhbnNmb3JtOiAkZGVncmVlO1xuICAtbW96LXRyYW5zZm9ybTogJGRlZ3JlZTtcbiAgLW1zLXRyYW5zZm9ybTogJGRlZ3JlZTtcbiAgLW8tdHJhbnNmb3JtOiAkZGVncmVlO1xuICB0cmFuc2Zvcm06ICRkZWdyZWU7XG59XG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uKSB7XG4gIHdlYmtpdC10cmFuc2l0aW9uOiAjeyR0cmFuc2l0aW9ufTtcbiAgLW1vei10cmFuc2l0aW9uOiAjeyR0cmFuc2l0aW9ufTtcbiAgLW1zLXRyYW5zaXRpb246ICN7JHRyYW5zaXRpb259O1xuICAtby10cmFuc2l0aW9uOiAjeyR0cmFuc2l0aW9ufTtcbiAgdHJhbnNpdGlvbjogI3skdHJhbnNpdGlvbn07XG59XG5cbkBtaXhpbiBidXJnZXItaWNvbigkbGluZS1jb2xvciwgJGxpbmUtY29sb3ItaG92ZXIsICRsaW5lLXdpZHRoLCAkbGluZS1oZWlnaHQsICRiYXNlLXRvcDogLTVweCwgJGFib3ZlLXRvcDogNXB4LCAkYmVsb3ctdG9wOiAtNXB4KSB7XG4gID4gc3BhbiB7XG4gICAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAkbGluZS1jb2xvci1ob3ZlcjtcbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5lLWNvbG9yLWhvdmVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gID4gc3BhbixcbiAgPiBzcGFuOmJlZm9yZSxcbiAgPiBzcGFuOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6ICRsaW5lLXdpZHRoO1xuICAgIGhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJhY2tncm91bmQ6ICRsaW5lLWNvbG9yO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6ICRiYXNlLXRvcDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAuM3M7XG4gIH1cblxuICA+IHNwYW46YmVmb3JlLFxuICA+IHNwYW46YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIGNvbnRlbnQ6ICcnO1xuICB9XG5cbiAgPiBzcGFuOmJlZm9yZSB7XG4gICAgdG9wOiAkYWJvdmUtdG9wO1xuICB9XG5cbiAgPiBzcGFuOmFmdGVyIHtcbiAgICB0b3A6ICRiZWxvdy10b3A7XG4gIH1cblxuICAmLnRoLXRvZ2dsZS1leGl0IHtcbiAgICA+IHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICA+IHNwYW46YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLSRiYXNlLXRvcCkgcm90YXRlWig0NWRlZykpO1xuICAgIH1cblxuICAgID4gc3BhbjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoJGJhc2UtdG9wKSByb3RhdGVaKC00NWRlZykpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gYnVyZ2VyLWljb24tY29sb3ItY2hhbmdlKCRsaW5lLWNvbG9yLCAkbGluZS1jb2xvci1ob3Zlcikge1xuICA+IHNwYW4sXG4gID4gc3BhbjpiZWZvcmUsXG4gID4gc3BhbjphZnRlciB7XG4gICAgYmFja2dyb3VuZDogJGxpbmUtY29sb3I7XG4gIH1cblxuICA+IHNwYW4ge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGxpbmUtY29sb3ItaG92ZXI7XG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkbGluZS1jb2xvci1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLnRoLXRvZ2dsZS1leGl0IHtcbiAgICA+IHNwYW4ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGNsb3NlLWljb24oJGljb24tc2l6ZSwgJGxpbmUtc2l6ZSwgJGNvbG9yLCAkY29sb3ItaG92ZXIpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHdpZHRoOiAkaWNvbi1zaXplO1xuICBoZWlnaHQ6ICRpY29uLXNpemU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblxuICAmOmhvdmVyIHtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6ICRsaW5lLXNpemU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW4tdG9wOiAkbGluZS1zaXplIC8gMjtcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XG4gIH1cblxuICAmOjpiZWZvcmUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcbiAgfVxuXG4gICY6OmFmdGVyIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC00NWRlZykpO1xuICB9XG59XG5cbkBtaXhpbiBjbG9zZS1pY29uLWNvbG9yLWNoYW5nZSgkY29sb3IsICRjb2xvci1ob3Zlcikge1xuICAmOmhvdmVyIHtcbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGNvbG9yLWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gICY6OmJlZm9yZSxcbiAgJjo6YWZ0ZXIge1xuICAgIGJhY2tncm91bmQ6ICRjb2xvcjtcbiAgfVxufVxuIiwiLy8jIyAgRGVmYXVsdCBMYXlvdXQgU2V0dGluZ3Ncbi8vXG4vLyBEZWZpbmUgbGF5b3V0IGVsZW1lbnQgd2lkdGggYW5kIGhlaWdodC5cblxuLy8gSGVhZGVyXG4kaGVhZGVyLWhlaWdodDogICAgICAgICAgICAgXHRcdFx0XHQgICAgICAgICAgICBcdFx0XHRcdDUwcHggICFkZWZhdWx0OyAvLyBoZWFkZXIgaGVpZ2h0IG9uIHRhYmxlIGFuZCBkZXNrdG9wIHZpZXcuIGRlZmF1bHQ6IDQycHhcbiRoZWFkZXItaGVpZ2h0LXhzOiAgICAgICAgICAgICBcdFx0XHRcdFx0XHRcdFx0XHRcdFx0KCRoZWFkZXItaGVpZ2h0ICogMikgIWRlZmF1bHQ7IC8vIGhlYWRlciBoZWlnaHQgb24gbW9iaWxlIHZpZXdcblxuJG1lbnUtdG9nZ2xlci1zaXplOlx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQxOXB4O1xuXG4kaGVhZGVyLWxvZ28taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRcdFx0MTRweDsgXG4kaGVhZGVyLW1lbnUtdG9nZ2xlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRcdFx0JG1lbnUtdG9nZ2xlci1zaXplOyAgXG4kaGVhZGVyLW1lbnUtdG9nZ2xlci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRcdFx0JG1lbnUtdG9nZ2xlci1zaXplO1xuJGhlYWRlci1zaWRlYmFyLXRvZ2dsZXItbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0XHRcdCgkaGVhZGVyLWhlaWdodCAtICRtZW51LXRvZ2dsZXItc2l6ZSkgLyAyIDAgMCAwICFkZWZhdWx0O1xuJGhlYWRlci1yZXNwb25zaXZlLXRvZ2dsZXItbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICBcdFx0XHRcdCgkaGVhZGVyLWhlaWdodCAtICRtZW51LXRvZ2dsZXItc2l6ZSkgLyAyIDZweCAwIDZweCAhZGVmYXVsdDsgXG4kaGVhZGVyLWxvZ28tbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdFx0XHRcdCgkaGVhZGVyLWhlaWdodCAtICRoZWFkZXItbG9nby1oZWlnaHQpIC8gMiAwIDAgMCAhZGVmYXVsdDsgIC8vIGFkanN1dCBsb2dvJ3MgbWFyZ2luIHRvcC4gZGVmYXVsdDogLTFweFxuXG4kaGVhZGVyLXRvcC1tZW51LWdlbmVyYWwtaXRlbS1wYWRkaW5nOiAgICAgIFx0XHRcdFx0XHRcdFx0MTlweCAxMHB4IDEwcHggMTBweCAhZGVmYXVsdDsgIC8vIGFkanVzdCB0b3AgbWVudSBnZW5lcmFsIGVsZW1lbnRzIHBhZGRpbmcuIGRlZmF1bHQ6IDE1cHggMTBweCA3cHggMTBweFxuJGhlYWRlci10b3AtbWVudS1nZW5lcmFsLWl0ZW0tcGFkZGluZy1vbi1tb2JpbGU6ICAgICAgIFx0XHRcdFx0XHQxOXB4IDZweCAxMHB4IDZweCAhZGVmYXVsdDsgIC8vIGFkanVzdCB0b3AgbWVudSBnZW5lcmFsIGVsZW1lbnRzIHBhZGRpbmcgbW9iaWxlLiBkZWZhdWx0OiAxNXB4IDEwcHggN3B4IDEwcHhcbiRoZWFkZXItdG9wLW1lbnUtdXNlci1pdGVtLXBhZGRpbmc6ICAgICAgICAgXHRcdFx0XHQgIFx0XHRcdDE2cHggNnB4IDEzcHggOHB4ICFkZWZhdWx0OyAvLyBhZGp1c3QgdG9wIG1lbnUgdXNlciBiYXIgZWxlbWVudCBwYWRkaW5nLiBkZWZhdWx0OiA2cHggMHB4IDZweCA2cHhcbiRoZWFkZXItdG9wLW1lbnUtdXNlci1pdGVtLXBhZGRpbmctb24tbW9iaWxlOiAgICAgICAgIFx0XHRcdFx0XHQxNnB4IDBweCAxM3B4IDJweCAhZGVmYXVsdDsgIC8vIGFkanVzdCB0b3AgbWVudSB1c2VyIGJhciBlbGVtZW50IHBhZGRpbmcgb24gbW9iaWxlLiBkZWZhdWx0OiA2cHggMHB4IDZweCA0cHhcbiRoZWFkZXItdG9wLW1lbnUtbGFuZ3VhZ2UtaXRlbS1wYWRkaW5nOiAgICAgXHRcdFx0XHRcdFx0XHQxNnB4IDNweCAxM3B4IDdweCAhZGVmYXVsdDsgIC8vIGFkanVzdCB0b3AgbWVudSBsYW5ndWFnZSBiYXIgZWxlbWVudCBwYWRkaW5nLiBkZWZhdWx0OiAxMXB4IDFweCAxMXB4IDVweFxuJGhlYWRlci10b3AtbWVudS1sYW5ndWFnZS1pdGVtLXBhZGRpbmctb24tbW9iaWxlOlx0XHRcdFx0XHRcdDE2cHggNHB4IDEzcHggMnB4ICFkZWZhdWx0OyAgLy8gYWRqdXN0IHRvcCBtZW51IGxhbmd1YWdlIGJhciBlbGVtZW50IHBhZGRpbmcuIGRlZmF1bHQ6IDExcHggMHB4IDExcHggNHB4XG4kaGVhZGVyLXRvcC1tZW51LWdlbmVyYWwtaXRlbS1iYWRnZS10b3A6ICAgICAgICAgICAgICAgIFx0XHRcdFx0MTBweCAhZGVmYXVsdDsgIC8vIGFkanVzdCB0b3AgbWVudSBnZW5lcmFsIGVsZW1lbnRzIGJhZGdlIHRvcCBwb3NpdGlvbi4gZGVmYXVsdDogOHB4XG4kaGVhZGVyLXRvcC1tZW51LWljb24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxN3B4ICFkZWZhdWx0OyAgICAgICAgICAgICBcblxuJGhlYWRlci10b3AtbWVudS11c2VyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTNweCAhZGVmYXVsdDsgXG4kaGVhZGVyLXRvcC1tZW51LXVzZXItZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7IFxuJGhlYWRlci10b3AtbWVudS11c2VyLWRyb3Bkb3duLWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDsgICAgXG4kaGVhZGVyLXRvcC1tZW51LXVzZXItZHJvcGRvd24tbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7IFxuXG4kaGVhZGVyLWhvci1tZW51LWdlbmVyYWwtaXRlbS1wYWRkaW5nOiAgICAgXHRcdFx0XHRcdFx0XHRcdDEzcHggMTNweCAhZGVmYXVsdDsgIC8vIGFkanVzdCBob3IgbWVudSBlbGVtZW50cyBwYWRkaW5nIHRvcC4gZGVmYXVsdDogMTFweCAxMHB4XG4kaGVhZGVyLWhvci1tZW51LXN1Ym1lbnUtaXRlbS1wYWRkaW5nOiBcdFx0XHRcdCBcdFx0XHRcdFx0OXB4IDEwcHggIWRlZmF1bHQ7ICAvLyBhZGp1c3QgaG9yIG1lbnUgZWxlbWVudHMgcGFkZGluZyB0b3AuIGRlZmF1bHQ6IDdweCAxMHB4XG4kaGVhZGVyLWhvci1tZW51LXN1Ym1lbnUtaXRlbS1hcnJvdy10b3A6ICAgICAgICAgICAgICAgIFx0XHRcdFx0OXB4OyAgLy8gYWRqdXN0IGhvciBtZW51IGRyb3Bkb3duIG1lbnUncyBhcnJvdy4gZGVmYXVsdDogOXB4ICAgICBcbiRoZWFkZXItaG9yLW1lbnUtc2VhcmNoLXRvZ2dsZXItYnV0dG9uLXBhZGRpbmc6ICAgICAgXHRcdFx0XHRcdDE1cHggMjJweCAxNXB4IDIycHggIWRlZmF1bHQ7ICAvLyBhZGp1c3QgaG9yIG1lbnUgZWxlbWVudHMgcGFkZGluZyB0b3AuIGRlZmF1bHQ6IDEzcHggMjJweCAxMXB4IDIycHhcbiRoZWFkZXItaG9yLW1lbnUtc2VhcmNoLWJ1dHRvbi1wYWRkaW5nOiAgICAgXHRcdCBcdFx0XHRcdFx0N3B4IDIwcHggIWRlZmF1bHQ7ICAvLyBhZGp1c3QgaG9yIG1lbnUgZWxlbWVudHMgcGFkZGluZyB0b3AuIGRlZmF1bHQ6IDVweCAyMHB4XG4kaGVhZGVyLWhvci1tZW51LXNlYXJjaC1pbnB1dC1tYXJnaW46ICAgIFx0XHRcdCBcdFx0XHRcdFx0N3B4IDAgMCAwICFkZWZhdWx0OyAgLy8gYWRqdXN0IGhvciBtZW51IGVsZW1lbnRzIHBhZGRpbmcgdG9wLiBkZWZhdWx0OiA1cHggMCAwIDBcblxuLy8gSG9yaXpvbnRhbCBtZW51IGZvbnRcbiRoZWFkZXItaG9yLW1lbnUtZGVmYXVsdC1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kaGVhZGVyLWhvci1tZW51LWRlZmF1bHQtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0MDAgIWRlZmF1bHQ7XG4kaGVhZGVyLWhvci1tZW51LWRyb3Bkb3duLW1lbnUtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGhlYWRlci1ob3ItbWVudS1kcm9wZG93bi1tZW51LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgMzAwICFkZWZhdWx0O1xuJGhlYWRlci1ob3ItbWVudS1tZWdhLW1lbnUtaGVhZGVyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDsgICBcbiRoZWFkZXItaG9yLW1lbnUtbWVnYS1tZW51LWhlYWRlci1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIDQwMCAhZGVmYXVsdDsgIFxuXG4vLyBTaWRlYmFyXG4kc2lkZWJhci13aWR0aDogICAgICAgICAgICAgXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDIzNXB4ICFkZWZhdWx0OyAvLyBzaWRlYmFyIHdpZHRoLiBkZWZhdWx0OjIzNXB4XG4kc2lkZWJhci1jb2xsYXBzZWQtd2lkdGg6ICAgXHRcdFx0XHRcdFx0XHRcdFx0XHRcdDQ1cHggICFkZWZhdWx0OyAvLyBtaW5pbWl6ZWQvY29sbGFwc2VkIHNpZGViYXIgd2lkdGguIGRlZmF1bHQ6MzVweFxuJHNpZGViYXItY29sbGFwc2VkLXN1Ym1lbnUtd2lkdGgtb24taG92ZXI6XHRcdFx0XHRcdFx0XHRcdDIxMHB4ICFkZWZhdWx0OyAvLyBzdWIgbWVudSB3aWR0aCBkaXNwbGF5ZWQgb24gaG92ZXIgaW4gY29sbGFwc2VkIHNpZGViYXIgbW9kZS4gZGVmYXVsdDoyMTBweFxuJHNpZGViYXItbG9nby1jb250YWluZXItd2lkdGg6ICBcdFx0XHRcdFx0XHRcdFx0XHRcdCRzaWRlYmFyLXdpZHRoICFkZWZhdWx0OyAvLyBsb2dvIGNvbnRhaW5lciB3aWR0aC4gTm9ybWFsbHkgc2FtZSB3aXRoIHNpZGViYXItd2lkdGguXG4kc2lkZWJhci1sb2dvLWNvbnRhaW5lci13aWR0aC14czogXHRcdFx0XHRcdFx0XHRcdFx0XHQxMTBweCAhZGVmYXVsdDsgLy8gbG9nbyBjb250YWluZXIgd2lkdGggaW4gbW9iaWxlIHBvcnRyYWl0IHZpZXcuIGRlZmF1bHQ6MTEwcHguXG4kc2lkZWJhci1sb2dvLWNvbnRhaW5lci13aWR0aC14eHM6IFx0XHRcdFx0XHRcdFx0XHRcdFx0MTAwcHggIWRlZmF1bHQ7IC8vIGxvZ28gY29udGFpbmVyIHdpZHRoIGluIG1vYmlsZSBsYW5kc3BhY2Ugdmlldy4gZGVmYXVsdDoxMDBweC5cblxuJHNpZGViYXItbWVudS1oZWFkLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRzaWRlYmFyLW1lbnUtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kc2lkZWJhci1tZW51LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMDAgICFkZWZhdWx0O1xuJHNpZGViYXItbWVudS1saW5rLWljb24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTZweCAhZGVmYXVsdDtcbiRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtbGluay1pY29uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG5cbi8vIFBhZ2UgY29udGVudFxuJHBhZ2UtY29udGVudC1taW4taGVpZ2h0OiAgICAgICAgICAgICAgICAgICBcdFx0XHRcdFx0XHRcdDYwMHB4ICFkZWZhdWx0OyAvLyBkZWZhdWx0IHBhZ2UgY29udGVudCdzIG1pbiBoZWlnaHQuIGRlZmF1bHQ6NjAwcHguXG5cbi8vIFBhZ2UgZm9vdGVyXG4kcGFnZS1mb290ZXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzM3B4ICFkZWZhdWx0O1xuXG4vLyBaLWluZGV4IG1hc3RlciBsaXN0XG4kemluZGV4LWhlYWRlci1maXhlZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA5OTk1ICFkZWZhdWx0O1xuJHppbmRleC1oZWFkZXItc3RhdGljOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOTk5NSAhZGVmYXVsdDtcbiR6aW5kZXgtcXVpY2stc2lkZWJhcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwNTAwICFkZWZhdWx0O1xuJHppbmRleC1xdWljay1zaWRlYmFyLWZ1bGwtaGVpZ2h0Olx0XHRcdFx0XHRcdFx0XHRcdFx0OTk5NiAhZGVmYXVsdDtcbiR6aW5kZXgtc2lkZWJhci1maXhlZDogICAgIFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDEwMDAwICFkZWZhdWx0OyBcbiR6aW5kZXgtZm9vdGVyLWZpeGVkOiAgICAgIFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdDEwMDAwICFkZWZhdWx0O1xuJHppbmRleC1zaWRlYmFyLXN1Ym1lbnU6ICAgXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0MjAwMCAhZGVmYXVsdDsgXG4kemluZGV4LWdvLXRvLXRvcDogICBcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQgICAgMTAwMDEgIWRlZmF1bHQ7IFxuXG4vLyMjIExheW91dCBpbWFnZSAgcGF0aHNcbiRsYXlvdXQtaW1nLXBhdGg6ICAgICAgICAgICBcdFx0XHRcdFx0XHRcdFx0XHRcdFx0Jy4uL2ltZy8nICFkZWZhdWx0OyIsIkBtZWRpYSBwcmludCB7XG5cdGJvZHkge1xuICAgIFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuICAgIFx0ZGlyZWN0aW9uOiBsdHI7XG5cdH1cbiAgXG5cdC5wYWdlLWJhciB7XG5cdFx0ZGlzcGxheTogbm9uZTsgXG5cdH1cblxuXHQucGFnZS1zaWRlYmFyLXdyYXBwZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQucGFnZS1xdWljay1zaWRlYmFyLXdyYXBwZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQudGhlbWUtcGFuZWwgeyAgXG5cdFx0ZGlzcGxheTogbm9uZTsgICAgXG5cdH1cblxuXHQuaGlkZGVuLXByaW50IHsgIFxuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQucGFnZS1mb290ZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblxuXHQubm8tcGFnZS1icmVhayB7XG5cdFx0cGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG5cdH1cblxuXHQucGFnZS1jb250YWluZXIge1xuXHRcdG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG5cdFx0cGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQucGFnZS1jb250ZW50IHtcblx0XHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdFx0bWluLWhlaWdodDogMzAwcHggIWltcG9ydGFudDtcblx0XHRwYWRkaW5nOiAwcHggMjBweCAyMHB4ICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdH1cblxuXHQudGFibGUge1xuXHRcdHRoLFxuXHRcdHRkIHtcblx0XHRcdHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cbn1cblxuIiwiLyoqKlxuUGFnZSBIZWFkZXJcbioqKi9cblxuLnBhZ2UtaGVhZGVyLm5hdmJhciB7XG5cdHdpZHRoOiAxMDAlOyBcblx0cGFkZGluZzogMCAyMHB4IDAgMjBweDtcblx0bWFyZ2luOiAwO1xuXHRib3JkZXI6IDBweDtcblx0cGFkZGluZzogMHB4OyBcblx0Ym94LXNoYWRvdzogbm9uZTtcblx0aGVpZ2h0OiAkaGVhZGVyLWhlaWdodDsgXG5cdG1pbi1oZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuXHRmaWx0ZXI6IG5vbmU7XG5cdGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG5cblx0LyogRml4ZWQgaGVhZGVyICovXG5cdCYubmF2YmFyLWZpeGVkLXRvcCB7XG5cdFx0ei1pbmRleDogJHppbmRleC1oZWFkZXItZml4ZWQ7ICAgXG5cdH1cblxuXHQmLm5hdmJhci1zdGF0aWMtdG9wIHtcblx0XHR6LWluZGV4OiAkemluZGV4LWhlYWRlci1zdGF0aWM7XG5cdH1cblxuXHQvKiBIZWFkZXIgbG9nbyAqL1xuXHQucGFnZS1sb2dvIHtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogJHNpZGViYXItbG9nby1jb250YWluZXItd2lkdGg7XG5cdFx0aGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcblx0XHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cdFx0cGFkZGluZy1yaWdodDogMjBweDtcblxuXHRcdC5wYWdlLXNpZGViYXItY2xvc2VkLnBhZ2Utc2lkZWJhci1jbG9zZWQtaGlkZS1sb2dvICYge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHR9XG5cblx0XHQ+IC5sb2dvLWltYWdlLFxuXHRcdD4gYSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHR9XG5cblx0XHQubG9nby1kZWZhdWx0IHtcblx0XHRcdG1hcmdpbjogJGhlYWRlci1sb2dvLW1hcmdpbjtcblx0XHR9XG5cblx0XHQubG9nby1taW5pIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRtYXJnaW4tbGVmdDogNXB4O1xuXHRcdH1cblxuXHRcdC50ZXh0LWxvZ28ge1xuXHRcdFx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRcdFx0cGFkZGluZy10b3A6IDEycHg7XG5cdFx0fVxuXHR9XG5cblx0LyogU2VhcmNoIGJveCAqLyBcblx0LnNlYXJjaC1mb3JtIHtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IFxuXHRcdHdpZHRoOiAkaGVhZGVyLWhlaWdodDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDAuNnM7XG5cblx0XHQuaW5wdXQtZ3JvdXAge1xuXHRcdFx0LmZvcm0tY29udHJvbCB7XG5cdFx0XHRcdGhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0YmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblx0XHRcdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDA7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAxMnB4O1xuXHRcdFx0XHR0ZXh0LWluZGVudDogLTE1MDAwMHB4O1xuXG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuaW5wdXQtZ3JvdXAtYnRuIHtcblx0XHRcdFx0aGVpZ2h0OiAkaGVhZGVyLWhlaWdodDsgIFxuXG5cdFx0XHRcdC5idG4uc3VibWl0IHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLTI0cHg7XG5cdFx0XHRcdFx0cGFkZGluZzowO1x0XHRcdFxuXHRcdFx0XHRcdHdpZHRoOiAkaGVhZGVyLWhlaWdodDsgXG5cdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiA0cHg7IFxuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXG5cdFx0XHRcdFx0PiBpIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTVweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cdFxuXHRcdFx0fVx0XG5cdFx0fVxuXG5cdFx0XG5cdFx0Ji5vcGVuIHtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAwLjZzO1xuXHRcdFx0d2lkdGg6IDMwMHB4ICFpbXBvcnRhbnQ7XG5cblx0XHRcdC5pbnB1dC1ncm91cCB7XG5cdFx0XHRcdC5mb3JtLWNvbnRyb2wge1xuXHRcdFx0XHRcdHRleHQtaW5kZW50OiAwO1xuXG5cdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRjdXJzb3I6dGV4dDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuaW5wdXQtZ3JvdXAtYnRuIHtcblx0XHRcdFx0XHQuYnRuLnN1Ym1pdCB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvKiBNZW51IFRvZ2dsZXIgKi9cblx0Lm1lbnUtdG9nZ2xlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgQGluY2x1ZGUgYnVyZ2VyLWljb24oI2ZmZmZmZiwgI2ZmZmZmZiwgJG1lbnUtdG9nZ2xlci1zaXplLCAxcHgsIC02cHgsIDZweCwgLTZweCk7XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMC43KTtcblx0XHRkaXNwbGF5OiBibG9jaztcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbignb3BhY2l0eSAwLjNzJyk7XG5cdFx0XG5cdFx0Jjpob3ZlciB7IFxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbignb3BhY2l0eSAwLjNzJyk7XG5cdFx0XHRAaW5jbHVkZSBvcGFjaXR5KDEpO1xuXHRcdH1cblxuXHRcdCYuc2lkZWJhci10b2dnbGVyIHtcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdG1hcmdpbjogJGhlYWRlci1zaWRlYmFyLXRvZ2dsZXItbWFyZ2luO1xuXG5cdFx0XHQucGFnZS1zaWRlYmFyLWNsb3NlZC5wYWdlLXNpZGViYXItY2xvc2VkLWhpZGUtbG9nbyAmIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAoJHNpZGViYXItY29sbGFwc2VkLXdpZHRoIC0gJG1lbnUtdG9nZ2xlci1zaXplICkgLyAyIDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLnJlc3BvbnNpdmUtdG9nZ2xlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0bWFyZ2luOiAkaGVhZGVyLXJlc3BvbnNpdmUtdG9nZ2xlci1tYXJnaW47XG5cdFx0fVxuXHR9XG5cblx0LyogVG9wIG1lbnUgKi9cblx0LnRvcC1tZW51IHtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRmbG9hdDogcmlnaHQ7IFxuXG5cdFx0Lm5hdmJhci1uYXYge1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHRcdGRpc3BsYXk6IGJsb2NrOyBcblxuXHRcdFx0PiBsaS5kcm9wZG93biB7XG5cdFx0XHRcdG1hcmdpbjogMHB4O1xuXHRcdFx0XHRwYWRkaW5nOiAwcHggNHB4O1xuXHRcdFx0XHRoZWlnaHQ6ICRoZWFkZXItaGVpZ2h0O1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0XHRcdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQ+IC5kcm9wZG93bi10b2dnbGUge1xuXHRcdFx0XHRcdG1hcmdpbjogMHB4O1xuXHRcdFx0XHRcdHBhZGRpbmc6ICRoZWFkZXItdG9wLW1lbnUtZ2VuZXJhbC1pdGVtLXBhZGRpbmc7XG5cblx0XHRcdFx0XHQmOmxhc3QtY2hpbGQge1xuXHRcdFx0XHRcdFx0cGFkZGluZy1yaWdodDogMDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQ+IGkge1xuXHRcdFx0XHRcdFx0Zm9udC1zaXplOiAkaGVhZGVyLXRvcC1tZW51LWljb24tZm9udC1zaXplOyBcblxuXHRcdFx0XHRcdFx0Ji5nbHlwaGljb24ge1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6ICRoZWFkZXItdG9wLW1lbnUtaWNvbi1mb250LXNpemUgLSAxOyBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQ+IC5iYWRnZSB7XG5cdFx0XHRcdFx0XHRmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXByaW1hcnk7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHR0b3A6ICRoZWFkZXItdG9wLW1lbnUtZ2VuZXJhbC1pdGVtLWJhZGdlLXRvcDtcblx0XHRcdFx0XHRcdHJpZ2h0OiAyMHB4OyBcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAzcHggNnB4O1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6Zm9jdXMge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuZHJvcGRvd24tbWVudSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMXB4O1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcblxuXHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHRvcDogLTdweDtcblx0XHRcdFx0XHRcdHJpZ2h0OiA5cHg7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogN3B4IHNvbGlkICNlZWU7XG5cdFx0XHRcdFx0XHRib3JkZXItbGVmdDogN3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgwLCAwLCAwLCAwLjIpO1xuXHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHR0b3A6IC02cHg7XG5cdFx0XHRcdFx0XHRyaWdodDogMTBweDtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiA2cHggc29saWQgI2ZmZjtcblx0XHRcdFx0XHRcdGJvcmRlci1sZWZ0OiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQ+IGxpIHtcblx0XHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAjNTU1O1xuXG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC8qIEV4dGVuZGVkIERyb3Bkb3ducyAqL1xuICAgICAgICAgICAgPiBsaS5kcm9wZG93bi1leHRlbmRlZCB7ICBcblxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE2MHB4OyAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHotaW5kZXg6ICR6aW5kZXgtaGVhZGVyLWZpeGVkOyAgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgID4gbGkuZXh0ZXJuYWwgeyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jazsgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE1cHggMTVweDsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAwLjVweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBoMyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGVhcjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7ICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0xcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC8qIGhlYWRlciBub3RpZmljYXRpb25zIGRyb3Bkb3ducyAqL1xuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDE2cHggMTVweCAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDEpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgICAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSAgICAgICBcbiAgICAgICAgICAgXG4gICAgICAgICAgICAvKiBOb3RpZmljYXRpb24gKi9cbiAgICAgICAgICAgID4gbGkuZHJvcGRvd24tbm90aWZpY2F0aW9uIHsgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7ICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZGV0YWlscyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgb3ZlcmZsb3c6aGlkZGVuO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmxhYmVsLWljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6cmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOjc1cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNyk7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMXB4IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKiBJbmJveCAqL1xuICAgICAgICAgICAgPiBsaS5kcm9wZG93bi1pbmJveCB7XG5cbiAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1saXN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAucGhvdG8ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgNnB4IDZweCAwO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSAhaW1wb3J0YW50KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5zdWJqZWN0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDQ2cHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mcm9tIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMC41KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm1lc3NhZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNDZweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSAgICAgICBcbiAgICAgICAgICAgIH0gIFxuICAgICAgICAgICBcbiAgICAgICAgICAgIC8qIFRhc2tzICovXG4gICAgICAgICAgICA+IGxpLmRyb3Bkb3duLXRhc2tzIHtcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50YXNrIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDsgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kZXNjIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBlcmNlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDsgICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9ncmVzcyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiA4cHggMCAycHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5wcm9ncmVzcy1iYXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLyogVXNlciAqL1xuICAgICAgICAgICAgPiBsaS5kcm9wZG93bi11c2VyIHtcblx0ICAgICAgICAgICAgICAgIC5kcm9wZG93bi10b2dnbGUge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogJGhlYWRlci10b3AtbWVudS11c2VyLWl0ZW0tcGFkZGluZztcblxuXHRcdFx0XHRcdFx0PiAudXNlcm5hbWUge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogJGhlYWRlci10b3AtbWVudS11c2VyLWZvbnQtc2l6ZTtcblx0ICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItdG9wLW1lbnUtdXNlci1mb250LXdlaWdodDtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0PiBpbWcge1xuXHRcdFx0XHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogLTVweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XG5cdFx0XHRcdFx0XHRcdGhlaWdodDogMjlweDtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQ+IGkge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDVweDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6ICRoZWFkZXItdG9wLW1lbnUtdXNlci1mb250LXNpemU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHsgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGhlYWRlci10b3AtbWVudS11c2VyLWRyb3Bkb3duLWxpbmstZm9udC1zaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGhlYWRlci10b3AtbWVudS11c2VyLWRyb3Bkb3duLWxpbmstZm9udC13ZWlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA5cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9IFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAvKiBMYW5ndWFnZSAqL1xuICAgICAgICAgICAgPiBsaS5kcm9wZG93bi1sYW5ndWFnZSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDsgICBcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDsgIFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6ICRoZWFkZXItdG9wLW1lbnUtbGFuZ3VhZ2UtaXRlbS1wYWRkaW5nOyAgIFxuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGltZyB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgPiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8qIERhcmsgdmVyc2lvbiAqL1xuICAgICAgICAgICAgbGkuZHJvcGRvd24tZGFyayB7ICBcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtbGlzdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBsaS5leHRlcm5hbCB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7ICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXHRcdH1cblx0fVxufVxuXG4vKiBBbGxvdyBleHBhbmRlZCBzZWFyY2ggZm9yIGFib3ZlIDc2OHB4ICovXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHsgIC8qIDc2OHB4ICovXG5cdC5wYWdlLWhlYWRlci5uYXZiYXIge1xuXG5cdFx0LyogU2VhcmNoIGJveCAqLyBcblx0XHQuc2VhcmNoLWZvcm0ge1xuXHRcdFx0Ji5zZWFyY2gtZm9ybS1leHBhbmRlZCB7XG5cdFx0XHRcdHdpZHRoOiAyMDBweDtcblxuXHRcdFx0XHQuaW5wdXQtZ3JvdXAge1xuXHRcdFx0XHRcdC5mb3JtLWNvbnRyb2wge1xuXHRcdFx0XHRcdFx0dGV4dC1pbmRlbnQ6IDA7XG5cblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRjdXJzb3I6dGV4dDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQuaW5wdXQtZ3JvdXAtYnRuIHtcblx0XHRcdFx0XHRcdC5idG4uc3VibWl0IHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8qKiogXG5Ib3Jpem9udGFsIE1lbnUgXG4qKiovXG5cbi5wYWdlLWhlYWRlci5uYXZiYXIge1xuXG5cdC8qIEhlYWRlciBjb250YWluZXIgKi9cblx0LmNvbnRhaW5lciB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cblx0LyogTWVnYSBtZW51ICovXG4gICAgICAgIC5ob3ItbWVudSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwIC0xN3B4O1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAgICAgICAgIC5uYXZiYXItbmF2IHtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAkaGVhZGVyLWhlaWdodDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuXG4gICAgICAgICAgICAgICAgJi5uYXZiYXItcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvKiBNZWdhIG1lbnUgKi9cbiAgICAgICAgICAgICAgICA+IGxpLm1lZ2EtbWVudS1kcm9wZG93biB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG5cbiAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IGF1dG87ICAgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhLW1lbnUtY29udGVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5OyAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm1lZ2EtbWVudS1yZXNwb25zaXZlLWNvbnRlbnQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE4cHggMTBweCA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZWdhLW1lbnUtc3VibWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGgzIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA2cHg7ICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkaGVhZGVyLWhvci1tZW51LW1lZ2EtbWVudS1oZWFkZXItZm9udC1zaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkaGVhZGVyLWhvci1tZW51LW1lZ2EtbWVudS1oZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDdweDsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDsgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogICRoZWFkZXItaG9yLW1lbnUtZHJvcGRvd24tbWVudS1saW5rLWZvbnQtc2l6ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogICRoZWFkZXItaG9yLW1lbnUtZHJvcGRvd24tbWVudS1saW5rLWZvbnQtd2VpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7ICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICYuaWNvbmlmeSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDdweCA3cHggN3B4IDMwcHg7IFxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDNweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmJhZGdlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7IFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYubWVnYS1tZW51LWZ1bGwge1xuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLyogTWVnYSBNZW51IERyb3Bkb3duICovXG4gICAgICAgICAgICAgICAgPiBsaS5tZW51LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgJjphZnRlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAvKiBDbGFzc2ljIG1lbnUgKi9cbiAgICAgICAgICAgICAgICA+IGxpIHtcbiAgICAgICAgICAgICAgICAgICAgPiBhIHsgICAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGhlYWRlci1ob3ItbWVudS1kZWZhdWx0LWxpbmstZm9udC1zaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRoZWFkZXItaG9yLW1lbnUtZGVmYXVsdC1saW5rLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogJGhlYWRlci1ob3ItbWVudS1nZW5lcmFsLWl0ZW0tcGFkZGluZzsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodDogJGhlYWRlci1oZWlnaHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5jdXJyZW50LFxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAuc2VsZWN0ZWQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206MDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206LTZweDsgIFxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktcHJpbWFyeTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAgJGhlYWRlci1ob3ItbWVudS1kcm9wZG93bi1tZW51LWxpbmstZm9udC1zaXplO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogICRoZWFkZXItaG9yLW1lbnUtZHJvcGRvd24tbWVudS1saW5rLWZvbnQtd2VpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAkaGVhZGVyLWhvci1tZW51LXN1Ym1lbnUtaXRlbS1wYWRkaW5nO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5sYWJlbCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmJhZGdlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7ICBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuY2xhc3NpYy1tZW51LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtaW4td2lkdGg6IDE5NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMjM1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB9ICBcblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1zdWJtZW51IHtcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgPiBhOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6ICRoZWFkZXItaG9yLW1lbnUtc3VibWVudS1pdGVtLWFycm93LXRvcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSAgICAgXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG59XG5cbi8qIEZvcm0gbWVkaXVtIGRldmljZXMgdXB0byBsYXJnZSBkZXZpY2VzICovXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbGctbWluKSB7ICAvKiA5OTJweCAxMjAwcHggKi9cblx0LyogQm94ZWQgbGF5b3V0ICovXG5cdC5wYWdlLWJveGVkIHtcblx0XHQucGFnZS1oZWFkZXIubmF2YmFyIHsgIFxuXHRcdFx0LyogVG9wIG1lbnUgKi8gIFxuXHRcdFx0LnRvcC1tZW51IHtcblx0XHRcdFx0Lm5hdmJhci1uYXYge1xuXHRcdFx0XHRcdD4gbGkuZHJvcGRvd24tdXNlciB7XG5cdFx0XHRcdFx0XHQuZHJvcGRvd24tdG9nZ2xlIHtcblx0XHRcdFx0XHRcdFx0LnVzZXJuYW1lLnVzZXJuYW1lLWhpZGUtb24tbW9iaWxlIHtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0PiBsaS5kcm9wZG93bi1sYW5ndWFnZSB7XG5cdFx0XHRcdFx0XHQuZHJvcGRvd24tdG9nZ2xlIHtcblx0XHRcdFx0XHRcdFx0LmxhbmduYW1lIHtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XHRcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IC8qIDk5MnB4ICovXG5cblx0LyogUGFnZSBoZWFkZXIgKi9cblx0LnBhZ2UtaGVhZGVyLm5hdmJhciB7XG5cdFx0LyogSGVhZGVyIGxvZ28gKi9cblx0XHQucGFnZS1sb2dvIHtcblx0XHRcdC5wYWdlLXNpZGViYXItY2xvc2VkLnBhZ2Utc2lkZWJhci1jbG9zZWQtaGlkZS1sb2dvICYge1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQucGFnZS1zaWRlYmFyLWNsb3NlZC5wYWdlLXNpZGViYXItY2xvc2VkLWhpZGUtbG9nbyAmIHsgXG5cdFx0XHRcdHdpZHRoOiAkc2lkZWJhci1jb2xsYXBzZWQtd2lkdGg7XG5cblx0XHRcdFx0LmxvZ28tZGVmYXVsdCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8qIEJveGVkIExheW91dCAqL1xuXHQucGFnZS1ib3hlZFx0e1xuXHRcdC5wYWdlLWhlYWRlci5uYXZiYXIge1xuXHRcdFx0LyogUGFnZSBsb2dvICovXG5cdFx0XHQucGFnZS1sb2dvIHtcblx0XHRcdFx0d2lkdGg6ICgkc2lkZWJhci13aWR0aCArIDFweCk7XG5cdFx0XHR9XG5cblx0XHRcdC8qIFRvcCBtZW51ICovXG5cdFx0XHQudG9wLW1lbnUge1xuXHRcdFx0XHQubmF2YmFyLW5hdiB7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwcHg7XG5cdFx0XHRcdH1cdFxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8qIFNpZGViYXIgY2xvc2VkICYgbG9nbyBoaWRkZW4gKi9cblx0LnBhZ2Utc2lkZWJhci1jbG9zZWQucGFnZS1zaWRlYmFyLWNsb3NlZC1oaWRlLWxvZ28ucGFnZS1ib3hlZCB7XG5cdFx0LnBhZ2UtaGVhZGVyLm5hdmJhciB7XG5cdFx0XHQvKiBQYWdlIGxvZ28gKi9cblx0XHRcdC5wYWdlLWxvZ28ge1xuXHRcdFx0XHR3aWR0aDogKCRzaWRlYmFyLWNvbGxhcHNlZC13aWR0aCArIDEpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8qIEJveGVkIGxheW91dCAmIHBhZ2Ugc2lkZWJhciBmaXhlZCBsYXlvdXQgKi9cblx0LnBhZ2UtYm94ZWQucGFnZS1zaWRlYmFyLWZpeGVkIHtcblx0XHQucGFnZS1oZWFkZXIubmF2YmFyIHtcblx0XHRcdC8qIFBhZ2UgbG9nbyAqL1xuXHRcdFx0LnBhZ2UtbG9nbyB7XG5cdFx0XHRcdHdpZHRoOiAkc2lkZWJhci13aWR0aDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7IC8qIDk5MXB4ICovXG5cblx0LyogUGFnZSBoZWFkZXIgKi9cblx0LnBhZ2UtaGVhZGVyLm5hdmJhciB7XG5cdFx0cGFkZGluZzogMCAyMHB4IDAgMjBweDtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0Y2xlYXI6IGJvdGg7XG5cblx0XHQvKiBQYWdlIGxvZ28gKi9cblx0XHQucGFnZS1sb2dvIHtcblx0XHRcdHdpZHRoOiBhdXRvO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdG1hcmdpbi1yaWdodDogMTBweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAwcHggIWltcG9ydGFudDtcblx0XHRcdHBhZGRpbmctbGVmdDogMHB4ICFpbXBvcnRhbnQ7IFxuXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogNHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LyogTWVudSBUb2dnbGVyICovXG5cdFx0Lm1lbnUtdG9nZ2xlciB7XG5cdFx0XHQmLnNpZGViYXItdG9nZ2xlciB7XG5cdFx0XHRcdGRpc3BsYXk6bm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHQmLnJlc3BvbnNpdmUtdG9nZ2xlciB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8qIFRvcCBNZW51ICovXG5cdFx0LnRvcC1tZW51IHtcblx0XHRcdC5uYXZiYXItbmF2IHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRtYXJnaW46IDAgMTBweCAwIDA7XG5cblx0XHRcdFx0PiBsaSB7XG5cdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQubmF2IGxpLmRyb3Bkb3duIGkge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0dG9wOjFweDtcblx0XHRcdFx0XHRyaWdodDowcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQub3BlbiAuZHJvcGRvd24tbWVudSAge1xuXHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cdFxuXHR9XG5cblx0LyogRml4ZWQgaGVhZGVyIGZvciBtb2JpbGUgKi9cblx0LnBhZ2UtaGVhZGVyLWZpeGVkLnBhZ2UtaGVhZGVyLWZpeGVkLW1vYmlsZSB7XG5cdFx0Lm5hdmJhci1maXhlZC10b3Age1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdH1cblx0fVx0IFxuXG5cdC8qIEJveGVkIExheW91dCAqL1xuXHQucGFnZS1ib3hlZCAucGFnZS1oZWFkZXIubmF2YmFyIHtcblx0XHQ+IC5jb250YWluZXIge1xuXHRcdFx0bWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDsgXG5cdFx0XHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7IC8qIDc2OHB4ICYgOTkxcHggKi9cblxuXHQvKiBCb3hlZCBMYXlvdXQgKi9cblx0LnBhZ2UtYm94ZWQge1xuXHRcdC5wYWdlLWhlYWRlci5uYXZiYXIgIHtcblx0XHRcdG1hcmdpbjogYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZzogMDtcblxuXHRcdFx0PiAuY29udGFpbmVyIHtcblx0XHRcdFx0bWFyZ2luOiBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkgeyAvKiA3NjdweCAqL1xuXG5cdC8qIFBhZ2UgaGVhZGVyICovXHRcblx0LnBhZ2UtaGVhZGVyLm5hdmJhciB7XG5cdFx0cGFkZGluZzogMCAxMHB4IDAgMTBweDtcblxuXHRcdC8qIEhlYWRlciBsb2dvICovXG5cdFx0LnBhZ2UtbG9nbyB7XG5cdFx0XHR3aWR0aDogYXV0bztcblx0XHR9XG5cblx0XHQvKiBTZWFyY2ggYm94ICovIFxuXHRcdC5zZWFyY2gtZm9ybSB7XG5cdFx0XHQmLm9wZW4ge1xuXHRcdFx0XHR6LWluZGV4OiAzO1xuXHRcdFx0XHRsZWZ0OiAxMHB4O1xuXHRcdFx0XHRyaWdodDogMTBweDtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8qIFRvcCBuYXZpZ2F0aW9uIG1lbnUqL1xuXHRcdC50b3AtbWVudSB7XG5cdFx0XHQubmF2YmFyLW5hdiB7XG5cbiAgICAgICAgICAgICAgICA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIHtcbiAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDI1NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI1NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG5cdFx0XHRcdD4gbGkuZHJvcGRvd24tbm90aWZpY2F0aW9uIHtcblx0XHRcdFx0XHQuZHJvcGRvd24tbWVudSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0xOTBweDtcblxuXHRcdFx0XHRcdFx0JjphZnRlcixcblx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxOTBweDsgICBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQ+IGxpLmRyb3Bkb3duLWluYm94IHtcblx0XHRcdFx0XHQuZHJvcGRvd24tbWVudSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0xNTBweDtcblxuXHRcdFx0XHRcdFx0JjphZnRlcixcblx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxNTBweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQ+IGxpLmRyb3Bkb3duLXRhc2tzIHtcblx0XHRcdFx0XHQuZHJvcGRvd24tbWVudSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IC0xMTBweDtcblxuXHRcdFx0XHRcdFx0JjphZnRlcixcblx0XHRcdFx0XHRcdCY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxMTBweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDU4MHB4KSB7XG5cblx0LyogUGFnZSBoZWFkZXIgKi9cblx0LnBhZ2UtaGVhZGVyLm5hdmJhciB7XG5cdFx0LnRvcC1tZW51IHtcblx0XHRcdC5uYXZiYXItbmF2IHtcblx0XHRcdFx0PiBsaS5kcm9wZG93bi11c2VyIHtcblx0XHRcdFx0XHQuZHJvcGRvd24tdG9nZ2xlIHtcblx0XHRcdFx0XHRcdC51c2VybmFtZS51c2VybmFtZS1oaWRlLW9uLW1vYmlsZSB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiBsaS5kcm9wZG93bi1sYW5ndWFnZSB7XG5cdFx0XHRcdFx0LmRyb3Bkb3duLXRvZ2dsZSB7XG5cdFx0XHRcdFx0XHQubGFuZ25hbWUge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pIHsgLyogNDgwcHggKi9cblxuXHQvKiBGaXhlZCBoZWFkZXIgZm9yIG1vYmlsZSAqL1xuXHQucGFnZS1oZWFkZXItZml4ZWQucGFnZS1oZWFkZXItZml4ZWQtbW9iaWxlIHtcblx0XHQucGFnZS1oZWFkZXIubmF2YmFyIHtcblx0XHRcdGhlaWdodDogJGhlYWRlci1oZWlnaHQteHM7XG5cdFx0fVxuXHR9XG5cblx0LnBhZ2UtaGVhZGVyLm5hdmJhciB7XG5cdFx0LyogVG9wIG1lbnUgKi9cblx0XHQudG9wLW1lbnUge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRjbGVhcjogYm90aDtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuXG5cdFx0XHQubmF2YmFyLW5hdiB7XHRcdFx0XHRcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwO1xuXG5cdFx0XHRcdD4gbGkuZHJvcGRvd24ge1xuXHRcdFx0XHRcdC5kcm9wZG93bi10b2dnbGUge1xuXHRcdFx0XHRcdFx0cGFkZGluZzogJGhlYWRlci10b3AtbWVudS1nZW5lcmFsLWl0ZW0tcGFkZGluZy1vbi1tb2JpbGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiBsaS5kcm9wZG93bi1sYW5ndWFnZSB7XG5cdFx0XHRcdFx0LmRyb3Bkb3duLXRvZ2dsZSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAkaGVhZGVyLXRvcC1tZW51LWxhbmd1YWdlLWl0ZW0tcGFkZGluZy1vbi1tb2JpbGU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiBsaS5kcm9wZG93bi11c2VyIHtcblx0XHRcdFx0XHQuZHJvcGRvd24tdG9nZ2xlIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6ICRoZWFkZXItdG9wLW1lbnUtdXNlci1pdGVtLXBhZGRpbmctb24tbW9iaWxlO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vKioqXG5QYWNlIC0gUGFnZSBQcm9ncmVzc1xuKioqL1xuXG4ucGFjZSB7XG5cbiAgICAucGFjZS1wcm9ncmVzcyB7XG4gICAgICAgIHotaW5kZXg6ICR6aW5kZXgtaGVhZGVyLWZpeGVkICsgMTA7XG4gICAgICAgIHRvcDogJGhlYWRlci1oZWlnaHQ7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cblxuICAgIC5wYWNlLXByb2dyZXNzLWlubmVyIHtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICB9XG5cbiAgICAucGFjZS1pbmFjdGl2ZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnBhY2UtYWN0aXZpdHkge1xuICAgICAgICB0b3A6ICRoZWFkZXItaGVpZ2h0ICsgNHB4O1xuICAgICAgICB6LWluZGV4OiAkemluZGV4LWhlYWRlci1maXhlZCArIDEwO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweCAhaW1wb3J0YW50O1xuICAgIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7IC8qIDQ4MHB4ICovIFxuXG4gICAgLnBhZ2UtaGVhZGVyLWZpeGVkIC5wYWNlIHtcbiAgICAgICAgLnBhY2UtcHJvZ3Jlc3Mge1xuICAgICAgICAgICAgdG9wOiAoJGhlYWRlci1oZWlnaHQgKiAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wYWNlLWFjdGl2aXR5IHtcbiAgICAgICAgICAgIHRvcDogKCRoZWFkZXItaGVpZ2h0ICogMikgKyA0cHg7XG4gICAgICAgIH1cbiAgICB9XG59IiwiLyoqKlxuUGFnZSBjb250YWluZXJcbioqKi9cblxuLnBhZ2UtY29udGFpbmVyIHtcbiAgXHRtYXJnaW46IDBweDtcbiAgXHRwYWRkaW5nOiAwcHg7XG4gIFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICBcdC8qIEZpeGVkIGhlYWRlciAqL1xuXHQucGFnZS1oZWFkZXItZml4ZWQgJiB7XG5cdFx0bWFyZ2luLXRvcDogJGhlYWRlci1oZWlnaHQ7IFxuXHR9XHQgIFxuXG5cdC8qIEZpeGVkIGZvb3RlciBmb3IgbW9iaWxlICovXG5cdC5wYWdlLWZvb3Rlci1maXhlZC5wYWdlLWZvb3Rlci1maXhlZC1tb2JpbGUgJiB7XG5cdFx0bWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50O1xuXHR9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyBcblx0LyogUGFnZSBjb250YWluZXIgaW4gZml4ZWQgZm9vdGVyICovXG5cdC5wYWdlLWZvb3Rlci1maXhlZCAucGFnZS1jb250YWluZXIge1xuXHQgXHRtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7IFxuXHRcblx0LyogUGFnZSBjb250YWluZXIgKi9cblx0LnBhZ2UtY29udGFpbmVyIHtcblx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cblx0XHQucGFnZS1oZWFkZXItZml4ZWQucGFnZS1oZWFkZXItZml4ZWQtbW9iaWxlICYge1xuXHRcdFx0bWFyZ2luLXRvcDogJGhlYWRlci1oZWlnaHQgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWluKSB7XG5cdFxuXHQvKiBQYWdlIGNvbnRhaW5lciAqL1xuXHQucGFnZS1jb250YWluZXIgeyAgXHRcdFxuXHRcdC5wYWdlLWhlYWRlci1maXhlZC5wYWdlLWhlYWRlci1maXhlZC1tb2JpbGUgJiB7XG4gIFx0XHRcdG1hcmdpbi10b3A6ICRoZWFkZXItaGVpZ2h0LXhzICFpbXBvcnRhbnQ7XG4gIFx0XHR9XG4gIFx0fVxufSIsIi8qKipcblBhZ2Ugc2lkZWJhclxuKioqL1xuXG4vKiBQYWdlIFNpZGViYXIgKi9cblxuLnBhZ2Utc2lkZWJhcixcbi5wYWdlLXNpZGViYXItY2xvc2VkLnBhZ2Utc2lkZWJhci1maXhlZCAucGFnZS1zaWRlYmFyOmhvdmVyIHtcblxuXHQmLm5hdmJhci1jb2xsYXBzZSB7XG5cdFx0cGFkZGluZzogMDtcblx0XHRib3gtc2hhZG93OiBub25lO1xuXHR9XG5cblx0LyogRGVmYXVsdCBzaWRlYmFyIG1lbnUgKi9cblx0LnBhZ2Utc2lkZWJhci1tZW51IHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcdFxuXHRcdC8qIDFzdCBsZXZlbCBsaW5rcyAqL1xuXHRcdD4gbGkge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nOiAwOyBcblx0XHRcdGJvcmRlcjogMHB4O1xuXG5cdFx0XHQmLnNpZGViYXItdG9nZ2xlci13cmFwcGVyLFxuXHRcdFx0Ji5zaWRlYmFyLXNlYXJjaC13cmFwcGVyIHtcblx0XHRcdFx0Ym9yZGVyOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRcdEBpbmNsdWRlIGNsZWFyZml4KCk7IFxuXHRcdFx0fVxuXG5cdFx0XHQmLnN0YXJ0IHtcblx0XHRcdFx0PiBhIHtcblx0XHRcdFx0XHRib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYubGFzdCB7XG5cdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQ+IGEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdGJvcmRlcjogMHB4O1xuXHRcdFx0XHRwYWRkaW5nOiAxMHB4IDE1cHg7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0Zm9udC1zaXplOiAkc2lkZWJhci1tZW51LWxpbmstZm9udC1zaXplO1xuXHRcdFx0XHRmb250LXdlaWdodDogMzAwO1xuXG5cdFx0XHRcdD4gaSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAkc2lkZWJhci1tZW51LWxpbmstaWNvbi1mb250LXNpemU7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiA1cHg7XG5cdFx0XHRcdFx0dGV4dC1zaGFkb3c6bm9uZTsgICBcblx0XHRcdFx0fVxuXG5cdFx0XHRcdD4gaS5nbHlwaGljb24ge1x0XHRcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMXB4O1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogNHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiBbY2xhc3NePVwiaWNvbi1cIl0geyBcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMXB4O1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogNHB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnBhZ2Utc2lkZWJhci1maXhlZCAmIHtcblx0XHRcdFx0XHR0cmFuc2l0aW9uOiBhbGwgMC4ycyBlYXNlO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnBhZ2Utc2lkZWJhci1yZXZlcnNlZC5wYWdlLXNpZGViYXItZml4ZWQgJiB7XG5cdFx0XHRcdFx0dHJhbnNpdGlvbjogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLmhlYWRpbmcge1xuXHRcdFx0XHRwYWRkaW5nOiAxNXB4IDE1cHggMTVweCAxNXB4O1xuXHRcdFx0XHQ+IGgzIHtcblx0XHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdFx0XHRmb250LXNpemU6ICRzaWRlYmFyLW1lbnUtaGVhZC1mb250LXNpemU7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLmhlYWRpbmcgKyBsaSA+IGEge1xuXHRcdFx0XHRib3JkZXItdG9wOiAwO1xuXHRcdFx0fVxuXG5cdFx0XHQmLm9wZW4ge1xuXHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogJHNpZGViYXItbWVudS1saW5rLWZvbnQtc2l6ZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0Ym9yZGVyOiBub25lOyBcblx0XHRcdFx0XHR0ZXh0LXNoYWRvdzpub25lO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogJHNpZGViYXItbWVudS1saW5rLWZvbnQtc2l6ZTtcblxuXHRcdFx0XHRcdD4gLnNlbGVjdGVkIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLyogd2lsbCBiZSBzZXQgaW4gYSB0aGVtZSBjc3MgZmlsZSovXG5cdFx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRyaWdodDowcHg7XG5cdFx0XHRcdFx0XHR0b3A6OHB4O1xuXG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDA7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDA7XG5cdFx0XHRcdFx0XHRib3JkZXItdG9wOiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMTJweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogMTJweCBzb2xpZCAjZmZmZmZmO1xuXG5cdFx0XHRcdFx0XHQucGFnZS1zaWRlYmFyLXJldmVyc2VkICYge1xuXHRcdFx0XHRcdFx0XHRyaWdodDogYXV0bztcblx0XHRcdFx0XHRcdFx0bGVmdDowO1xuXHRcdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDA7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1sZWZ0OjhweCBzb2xpZCAjZmZmZmZmO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQucGFnZS1jb250YWluZXItYmctc29saWQgJiB7XG5cdFx0XHRcdFx0XHRcdGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHBhZ2UtY29udGVudC1zb2xpZC1iZy1jb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgIFxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQucGFnZS1jb250YWluZXItYmctc29saWQucGFnZS1zaWRlYmFyLXJldmVyc2VkICYge1xuXHRcdFx0XHRcdFx0XHRib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRwYWdlLWNvbnRlbnQtc29saWQtYmctY29sb3I7ICBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQvKiBhbGwgbGlua3MgKi9cblxuXHRcdGxpIHtcblx0XHRcdD4gYSB7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdFx0XHQ+IC5hcnJvdyB7IFxuXG5cdFx0XHRcdFx0JjpiZWZvcmUgeyAgXG5cdFx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdFx0XHR3aWR0aDogMjBweDtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZTtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogJHNpZGViYXItbWVudS1saW5rLWljb24tZm9udC1zaXplO1xuXHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdFx0Y29udGVudDogXCJcXGYxMDRcIjtcblx0XHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0XHRcdFx0XHR0ZXh0LXNoYWRvdzpub25lO1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0dG9wOiA0cHg7XG5cdFx0XHRcdFx0XHRyaWdodDogMTRweDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLm9wZW46YmVmb3JlIHsgICBcblx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiAuYmFkZ2Uge1xuXHRcdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAxcHg7XG5cdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwcHg7XG5cdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdHJpZ2h0OiAxNHB4O1xuXHRcdFx0XHRcdHRvcDogNnB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0PiBsaSB7XG5cdFx0XHQ+IGEge1xuXHRcdFx0XHQ+IC5hcnJvdyB7IFxuXHRcdFx0XHRcdCY6YmVmb3JlIHsgXG5cdFx0XHRcdFx0XHR0b3A6IDhweDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQuc3ViLW1lbnUge1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0bWFyZ2luOiA4cHggMHB4IDhweCAwcHg7XHRcblx0XHRcblx0XHRcdGxpIHtcblx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0bWFyZ2luOiAwcHg7XG5cdFx0XHRcdHBhZGRpbmc6IDBweDtcblx0XHRcdFx0bWFyZ2luLXRvcDogMXB4ICFpbXBvcnRhbnQ7XG5cblx0XHRcdFx0PiBhIHtcdFx0XHRcdFx0XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDZweCAxNXB4IDZweCA0M3B4O1xuXHRcdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0XHRmb250LXNpemU6ICRzaWRlYmFyLW1lbnUtbGluay1mb250LXNpemU7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXG5cdFx0XHRcdFx0PiBpIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogJHNpZGViYXItbWVudS1zdWItbWVudS1saW5rLWljb24tZm9udC1zaXplO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIDJuZCBsZXZlbCBzdWIgbWVudSAqL1xuXHRcdFx0XHQ+IC5zdWItbWVudSB7XHRcdFx0XHRcblx0XHRcdFx0XHRtYXJnaW46IDA7XHRcdFxuXHRcdFx0XHRcdD4gbGkge1xuXHRcdFx0XHRcdFx0PiBhIHtcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiA2MHB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0LyogM3JkIGxldmVsIHN1YiBtZW51ICovXG5cdFx0XHRcdFx0XHQ+IC5zdWItbWVudSB7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0XHRcdFx0PiBsaSB7XG5cdFx0XHRcdFx0XHRcdFx0PiBhIHsgIFxuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiA4MHB4O1xuXHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fSBcblxuXHRcdFx0Ji5hbHdheXMtb3BlbiB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGxpLmFjdGl2ZSB7XG5cdFx0XHQ+IC5zdWItbWVudSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8qIGxpZ2h0IHNpZGViYXIgbWVudSAqL1xuXHQucGFnZS1zaWRlYmFyLW1lbnUucGFnZS1zaWRlYmFyLW1lbnUtbGlnaHQgeyAgXG5cdFx0PiBsaSB7XG5cdFx0XHQ+IGEge1xuXHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxMXB4O1xuXHRcdFx0XHRib3JkZXItbGVmdDogNHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0fVxuXG5cdFx0XHQuc3ViLW1lbnUge1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdHBhZGRpbmc6IDFweCAwO1xuXG5cdFx0XHRcdGxpIHsgICAgICAgICAgICAgICAgXHRcblx0XHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdFx0cGFkZGluZy10b3A6IDhweDtcblx0XHRcdFx0XHRcdHBhZGRpbmctYm90dG9tOiA4cHg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0JjpmaXJzdC1jaGlsZCB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7ICBcblx0XHRcdFx0XHR9IFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0LnBhZ2Utc2lkZWJhci1yZXZlcnNlZCAmIHtcblx0XHRcdD4gbGkge1xuXHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMTVweDtcblx0XHRcdFx0XHRwYWRkaW5nLXJpZ2h0OiAxMXB4O1xuXHRcdFx0XHRcdGJvcmRlci1sZWZ0OiAwO1xuXHRcdFx0XHRcdGJvcmRlci1yaWdodDogNHB4IHNvbGlkIHRyYW5zcGFyZW50OyAgXG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuc2lkZWJhci10b2dnbGVyIHtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKCdvcGFjaXR5IDAuM3MnKTtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cdFx0QGluY2x1ZGUgYnVyZ2VyLWljb24oI2ZmZmZmZiwgI2ZmZmZmZiwgJG1lbnUtdG9nZ2xlci1zaXplIC0gM3B4LCAxcHgsIC01cHgsIDVweCwgLTVweCk7XG4gICAgICAgIEBpbmNsdWRlIG9wYWNpdHkoMC43KTtcblxuICAgICAgICBwYWRkaW5nOiA2cHggOHB4O1xuXG5cdFx0bWFyZ2luLXRvcDogMTVweDtcblx0XHRtYXJnaW4tcmlnaHQ6IDE2cHg7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXG5cdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTsgIFxuXG5cdFx0Jjpob3ZlciB7IFxuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbignb3BhY2l0eSAwLjNzJyk7XG5cdFx0XHRAaW5jbHVkZSBvcGFjaXR5KDEpO1xuXHRcdH1cblx0fVxuXG5cdC5zaWRlYmFyLXNlYXJjaCB7XG5cdFx0cGFkZGluZzowO1xuXHRcdG1hcmdpbjogMjJweCAxOHB4IDIycHggMThweDtcblxuXHRcdC5yZW1vdmUge1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblxuXHRcdFx0PiBpIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0fVx0XHRcdFxuXHRcdH1cblxuXHRcdC5pbnB1dC1ncm91cCB7XG5cdFx0XHRcblx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyk7ICBcblxuXHRcdFx0LmZvcm0tY29udHJvbCB7XG5cdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiBhdXRvOyAgXG5cdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyk7IFxuXHRcdFx0fVxuXG5cdFx0XHQuaW5wdXQtZ3JvdXAtYnRuIHtcdFx0XHRcdFxuXG5cdFx0XHRcdC5idG4ge1xuXHRcdFx0XHRcdHBhZGRpbmc6IDJweCAwIDAgMDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuXHRcdFx0XHRcdGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgM3B4O1xuXG5cdFx0XHRcdFx0PiBpIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTVweDsgXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnNpZGViYXItc2VhcmNoLnNpZGViYXItc2VhcmNoLWJvcmRlcmVkIHtcblx0XHRtYXJnaW46IDI1cHggMThweCAyNXB4IDE4cHg7XG5cblx0XHQuaW5wdXQtZ3JvdXAge1xuXG5cdFx0XHQuZm9ybS1jb250cm9sIHtcblx0XHRcdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdFx0XHRwYWRkaW5nOiA2cHggOHB4O1xuXHRcdFx0fVxuXG5cdFx0XHQuaW5wdXQtZ3JvdXAtYnRuIHtcdFx0XHRcdFxuXG5cdFx0XHRcdC5idG4ge1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogNnB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IC8qIDk5MnB4ICovXG5cblx0LnBhZ2Utc2lkZWJhciB7XG5cdFx0d2lkdGg6ICRzaWRlYmFyLXdpZHRoO1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRtYXJnaW4tcmlnaHQ6IC0xMDAlO1xuXG5cdFx0LnBhZ2UtZnVsbC13aWR0aCAmIHtcblx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHR9XG5cblx0XHQmLmNvbGxhcHNlIHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0bWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50OyAgXG5cdFx0fVxuXHR9XG5cblx0LnBhZ2Utc2lkZWJhci1yZXZlcnNlZCB7XG5cdFx0LnBhZ2Utc2lkZWJhciB7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDA7XG5cdFx0XHRtYXJnaW4tbGVmdDogLTEwMCU7XG5cdFx0fVxuXG5cdFx0Ji5wYWdlLXNpZGViYXItZml4ZWQgLnBhZ2Utc2lkZWJhciB7XG5cdFx0XHRtYXJnaW4tbGVmdDogLSRzaWRlYmFyLXdpZHRoO1xuXHRcdH1cblxuXHRcdCYucGFnZS1zaWRlYmFyLWZpeGVkIC5wYWdlLXNpZGViYXItd3JhcHBlciB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0fVxuXHR9XG5cblx0LnBhZ2Utc2lkZWJhci1maXhlZCB7XG5cblx0XHQucGFnZS1zaWRlYmFyIHtcblx0XHRcdHBvc2l0aW9uOiBmaXhlZCAhaW1wb3J0YW50O1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cdFx0XHR0b3A6ICRoZWFkZXItaGVpZ2h0O1xuXHRcdH1cblxuXHRcdC5wYWdlLXNpZGViYXItbWVudSB7XG5cdFx0XHQ+IGxpIHtcblx0XHRcdFx0Ji5sYXN0IHtcblx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4ICFpbXBvcnRhbnQ7ICBcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuc3ViLW1lbnUge1xuXHRcdFx0XHRoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdC8qIFNpZGViYXIgQ2xvc2VkICovXG5cblx0LnBhZ2Utc2lkZWJhci1jbG9zZWQge1xuXHRcdC5wYWdlLXNpZGViYXIge1xuXHRcdFx0d2lkdGg6ICRzaWRlYmFyLWNvbGxhcHNlZC13aWR0aCAhaW1wb3J0YW50OyBcblxuXHRcdFx0LnBhZ2Utc2lkZWJhci1tZW51LnBhZ2Utc2lkZWJhci1tZW51LWNsb3NlZCB7XG5cblx0XHRcdFx0Lyogc2lkZWJhciAqL1xuXHRcdFx0XHR3aWR0aDogJHNpZGViYXItY29sbGFwc2VkLXdpZHRoICFpbXBvcnRhbnQ7IFxuXG5cdFx0XHRcdD4gbGkge1x0XG5cblx0XHRcdFx0XHQvKiBoaWRlIG9wZW5lZCBzdWIgbWVudSAqL1xuXHRcdFx0XHRcdCYub3BlbiA+IC5zdWItbWVudSwgIFxuXHRcdFx0XHRcdD4gLnN1Yi1tZW51IHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdHdpZHRoOiAoJHNpZGViYXItY29sbGFwc2VkLXN1Ym1lbnUtd2lkdGgtb24taG92ZXIgKyAkc2lkZWJhci1jb2xsYXBzZWQtd2lkdGggKyAxKSAhaW1wb3J0YW50OyBcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0ei1pbmRleDogJHppbmRleC1zaWRlYmFyLWZpeGVkO1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgXG5cblx0XHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRcdEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzIDAgMCk7XG5cblx0XHRcdFx0XHRcdFx0PiBpIHtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7ICBcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdD4gLnRpdGxlIHtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDE1cHg7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQ+IC5iYWRnZSB7XG5cdFx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdD4gLnNlbGVjdGVkIHtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XHRcblxuXHRcdFx0XHRcdFx0Ji5oZWFkaW5nIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6ICRzaWRlYmFyLWNvbGxhcHNlZC13aWR0aCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0XHRcdFx0fVx0XHRcdFx0XHRcblxuXHRcdFx0XHRcdFx0PiAuc3ViLW1lbnUgeyAgXG5cdFx0XHRcdFx0XHRcdHdpZHRoOiAkc2lkZWJhci1jb2xsYXBzZWQtc3VibWVudS13aWR0aC1vbi1ob3Zlcjtcblx0XHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0XHR6LWluZGV4OiAkemluZGV4LXNpZGViYXItc3VibWVudTtcblx0XHRcdFx0XHRcdFx0bGVmdDogKCRzaWRlYmFyLWNvbGxhcHNlZC13aWR0aCArIDFweCk7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDA7XG5cdFx0XHRcdFx0XHRcdHRvcDogMTAwJTtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgXG5cblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTtcblxuXHRcdFx0XHRcdFx0XHQ+IGxpIHtcblx0XHRcdFx0XHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxNXB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdFx0PiAuc3ViLW1lbnUge1xuXHRcdFx0XHRcdFx0XHRcdFx0PiBsaSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAzMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdFx0XHQ+IC5zdWItbWVudSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0PiBsaSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDQ1cHggIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHQmLmhlYWRpbmcge1xuXHRcdFx0XHRcdFx0PiBoMyB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7ICBcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XHRcblxuXHRcdFx0XHRcdCYuc2lkZWJhci10b2dnbGVyLXdyYXBwZXIge1xuXHRcdFx0XHRcdFx0LnNpZGViYXItdG9nZ2xlciB7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogOHB4O1x0XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogJHNpZGViYXItY29sbGFwc2VkLXdpZHRoICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5zaWRlYmFyLXNlYXJjaC13cmFwcGVyIHsgXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0d2lkdGg6ICRzaWRlYmFyLWNvbGxhcHNlZC13aWR0aCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDExcHg7XG5cblx0XHRcdFx0XHRcdC5zZWxlY3RlZCB7XG5cdFx0XHRcdFx0XHRcdHJpZ2h0OiAtM3B4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdD4gLmJhZGdlLFxuXHRcdFx0XHRcdFx0PiAudGl0bGUsXG5cdFx0XHRcdFx0XHQ+IC5hcnJvdyB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XHRcdFx0XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBzaWRlYmFyIHRvZ2dsZXIgKi9cblx0XHRcdFx0LnNpZGViYXItdG9nZ2xlciB7ICBcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogM3B4O1xuXHRcdFx0XHRcdG1hcmdpbi1yaWdodDogM3B4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0Lyogc2lkZWJhciBzZWFyY2ggKi9cblx0XHRcdFx0LnNpZGViYXItc2VhcmNoIHtcblx0XHRcdFx0XHQuaW5wdXQtZ3JvdXAge1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAtNHB4O1xuXG5cdFx0XHRcdFx0XHQuZm9ybS1jb250cm9sIHtcblx0XHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0LmlucHV0LWdyb3VwLWJ0biB7XHRcdFx0XHRcblxuXHRcdFx0XHRcdFx0XHQuYnRuIHtcblx0XHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIHNpZGViYXIgYm9yZGVyZWQgc2VhcmNoICovXG5cdFx0XHRcdC5zaWRlYmFyLXNlYXJjaC5zaWRlYmFyLXNlYXJjaC1ib3JkZXJlZCB7XG5cdFx0XHRcdFx0LmlucHV0LWdyb3VwIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDVweCAwIDNweCAwO1x0XHRcdFx0XHRcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdC8qIHNpZGViYXIgc2VhcmNoIGV4cGFuZGVkICovXG5cdFx0XHRcdC5zaWRlYmFyLXNlYXJjaC5vcGVuIHtcblx0XHRcdFx0XHRoZWlnaHQ6IDQwcHg7IFxuXHRcdFx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XG5cdFx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMTRweDtcblxuXHRcdFx0XHRcdC5pbnB1dC1ncm91cCB7XG5cdFx0XHRcdFx0XHR3aWR0aDogJHNpZGViYXItY29sbGFwc2VkLXN1Ym1lbnUtd2lkdGgtb24taG92ZXI7XG5cdFx0XHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdFx0XHR6LWluZGV4OiAxO1xuXHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IDI0cHg7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0XHRcdFx0XHQuZm9ybS1jb250cm9sIHtcblx0XHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogOHB4IDhweDsgXG5cdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdC5pbnB1dC1ncm91cC1idG4ge1x0XG5cdFx0XHRcdFx0XHRcdC5idG4ge1xuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogOHB4O1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IDFweDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5yZW1vdmUge1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcblx0XHRcdFx0XHRcdHdpZHRoOiAxMXB4O1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAxMXB4O1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAxMHB4IC01cHggOHB4IC03cHg7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBzaWRlYmFyIGJvcmRlcmVkIHNlYXJjaCBleHBhbmRlZCAqL1xuXHRcdFx0XHQuc2lkZWJhci1zZWFyY2gub3Blbi5zaWRlYmFyLXNlYXJjaC1ib3JkZXJlZCB7XG5cdFx0XHRcdFx0aGVpZ2h0OiAzOHB4OyBcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAyM3B4O1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIzcHg7IFxuXG5cdFx0XHRcdFx0LmlucHV0LWdyb3VwIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6IDA7XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQucGFnZS1zaWRlYmFyLW1lbnUucGFnZS1zaWRlYmFyLW1lbnUtbGlnaHQucGFnZS1zaWRlYmFyLW1lbnUtY2xvc2VkIHtcblx0XHRcdFx0PiBsaSB7XG5cdFx0XHRcdFx0PiBhIHtcblx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDExcHg7IFxuXHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiA3cHg7ICAgXG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSBcblxuXHRcdCYucGFnZS1zaWRlYmFyLXJldmVyc2VkIHtcblxuXHRcdFx0LnBhZ2Utc2lkZWJhciB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAtJHNpZGViYXItY29sbGFwc2VkLXdpZHRoO1xuXHRcdFx0XHR3aWR0aDogJHNpZGViYXItY29sbGFwc2VkLXdpZHRoO1xuXG5cdFx0XHRcdC5wYWdlLXNpZGViYXItbWVudS5wYWdlLXNpZGViYXItbWVudS1jbG9zZWQge1xuXG5cdFx0XHRcdFx0Lyogc2lkZWJhciAqL1xuXHRcdFx0XHRcdD4gbGkge1xuXHRcdFx0XHRcdFx0PiAuc3ViLW1lbnUgeyAgXG5cdFx0XHRcdFx0XHRcdGxlZnQ6YXV0bztcblx0XHRcdFx0XHRcdFx0cmlnaHQ6ICgkc2lkZWJhci1jb2xsYXBzZWQtd2lkdGggKyAxcHgpO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0oJHNpZGViYXItY29sbGFwc2VkLXN1Ym1lbnUtd2lkdGgtb24taG92ZXIgKyAxcHgpO1xuXG5cdFx0XHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZ2VuZXJhbC1ib3JkZXItcmFkaXVzIDAgMCAwKTtcblxuXHRcdFx0XHRcdFx0XHRcdD4gLnRpdGxlIHtcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdFx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cdFx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdFx0PiBpIHtcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1yaWdodDogMDtcblx0XHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAycHg7ICAgXG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XHRcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Ji5zaWRlYmFyLXNlYXJjaC13cmFwcGVyLFxuXHRcdFx0XHRcdFx0Ji5zaWRlYmFyLXRvZ2dsZXItd3JhcHBlciB7XG5cdFx0XHRcdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0XHRcdFx0XHR9IFxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC8qIHNpZGViYXIgc2VhcmNoICovXG5cdFx0XHRcdFx0LnNpZGViYXItc2VhcmNoIHtcblx0XHRcdFx0XHRcdCYub3BlbiB7XG5cdFx0XHRcdFx0XHRcdC5pbnB1dC1ncm91cCB7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0oJHNpZGViYXItY29sbGFwc2VkLXN1Ym1lbnUtd2lkdGgtb24taG92ZXIgKyAxN3B4KTtcblxuXHRcdFx0XHRcdFx0XHRcdC5pbnB1dC1ncm91cC1idG4ge1x0XHRcdFx0XG5cdFx0XHRcdFx0XHRcdFx0XHQuYnRuIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRcdFx0LnJlbW92ZSB7XG5cdFx0XHRcdFx0XHRcdFx0bWFyZ2luOiA5cHggNHB4IDEycHggLTE2cHggICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdFx0ZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucGFnZS1zaWRlYmFyLW1lbnUucGFnZS1zaWRlYmFyLW1lbnUtbGlnaHQucGFnZS1zaWRlYmFyLW1lbnUtY2xvc2VkIHtcblx0XHRcdFx0XHQ+IGxpIHtcblx0XHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDdweDsgICAgICBcblx0XHRcdFx0XHRcdFx0cGFkZGluZy1sZWZ0OiAxMXB4O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYucGFnZS1zaWRlYmFyLWZpeGVkIHtcblx0XHRcdC5wYWdlLXNpZGViYXIge1xuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHR3aWR0aDogJHNpZGViYXItd2lkdGggIWltcG9ydGFudDtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHR6LWluZGV4OiAkemluZGV4LXNpZGViYXItZml4ZWQ7XG5cblx0XHRcdFx0XHQucGFnZS1zaWRlYmFyLW1lbnUge1xuXHRcdFx0XHRcdFx0d2lkdGg6ICRzaWRlYmFyLXdpZHRoICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdC5zZWxlY3RlZCB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLnBhZ2Utc2lkZWJhci1maXhlZC5wYWdlLXNpZGViYXItcmV2ZXJzZWQge1xuXHRcdFx0LnBhZ2Utc2lkZWJhciB7XG5cdFx0XHRcdCY6aG92ZXIgeyAgXG5cdFx0XHRcdFx0d2lkdGg6ICRzaWRlYmFyLXdpZHRoICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0ei1pbmRleDogJHppbmRleC1zaWRlYmFyLWZpeGVkO1xuXHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAtJHNpZGViYXItd2lkdGggIWltcG9ydGFudDtcblxuXHRcdFx0XHRcdC5wYWdlLXNpZGViYXItbWVudSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogJHNpZGViYXItd2lkdGggIWltcG9ydGFudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQmLnBhZ2Utc2lkZWJhci1oaWRlIHtcblx0XHRcdC5wYWdlLXNpZGViYXIge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyogU2lkZWJhciBNZW51IFdpcmggSG92ZXJhYmxlIFN1Ym1lbnUgKi9cblx0LnBhZ2Utc2lkZWJhci1tZW51LnBhZ2Utc2lkZWJhci1tZW51LWhvdmVyLXN1Ym1lbnUgeyAgXG5cdFx0bGkge1xuXHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTsgXHRcblx0XHRcdFx0d2lkdGg6ICRzaWRlYmFyLWNvbGxhcHNlZC1zdWJtZW51LXdpZHRoLW9uLWhvdmVyO1xuXHRcdFx0XHR6LWluZGV4OiAkemluZGV4LXNpZGViYXItc3VibWVudTtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1x0XHQgXG5cblx0XHRcdFx0QGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTtcblxuXHRcdFx0XHQ+IGxpIHtcblx0XHRcdFx0XHQ+IGEge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAzcHg7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdCYuYWN0aXZlLFxuXHRcdFx0Ji5vcGVuIHtcblx0XHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cdFx0XHRcdFxuXHRcdFx0fVxuXG5cdFx0XHRhID4gLmFycm93IHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0PiAuYXJyb3cgeyAgXG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHJpZ2h0OiAwOyBcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IC0yMHB4O1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHRcdHdpZHRoOiAwO1xuXHRcdFx0XHRcdFx0aGVpZ2h0OiAwO1xuXHRcdFx0XHRcdFx0Ym9yZGVyLXN0eWxlOiBzb2xpZDtcblx0XHRcdFx0XHRcdGJvcmRlci10b3A6IDEycHggZG91YmxlIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMTJweCBkb3VibGUgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0XHRib3JkZXItbGVmdDowO1xuXG5cdFx0XHRcdFx0XHQmOmFmdGVyLFxuXHRcdFx0XHRcdFx0JjpiZWZvcmUge1xuXHRcdFx0XHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQucGFnZS1zaWRlYmFyLXJldmVyc2VkICYge1xuXHRcdFx0XHRcdFx0XHRyaWdodDogYXV0bztcblx0XHRcdFx0XHRcdFx0bGVmdDogMDtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyLXJpZ2h0OiAwO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdD4gLnN1Yi1tZW51IHtcblx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdD4gbGk6aG92ZXIge1xuXHRcdFx0PiBhIHtcblx0XHRcdFx0PiAuYXJyb3cge1xuXHRcdFx0XHRcdHotaW5kZXg6IDE7XG5cdFx0XHRcdFx0cmlnaHQ6IDBweDtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiAtMjNweDsgXG5cdFx0XHRcdH1cblx0XHRcdFx0PiAuc2VsZWN0ZWQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHRcdH1cblx0XHRcdH1cdFx0XHRcblxuXHRcdFx0PiAuc3ViLW1lbnUge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogJHNpZGViYXItd2lkdGg7ICAgXG5cdFx0XHRcdG1hcmdpbi10b3A6IC00MHB4OyBcblx0XHRcdFx0XG5cdFx0XHRcdC5wYWdlLXNpZGViYXItcmV2ZXJzZWQgJiB7XG5cdFx0XHRcdFx0bWFyZ2luLWxlZnQ6IC0oJHNpZGViYXItY29sbGFwc2VkLXN1Ym1lbnUtd2lkdGgtb24taG92ZXIpICFpbXBvcnRhbnQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucGFnZS1zaWRlYmFyLWNsb3NlZCAmIHtcblx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdD4gbGkge1xuXHRcdFx0XHRcdFxuXHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDE1cHg7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LnN1Yi1tZW51IHtcblx0XHRcdFx0XHRcdG1hcmdpbi1sZWZ0OiAkc2lkZWJhci1jb2xsYXBzZWQtc3VibWVudS13aWR0aC1vbi1ob3Zlcjtcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IC0zOHB4ICFpbXBvcnRhbnQ7IFxuXG5cdFx0XHRcdFx0XHQucGFnZS1zaWRlYmFyLXJldmVyc2VkICYge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogLSRzaWRlYmFyLWNvbGxhcHNlZC1zdWJtZW51LXdpZHRoLW9uLWhvdmVyICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHR9XHRcblxuXHRcdFx0XHRcdFx0PiBsaSA+IGEge1xuXHRcdFx0XHRcdFx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9ICBcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQucGFnZS1zaWRlYmFyLW1lbnUucGFnZS1zaWRlYmFyLW1lbnUtbGlnaHQucGFnZS1zaWRlYmFyLW1lbnUtaG92ZXItc3VibWVudSAge1xuXHRcdGxpOmhvdmVyIHtcblx0XHRcdD4gLnN1Yi1tZW51IHtcblx0XHRcdFx0bWFyZ2luLXRvcDogLTQxcHg7XG5cblx0XHRcdFx0PiBsaSB7XG5cdFx0XHRcdFx0PiAuc3ViLW1lbnUgeyBcblx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IC00MXB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vLyBzaWRlYmFyIG1vYmlsZSBtZW51IG9mZmNhbnZhc1xuLnBhZ2Utc2lkZWJhci13cmFwcGVyIHtcblx0LnBhZ2Utc2lkZWJhci1tZW51IHtcblx0XHQ+IGxpLnNpZGViYXItbW9iaWxlLW9mZmNhbnZhcy10b2dnbGVyIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXHR9XHRcdFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHsgLyogOTkxcHggKi9cblxuXHQucGFnZS1zaWRlYmFyIHtcblx0XHRib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XG5cdFx0bWFyZ2luOiAyMHB4O1xuXG5cdFx0LnNpZGViYXItdG9nZ2xlciB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblxuXHRcdC5zZWxlY3RlZCB7XG5cdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0fVxuXG5cdFx0Ji5uYXZiYXItY29sbGFwc2Uge1xuXHRcdFx0bWF4LWhlaWdodDogbm9uZTsgLyogc2V0IHNvbWUgbWF4IGhlaWdodCB0byBoYXZlIGEgc2Nyb2xsYWJsZSBtZW51IG9uIG1vYmlsZSBkZXZpY2VzICovXG5cblx0XHRcdCYuY29sbGFwc2Uge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdCYuaW4ge1xuXHRcdFx0XHRib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XG5cdFx0XHRcdG1hcmdpbjogMjBweDtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG5cdFx0XHRcdG92ZXJmbG93LXk6IGF1dG8gIWltcG9ydGFudDtcblx0XHRcdFx0ZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdH1cblxuXHRcdFx0Ji5uYXZiYXItbm8tc2Nyb2xsIHtcblx0XHRcdFx0bWF4LWhlaWdodDogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC5tZWdhLW1lbnUtcmVzcG9uc2l2ZS1jb250ZW50IHtcblx0XHRcdHBhZGRpbmc6IDEwcHggMThweCAxMHB4IDQ1cHg7XG5cdFx0fVxuXHR9XG5cblx0LnBhZ2UtZnVsbC13aWR0aCB7XG5cdFx0LnBhZ2Utc2lkZWJhci1tZW51IHtcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdH1cblx0fVxuXG5cdC8vIHNpZGViYXIgbW9iaWxlIG1lbnUgb2ZmY2FudmFzXG5cdC5wYWdlLXNpZGViYXItbW9iaWxlLW9mZmNhbnZhcyB7XG5cdFx0LnBhZ2Utc2lkZWJhci13cmFwcGVyIHtcblx0XHRcdHotaW5kZXg6IDEwMDAwO1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0dG9wOiAwO1xuXHRcdFx0Ym90dG9tOiAwO1xuXHRcdFx0b3ZlcmZsb3cteTogYXV0bztcblx0XHRcdHdpZHRoOiAkc2lkZWJhci13aWR0aDtcblx0XHRcdGxlZnQ6IC0kc2lkZWJhci13aWR0aDtcblx0XHRcdHRyYW5zaXRpb246ICRnZW5lcmFsLXRyYW5zaXRpb247XG5cblx0XHRcdC5wYWdlLXNpZGViYXIge1xuXHRcdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblxuXHRcdFx0XHQucGFnZS1zaWRlYmFyLW1lbnUge1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1x0XHRcdFx0XHRcblx0XHRcdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDAgMjBweCAwO1xuXHRcdFx0XHRcblx0XHRcdFx0XHQ+IGxpLnNpZGViYXItbW9iaWxlLW9mZmNhbnZhcy10b2dnbGVyIHtcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0XHRcdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogMDtcblxuXHRcdFx0XHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XHRcdFx0XG5cdFx0fVxuXG5cdFx0Ji5wYWdlLXNpZGViYXItbW9iaWxlLW9mZmNhbnZhcy1vcGVuIHtcblx0XHRcdC5wYWdlLXNpZGViYXItd3JhcHBlciB7IFxuXHRcdFx0XHRsZWZ0OiAwO1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAkZ2VuZXJhbC10cmFuc2l0aW9uO1xuXHRcdFx0fVxuXHRcdH1cdFx0XG5cdH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHsgLyogNzY4cHggJiA5OTFweCAqL1xuXHQucGFnZS1zaWRlYmFyIHtcblx0XHQuYnRuLW5hdmJhciB7XG5cblx0XHRcdCYuY29sbGFwc2VkIC5hcnJvdyB7IFxuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXG5cdFx0XHQuYXJyb3cge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHJpZ2h0OiAyNXB4O1xuXHRcdFx0XHR3aWR0aDogMDsgXG5cdFx0XHRcdGhlaWdodDogMDtcblx0XHRcdFx0dG9wOjUwcHg7XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDE1cHggc29saWQgIzVmNjQ2Yjtcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7IFxuXHRcdFx0XHRib3JkZXItcmlnaHQ6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7IFxuXHRcdFx0fVxuXHRcdH1cdFxuXHR9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1pbikgeyAvKiA0ODBweCAqL1xuXHRcblx0LyogUGFnZSBzaWRlYmFyICovXG5cblx0LnBhZ2Utc2lkZWJhcixcblx0LnBhZ2Utc2lkZWJhci5pbiB7XG5cdFx0bWFyZ2luOiAwIDEwcHggMTBweCAxMHB4ICFpbXBvcnRhbnQ7XG5cblx0XHQucGFnZS1oZWFkZXItZml4ZWQucGFnZS1oZWFkZXItZml4ZWQtbW9iaWxlICYge1xuXHRcdFx0bWFyZ2luLXRvcDogMTBweCAhaW1wb3J0YW50O1xuXHRcdH1cblx0fVxufSIsIi8qKipcblBhZ2UgY29udGVudFxuKioqL1xuXG4vKiBQYWdlIHRpdGxlICovXG5cbi5wYWdlLXRpdGxlIHtcblx0cGFkZGluZzogMHB4O1xuXHRmb250LXNpemU6IDI4cHg7XG5cdGxldHRlci1zcGFjaW5nOiAtMXB4O1xuXHRkaXNwbGF5OiBibG9jaztcblx0Y29sb3I6ICM2NjY7XG5cdG1hcmdpbjogMHB4IDBweCAxNXB4IDBweDtcblx0Zm9udC13ZWlnaHQ6IDMwMDtcblxuXHQvKiBzdWJ0aXRsZSAqL1xuXHRzbWFsbCB7XG5cdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdGxldHRlci1zcGFjaW5nOiAwcHg7XG5cdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRjb2xvcjogIzg4ODtcblx0fVxuXG5cdC5wYWdlLWNvbnRlbnQtd2hpdGUgJixcblx0LnBhZ2UtY29udGFpbmVyLWJnLXNvbGlkICYge1xuXHRcdGNvbG9yOiAjNjY2O1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblxuXHRcdHNtYWxsIHtcblx0XHRcdGNvbG9yOiAjNjY2O1xuXHRcdH1cblx0fVxuXG5cdC5wYWdlLWNvbnRlbnQtd2hpdGUgJiB7XG5cdFx0bWFyZ2luOiAyNXB4IDA7XG5cdFx0Zm9udC1zaXplOiAyNHB4O1xuXHR9XG59XG5cbi8qIFBhZ2UgYnJlYWRjcnVtYiAqL1xuXG4ucGFnZS1iYXIge1xuXHRwYWRkaW5nOiAwcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICNmMWY0Zjc7ICBcblx0bWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyk7ICBcblxuXHRAaW5jbHVkZSBjbGVhcmZpeCgpO1xuXG5cdC5wYWdlLWJyZWFkY3J1bWIge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRmbG9hdDogbGVmdDtcblx0XHRwYWRkaW5nOiA4cHg7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG5cblx0XHQ+IGxpICB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cblx0XHRcdC5pZTggJiB7XG5cdFx0XHRcdG1hcmdpbi1yaWdodDogMXB4O1xuXHRcdFx0fVxuXG5cdFx0XHQ+IGEsXG5cdFx0XHQ+IHNwYW4ge1xuXHRcdFx0XHRjb2xvcjogIzg4ODtcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0XHR0ZXh0LXNoYWRvdzpub25lO1xuXHRcdFx0fVxuXG5cdFx0XHQ+IGkge1xuXHRcdFx0XHRjb2xvcjogI2FhYTtcblx0XHRcdFx0Zm9udC1zaXplOiAxNHB4O1xuXHRcdFx0XHR0ZXh0LXNoYWRvdzpub25lO1xuXHRcdFx0fVxuXG5cdFx0XHQ+IGlbY2xhc3NePVwiaWNvbi1cIl0sXG5cdCAgICAgICAgPiBpW2NsYXNzKj1cImljb24tXCJdIHtcblx0ICAgICAgICBcdGNvbG9yOiBkYXJrZW4oIzk5OSwgMTAlKTtcblx0ICAgICAgICB9XG5cdFx0fVxuXHR9XG5cblx0LnBhZ2UtdG9vbGJhciB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRwYWRkaW5nOiAwO1xuXG5cdFx0LmJ0bi1maXQtaGVpZ2h0IHsgXG5cdFx0XHRAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgJGdlbmVyYWwtYm9yZGVyLXJhZGl1cyAkZ2VuZXJhbC1ib3JkZXItcmFkaXVzIDApOyAgIFxuXHRcdFx0cGFkZGluZy10b3A6IDhweDtcblx0XHRcdHBhZGRpbmctYm90dG9tOiA4cHg7XG5cblx0XHRcdC5wYWdlLW1kICYge1xuXHRcdFx0XHRwYWRkaW5nLXRvcDogOXB4O1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogOXB4O1xuXHRcdFx0XHRib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnBhZ2UtY29udGVudC13aGl0ZSAmLFxuXHQucGFnZS1jb250YWluZXItYmctc29saWQgJiB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZmZmZjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0cGFkZGluZzogMHB4IDIwcHg7XG5cdFx0bWFyZ2luOiAtMjVweCAtMjBweCAwIC0yMHB4O1xuXG5cdFx0LnBhZ2UtYnJlYWRjcnVtYiB7XG5cdFx0XHRwYWRkaW5nOiAxMXB4IDA7XG5cblx0XHRcdD4gbGkgIHtcblx0XHRcdFx0PiBhLFxuXHRcdFx0XHQ+IHNwYW4ge1xuXHRcdFx0XHRcdGNvbG9yOiAjODg4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0PiBpIHtcblx0XHRcdFx0XHRjb2xvcjogI2FhYTtcblxuXHRcdFx0XHRcdCYuZmEtY2lyY2xlIHtcblx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogNXB4O1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAwIDVweDtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdHRvcDogLTNweDtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIG9wYWNpdHkoMC40KTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQ+IGlbY2xhc3NePVwiaWNvbi1cIl0sXG5cdFx0ICAgICAgICA+IGlbY2xhc3MqPVwiaWNvbi1cIl0ge1xuXHRcdCAgICAgICAgXHRjb2xvcjogZGFya2VuKCM5OTksIDUlKTtcblx0XHQgICAgICAgIH1cblx0XHRcdH1cblx0XHR9XG5cblx0XHQucGFnZS10b29sYmFyIHtcblx0XHRcdHBhZGRpbmc6IDZweCAwO1xuXG5cdFx0XHQuYnRuIHtcblx0XHRcdFx0bWFyZ2luLXRvcDogLTJweDtcblxuXHRcdFx0XHQmLmJ0bi1zbSB7XG5cdFx0XHRcdFx0bWFyZ2luLXRvcDogMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8qIFBhZ2UgY29udGVudCAqL1xuXG4ucGFnZS1jb250ZW50IHsgIFxuXHRtYXJnaW4tdG9wOiAwcHg7ICAgXG5cdHBhZGRpbmc6IDBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjsgXG5cblx0LnBhZ2UtY29udGFpbmVyLWJnLXNvbGlkICYge1xuXHRcdGJhY2tncm91bmQ6ICRwYWdlLWNvbnRlbnQtc29saWQtYmctY29sb3I7ICAgICBcblx0fVxuXG5cdC5wYWdlLWNvbnRlbnQtd2hpdGUgJiB7XG5cdFx0LnBhZ2UtYmFyIHtcblx0XHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ2VuZXJhbC1wYW5lbC1ib3JkZXItY29sb3I7XG5cdFx0fVxuXHR9XG5cblx0LnBhZ2UtY29udGVudC13aGl0ZS5wYWdlLW1kICYsXG5cdC5wYWdlLWNvbnRhaW5lci1iZy1zb2xpZC5wYWdlLW1kICYge1xuXHRcdC5wYWdlLWJhciB7XG5cdFx0XHRib3JkZXItcmFkaXVzOiAwICFpbXBvcnRhbnQ7XG5cdFx0fSBcblx0fVxuXHRcblx0LnBhZ2UtZnVsbC13aWR0aCAmIHtcblx0XHRtYXJnaW4tbGVmdDogMHB4ICFpbXBvcnRhbnQ7XG5cdH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IC8qIDk5MnB4ICovXG5cblx0LyogUGFnZSBjb250ZW50ICovXG5cdC5wYWdlLWNvbnRlbnQtd3JhcHBlciB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHQucGFnZS1jb250ZW50IHsgXG5cdFx0XHRtYXJnaW4tbGVmdDogJHNpZGViYXItd2lkdGg7IFxuXHRcdFx0bWFyZ2luLXRvcDogMHB4O1xuXHRcdFx0bWluLWhlaWdodDogJHBhZ2UtY29udGVudC1taW4taGVpZ2h0OyBcblx0XHRcdHBhZGRpbmc6IDI1cHggMjBweCAxMHB4IDIwcHg7XG5cblx0XHRcdCYubm8tbWluLWhlaWdodCB7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6IGF1dG87XG5cdFx0XHR9XHRcdFx0XG5cblx0XHRcdC5wYWdlLXNpZGViYXItZml4ZWQucGFnZS1zaWRlYmFyLWhvdmVyLW9uICYge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogJHNpZGViYXItY29sbGFwc2VkLXdpZHRoOyBcblx0XHRcdH1cblxuXHRcdFx0LnBhZ2Utc2lkZWJhci1yZXZlcnNlZCAmIHtcblx0XHRcdFx0bWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAkc2lkZWJhci13aWR0aCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHQucGFnZS1zaWRlYmFyLXJldmVyc2VkLnBhZ2Utc2lkZWJhci1maXhlZC5wYWdlLXNpZGViYXItaG92ZXItb24gJiB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwO1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6ICRzaWRlYmFyLWNvbGxhcHNlZC13aWR0aDtcblx0XHRcdH1cblxuXHRcdFx0LnBhZ2Utc2lkZWJhci1yZXZlcnNlZC5wYWdlLXNpZGViYXItY2xvc2VkICAmIHtcdFxuXHRcdFx0XHRtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6ICRzaWRlYmFyLWNvbGxhcHNlZC13aWR0aCAhaW1wb3J0YW50O1xuXHRcdFx0fVxuXG5cdFx0XHQucGFnZS1zaWRlYmFyLWNsb3NlZCAgJiB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAkc2lkZWJhci1jb2xsYXBzZWQtd2lkdGggIWltcG9ydGFudDtcblx0XHRcdH1cblxuXHRcdFx0LnBhZ2Utc2lkZWJhci1jbG9zZWQucGFnZS1zaWRlYmFyLWhpZGUgJiB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdC5wYWdlLXNpZGViYXItY2xvc2VkLnBhZ2Utc2lkZWJhci1yZXZlcnNlZC5wYWdlLXNpZGViYXItaGlkZSAmIHtcblx0XHRcdFx0bWFyZ2luLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG5cdFx0XHR9XG5cblx0XHRcdC5wYWdlLWZ1bGwtd2lkdGggJiB7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwcHggIWltcG9ydGFudDtcblx0XHRcdH1cblx0XHR9XHRcdFxuXHR9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgeyAvKiA5OTFweCAqL1xuXHQvLyBkaXNhYmxlIG1vYmlsZSB2ZXJ0aWNhbCBzY3JvbGxcblx0aHRtbCxcblx0Ym9keSB7XG4gIFx0XHRvdmVyZmxvdy14OiBoaWRkZW47XG5cdH1cblxuXHQvKiBCZyBzb2xpZCBjb250ZW50J3MgYnJlYWRjcnVtYiAqL1xuXHQucGFnZS1jb250ZW50LXdoaXRlLFxuXHQucGFnZS1jb250YWluZXItYmctc29saWQge1xuXHRcdC5wYWdlLWJhciB7XG5cdFx0XHRtYXJnaW4tdG9wOiAtMjBweDtcblx0XHR9XG5cdH1cblxuXHQvKiBCb3hlZCBwYWdlIGNvbnRhaW5lciAgKi9cblx0LnBhZ2UtYm94ZWQgPiAuY29udGFpbmVyIHsgXG4gXHRcdG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuIFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcbiBcdFx0cGFkZGluZzogMCAhaW1wb3J0YW50O1xuIFx0fVxuXG4gXHQvKiBQYWdlIGNvbnRlbnQgKi9cblx0LnBhZ2UtY29udGVudC13cmFwcGVyIHtcblx0XHQucGFnZS1jb250ZW50IHtcblx0XHRcdG1hcmdpbjogMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRwYWRkaW5nOiAyMHB4IDIwcHggMjBweCAyMHB4ICFpbXBvcnRhbnQ7ICBcdFx0XG5cdFx0XHRtaW4taGVpZ2h0OiAyODBweDsgXG5cdFx0fVxuXHR9XG5cblx0Ly8gc2lkZWJhciBtb2JpbGUgbWVudSBvZmZjYW52YXNcblx0LnBhZ2Utc2lkZWJhci1tb2JpbGUtb2ZmY2FudmFzIHtcblx0XHQucGFnZS13cmFwcGVyIHtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHR0cmFuc2l0aW9uOiAkZ2VuZXJhbC10cmFuc2l0aW9uO1xuXG5cdFx0XHQucGFnZS1oZWFkZXIge1xuXHRcdFx0XHR0cmFuc2l0aW9uOiAkZ2VuZXJhbC10cmFuc2l0aW9uO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdCYucGFnZS1zaWRlYmFyLW1vYmlsZS1vZmZjYW52YXMtb3BlbiB7XG5cdFx0XHRvdmVyZmxvdy14OiBoaWRkZW47XG5cdFx0XHR0cmFuc2l0aW9uOiAkZ2VuZXJhbC10cmFuc2l0aW9uO1xuXG5cdFx0XHQucGFnZS13cmFwcGVyIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRsZWZ0OiAkc2lkZWJhci13aWR0aDtcblx0XHRcdFx0dHJhbnNpdGlvbjogJGdlbmVyYWwtdHJhbnNpdGlvbjtcblxuXHRcdFx0XHQucGFnZS1oZWFkZXIge1xuXHRcdFx0XHRcdHRyYW5zaXRpb246ICRnZW5lcmFsLXRyYW5zaXRpb247XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cdFxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgeyAvKiAgNzY4cHggJiA5OTFweCAqL1xuXHQvKiBCb3hlZCBwYWdlIGNvbnRhaW5lciAqL1xuXHQucGFnZS1ib3hlZCA+IC5jb250YWluZXIge1xuIFx0XHRtYXJnaW46IGF1dG8gIWltcG9ydGFudDtcbiBcdH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7IC8qIDc2N3B4ICovXG5cblx0LyogUGFnZSBjb250ZW50ICovXG5cdC5wYWdlLWNvbnRlbnQtd3JhcHBlciB7XG5cdFx0LnBhZ2UtY29udGVudCB7XG5cdFx0XHRwYWRkaW5nOiAyMHB4IDEwcHggMTBweCAxMHB4ICFpbXBvcnRhbnQ7XG5cdFx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXG5cdFx0XHQvKiBQYWdlIHRpdGxlICovXG5cdFx0XHQucGFnZS10aXRsZSB7XG5cdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMThweDtcblxuXHRcdFx0XHRzbWFsbCB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxM3B4O1xuXHRcdFx0XHRcdHBhZGRpbmctdG9wOiAzcHg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH0gIFxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1taW4pIHsgLyogNDgwcHggKi9cblxuXHQvKiBEYXNoYm9hcmQgZGF0ZSByYW5nZSBwYW5lbCAqL1xuXHQucGFnZS1jb250ZW50LXdyYXBwZXIge1xuXHRcdC5wYWdlLWNvbnRlbnQge1xuXHRcdFx0LnBhZ2UtdGl0bGUge1xuXHRcdFx0XHRzbWFsbCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIvKioqXG5QYWdlIGZvb3RlclxuKioqL1xuXG4ucGFnZS1mb290ZXIge1xuICAgIHBhZGRpbmc6IDhweCAyMHB4IDVweCAyMHB4OyBcbiAgICBmb250LXNpemU6IDEzcHg7XG4gICAgaGVpZ2h0OiAkcGFnZS1mb290ZXItaGVpZ2h0O1xuXG4gICAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcblxuICAgIC5wYWdlLWZvb3Rlci1pbm5lciB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuXG4gICAgLnBhZ2UtZm9vdGVyLWZpeGVkLnBhZ2UtZm9vdGVyLWZpeGVkLW1vYmlsZSAmIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgei1pbmRleDogJHppbmRleC1mb290ZXItZml4ZWQ7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAucGFnZS1mb290ZXItZml4ZWQucGFnZS1mb290ZXItZml4ZWQtbW9iaWxlLnBhZ2Utc2lkZWJhci1maXhlZCAmIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyAgLyogOTkycHggKi9cblxuICAgIC8qIERlZmF1bHQgZm9vdGVyICovXG4gICAgLnBhZ2UtZm9vdGVyIHtcbiAgICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgfVxuXG4gICAgLyogRml4ZWQgZm9vdGVyICovXG4gICAgLnBhZ2UtZm9vdGVyLWZpeGVkIHtcbiAgICAgICAgLnBhZ2UtZm9vdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB6LWluZGV4OiAkemluZGV4LWZvb3Rlci1maXhlZDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBGb290ZXIgd2l0aCBmb290ZXIgc2lkZWJhciAqL1xuICAgIC5wYWdlLXNpZGViYXItZml4ZWQge1xuICAgICAgICAmLnBhZ2Utc2lkZWJhci1jbG9zZWQge1xuICAgICAgICAgICAgLnBhZ2UtZm9vdGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNpZGViYXItY29sbGFwc2VkLXdpZHRoO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wYWdlLWZvb3Rlci1maXhlZCB7XG4gICAgICAgICAgICAucGFnZS1mb290ZXIge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBGaXhlZCBTaWRlYmFyICovXG4gICAgLnBhZ2Utc2lkZWJhci1maXhlZCB7XG4gICAgICAgIC5wYWdlLWZvb3RlciB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogJHNpZGViYXItd2lkdGg7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMjBweCA1cHggMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIEJveGVkIHBhZ2UgKi9cbiAgICAucGFnZS1ib3hlZCB7XG4gICAgICAgIC5wYWdlLWZvb3RlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMCA1cHggMDsgXG4gICAgICAgIH1cblxuICAgICAgICAmLnBhZ2Utc2lkZWJhci1maXhlZCAucGFnZS1mb290ZXIge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIFBhZ2Ugc2lkZWJhciByZXZlcnNlZCAqL1xuICAgIC5wYWdlLXNpZGViYXItcmV2ZXJzZWQucGFnZS1zaWRlYmFyLWZpeGVkIHtcbiAgICAgICAgLnBhZ2UtZm9vdGVyIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc2lkZWJhci13aWR0aDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAyMHB4IDVweCAyMHB4OyBcbiAgICAgICAgfVxuXG4gICAgICAgICYucGFnZS1mb290ZXItZml4ZWQge1xuICAgICAgICAgICAgLnBhZ2UtZm9vdGVyIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7IFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJi5wYWdlLXNpZGViYXItY2xvc2VkIHtcbiAgICAgICAgICAgIC5wYWdlLWZvb3RlciB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAkc2lkZWJhci1jb2xsYXBzZWQtd2lkdGg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgeyAvKiA5OTFweCAqL1xuXG4gICAgLyogQm94ZWQgTGF5b3V0ICovICAgIFxuICAgIC5wYWdlLWJveGVkIHtcbiAgICAgICAgLnBhZ2UtZm9vdGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHsgLyogNzY3cHggKi9cblxuICAgIC8qIERlZmF1bHQgZm9vdGVyICYgYm94ZWQgZm9vdGVyICovXG4gICAgLnBhZ2UtZm9vdGVyLFxuICAgIC5wYWdlLWJveGVkIC5wYWdlLWZvb3RlciB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMTBweDtcbiAgICB9XG5cbiAgICAvKiBGaXhlZCBmb290ZXIgKi9cbiAgICAucGFnZS1mb290ZXItZml4ZWQge1xuICAgICAgICAucGFnZS1mb290ZXIge1xuICAgICAgICAgICAgLmNvbnRhaW5lciB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi8qIFNjcm9sbCBUb3AgVG9wICovXG5cbi5zY3JvbGwtdG8tdG9wIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMXB4OyBcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjsgXG4gICAgcG9zaXRpb246Zml4ZWQ7XG4gICAgYm90dG9tOiAxMHB4OyAgICBcbiAgICB6LWluZGV4OiAkemluZGV4LWdvLXRvLXRvcDtcbiAgICBkaXNwbGF5Om5vbmU7XG4gICAgcmlnaHQ6IDEwcHg7XG5cbiAgICA+IGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbG9yOiBkYXJrZW4oIzk0QTBCMiwgMTUlKTtcbiAgICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgICBAaW5jbHVkZSBvcGFjaXR5KDAuNik7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgICAgICA+IGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgb3BhY2l0eSgxKTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7IC8qIDk5MnB4ICovIFxuICAgIC5zY3JvbGwtdG8tdG9wIHtcbiAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHsgLyogOTkxcHggKi9cbiAgICAuc2Nyb2xsLXRvLXRvcCB7XG4gICAgICAgIGJvdHRvbTogMTBweDsgIFxuICAgICAgICByaWdodDogMTBweDsgICBcblxuICAgICAgICA+IGkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICB9XG4gICAgfVxufSIsIi8qKipcblRoZW1lIFBhbmVsXG4qKiovXG5cbiR0aGVtZS1wYW5lbC1iZy1jb2xvcjogIzJiMzY0MztcblxuLnRoZW1lLXBhbmVsIHtcbiAgICB3aWR0aDogNDIwcHg7XG4gICAgbWFyZ2luLXRvcDogLTEzcHg7XG4gICAgbWFyZ2luLXJpZ2h0OiAwcHg7XG4gICAgei1pbmRleDogMTAwO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTsgICAgXG5cbiAgICA+IC50b2dnbGVyIHtcbiAgICAgICAgdG9wOjRweDtcbiAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgcGFkZGluZzoyMHB4O1xuICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJHRoZW1lLXBhbmVsLWJnLWNvbG9yLCAyMCUpIHVybCgjeyRsYXlvdXQtaW1nLXBhdGh9aWNvbi1jb2xvci5wbmcpIGNlbnRlciBuby1yZXBlYXQ7XG5cbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygkZ2VuZXJhbC1ib3JkZXItcmFkaXVzKTtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHRoZW1lLXBhbmVsLWJnLWNvbG9yLCAxMCUpICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICA+IC50b2dnbGVyLWNsb3NlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgdG9wOjRweDtcbiAgICAgICAgcmlnaHQ6MDtcbiAgICAgICAgcGFkZGluZzoyMHB4O1xuICAgICAgICB6LWluZGV4OiAxMDE7XG4gICAgICAgIGN1cnNvcjpwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgYmFja2dyb3VuZDogJHRoZW1lLXBhbmVsLWJnLWNvbG9yIHVybCgjeyRsYXlvdXQtaW1nLXBhdGh9aWNvbi1jb2xvci1jbG9zZS5wbmcpIGNlbnRlciBuby1yZXBlYXQgIWltcG9ydGFudDtcblxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRnZW5lcmFsLWJvcmRlci1yYWRpdXMpOyBcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdGhlbWUtcGFuZWwtYmctY29sb3IsIDUlKSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgPiAudGhlbWUtb3B0aW9ucyB7XG4gICAgICAgIHRvcDo0cHg7XG4gICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIHotaW5kZXg6IDEwMDsgIFxuICAgICAgICBiYWNrZ3JvdW5kOiR0aGVtZS1wYW5lbC1iZy1jb2xvcjtcblxuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKCRnZW5lcmFsLWJvcmRlci1yYWRpdXMpO1xuICAgICAgICBcbiAgICAgICAgPiAudGhlbWUtb3B0aW9uIHtcbiAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCR0aGVtZS1wYW5lbC1iZy1jb2xvciwgNjAlKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDE1cHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOjFweCBzb2xpZCBsaWdodGVuKCR0aGVtZS1wYW5lbC1iZy1jb2xvciwgNSUpO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuXG4gICAgICAgICAgICA+IHNwYW4geyAgXG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMTQ1cHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgPiBzZWxlY3QuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICB3aWR0aDogMTM1cHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDJweDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGxvd2VyY2FzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi50aGVtZS1jb2xvcnMge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG5cbiAgICAgICAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICA+IHVsIHtcbiAgICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgICAgICAgICAgICAgICAgID4gbGkge1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6NDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDo0MHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOjAgNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOnBvaW50ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOm5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjpzb2xpZCAxcHggIzcwNzA3MDsgXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQgeyBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOnNvbGlkIDJweCAjZDY0NjM1O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAvKiB0aGVtZSBjb2xvcnMgKi9cbiAgICAgICAgICAgICAgICAgICAgICAgICYuY29sb3ItZGVmYXVsdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzMzMzQzODtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5jb2xvci1kYXJrYmx1ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzJiMzY0MztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5jb2xvci1ibHVlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMkQ1RjhCOyAgICAgICBcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5jb2xvci1ncmV5IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjNjk3MzgwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmNvbG9yLWxpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjRjlGQUZEO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmLmNvbG9yLWxpZ2h0MiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0YxRjFGMTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qIGNvbnRlbnQgc29saWQgYmcgY29sb3IgKi9cblxuICAgIC5wYWdlLWNvbnRlbnQtd2hpdGUgJixcbiAgICAucGFnZS1jb250YWluZXItYmctc29saWQgJiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWFyZ2luLXRvcDogMzBweDsgXG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgcmlnaHQ6IDA7XG5cbiAgICAgICAgPiAudG9nZ2xlcjEge1xuICAgICAgICAgICAgYmFja2dyb3VuZDojQkZDQUQxIHVybCgjeyRsYXlvdXQtaW1nLXBhdGh9aWNvbi1jb2xvci5wbmcpIGNlbnRlciBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAucGFnZS1jb250ZW50LXdoaXRlLnBhZ2Utc2lkZWJhci1yZXZlcnNlZCAmLFxuICAgIC5wYWdlLWNvbnRhaW5lci1iZy1zb2xpZC5wYWdlLXNpZGViYXItcmV2ZXJzZWQgJiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweCArICRzaWRlYmFyLXdpZHRoOyAgXG4gICAgfVxuXG4gICAgLnBhZ2UtY29udGVudC13aGl0ZS5wYWdlLXNpZGViYXItcmV2ZXJzZWQucGFnZS1zaWRlYmFyLWNsb3NlZCAmLFxuICAgIC5wYWdlLWNvbnRhaW5lci1iZy1zb2xpZC5wYWdlLXNpZGViYXItcmV2ZXJzZWQucGFnZS1zaWRlYmFyLWNsb3NlZCAmIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4ICsgJHNpZGViYXItY29sbGFwc2VkLXdpZHRoO1xuICAgIH0gXG59IiwiLyoqKioqKioqKioqKioqKioqKlxuUGFnZSBRdWljayBTaWRlYmFyXG4qKioqKioqKioqKioqKioqKiovXG5cbi8qIFF1aWNrIHNpZGViYXIgdG9nZ2xlciAqL1xuXG4ucGFnZS1oZWFkZXIge1xuXHQudG9wLW1lbnUge1xuXHRcdC5kcm9wZG93bi1xdWljay1zaWRlYmFyLXRvZ2dsZXIge1xuXHRcdFx0PiAuZHJvcGRvd24tdG9nZ2xlIHtcblx0XHRcdFx0cGFkZGluZzogJGhlYWRlci10b3AtbWVudS1nZW5lcmFsLWl0ZW0tcGFkZGluZyAhaW1wb3J0YW50OyBcblx0XHRcdFx0aSB7XG5cdFx0XHRcdFx0dG9wOiAwcHg7ICBcblx0XHRcdFx0XHRcblx0XHRcdFx0XHQmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBcIlxcZTA2NVwiI3snLypydGw6XCJcXGUwNjZcIiovJ307ICBcdFx0XHRcdFxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdC5wYWdlLXF1aWNrLXNpZGViYXItb3BlbiAmOmJlZm9yZSB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBcIlxcZTA2NlwiI3snLypydGw6XCJcXGUwNjVcIiovJ307XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IFxuIiwiLy8gUXVpY2sgU2lkZWJhclxuJHF1aWNrLXNpZGViYXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzIwcHggIWRlZmF1bHQ7ICAvLyBxdWljayBzaWRlYmFyIHdpZHRoLiBkZWZhdWx0OiAyNDVweDsgIFxuJHF1aWNrLXNpZGViYXItdGFiLWl0ZW0tcGFkZGluZzpcdFx0XHRcdFx0XHRcdFx0XHRcdDE1cHggMTVweDsgICAgICAgLy8gcXVpY2sgc2lkZWJhciBpdGVtIHBhZGRpbmcuIGRlZmF1bHQ6IDE1cHggMTVweDtcblxuJHF1aWNrLXNpZGViYXItYmctY29sb3I6XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0IzIxMjgyZTsgXG4kcXVpY2stc2lkZWJhci1mb250LWNvbG9yOlx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdGxpZ2h0ZW4oJHF1aWNrLXNpZGViYXItYmctY29sb3IsIDQwJSk7XG5cbi8qIFBhZ2UgUG9ydGxldCBGdWxsc2NyZWVuICovXG5cbi5wYWdlLXBvcnRsZXQtZnVsbHNjcmVlbiB7XG5cdC5wYWdlLXF1aWNrLXNpZGViYXItd3JhcHBlcixcblx0LnBhZ2UtcXVpY2stc2lkZWJhci10b2dnbGVyIHtcblx0XHR6LWluZGV4OiAtMTtcblx0fVxufVxuXG4vKiBRdWljayBzaWRlYmFyIHRvZ2dsZXIgKi9cblxuLnBhZ2UtcXVpY2stc2lkZWJhci10b2dnbGVyIHtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0ei1pbmRleDogOTk5OTk7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdHdpZHRoOiAyOHB4O1xuXHRoZWlnaHQ6IDI3cHg7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAxMHB4OyBcblx0cmlnaHQ6IDE1cHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0cGFkZGluZy10b3A6IDZweDtcblxuXHQmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKGxpZ2h0ZW4oJHF1aWNrLXNpZGViYXItYmctY29sb3IsIDEwJSksIDMlKTsgICAgICAgICAgICBcbiAgICB9XG5cblx0LnBhZ2UtcXVpY2stc2lkZWJhci1vcGVuICYge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdCY6aG92ZXIge1xuICAgICAgICBcdGJhY2tncm91bmQ6IG5vbmU7ICAgICAgICAgICAgXG4gICAgXHR9XG5cdH1cblxuXHQ+IGkge1xuXHRcdGNvbG9yOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWZvbnQtY29sb3IsIDEwJSk7XG5cdFx0Zm9udC1zaXplOiAxN3B4O1xuXG5cdFx0Jjpob3ZlciB7XG5cdFx0XHRjb2xvcjogI2ZmZiAhaW1wb3J0YW50OyBcblx0XHR9XG5cblx0XHQucGFnZS1xdWljay1zaWRlYmFyLW9wZW4gJjpiZWZvcmUge1xuXHRcdFx0Y29udGVudDogXCJcXGUwNjZcIiN7Jy8qcnRsOlwiXFxlMDY1XCIqLyd9O1xuXHRcdH1cblx0fVxufVxuXG4vKiBRdWljayBzaWRlYmFyIHdyYXBwZXIgKi9cblxuLnBhZ2UtcXVpY2stc2lkZWJhci13cmFwcGVyIHtcblx0dHJhbnNpdGlvbjogcmlnaHQgMC4zcztcdFxuXHR6LWluZGV4OiAkemluZGV4LXF1aWNrLXNpZGViYXI7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0dG9wOiAwO1xuXHRib3R0b206IDA7XG5cdHdpZHRoOiAkcXVpY2stc2lkZWJhci13aWR0aDsgIFxuXHRyaWdodDogLSRxdWljay1zaWRlYmFyLXdpZHRoO1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHRjb2xvcjogbGlnaHRlbigkcXVpY2stc2lkZWJhci1mb250LWNvbG9yLCAxMCUpO1xuXHRiYWNrZ3JvdW5kOiAkcXVpY2stc2lkZWJhci1iZy1jb2xvcjtcblxuXHQucGFnZS1xdWljay1zaWRlYmFyLW9wZW4gJiB7XG5cdFx0dHJhbnNpdGlvbjogcmlnaHQgMC4zcztcdFxuXHRcdHJpZ2h0OiAwO1xuXHR9XG5cblx0LnBhZ2UtcXVpY2stc2lkZWJhciB7XG5cdFx0YmFja2dyb3VuZDogJHF1aWNrLXNpZGViYXItYmctY29sb3I7XG5cblx0XHQubmF2LXRhYnMge1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0cGFkZGluZzogMDtcblx0XHRcdGJvcmRlcjogMDtcblxuXHRcdFx0PiBsaSB7XG5cdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcblx0XHRcdFx0d2lkdGg6IDElICAhaW1wb3J0YW50O1xuXHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdGZsb2F0OiBub25lO1xuXG5cdFx0XHRcdD4gYSB7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdFx0XHRib3JkZXI6IDA7XG5cdFx0XHRcdFx0aGVpZ2h0OiBhdXRvO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0XHRwYWRkaW5nOiA0NXB4IDE1cHggOHB4O1xuXHRcdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogbm9uZTtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDA7ICBcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJHF1aWNrLXNpZGViYXItZm9udC1jb2xvciwgNyUpO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDNweCBzb2xpZCByZ2JhKDI0Myw4Niw5MywuMyk7IFxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIFxuXHRcdFx0XHRcdD4gLmJhZGdlIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHRvcDogNDVweDtcblx0XHRcdFx0XHRcdHJpZ2h0OiAzcHg7XG5cdFx0XHRcdFx0fSAgXG5cdFx0XHRcdH0gIFxuXG5cdCAgICAgICAgICAgICYuYWN0aXZlLFxuXHQgICAgICAgICAgICAmOmhvdmVyIHtcblx0ICAgICAgICAgICAgXHQ+IGEge1xuXHQgICAgICAgICAgICBcdFx0Ym9yZGVyOiAwO1xuXHQgICAgICAgICAgICBcdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmMzU2NWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRcdFx0Y29sb3I6ICNmZmY7XG5cdFx0XHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdCAgICAgICAgICAgIFx0fVxuXHQgICAgICAgICAgICB9XG5cblx0XHRcdFx0LmRyb3Bkb3duLW1lbnUge1x0ICBcblx0XHRcdFx0XHRib3JkZXI6IDA7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJHF1aWNrLXNpZGViYXItYmctY29sb3IsIDEwJSk7IFxuICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiA1cHggNXB4IHJnYmEobGlnaHRlbigkcXVpY2stc2lkZWJhci1iZy1jb2xvciwgMzAlKSwgMC4xKTtcblx0ICAgICAgICAgICAgICAgXHRtYXJnaW4tdG9wOiA4cHg7ICAgICAgICAgICAgICAgICAgIFxuXHQgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4OyAgXG5cblx0ICAgICAgICAgICAgICAgICY6YmVmb3JlIHtcblx0XHRcdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0XHRcdHRvcDogLTdweDtcblx0XHRcdFx0XHRcdHJpZ2h0OiAxOXB4O1xuXHRcdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrICFpbXBvcnRhbnQ7XG5cdFx0XHRcdFx0XHRib3JkZXItcmlnaHQ6IDdweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRcdGJvcmRlci1sZWZ0OiA3cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdFx0XHRib3JkZXItYm90dG9tOiA3cHggc29saWQgbGlnaHRlbigkcXVpY2stc2lkZWJhci1iZy1jb2xvciwgMTAlKTtcblx0XHRcdFx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0XHRcdH0gICBcblxuXHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRcdFx0dG9wOiAtNnB4O1xuXHRcdFx0XHRcdFx0cmlnaHQ6IDIwcHg7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdGJvcmRlci1yaWdodDogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdFx0XHRcdGJvcmRlci1ib3R0b206IDdweCBzb2xpZCBsaWdodGVuKCRxdWljay1zaWRlYmFyLWJnLWNvbG9yLCAxMCUpO1xuXHRcdFx0XHRcdFx0Y29udGVudDogJyc7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0PiBsaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgXHRwYWRkaW5nOiAxMHB4IDE1cHg7XG5cdCAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWZvbnQtY29sb3IsIDEwJSk7IFxuXG5cdCAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XG5cdCAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkcXVpY2stc2lkZWJhci1mb250LWNvbG9yLCA4JSk7IFxuXHQgICAgICAgICAgICAgICAgICAgICAgICB9XG5cdCAgICAgICAgICAgICAgICAgICAgfVxuXG5cdCAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cdCAgICAgICAgICAgICAgICAgICAgXHQ+IGEge1xuXHQgICAgICAgICAgICAgICAgICAgIFx0XHRiYWNrZ3JvdW5kOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWJnLWNvbG9yLCAxMyUpOyBcblx0ICAgICAgICAgICAgICAgICAgICAgICAgXHRjb2xvcjogbGlnaHRlbigkcXVpY2stc2lkZWJhci1mb250LWNvbG9yLCAxMCUpOyBcblxuXHQgICAgICAgICAgICAgICAgICAgICAgICBcdD4gaSB7XG5cdCAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdGNvbG9yOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWZvbnQtY29sb3IsIDExJSk7IFxuXHQgICAgICAgICAgICAgICAgICAgICAgICBcdH1cblx0ICAgICAgICAgICAgICAgICAgICBcdH1cblx0ICAgICAgICAgICAgICAgICAgICB9XG5cdCAgICAgICAgICAgICAgICAgICAgICAgIFxuXHQgICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcblx0ICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcblx0ICAgICAgICAgICAgICAgICAgICAgICAgXHRiYWNrZ3JvdW5kOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWJnLWNvbG9yLCAxMSUpOyBcblx0ICAgICAgICAgICAgICAgICAgICAgICAgXHRjb2xvcjogbGlnaHRlbigkcXVpY2stc2lkZWJhci1mb250LWNvbG9yLCAxMCUpOyBcblx0ICAgICAgICAgICAgICAgICAgICBcdH1cblx0ICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICA+IGxpLmRpdmlkZXIge1xuICAgICAgICAgICAgICAgICAgICBcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJHF1aWNrLXNpZGViYXItYmctY29sb3IsIDEzJSk7IFxuICAgICAgICAgICAgICAgICAgICB9XG5cdCAgICAgICAgICAgIH1cblxuXHQgICAgICAgICAgICAmLm9wZW4ge1xuXHQgICAgICAgICAgICBcdD4gYS5kcm9wZG93bi10b2dnbGUge1xuXHQgICAgICAgICAgICBcdFx0Ym9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICNmMzU2NWQ7XG5cdCAgICAgICAgICAgIFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHQgICAgICAgICAgICBcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHQgICAgICAgICAgICBcdFx0Y29sb3I6IGxpZ2h0ZW4oJHF1aWNrLXNpZGViYXItZm9udC1jb2xvciwgNyUpO1xuXHQgICAgICAgICAgICBcdH1cblx0ICAgICAgICAgICAgfVx0ICAgICAgICAgICAgIFxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8qIFF1aWNrIHNpZGViYXIgdGFicyBjb250ZW50ICovXG5cdFx0LnRhYi1jb250ZW50IHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXG5cdFx0LyogUXVpY2sgc2lkZWJhciBnZW5lcmFsIGxpc3QgaGVhZGluZyAqL1xuXHRcdC5saXN0LWhlYWRpbmcge1xuXHRcdFx0Zm9udC1zaXplOiAxNnB4O1xuXHRcdFx0bWFyZ2luOiAxMHB4IDEwcHg7XG5cdFx0XHRjb2xvcjogZGFya2VuKCRxdWljay1zaWRlYmFyLWZvbnQtY29sb3IsIDUlKTsgXG5cdFx0fVxuXG5cdFx0LyogUXVpY2sgc2lkZWJhciBnZW5lcmFsIGxpc3QtaXRlbXMgKi9cblx0XHQubGlzdC1pdGVtcyB7XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblxuXHRcdFx0PiBsaSB7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHQgICAgICAgIHBhZGRpbmc6IDE1cHg7XG5cdFx0ICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuXHRcdCAgICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4O1xuXHRcdCAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG5cdFx0ICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWJnLWNvbG9yLCAzJSk7IFxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7IFxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWJnLWNvbG9yLCAzJSk7IFxuICAgICAgICAgICAgICAgIH1cblxuXHQgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuXHRcdCAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG5cdFx0ICAgICAgICB9XG5cdCAgICBcdH1cblxuXHQgICAgXHQmLmJvcmRlcmxlc3Mge1xuXHQgICAgXHRcdGxpIHtcblx0ICAgIFx0XHRcdGJvcmRlcjogMDsgIFxuXHRcdCAgICAgICAgfVxuXHQgICAgXHR9XG5cdFx0fVxuXG5cdFx0LyogSW5uZXIgY29udGVudCAqL1xuXHRcdC5pbm5lci1jb250ZW50IHtcblx0XHRcdG1hcmdpbjogMTBweCAxMHB4O1xuXHRcdH1cblxuXHRcdC8qIFF1aWNrIHNpZGViYXIgbGlzdCAqL1xuXHRcdC5wYWdlLXF1aWNrLXNpZGViYXItbGlzdCB7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0XHRcdHdpZHRoOiAkcXVpY2stc2lkZWJhci13aWR0aCAhaW1wb3J0YW50OyBcblx0XHRcdHRyYW5zaXRpb246IG1hcmdpbiAwLjNzOyBcblx0XHR9XG5cblx0XHQvKiBRdWljayBzaWRlYmFyIGxpc3QgaXRlbSAqL1xuXHRcdC5wYWdlLXF1aWNrLXNpZGViYXItaXRlbSB7XG5cdFx0XHR3aWR0aDogJHF1aWNrLXNpZGViYXItd2lkdGg7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcblx0XHRcdHdpZHRoOiAkcXVpY2stc2lkZWJhci13aWR0aCAgIWltcG9ydGFudDsgXG5cdFx0XHR0cmFuc2l0aW9uOiBtYXJnaW4gMC4zczsgXG5cdFx0XHRtYXJnaW4tbGVmdDogJHF1aWNrLXNpZGViYXItd2lkdGg7IFxuXG5cdFx0XHQucGFnZS1xdWljay1zaWRlYmFyLW5hdiB7XG5cdFx0XHRcdHBhZGRpbmc6IDE1cHggMTBweCAwcHggMTBweDtcblxuXHRcdFx0XHQucGFnZS1xdWljay1zaWRlYmFyLWJhY2stdG8tbGlzdCB7XG5cdCAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyAgXG5cdCAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cdCAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkcXVpY2stc2lkZWJhci1mb250LWNvbG9yLCA3JSk7XG5cbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICB9XG5cblx0ICAgICAgICAgICAgICAgID4gaSB7XG5cdCAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuXHQgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxN3B4O1xuXHQgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdCAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG5cdCAgICAgICAgICAgICAgICB9XG5cdCAgICAgICAgICAgIH1cblx0XHRcdH0gICAgICAgICAgICBcblx0XHR9XHRcblxuXHRcdC8qIFF1aWNrIHNpZGViYXIgbGlzdCBpdGVtIHNob3duICovXG5cdFx0LnBhZ2UtcXVpY2stc2lkZWJhci1jb250ZW50LWl0ZW0tc2hvd24ge1xuXHRcdFx0LnBhZ2UtcXVpY2stc2lkZWJhci1saXN0IHtcblx0XHRcdFx0dHJhbnNpdGlvbjogbWFyZ2luIDAuM3M7IFxuXHRcdFx0XHRtYXJnaW4tbGVmdDogLSAkcXVpY2stc2lkZWJhci13aWR0aDsgXG5cblx0XHRcdFx0LnNsaW1TY3JvbGxCYXIsXG5cdFx0XHRcdC5zbGltU2Nyb2xsUmFpbCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyAgXG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnBhZ2UtcXVpY2stc2lkZWJhci1pdGVtIHtcblx0XHRcdFx0dHJhbnNpdGlvbjogbWFyZ2luIDAuM3M7XG5cdFx0XHRcdG1hcmdpbi1sZWZ0OiAwOyAgXG5cdFx0XHR9IFxuXHRcdH1cblxuXHRcdC8qIFF1aWNrIHNpZGViYXIgY2hhdCAqL1xuXHRcdC5wYWdlLXF1aWNrLXNpZGViYXItY2hhdCB7XG5cdFx0XHQucGFnZS1xdWljay1zaWRlYmFyLWNoYXQtdXNlcnMge1xuXHRcdFx0XHRwYWRkaW5nOiAxMHB4IDA7XG5cdFx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdFx0XHRcdFxuXHRcdFx0XHQubWVkaWEtbGlzdCB7XG5cdFx0XHRcdFx0Lm1lZGlhIHtcblx0XHRcdFx0XHRcdHBhZGRpbmc6ICRxdWljay1zaWRlYmFyLXRhYi1pdGVtLXBhZGRpbmc7XG5cblx0XHRcdFx0XHRcdC5tZWRpYS1vYmplY3Qge1x0XHRcdFx0XHRcdFx0XG5cdFx0XHRcdCAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJSAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogICRxdWljay1zaWRlYmFyLXdpZHRoLzc7XG5cdFx0XHRcdFx0XHRcdG9wYWNpdHk6IDAuODtcblx0ICAgICAgICAgICBcdFx0XHRcdGZpbHRlcjogYWxwaGEob3BhY2l0eT04MCk7XG5cdFx0XHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgY2xlYXJmaXgoKTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdFx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblxuXHRcdFx0XHRcdFx0XHQubWVkaWEtb2JqZWN0IHtcblx0XHRcdFx0XHRcdFx0XHRvcGFjaXR5OiAxO1xuXHRcdCAgICAgICAgICAgICAgICBcdFx0ZmlsdGVyOiBhbHBoYShvcGFjaXR5PTEwMCk7XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0Lm1lZGlhLWJvZHkge1xuXG5cdFx0XHRcdFx0XHRcdC5tZWRpYS1oZWFkaW5nIHtcblx0XHRcdFx0XHRcdFx0XHRtYXJnaW46IDVweCAwIDAgMDtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDE0cHg7XG5cdFx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHQubWVkaWEtaGVhZGluZy1zdWIge1xuXHRcdFx0XHRcdFx0XHRcdGZvbnQtc2l6ZTogMTFweDtcblx0XHRcdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRcdFx0XHRcdGNvbG9yOiBkYXJrZW4oJHF1aWNrLXNpZGViYXItZm9udC1jb2xvciwgOCUpOyBcblx0XHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdC5tZWRpYS1oZWFkaW5nLXNtYWxsIHtcblx0XHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDEwcHg7XHRcdFx0XG5cdFx0XHRcdFx0XHRcdFx0Y29sb3I6IGRhcmtlbigkcXVpY2stc2lkZWJhci1mb250LWNvbG9yLCAxMiUpOyAgIFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0XHQubWVkaWEtc3RhdHVzIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMTBweDsgXG5cdFx0XHRcdFx0XHRcdHJpZ2h0OiAxMHB4O1xuXHRcdFx0XHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LnBhZ2UtcXVpY2stc2lkZWJhci1jaGF0LXVzZXIge1xuXG5cdFx0XHRcdC5wYWdlLXF1aWNrLXNpZGViYXItY2hhdC11c2VyLW1lc3NhZ2VzIHsgXG5cdFx0XHRcdFx0cGFkZGluZzogMHB4IDEwcHg7XG5cdFx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdFx0LnBvc3Qge1xuXHRcdFx0XHRcdFx0dHJhbnNpdGlvbjogZGlzcGxheSAwLjNzO1xuXHRcdFx0XHQgICAgICAgIHBhZGRpbmc6IDVweCAwO1xuXHRcdFx0XHQgICAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuXHRcdFx0XHQgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcblxuXHRcdFx0XHQgICAgICAgIC5ib2R5IHtcblx0XHRcdFx0ICAgICAgICBcdGNvbG9yOiAjYzNjM2MzO1xuXHRcdFx0XHQgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0ICAgICAgICB9XG4gICAgICAgIFxuXHRcdFx0XHQgICAgICAgIC5hdmF0YXIge1xuXHRcdFx0XHQgICAgICAgICAgICB3aWR0aDokcXVpY2stc2lkZWJhci13aWR0aC83O1xuXHRcdFx0XHQgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCUgIWltcG9ydGFudDtcblx0XHRcdFx0ICAgICAgICB9XG5cblx0XHRcdFx0ICAgICAgICAmLmluIC5hdmF0YXIge1xuXHRcdFx0XHQgICAgICAgICAgICBmbG9hdDogbGVmdDtcblx0XHRcdFx0ICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdFx0XHQgICAgICAgIH1cblxuXHRcdFx0XHQgICAgICAgICYub3V0IC5hdmF0YXIge1xuXHRcdFx0XHQgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdCAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdFx0XHQgICAgICAgIH1cblxuXHRcdFx0XHQgICAgICAgIC5uYW1lIHtcblx0XHRcdFx0ICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXHRcdFx0XHQgICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuXHRcdFx0XHQgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkcXVpY2stc2lkZWJhci1mb250LWNvbG9yLCAzJSk7IFxuXHRcdFx0XHQgICAgICAgIH1cblx0XHRcdFx0ICAgICAgICBcblx0XHRcdFx0ICAgICAgICAuZGF0ZXRpbWUge1xuXHRcdFx0XHQgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG5cdFx0XHRcdCAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG5cdFx0XHRcdCAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWZvbnQtY29sb3IsIDMlKTsgXG5cdFx0XHRcdCAgICAgICAgfVxuXHRcdFx0XHQgICAgICAgXG5cdFx0XHRcdCAgICAgICAgLm1lc3NhZ2Uge1x0XHRcdFxuXHRcdFx0XHQgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0ICAgICAgICAgICAgcGFkZGluZzogNXB4O1xuXHRcdFx0XHQgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdCAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWZvbnQtY29sb3IsIDclKTsgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkcXVpY2stc2lkZWJhci1iZy1jb2xvciwgMTAlKTsgXG5cdFx0XHRcdCAgICAgICAgfVxuXG5cdFx0XHRcdCAgICAgICAgJi5pbiB7XG5cdFx0XHRcdCAgICAgICAgXHQubWVzc2FnZSB7XG5cdFx0XHRcdCAgICAgICAgICAgIFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRcdFx0ICAgICAgICAgICAgXHRtYXJnaW4tbGVmdDogNTVweDtcblx0XHRcdFx0ICAgICAgXG5cdFx0XHRcdCAgICAgICAgICAgIFx0LmFycm93IHtcblx0XHRcdFx0ICAgICAgICAgICAgICAgIFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdCAgICAgICAgICAgICAgICBcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0ICAgICAgICAgICAgICAgIFx0dG9wOiA5cHg7XG5cdFx0XHRcdCAgICAgICAgICAgICAgICBcdGxlZnQ6IC02cHg7XG5cdFx0XHRcdCAgICAgICAgICAgICAgICBcdHdpZHRoOiAwO1xuXHRcdFx0XHQgICAgICAgICAgICAgICAgXHRoZWlnaHQ6IDA7XG5cdFx0XHRcdCAgICAgICAgICAgICAgICBcdGJvcmRlci10b3A6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdFx0ICAgICAgICAgICAgICAgIFx0Ym9yZGVyLWJvdHRvbTogNnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuXHRcdFx0XHQgICAgICAgICAgICAgICAgXHRib3JkZXItcmlnaHQtd2lkdGg6IDZweDtcblx0XHRcdFx0ICAgICAgICAgICAgICAgIFx0Ym9yZGVyLXJpZ2h0LXN0eWxlOiBzb2xpZDtcblx0XHRcdFx0ICAgICAgICAgICAgICAgIFx0Ym9yZGVyLXJpZ2h0LWNvbG9yOiBsaWdodGVuKCRxdWljay1zaWRlYmFyLWJnLWNvbG9yLCAxMCUpOyBcblx0XHRcdFx0ICAgICAgICAgICAgICAgIH1cblx0XHRcdFx0ICAgICAgICAgICAgfVxuXHRcdFx0XHQgICAgICAgIH1cblxuXHRcdFx0XHQgICAgICAgICYub3V0IHtcblx0XHRcdFx0ICAgICAgICAgICAgLm1lc3NhZ2Uge1xuXHRcdFx0XHQgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1NXB4O1xuXHRcdFx0XHQgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cblx0XHRcdFx0ICAgICAgICAgICAgICAgIC5hcnJvdyB7XG5cdFx0XHRcdCAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdCAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHQgICAgICAgICAgICAgICAgICAgIHRvcDogOXB4O1xuXHRcdFx0XHQgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNnB4O1xuXHRcdFx0XHQgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDZweCBzb2xpZCB0cmFuc3BhcmVudDtcblx0XHRcdFx0ICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiA2cHggc29saWQgdHJhbnNwYXJlbnQ7XG5cdFx0XHRcdCAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDZweDtcblx0XHRcdFx0ICAgICAgICAgICAgICAgIFx0Ym9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuXHRcdFx0XHQgICAgICAgICAgICAgICAgXHRib3JkZXItbGVmdC1jb2xvcjogbGlnaHRlbigkcXVpY2stc2lkZWJhci1iZy1jb2xvciwgMTAlKTtcblx0XHRcdFx0ICAgICAgICAgICAgICAgIH0gIFxuXHRcdFx0XHQgICAgICAgICAgICB9XG5cdFx0XHRcdCAgXG5cdFx0XHRcdCAgICAgICAgICAgIC5uYW1lLCBcblx0XHRcdFx0ICAgICAgICAgICAgLmRhdGV0aW1lIHtcblx0XHRcdFx0ICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXHRcdFx0XHQgICAgICAgICAgICB9XG5cdFx0XHRcdCAgICAgICAgfVxuXHRcdFx0XHQgICAgfVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LnBhZ2UtcXVpY2stc2lkZWJhci1jaGF0LXVzZXItZm9ybSB7XG5cdFx0XHRcdFx0cGFkZGluZzogMjBweCAxMHB4IDE1cHggMTBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC8qIFF1aWNrIHNpZGViYXIgYWxlcnRzICovXG5cdFx0LnBhZ2UtcXVpY2stc2lkZWJhci1hbGVydHMge1xuXHRcdFx0XG5cdFx0XHQucGFnZS1xdWljay1zaWRlYmFyLWFsZXJ0cy1saXN0IHtcblx0XHRcdFx0cGFkZGluZzogMTBweCAwO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0ICAgICAgICAgICAgLmZlZWRzIHtcblx0ICAgICAgICAgICAgICAgIGxpIHtcdCAgICAgICAgIFxuXHQgICAgICAgICAgICAgICAgXHRhIHtcblx0ICAgICAgICAgICAgICAgIFx0XHRjb2xvcjogbGlnaHRlbigkcXVpY2stc2lkZWJhci1mb250LWNvbG9yLCAxJSk7XG5cblx0ICAgICAgICAgICAgICAgIFx0XHQubGFiZWwge1xuXHRcdCAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcblx0XHQgICAgICAgICAgICAgICAgICAgIH1cblxuXHRcdCAgICAgICAgICAgICAgICAgICAgLmRlc2Mge1xuXHRcdCAgICAgICAgICAgICAgICAgICAgXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblx0XHQgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuXHRcdCAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJHF1aWNrLXNpZGViYXItZm9udC1jb2xvciwgMSUpO1xuXHRcdCAgICAgICAgICAgICAgICAgICAgfVxuXG5cdFx0ICAgICAgICAgICAgICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRjb2xvcjogZGFya2VuKCRxdWljay1zaWRlYmFyLWZvbnQtY29sb3IsIDEyJSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBcdH1cblx0ICAgICAgICAgICAgICAgIFx0fSAgICAgICBcdFx0ICAgICAgICAgICAgICAgICAgICBcblx0ICAgICAgICAgICAgICAgIH1cblx0ICAgICAgICAgICAgfVxuXHQgICAgICAgIH1cblx0XHR9XG5cblx0XHQvKiBRdWljayBzaWRlYmFyIHNldHRpbmdzICovXG5cdFx0LnBhZ2UtcXVpY2stc2lkZWJhci1zZXR0aW5ncyB7XG5cblx0XHRcdC5wYWdlLXF1aWNrLXNpZGViYXItc2V0dGluZ3MtbGlzdCB7XG5cdFx0XHRcdHBhZGRpbmc6IDEwcHggMDtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdFx0XHRcdC5saXN0LWl0ZW1zIHtcblx0XHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0XHQuYm9vdHN0cmFwLXN3aXRjaCB7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbi10b3A6IC0zcHg7XG5cdFx0XHRcdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0XHRcdFx0Ym9yZGVyOiAwO1xuXHRcdFx0XHRcdFx0XHRtaW4td2lkdGg6IDU5cHg7XG5cdFx0XHRcdFx0XHR9XHRcblxuXHRcdFx0XHRcdFx0LmZvcm0tY29udHJvbCB7XG5cdFx0XHRcdFx0XHRcdHdpZHRoOiA3NXB4ICFpbXBvcnRhbnQ7XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogNHB4IDRweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdFx0XHRcdGJvcmRlcjogMDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogLTRweDtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0c2VsZWN0LmZvcm0tY29udHJvbCB7ICAgXHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0cGFkZGluZzogNHB4IDBweCAhaW1wb3J0YW50O1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVx0XHRcdFx0XG5cdFx0fVxuXHR9XG59IiwiQG1peGluIGtleWZyYW1lcygkYW5pbWF0aW9uTmFtZSkge1xuICAgIEAtd2Via2l0LWtleWZyYW1lcyAjeyRhbmltYXRpb25OYW1lfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgICBALW1vei1rZXlmcmFtZXMgI3skYW5pbWF0aW9uTmFtZX0ge1xuICAgICAgICBAY29udGVudDtcbiAgICB9XG4gICAgQC1vLWtleWZyYW1lcyAjeyRhbmltYXRpb25OYW1lfSB7XG4gICAgICAgIEBjb250ZW50O1xuICAgIH1cbiAgICBAa2V5ZnJhbWVzICN7JGFuaW1hdGlvbk5hbWV9IHtcbiAgICAgICAgQGNvbnRlbnQ7XG4gICAgfVxufVxuXG4ucXVpY2stbmF2IHtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR6LWluZGV4OiAkemluZGV4LXRvcCArIDM7XG5cdHRvcDogNTAlO1xuXHRyaWdodDogMTBweDtcblx0bWFyZ2luLXRvcDogLTIzMHB4O1xuXHRwb2ludGVyLWV2ZW50czogbm9uZTtcblxuXHQucXVpY2stbmF2LWJnIHtcblx0XHQvKiB0aGlzIGlzIHRoZSBzdHJldGNoaW5nIG5hdmlnYXRpb24gYmFja2dyb3VuZCAqL1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR6LWluZGV4OiAkemluZGV4LXRvcCArIDI7XG5cdFx0dG9wOiAwO1xuXHRcdHJpZ2h0OiAwO1xuXHRcdHdpZHRoOiA2MHB4O1xuXHRcdGhlaWdodDogNjBweDtcblx0XHRib3JkZXItcmFkaXVzOiAzMHB4ICFpbXBvcnRhbnQ7XG5cdFx0YmFja2dyb3VuZDogIzM2QzZEMztcblx0XHRib3gtc2hhZG93OiAwIDFweCA0cHggcmdiYSgjMDAwLCAuMik7XG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbignaGVpZ2h0IC4ycywgYm94LXNoYWRvdyAuMnMnKTtcblx0fVxuXG5cdCYubmF2LWlzLXZpc2libGUge1xuXHRcdHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuXHR9XG5cblx0Ji5uYXYtaXMtdmlzaWJsZSAucXVpY2stbmF2LWJnIHtcblx0XHRoZWlnaHQ6IDEwMCU7XG5cdFx0Ym94LXNoYWRvdzogMCA2cHggMzBweCByZ2JhKCMwMDAsIC4yKTtcblx0fVxufVxuXG4ucXVpY2stbmF2LXRyaWdnZXIge1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdHotaW5kZXg6ICR6aW5kZXgtdG9wICsgMztcblx0dG9wOiAwO1xuXHRyaWdodDogMDtcblx0aGVpZ2h0OiA2MHB4O1xuXHR3aWR0aDogNjBweDtcblx0Ym9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdHdoaXRlLXNwYWNlOiBub3dyYXA7XG5cdGNvbG9yOiB0cmFuc3BhcmVudDtcblx0cG9pbnRlci1ldmVudHM6IGF1dG87XG5cblx0c3BhbiwgXG5cdHNwYW46OmFmdGVyLCBcblx0c3Bhbjo6YmVmb3JlIHtcblx0XHQvKiB0aGlzIGlzIHRoZSBoYW1idXJnZXIgaWNvbiAqL1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR3aWR0aDogMTZweDtcblx0XHRoZWlnaHQ6IDJweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuXHR9XG5cdFxuXHRzcGFuIHtcblx0XHQvKiBtaWRkbGUgbGluZSBvZiB0aGUgaGFtYnVyZ2VyIGljb24gKi9cblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IgLjJzKTtcblxuXHRcdGxlZnQ6IDUwJTtcblx0ICAgIHRvcDogNTAlO1xuXHQgICAgYm90dG9tOiBhdXRvO1xuXHQgICAgcmlnaHQ6IGF1dG87XG5cdCAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtNTAlKSB0cmFuc2xhdGVZKC01MCUpKTtcblx0fVxuXG5cdHNwYW46OmFmdGVyLCBcblx0c3Bhbjo6YmVmb3JlIHtcblx0XHQvKiB0b3AgYW5kIGJvdHRvbSBsaW5lcyBvZiB0aGUgaGFtYnVyZ2VyIGljb24gKi9cblx0XHRjb250ZW50OiAnJztcblx0XHR0b3A6IDA7XG5cdFx0bGVmdDogMDtcblx0XHRAaW5jbHVkZSBiYWNrZmFjZS12aXNpYmlsaXR5KGhpZGRlbik7XG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjJzKTtcblx0fVxuXG5cdHNwYW46OmJlZm9yZSB7XG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTZweCkpO1xuXHR9XG5cblx0c3Bhbjo6YWZ0ZXIge1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDZweCkpO1xuXHR9XG5cblx0Lm5vLXRvdWNoICY6aG92ZXIgfiAucXVpY2stbmF2LWJnIHtcblx0XHRib3gtc2hhZG93OiAwIDZweCAzMHB4IHJnYmEoIzAwMCwgLjIpO1xuXHR9XG5cblx0Lm5hdi1pcy12aXNpYmxlICYge1xuXG5cdFx0c3BhbiB7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblx0XHR9XG5cblx0XHRzcGFuOjpiZWZvcmUge1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtNDVkZWcpKTtcblx0XHR9XG5cblx0XHRzcGFuOjphZnRlciB7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDQ1ZGVnKSk7XG5cdFx0fVxuXHR9XG59XG5cbi5xdWljay1uYXYgdWwge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHotaW5kZXg6ICR6aW5kZXgtdG9wICsgMztcblx0cGFkZGluZzogNjBweCAwIDA7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0QGluY2x1ZGUgdHJhbnNpdGlvbih2aXNpYmlsaXR5IC4zcyk7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xuXHRsaXN0LXN0eWxlOiBub25lO1xuXG5cdD4gbGkge1xuXHRcdGEge1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRoZWlnaHQ6IDUwcHg7XG5cdFx0XHRsaW5lLWhlaWdodDogNTBweDtcblx0XHRcdHBhZGRpbmc6IDAgY2FsYygxZW0gKyA2MHB4KSAwIDFlbTtcblx0XHRcdGZvbnQtc2l6ZTogMS40cmVtO1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihjb2xvciAuMnMpO1xuXG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG5cdFx0XHRcdD4gc3BhbiB7XG5cdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdD4gaSB7XG5cdFx0XHRcdC8qIG5hdmlnYXRpb24gaXRlbSBpY29ucyAqL1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0XHRcdHdpZHRoOiAxNnB4O1xuXHRcdFx0XHRmb250LXNpemU6IDE4cHg7XG5cdFx0XHRcdHJpZ2h0OiAyNHB4O1xuXHRcdFx0XHR0b3A6IDE2cHg7XG5cdFx0XHRcdGNvbG9yOiBkYXJrZW4oI2ZmZiwgOCUpO1xuXHRcdFx0fVxuXG5cdFx0XHQmOjpiZWZvcmUge1xuXHRcdFx0XHQvKiBsaW5lIHZpc2libGUgbmV4dCB0byB0aGUgYWN0aXZlIG5hdmlnYXRpb24gaXRlbSAqL1xuXHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR3aWR0aDogM3B4O1xuXHRcdFx0XHRoZWlnaHQ6IDE2cHg7XG5cdFx0XHRcdHRvcDogNTAlO1xuXHRcdFx0XHRyaWdodDogNjBweDtcblx0XHRcdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoM3B4KSB0cmFuc2xhdGVZKC01MCUpIHNjYWxlWSgwKSk7XG5cdFx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRjNGM0Y7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0c3BhbiB7XG5cdFx0XHQvKiBuYXZpZ2F0aW9uIGl0ZW0gbGFiZWxzICovXG5cdFx0XHRjb2xvcjogZGFya2VuKCNmZmYsIDglKTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA0MDA7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHRAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtMjVweCkpO1xuXHRcdH1cblxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XHR9XG5cdH1cdFxufVxuXG4ucXVpY2stbmF2Lm5hdi1pcy12aXNpYmxlIHVsIHtcblx0dmlzaWJpbGl0eTogdmlzaWJsZTtcblxuXHRhOjphZnRlciB7XG5cdFx0LyogbmF2aWdhdGlvbiBpdGVtIGljb25zICovXG5cdFx0QGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkgc2NhbGUoMSkpO1xuXHRcdEBpbmNsdWRlIGFuaW1hdGlvbihzY2FsZUluIC4xNXMgYmFja3dhcmRzKTtcblx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKG9wYWNpdHkgLjJzKTtcblx0fVxuXG5cdGE6aG92ZXIge1xuXHRcdCY6OmFmdGVyIHtcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0fVxuXG5cdFx0Jjo6YmVmb3JlIHtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVYKDNweCkgdHJhbnNsYXRlWSgtNTAlKSBzY2FsZVkoMikpO1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjE1cyAuM3MpO1xuXHRcdH1cblxuXHRcdD4gc3BhbiB7XG5cdFx0XHRjb2xvcjogZGFya2VuKCNmZmYsIDApO1xuXHRcdH1cblxuXHRcdD4gaSB7XG5cdFx0XHRjb2xvcjogZGFya2VuKCNmZmYsIDIlKTtcblx0XHR9XG5cdH1cblxuXHRzcGFuIHtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVYKDApKTtcblx0XHRAaW5jbHVkZSBhbmltYXRpb24oc2xpZGVJbiAuMTVzIGJhY2t3YXJkcyk7XG5cdFx0QGluY2x1ZGUgdHJhbnNpdGlvbih0cmFuc2Zvcm0gLjJzKTtcblx0fVxuXG5cdC5uby10b3VjaCAmIGE6aG92ZXIge1xuXG5cdFx0Jjo6YWZ0ZXIge1xuXHRcdFx0b3BhY2l0eTogMTtcblx0XHR9XG5cblx0XHRzcGFuIHtcblx0XHRcdEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVYKC01cHgpKTtcblx0XHR9XG5cdH1cbn1cblxuLnF1aWNrLW5hdi1vdmVybGF5IHtcblx0ZGlzcGxheTogbm9uZTtcblx0dG9wOiAwO1xuXHRib3R0b206IDA7XG5cdHJpZ2h0OiAwO1xuXHRsZWZ0OiAwO1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdHotaW5kZXg6ICR6aW5kZXgtdG9wICsgMTtcblx0YmFja2dyb3VuZDogcmdiYSgjMDAwLCAwKTtcbn1cblxuLnF1aWNrLW5hdi5uYXYtaXMtdmlzaWJsZSArIC5xdWljay1uYXYtb3ZlcmxheSB7XG5cdGJhY2tncm91bmQ6IHJnYmEoIzAwMCwgMC44KTtcblx0ZGlzcGxheTogYmxvY2s7XG5cdC13ZWJraXQtdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuN3MgZWFzZS1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC43cyBlYXNlLW91dDtcbiAgICAtby10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC43cyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC43cyBlYXNlLW91dDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7IC8qIDk5MXB4ICovXG5cblx0LnF1aWNrLW5hdiB7XG5cdFx0dG9wOiAxMjBweDtcblx0XHRtYXJnaW4tdG9wOiAwO1xuXHR9XG59Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QW9DMkVBLDZCQUE2QjtBRTNFN0IsTUFBTSxDQUFDLEtBQUs7RUFDWCxBQUFBLElBQUksQ0FBQztJQUNELGdCQUFnQixFQUFFLGVBQWU7SUFDakMsU0FBUyxFQUFFLEdBQUc7R0FDakI7RUFFRCxBQUFBLFNBQVMsQ0FBQztJQUNULE9BQU8sRUFBRSxJQUFJO0dBQ2I7RUFFRCxBQUFBLHFCQUFxQixDQUFDO0lBQ3JCLE9BQU8sRUFBRSxJQUFJO0dBQ2I7RUFFRCxBQUFBLDJCQUEyQixDQUFDO0lBQzNCLE9BQU8sRUFBRSxJQUFJO0dBQ2I7RUFFRCxBQUFBLFlBQVksQ0FBQztJQUNaLE9BQU8sRUFBRSxJQUFJO0dBQ2I7RUFFRCxBQUFBLGFBQWEsQ0FBQztJQUNiLE9BQU8sRUFBRSxJQUFJO0dBQ2I7RUFFRCxBQUFBLFlBQVksQ0FBQztJQUNaLE9BQU8sRUFBRSxJQUFJO0dBQ2I7RUFFRCxBQUFBLGNBQWMsQ0FBQztJQUNkLGdCQUFnQixFQUFFLEtBQUs7R0FDdkI7RUFFRCxBQUFBLGVBQWUsQ0FBQztJQUNmLE1BQU0sRUFBRSxjQUFjO0lBQ3RCLE9BQU8sRUFBRSxjQUFjO0dBQ3ZCO0VBRUQsQUFBQSxhQUFhLENBQUM7SUFDYixPQUFPLEVBQUUsWUFBWTtJQUNyQixVQUFVLEVBQUUsZ0JBQWdCO0lBQzVCLE9BQU8sRUFBRSx3QkFBd0I7SUFDakMsTUFBTSxFQUFF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 */