/* Cubic Bezier Transition */
/*********** 
    Page Header
    ***********/
.page-header.navbar {
  /* Top notification menu/bar */
  /* Header seaech box */ }
  .page-header.navbar .page-logo {
    background: #6cb24b; }
    .page-header.navbar .page-logo img {
      width: 100%; }
  .page-header.navbar .page-top {
    box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.2);
    background: #ffffff; }
  .page-header.navbar .top-menu .navbar-nav {
    /* Extended Dropdowns */
    /* Notification */
    /* Inbox */
    /* Tasks */
    /* User */
    /* Language */
    /* Dark version */ }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-toggle:hover {
      background-color: #f9fafc; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-toggle > i {
      color: #C0CDDC; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-toggle .badge.badge-default {
      background-color: #6cb24b;
      color: #ffffff; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown.open .dropdown-toggle {
      background-color: #f9fafc; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown .dropdown-menu:before {
      border-bottom-color: #e4e8ee; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu {
      border: 1px solid #e4e8ee; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu:before {
        border-bottom-color: #d4dae4; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu:after {
        border-bottom-color: #eaedf2; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu > li.external {
        background: #eaedf2; }
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu > li.external > h3 {
          color: #62878f; }
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu > li.external > a {
          color: #337ab7; }
          .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu > li.external > a:hover {
            color: #23527c;
            text-decoration: none; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu .dropdown-menu-list > li > a {
        border-bottom: 1px solid #EFF2F6 !important;
        color: #888888; }
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-extended .dropdown-menu .dropdown-menu-list > li > a:hover {
          background: #f8f9fa; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu .dropdown-menu-list > li > a .time {
      background: #f1f1f1; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-notification .dropdown-menu .dropdown-menu-list > li > a:hover .time {
      background: #e4e4e4; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox > .dropdown-toggle > .circle {
      background-color: #6cb24b;
      color: #ffffff; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox > .dropdown-toggle > .corner {
      border-color: transparent #6cb24b transparent transparent; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-inbox .dropdown-menu .dropdown-menu-list .subject .from {
      color: #5b9bd1; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-tasks .dropdown-menu .dropdown-menu-list .progress {
      background-color: #dfe2e9; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-user > .dropdown-toggle > .username {
      color: #7f96ac; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-user > .dropdown-toggle > i {
      color: #7f96ac; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-user > .dropdown-menu {
      width: 195px; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-language > .dropdown-toggle > .langname {
      color: #7f96ac; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu {
      background: #627587;
      border: 0; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu:after {
        border-bottom-color: #627587; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu > li.external {
        background: #51616f; }
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu > li.external > h3 {
          color: #dbe0e4; }
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu > li.external > a:hover {
          color: #5496cf; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu.dropdown-menu-default > li a,
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu .dropdown-menu-list > li a {
        color: #e9ecef;
        border-bottom: 1px solid #718497 !important; }
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu.dropdown-menu-default > li a > i,
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu .dropdown-menu-list > li a > i {
          color: #ccd3da; }
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu.dropdown-menu-default > li a:hover,
        .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu .dropdown-menu-list > li a:hover {
          background: #6b7f92; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu.dropdown-menu-default > li a {
        border-bottom: 0 !important; }
      .page-header.navbar .top-menu .navbar-nav > li.dropdown-dark .dropdown-menu.dropdown-menu-default > li.divider {
        background: #718497; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-notification.dropdown-dark .dropdown-menu .dropdown-menu-list > li > a .time {
      background: #586878; }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown-notification.dropdown-dark .dropdown-menu .dropdown-menu-list > li > a:hover .time {
      background: #4d5b69; }
  .page-header.navbar .search-form {
    background: #fff; }
    .page-header.navbar .search-form .input-group .form-control {
      color: #7f96ac; }
      .page-header.navbar .search-form .input-group .form-control::-moz-placeholder {
        color: #7c94aa;
        opacity: 1; }
      .page-header.navbar .search-form .input-group .form-control:-ms-input-placeholder {
        color: #7c94aa; }
      .page-header.navbar .search-form .input-group .form-control::-webkit-input-placeholder {
        color: #7c94aa; }
    .page-header.navbar .search-form .input-group .input-group-btn .btn.submit > i {
      color: #7f96ac; }
.page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover,
.page-sidebar {
  background-color: #4d5b69;
  /* Default sidebar */ }
  .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu,
  .page-sidebar .page-sidebar-menu {
    /* 1st level links */
    /* All links */ }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a,
    .page-sidebar .page-sidebar-menu > li > a {
      border-top: 1px solid #536372;
      color: #f2f4f6; }
      @media (max-width: 991px) {
        .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a,
        .page-sidebar .page-sidebar-menu > li > a {
          /* 991px */
          border-top: 1px solid #5e7081; } }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > i,
      .page-sidebar .page-sidebar-menu > li > a > i {
        color: white; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > i[class^="icon-"],
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > i[class*="icon-"],
      .page-sidebar .page-sidebar-menu > li > a > i[class^="icon-"],
      .page-sidebar .page-sidebar-menu > li > a > i[class*="icon-"] {
        color: white; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu > li > a > .arrow:before,
      .page-sidebar .page-sidebar-menu > li > a > .arrow.open:before {
        color: #677a8c; }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li:hover > a, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.open > a,
    .page-sidebar .page-sidebar-menu > li:hover > a,
    .page-sidebar .page-sidebar-menu > li.open > a {
      background: #465460;
      color: white; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li:hover > a > i, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.open > a > i,
      .page-sidebar .page-sidebar-menu > li:hover > a > i,
      .page-sidebar .page-sidebar-menu > li.open > a > i {
        color: white; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li:hover > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li:hover > a > .arrow.open:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.open > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.open > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu > li:hover > a > .arrow:before,
      .page-sidebar .page-sidebar-menu > li:hover > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu > li.open > a > .arrow:before,
      .page-sidebar .page-sidebar-menu > li.open > a > .arrow.open:before {
        color: white; }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active.open > a,
    .page-sidebar .page-sidebar-menu > li.active > a,
    .page-sidebar .page-sidebar-menu > li.active.open > a {
      background: #44515d;
      color: white; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a:hover, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active.open > a:hover,
      .page-sidebar .page-sidebar-menu > li.active > a:hover,
      .page-sidebar .page-sidebar-menu > li.active.open > a:hover {
        background: #495663; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a > i, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active.open > a > i,
      .page-sidebar .page-sidebar-menu > li.active > a > i,
      .page-sidebar .page-sidebar-menu > li.active.open > a > i {
        color: #72b651; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active > a > .arrow.open:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active.open > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li.active.open > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu > li.active > a > .arrow:before,
      .page-sidebar .page-sidebar-menu > li.active > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu > li.active.open > a > .arrow:before,
      .page-sidebar .page-sidebar-menu > li.active.open > a > .arrow.open:before {
        color: whitesmoke; }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu > li:last-child > a,
    .page-sidebar .page-sidebar-menu > li:last-child > a {
      border-bottom: 1px solid transparent !important; }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li > a > .arrow.open:before,
    .page-sidebar .page-sidebar-menu li > a > .arrow:before,
    .page-sidebar .page-sidebar-menu li > a > .arrow.open:before {
      color: #677a8c; }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li:hover > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li:hover > a > .arrow.open:before,
    .page-sidebar .page-sidebar-menu li:hover > a > .arrow:before,
    .page-sidebar .page-sidebar-menu li:hover > a > .arrow.open:before {
      color: white; }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li.active > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu li.active > a > .arrow.open:before,
    .page-sidebar .page-sidebar-menu li.active > a > .arrow:before,
    .page-sidebar .page-sidebar-menu li.active > a > .arrow.open:before {
      color: whitesmoke; }
    .page-sidebar-closed .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu:hover .sub-menu, .page-sidebar-closed
    .page-sidebar .page-sidebar-menu:hover .sub-menu {
      background: #404c57; }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li > a,
    .page-sidebar .page-sidebar-menu .sub-menu > li > a {
      color: #e4e7eb; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li > a > i,
      .page-sidebar .page-sidebar-menu .sub-menu > li > a > i {
        color: #8b9baa; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li > a > i[class^="icon-"],
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li > a > i[class*="icon-"],
      .page-sidebar .page-sidebar-menu .sub-menu > li > a > i[class^="icon-"],
      .page-sidebar .page-sidebar-menu .sub-menu > li > a > i[class*="icon-"] {
        color: #9aa8b5; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu .sub-menu > li > a > .arrow:before,
      .page-sidebar .page-sidebar-menu .sub-menu > li > a > .arrow.open:before {
        color: #677a8c; }
    .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li:hover > a, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li.open > a, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li.active > a,
    .page-sidebar .page-sidebar-menu .sub-menu > li:hover > a,
    .page-sidebar .page-sidebar-menu .sub-menu > li.open > a,
    .page-sidebar .page-sidebar-menu .sub-menu > li.active > a {
      background: #465460 !important; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li:hover > a > i, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li.open > a > i, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li.active > a > i,
      .page-sidebar .page-sidebar-menu .sub-menu > li:hover > a > i,
      .page-sidebar .page-sidebar-menu .sub-menu > li.open > a > i,
      .page-sidebar .page-sidebar-menu .sub-menu > li.active > a > i {
        color: white;
        color: #c6ced5; }
      .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li:hover > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li:hover > a > .arrow.open:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li.open > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li.open > a > .arrow.open:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li.active > a > .arrow:before, .page-sidebar-closed.page-sidebar-fixed .page-sidebar:hover .page-sidebar-menu .sub-menu > li.active > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu .sub-menu > li:hover > a > .arrow:before,
      .page-sidebar .page-sidebar-menu .sub-menu > li:hover > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu .sub-menu > li.open > a > .arrow:before,
      .page-sidebar .page-sidebar-menu .sub-menu > li.open > a > .arrow.open:before,
      .page-sidebar .page-sidebar-menu .sub-menu > li.active > a > .arrow:before,
      .page-sidebar .page-sidebar-menu .sub-menu > li.active > a > .arrow.open:before {
        color: white; }
.page-footer .page-footer-inner {
  color: #d5dbe0; }

.page-footer-fixed .page-footer {
  background-color: #adb5b0; }
  .page-footer-fixed .page-footer .page-footer-inner {
    color: #121618; }

.page-boxed .page-footer .page-footer-inner {
  color: #121618; }

.page-footer-fixed .page-boxed .page-footer {
  background-color: #adb5b0; }

@media (min-width: 992px) {
  /* 992px */
  .page-sidebar-menu.page-sidebar-menu-hover-submenu li:hover > .sub-menu {
    box-shadow: -5px 5px rgba(48, 48, 48, 0.2); }
  .page-sidebar-menu.page-sidebar-menu-closed > li:hover {
    box-shadow: -5px 5px rgba(48, 48, 48, 0.2); }
    .page-sidebar-menu.page-sidebar-menu-closed > li:hover > .sub-menu {
      box-shadow: -5px 5px rgba(48, 48, 48, 0.2); }
  .page-sidebar-fixed:not(.page-footer-fixed) .page-content {
    border-bottom: 0; }
  .page-sidebar-fixed:not(.page-footer-fixed) .page-footer {
    background-color: #eef1f5; }
    .page-sidebar-fixed:not(.page-footer-fixed) .page-footer .page-footer-inner {
      color: #333; }
  .page-boxed {
    background-color: #c0c6c2 !important;
    /* Page container */ }
    .page-boxed .page-container {
      background-color: #4d5b69; }
    .page-boxed.page-sidebar-reversed .page-container {
      border-right: 0; }
    .page-boxed.page-sidebar-fixed .page-container {
      border-right: 0;
      border-bottom: 0; }
    .page-boxed.page-sidebar-reversed.page-sidebar-fixed .page-container {
      border-right: 0;
      border-left: 0;
      border-bottom: 0; }
  .page-sidebar-menu-hover-submenu li:hover a > .arrow {
    border-left: 8px solid #404c57; }
    .page-sidebar-reversed .page-sidebar-menu-hover-submenu li:hover a > .arrow {
      border-right: 8px solid #404c57; }
  .page-sidebar-menu-hover-submenu li:hover > .sub-menu {
    background: #404c57 !important; } }

@media (max-width: 991px) {
  .page-container {
    background: #eef1f5; }
  .page-header.navbar {
    box-shadow: 0px 1px 10px 0px rgba(50, 50, 50, 0.2);
    padding: 0;
    /* Top menu */ }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown > .dropdown-toggle:hover {
      background-color: #f6f7fa; }
    .page-header.navbar .page-top {
      box-shadow: none; } }

@media (max-width: 767px) {
  .page-header.navbar {
    background: #6cb24b;
    /* Top menu */ }
    .page-header.navbar .top-menu .navbar-nav > li.dropdown > .dropdown-toggle:hover {
      background-color: #eff1f6; } }
.page-spinner-bar > div,
.block-spinner-bar > div {
  background: #7aba5c; }
body {
  background-color: #4d5b69; }

body.page-boxed {
  background-color: #c8cdca; }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JleS5jc3MiLCJzb3VyY2VzIjpbImdyZXkuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbC9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWwvX2NvbG9ycy5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL192YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi9ib290c3RyYXAvbWl4aW5zL19oaWRlLXRleHQuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX29wYWNpdHkuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCIuLi8uLi8uLi9ib290c3RyYXAvbWl4aW5zL19sYWJlbHMuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc2V0LWZpbHRlci5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCIuLi8uLi8uLi9ib290c3RyYXAvbWl4aW5zL19yZXNwb25zaXZlLXZpc2liaWxpdHkuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX3NpemUuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fcmVzZXQtdGV4dC5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fdGV4dC1lbXBoYXNpcy5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fdmVuZG9yLXByZWZpeGVzLnNjc3MiLCIuLi8uLi8uLi9ib290c3RyYXAvbWl4aW5zL19hbGVydHMuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX3BhbmVscy5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fcGFnaW5hdGlvbi5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fbmF2LWRpdmlkZXIuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX2Zvcm1zLnNjc3MiLCIuLi8uLi8uLi9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX3RhYmxlLXJvdy5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fYmFja2dyb3VuZC12YXJpYW50LnNjc3MiLCIuLi8uLi8uLi9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi8uLi9ib290c3RyYXAvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi8uLi9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX25hdi12ZXJ0aWNhbC1hbGlnbi5zY3NzIiwiLi4vLi4vLi4vYm9vdHN0cmFwL21peGlucy9fZ3JpZC1mcmFtZXdvcmsuc2NzcyIsIi4uLy4uLy4uL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsIi4uLy4uLy4uL2dsb2JhbC9fYm9vdHN0cmFwLW92ZXJyaWRlLnNjc3MiLCIuLi8uLi8uLi9nbG9iYWwvY29tcG9uZW50cy9fbWl4aW5zLnNjc3MiLCIuLi9fdmFyaWFibGVzLnNjc3MiLCJfYmFzZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8vIyMgRGVmYXVsdCB0aGVtZSBjb2xvciBmaWxlXHJcblxyXG5AaW1wb3J0ICcuLi8uLi8uLi9nbG9iYWwvX3ZhcmlhYmxlcyc7ICAvLyBnbG9iYWwgbWV0cm9uaWMgZnJhbWV3b3JrIHZhcmlhYmxlc1xyXG5AaW1wb3J0ICcuLi8uLi8uLi9nbG9iYWwvY29tcG9uZW50cy9fbWl4aW5zJzsgLy8gZ2xvYmFsIG1ldHJvbmljIGZyYW1ld29yayBtaXhpbmdzXHJcblxyXG5AaW1wb3J0ICcuLi9fdmFyaWFibGVzJzsgLy8gdGhlbWUgbGV2ZWwgdmFyaWFibGVzXHJcblxyXG4vLyBUaGVtZSBDb2xvcnMgU2V0dGlnbnNcclxuXHJcbi8vIE1haW4gc2V0dGluZ3MgIFxyXG4kdGhlbWUtbmFtZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdFwiZGVmYXVsdFwiOyAgIFxyXG4kYnJhbmQtbWFpbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHQjNmNiMjRiICFkZWZhdWx0OyAgICAgICAgIFxyXG4kYnJhbmQtbWFpbi1mb250LWNvbG9yOlx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0I2ZmZmZmZiAhZGVmYXVsdDtcclxuXHJcbi8vIEJvZHkgYW5kIGhlYWRlciAgICBcclxuJGJnLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRsaWdodGVuKCNDMEM2QzIsIDMlKSAhZGVmYXVsdDsgICAgIFxyXG4kaGVhZGVyLWxvZ28tYmctY29sb3I6XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQkYnJhbmQtbWFpbi1jb2xvciAhZGVmYXVsdDsgXHJcbiRoZWFkZXItdG9wLWJnLWNvbG9yOlx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0I2ZmZmZmZiAhZGVmYXVsdDtcclxuJGhlYWRlci10b3Atc2hhZG93OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMHB4IDFweCAxMHB4IDBweCByZ2JhKDUwLCA1MCwgNTAsIDAuMik7XHJcblxyXG4vLyBIZWFkZXIgc2VhcmNoXHJcbiRoZWFkZXItc2VhcmNoLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0ZGFya2VuKCRoZWFkZXItdG9wLWJnLWNvbG9yLCAzJSkgIWRlZmF1bHQ7XHJcbiRoZWFkZXItc2VhcmNoLWZvbnQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0ZGFya2VuKCM4ODlFQjIsIDMlKSAhZGVmYXVsdDsgXHJcbiRoZWFkZXItc2VhcmNoLXBsYWNlaG9sZGVyLWZvbnQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0ZGFya2VuKCRoZWFkZXItc2VhcmNoLWZvbnQtY29sb3IsIDElKSAhZGVmYXVsdDtcclxuXHJcbi8vIFRvcCBtZW51XHJcbiRoZWFkZXItdG9wLW1lbnUtYmctaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0bGlnaHRlbigjRjZGN0ZBLCAxJSkgIWRlZmF1bHQ7IFxyXG4kaGVhZGVyLXRvcC1tZW51LWJnLWhvdmVyLWNvbG9yLW9uLWRyb3Bkb3duLW9wZW46ICAgICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oI0Y2RjdGQSwgMSUpICFkZWZhdWx0O1xyXG4kaGVhZGVyLXRvcC1tZW51LWJhZGdlLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdCRicmFuZC1tYWluLWNvbG9yO1xyXG4kaGVhZGVyLXRvcC1tZW51LWJhZGdlLWZvbnQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdCNmZmZmZmY7XHJcbiRoZWFkZXItdG9wLW1lbnUtaWNvbi1mb250LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0I0MwQ0REQyAhZGVmYXVsdDtcclxuXHJcbi8vIFRvcCBtZW51IHVzZXIgYmFyXHJcbiRoZWFkZXItdG9wLW1lbnUtdXNlci1mb250LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigjODg5RUIyLCAzJSkgIWRlZmF1bHQ7IFxyXG4kaGVhZGVyLXRvcC1tZW51LXVzZXItYmctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdG5vbmUgIWRlZmF1bHQ7IFxyXG5cclxuLy9iZWdpbjogVG9wIE1lbnUgRXh0ZW5kZWQgRHJvcGRvd25zXHJcbiRoZWFkZXItdG9wLW1lbnUtZXh0ZW5kZWQtZHJvcGRvd24taXRlbS1iZy1jb2xvci1vbi1ob3ZlcjogICAgICAgICAgICAgICNmOGY5ZmE7ICAgICAgXHJcbiRoZWFkZXItdG9wLW1lbnUtZXh0ZW5kZWQtZHJvcGRvd24taXRlbS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICNFRkYyRjY7XHJcbiRoZWFkZXItdG9wLW1lbnUtZXh0ZW5kZWQtZHJvcGRvd24taXRlbS1mb250LWNvbG9yOlx0XHRcdFx0XHRcdCM4ODg4ODg7XHJcblxyXG4kaGVhZGVyLXRvcC1tZW51LWV4dGVuZGVkLWRyb3Bkb3duLWhlYWRlci1iZy1jb2xvcjpcdFx0XHRcdFx0XHRkYXJrZW4oI2Y3ZjhmYSwgNCUpO1xyXG4kaGVhZGVyLXRvcC1tZW51LWV4dGVuZGVkLWRyb3Bkb3duLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJGhlYWRlci10b3AtbWVudS1leHRlbmRlZC1kcm9wZG93bi1oZWFkZXItYmctY29sb3IsIDIlKTtcclxuJGhlYWRlci10b3AtbWVudS1leHRlbmRlZC1kcm9wZG93bi1oZWFkZXItZm9udC1jb2xvcjpcdFx0XHRcdFx0ZGFya2VuKCM2Zjk0OWMsIDUlKTsgXHJcblxyXG4kaGVhZGVyLXRvcC1tZW51LWluYm94LWRyb3Bkb3duLWZyb20tZm9udC1jb2xvcjpcdFx0XHRcdFx0XHQjNWI5YmQxOyAgXHJcblxyXG4kaGVhZGVyLXRvcC1tZW51LXRhc2stZHJvcGRvd24tcHJvZ3Jlc3MtYmctY29sb3I6XHRcdFx0XHRcdFx0I2RmZTJlOTtcclxuXHJcbiRoZWFkZXItdG9wLW1lbnUtbm90aWZpY2F0aW9uLXRpbWUtYmctY29sb3I6XHRcdFx0XHRcdFx0XHRsaWdodGVuKCNlZWUsIDElKTsgXHJcblxyXG4vLyBUb3AgTWVudSBOb3RpZmljYXRpb25zXHJcbiRoZWFkZXItaG9yLW1lbnUtYmctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigjNEY1RTZDLCAxJSkgIWRlZmF1bHQ7IFxyXG4kaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWRhcmstYmctY29sb3I6IFx0XHRcdFx0XHRcdFx0XHRsaWdodGVuKCRoZWFkZXItaG9yLW1lbnUtYmctY29sb3IsIDEwJSk7XHJcbiRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1oZWFkZXItYmctY29sb3I6XHRcdFx0XHRcdFx0XHRsaWdodGVuKCRoZWFkZXItaG9yLW1lbnUtYmctY29sb3IsIDIlKTtcclxuJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWhlYWRlci1mb250LWNvbG9yOlx0XHRcdFx0XHRcdGxpZ2h0ZW4oJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWhlYWRlci1iZy1jb2xvciwgNTAlKTtcclxuXHJcbiRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1pdGVtLWZvbnQtY29sb3I6XHRcdFx0XHRcdFx0XHRsaWdodGVuKCRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1oZWFkZXItYmctY29sb3IsIDU1JSk7ICBcclxuJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWl0ZW0tYm9yZGVyLWNvbG9yOlx0XHRcdFx0XHRcdGxpZ2h0ZW4oJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWJnLWNvbG9yLCA2JSk7XHJcbiRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1pdGVtLWljb24tY29sb3I6XHRcdFx0XHRcdFx0XHRsaWdodGVuKCRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1oZWFkZXItYmctY29sb3IsIDQ1JSk7XHJcbiRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1pdGVtLWJnLWNvbG9yLW9uLWhvdmVyOlx0XHRcdFx0XHRsaWdodGVuKCRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1iZy1jb2xvciwgNCUpO1xyXG5cclxuJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWRlZmF1bHQtbWVudS1kaXZpZGVyOlx0XHRcdFx0XHQkaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWRhcmstaXRlbS1ib3JkZXItY29sb3I7XHJcbiRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1ub3RpZmljYXRpb24tdGltZS1iZy1jb2xvcjpcdFx0XHRcdGRhcmtlbigkaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWRhcmstYmctY29sb3IsIDUlKTsgIFxyXG4vL2VuZDogVG9wIE1lbnUgRXh0ZW5kZWQgRHJvcGRvd25zICBcclxuXHJcbi8vIFRvcCBtZW51IGRyb3Bkb3duIFxyXG4kaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWhlYWQtYmctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaWdodGVuKCMzRDRBNTMsIDM1JSk7XHJcbiRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24taGVhZC1mb250LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oIzNENEE1MywgOTUlKTtcclxuJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigjM0Q0QTUzLCA2MCUpO1xyXG5cclxuLy8gU2lkZWJhciBtZW51XHJcbiRzaWRlYmFyLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhcmtlbigjNEY1RTZDLCAxJSkgIWRlZmF1bHQ7IFxyXG4kc2lkZWJhci1tZW51LWRldmlkZXItYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oJHNpZGViYXItYmctY29sb3IsIDglKSAhZGVmYXVsdDtcclxuXHJcbiRzaWRlYmFyLW1lbnUtbGluay1mb250LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0bGlnaHRlbigkc2lkZWJhci1iZy1jb2xvciwgNjAlKSAhZGVmYXVsdDtcclxuJHNpZGViYXItbWVudS1saW5rLWZvbnQtY29sb3Itb24taG92ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRsaWdodGVuKCRzaWRlYmFyLWJnLWNvbG9yLCA3MCUpICFkZWZhdWx0O1xyXG4kc2lkZWJhci1tZW51LWxpbmstZm9udC1jb2xvci1vbi1hY3RpdmU6ICAgICAgICAgICAgICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oJHNpZGViYXItYmctY29sb3IsIDgwJSkgIWRlZmF1bHQ7XHJcblxyXG4kc2lkZWJhci1tZW51LWxpbmstaWNvbi1mb250LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdHdoaXRlICFkZWZhdWx0O1xyXG4kc2lkZWJhci1tZW51LWxpbmstaWNvbi1mb250LWNvbG9yLW9uLWFjdGl2ZTogICAgICAgICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oJGJyYW5kLW1haW4tY29sb3IsIDIlKSAhZGVmYXVsdDtcclxuJHNpZGViYXItbWVudS1saW5rLWljb24tZm9udC1jb2xvci1vbi1ob3ZlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkc2lkZWJhci1tZW51LWxpbmstaWNvbi1mb250LWNvbG9yLCA1JSkgIWRlZmF1bHQ7XHJcblxyXG4kc2lkZWJhci1tZW51LWxpbmstYmctY29sb3Itb24taG92ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdCMzMDMwMzAgIWRlZmF1bHQ7XHJcbiRzaWRlYmFyLW1lbnUtbGluay1iZy1jb2xvci1vbi1hY3RpdmU6ICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0JGJyYW5kLW1haW4tY29sb3I7ICBcclxuXHJcbiRzaWRlYmFyLW1lbnUtYXJyb3ctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0bGlnaHRlbigkc2lkZWJhci1iZy1jb2xvciwgMTIlKSAhZGVmYXVsdDtcclxuJHNpZGViYXItbWVudS1hcnJvdy1jb2xvci1vbi1hY3RpdmU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRkYXJrZW4oJHNpZGViYXItbWVudS1saW5rLWZvbnQtY29sb3Itb24tYWN0aXZlLCA0JSkgIWRlZmF1bHQ7XHJcbiRzaWRlYmFyLW1lbnUtYXJyb3ctY29sb3Itb24taG92ZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRzaWRlYmFyLW1lbnUtbGluay1pY29uLWZvbnQtY29sb3Itb24taG92ZXIgIWRlZmF1bHQ7IFxyXG5cclxuJHNpZGViYXItbWVudS1zdWItbWVudS1ib3gtc2hhZG93LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHNpZGViYXItbWVudS1saW5rLWJnLWNvbG9yLW9uLWhvdmVyICFkZWZhdWx0O1xyXG4kc2lkZWJhci1tZW51LXN1Yi1tZW51LWxpbmstZm9udC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oJHNpZGViYXItYmctY29sb3IsIDU1JSkgIWRlZmF1bHQ7IFxyXG4kc2lkZWJhci1tZW51LXN1Yi1tZW51LWxpbmstaWNvbi1mb250LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgXHRcdGRhcmtlbigkc2lkZWJhci1tZW51LXN1Yi1tZW51LWxpbmstZm9udC1jb2xvciwgMzAlKSAhZGVmYXVsdDtcclxuJHNpZGViYXItbWVudS1zdWItbWVudS1saW5rLWJnLWNvbG9yLW9uLWhvdmVyOiAgICAgICAgICAgICAgICAgIFx0XHRkYXJrZW4oJHNpZGViYXItYmctY29sb3IsIDMlKSAhZGVmYXVsdDtcclxuJHNpZGViYXItbWVudS1zdWItbWVudS1saW5rLWljb24tZm9udC1jb2xvci1vbi1ob3ZlcjogICAgICAgICAgICAgICAgICAgJHNpZGViYXItbWVudS1saW5rLWljb24tZm9udC1jb2xvci1vbi1ob3ZlciAhZGVmYXVsdDtcclxuXHJcbiRzaWRlYmFyLW1lbnUtaG92ZXItc3ViLW1lbnUtYmctY29sb3I6XHRcdFx0XHRcdFx0XHRcdFx0ZGFya2VuKCRzaWRlYmFyLWJnLWNvbG9yLCA2JSkgIWRlZmF1bHQ7IFxyXG5cclxuLy8gU2lkZWJhciBmb3IgbW9iaWxlXHJcbiRtb2JpbGUtc2lkZWJhci1tZW51LWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRcdFx0ZGFya2VuKCRiZy1jb2xvciwgNyUpICFkZWZhdWx0OyAgIFxyXG4kbW9iaWxlLXNpZGViYXItbWVudS1saW5rLWJnLWNvbG9yLW9uLWhvdmVyOiAgICAgICAgICAgICBcdFx0XHRcdGRhcmtlbigkYmctY29sb3IsIDQlKSAhZGVmYXVsdDtcclxuXHJcbi8vIEZvb3RlclxyXG4kZm9vdGVyLWZsdWlkLWZvbnQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHNpZGViYXItbWVudS1saW5rLWZvbnQtY29sb3IsIDEwJSk7XHJcbiRmb290ZXItZGVmYXVsdC1mb250LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0ZGFya2VuKCMzRDRBNTMsIDIwJSkgIWRlZmF1bHQ7ICAgIFxyXG4kZm9vdGVyLWRlZmF1bHQtZ28tdG9wLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdGRhcmtlbigjOTRBMEIyLCAxMCUpICFkZWZhdWx0OyAgICAgICBcclxuJGZvb3Rlci1kZWZhdWx0LWdvLXRvcC1pY29uLWZvbnQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0bGlnaHRlbigjOTRBMEIyLCA0MCUpICFkZWZhdWx0O1xyXG4kZm9vdGVyLWZpeGVkLWJnLWNvbG9yOiBcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRkYXJrZW4oJGJnLWNvbG9yLCAxMCUpICFkZWZhdWx0O1xyXG5cclxuLy9Cb3hlZCBsYXlvdXRcclxuJGZvci1taW4tOTkycHgtcGFnZS1ib3hlZC1wYWdlLWNvbnRhaW5lci1iZy1jb2xvcjogICAgICAgICAgICAgIFx0XHQkc2lkZWJhci1tZW51LWRldmlkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0OyAgICAgIFxyXG4kZm9yLW1pbi05OTJweC1wYWdlLWJveGVkLWJnLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHRcdGRhcmtlbigkYmctY29sb3IsIDMlKSAhZGVmYXVsdDtcclxuJGZvci1taW4tOTkycHgtcGFnZS1ib3hlZC1zaWRlYmFyLWZpeGVkLWJvcmRlci1jb2xvcjogICAgICAgICAgIFx0XHQkc2lkZWJhci1tZW51LWRldmlkZXItYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xyXG5cclxuQGltcG9ydCAnX2Jhc2UnOyIsIi8vIyMgQm9vdHN0cmFwIFxyXG4vL1xyXG4vLyBDb3JlIGJvb3RzdHJhcCB2YXJpYWJsZXMgYW5kIG1peGluc1xyXG5AaW1wb3J0IFwiY29sb3JzXCI7XHJcblxyXG5AaW1wb3J0IFwiLi4vYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xyXG5AaW1wb3J0IFwiLi4vYm9vdHN0cmFwL21peGluc1wiO1xyXG5cclxuJGRpcmVjdGlvbjogXHRcdFx0XHRcdFx0J2x0cicgIWRlZmF1bHQ7XHJcbiR0aGVtZS1zdHlsZTogXHRcdFx0XHRcdFx0J3NxdWFyZScgIWRlZmF1bHQ7ICAgICAgICAgXHJcbiR0aGVtZS10eXBlOiAgXHRcdFx0XHRcdFx0J2RlZmF1bHQnICFkZWZhdWx0O1xyXG4gICAgXHJcbi8vIyMgIFR5cG9ncmFwaHlcclxuLy9cclxuLy8gRm9udCwgbGluZS1oZWlnaHQsIGFuZCBjb2xvciBmb3IgYm9keSB0ZXh0LCBoZWFkaW5ncywgYW5kIG1vcmUuXHJcblxyXG4kZm9udC1mYW1pbHktcHJpbWFyeTogIFx0ICBcdFx0IFx0XCJPcGVuIFNhbnMgSGVicmV3XCIsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XHJcbiRmb250LWZhbWlseS1uYXY6XHQgIFx0XHQgXHRcdFJvYm90bywgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuJGZvbnQtZmFtaWx5LWRlZmF1bHQ6ICBcdCAgXHRcdCBcdFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcclxuXHJcbiRnZW5lcmFsLWhlYWRpbmctY29sb3I6XHRcdFx0XHQjM2Y0NDRhO1xyXG4kZ2VuZXJhbC10ZXh0LWNvbG9yOiAgXHRcdFx0XHRkYXJrZW4oIzY3NzU4MSwgNSUpO1xyXG4kZ2VuZXJhbC10cmFuc2l0aW9uOlx0XHRcdFx0YWxsIDAuM3M7XHJcblxyXG4vLyBHbG9iYWwgdGV4dCBjb2xvciBvbiA8Ym9keT5cclxuJHRleHQtY29sb3I6ICAgICAgICAgICAgXHRcdFx0IzMzMzMzMyAhZGVmYXVsdDsgICAgICBcclxuICBcclxuLy8gR2xvYmFsIGxpZ2h0IHRleHQgY29sb3Igb24gPGJvZHk+XHJcbiR0ZXh0LWxpZ2h0LWNvbG9yOiAgICAgXHQgXHRcdFx0I2ZmZmZmZiAhZGVmYXVsdDsgIFxyXG5cclxuLy8gR2xvYmFsIG11dGVkIHRleHQgY29sb3Igb24gPGJvZHk+XHJcbiR0ZXh0LW11dGVkLWNvbG9yOiAgICAgIFx0XHRcdCM0NDQ0NDQgIWRlZmF1bHQ7XHJcbiAgIFxyXG4vLyBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxyXG4kbGluay1jb2xvcjogICAgICAgICAgICBcdFx0XHQjNWI5YmQxICFkZWZhdWx0O1xyXG5cclxuLy8gTGluayBob3ZlciBjb2xvci5cclxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgXHRcdFx0ZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xyXG5cclxuJHByaW1hcnktbGluay1jb2xvcjogICAgICAgICAgICAgICAgIzY1QTBEMCAhZGVmYXVsdDtcclxuXHJcbiRnZW5lcmFsLWJvcmRlci1yYWRpdXM6XHRcdFx0XHQ0cHggIWRlZmF1bHQ7XHJcblxyXG5AaWYgJHRoZW1lLXR5cGUgPT0gXCJtYXRlcmlhbC1kZXNpZ25cIiB7XHJcblx0JGdlbmVyYWwtYm9yZGVyLXJhZGl1czpcdFx0XHQycHggIWdsb2JhbDtcclxufSBcclxuXHJcbiRkcm9wZG93bi1zaGFkb3c6XHRcdFx0XHRcdDVweCA1cHggcmdiYSgjNjY2LCAwLjEpO1xyXG4kaWNvbi1zaXplLW5vcm1hbDpcdFx0XHRcdFx0MTRweCAhZGVmYXVsdDtcclxuJGJyYW5kLWRlZmF1bHQ6XHRcdFx0XHRcdFx0bGlnaHRlbigjYjdjMGNlLCAxJSkgIWRlZmF1bHQ7ICBcclxuJGdlbmVyYWwtcGFuZWwtYmctY29sb3I6XHRcdFx0I2YxZjRmNyAhZGVmYXVsdDtcclxuJGdlbmVyYWwtcGFuZWwtYm9yZGVyLWNvbG9yOlx0XHRkYXJrZW4oI2YxZjRmNywgMyUpICFkZWZhdWx0O1xyXG4kZ2VuZXJhbC1wYW5lbC1mb250LWNvbG9yOlx0XHRcdCMzZjQ0NGEgIWRlZmF1bHQ7XHJcbiRnZW5lcmFsLXNoYWRvdzpcdFx0XHRcdFx0MHB4IDJweCAzcHggMnB4IHJnYmEoMCwgMCwgMCwgMC4wMyk7ICBcclxuJGdlbmVyYWwtaWNvbi1jb2xvcjpcdFx0XHRcdGRhcmtlbigkZ2VuZXJhbC1wYW5lbC1iZy1jb2xvciwgMTUlKTtcclxuJHBhZ2UtY29udGVudC1zb2xpZC1iZy1jb2xvcjogICAgICAgZGFya2VuKCRnZW5lcmFsLXBhbmVsLWJnLWNvbG9yLCAxJSkgIWRlZmF1bHQ7IC8vIGNvbnRlbnQgc29saWQgYmcgY29sb3IuIGRlZmF1bHQ6I0YwRjJGNy5cclxuXHJcbi8vIyMgWi1pbmRleCBtYXN0ZXIgbGlzdFxyXG4vL1xyXG5cclxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgXHRcdFx0OTk5NTtcclxuJHppbmRleC1uYXZiYXItYWJvdmU6ICAgICAgXHRcdFx0OTk5OTtcclxuJHppbmRleC1kcm9wZG93bjogICAgICAgICAgXHRcdFx0MTAwMDtcclxuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgXHRcdFx0MTAxMDtcclxuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgXHRcdFx0MTAzMDtcclxuJHppbmRleC1uYXZiYXItZml4ZWQ6ICAgICAgXHRcdFx0MTAzMDtcclxuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgXHRcdFx0MTAwNDk7IFxyXG4kemluZGV4LW1vZGFsOiAgICAgICAgICAgICBcdFx0XHQxMDA1MDtcclxuJHppbmRleC10b3A6XHRcdFx0XHRcdFx0MTAxMDA7XHJcblxyXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcclxuLy9cclxuLy9EZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxyXG5cclxuLy8gRXh0cmEgc21hbGwgc2NyZWVuIC8gcGhvbmVcclxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICBcdFx0NDgwcHggIWRlZmF1bHQ7XHJcblxyXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXQgIFxyXG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgIFx0XHQ3NjhweCAhZGVmYXVsdDtcclxuXHJcbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXHJcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgXHRcdDk5MnB4ICFkZWZhdWx0O1xyXG5cclxuLy8gTGFyZ2Ugc2NyZWVuIC8gd2lkZSBkZXNrdG9wXHJcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICBcdCBcdDEyMDBweCAhZGVmYXVsdDtcclxuXHJcbi8vIExhcmdlIHNjcmVlIC8gd2lkZXIgZGVza3RvcCAgICAgIFxyXG4kc2NyZWVuLWxnLW1lZDogICAgICAgICAgICAgICAgICAgICAxMjYwcHggIWRlZmF1bHQ7XHJcblxyXG4vLyBTbyBtZWRpYSBxdWVyaWVzIGRvbid0IG92ZXJsYXAgd2hlbiByZXF1aXJlZCwgcHJvdmlkZSBhIG1heGltdW1cclxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICBcdFx0KCRzY3JlZW4tc20tbWluIC0gMSkgIWRlZmF1bHQ7ICAvLyA3NjdweFxyXG4kc2NyZWVuLXNtLW1heDogICAgICAgICAgICAgIFx0XHQoJHNjcmVlbi1tZC1taW4gLSAxKSAhZGVmYXVsdDsgIC8vIDk5MXB4XHJcbiRzY3JlZW4tbWQtbWF4OiAgICAgICAgICAgICAgXHRcdCgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0OyAgLy8gMTE5OXB4ICBcclxuXHJcbi8vIyMgSW1hZ2UgIHBhdGhzXHJcbiRnbG9iYWwtaW1nLXBhdGg6ICAgICAgICAgICBcdFx0Jy4uL2ltZy8nICFkZWZhdWx0OyBcclxuJHBhZ2UtaW1nLXBhdGg6ICAgICAgICAgICBcdFx0XHQnLi4vaW1nLycgIWRlZmF1bHQ7ICAgXHJcbiRwYWdlLW1lZGlhLXBhdGg6ICAgICAgICAgICBcdFx0Jy4uL21lZGlhLycgIWRlZmF1bHQ7IFxyXG5cclxuQGltcG9ydCBcIl9ib290c3RyYXAtb3ZlcnJpZGVcIjsiLCIvL0NvbXBvbmVudCBjb2xvcnNcclxuXHJcbiRjb21wb25lbnQtY29sb3JzOiAoXHJcblx0XCJ3aGl0ZVwiOlx0KGJhc2U6I2ZmZmZmZiwgZm9udDogIzY2NiksXHJcblx0XCJkZWZhdWx0XCI6XHQoYmFzZTojZTFlNWVjLCBmb250OiAjNjY2KSxcclxuXHRcImRhcmtcIjpcdChiYXNlOiMyZjM1M2IsIGZvbnQ6ICNGRkZGRkYpLFxyXG5cdFwiYmx1ZVwiOlx0KGJhc2U6IzM1OThkYywgZm9udDogI0ZGRkZGRiksXHJcblx0XCJibHVlLW1hZGlzb25cIjpcdChiYXNlOiM1NzhlYmUsIGZvbnQ6ICNGRkZGRkYpLFxyXG5cdFwiYmx1ZS1jaGFtYnJheVwiOlx0KGJhc2U6IzJDM0U1MCwgZm9udDogI0ZGRkZGRiksXHJcblx0XCJibHVlLWVib255Y2xheVwiOlx0KGJhc2U6IzIyMzEzRiwgZm9udDogI0ZGRkZGRiksXHJcblx0XCJibHVlLWhva2lcIjpcdChiYXNlOiM2NzgwOUYsIGZvbnQ6ICNGRkZGRkYpLFxyXG5cdFwiYmx1ZS1zdGVlbFwiOlx0KGJhc2U6IzRCNzdCRSwgZm9udDogI0ZGRkZGRiksXHJcblx0XCJibHVlLXNvZnRcIjpcdChiYXNlOiM0Yzg3YjksIGZvbnQ6ICNGRkZGRkYpLFxyXG5cdFwiYmx1ZS1kYXJrXCI6XHQoYmFzZTojNWU3MzhiLCBmb250OiAjRkZGRkZGKSxcclxuXHRcImJsdWUtc2hhcnBcIjpcdChiYXNlOiM1QzlCRDEsIGZvbnQ6ICNGRkZGRkYpLFxyXG5cdFwiYmx1ZS1vbGVvXCI6XHQoYmFzZTojOTRBMEIyLCBmb250OiAjRkZGRkZGKSxcclxuXHRcImdyZWVuXCI6XHQoYmFzZTojMzJjNWQyLCBmb250OiAjRkZGRkZGKSxcclxuXHRcImdyZWVuLW1lYWRvd1wiOlx0KGJhc2U6IzFCQkM5QiwgZm9udDogI0ZGRkZGRiksXHJcblx0XCJncmVlbi1zZWFncmVlblwiOlx0KGJhc2U6IzFCQTM5QywgZm9udDogI0ZGRkZGRiksXHJcblx0XCJncmVlbi10dXJxdW9pc2VcIjpcdChiYXNlOiMzNkQ3QjcsIGZvbnQ6ICNGRkZGRkYpLFxyXG5cdFwiZ3JlZW4taGF6ZVwiOlx0KGJhc2U6IzQ0YjZhZSwgZm9udDogI0ZGRkZGRiksXHJcblx0XCJncmVlbi1qdW5nbGVcIjpcdChiYXNlOiMyNkMyODEsIGZvbnQ6ICNGRkZGRkYpLFxyXG5cdFwiZ3JlZW4tc29mdFwiOlx0KGJhc2U6IzNmYWJhNCwgZm9udDogI0ZGRkZGRiksXHJcblx0XCJncmVlbi1kYXJrXCI6XHQoYmFzZTojNERCM0EyLCBmb250OiAjRkZGRkZGKSxcclxuXHRcImdyZWVuLXNoYXJwXCI6XHQoYmFzZTojMmFiNGMwLCBmb250OiAjRkZGRkZGKSxcclxuXHRcImdyZWVuLXN0ZWVsXCI6XHQoYmFzZTojMjliNGI2LCBmb250OiAjRkZGRkZGKSxcclxuXHRcImdyZXlcIjpcdChiYXNlOiNFNUU1RTUsIGZvbnQ6ICMzMzMzMzMpLFxyXG5cdFwiZ3JleS1zdGVlbFwiOlx0KGJhc2U6I2U5ZWRlZiwgZm9udDogIzgwODk4ZSksXHJcblx0XCJncmV5LWNhcmFycmFcIjpcdChiYXNlOiNmYWZhZmEsIGZvbnQ6ICMzMzMzMzMpLFxyXG5cdFwiZ3JleS1nYWxsZXJ5XCI6XHQoYmFzZTojNTU1NTU1LCBmb250OiAjZmZmZmZmKSxcclxuXHRcImdyZXktY2FzY2FkZVwiOlx0KGJhc2U6Izk1QTVBNiwgZm9udDogI0ZGRkZGRiksXHJcblx0XCJncmV5LXNpbHZlclwiOlx0KGJhc2U6I0JGQkZCRiwgZm9udDogI0ZBRkNGQiksXHJcblx0XCJncmV5LXNhbHNhXCI6XHQoYmFzZTojQUNCNUMzLCBmb250OiAjRkFGQ0ZCKSxcclxuXHRcImdyZXktc2FsdFwiOlx0KGJhc2U6I2JmY2FkMSwgZm9udDogI0ZBRkNGQiksXHJcblx0XCJncmV5LW1pbnRcIjpcdChiYXNlOiM1MjVlNjQsIGZvbnQ6ICNGRkZGRkYpLFxyXG5cdFwicmVkXCI6XHQoYmFzZTojZTc1MDVhLCBmb250OiAjZmZmZmZmKSxcclxuXHRcInJlZC1waW5rXCI6XHQoYmFzZTojRTA4MjgzLCBmb250OiAjZmZmZmZmKSxcclxuXHRcInJlZC1zdW5nbG9cIjpcdChiYXNlOiNFMjZBNkEsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwicmVkLWludGVuc2VcIjpcdChiYXNlOiNlMzViNWEsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwicmVkLXRodW5kZXJiaXJkXCI6XHQoYmFzZTojRDkxRTE4LCBmb250OiAjZmZmZmZmKSxcclxuXHRcInJlZC1mbGFtaW5nb1wiOlx0KGJhc2U6I0VGNDgzNiwgZm9udDogI2ZmZmZmZiksXHJcblx0XCJyZWQtc29mdFwiOlx0KGJhc2U6I2QwNTQ1NCwgZm9udDogI2ZmZmZmZiksXHJcblx0XCJyZWQtaGF6ZVwiOlx0KGJhc2U6I2YzNmE1YSwgZm9udDogI2ZmZmZmZiksXHJcblx0XCJyZWQtbWludFwiOlx0KGJhc2U6I2U0M2E0NSwgZm9udDogI2ZmZmZmZiksXHJcblx0XCJ5ZWxsb3dcIjpcdChiYXNlOiNjNDlmNDcsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwieWVsbG93LWdvbGRcIjpcdChiYXNlOiNFODdFMDQsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwieWVsbG93LWNhc2FibGFuY2FcIjpcdChiYXNlOiNmMjc4NGIsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwieWVsbG93LWNydXN0YVwiOlx0KGJhc2U6I2YzYzIwMCwgZm9udDogI2ZmZmZmZiksXHJcblx0XCJ5ZWxsb3ctbGVtb25cIjpcdChiYXNlOiNGN0NBMTgsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwieWVsbG93LXNhZmZyb25cIjpcdChiYXNlOiNGNEQwM0YsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwieWVsbG93LXNvZnRcIjpcdChiYXNlOiNjOGQwNDYsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwieWVsbG93LWhhemVcIjpcdChiYXNlOiNjNWJmNjYsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwieWVsbG93LW1pbnRcIjpcdChiYXNlOiNjNWI5NmIsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwicHVycGxlXCI6XHQoYmFzZTojOEU0NEFELCBmb250OiAjZmZmZmZmKSxcclxuXHRcInB1cnBsZS1wbHVtXCI6XHQoYmFzZTojODc3NWE3LCBmb250OiAjZmZmZmZmKSxcclxuXHRcInB1cnBsZS1tZWRpdW1cIjpcdChiYXNlOiNCRjU1RUMsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwicHVycGxlLXN0dWRpb1wiOlx0KGJhc2U6IzhFNDRBRCwgZm9udDogI2ZmZmZmZiksXHJcblx0XCJwdXJwbGUtd2lzdGVyaWFcIjpcdChiYXNlOiM5QjU5QjYsIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwicHVycGxlLXNlYW5jZVwiOlx0KGJhc2U6IzlBMTJCMywgZm9udDogI2ZmZmZmZiksXHJcblx0XCJwdXJwbGUtaW50ZW5zZVwiOlx0KGJhc2U6Izg3NzVhNywgZm9udDogI2ZmZmZmZiksXHJcblx0XCJwdXJwbGUtc2hhcnBcIjpcdChiYXNlOiM3OTY3OTksIGZvbnQ6ICNmZmZmZmYpLFxyXG5cdFwicHVycGxlLXNvZnRcIjpcdChiYXNlOiM4ODc3YTksIGZvbnQ6ICNmZmZmZmYpXHJcbik7XHJcbiIsIiRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXI6IGZhbHNlICFkZWZhdWx0O1xuLy9cbi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBkYXJrZW4oIzQyOGJjYSwgNi41JSkgIWRlZmF1bHQ7IC8vICMzMzdhYjdcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG5cblxuLy89PSBTY2FmZm9sZGluZ1xuLy9cbi8vIyMgU2V0dGluZ3MgZm9yIHNvbWUgb2YgdGhlIG1vc3QgZ2xvYmFsIHN0eWxlcy5cblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIGZvciBgPGJvZHk+YC5cbiRib2R5LWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCB0ZXh0IGNvbG9yIG9uIGA8Ym9keT5gLlxuJHRleHQtY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgdGV4dHVhbCBsaW5rIGNvbG9yLlxuJGxpbmstY29sb3I6ICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgY29sb3Igc2V0IHZpYSBgZGFya2VuKClgIGZ1bmN0aW9uLlxuJGxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRsaW5rLWNvbG9yLCAxNSUpICFkZWZhdWx0O1xuLy8qKiBMaW5rIGhvdmVyIGRlY29yYXRpb24uXG4kbGluay1ob3Zlci1kZWNvcmF0aW9uOiB1bmRlcmxpbmUgIWRlZmF1bHQ7XG5cblxuLy89PSBUeXBvZ3JhcGh5XG4vL1xuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktc2VyaWY6ICAgICAgIEdlb3JnaWEsIFwiVGltZXMgTmV3IFJvbWFuXCIsIFRpbWVzLCBzZXJpZiAhZGVmYXVsdDtcbi8vKiogRGVmYXVsdCBtb25vc3BhY2UgZm9udHMgZm9yIGA8Y29kZT5gLCBgPGtiZD5gLCBhbmQgYDxwcmU+YC5cbiRmb250LWZhbWlseS1tb25vc3BhY2U6ICAgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsIFwiQ291cmllciBOZXdcIiwgbW9ub3NwYWNlICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LWJhc2U6ICAgICAgICAkZm9udC1mYW1pbHktc2Fucy1zZXJpZiAhZGVmYXVsdDtcblxuJGZvbnQtc2l6ZS1iYXNlOiAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xuJGZvbnQtc2l6ZS1sYXJnZTogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLXNtYWxsOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuJGZvbnQtc2l6ZS1oMTogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi42KSkgIWRlZmF1bHQ7IC8vIH4zNnB4XG4kZm9udC1zaXplLWgyOiAgICAgICAgICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAyLjE1KSkgIWRlZmF1bHQ7IC8vIH4zMHB4XG4kZm9udC1zaXplLWgzOiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuNykpICFkZWZhdWx0OyAvLyB+MjRweFxuJGZvbnQtc2l6ZS1oNDogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjI1KSkgIWRlZmF1bHQ7IC8vIH4xOHB4XG4kZm9udC1zaXplLWg1OiAgICAgICAgICAgICRmb250LXNpemUtYmFzZSAhZGVmYXVsdDtcbiRmb250LXNpemUtaDY6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy90YWItZm9jdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFuZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2VudGVyLWJsb2NrXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKGhhcyBiZWVuIHJlbW92ZWQgaW4gdjQpXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcbn1cbiIsIi8vIE9wYWNpdHlcblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgb3BhY2l0eTogJG9wYWNpdHk7XG4gIC8vIElFOCBmaWx0ZXJcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7XG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7XG59XG4iLCIvLyBJbWFnZSBNaXhpbnNcbi8vIC0gUmVzcG9uc2l2ZSBpbWFnZVxuLy8gLSBSZXRpbmEgaW1hZ2VcblxuXG4vLyBSZXNwb25zaXZlIGltYWdlXG4vL1xuLy8gS2VlcCBpbWFnZXMgZnJvbSBzY2FsaW5nIGJleW9uZCB0aGUgd2lkdGggb2YgdGhlaXIgcGFyZW50cy5cbkBtaXhpbiBpbWctcmVzcG9uc2l2ZSgkZGlzcGxheTogYmxvY2spIHtcbiAgZGlzcGxheTogJGRpc3BsYXk7XG4gIG1heC13aWR0aDogMTAwJTsgLy8gUGFydCAxOiBTZXQgYSBtYXhpbXVtIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnRcbiAgaGVpZ2h0OiBhdXRvOyAvLyBQYXJ0IDI6IFNjYWxlIHRoZSBoZWlnaHQgYWNjb3JkaW5nIHRvIHRoZSB3aWR0aCwgb3RoZXJ3aXNlIHlvdSBnZXQgc3RyZXRjaGluZ1xufVxuXG5cbi8vIFJldGluYSBpbWFnZVxuLy9cbi8vIFNob3J0IHJldGluYSBtaXhpbiBmb3Igc2V0dGluZyBiYWNrZ3JvdW5kLWltYWdlIGFuZCAtc2l6ZS4gTm90ZSB0aGF0IHRoZVxuLy8gc3BlbGxpbmcgb2YgYG1pbi0tbW96LWRldmljZS1waXhlbC1yYXRpb2AgaXMgaW50ZW50aW9uYWwuXG5AbWl4aW4gaW1nLXJldGluYSgkZmlsZS0xeCwgJGZpbGUtMngsICR3aWR0aC0xeCwgJGhlaWdodC0xeCkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1pbWFnZS1wYXRoKFwiI3skZmlsZS0xeH1cIiksIFwiI3skZmlsZS0xeH1cIikpO1xuXG4gIEBtZWRpYVxuICBvbmx5IHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMiksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgbWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgIC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggICAgICAgICAgICAgICAgbWluLXJlc29sdXRpb246IDE5MmRwaSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoICAgICAgICAgICAgICAgIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTJ4fVwiKSwgXCIjeyRmaWxlLTJ4fVwiKSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiLy8gTGFiZWxzXG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgJltocmVmXSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLy9cbi8vIFdoZW4geW91IG5lZWQgdG8gcmVtb3ZlIGEgZ3JhZGllbnQgYmFja2dyb3VuZCwgZG8gbm90IGZvcmdldCB0byB1c2UgdGhpcyB0byByZXNldFxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cblxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgcmVzaXplOiAkZGlyZWN0aW9uOyAvLyBPcHRpb25zOiBob3Jpem9udGFsLCB2ZXJ0aWNhbCwgYm90aFxuICBvdmVyZmxvdzogYXV0bzsgLy8gUGVyIENTUzMgVUksIGByZXNpemVgIG9ubHkgYXBwbGllcyB3aGVuIGBvdmVyZmxvd2AgaXNuJ3QgYHZpc2libGVgXG59XG4iLCIvLyBSZXNwb25zaXZlIHV0aWxpdGllc1xuXG4vL1xuLy8gTW9yZSBlYXNpbHkgaW5jbHVkZSBhbGwgdGhlIHN0YXRlcyBmb3IgcmVzcG9uc2l2ZS11dGlsaXRpZXMubGVzcy5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbiAgdGFibGUjeyRwYXJlbnR9ICB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgdHIjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRoI3skcGFyZW50fSxcbiAgdGQjeyRwYXJlbnR9ICAgICB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxufVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLWludmlzaWJpbGl0eSgkcGFyZW50KSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuIiwiLy8gU2l6aW5nIHNob3J0Y3V0c1xuXG5AbWl4aW4gc2l6ZSgkd2lkdGgsICRoZWlnaHQpIHtcbiAgd2lkdGg6ICR3aWR0aDtcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xufVxuXG5AbWl4aW4gc3F1YXJlKCRzaXplKSB7XG4gIEBpbmNsdWRlIHNpemUoJHNpemUsICRzaXplKTtcbn1cbiIsIi8vIFdlYktpdC1zdHlsZSBmb2N1c1xuXG5AbWl4aW4gdGFiLWZvY3VzKCkge1xuICAvLyBXZWJLaXQtc3BlY2lmaWMuIE90aGVyIGJyb3dzZXJzIHdpbGwga2VlcCB0aGVpciBkZWZhdWx0IG91dGxpbmUgc3R5bGUuXG4gIC8vIChJbml0aWFsbHkgdHJpZWQgdG8gYWxzbyBmb3JjZSBkZWZhdWx0IHZpYSBgb3V0bGluZTogaW5pdGlhbGAsXG4gIC8vIGJ1dCB0aGF0IHNlZW1zIHRvIGVycm9uZW91c2x5IHJlbW92ZSB0aGUgb3V0bGluZSBpbiBGaXJlZm94IGFsdG9nZXRoZXIuKVxuICBvdXRsaW5lOiA1cHggYXV0byAtd2Via2l0LWZvY3VzLXJpbmctY29sb3I7XG4gIG91dGxpbmUtb2Zmc2V0OiAtMnB4O1xufVxuIiwiQG1peGluIHJlc2V0LXRleHQoKSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgLy8gV2UgZGVsaWJlcmF0ZWx5IGRvIE5PVCByZXNldCBmb250LXNpemUuXG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDtcbiAgbGluZS1icmVhazogYXV0bztcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICB0ZXh0LWFsaWduOiBsZWZ0OyAvLyBGYWxsYmFjayBmb3Igd2hlcmUgYHN0YXJ0YCBpcyBub3Qgc3VwcG9ydGVkXG4gIHRleHQtYWxpZ246IHN0YXJ0O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtc2hhZG93OiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgd29yZC1icmVhazogbm9ybWFsO1xuICB3b3JkLXNwYWNpbmc6IG5vcm1hbDtcbiAgd29yZC13cmFwOiBub3JtYWw7XG59XG4iLCIvLyBUeXBvZ3JhcGh5XG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIHRleHQtZW1waGFzaXMtdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBUZXh0IG92ZXJmbG93XG4vLyBSZXF1aXJlcyBpbmxpbmUtYmxvY2sgb3IgYmxvY2sgZm9yIHByb3BlciBzdHlsaW5nXG5cbkBtaXhpbiB0ZXh0LW92ZXJmbG93KCkge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cbiIsIi8vIFZlbmRvciBQcmVmaXhlc1xuLy9cbi8vIEFsbCB2ZW5kb3IgbWl4aW5zIGFyZSBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBkdWUgdG8gdGhlIGludHJvZHVjdGlvbiBvZlxuLy8gQXV0b3ByZWZpeGVyIGluIG91ciBHcnVudGZpbGUuIFRoZXkgaGF2ZSBiZWVuIHJlbW92ZWQgaW4gdjQuXG5cbi8vIC0gQW5pbWF0aW9uc1xuLy8gLSBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyAtIEJveCBzaGFkb3dcbi8vIC0gQm94IHNpemluZ1xuLy8gLSBDb250ZW50IGNvbHVtbnNcbi8vIC0gSHlwaGVuc1xuLy8gLSBQbGFjZWhvbGRlciB0ZXh0XG4vLyAtIFRyYW5zZm9ybWF0aW9uc1xuLy8gLSBUcmFuc2l0aW9uc1xuLy8gLSBVc2VyIFNlbGVjdFxuXG5cbi8vIEFuaW1hdGlvbnNcbkBtaXhpbiBhbmltYXRpb24oJGFuaW1hdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAtby1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1uYW1lKCRuYW1lKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xuICAgICAgICAgIGFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbn1cbkBtaXhpbiBhbmltYXRpb24tZHVyYXRpb24oJGR1cmF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAkZHVyYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1kZWxheSgkZGVsYXkpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbiAgICAgICAgICBhbmltYXRpb24tZGVsYXk6ICRkZWxheTtcbn1cbkBtaXhpbiBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50KCRpdGVyYXRpb24tY291bnQpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xuICAgICAgICAgIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRpcmVjdGlvbigkZGlyZWN0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi1maWxsLW1vZGUoJGZpbGwtbW9kZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG4gICAgICAgICAgYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbn1cblxuLy8gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gUHJldmVudCBicm93c2VycyBmcm9tIGZsaWNrZXJpbmcgd2hlbiB1c2luZyBDU1MgM0QgdHJhbnNmb3Jtcy5cbi8vIERlZmF1bHQgdmFsdWUgaXMgYHZpc2libGVgLCBidXQgY2FuIGJlIGNoYW5nZWQgdG8gYGhpZGRlbmBcblxuQG1peGluIGJhY2tmYWNlLXZpc2liaWxpdHkoJHZpc2liaWxpdHkpIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbiAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiAkdmlzaWJpbGl0eTtcbn1cblxuLy8gRHJvcCBzaGFkb3dzXG4vL1xuLy8gTm90ZTogRGVwcmVjYXRlZCBgLmJveC1zaGFkb3coKWAgYXMgb2YgdjMuMS4wIHNpbmNlIGFsbCBvZiBCb290c3RyYXAnc1xuLy8gc3VwcG9ydGVkIGJyb3dzZXJzIHRoYXQgaGF2ZSBib3ggc2hhZG93IGNhcGFiaWxpdGllcyBub3cgc3VwcG9ydCBpdC5cblxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdy4uLikge1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICRzaGFkb3c7IC8vIGlPUyA8NC4zICYgQW5kcm9pZCA8NC4xXG4gICAgICAgICAgYm94LXNoYWRvdzogJHNoYWRvdztcbn1cblxuLy8gQm94IHNpemluZ1xuQG1peGluIGJveC1zaXppbmcoJGJveG1vZGVsKSB7XG4gIC13ZWJraXQtYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAtbW96LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgICAgICBib3gtc2l6aW5nOiAkYm94bW9kZWw7XG59XG5cbi8vIENTUzMgQ29udGVudCBDb2x1bW5zXG5AbWl4aW4gY29udGVudC1jb2x1bW5zKCRjb2x1bW4tY291bnQsICRjb2x1bW4tZ2FwOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgLXdlYmtpdC1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgIC1tb3otY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAgICAgIGNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgLXdlYmtpdC1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbiAgICAgICAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWdhcDtcbn1cblxuLy8gT3B0aW9uYWwgaHlwaGVuYXRpb25cbkBtaXhpbiBoeXBoZW5zKCRtb2RlOiBhdXRvKSB7XG4gIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgLXdlYmtpdC1oeXBoZW5zOiAkbW9kZTtcbiAgICAgLW1vei1oeXBoZW5zOiAkbW9kZTtcbiAgICAgIC1tcy1oeXBoZW5zOiAkbW9kZTsgLy8gSUUxMCtcbiAgICAgICAtby1oeXBoZW5zOiAkbW9kZTtcbiAgICAgICAgICBoeXBoZW5zOiAkbW9kZTtcbn1cblxuLy8gUGxhY2Vob2xkZXIgdGV4dFxuQG1peGluIHBsYWNlaG9sZGVyKCRjb2xvcjogJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyKSB7XG4gIC8vIEZpcmVmb3hcbiAgJjo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBvcGFjaXR5OiAxOyAvLyBPdmVycmlkZSBGaXJlZm94J3MgdW51c3VhbCBkZWZhdWx0IG9wYWNpdHk7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMTUyNlxuICB9XG4gICY6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBJbnRlcm5ldCBFeHBsb3JlciAxMCtcbiAgJjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIFNhZmFyaSBhbmQgQ2hyb21lXG59XG5cbi8vIFRyYW5zZm9ybWF0aW9uc1xuQG1peGluIHNjYWxlKCRyYXRpby4uLikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbn1cblxuQG1peGluIHNjYWxlWCgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xufVxuQG1peGluIHNjYWxlWSgkcmF0aW8pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xufVxuQG1peGluIHNrZXcoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTsgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvNDg4NTsgSUU5K1xuICAgICAgIC1vLXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlKCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG59XG5AbWl4aW4gdHJhbnNsYXRlM2QoJHgsICR5LCAkeikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbn1cbkBtaXhpbiByb3RhdGUoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWCgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG59XG5AbWl4aW4gcm90YXRlWSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUoJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUtb3JpZ2luKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xuICAgICAgICAgIHBlcnNwZWN0aXZlLW9yaWdpbjogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHRyYW5zZm9ybS1vcmlnaW4oJG9yaWdpbikge1xuICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luOyAvLyBJRTkgb25seVxuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG59XG5cblxuLy8gVHJhbnNpdGlvbnNcblxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAkdHJhbnNpdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXByb3BlcnR5KCR0cmFuc2l0aW9uLXByb3BlcnR5Li4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogJHRyYW5zaXRpb24tcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kZWxheSgkdHJhbnNpdGlvbi1kZWxheSkge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xuICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6ICR0cmFuc2l0aW9uLWRlbGF5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZHVyYXRpb24oJHRyYW5zaXRpb24tZHVyYXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLWR1cmF0aW9uOiAkdHJhbnNpdGlvbi1kdXJhdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbigkdGltaW5nLWZ1bmN0aW9uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10cmFuc2Zvcm0oJHRyYW5zaXRpb24uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgLW1vei10cmFuc2l0aW9uOiAtbW96LXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAtby10cmFuc2l0aW9uOiAtby10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xufVxuXG5cbi8vIFVzZXIgc2VsZWN0XG4vLyBGb3Igc2VsZWN0aW5nIHRleHQgb24gdGhlIHBhZ2VcblxuQG1peGluIHVzZXItc2VsZWN0KCRzZWxlY3QpIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgLW1vei11c2VyLXNlbGVjdDogJHNlbGVjdDtcbiAgICAgIC1tcy11c2VyLXNlbGVjdDogJHNlbGVjdDsgLy8gSUUxMCtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogJHNlbGVjdDtcbn1cbiIsIi8vIEFsZXJ0c1xuXG5AbWl4aW4gYWxlcnQtdmFyaWFudCgkYmFja2dyb3VuZCwgJGJvcmRlciwgJHRleHQtY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuXG4gIGhyIHtcbiAgICBib3JkZXItdG9wLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgNSUpO1xuICB9XG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAxMiUpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTclKTtcbiAgICAgICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICAgIH1cbiAgfVxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUsXG4gIC5vcGVuID4gJi5kcm9wZG93bi10b2dnbGUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLmJhZGdlIHtcbiAgICBjb2xvcjogJGJhY2tncm91bmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG59XG5cbi8vIEJ1dHRvbiBzaXplc1xuQG1peGluIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG59XG4iLCIvLyBQYW5lbHNcblxuQG1peGluIHBhbmVsLXZhcmlhbnQoJGJvcmRlciwgJGhlYWRpbmctdGV4dC1jb2xvciwgJGhlYWRpbmctYmctY29sb3IsICRoZWFkaW5nLWJvcmRlcikge1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJiA+IC5wYW5lbC1oZWFkaW5nIHtcbiAgICBjb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkaW5nLWJvcmRlcjtcblxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gICAgLmJhZGdlIHtcbiAgICAgIGNvbG9yOiAkaGVhZGluZy1iZy1jb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLXRleHQtY29sb3I7XG4gICAgfVxuICB9XG4gICYgPiAucGFuZWwtZm9vdGVyIHtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5IHtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRib3JkZXI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBQYWdpbmF0aW9uXG5cbkBtaXhpbiBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgPiBsaSB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItbGVmdC1yYWRpdXMoJGJvcmRlci1yYWRpdXMpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBMaXN0IEdyb3Vwc1xuXG5AbWl4aW4gbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoJHN0YXRlLCAkYmFja2dyb3VuZCwgJGNvbG9yKSB7XG4gIC5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9IHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuXG4gICAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmLCBidXR0b24mIHRvIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSwgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX1cbiAgfVxuXG4gIGEubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSxcbiAgYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gICAgJi5hY3RpdmUsXG4gICAgJi5hY3RpdmU6aG92ZXIsXG4gICAgJi5hY3RpdmU6Zm9jdXMge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEhvcml6b250YWwgZGl2aWRlcnNcbi8vXG4vLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gZHJvcGRvd25zIGFuZCBuYXYgbGlzdHNcblxuQG1peGluIG5hdi1kaXZpZGVyKCRjb2xvcjogI2U1ZTVlNSkge1xuICBoZWlnaHQ6IDFweDtcbiAgbWFyZ2luOiAoKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpIC0gMSkgMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xufVxuIiwiLy8gRm9ybSB2YWxpZGF0aW9uIHN0YXRlc1xuLy9cbi8vIFVzZWQgaW4gZm9ybXMubGVzcyB0byBnZW5lcmF0ZSB0aGUgZm9ybSB2YWxpZGF0aW9uIENTUyBmb3Igd2FybmluZ3MsIGVycm9ycyxcbi8vIGFuZCBzdWNjZXNzZXMuXG5cbkBtaXhpbiBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkdGV4dC1jb2xvcjogIzU1NSwgJGJvcmRlci1jb2xvcjogI2NjYywgJGJhY2tncm91bmQtY29sb3I6ICNmNWY1ZjUpIHtcbiAgLy8gQ29sb3IgdGhlIGxhYmVsIGFuZCBoZWxwIHRleHRcbiAgLmhlbHAtYmxvY2ssXG4gIC5jb250cm9sLWxhYmVsLFxuICAucmFkaW8sXG4gIC5jaGVja2JveCxcbiAgLnJhZGlvLWlubGluZSxcbiAgLmNoZWNrYm94LWlubGluZSxcbiAgJi5yYWRpbyBsYWJlbCxcbiAgJi5jaGVja2JveCBsYWJlbCxcbiAgJi5yYWRpby1pbmxpbmUgbGFiZWwsXG4gICYuY2hlY2tib3gtaW5saW5lIGxhYmVsICB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICB9XG4gIC8vIFNldCB0aGUgYm9yZGVyIGFuZCBib3ggc2hhZG93IG9uIHNwZWNpZmljIGlucHV0cyB0byBtYXRjaFxuICAuZm9ybS1jb250cm9sIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLDAsMCwuMDc1KSk7IC8vIFJlZGVjbGFyZSBzbyB0cmFuc2l0aW9ucyB3b3JrXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLWNvbG9yLCAxMCUpO1xuICAgICAgJHNoYWRvdzogaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA2cHggbGlnaHRlbigkYm9yZGVyLWNvbG9yLCAyMCUpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcbiAgICB9XG4gIH1cbiAgLy8gU2V0IHZhbGlkYXRpb24gc3RhdGVzIGFsc28gZm9yIGFkZG9uc1xuICAuaW5wdXQtZ3JvdXAtYWRkb24ge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXItY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQtY29sb3I7XG4gIH1cbiAgLy8gT3B0aW9uYWwgZmVlZGJhY2sgaWNvblxuICAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbn1cblxuXG4vLyBGb3JtIGNvbnRyb2wgZm9jdXMgc3RhdGVcbi8vXG4vLyBHZW5lcmF0ZSBhIGN1c3RvbWl6ZWQgZm9jdXMgc3RhdGUgYW5kIGZvciBhbnkgaW5wdXQgd2l0aCB0aGUgc3BlY2lmaWVkIGNvbG9yLFxuLy8gd2hpY2ggZGVmYXVsdHMgdG8gdGhlIGAkaW5wdXQtYm9yZGVyLWZvY3VzYCB2YXJpYWJsZS5cbi8vXG4vLyBXZSBoaWdobHkgZW5jb3VyYWdlIHlvdSB0byBub3QgY3VzdG9taXplIHRoZSBkZWZhdWx0IHZhbHVlLCBidXQgaW5zdGVhZCB1c2Vcbi8vIHRoaXMgdG8gdHdlYWsgY29sb3JzIG9uIGFuIGFzLW5lZWRlZCBiYXNpcy4gVGhpcyBhZXN0aGV0aWMgY2hhbmdlIGlzIGJhc2VkIG9uXG4vLyBXZWJLaXQncyBkZWZhdWx0IHN0eWxlcywgYnV0IGFwcGxpY2FibGUgdG8gYSB3aWRlciByYW5nZSBvZiBicm93c2Vycy4gSXRzXG4vLyB1c2FiaWxpdHkgYW5kIGFjY2Vzc2liaWxpdHkgc2hvdWxkIGJlIHRha2VuIGludG8gYWNjb3VudCB3aXRoIGFueSBjaGFuZ2UuXG4vL1xuLy8gRXhhbXBsZSB1c2FnZTogY2hhbmdlIHRoZSBkZWZhdWx0IGJsdWUgYm9yZGVyIGFuZCBzaGFkb3cgdG8gd2hpdGUgZm9yIGJldHRlclxuLy8gY29udHJhc3QgYWdhaW5zdCBhIGRhcmsgZ3JheSBiYWNrZ3JvdW5kLlxuQG1peGluIGZvcm0tY29udHJvbC1mb2N1cygkY29sb3I6ICRpbnB1dC1ib3JkZXItZm9jdXMpIHtcbiAgJGNvbG9yLXJnYmE6IHJnYmEocmVkKCRjb2xvciksIGdyZWVuKCRjb2xvciksIGJsdWUoJGNvbG9yKSwgLjYpO1xuICAmOmZvY3VzIHtcbiAgICBib3JkZXItY29sb3I6ICRjb2xvcjtcbiAgICBvdXRsaW5lOiAwO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSksIDAgMCA4cHggJGNvbG9yLXJnYmEpO1xuICB9XG59XG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBSZWxhdGl2ZSB0ZXh0IHNpemUsIHBhZGRpbmcsIGFuZCBib3JkZXItcmFkaWkgY2hhbmdlcyBmb3IgZm9ybSBjb250cm9scy4gRm9yXG4vLyBob3Jpem9udGFsIHNpemluZywgd3JhcCBjb250cm9scyBpbiB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuIGA8c2VsZWN0PmBcbi8vIGVsZW1lbnQgZ2V0cyBzcGVjaWFsIGxvdmUgYmVjYXVzZSBpdCdzIHNwZWNpYWwsIGFuZCB0aGF0J3MgYSBmYWN0IVxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gaW5wdXQtc2l6ZSgkcGFyZW50LCAkaW5wdXQtaGVpZ2h0LCAkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICAjeyRwYXJlbnR9IHtcbiAgICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodDtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgfVxuXG4gIHNlbGVjdCN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgfVxuXG4gIHRleHRhcmVhI3skcGFyZW50fSxcbiAgc2VsZWN0W211bHRpcGxlXSN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogYXV0bztcbiAgfVxufVxuIiwiLy8gUHJvZ3Jlc3MgYmFyc1xuXG5AbWl4aW4gcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJGNvbG9yKSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcblxuICAvLyBEZXByZWNhdGVkIHBhcmVudCBjbGFzcyByZXF1aXJlbWVudCBhcyBvZiB2My4yLjBcbiAgLnByb2dyZXNzLXN0cmlwZWQgJiB7XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtc3RyaXBlZDtcbiAgfVxufVxuIiwiLy8gVGFibGVzXG5cbkBtaXhpbiB0YWJsZS1yb3ctdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kKSB7XG4gIC8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4gIC8vIGluaGVyaXRhbmNlIHRvIG5lc3RlZCB0YWJsZXMuXG4gIC50YWJsZSA+IHRoZWFkID4gdHIsXG4gIC50YWJsZSA+IHRib2R5ID4gdHIsXG4gIC50YWJsZSA+IHRmb290ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9LFxuICAgID4gdGguI3skc3RhdGV9LFxuICAgICYuI3skc3RhdGV9ID4gdGQsXG4gICAgJi4jeyRzdGF0ZX0gPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICB9XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZXMgZm9yIGAudGFibGUtaG92ZXJgXG4gIC8vIE5vdGU6IHRoaXMgaXMgbm90IGF2YWlsYWJsZSBmb3IgY2VsbHMgb3Igcm93cyB3aXRoaW4gYHRoZWFkYCBvciBgdGZvb3RgLlxuICAudGFibGUtaG92ZXIgPiB0Ym9keSA+IHRyIHtcbiAgICA+IHRkLiN7JHN0YXRlfTpob3ZlcixcbiAgICA+IHRoLiN7JHN0YXRlfTpob3ZlcixcbiAgICAmLiN7JHN0YXRlfTpob3ZlciA+IHRkLFxuICAgICY6aG92ZXIgPiAuI3skc3RhdGV9LFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGgge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCA1JSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG5cbi8vIFtjb252ZXJ0ZXJdICRwYXJlbnQgaGFja1xuQG1peGluIGJnLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxuICBhI3skcGFyZW50fTpob3ZlcixcbiAgYSN7JHBhcmVudH06Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gIH1cbn1cbiIsIi8vIFNpbmdsZSBzaWRlIGJvcmRlci1yYWRpdXNcblxuQG1peGluIGJvcmRlci10b3AtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1yaWdodC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWJvdHRvbS1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIi8vIEdyYWRpZW50c1xuXG5cblxuLy8gSG9yaXpvbnRhbCBncmFkaWVudCwgZnJvbSBsZWZ0IHRvIHJpZ2h0XG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxufVxuXG4vLyBWZXJ0aWNhbCBncmFkaWVudCwgZnJvbSB0b3AgdG8gYm90dG9tXG4vL1xuLy8gQ3JlYXRlcyB0d28gY29sb3Igc3RvcHMsIHN0YXJ0IGFuZCBlbmQsIGJ5IHNwZWNpZnlpbmcgYSBjb2xvciBhbmQgcG9zaXRpb24gZm9yIGVhY2ggY29sb3Igc3RvcC5cbi8vIENvbG9yIHN0b3BzIGFyZSBub3QgYXZhaWxhYmxlIGluIElFOSBhbmQgYmVsb3cuXG5AbWl4aW4gZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAjNTU1LCAkZW5kLWNvbG9yOiAjMzMzLCAkc3RhcnQtcGVyY2VudDogMCUsICRlbmQtcGVyY2VudDogMTAwJSkge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCh0b3AsICRzdGFydC1jb2xvciAkc3RhcnQtcGVyY2VudCwgJGVuZC1jb2xvciAkZW5kLXBlcmNlbnQpOyAgLy8gT3BlcmEgMTJcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIGJvdHRvbSwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbkBtaXhpbiBncmFkaWVudC1kaXJlY3Rpb25hbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRkZWc6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xufVxuQG1peGluIGdyYWRpZW50LWhvcml6b250YWwtdGhyZWUtY29sb3JzKCRzdGFydC1jb2xvcjogIzAwYjNlZSwgJG1pZC1jb2xvcjogIzdhNDNiNiwgJGNvbG9yLXN0b3A6IDUwJSwgJGVuZC1jb2xvcjogI2MzMzI1Zikge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHJpZ2h0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MCk7IC8vIElFOSBhbmQgZG93biwgZ2V0cyBubyBjb2xvci1zdG9wIGF0IGFsbCBmb3IgcHJvcGVyIGZhbGxiYWNrXG59XG5AbWl4aW4gZ3JhZGllbnQtcmFkaWFsKCRpbm5lci1jb2xvcjogIzU1NSwgJG91dGVyLWNvbG9yOiAjMzMzKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtcmFkaWFsLWdyYWRpZW50KGNpcmNsZSwgJGlubmVyLWNvbG9yLCAkb3V0ZXItY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiByYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG59XG5AbWl4aW4gZ3JhZGllbnQtc3RyaXBlZCgkY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgJGFuZ2xlOiA0NWRlZykge1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG59XG4iLCIvLyBDbGVhcmZpeFxuLy9cbi8vIEZvciBtb2Rlcm4gYnJvd3NlcnNcbi8vIDEuIFRoZSBzcGFjZSBjb250ZW50IGlzIG9uZSB3YXkgdG8gYXZvaWQgYW4gT3BlcmEgYnVnIHdoZW4gdGhlXG4vLyAgICBjb250ZW50ZWRpdGFibGUgYXR0cmlidXRlIGlzIGluY2x1ZGVkIGFueXdoZXJlIGVsc2UgaW4gdGhlIGRvY3VtZW50LlxuLy8gICAgT3RoZXJ3aXNlIGl0IGNhdXNlcyBzcGFjZSB0byBhcHBlYXIgYXQgdGhlIHRvcCBhbmQgYm90dG9tIG9mIGVsZW1lbnRzXG4vLyAgICB0aGF0IGFyZSBjbGVhcmZpeGVkLlxuLy8gMi4gVGhlIHVzZSBvZiBgdGFibGVgIHJhdGhlciB0aGFuIGBibG9ja2AgaXMgb25seSBuZWNlc3NhcnkgaWYgdXNpbmdcbi8vICAgIGA6YmVmb3JlYCB0byBjb250YWluIHRoZSB0b3AtbWFyZ2lucyBvZiBjaGlsZCBlbGVtZW50cy5cbi8vXG4vLyBTb3VyY2U6IGh0dHA6Ly9uaWNvbGFzZ2FsbGFnaGVyLmNvbS9taWNyby1jbGVhcmZpeC1oYWNrL1xuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiBcIjsgLy8gMVxuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gIH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbiIsIi8vIENlbnRlci1hbGlnbiBhIGJsb2NrIGxldmVsIGVsZW1lbnRcblxuQG1peGluIGNlbnRlci1ibG9jaygpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG4iLCIvLyBOYXZiYXIgdmVydGljYWwgYWxpZ25cbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBlbGVtZW50cyBpbiB0aGUgbmF2YmFyLlxuLy8gRXhhbXBsZTogYW4gZWxlbWVudCBoYXMgYSBoZWlnaHQgb2YgMzBweCwgc28gd3JpdGUgb3V0IGAubmF2YmFyLXZlcnRpY2FsLWFsaWduKDMwcHgpO2AgdG8gY2FsY3VsYXRlIHRoZSBhcHByb3ByaWF0ZSB0b3AgbWFyZ2luLlxuXG5AbWl4aW4gbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRlbGVtZW50LWhlaWdodCkge1xuICBtYXJnaW4tdG9wOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoKCRuYXZiYXItaGVpZ2h0IC0gJGVsZW1lbnQtaGVpZ2h0KSAvIDIpO1xufVxuIiwiLy8gRnJhbWV3b3JrIGdyaWQgZ2VuZXJhdGlvblxuLy9cbi8vIFVzZWQgb25seSBieSBCb290c3RyYXAgdG8gZ2VuZXJhdGUgdGhlIGNvcnJlY3QgbnVtYmVyIG9mIGdyaWQgY2xhc3NlcyBnaXZlblxuLy8gYW55IHZhbHVlIG9mIGAkZ3JpZC1jb2x1bW5zYC5cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBtYWtlLWdyaWQtY29sdW1ucygkaTogMSwgJGxpc3Q6IFwiLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wteHMtI3skaX0sIC5jb2wtc20tI3skaX0sIC5jb2wtbWQtI3skaX0sIC5jb2wtbGctI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vIFByZXZlbnQgY29sdW1ucyBmcm9tIGNvbGxhcHNpbmcgd2hlbiBlbXB0eVxuICAgIG1pbi1oZWlnaHQ6IDFweDtcbiAgICAvLyBJbm5lciBndXR0ZXIgdmlhIHBhZGRpbmdcbiAgICBwYWRkaW5nLWxlZnQ6ICBjZWlsKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gICAgcGFkZGluZy1yaWdodDogZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKTtcbiAgfVxufVxuXG5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgZGVmaW5lZCByZWN1cnNpdmVseSBpbiBMRVNTLCBidXQgU2FzcyBzdXBwb3J0cyByZWFsIGxvb3BzXG5AbWl4aW4gZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcywgJGk6IDEsICRsaXN0OiBcIi5jb2wtI3skY2xhc3N9LSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC0jeyRjbGFzc30tI3skaX1cIjtcbiAgfVxuICAjeyRsaXN0fSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG5AbWl4aW4gY2FsYy1ncmlkLWNvbHVtbigkaW5kZXgsICRjbGFzcywgJHR5cGUpIHtcbiAgQGlmICgkdHlwZSA9PSB3aWR0aCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tI3skaW5kZXh9IHtcbiAgICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkaW5kZXggLyAkZ3JpZC1jb2x1bW5zKSk7XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVzaCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0jeyRpbmRleH0ge1xuICAgICAgbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdXNoLTAge1xuICAgICAgbGVmdDogYXV0bztcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA+IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLSN7JGluZGV4fSB7XG4gICAgICByaWdodDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1bGwpIGFuZCAoJGluZGV4ID09IDApIHtcbiAgICAuY29sLSN7JGNsYXNzfS1wdWxsLTAge1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gb2Zmc2V0KSB7XG4gICAgLmNvbC0jeyRjbGFzc30tb2Zmc2V0LSN7JGluZGV4fSB7XG4gICAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxufVxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGxvb3AtZ3JpZC1jb2x1bW5zKCRjb2x1bW5zLCAkY2xhc3MsICR0eXBlKSB7XG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJGNvbHVtbnMge1xuICAgIEBpbmNsdWRlIGNhbGMtZ3JpZC1jb2x1bW4oJGksICRjbGFzcywgJHR5cGUpO1xuICB9XG59XG5cblxuLy8gQ3JlYXRlIGdyaWQgZm9yIHNwZWNpZmljIGNsYXNzXG5AbWl4aW4gbWFrZS1ncmlkKCRjbGFzcykge1xuICBAaW5jbHVkZSBmbG9hdC1ncmlkLWNvbHVtbnMoJGNsYXNzKTtcbiAgQGluY2x1ZGUgbG9vcC1ncmlkLWNvbHVtbnMoJGdyaWQtY29sdW1ucywgJGNsYXNzLCB3aWR0aCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVsbCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgcHVzaCk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgb2Zmc2V0KTtcbn1cbiIsIi8vIEdyaWQgc3lzdGVtXG4vL1xuLy8gR2VuZXJhdGUgc2VtYW50aWMgZ3JpZCBjb2x1bW5zIHdpdGggdGhlc2UgbWl4aW5zLlxuXG4vLyBDZW50ZXJlZCBjb250YWluZXIgZWxlbWVudFxuQG1peGluIGNvbnRhaW5lci1maXhlZCgkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgcGFkZGluZy1sZWZ0OiAgZmxvb3IoKCRndXR0ZXIgLyAyKSk7XG4gIHBhZGRpbmctcmlnaHQ6IGNlaWwoKCRndXR0ZXIgLyAyKSk7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tbGVmdDogIGNlaWwoKCRndXR0ZXIgLyAtMikpO1xuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBleHRyYSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS14cy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBzbWFsbCBjb2x1bW5zXG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1sZWZ0OiAgKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSB0aGUgbGFyZ2UgY29sdW1uc1xuQG1peGluIG1ha2UtbGctY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctbGVmdDogICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLXB1c2goJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdWxsKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIHJpZ2h0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuIiwiLy89PSBDb2xvcnNcclxuXHJcbiRncmF5LWJhc2U6ICAgICAgICAgICAgICBcdFx0ZGFya2VuKCMzNDQ5NUUsIDIwJSk7IFxyXG4kZ3JheS1kYXJrOiAgICAgICAgICAgICAgXHRcdGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKTsgXHJcbiRncmF5OiAgICAgICAgICAgICAgICAgICBcdFx0bGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSk7XHJcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBcdFx0bGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSk7XHJcblxyXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICBcdFx0ZGFya2VuKCM0MjhiY2EsIDYuNSUpO1xyXG4kYnJhbmQtc3VjY2VzczogICAgICAgICBcdFx0bGlnaHRlbigjMzJjNWQyLCAxJSk7IFxyXG4kYnJhbmQtaW5mbzogICAgICAgICAgICBcdFx0bGlnaHRlbigjNTg5M2RkLCAzJSk7IFxyXG4kYnJhbmQtd2FybmluZzogICAgICAgIFx0XHRcdCNGMUM0MEY7ICBcclxuJGJyYW5kLWRhbmdlcjogICAgICAgICAgXHRcdGxpZ2h0ZW4oI2ViNWQ2OCwgMyUpOyAgICBcclxuXHJcbi8vPT0gRm9ybXNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxyXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmIDtcclxuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxyXG4kaW5wdXQtYmctZGlzYWJsZWQ6ICAgICAgICAgICAgICBkYXJrZW4oI2YxZjRmNywgMSUpO1xyXG5cclxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXHJcbiRpbnB1dC1jb2xvcjogICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oIzAwMDAwMCwgMzMuNSUpO1xyXG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgZGFya2VuKCNlMWU1ZWMsIDEwJSk7XHJcblxyXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXHJcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgIGRhcmtlbigkaW5wdXQtYm9yZGVyLCAxNSUpO1xyXG5cclxuLy8qKiBQbGFjZWhvbGRlciB0ZXh0IGNvbG9yXHJcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTk7XHJcblxyXG4kbGVnZW5kLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrO1xyXG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1IDtcclxuXHJcbi8vPT0gRHJvcGRvd25zXHJcblxyXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICNlMWU1ZWM7IC8vIHNldCBieSBrZWVudGhlbWVzXHJcblxyXG4vLz09IFdlbGxzXHJcblxyXG4kd2VsbC1iZzogICAgICAgICAgICAgICAgICAgICBcdGxpZ2h0ZW4oJGdyYXktYmFzZSwgODclKTsgIC8vIHNldCBieSBrZWVudGhlbWVzXHJcblxyXG4vLz09IFRhYmxlc1xyXG5cclxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cclxuJHRhYmxlLWJnOiAgICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudDtcclxuXHJcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLXN0cmlwZWRgLlxyXG4gIFxyXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDMlKTsgIFxyXG5cclxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtaG92ZXJgLlxyXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkZ2VuZXJhbC1wYW5lbC1iZy1jb2xvciwgMSUpO1xyXG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlcjtcclxuXHJcbi8vKiogQm9yZGVyIGNvbG9yIGZvciB0YWJsZSBhbmQgY2VsbCBib3JkZXJzLlxyXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgXHRkYXJrZW4oJGdlbmVyYWwtcGFuZWwtYmctY29sb3IsIDMlKTtcclxuXHJcbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xyXG4vL1xyXG4vLyMjIERlZmluZSBjb2xvcnMgZm9yIGZvcm0gZmVlZGJhY2sgc3RhdGVzIGFuZCwgYnkgZGVmYXVsdCwgYWxlcnRzLlxyXG5cclxuJHN0YXRlLXN1Y2Nlc3MtdGV4dDogICAgICAgICAgICAgZGFya2VuKCRicmFuZC1zdWNjZXNzLCAxMCUpOyAgXHJcbiRzdGF0ZS1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXN1Y2Nlc3MsIDI4JSk7XHJcbiRzdGF0ZS1zdWNjZXNzLWJvcmRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXN1Y2Nlc3MsIDI4JSk7XHJcblxyXG4kc3RhdGUtaW5mby10ZXh0OiAgICAgICAgICAgICBcdCBkYXJrZW4oJGJyYW5kLWluZm8sIDEyJSk7ICBcclxuJHN0YXRlLWluZm8tYmc6ICAgICAgICAgICAgICAgXHQgbGlnaHRlbigkYnJhbmQtaW5mbywgMjklKTtcclxuJHN0YXRlLWluZm8tYm9yZGVyOiAgICAgICAgICAgXHQgbGlnaHRlbigkYnJhbmQtaW5mbywgMjklKTtcclxuXHJcbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgIGRhcmtlbigkYnJhbmQtZGFuZ2VyLCAxMCUpOyAgXHJcbiRzdGF0ZS1kYW5nZXItYmc6ICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLWRhbmdlciwgMjYlKTtcclxuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtZGFuZ2VyLCAyNiUpO1xyXG5cclxuJHN0YXRlLXdhcm5pbmctdGV4dDogICAgICAgICAgICAgZGFya2VuKCRicmFuZC13YXJuaW5nLCAxMCUpOyAgXHJcbiRzdGF0ZS13YXJuaW5nLWJnOiAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGJyYW5kLXdhcm5pbmcsIDI3JSk7ICBcclxuJHN0YXRlLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgbGlnaHRlbigkYnJhbmQtd2FybmluZywgMjclKTtcclxuXHJcbi8vPT0gQnV0dG9uc1xyXG4vL1xyXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXHJcblxyXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWw7XHJcblxyXG4kYnRuLWRlZmF1bHQtY29sb3I6ICAgICAgICAgICAgICAjMzMzO1xyXG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmO1xyXG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjO1xyXG5cclxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcclxuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnk7XHJcbiRidG4tcHJpbWFyeS1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXByaW1hcnktYmcsIDUlKTtcclxuXHJcbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmY7XHJcbiRidG4tc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAgICRicmFuZC1zdWNjZXNzO1xyXG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSk7XHJcblxyXG4kYnRuLWluZm8tY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmO1xyXG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbztcclxuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpO1xyXG5cclxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZjtcclxuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmc7XHJcbiRidG4td2FybmluZy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXdhcm5pbmctYmcsIDUlKTtcclxuXHJcbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmY7XHJcbiRidG4tZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAgICRicmFuZC1kYW5nZXI7XHJcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpO1xyXG5cclxuJGJ0bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQ7XHJcblxyXG5cclxuLy89PSBBbGVydHNcclxuLy9cclxuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cclxuXHJcbiRhbGVydC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLWJnO1xyXG4kYWxlcnQtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0O1xyXG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXI7XHJcblxyXG4kYWxlcnQtaW5mby1iZzogICAgICAgICAgICAgICAkc3RhdGUtaW5mby1iZztcclxuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dDtcclxuJGFsZXJ0LWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyO1xyXG5cclxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmc7XHJcbiRhbGVydC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQ7XHJcbiRhbGVydC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlcjtcclxuXHJcbiRhbGVydC1kYW5nZXItYmc6ICAgICAgICAgICAgICRzdGF0ZS1kYW5nZXItYmc7XHJcbiRhbGVydC1kYW5nZXItdGV4dDogICAgICAgICAgICRzdGF0ZS1kYW5nZXItdGV4dDtcclxuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXI7XHJcblxyXG4vLz09IFByb2dyZXNzIGJhcnNcclxuLy9cclxuLy8jI1xyXG5cclxuLy8qKiBEZWZhdWx0IHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeTtcclxuLy8qKiBTdWNjZXNzIHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLXN1Y2Nlc3MtYmc6ICAgICAkYnJhbmQtc3VjY2VzcztcclxuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxyXG4kcHJvZ3Jlc3MtYmFyLXdhcm5pbmctYmc6ICAgICAkYnJhbmQtd2FybmluZztcclxuLy8qKiBEYW5nZXIgcHJvZ3Jlc3MgYmFyIGNvbG9yXHJcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXI7XHJcbi8vKiogSW5mbyBwcm9ncmVzcyBiYXIgY29sb3JcclxuJHByb2dyZXNzLWJhci1pbmZvLWJnOiAgICAgICAgJGJyYW5kLWluZm87XHJcblxyXG4vLz09IFBhbmVsc1xyXG4vL1xyXG4vLyMjXHJcblxyXG4kcGFuZWwtcHJpbWFyeS10ZXh0OiAgICAgICAgICAjZmZmO1xyXG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeTtcclxuJHBhbmVsLXByaW1hcnktaGVhZGluZy1iZzogICAgJGJyYW5kLXByaW1hcnk7XHJcblxyXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0O1xyXG4kcGFuZWwtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXI7XHJcbiRwYW5lbC1zdWNjZXNzLWhlYWRpbmctYmc6ICAgICRzdGF0ZS1zdWNjZXNzLWJnO1xyXG5cclxuJHBhbmVsLWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dDtcclxuJHBhbmVsLWluZm8tYm9yZGVyOiAgICAgICAgICAgJHN0YXRlLWluZm8tYm9yZGVyO1xyXG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZztcclxuXHJcbiRwYW5lbC13YXJuaW5nLXRleHQ6ICAgICAgICAgICRzdGF0ZS13YXJuaW5nLXRleHQ7XHJcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlcjtcclxuJHBhbmVsLXdhcm5pbmctaGVhZGluZy1iZzogICAgJHN0YXRlLXdhcm5pbmctYmc7XHJcblxyXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQ7XHJcbiRwYW5lbC1kYW5nZXItYm9yZGVyOiAgICAgICAgICRzdGF0ZS1kYW5nZXItYm9yZGVyO1xyXG4kcGFuZWwtZGFuZ2VyLWhlYWRpbmctYmc6ICAgICAkc3RhdGUtZGFuZ2VyLWJnO1xyXG5cclxuLy89PSBMaXN0IEdyb3VwXHJcbiRsaXN0LWdyb3VwLWRpc2FibGVkLWJnOiAgICAgIFx0XHQkZ2VuZXJhbC1wYW5lbC1iZy1jb2xvcjtcclxuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6XHRcdFx0bGlnaHRlbigkZ2VuZXJhbC1wYW5lbC1mb250LWNvbG9yLCA0NSUpO1xyXG4kbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yOlx0bGlnaHRlbigkZ2VuZXJhbC1wYW5lbC1mb250LWNvbG9yLCA0NSUpOyIsIi8vXHJcbi8vIE1peGluc1xyXG4vLyBCYXNlZCBvbiBUd2l0dGVyIEJvb3RzdHJhcCdzIF9taXhpbmdzLnNjc3NcclxuXHJcbkBtaXhpbiBjbGVhcmZpeCgpIHtcclxuICAmOmJlZm9yZSxcclxuICAmOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiIFwiOyAvLyAxXHJcbiAgICBkaXNwbGF5OiB0YWJsZTsgLy8gMlxyXG4gIH1cclxuICAmOmFmdGVyIHtcclxuICAgIGNsZWFyOiBib3RoO1xyXG4gIH1cclxufVxyXG5cclxuLy8gT3BhY2l0eVxyXG5cclxuQG1peGluIG9wYWNpdHkoJHZhbHVlLCAkaW1wb3J0YW50OiAnJykge1xyXG4gIG9wYWNpdHk6ICR2YWx1ZSAjeyRpbXBvcnRhbnR9O1xyXG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0jeyR2YWx1ZSAqIDEwMH0pICN7JGltcG9ydGFudH07XHJcbn1cclxuXHJcbi8vIEJvcmRlciByYWRpdXMuXHJcblxyXG5AbWl4aW4gYm9yZGVyLXJhZGl1cygkcmFkaXVzLCAkaW1wb3J0YW50OiAnJykge1xyXG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogJHJhZGl1cyN7JGltcG9ydGFudH07XHJcbiAgLW1vei1ib3JkZXItcmFkaXVzOiAkcmFkaXVzI3skaW1wb3J0YW50fTtcclxuICAtbXMtYm9yZGVyLXJhZGl1czogJHJhZGl1cyN7JGltcG9ydGFudH07ICBcclxuICAtby1ib3JkZXItcmFkaXVzOiAkcmFkaXVzI3skaW1wb3J0YW50fTsgICAgICBcclxuICBib3JkZXItcmFkaXVzOiAkcmFkaXVzI3skaW1wb3J0YW50fTsgXHJcbn1cclxuXHJcbi8vIFBsYWNlaG9sZGVyIHRleHRcclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcclxuICAmOjotbW96LXBsYWNlaG9sZGVyICAgICAgICAgICB7IGNvbG9yOiAkY29sb3I7IG9wYWNpdHk6IDE7IH0gLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XHJcbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgICAgICAgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xyXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxyXG59XHJcblxyXG4vLyBEcm9wIHNoYWRvd3NcclxuLy8gQnkgZGVmYXVsdCBzZXQgdG86IG5vbmVcclxuQG1peGluIGJveC1zaGFkb3coJHNoYWRvdykge1xyXG4gIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcclxuICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XHJcbn1cclxuXHJcbi8vIExhYmVsc1xyXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xyXG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcclxuICAmW2hyZWZdIHtcclxuICAgICY6aG92ZXIsXHJcbiAgICAmOmZvY3VzIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiAgZWFzZS1vdXQoJGR1cmF0aW9uOiA0NTBtcywgJHByb3BlcnR5OiBhbGwsICRkZWxheTogMG1zKSB7XHJcbiAgdHJhbnNpdGlvbjogJHByb3BlcnR5ICRkdXJhdGlvbiBjdWJpYy1iZXppZXIoMC4yMywgMSwgMC4zMiwgMSkgJGRlbGF5O1xyXG59XHJcblxyXG5AbWl4aW4gIHB1bHNhdGUoJGFuaW1hdGlvbi1uYW1lLCAkc3RhcnQtc2l6ZTogMC43NSwgJGVuZC1zaXplOiAxLCAkZHVyYXRpb246IDEuNXMpIHtcclxuICBAa2V5ZnJhbWVzIFwiI3skYW5pbWF0aW9uLW5hbWV9XCIge1xyXG4gICAgMCUsIDEwMCUge1xyXG4gICAgICB0cmFuc2Zvcm06IHNjYWxlKCRzdGFydC1zaXplKTtcclxuICAgIH1cclxuICAgIDUwJSB7XHJcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoJGVuZC1zaXplKTtcclxuICAgIH1cclxuICB9ICBcclxuICBhbmltYXRpb246ICRhbmltYXRpb24tbmFtZSAkZHVyYXRpb24gZWFzZSAwcyBpbmZpbml0ZTtcclxufVxyXG5cclxuLyogQ3ViaWMgQmV6aWVyIFRyYW5zaXRpb24gKi9cclxuQG1peGluIGN1YmljLXRyYW5zaXRpb24gKCRkZWxheSwgJGR1cmF0aW9uLCAkcHJvcGVydHkpIHtcclxuICAgIHRyYW5zaXRpb246IHtcclxuICAgICAgICBkdXJhdGlvbjogJGR1cmF0aW9uO1xyXG4gICAgICAgIHByb3BlcnR5OiAkcHJvcGVydHk7XHJcbiAgICAgICAgdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43LCAxLCAwLjcsIDEpO1xyXG4gICAgfSBcclxufVxyXG5cclxuQG1peGluIGJhY2tncm91bmQtb3BhY2l0eSgkY29sb3IsICRvcGFjaXR5OiAwLjMpIHtcclxuICAgIGJhY2tncm91bmQ6IHJnYmEoJGNvbG9yLCAkb3BhY2l0eSk7XHJcbn1cclxuXHJcbkBtaXhpbiB2ZXJ0aWNhbC1hbGlnbigkcG9zaXRpb246IGFic29sdXRlKSB7XHJcbiAgcG9zaXRpb246ICN7JHBvc2l0aW9ufTtcclxuICB0b3A6IDUwJTtcclxuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxuICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zZm9ybSgkZGVncmVlKSB7ICBcclxuICB3ZWJraXQtdHJhbnNmb3JtOiAkZGVncmVlO1xyXG4gIC1tb3otdHJhbnNmb3JtOiAkZGVncmVlO1xyXG4gIC1tcy10cmFuc2Zvcm06ICRkZWdyZWU7XHJcbiAgLW8tdHJhbnNmb3JtOiAkZGVncmVlO1xyXG4gIHRyYW5zZm9ybTogJGRlZ3JlZTtcclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJHRyYW5zaXRpb24pIHtcclxuICB3ZWJraXQtdHJhbnNpdGlvbjogI3skdHJhbnNpdGlvbn07XHJcbiAgLW1vei10cmFuc2l0aW9uOiAjeyR0cmFuc2l0aW9ufTtcclxuICAtbXMtdHJhbnNpdGlvbjogI3skdHJhbnNpdGlvbn07XHJcbiAgLW8tdHJhbnNpdGlvbjogI3skdHJhbnNpdGlvbn07XHJcbiAgdHJhbnNpdGlvbjogI3skdHJhbnNpdGlvbn07XHJcbn1cclxuXHJcbkBtaXhpbiBidXJnZXItaWNvbigkbGluZS1jb2xvciwgJGxpbmUtY29sb3ItaG92ZXIsICRsaW5lLXdpZHRoLCAkbGluZS1oZWlnaHQsICRiYXNlLXRvcDogLTVweCwgJGFib3ZlLXRvcDogNXB4LCAkYmVsb3ctdG9wOiAtNXB4KSB7XHJcbiAgPiBzcGFuIHtcclxuICAgIG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgYmFja2dyb3VuZDogJGxpbmUtY29sb3ItaG92ZXI7XHJcbiAgICAgICY6YmVmb3JlLFxyXG4gICAgICAmOmFmdGVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiAkbGluZS1jb2xvci1ob3ZlcjtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgPiBzcGFuLFxyXG4gID4gc3BhbjpiZWZvcmUsXHJcbiAgPiBzcGFuOmFmdGVyIHtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHdpZHRoOiAkbGluZS13aWR0aDtcclxuICAgIGhlaWdodDogJGxpbmUtaGVpZ2h0O1xyXG4gICAgYmFja2dyb3VuZDogJGxpbmUtY29sb3I7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICB0b3A6ICRiYXNlLXRvcDtcclxuICAgIHRyYW5zaXRpb246IGFsbCBlYXNlIC4zcztcclxuICB9XHJcblxyXG4gID4gc3BhbjpiZWZvcmUsXHJcbiAgPiBzcGFuOmFmdGVyIHtcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGxlZnQ6IDA7XHJcbiAgICBjb250ZW50OiAnJztcclxuICB9XHJcblxyXG4gID4gc3BhbjpiZWZvcmUge1xyXG4gICAgdG9wOiAkYWJvdmUtdG9wO1xyXG4gIH1cclxuXHJcbiAgPiBzcGFuOmFmdGVyIHtcclxuICAgIHRvcDogJGJlbG93LXRvcDtcclxuICB9XHJcblxyXG4gICYudGgtdG9nZ2xlLWV4aXQge1xyXG4gICAgPiBzcGFuIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgIH1cclxuXHJcbiAgICA+IHNwYW46YWZ0ZXIge1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtJGJhc2UtdG9wKSByb3RhdGVaKDQ1ZGVnKSk7XHJcbiAgICB9XHJcblxyXG4gICAgPiBzcGFuOmJlZm9yZSB7XHJcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKCRiYXNlLXRvcCkgcm90YXRlWigtNDVkZWcpKTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBidXJnZXItaWNvbi1jb2xvci1jaGFuZ2UoJGxpbmUtY29sb3IsICRsaW5lLWNvbG9yLWhvdmVyKSB7XHJcbiAgPiBzcGFuLFxyXG4gID4gc3BhbjpiZWZvcmUsXHJcbiAgPiBzcGFuOmFmdGVyIHtcclxuICAgIGJhY2tncm91bmQ6ICRsaW5lLWNvbG9yO1xyXG4gIH1cclxuXHJcbiAgPiBzcGFuIHtcclxuICAgICY6aG92ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkbGluZS1jb2xvci1ob3ZlcjtcclxuICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgIGJhY2tncm91bmQ6ICRsaW5lLWNvbG9yLWhvdmVyO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmLnRoLXRvZ2dsZS1leGl0IHtcclxuICAgID4gc3BhbiB7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gY2xvc2UtaWNvbigkaWNvbi1zaXplLCAkbGluZS1zaXplLCAkY29sb3IsICRjb2xvci1ob3Zlcikge1xyXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgd2lkdGg6ICRpY29uLXNpemU7XHJcbiAgaGVpZ2h0OiAkaWNvbi1zaXplO1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgb3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xyXG5cclxuICAmOmhvdmVyIHtcclxuICAgIGN1cnNvcjogcG9pbnRlcjtcclxuXHJcbiAgICAmOjpiZWZvcmUsXHJcbiAgICAmOjphZnRlciB7XHJcbiAgICAgIGJhY2tncm91bmQ6ICRjb2xvci1ob3ZlcjtcclxuICAgIH1cclxuICB9XHJcblxyXG4gICY6OmJlZm9yZSxcclxuICAmOjphZnRlciB7XHJcbiAgICBjb250ZW50OiAnJztcclxuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgIGhlaWdodDogJGxpbmUtc2l6ZTtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdG9wOiA1MCU7XHJcbiAgICBsZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXRvcDogJGxpbmUtc2l6ZSAvIDI7XHJcbiAgICBiYWNrZ3JvdW5kOiAkY29sb3I7XHJcbiAgfVxyXG5cclxuICAmOjpiZWZvcmUge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg0NWRlZykpO1xyXG4gIH1cclxuXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtNDVkZWcpKTtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBjbG9zZS1pY29uLWNvbG9yLWNoYW5nZSgkY29sb3IsICRjb2xvci1ob3Zlcikge1xyXG4gICY6aG92ZXIge1xyXG4gICAgJjo6YmVmb3JlLFxyXG4gICAgJjo6YWZ0ZXIge1xyXG4gICAgICBiYWNrZ3JvdW5kOiAkY29sb3ItaG92ZXI7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAmOjpiZWZvcmUsXHJcbiAgJjo6YWZ0ZXIge1xyXG4gICAgYmFja2dyb3VuZDogJGNvbG9yO1xyXG4gIH1cclxufVxyXG4iLCIvLyMjICBEZWZhdWx0IExheW91dCBTZXR0aW5nc1xyXG4vL1xyXG4vLyBEZWZpbmUgbGF5b3V0IGVsZW1lbnQgd2lkdGggYW5kIGhlaWdodC5cclxuXHJcbi8vIEhlYWRlclxyXG4kaGVhZGVyLWhlaWdodDogICAgICAgICAgICAgXHRcdFx0XHQgICAgICAgICAgICBcdFx0XHRcdDY4cHggICFkZWZhdWx0OyAvLyBoZWFkZXIgaGVpZ2h0IG9uIHRhYmxlIGFuZCBkZXNrdG9wIHZpZXcuIGRlZmF1bHQ6IDQycHhcclxuJGhlYWRlci1oZWlnaHQteHM6ICAgICAgICAgICAgIFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQoJGhlYWRlci1oZWlnaHQgKiAyKSAhZGVmYXVsdDsgLy8gaGVhZGVyIGhlaWdodCBvbiBtb2JpbGUgdmlld1xyXG4kaGVhZGVyLWhlaWdodC1tb2JpbGU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0NnB4ICAhZGVmYXVsdDsgXHJcblxyXG4kaGVhZGVyLWxvZ28taGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRcdFx0MTRweDtcclxuJGhlYWRlci1tZW51LXRvZ2dsZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0XHRcdDIwcHg7IFxyXG4kaGVhZGVyLW1lbnUtdG9nZ2xlci1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIFx0XHRcdFx0MjBweDtcclxuJGhlYWRlci1zaWRlYmFyLXRvZ2dsZXItbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0XHRcdCgkaGVhZGVyLWhlaWdodCAtICRoZWFkZXItbWVudS10b2dnbGVyLWhlaWdodCAtIDJweCkgLyAyIDAgMCAwICFkZWZhdWx0O1xyXG4kaGVhZGVyLXJlc3BvbnNpdmUtdG9nZ2xlci1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAgIFx0XHRcdFx0KCRoZWFkZXItaGVpZ2h0IC0gJGhlYWRlci1tZW51LXRvZ2dsZXItaGVpZ2h0KSAvIDIgMTRweCAwIDZweCAhZGVmYXVsdDsgXHJcbiRoZWFkZXItbG9nby1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcdFx0XHRcdFx0KCRoZWFkZXItaGVpZ2h0IC0gJGhlYWRlci1sb2dvLWhlaWdodCkgLyAyIDAgMCAwICFkZWZhdWx0OyAgLy8gYWRqc3V0IGxvZ28ncyBtYXJnaW4gdG9wLiBkZWZhdWx0OiAtMXB4XHJcblxyXG4kaGVhZGVyLXBhZ2UtYWN0aW9ucy1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxN3B4IDAgMTVweCAxNXB4O1xyXG5cclxuJGhlYWRlci10b3AtbWVudS1nZW5lcmFsLWl0ZW0tcGFkZGluZzogICAgICBcdFx0XHRcdFx0XHRcdDI4cHggMTZweCAxOXB4IDE2cHggIWRlZmF1bHQ7ICAgLy8gYWRqdXN0IHRvcCBtZW51IGdlbmVyYWwgZWxlbWVudHMgcGFkZGluZy4gZGVmYXVsdDogMTVweCAxMHB4IDdweCAxMHB4XHJcbiRoZWFkZXItdG9wLW1lbnUtZ2VuZXJhbC1pdGVtLXBhZGRpbmctb24tbW9iaWxlOiAgICAgICBcdFx0XHRcdFx0MjhweCAxMHB4IDE5cHggMTBweCAhZGVmYXVsdDsgIC8vIGFkanVzdCB0b3AgbWVudSBnZW5lcmFsIGVsZW1lbnRzIHBhZGRpbmcgbW9iaWxlLiBkZWZhdWx0OiAxNXB4IDEwcHggN3B4IDEwcHhcclxuXHJcbiRoZWFkZXItdG9wLW1lbnUtdXNlci1pdGVtLXBhZGRpbmc6ICAgICAgICAgXHRcdFx0XHRcdFx0XHQyNHB4IDEycHggMjRweCAxMnB4ICFkZWZhdWx0OyAvLyBhZGp1c3QgdG9wIG1lbnUgdXNlciBiYXIgZWxlbWVudCBwYWRkaW5nLiBkZWZhdWx0OiA2cHggMHB4IDZweCA2cHhcclxuJGhlYWRlci10b3AtbWVudS11c2VyLWl0ZW0tcGFkZGluZy1vbi1tb2JpbGU6ICAgICAgICAgXHRcdFx0XHRcdDI0cHggNnB4IDI0cHggNnB4ICFkZWZhdWx0OyAgLy8gYWRqdXN0IHRvcCBtZW51IHVzZXIgYmFyIGVsZW1lbnQgcGFkZGluZyBvbiBtb2JpbGUuIGRlZmF1bHQ6IDZweCAwcHggNnB4IDRweFxyXG4kaGVhZGVyLXRvcC1tZW51LWxhbmd1YWdlLWl0ZW0tcGFkZGluZzogICAgIFx0XHRcdFx0XHRcdFx0MjRweCAxMnB4IDI0cHggMTJweCAhZGVmYXVsdDsgIC8vIGFkanVzdCB0b3AgbWVudSBsYW5ndWFnZSBiYXIgZWxlbWVudCBwYWRkaW5nLiBkZWZhdWx0OiAxMXB4IDFweCAxMXB4IDVweFxyXG4kaGVhZGVyLXRvcC1tZW51LWxhbmd1YWdlLWl0ZW0tcGFkZGluZy1vbi1tb2JpbGU6XHRcdFx0XHRcdFx0MjRweCA2cHggMjRweCA2cHggIWRlZmF1bHQ7ICAvLyBhZGp1c3QgdG9wIG1lbnUgbGFuZ3VhZ2UgYmFyIGVsZW1lbnQgcGFkZGluZy4gZGVmYXVsdDogMTFweCAwcHggMTFweCA0cHhcclxuJGhlYWRlci10b3AtbWVudS1nZW5lcmFsLWl0ZW0tYmFkZ2UtdG9wOiAgICAgICAgICAgICAgICBcdFx0XHRcdDE3cHggIWRlZmF1bHQ7ICAvLyBhZGp1c3QgdG9wIG1lbnUgZ2VuZXJhbCBlbGVtZW50cyBiYWRnZSB0b3AgcG9zaXRpb24uIGRlZmF1bHQ6IDhweFxyXG4kaGVhZGVyLXRvcC1tZW51LWljb24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxOXB4ICFkZWZhdWx0OyAgIFxyXG5cclxuJGhlYWRlci10b3AtbWVudS11c2VyLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDsgXHJcbiRoZWFkZXItdG9wLW1lbnUtdXNlci1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQwMCAhZGVmYXVsdDsgXHJcbiRoZWFkZXItdG9wLW1lbnUtdXNlci1kcm9wZG93bi1saW5rLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7ICAgIFxyXG4kaGVhZGVyLXRvcC1tZW51LXVzZXItZHJvcGRvd24tbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAzMDAgIWRlZmF1bHQ7IFxyXG5cclxuJGhlYWRlci1ob3ItbWVudS1nZW5lcmFsLWl0ZW0tcGFkZGluZzogICAgIFx0XHRcdFx0XHRcdFx0XHQxM3B4IDEwcHggIWRlZmF1bHQ7ICAvLyBhZGp1c3QgaG9yIG1lbnUgZWxlbWVudHMgcGFkZGluZyB0b3AuIGRlZmF1bHQ6IDExcHggMTBweFxyXG4kaGVhZGVyLWhvci1tZW51LXN1Ym1lbnUtaXRlbS1wYWRkaW5nOiBcdFx0XHRcdCBcdFx0XHRcdFx0OXB4IDEwcHggIWRlZmF1bHQ7ICAvLyBhZGp1c3QgaG9yIG1lbnUgZWxlbWVudHMgcGFkZGluZyB0b3AuIGRlZmF1bHQ6IDdweCAxMHB4XHJcbiRoZWFkZXItaG9yLW1lbnUtc3VibWVudS1pdGVtLWFycm93LXRvcDogICAgICAgICAgICAgICAgXHRcdFx0XHQ5cHg7ICAvLyBhZGp1c3QgaG9yIG1lbnUgZHJvcGRvd24gbWVudSdzIGFycm93LiBkZWZhdWx0OiA5cHggICAgIFxyXG4kaGVhZGVyLWhvci1tZW51LXNlYXJjaC10b2dnbGVyLWJ1dHRvbi1wYWRkaW5nOiAgICAgIFx0XHRcdFx0XHQxNXB4IDIycHggMTVweCAyMnB4ICFkZWZhdWx0OyAgLy8gYWRqdXN0IGhvciBtZW51IGVsZW1lbnRzIHBhZGRpbmcgdG9wLiBkZWZhdWx0OiAxM3B4IDIycHggMTFweCAyMnB4XHJcbiRoZWFkZXItaG9yLW1lbnUtc2VhcmNoLWJ1dHRvbi1wYWRkaW5nOiAgICAgXHRcdCBcdFx0XHRcdFx0N3B4IDIwcHggIWRlZmF1bHQ7ICAvLyBhZGp1c3QgaG9yIG1lbnUgZWxlbWVudHMgcGFkZGluZyB0b3AuIGRlZmF1bHQ6IDVweCAyMHB4XHJcbiRoZWFkZXItaG9yLW1lbnUtc2VhcmNoLWlucHV0LW1hcmdpbjogICAgXHRcdFx0IFx0XHRcdFx0XHQ3cHggMCAwIDAgIWRlZmF1bHQ7ICAvLyBhZGp1c3QgaG9yIG1lbnUgZWxlbWVudHMgcGFkZGluZyB0b3AuIGRlZmF1bHQ6IDVweCAwIDAgMFxyXG5cclxuLy8gSG9yaXpvbnRhbCBtZW51IGZvbnRcclxuJGhlYWRlci1ob3ItbWVudS1kZWZhdWx0LWxpbmstZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDtcclxuJGhlYWRlci1ob3ItbWVudS1kZWZhdWx0LWxpbmstZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsICFkZWZhdWx0O1xyXG4kaGVhZGVyLWhvci1tZW51LWRyb3Bkb3duLW1lbnUtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAxNHB4ICFkZWZhdWx0O1xyXG4kaGVhZGVyLWhvci1tZW51LWRyb3Bkb3duLW1lbnUtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XHJcbiRoZWFkZXItaG9yLW1lbnUtbWVnYS1tZW51LWhlYWRlci1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7ICAgXHJcbiRoZWFkZXItaG9yLW1lbnUtbWVnYS1tZW51LWhlYWRlci1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDsgICAgXHJcblxyXG4vLyBTaWRlYmFyXHJcbiRzaWRlYmFyLXdpZHRoOiAgICAgICAgICAgICBcdFx0XHRcdFx0XHRcdFx0XHRcdFx0MTk1cHggIWRlZmF1bHQ7IC8vIHNpZGViYXIgd2lkdGguIGRlZmF1bHQ6MjM1cHhcclxuJHNpZGViYXItY29sbGFwc2VkLXdpZHRoOiAgIFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQ1NHB4ICAhZGVmYXVsdDsgLy8gbWluaW1pemVkL2NvbGxhcHNlZCBzaWRlYmFyIHdpZHRoLiBkZWZhdWx0OjM1cHhcclxuJHNpZGViYXItY29sbGFwc2VkLXN1Ym1lbnUtd2lkdGgtb24taG92ZXI6XHRcdFx0XHRcdFx0XHRcdCgkc2lkZWJhci13aWR0aCAtIDEpICFkZWZhdWx0OyAvLyBzdWIgbWVudSB3aWR0aCBkaXNwbGF5ZWQgb24gaG92ZXIgaW4gY29sbGFwc2VkIHNpZGViYXIgbW9kZS4gZGVmYXVsdDoyMTBweFxyXG4kc2lkZWJhci1sb2dvLWNvbnRhaW5lci13aWR0aDogIFx0XHRcdFx0XHRcdFx0XHRcdFx0JHNpZGViYXItd2lkdGggIWRlZmF1bHQ7IC8vIGxvZ28gY29udGFpbmVyIHdpZHRoLiBOb3JtYWxseSBzYW1lIHdpdGggc2lkZWJhci13aWR0aC5cclxuJHNpZGViYXItbG9nby1jb250YWluZXItd2lkdGgteHM6IFx0XHRcdFx0XHRcdFx0XHRcdFx0MTEwcHggIWRlZmF1bHQ7IC8vIGxvZ28gY29udGFpbmVyIHdpZHRoIGluIG1vYmlsZSBwb3J0cmFpdCB2aWV3LiBkZWZhdWx0OjExMHB4LlxyXG4kc2lkZWJhci1sb2dvLWNvbnRhaW5lci13aWR0aC14eHM6IFx0XHRcdFx0XHRcdFx0XHRcdFx0MTAwcHggIWRlZmF1bHQ7IC8vIGxvZ28gY29udGFpbmVyIHdpZHRoIGluIG1vYmlsZSBsYW5kc3BhY2Ugdmlldy4gZGVmYXVsdDoxMDBweC5cclxuXHJcbiRzaWRlYmFyLW1lbnUtbGluay1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzcHggIWRlZmF1bHQ7XHJcbiRzaWRlYmFyLW1lbnUtbGluay1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwMCAhZGVmYXVsdDtcclxuJHNpZGViYXItbWVudS1saW5rLWljb24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTZweCAhZGVmYXVsdDtcclxuJHNpZGViYXItbWVudS1saW5rLWh1Z2UtaWNvbi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjRweCAhZGVmYXVsdDtcclxuJHNpZGViYXItbWVudS1zdWItbWVudS1saW5rLWljb24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDtcclxuXHJcbi8vIFBhZ2UgY29udGVudFxyXG4kcGFnZS1jb250ZW50LW1pbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgIFx0XHRcdFx0XHRcdFx0NjAwcHggIWRlZmF1bHQ7IC8vIGRlZmF1bHQgcGFnZSBjb250ZW50J3MgbWluIGhlaWdodC4gZGVmYXVsdDo2MDBweC5cclxuJHBhZ2UtY29udGVudC1zb2xpZC1iZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI0YxRjNGQSAhZGVmYXVsdDsgLy8gY29udGVudCBzb2xpZCBiZyBjb2xvci4gZGVmYXVsdDojRjBGMkY3LlxyXG5cclxuLy8gUGFnZSBmb290ZXJcclxuJHBhZ2UtZm9vdGVyLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzNweCAhZGVmYXVsdDtcclxuXHJcbi8vIFotaW5kZXggbWFzdGVyIGxpc3RcclxuJHppbmRleC1oZWFkZXItZml4ZWQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOTk5NSAhZGVmYXVsdDtcclxuJHppbmRleC1oZWFkZXItc3RhdGljOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOTk5NSAhZGVmYXVsdDtcclxuJHppbmRleC1xdWljay1zaWRlYmFyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOTk5NiAhZGVmYXVsdDtcclxuJHppbmRleC1zaWRlYmFyLWZpeGVkOiAgICAgXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0MTAwMDAgIWRlZmF1bHQ7IFxyXG4kemluZGV4LWZvb3Rlci1maXhlZDogICAgICBcdFx0XHRcdFx0XHRcdFx0XHRcdFx0XHQxMDAwMCAhZGVmYXVsdDtcclxuJHppbmRleC1zaWRlYmFyLXN1Ym1lbnU6ICAgXHRcdFx0XHRcdFx0XHRcdFx0XHRcdFx0MjAwMCAhZGVmYXVsdDsgXHJcbiR6aW5kZXgtZ28tdG8tdG9wOiAgIFx0XHRcdFx0XHRcdFx0XHRcdFx0XHRcdCAgICAxMDAwMSAhZGVmYXVsdDsgXHJcblxyXG5cclxuLy8jIyBMYXlvdXQgaW1hZ2UgIHBhdGhzXHJcbiRsYXlvdXQtaW1nLXBhdGg6ICAgICAgICAgICBcdFx0XHRcdFx0XHRcdFx0XHRcdFx0Jy4uL2ltZy8nICFkZWZhdWx0OyIsIiAgICAvLyMjIEJhc2UgdGhlbWUgY29sb3IgZmlsZVxyXG5cclxuICAgIC8qKioqKioqKioqKiBcclxuICAgIFBhZ2UgSGVhZGVyXHJcbiAgICAqKioqKioqKioqKi9cclxuXHJcbiAgICAvKiBIZWFkZXIgc2VhcmNoIGJhciwgdG9nZ2xlciBidXR0b24gJiB0b3AgbWVudSAqL1xyXG4gICAgLnBhZ2UtaGVhZGVyLm5hdmJhciB7XHJcblxyXG4gICAgICAgIC5wYWdlLWxvZ28ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLWxvZ28tYmctY29sb3I7XHJcblxyXG4gICAgICAgICAgICBpbWcge1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiBcclxuICAgICAgICAucGFnZS10b3AgeyBcclxuICAgICAgICAgICAgYm94LXNoYWRvdzogJGhlYWRlci10b3Atc2hhZG93O1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLXRvcC1iZy1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wYWdlLWFjdGlvbnMge1xyXG5cclxuICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICAgICAgXHJcbiAgICAgICAgLyogVG9wIG5vdGlmaWNhdGlvbiBtZW51L2JhciAqL1xyXG4gICAgICAgIC50b3AtbWVudSB7XHJcbiAgICAgICAgICAgIC5uYXZiYXItbmF2IHtcclxuICAgICAgICAgICAgICAgID4gbGkuZHJvcGRvd24ge1xyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItdG9wLW1lbnUtYmctaG92ZXItY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGhlYWRlci10b3AtbWVudS1pY29uLWZvbnQtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5iYWRnZS5iYWRnZS1kZWZhdWx0IHsgICAgICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItdG9wLW1lbnUtYmFkZ2UtYmctY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGhlYWRlci10b3AtbWVudS1iYWRnZS1mb250LWNvbG9yOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJi5vcGVuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyLXRvcC1tZW51LWJnLWhvdmVyLWNvbG9yLW9uLWRyb3Bkb3duLW9wZW47XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGhlYWRlci10b3AtbWVudS1leHRlbmRlZC1kcm9wZG93bi1ib3JkZXItY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLyogRXh0ZW5kZWQgRHJvcGRvd25zICovXHJcbiAgICAgICAgICAgICAgICA+IGxpLmRyb3Bkb3duLWV4dGVuZGVkIHtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkaGVhZGVyLXRvcC1tZW51LWV4dGVuZGVkLWRyb3Bkb3duLWJvcmRlci1jb2xvcjsgICAgICAgXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiBkYXJrZW4oJGhlYWRlci10b3AtbWVudS1leHRlbmRlZC1kcm9wZG93bi1ib3JkZXItY29sb3IsIDUlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRoZWFkZXItdG9wLW1lbnUtZXh0ZW5kZWQtZHJvcGRvd24taGVhZGVyLWJnLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGxpLmV4dGVybmFsIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICRoZWFkZXItdG9wLW1lbnUtZXh0ZW5kZWQtZHJvcGRvd24taGVhZGVyLWJnLWNvbG9yOyAgXHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBoMyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItdG9wLW1lbnUtZXh0ZW5kZWQtZHJvcGRvd24taGVhZGVyLWZvbnQtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstY29sb3I7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGxpbmstaG92ZXItY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9ICBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWxpc3Qge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRoZWFkZXItdG9wLW1lbnUtZXh0ZW5kZWQtZHJvcGRvd24taXRlbS1ib3JkZXItY29sb3IgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItdG9wLW1lbnUtZXh0ZW5kZWQtZHJvcGRvd24taXRlbS1mb250LWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLXRvcC1tZW51LWV4dGVuZGVkLWRyb3Bkb3duLWl0ZW0tYmctY29sb3Itb24taG92ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSAgIFxyXG5cclxuICAgICAgICAgICAgICAgIC8qIE5vdGlmaWNhdGlvbiAqL1xyXG4gICAgICAgICAgICAgICAgPiBsaS5kcm9wZG93bi1ub3RpZmljYXRpb24geyAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1saXN0IHsgICAgICAgICAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLXRvcC1tZW51LW5vdGlmaWNhdGlvbi10aW1lLWJnLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC50aW1lIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJGhlYWRlci10b3AtbWVudS1ub3RpZmljYXRpb24tdGltZS1iZy1jb2xvciwgNSUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvKiBJbmJveCAqL1xyXG4gICAgICAgICAgICAgICAgPiBsaS5kcm9wZG93bi1pbmJveCB7XHJcbiAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tdG9nZ2xlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiAuY2lyY2xlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRicmFuZC1tYWluLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRicmFuZC1tYWluLWZvbnQtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmNvcm5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50ICRicmFuZC1tYWluLWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWxpc3Qge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnN1YmplY3Qge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5mcm9tIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItdG9wLW1lbnUtaW5ib3gtZHJvcGRvd24tZnJvbS1mb250LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH0gICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAvKiBUYXNrcyAqL1xyXG4gICAgICAgICAgICAgICAgPiBsaS5kcm9wZG93bi10YXNrcyB7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtbGlzdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAucHJvZ3Jlc3Mge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkZXItdG9wLW1lbnUtdGFzay1kcm9wZG93bi1wcm9ncmVzcy1iZy1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvKiBVc2VyICovXHJcbiAgICAgICAgICAgICAgICA+IGxpLmRyb3Bkb3duLXVzZXIge1xyXG4gICAgICAgICAgICAgICAgICAgID4gLmRyb3Bkb3duLXRvZ2dsZSB7ICAgICAgICAgICAgICAgICAgICBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLnVzZXJuYW1lIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLXRvcC1tZW51LXVzZXItZm9udC1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLXRvcC1tZW51LXVzZXItZm9udC1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tbWVudSB7ICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxOTVweDtcclxuICAgICAgICAgICAgICAgICAgICB9IFxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgIC8qIExhbmd1YWdlICovXHJcbiAgICAgICAgICAgICAgICA+IGxpLmRyb3Bkb3duLWxhbmd1YWdlIHtcclxuICAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgICAgICA+IC5kcm9wZG93bi10b2dnbGUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5sYW5nbmFtZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGhlYWRlci10b3AtbWVudS11c2VyLWZvbnQtY29sb3I7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAvKiBEYXJrIHZlcnNpb24gKi9cclxuICAgICAgICAgICAgICAgID4gbGkuZHJvcGRvd24tZGFyayB7XHJcbiAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWRhcmstYmctY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWJnLWNvbG9yOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gbGkuZXh0ZXJuYWwge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWhlYWRlci1iZy1jb2xvcjtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGgzIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWhlYWRlci1mb250LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRsaW5rLWNvbG9yLCAxMSUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVudS1kZWZhdWx0LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1saXN0IHsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWRhcmstaXRlbS1mb250LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWl0ZW0tYm9yZGVyLWNvbG9yICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItdG9wLW1lbnUtZHJvcGRvd24tZGFyay1pdGVtLWljb24tY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJGhlYWRlci10b3AtbWVudS1kcm9wZG93bi1kYXJrLWl0ZW0tYmctY29sb3Itb24taG92ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICYuZHJvcGRvd24tbWVudS1kZWZhdWx0IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID4gbGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLmRpdmlkZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWRhcmstZGVmYXVsdC1tZW51LWRpdmlkZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgID4gbGkuZHJvcGRvd24tbm90aWZpY2F0aW9uLmRyb3Bkb3duLWRhcmsge1xyXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtbGlzdCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGxpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAudGltZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWRhcmstbm90aWZpY2F0aW9uLXRpbWUtYmctY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLnRpbWUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkaGVhZGVyLXRvcC1tZW51LWRyb3Bkb3duLWRhcmstbm90aWZpY2F0aW9uLXRpbWUtYmctY29sb3IsIDUlKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0gXHJcblxyXG4gICAgICAgIC8qIEhlYWRlciBzZWFlY2ggYm94ICovICBcclxuICAgICAgICAuc2VhcmNoLWZvcm0ge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xyXG5cclxuICAgICAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkaGVhZGVyLXNlYXJjaC1mb250LWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlcigkaGVhZGVyLXNlYXJjaC1wbGFjZWhvbGRlci1mb250LWNvbG9yKTsgXHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgLmlucHV0LWdyb3VwLWJ0biB7IFxyXG4gICAgICAgICAgICAgICAgICAgIC5idG4uc3VibWl0IHsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRoZWFkZXItc2VhcmNoLWZvbnQtY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gICAgXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgXHJcbiAgICAgICAgICAgICYub3BlbiB7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAvKiBQYWdlIHNpZGViYXIgKi9cclxuXHJcbiAgICAucGFnZS1zaWRlYmFyLWNsb3NlZC5wYWdlLXNpZGViYXItZml4ZWQgLnBhZ2Utc2lkZWJhcjpob3ZlcixcclxuICAgIC5wYWdlLXNpZGViYXIge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLWJnLWNvbG9yO1xyXG5cclxuICAgICAgICAvKiBEZWZhdWx0IHNpZGViYXIgKi9cclxuICAgICAgICAucGFnZS1zaWRlYmFyLW1lbnUge1xyXG5cclxuICAgICAgICAgICAgLyogMXN0IGxldmVsIGxpbmtzICovXHJcbiAgICAgICAgICAgID4gbGkgeyAgXHJcbiAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBsaWdodGVuKCRzaWRlYmFyLWJnLWNvbG9yLCAzJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzaWRlYmFyLW1lbnUtbGluay1mb250LWNvbG9yOyAgXHJcblxyXG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgeyAvKiA5OTFweCAqL1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRlbigkc2lkZWJhci1iZy1jb2xvciwgOCUpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzaWRlYmFyLW1lbnUtbGluay1pY29uLWZvbnQtY29sb3I7IFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiBpW2NsYXNzXj1cImljb24tXCJdLFxyXG4gICAgICAgICAgICAgICAgICAgID4gaVtjbGFzcyo9XCJpY29uLVwiXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIEBpZiAkdGhlbWUtbmFtZSA9PSBcImxpZ2h0XCIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkc2lkZWJhci1tZW51LWxpbmstaWNvbi1mb250LWNvbG9yLCAxNSUpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSBpZiAkdGhlbWUtbmFtZSA9PSBcImxpZ2h0MlwiIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJHNpZGViYXItbWVudS1saW5rLWljb24tZm9udC1jb2xvciwgMTUlKTsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRzaWRlYmFyLW1lbnUtbGluay1pY29uLWZvbnQtY29sb3IsIDUlKTsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfSBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiAuYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5vcGVuOmJlZm9yZSB7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2lkZWJhci1tZW51LWFycm93LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIsXHJcbiAgICAgICAgICAgICAgICAmLm9wZW4ge1xyXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkc2lkZWJhci1iZy1jb2xvciwgMyUpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNpZGViYXItbWVudS1saW5rLWZvbnQtY29sb3Itb24taG92ZXI7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzaWRlYmFyLW1lbnUtbGluay1pY29uLWZvbnQtY29sb3Itb24taG92ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmFycm93IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5vcGVuOmJlZm9yZSB7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNpZGViYXItbWVudS1hcnJvdy1jb2xvci1vbi1ob3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSxcclxuICAgICAgICAgICAgICAgICYuYWN0aXZlLm9wZW4ge1xyXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IGRhcmtlbigkc2lkZWJhci1iZy1jb2xvciwgNCUpOyAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2lkZWJhci1tZW51LWxpbmstZm9udC1jb2xvci1vbi1hY3RpdmU7ICBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRzaWRlYmFyLWJnLWNvbG9yLCAyJSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNpZGViYXItbWVudS1saW5rLWljb24tZm9udC1jb2xvci1vbi1hY3RpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmFycm93IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5vcGVuOmJlZm9yZSB7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNpZGViYXItbWVudS1hcnJvdy1jb2xvci1vbi1hY3RpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcclxuICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gXHJcblxyXG4gICAgICAgICAgICAvKiBBbGwgbGlua3MgKi9cclxuXHJcbiAgICAgICAgICAgIGxpIHtcclxuICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPiAuYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgJi5vcGVuOmJlZm9yZSB7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2lkZWJhci1tZW51LWFycm93LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gLmFycm93IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5vcGVuOmJlZm9yZSB7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2lkZWJhci1tZW51LWFycm93LWNvbG9yLW9uLWhvdmVyO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcclxuICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICYub3BlbjpiZWZvcmUgeyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNpZGViYXItbWVudS1hcnJvdy1jb2xvci1vbi1hY3RpdmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC5wYWdlLXNpZGViYXItY2xvc2VkICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgLnN1Yi1tZW51IHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHNpZGViYXItYmctY29sb3IsIDYlKTsgIFxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAuc3ViLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgPiBsaSB7XHJcbiAgICAgICAgICAgICAgICAgICAgPiBhIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtbGluay1mb250LWNvbG9yO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkc2lkZWJhci1tZW51LXN1Yi1tZW51LWxpbmstaWNvbi1mb250LWNvbG9yO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGlbY2xhc3NePVwiaWNvbi1cIl0sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gaVtjbGFzcyo9XCJpY29uLVwiXSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgJHRoZW1lLW5hbWUgPT0gXCJsaWdodFwiIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtbGluay1pY29uLWZvbnQtY29sb3IsIDE1JSk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBAZWxzZSBpZiAkdGhlbWUtbmFtZSA9PSBcImxpZ2h0MlwiIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtbGluay1pY29uLWZvbnQtY29sb3IsIDE1JSk7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gQGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtbGluay1pY29uLWZvbnQtY29sb3IsIDUlKTsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9IFxyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPiAuYXJyb3cge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmLm9wZW46YmVmb3JlIHsgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRzaWRlYmFyLW1lbnUtYXJyb3ctY29sb3I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9ICBcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgJjpob3ZlcixcclxuICAgICAgICAgICAgICAgICAgICAmLm9wZW4sXHJcbiAgICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHNpZGViYXItbWVudS1zdWItbWVudS1saW5rLWJnLWNvbG9yLW9uLWhvdmVyICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPiBpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNpZGViYXItbWVudS1zdWItbWVudS1saW5rLWljb24tZm9udC1jb2xvci1vbi1ob3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBAaWYgJHRoZW1lLW5hbWUgPT0gXCJsaWdodFwiIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkc2lkZWJhci1tZW51LXN1Yi1tZW51LWxpbmstaWNvbi1mb250LWNvbG9yLCAxNSUpOyBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIGlmICR0aGVtZS1uYW1lID09IFwibGlnaHQyXCIge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogZGFya2VuKCRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtbGluay1pY29uLWZvbnQtY29sb3IsIDE1JSk7ICBcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9IEBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IGxpZ2h0ZW4oJHNpZGViYXItbWVudS1zdWItbWVudS1saW5rLWljb24tZm9udC1jb2xvciwgMjAlKTsgIFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+IC5hcnJvdyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpiZWZvcmUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJi5vcGVuOmJlZm9yZSB7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHNpZGViYXItbWVudS1hcnJvdy1jb2xvci1vbi1ob3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9ICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgIH0gICAgXHJcblxyXG4gICAgLyoqKioqKlxyXG4gICAgUGFnZSBGb290ZXIgXHJcbiAgICAqKioqKiovXHJcblxyXG4gICAgLnBhZ2UtZm9vdGVyIHtcclxuICAgICAgICAucGFnZS1mb290ZXItaW5uZXIge1xyXG4gICAgICAgICAgICBjb2xvcjogJGZvb3Rlci1mbHVpZC1mb250LWNvbG9yO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnBhZ2UtZm9vdGVyLWZpeGVkICYge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9vdGVyLWZpeGVkLWJnLWNvbG9yOyBcclxuIFxyXG4gICAgICAgICAgICAucGFnZS1mb290ZXItaW5uZXIge1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRmb290ZXItZGVmYXVsdC1mb250LWNvbG9yOyAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLnBhZ2UtYm94ZWQge1xyXG4gICAgICAgIC5wYWdlLWZvb3RlciB7XHJcbiAgICAgICAgICAgIC5wYWdlLWZvb3Rlci1pbm5lciB7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJGZvb3Rlci1kZWZhdWx0LWZvbnQtY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIC5wYWdlLWZvb3Rlci1maXhlZCAmIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXItZml4ZWQtYmctY29sb3I7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgeyAvKiA5OTJweCAqL1xyXG5cclxuICAgICAgICAvKiBTaWRlYmFyIG1lbnUgY2xvc2VkICovXHJcbiAgICAgICAgLnBhZ2Utc2lkZWJhci1tZW51LnBhZ2Utc2lkZWJhci1tZW51LWhvdmVyLXN1Ym1lbnUge1xyXG4gICAgICAgICAgICBsaTpob3ZlciB7XHJcbiAgICAgICAgICAgICAgICA+IC5zdWItbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCByZ2JhKCRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtYm94LXNoYWRvdy1jb2xvciwgMC4yKTsgICBcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSAgIFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLnBhZ2Utc2lkZWJhci1tZW51LnBhZ2Utc2lkZWJhci1tZW51LWNsb3NlZCB7XHJcbiAgICAgICAgICAgID4gbGk6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCByZ2JhKCRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtYm94LXNoYWRvdy1jb2xvciwgMC4yKTtcclxuXHJcbiAgICAgICAgICAgICAgICA+IC5zdWItbWVudSB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogNXB4IDVweCByZ2JhKCRzaWRlYmFyLW1lbnUtc3ViLW1lbnUtYm94LXNoYWRvdy1jb2xvciwgMC4yKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSAgICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgLyogRml4ZWQgU2lkZWJhciAqL1xyXG5cclxuICAgICAgICAucGFnZS1zaWRlYmFyLWZpeGVkOm5vdCgucGFnZS1mb290ZXItZml4ZWQpIHtcclxuICAgICAgICAgICAgLnBhZ2UtY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucGFnZS1mb290ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2UtY29udGVudC1zb2xpZC1iZy1jb2xvcjtcclxuXHJcbiAgICAgICAgICAgICAgICAucGFnZS1mb290ZXItaW5uZXIge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAvKiBCb3hlZCBMYXlvdXQgKi9cclxuXHJcbiAgICAgICAgLnBhZ2UtYm94ZWQge1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZm9yLW1pbi05OTJweC1wYWdlLWJveGVkLWJnLWNvbG9yICFpbXBvcnRhbnQ7XHJcblxyXG4gICAgICAgICAgICAvKiBQYWdlIGNvbnRhaW5lciAqL1xyXG4gICAgICAgICAgICAucGFnZS1jb250YWluZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNpZGViYXItYmctY29sb3I7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYucGFnZS1zaWRlYmFyLXJldmVyc2VkIHtcclxuICAgICAgICAgICAgICAgIC5wYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICYucGFnZS1zaWRlYmFyLWZpeGVkIHtcclxuICAgICAgICAgICAgICAgIC5wYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICAgICAgJi5wYWdlLXNpZGViYXItcmV2ZXJzZWQucGFnZS1zaWRlYmFyLWZpeGVkIHtcclxuICAgICAgICAgICAgICAgIC5wYWdlLWNvbnRhaW5lciB7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDA7XHJcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcblxyXG4gICAgICAgICAvKiBTaWRlYmFyIE1lbnUgV2lyaCBIb3ZlcmFibGUgU3VibWVudSAqL1xyXG5cclxuICAgICAgICAucGFnZS1zaWRlYmFyLW1lbnUtaG92ZXItc3VibWVudSB7ICBcclxuICAgICAgICAgICAgbGkge1xyXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7IFxyXG4gICAgICAgICAgICAgICAgICAgIGEge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICA+IC5hcnJvdyB7ICAgXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6OHB4IHNvbGlkICRzaWRlYmFyLW1lbnUtaG92ZXItc3ViLW1lbnUtYmctY29sb3I7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnBhZ2Utc2lkZWJhci1yZXZlcnNlZCAmIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItbGVmdDo4cHggc29saWQgJHNpZGViYXItbWVudS1ob3Zlci1zdWItbWVudS1iZy1jb2xvcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgPiAuc3ViLW1lbnUge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkc2lkZWJhci1tZW51LWhvdmVyLXN1Yi1tZW51LWJnLWNvbG9yICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgfSAgICAgICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7IC8qIDk5MXB4ICovXHJcbiAgICAgICAgLnBhZ2UtY29udGFpbmVyIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHBhZ2UtY29udGVudC1zb2xpZC1iZy1jb2xvcjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC5wYWdlLWhlYWRlci5uYXZiYXIge1xyXG4gICAgICAgICAgICBib3gtc2hhZG93OiAkaGVhZGVyLXRvcC1zaGFkb3c7IFxyXG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xyXG5cclxuICAgICAgICAgICAgLyogVG9wIG1lbnUgKi8gIFxyXG4gICAgICAgICAgICAudG9wLW1lbnUge1xyXG5cclxuICAgICAgICAgICAgICAgIC5uYXZiYXItbmF2IHtcclxuICAgICAgICAgICAgICAgICAgICA+IGxpLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tdG9nZ2xlOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkaGVhZGVyLXRvcC1tZW51LWJnLWhvdmVyLWNvbG9yLCAxJSk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAucGFnZS10b3Age1xyXG4gICAgICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHsgLyogNzY3cHggKi9cclxuXHJcbiAgICAgICAgLnBhZ2UtaGVhZGVyLm5hdmJhciB7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRoZWFkZXItbG9nby1iZy1jb2xvcjsgXHJcblxyXG4gICAgICAgICAgICAvKiBUb3AgbWVudSAqLyAgXHJcbiAgICAgICAgICAgIC50b3AtbWVudSB7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgIC5uYXZiYXItbmF2IHtcclxuICAgICAgICAgICAgICAgICAgICA+IGxpLmRyb3Bkb3duIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgPiAuZHJvcGRvd24tdG9nZ2xlOmhvdmVyIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkaGVhZGVyLXRvcC1tZW51LWJnLWhvdmVyLWNvbG9yLCAzJSk7IFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfSBcclxuXHJcbi8qKioqXHJcbiBDU1MzIFNwaW5uZXIgQmFyICBcclxuKioqKi8gIFxyXG5cclxuLnBhZ2Utc3Bpbm5lci1iYXIgPiBkaXYsICBcclxuLmJsb2NrLXNwaW5uZXItYmFyID4gZGl2IHtcclxuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGJyYW5kLW1haW4tY29sb3IsIDUlKTtcclxufVxyXG5cclxuXHJcbiAgICAvKioqKlxyXG4gICAgQm9ieVxyXG4gICAgKioqKi8gICAgIFxyXG5cclxuICAgIGJvZHkge1xyXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzaWRlYmFyLWJnLWNvbG9yOyBcclxuICAgIH1cclxuIFxyXG4gICAgYm9keS5wYWdlLWJveGVkIHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJnLWNvbG9yOyBcclxuICAgIH1cclxuXHJcblxyXG4iXSwibWFwcGluZ3MiOiJBb0MyRUEsNkJBQTZCO0FFekV6Qjs7Z0JBRVk7QUFFWixrREFBa0Q7QUFDbEQsQUFBWSxZQUFBLEFBQUEsT0FBTyxDQUFDO0VBb0JoQiwrQkFBK0I7RUFpUC9CLHVCQUF1QixFQTRCMUI7RUFqU0QsQUFFSSxZQUZRLEFBQUEsT0FBTyxDQUVmLFVBQVUsQ0FBQztJQUNQLFVBQVUsRXRDQzZDLE9BQU8sR3NDSWpFO0lBUkwsQUFLUSxZQUxJLEFBQUEsT0FBTyxDQUVmLFVBQVUsQ0FHTixHQUFHLENBQUM7TUFDQSxLQUFLLEVBQUUsSUFBSyxHQUNmO0VBUFQsQUFVSSxZQVZRLEFBQUEsT0FBTyxDQVVmLFNBQVMsQ0FBQztJQUNOLFVBQVUsRXRDQWtELEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxxQkFBSTtJc0NDakYsVUFBVSxFdENGWSxPQUFPLEdzQ0doQztFQWJMLEFBc0JRLFlBdEJJLEFBQUEsT0FBTyxDQXFCZixTQUFTLENBQ0wsV0FBVyxDQUFDO0lBOEJSLHdCQUF3QjtJQThDeEIsa0JBQWtCO0lBcUJsQixXQUFXO0lBd0JYLFdBQVc7SUFZWCxVQUFVO0lBa0JWLGNBQWM7SUFVZCxrQkFBa0IsRUEyRXJCO0lBbFFULEFBd0JnQixZQXhCSixBQUFBLE9BQU8sQ0FxQmYsU0FBUyxDQUNMLFdBQVcsR0FDTCxFQUFFLEFBQUEsU0FBUyxDQUNULGdCQUFnQixBQUNYLE1BQU0sQ0FBQztNQUNKLGdCQUFnQixFdENQc0IsT0FBTyxHc0NRaEQ7SUEzQnJCLEFBNkJzQixZQTdCVixBQUFBLE9BQU8sQ0FxQmYsU0FBUyxDQUNMLFdBQVcsR0FDTCxFQUFFLEFBQUEsU0FBUyxDQUNULGdCQUFnQixHQUtWLENBQUMsQ0FBQztNQUNBLEtBQUssRXRDUGlDLE9BQU8sR3NDUWhEO0lBL0JyQixBQWlDMEIsWUFqQ2QsQUFBQSxPQUFPLENBcUJm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QSxPQUFPLENBQUM7SUFDaEIsVUFBVSxFdENybkI2QyxPQUFPO0lzQ3VuQjlELGNBQWMsRUFXakI7SUFkRCxBQVFrQyxZQVJ0QixBQUFBLE9BQU8sQ0FJZixTQUFTLENBRUwsV0FBVyxHQUNMLEVBQUUsQUFBQSxTQUFTLEdBQ1AsZ0JBQWdCLEFBQUEsTUFBTSxDQUFDO01BQ3JCLGdCQUFnQixFQUFFLE9BQU0sR0FDM0I7O0FBT3pCOztLQUVLO0FBRUwsQUFBb0IsaUJBQUgsR0FBRyxHQUFHO0FBQ3ZCLEFBQXFCLGtCQUFILEdBQUcsR0FBRyxDQUFDO0VBQ3JCLFVBQVUsRUFBRSxPQUFPLEdBQ3RCOztBQUdHOztTQUVLO0FBRUwsQUFBQSxJQUFJLENBQUM7RUFDRCxnQkFBZ0IsRXRDdmxCZ0QsT0FBTSxHc0N3bEJ6RTs7QUFFRCxBQUFJLElBQUEsQUFBQSxXQUFXLENBQUM7RUFDZCxnQkFBZ0IsRXRDcHBCK0MsT0FBTyxHc0NxcEJ2RSIsIm5hbWVzIjpbXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0= */
