.header .logobar {
  background: #f3f3f3;
  border-bottom: 1px solid #e7e7e7;
}
.header .logobar .logobar-i {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  position: relative;
  height: 75px;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i {
    height: 50px;
    margin-bottom: 41px;
    padding-bottom: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .toggle-nav-w {
    display: block;
  }
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav {
  position: relative;
  cursor: pointer;
  height: 34px;
  width: 34px;
  border: 1px solid #e1e1e1;
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav {
  position: absolute;
  left: 6px;
  top: 15px;
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav span,
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav span:before,
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav span:after {
  cursor: pointer;
  border-radius: 1px;
  height: 2px;
  width: 20px;
  background: #7a7a7a;
  position: absolute;
  display: block;
  content: '';
  transition: all 300ms ease-in-out;
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav span:before {
  top: -7px;
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav span:after {
  bottom: -7px;
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav.active span {
  background-color: transparent;
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav.active span:before,
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav.active span:after {
  top: 0;
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav.active span:before {
  transform: rotate(45deg);
}
.header .logobar .logobar-i .toggle-nav-w .toggle-nav .icon-nav.active span:after {
  transform: rotate(-45deg);
}
.header .logobar .logobar-i .logo-search {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex: 1;
      flex: 1;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .logo-search {
    position: static;
  }
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .logo-search .link-logo {
    position: absolute;
    left: 50%;
    margin-left: -60px;
  }
}
.header .logobar .logobar-i .logo-search .link-logo .img-logo {
  width: 170px;
  height: auto;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .logo-search .link-logo .img-logo {
    width: 120px;
  }
}
.header .logobar .logobar-i .logo-search .form-search {
  position: relative;
  margin: 0 25px;
  -ms-flex: 1;
      flex: 1;
}
.header .logobar .logobar-i .logo-search .form-search i.fas {
  position: absolute;
  margin-top: 11px;
  margin-left: 12px;
}
.header .logobar .logobar-i .logo-search .form-search .input-search {
  width: 100%;
  height: 38px;
  padding: 10px 20px 10px 36px;
  border: 2px solid #545454;
  border-radius: 4px;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .logo-search .form-search .input-search {
    border: 0;
    height: 32px;
  }
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .logo-search .form-search {
    padding: 7px 20px;
    border-radius: 4px 4px 0 0;
    background: #003f8f;
    position: absolute;
    bottom: -42px;
    left: 0;
    margin-left: 0;
    width: 100%;
  }
  .header .logobar .logobar-i .logo-search .form-search .icon-search {
    margin-top: 15px;
  }
}
.header .logobar .logobar-i .login-w {
  margin-left: auto;
  margin-right: 6px;
}
.header .logobar .logobar-i .login-w .login {
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .login-w .login .login-i>.btn {
    padding: 0;
  }
}
.header .logobar .logobar-i .login-w .login .login-i {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
}
.header .logobar .logobar-i .login-w .login .login-i .btn {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}
.header .logobar .logobar-i .login-w .login .login-i .login-actions {
  z-index: 999;
  display: none;
  padding: 4px 4px 0;
  background: #8ba3cf;
  border-radius: 4px;
  position: absolute;
  min-width: 100%;
  -ms-flex-direction: column;
      flex-direction: column;
}
.header .logobar .logobar-i .login-w .login .login-i .login-actions .btn {
  margin-bottom: 5px;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .login-w .login .login-i .login-actions {
    right: 0;
    padding: 5px 10px 0;
  }
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .login-w .login .login-i .icon-w {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 4px;
    border: 1px solid #e1e1e1;
    top: -1px;
  }
}
.header .logobar .logobar-i .login-w .login .login-i .login-txt {
  padding-right: 3px;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .login-w .login .login-i .login-txt {
    display: none;
  }
}
.header .logobar .logobar-i .cart-w {
  margin-left: auto;
}
.header .logobar .logobar-i .cart-w .cart {
  position: relative;
}
.header .logobar .logobar-i .cart-w .cart .cart-i {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .cart-w .cart .cart-i .btn {
    padding: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .cart-w .cart .cart-i .icon-w {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 4px;
    border: 1px solid #e1e1e1;
    top: -1px;
  }
}
.header .logobar .logobar-i .cart-w .cart .cart-i .cart-txt {
  padding-right: 3px;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .cart-w .cart .cart-i .cart-txt {
    display: none;
  }
}
.header .logobar .logobar-i .cart-w .content-cart {
  position: absolute;
  display: none;
  z-index: 999;
  padding: 15px 15px;
  top: 52px;
  background: #fff;
  border: 1px solid #f3f3f3;
  border-radius: 4px;
}
.header .logobar .logobar-i .cart-w .content-cart:before {
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  border-left: 0.7rem solid transparent;
  border-right: 0.7rem solid transparent;
  border-bottom: 0.9rem solid #fff;
  top: -10px;
}
.header .logobar .logobar-i .cart-w .cart .content-cart.visible {
  display: -ms-flexbox;
  display: flex;
}
.header .logobar .logobar-i .cart-w .cart .content-cart {
  min-height: 243px;
  width: 322px;
  right: 0;
}
.header .logobar .logobar-i .cart-w .cart .content-cart:before {
  right: 105px;
}
@media only screen and (max-width: 1024px) {
  .header .logobar .logobar-i .cart-w .cart .content-cart:before {
    right: 12px;
  }
}
.header .logobar .logobar-i .cart-w .cart .content-cart .info-cart {
  color: #003f8f;
  font-size: 18px;
  padding: 0 30px;
}
.header .navbar .navbar-i {
  width: 100%;
  margin: 0;
  padding: 0;
}
.header .navbar .navbar-i a {
  text-decoration: none;
}
.header .navbar .navbar-i ul,
.header .navbar .navbar-i li {
  list-style: none;
}
.header .navbar .navbar-i .dropmenu.mobile {
  display: none;
}
.header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w {
  position: relative;
}
.header .navbar .navbar-i .dropmenu>a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  min-height: 32px;
  background: #003f8f;
  font-weight: bold;
  color: #fff;
  width: 100%;
  padding: 6px 12px;
}
.header .navbar .navbar-i .dropmenu>a span.caret {
  margin-left: 5px;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-item {
  padding: 0;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-item .dropmenu-child a {
  color: #003f8f;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-item .dropmenu-child .dropdown-toggle,
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-item .dropmenu-child .dropmenu-child a {
  min-height: 36px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-first>.dropmenu-child>a:hover {
  background: #daeaff;
  color: #003f8f;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-second>.dropmenu-child>a:hover {
  background: #daeaff;
  color: #003f8f;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-first>.dropmenu-child {
  border-bottom: 1px dotted #003f8f;
  background: #fff;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-first .dropmenu-child {
  border-width: 0 1px 1px 1px;
  border-style: solid solid dotted solid;
  border-color: #003f8f;
  background: #fff;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-first .dropmenu-child .link-first {
  -ms-flex: 1;
      flex: 1;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-first .dropmenu-child .link-open-second {
  width: 40px;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-first .dropmenu-child:first-child {
  border-top-width: 1px;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
}
.header .navbar .navbar-i .dropmenu .dropmenu-item-w .dropmenu-first .dropmenu-child:last-child {
  border-bottom-left-radius: 4px;
  border-bottom-right-radius: 4px;
  border-bottom-style: solid;
  border-bottom-width: 1px;
}
.header .navbar {
  margin-top: 25px;
}
.header .navbar .navbar-i .dropmenu.desktop {
  position: relative;
  width: calc(99.9% * 1/6 - (30px - 30px * 1/6));
}
.header .navbar .navbar-i .dropmenu.desktop:nth-child(1n) {
  float: left;
  margin-right: 30px;
  clear: none;
}
.header .navbar .navbar-i .dropmenu.desktop:last-child {
  margin-right: 0;
}
.header .navbar .navbar-i .dropmenu.desktop:nth-child(6n) {
  margin-right: 0;
  float: right;
}
.header .navbar .navbar-i .dropmenu.desktop:nth-child(6n + 1) {
  clear: both;
}
.header .navbar .navbar-i .dropmenu.desktop .dropmenu-item-w {
  display: none;
  position: absolute;
  margin-top: 1px;
  width: 100%;
}
.header .navbar .navbar-i .dropmenu.desktop .dropmenu-item-w .dropmenu-item {
  position: relative;
  z-index: 9999;
  margin-top: 0;
  width: 100%;
}
.header .navbar .navbar-i .dropmenu.desktop .dropmenu-item-w .dropmenu-first .dropmenu-child {
  display: -ms-flexbox;
  display: flex;
  position: relative;
  text-align: left;
}
.header .navbar .navbar-i .dropmenu.desktop .dropmenu-item-w .dropmenu-first .dropmenu-child a {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: start;
      justify-content: flex-start;
  font-weight: normal;
  font-size: 13px;
  white-space: normal !important;
  text-decoration: none;
  cursor: pointer;
  padding: 5px 10px;
}
.header .navbar .navbar-i .dropmenu.desktop .dropmenu-item-w .dropmenu-first .dropmenu-child a span {
  margin-left: 4px;
}
.header .navbar .navbar-i .dropmenu.desktop .dropmenu-item-w .dropmenu-first .dropmenu-second {
  display: none;
  position: absolute;
  top: -1px;
}
.header .navbar .navbar-i .dropmenu.desktop .dropmenu-item-w .dropmenu-first .dropmenu-second a {
  width: 100%;
  -ms-flex-pack: start;
      justify-content: flex-start;
}
@media only screen and (max-width: 1024px) {
  .header .navbar {
    display: none;
    height: calc(100vh - 6.15rem);
    overflow-y: scroll;
    background: #f3f3f3;
  }
  .header .navbar .navbar-i {
    padding-top: 20px;
  }
  .header .navbar .navbar-i .dropmenu.desktop {
    display: none;
  }
  .header .navbar .navbar-i .dropmenu.mobile {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-direction: column;
        flex-direction: column;
    position: relative;
    width: 100%;
    margin-bottom: 8px;
    padding: 6px 10px;
    cursor: pointer;
  }
  .header .navbar .navbar-i .dropmenu.mobile a {
    margin-bottom: 1px;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w {
    display: none;
    width: 100%;
    margin-top: -1px;
    margin-bottom: 3px;
    border: 1px solid #003f8f;
    border-radius: 4px;
    overflow: hidden;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w .dropmenu-first {
    border-top: 1px solid #003f8f;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w .dropmenu-first .dropmenu-child {
    background-color: #daeaff;
    border: none;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w .dropmenu-first .dropmenu-child .dropmenu-link-w {
    min-height: 41px;
    display: -ms-flexbox;
    display: flex;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w .dropmenu-first .dropmenu-child .dropmenu-link-w .link-first {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex: 1;
        flex: 1;
    padding: 0 15px;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w .dropmenu-first .dropmenu-child .dropmenu-link-w .dropdown-toggle {
    background: #daeaff;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w .dropmenu-first .dropmenu-child .dropmenu-second {
    display: none;
    border-top: 1px dotted #003f8f;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w .dropmenu-first .dropmenu-child .dropmenu-second .dropmenu-child {
    background: #fff;
  }
  .header .navbar .navbar-i .dropmenu.mobile .dropmenu-item-w .dropmenu-first .dropmenu-child .dropmenu-second .dropmenu-child a {
    -ms-flex-pack: start;
        justify-content: flex-start;
    padding: 0 15px;
  }
  .header .navbar .navbar-i .dropmenu.mobile .social-links {
    margin-top: 20px;
  }
  .header .navbar .navbar-i .dropmenu.mobile .social-links .social-link {
    display: -ms-inline-flexbox;
    display: inline-flex;
    -ms-flex-align: center;
        align-items: center;
    -ms-flex-pack: center;
        justify-content: center;
    width: 42px;
    height: 42px;
    margin: 0 5px;
  }
  .header .navbar .navbar-i .dropmenu.mobile .social-links .social-link i.fab {
    color: #003f8f;
    font-size: 28px;
  }
}
@keyframes pulse {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.3;
  }
  100% {
    opacity: 1;
  }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImhlYWRlci5zdHlsIiwiaGVhZGVyLmNzcyIsIi4uLy4uLy4uL25vZGVfbW9kdWxlcy9ydXB0dXJlL3J1cHR1cmUvaW5kZXguc3R5bCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTSTtFQUNJLG9CQUFBO0VBQ0EsaUNBQUE7Q0NSUDtBRFNPO0VBQ0kscUJBQUE7RUFBQSxjQUFBO0VBQ0EsdUJBQUE7TUFBQSxvQkFBQTtFQUNBLG1CQUFBO0VBQ0EsYUFBQTtDQ1BYO0FDc0lVO0VBQUE7SUY3SEssYUFBQTtJQUNBLG9CQUFBO0lBQ0Esa0JBQUE7R0NMYjtDQUNGO0FDK0hVO0VBQUE7SUZ4SFMsZUFBQTtHQ0hqQjtDQUNGO0FER2U7RUFDSSxtQkFBQTtFQUNBLGdCQUFBO0VBQ0EsYUFBQTtFQUNBLFlBQUE7RUFDQSwwQkFBQTtDQ0RuQjtBREVtQjtFQUNJLG1CQUFBO0VBQ0EsVUFBQTtFQUNBLFVBQUE7Q0NBdkI7QURDdUI7OztFQUdJLGdCQUFBO0VBQ0EsbUJBQUE7RUFDQSxZQUFBO0VBQ0EsWUFBQTtFQUNBLG9CQUFBO0VBQ0EsbUJBQUE7RUFDQSxlQUFBO0VBQ0EsWUFBQTtFQUNBLGtDQUFBO0NDQzNCO0FEQXVCO0VBQ0ksVUFBQTtDQ0UzQjtBRER1QjtFQUNJLGFBQUE7Q0NHM0I7QURGdUI7RUFDSSw4QkFBQTtDQ0kzQjtBREgyQjs7RUFFSSxPQUFBO0NDSy9CO0FESjJCO0VBQ0kseUJBQUE7Q0NNL0I7QURMMkI7RUFDSSwwQkFBQTtDQ08vQjtBRE5XO0VBQ0kscUJBQUE7RUFBQSxjQUFBO0VBQ0EsdUJBQUE7TUFBQSxvQkFBQTtFQUNBLFlBQUE7TUFBQSxRQUFBO0NDUWY7QUN5RVU7RUFBQTtJRi9FUyxpQkFBQTtHQ1VqQjtDQUNGO0FDb0VVO0VBQUE7SUY1RWEsbUJBQUE7SUFDQSxVQUFBO0lBQ0EsbUJBQUE7R0NZckI7Q0FDRjtBRFptQjtFQUNJLGFBQUE7RUFDQSxhQUFBO0NDY3ZCO0FDeURVO0VBQUE7SUZyRWlCLGFBQUE7R0NnQnpCO0NBQ0Y7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O1FBQUEsb0JBQUE7SUFDQSxZQUFBO1FBQUEsUUFBQTtJQUNBLGdCQUFBO0dDeUZyQztFRHhGaUM7SUFDSSxvQkFBQTtHQzBGckM7RUR6RjZCO0lBQ0ksY0FBQTtJQUNBLCtCQUFBO0dDMkZqQztFRDFGaUM7SUFDSSxpQkFBQTtHQzRGckM7RUQzRnFDO0lBQ0kscUJBQUE7UUFBQSw0QkFBQTtJQUNBLGdCQUFBO0dDNkZ6QztFRDNGaUI7SUFDSSxpQkFBQTtHQzZGckI7RUQ1RnFCO0lBQ0ksNEJBQUE7SUFBQSxxQkFBQTtJQUNBLHVCQUFBO1FBQUEsb0JBQUE7SUFDQSxzQkFBQTtRQUFBLHdCQUFBO0lBQ0EsWUFBQTtJQUNBLGFBQUE7SUFDQSxjQUFBO0dDOEZ6QjtFRDdGeUI7SUFDSSxlQUFBO0lBQ0EsZ0JBQUE7R0MrRjdCO0NBQ0Y7QUR4ZG1CO0VBQ2Q7SUFBSSxXQUFBO0dDMmRQO0VEMWRHO0lBQUssYUFBQTtHQzZkUjtFRDVkRztJQUFNLFdBQUE7R0MrZFQ7Q0FDRiIsImZpbGUiOiJoZWFkZXIuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIi4uL2dsb2JhbC9fX192YXJpYWJsZXNcIlxuXG4uaGVhZGVyXG4gICAgdmVuZG9ycyA9IG9mZmljaWFsXG4gICAgQGtleWZyYW1lcyBwdWxzZSB7XG4gICAgICAwJSB7b3BhY2l0eTogMTt9XG4gICAgICA1MCUge29wYWNpdHk6IC4zO31cbiAgICAgIDEwMCUge29wYWNpdHk6IDE7fVxuICAgIH1cbiAgICAubG9nb2JhclxuICAgICAgICBiYWNrZ3JvdW5kIGNpbnphXG4gICAgICAgIGJvcmRlci1ib3R0b20gMXB4IHNvbGlkIGNpbnphIC0gNSVcbiAgICAgICAgLmxvZ29iYXItaVxuICAgICAgICAgICAgZGlzcGxheSBmbGV4XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyXG4gICAgICAgICAgICBwb3NpdGlvbiByZWxhdGl2ZVxuICAgICAgICAgICAgaGVpZ2h0IDc1cHhcbiAgICAgICAgICAgICtiZWxvdygxMDI0cHgpXG4gICAgICAgICAgICAgICAgaGVpZ2h0IDUwcHhcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tIDQxcHhcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbSAwXG4gICAgICAgICAgICAudG9nZ2xlLW5hdi13XG4gICAgICAgICAgICAgICAgK2JlbG93KDEwMjRweClcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgICAgICAgIC50b2dnbGUtbmF2XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uIHJlbGF0aXZlXG4gICAgICAgICAgICAgICAgICAgIGN1cnNvciBwb2ludGVyXG4gICAgICAgICAgICAgICAgICAgIGhlaWdodCAzNHB4XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoIDM0cHhcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyIDFweCBzb2xpZCAjZTFlMWUxXG4gICAgICAgICAgICAgICAgICAgIC5pY29uLW5hdlxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gYWJzb2x1dGVcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgNnB4XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3AgMTVweFxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbixcbiAgICAgICAgICAgICAgICAgICAgICAgIHNwYW46YmVmb3JlLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbjphZnRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvciBwb2ludGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1cyAxcHhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQgMnB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGggMjBweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgIzYzNjM2MyArIDE1JVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRlbnQgJydcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uIGFsbCAzMDBtcyBlYXNlLWluLW91dFxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbjpiZWZvcmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3AgLTdweFxuICAgICAgICAgICAgICAgICAgICAgICAgc3BhbjphZnRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbSAtN3B4XG4gICAgICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSBzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvciB0cmFuc3BhcmVudFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wIDBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmJlZm9yZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm0gcm90YXRlKDQ1ZGVnKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtIHJvdGF0ZSgtNDVkZWcpXG4gICAgICAgICAgICAubG9nby1zZWFyY2hcbiAgICAgICAgICAgICAgICBkaXNwbGF5IGZsZXhcbiAgICAgICAgICAgICAgICBhbGlnbi1pdGVtcyBjZW50ZXJcbiAgICAgICAgICAgICAgICBmbGV4IDFcbiAgICAgICAgICAgICAgICArYmVsb3coMTAyNHB4KVxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogc3RhdGljXG4gICAgICAgICAgICAgICAgLmxpbmstbG9nb1xuICAgICAgICAgICAgICAgICAgICArYmVsb3coMTAyNHB4KVxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gYWJzb2x1dGVcbiAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQgNTAlXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdCAtNjBweFxuICAgICAgICAgICAgICAgICAgICAuaW1nLWxvZ29cbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoIDE3MHB4XG4gICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG9cbiAgICAgICAgICAgICAgICAgICAgICAgICtiZWxvdygxMDI0cHgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGggMTIwcHhcbiAgICAgICAgICAgICAgICAuZm9ybS1zZWFyY2hcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luIDAgMjVweFxuICAgICAgICAgICAgICAgICAgICBmbGV4IDFcbiAgICAgICAgICAgICAgICAgICAgaS5mYXNcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wIDExcHhcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0IDEycHhcbiAgICAgICAgICAgICAgICAgICAgLmlucHV0LXNlYXJjaFxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGggMTAwJVxuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0IDM4cHhcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDM2cHhcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICM1NDU0NTRcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1c1xuICAgICAgICAgICAgICAgICAgICAgICAgK2JlbG93KDEwMjRweClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXIgMFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodCAzMnB4XG4gICAgICAgICAgICAgICAgICAgICtiZWxvdygxMDI0cHgpXG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMjBweFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzIHJhZGl1cyAwIDBcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgY29sb3JwXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtNDJweFxuICAgICAgICAgICAgICAgICAgICAgICAgbGVmdCAwXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdCAwXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCAxMDAlXG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbi1zZWFyY2hcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wIDE1cHhcbiAgICAgICAgICAgIC5sb2dpbi13XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQgYXV0b1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodCA2cHhcbiAgICAgICAgICAgICAgICAubG9naW5cbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgICAgICAgICAgICAgICAgLmxvZ2luLWk+LmJ0blxuICAgICAgICAgICAgICAgICAgICAgICAgK2JlbG93KDEwMjRweClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nIDBcbiAgICAgICAgICAgICAgICAgICAgLmxvZ2luLWlcbiAgICAgICAgICAgICAgICAgICAgICAgIHVzZXItc2VsZWN0IG5vbmVcbiAgICAgICAgICAgICAgICAgICAgICAgIGN1cnNvciBwb2ludGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAuYnRuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBmbGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50IGNlbnRlclxuICAgICAgICAgICAgICAgICAgICAgICAgLmxvZ2luLWFjdGlvbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4IDk5OVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgbm9uZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmcgNHB4IDRweCAwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZCBjb2xvcnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzIHJhZGl1c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWluLXdpZHRoIDEwMCVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmJ0blxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tIDVweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICtiZWxvdygxMDI0cHgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0IDBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZyA1cHggMTBweCAwXG4gICAgICAgICAgICAgICAgICAgICAgICAuaWNvbi13XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgK2JlbG93KDEwMjRweClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBmbGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50IGNlbnRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCAzNHB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodCAzNHB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IHJhZGl1c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXIgMXB4IHNvbGlkICNlMWUxZTFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wIC0xcHhcbiAgICAgICAgICAgICAgICAgICAgICAgIC5sb2dpbi10eHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0IDNweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICtiZWxvdygxMDI0cHgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgbm9uZVxuICAgICAgICAgICAgLmNhcnQtd1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0IGF1dG9cbiAgICAgICAgICAgICAgICAuY2FydFxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiByZWxhdGl2ZVxuICAgICAgICAgICAgICAgICAgICAuY2FydC1pXG4gICAgICAgICAgICAgICAgICAgICAgICB1c2VyLXNlbGVjdCBub25lXG4gICAgICAgICAgICAgICAgICAgICAgICBjdXJzb3IgcG9pbnRlclxuICAgICAgICAgICAgICAgICAgICAgICAgK2JlbG93KDEwMjRweClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuYnRuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmcgMFxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24td1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICtiZWxvdygxMDI0cHgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgZmxleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudCBjZW50ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGggMzRweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQgMzRweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiByYWRpdXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyIDFweCBzb2xpZCAjZTFlMWUxXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcCAtMXB4XG4gICAgICAgICAgICAgICAgICAgICAgICAuY2FydC10eHRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0IDNweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICtiZWxvdygxMDI0cHgpXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgbm9uZVxuICAgICAgICAgICAgICAgIC5jb250ZW50LWNhcnRcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gYWJzb2x1dGVcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBub25lXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXggOTk5XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmcgMTVweCAxNXB4XG4gICAgICAgICAgICAgICAgICAgIHRvcCA1MnB4XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHdoaXRlXG4gICAgICAgICAgICAgICAgICAgIGJvcmRlciAxcHggc29saWQgY2luemFcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogcmFkaXVzXG4gICAgICAgICAgICAgICAgICAgICY6YmVmb3JlXG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJ1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9ja1xuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDBcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IC43cmVtIHNvbGlkIHRyYW5zcGFyZW50XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IC43cmVtIHNvbGlkIHRyYW5zcGFyZW50XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tIC45cmVtIHNvbGlkIHdoaXRlXG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0xMHB4XG4gICAgICAgICAgICAgICAgLmNhcnRcbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQtY2FydC52aXNpYmxlXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IGZsZXhcbiAgICAgICAgICAgICAgICAgICAgLmNvbnRlbnQtY2FydFxuICAgICAgICAgICAgICAgICAgICAgICAgbWluLWhlaWdodCAyNDNweFxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGggMzIycHhcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0IDBcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YmVmb3JlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEwNXB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgK2JlbG93KDEwMjRweClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQgMTJweFxuICAgICAgICAgICAgICAgICAgICAgICAgLmluZm8tY2FydFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yIGNvbG9ycFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZSAxOHB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZyAwIDMwcHhcblxuICAgIC8vIE1FTlUgR0xPQkFMXG4gICAgLm5hdmJhclxuICAgICAgICAubmF2YmFyLWlcbiAgICAgICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgICAgIG1hcmdpbiAwXG4gICAgICAgICAgICBwYWRkaW5nIDBcbiAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmVcbiAgICAgICAgICAgIHVsLCBsaVxuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGUgbm9uZVxuICAgICAgICAgICAgLmRyb3BtZW51Lm1vYmlsZVxuICAgICAgICAgICAgICAgIGRpc3BsYXkgbm9uZVxuICAgICAgICAgICAgICAgIC5kcm9wbWVudS1pdGVtLXdcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24gcmVsYXRpdmVcbiAgICAgICAgICAgIC5kcm9wbWVudT5hXG4gICAgICAgICAgICAgICAgZGlzcGxheSBmbGV4XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlclxuICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudCBjZW50ZXJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0IDMycHhcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kIGNvbG9ycFxuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0IGJvbGRcbiAgICAgICAgICAgICAgICBjb2xvciB3aGl0ZVxuICAgICAgICAgICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgICAgICAgICBwYWRkaW5nIDZweCAxMnB4XG4gICAgICAgICAgICAgICAgc3Bhbi5jYXJldFxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdCA1cHhcbiAgICAgICAgICAgIC5kcm9wbWVudVxuICAgICAgICAgICAgICAgIC5kcm9wbWVudS1pdGVtLXdcbiAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmcgMFxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWNoaWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvciBjb2xvcnBcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAuZHJvcGRvd24tdG9nZ2xlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wbWVudS1jaGlsZCBhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQgMzZweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IGZsZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYWxpZ24taXRlbXMgY2VudGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudCBjZW50ZXJcbiAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWZpcnN0Pi5kcm9wbWVudS1jaGlsZD5hOmhvdmVyXG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kIGNvbG9ycCArIDkwJVxuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3IgY29sb3JwXG4gICAgICAgICAgICAgICAgICAgIC5kcm9wbWVudS1zZWNvbmQ+LmRyb3BtZW51LWNoaWxkPmE6aG92ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgY29sb3JwICsgOTAlXG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvciBjb2xvcnBcbiAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWZpcnN0Pi5kcm9wbWVudS1jaGlsZFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZCBjb2xvcnBcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgd2hpdGVcbiAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWZpcnN0XG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcG1lbnUtY2hpbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItd2lkdGggMCAxcHggMXB4IDFweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1zdHlsZSBzb2xpZCBzb2xpZCBkb3R0ZWQgc29saWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItY29sb3IgY29sb3JwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZCB3aGl0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5saW5rLWZpcnN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZsZXggMVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5saW5rLW9wZW4tc2Vjb25kXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoIDQwcHhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3Atd2lkdGggMXB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXMgcmFkaXVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzIHJhZGl1c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzIHJhZGl1c1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1cyByYWRpdXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZSBzb2xpZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoIDFweFxuICAgIC8vIE1FTlUgREVTS1RPUFxuICAgIC5uYXZiYXJcbiAgICAgICAgbWFyZ2luLXRvcCAyNXB4XG4gICAgICAgIC5uYXZiYXItaVxuICAgICAgICAgICAgLmRyb3BtZW51LmRlc2t0b3BcbiAgICAgICAgICAgICAgICBwb3NpdGlvbiByZWxhdGl2ZVxuICAgICAgICAgICAgICAgIGxvc3QtY29sdW1uIDEvNlxuICAgICAgICAgICAgICAgIC5kcm9wbWVudS1pdGVtLXdcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBub25lXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uIGFic29sdXRlXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3AgMXB4XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWl0ZW1cbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uIHJlbGF0aXZlXG4gICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4IDk5OTlcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoIDEwMCVcbiAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWZpcnN0XG4gICAgICAgICAgICAgICAgICAgICAgICAuZHJvcG1lbnUtY2hpbGRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IGZsZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiByZWxhdGl2ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ24gbGVmdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBmbGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50IGZsZXgtc3RhcnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQgbm9ybWFsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZSAxM3B4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlIG5vcm1hbCFpbXBvcnRhbnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uIG5vbmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yIHBvaW50ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZyA1cHggMTBweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdCA0cHhcbiAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wbWVudS1zZWNvbmRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IG5vbmVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiBhYnNvbHV0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRvcCAtMXB4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCAxMDAlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudCBmbGV4LXN0YXJ0XG5cbiAgICAvLyBNRU5VIE1PQklMRVxuICAgIC5uYXZiYXJcbiAgICAgICAgK2JlbG93KDEwMjRweClcbiAgICAgICAgICAgIGRpc3BsYXkgbm9uZVxuICAgICAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNi4xNXJlbSlcbiAgICAgICAgICAgIG92ZXJmbG93LXk6IHNjcm9sbFxuICAgICAgICAgICAgYmFja2dyb3VuZDogY2luemFcbiAgICAgICAgICAgIC5uYXZiYXItaVxuICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wIDIwcHhcbiAgICAgICAgICAgICAgICAuZHJvcG1lbnUuZGVza3RvcFxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5IG5vbmVcbiAgICAgICAgICAgICAgICAuZHJvcG1lbnUubW9iaWxlXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgZmxleFxuICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyXG4gICAgICAgICAgICAgICAgICAgIGp1c3RpZnktY29udGVudCBjZW50ZXJcbiAgICAgICAgICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtblxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbiByZWxhdGl2ZVxuICAgICAgICAgICAgICAgICAgICB3aWR0aCAxMDAlXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b20gOHB4XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmcgNnB4IDEwcHhcbiAgICAgICAgICAgICAgICAgICAgY3Vyc29yIHBvaW50ZXJcbiAgICAgICAgICAgICAgICAgICAgYVxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbSAxcHhcbiAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWl0ZW0td1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBub25lXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aCAxMDAlXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wIC0xcHhcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b20gM3B4XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXIgMXB4IHNvbGlkIGNvbG9ycFxuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1cyByYWRpdXNcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93IGhpZGRlblxuICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWZpcnN0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcCAxcHggc29saWQgY29sb3JwXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWNoaWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3IgY29sb3JwICsgOTAlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlciBub25lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wbWVudS1saW5rLXdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQgNDFweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheSBmbGV4XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubGluay1maXJzdFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgZmxleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4IDFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nIDAgMTVweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3Bkb3duLXRvZ2dsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQgY29sb3JwICsgOTAlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5kcm9wbWVudS1zZWNvbmRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgbm9uZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXRvcCAxcHggZG90dGVkIGNvbG9ycFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLmRyb3BtZW51LWNoaWxkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZCB3aGl0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50IGZsZXgtc3RhcnRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZyAwIDE1cHhcblxuICAgICAgICAgICAgICAgICAgICAuc29jaWFsLWxpbmtzXG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wIDIwcHhcbiAgICAgICAgICAgICAgICAgICAgICAgIC5zb2NpYWwtbGlua1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXkgaW5saW5lLWZsZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAganVzdGlmeS1jb250ZW50IGNlbnRlclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoIDQycHhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQgNDJweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbiAwIDVweFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkuZmFiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yIGNvbG9ycFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemUgMjhweFxuIiwiLmhlYWRlciAubG9nb2JhciB7XG4gIGJhY2tncm91bmQ6ICNmM2YzZjM7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZTdlN2U3O1xufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDc1cHg7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkge1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA0MXB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLnRvZ2dsZS1uYXYtdyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAudG9nZ2xlLW5hdi13IC50b2dnbGUtbmF2IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGhlaWdodDogMzRweDtcbiAgd2lkdGg6IDM0cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNlMWUxZTE7XG59XG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLnRvZ2dsZS1uYXYtdyAudG9nZ2xlLW5hdiAuaWNvbi1uYXYge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDZweDtcbiAgdG9wOiAxNXB4O1xufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC50b2dnbGUtbmF2LXcgLnRvZ2dsZS1uYXYgLmljb24tbmF2IHNwYW4sXG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLnRvZ2dsZS1uYXYtdyAudG9nZ2xlLW5hdiAuaWNvbi1uYXYgc3BhbjpiZWZvcmUsXG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLnRvZ2dsZS1uYXYtdyAudG9nZ2xlLW5hdiAuaWNvbi1uYXYgc3BhbjphZnRlciB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMXB4O1xuICBoZWlnaHQ6IDJweDtcbiAgd2lkdGg6IDIwcHg7XG4gIGJhY2tncm91bmQ6ICM3YTdhN2E7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNvbnRlbnQ6ICcnO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG59XG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLnRvZ2dsZS1uYXYtdyAudG9nZ2xlLW5hdiAuaWNvbi1uYXYgc3BhbjpiZWZvcmUge1xuICB0b3A6IC03cHg7XG59XG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLnRvZ2dsZS1uYXYtdyAudG9nZ2xlLW5hdiAuaWNvbi1uYXYgc3BhbjphZnRlciB7XG4gIGJvdHRvbTogLTdweDtcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAudG9nZ2xlLW5hdi13IC50b2dnbGUtbmF2IC5pY29uLW5hdi5hY3RpdmUgc3BhbiB7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC50b2dnbGUtbmF2LXcgLnRvZ2dsZS1uYXYgLmljb24tbmF2LmFjdGl2ZSBzcGFuOmJlZm9yZSxcbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAudG9nZ2xlLW5hdi13IC50b2dnbGUtbmF2IC5pY29uLW5hdi5hY3RpdmUgc3BhbjphZnRlciB7XG4gIHRvcDogMDtcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAudG9nZ2xlLW5hdi13IC50b2dnbGUtbmF2IC5pY29uLW5hdi5hY3RpdmUgc3BhbjpiZWZvcmUge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG59XG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLnRvZ2dsZS1uYXYtdyAudG9nZ2xlLW5hdiAuaWNvbi1uYXYuYWN0aXZlIHNwYW46YWZ0ZXIge1xuICB0cmFuc2Zvcm06IHJvdGF0ZSgtNDVkZWcpO1xufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC5sb2dvLXNlYXJjaCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGZsZXg6IDE7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmxvZ28tc2VhcmNoIHtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmxvZ28tc2VhcmNoIC5saW5rLWxvZ28ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC02MHB4O1xuICB9XG59XG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmxvZ28tc2VhcmNoIC5saW5rLWxvZ28gLmltZy1sb2dvIHtcbiAgd2lkdGg6IDE3MHB4O1xuICBoZWlnaHQ6IGF1dG87XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmxvZ28tc2VhcmNoIC5saW5rLWxvZ28gLmltZy1sb2dvIHtcbiAgICB3aWR0aDogMTIwcHg7XG4gIH1cbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9nby1zZWFyY2ggLmZvcm0tc2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW46IDAgMjVweDtcbiAgZmxleDogMTtcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9nby1zZWFyY2ggLmZvcm0tc2VhcmNoIGkuZmFzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXJnaW4tdG9wOiAxMXB4O1xuICBtYXJnaW4tbGVmdDogMTJweDtcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9nby1zZWFyY2ggLmZvcm0tc2VhcmNoIC5pbnB1dC1zZWFyY2gge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzOHB4O1xuICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCAzNnB4O1xuICBib3JkZXI6IDJweCBzb2xpZCAjNTQ1NDU0O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmxvZ28tc2VhcmNoIC5mb3JtLXNlYXJjaCAuaW5wdXQtc2VhcmNoIHtcbiAgICBib3JkZXI6IDA7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICB9XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmxvZ28tc2VhcmNoIC5mb3JtLXNlYXJjaCB7XG4gICAgcGFkZGluZzogN3B4IDIwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgYmFja2dyb3VuZDogIzAwM2Y4ZjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAtNDJweDtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9nby1zZWFyY2ggLmZvcm0tc2VhcmNoIC5pY29uLXNlYXJjaCB7XG4gICAgbWFyZ2luLXRvcDogMTVweDtcbiAgfVxufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC5sb2dpbi13IHtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogNnB4O1xufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC5sb2dpbi13IC5sb2dpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9naW4tdyAubG9naW4gLmxvZ2luLWk+LmJ0biB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC5sb2dpbi13IC5sb2dpbiAubG9naW4taSB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmxvZ2luLXcgLmxvZ2luIC5sb2dpbi1pIC5idG4ge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9naW4tdyAubG9naW4gLmxvZ2luLWkgLmxvZ2luLWFjdGlvbnMge1xuICB6LWluZGV4OiA5OTk7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBhZGRpbmc6IDRweCA0cHggMDtcbiAgYmFja2dyb3VuZDogIzhiYTNjZjtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1pbi13aWR0aDogMTAwJTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9naW4tdyAubG9naW4gLmxvZ2luLWkgLmxvZ2luLWFjdGlvbnMgLmJ0biB7XG4gIG1hcmdpbi1ib3R0b206IDVweDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9naW4tdyAubG9naW4gLmxvZ2luLWkgLmxvZ2luLWFjdGlvbnMge1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4IDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9naW4tdyAubG9naW4gLmxvZ2luLWkgLmljb24tdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9naW4tdyAubG9naW4gLmxvZ2luLWkgLmxvZ2luLXR4dCB7XG4gIHBhZGRpbmctcmlnaHQ6IDNweDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAubG9naW4tdyAubG9naW4gLmxvZ2luLWkgLmxvZ2luLXR4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC5jYXJ0LXcge1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAuY2FydC13IC5jYXJ0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC5jYXJ0LXcgLmNhcnQgLmNhcnQtaSB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmNhcnQtdyAuY2FydCAuY2FydC1pIC5idG4ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAuY2FydC13IC5jYXJ0IC5jYXJ0LWkgLmljb24tdyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAzNHB4O1xuICAgIGhlaWdodDogMzRweDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI2UxZTFlMTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAuY2FydC13IC5jYXJ0IC5jYXJ0LWkgLmNhcnQtdHh0IHtcbiAgcGFkZGluZy1yaWdodDogM3B4O1xufVxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC5jYXJ0LXcgLmNhcnQgLmNhcnQtaSAuY2FydC10eHQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAuY2FydC13IC5jb250ZW50LWNhcnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHotaW5kZXg6IDk5OTtcbiAgcGFkZGluZzogMTVweCAxNXB4O1xuICB0b3A6IDUycHg7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNmM2YzZjM7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAuY2FydC13IC5jb250ZW50LWNhcnQ6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlci1sZWZ0OiAwLjdyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMC43cmVtIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItYm90dG9tOiAwLjlyZW0gc29saWQgI2ZmZjtcbiAgdG9wOiAtMTBweDtcbn1cbi5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAuY2FydC13IC5jYXJ0IC5jb250ZW50LWNhcnQudmlzaWJsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmNhcnQtdyAuY2FydCAuY29udGVudC1jYXJ0IHtcbiAgbWluLWhlaWdodDogMjQzcHg7XG4gIHdpZHRoOiAzMjJweDtcbiAgcmlnaHQ6IDA7XG59XG4uaGVhZGVyIC5sb2dvYmFyIC5sb2dvYmFyLWkgLmNhcnQtdyAuY2FydCAuY29udGVudC1jYXJ0OmJlZm9yZSB7XG4gIHJpZ2h0OiAxMDVweDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTAyNHB4KSB7XG4gIC5oZWFkZXIgLmxvZ29iYXIgLmxvZ29iYXItaSAuY2FydC13IC5jYXJ0IC5jb250ZW50LWNhcnQ6YmVmb3JlIHtcbiAgICByaWdodDogMTJweDtcbiAgfVxufVxuLmhlYWRlciAubG9nb2JhciAubG9nb2Jhci1pIC5jYXJ0LXcgLmNhcnQgLmNvbnRlbnQtY2FydCAuaW5mby1jYXJ0IHtcbiAgY29sb3I6ICMwMDNmOGY7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgcGFkZGluZzogMCAzMHB4O1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIHVsLFxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSBsaSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudS5tb2JpbGUge1xuICBkaXNwbGF5OiBub25lO1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUubW9iaWxlIC5kcm9wbWVudS1pdGVtLXcge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudT5hIHtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIG1pbi1oZWlnaHQ6IDMycHg7XG4gIGJhY2tncm91bmQ6ICMwMDNmOGY7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogI2ZmZjtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDZweCAxMnB4O1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnU+YSBzcGFuLmNhcmV0IHtcbiAgbWFyZ2luLWxlZnQ6IDVweDtcbn1cbi5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51IC5kcm9wbWVudS1pdGVtLXcgLmRyb3BtZW51LWl0ZW0ge1xuICBwYWRkaW5nOiAwO1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUgLmRyb3BtZW51LWl0ZW0tdyAuZHJvcG1lbnUtaXRlbSAuZHJvcG1lbnUtY2hpbGQgYSB7XG4gIGNvbG9yOiAjMDAzZjhmO1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUgLmRyb3BtZW51LWl0ZW0tdyAuZHJvcG1lbnUtaXRlbSAuZHJvcG1lbnUtY2hpbGQgLmRyb3Bkb3duLXRvZ2dsZSxcbi5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51IC5kcm9wbWVudS1pdGVtLXcgLmRyb3BtZW51LWl0ZW0gLmRyb3BtZW51LWNoaWxkIC5kcm9wbWVudS1jaGlsZCBhIHtcbiAgbWluLWhlaWdodDogMzZweDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdD4uZHJvcG1lbnUtY2hpbGQ+YTpob3ZlciB7XG4gIGJhY2tncm91bmQ6ICNkYWVhZmY7XG4gIGNvbG9yOiAjMDAzZjhmO1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUgLmRyb3BtZW51LWl0ZW0tdyAuZHJvcG1lbnUtc2Vjb25kPi5kcm9wbWVudS1jaGlsZD5hOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogI2RhZWFmZjtcbiAgY29sb3I6ICMwMDNmOGY7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdD4uZHJvcG1lbnUtY2hpbGQge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwMDNmOGY7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdCAuZHJvcG1lbnUtY2hpbGQge1xuICBib3JkZXItd2lkdGg6IDAgMXB4IDFweCAxcHg7XG4gIGJvcmRlci1zdHlsZTogc29saWQgc29saWQgZG90dGVkIHNvbGlkO1xuICBib3JkZXItY29sb3I6ICMwMDNmOGY7XG4gIGJhY2tncm91bmQ6ICNmZmY7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cbi5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51IC5kcm9wbWVudS1pdGVtLXcgLmRyb3BtZW51LWZpcnN0IC5kcm9wbWVudS1jaGlsZCAubGluay1maXJzdCB7XG4gIGZsZXg6IDE7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdCAuZHJvcG1lbnUtY2hpbGQgLmxpbmstb3Blbi1zZWNvbmQge1xuICB3aWR0aDogNDBweDtcbn1cbi5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51IC5kcm9wbWVudS1pdGVtLXcgLmRyb3BtZW51LWZpcnN0IC5kcm9wbWVudS1jaGlsZDpmaXJzdC1jaGlsZCB7XG4gIGJvcmRlci10b3Atd2lkdGg6IDFweDtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNHB4O1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNHB4O1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUgLmRyb3BtZW51LWl0ZW0tdyAuZHJvcG1lbnUtZmlyc3QgLmRyb3BtZW51LWNoaWxkOmxhc3QtY2hpbGQge1xuICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG59XG4uaGVhZGVyIC5uYXZiYXIge1xuICBtYXJnaW4tdG9wOiAyNXB4O1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUuZGVza3RvcCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbG9zdC1jb2x1bW46IDEvNjtcbn1cbi5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51LmRlc2t0b3AgLmRyb3BtZW51LWl0ZW0tdyB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbWFyZ2luLXRvcDogMXB4O1xuICB3aWR0aDogMTAwJTtcbn1cbi5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51LmRlc2t0b3AgLmRyb3BtZW51LWl0ZW0tdyAuZHJvcG1lbnUtaXRlbSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgbWFyZ2luLXRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudS5kZXNrdG9wIC5kcm9wbWVudS1pdGVtLXcgLmRyb3BtZW51LWZpcnN0IC5kcm9wbWVudS1jaGlsZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cbi5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51LmRlc2t0b3AgLmRyb3BtZW51LWl0ZW0tdyAuZHJvcG1lbnUtZmlyc3QgLmRyb3BtZW51LWNoaWxkIGEge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgd2hpdGUtc3BhY2U6IG5vcm1hbCAhaW1wb3J0YW50O1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgcGFkZGluZzogNXB4IDEwcHg7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudS5kZXNrdG9wIC5kcm9wbWVudS1pdGVtLXcgLmRyb3BtZW51LWZpcnN0IC5kcm9wbWVudS1jaGlsZCBhIHNwYW4ge1xuICBtYXJnaW4tbGVmdDogNHB4O1xufVxuLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUuZGVza3RvcCAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdCAuZHJvcG1lbnUtc2Vjb25kIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IC0xcHg7XG59XG4uaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudS5kZXNrdG9wIC5kcm9wbWVudS1pdGVtLXcgLmRyb3BtZW51LWZpcnN0IC5kcm9wbWVudS1zZWNvbmQgYSB7XG4gIHdpZHRoOiAxMDAlO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG59XG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEwMjRweCkge1xuICAuaGVhZGVyIC5uYXZiYXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgaGVpZ2h0OiBjYWxjKDEwMHZoIC0gNi4xNXJlbSk7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuICAgIGJhY2tncm91bmQ6ICNmM2YzZjM7XG4gIH1cbiAgLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSB7XG4gICAgcGFkZGluZy10b3A6IDIwcHg7XG4gIH1cbiAgLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUuZGVza3RvcCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudS5tb2JpbGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIC5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51Lm1vYmlsZSBhIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxcHg7XG4gIH1cbiAgLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUubW9iaWxlIC5kcm9wbWVudS1pdGVtLXcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwM2Y4ZjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgfVxuICAuaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudS5tb2JpbGUgLmRyb3BtZW51LWl0ZW0tdyAuZHJvcG1lbnUtZmlyc3Qge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMDAzZjhmO1xuICB9XG4gIC5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51Lm1vYmlsZSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdCAuZHJvcG1lbnUtY2hpbGQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkYWVhZmY7XG4gICAgYm9yZGVyOiBub25lO1xuICB9XG4gIC5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51Lm1vYmlsZSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdCAuZHJvcG1lbnUtY2hpbGQgLmRyb3BtZW51LWxpbmstdyB7XG4gICAgbWluLWhlaWdodDogNDFweDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICB9XG4gIC5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51Lm1vYmlsZSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdCAuZHJvcG1lbnUtY2hpbGQgLmRyb3BtZW51LWxpbmstdyAubGluay1maXJzdCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGZsZXg6IDE7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG4gIC5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51Lm1vYmlsZSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdCAuZHJvcG1lbnUtY2hpbGQgLmRyb3BtZW51LWxpbmstdyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kOiAjZGFlYWZmO1xuICB9XG4gIC5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51Lm1vYmlsZSAuZHJvcG1lbnUtaXRlbS13IC5kcm9wbWVudS1maXJzdCAuZHJvcG1lbnUtY2hpbGQgLmRyb3BtZW51LXNlY29uZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBib3JkZXItdG9wOiAxcHggZG90dGVkICMwMDNmOGY7XG4gIH1cbiAgLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUubW9iaWxlIC5kcm9wbWVudS1pdGVtLXcgLmRyb3BtZW51LWZpcnN0IC5kcm9wbWVudS1jaGlsZCAuZHJvcG1lbnUtc2Vjb25kIC5kcm9wbWVudS1jaGlsZCB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxuICAuaGVhZGVyIC5uYXZiYXIgLm5hdmJhci1pIC5kcm9wbWVudS5tb2JpbGUgLmRyb3BtZW51LWl0ZW0tdyAuZHJvcG1lbnUtZmlyc3QgLmRyb3BtZW51LWNoaWxkIC5kcm9wbWVudS1zZWNvbmQgLmRyb3BtZW51LWNoaWxkIGEge1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cbiAgLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUubW9iaWxlIC5zb2NpYWwtbGlua3Mge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgLmhlYWRlciAubmF2YmFyIC5uYXZiYXItaSAuZHJvcG1lbnUubW9iaWxlIC5zb2NpYWwtbGlua3MgLnNvY2lhbC1saW5rIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiA0MnB4O1xuICAgIGhlaWdodDogNDJweDtcbiAgICBtYXJnaW46IDAgNXB4O1xuICB9XG4gIC5oZWFkZXIgLm5hdmJhciAubmF2YmFyLWkgLmRyb3BtZW51Lm1vYmlsZSAuc29jaWFsLWxpbmtzIC5zb2NpYWwtbGluayBpLmZhYiB7XG4gICAgY29sb3I6ICMwMDNmOGY7XG4gICAgZm9udC1zaXplOiAyOHB4O1xuICB9XG59XG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwLjM7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuIiwiYmFzZS1mb250LXNpemUgPz0gMTZweFxucmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXMgPz0gZmFsc2VcblxucnVwdHVyZSA9IHtcbiAgcmFzdGVyaXNlLW1lZGlhLXF1ZXJpZXM6IHJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzXG4gIG1vYmlsZS1jdXRvZmY6IDQwMHB4XG4gIGRlc2t0b3AtY3V0b2ZmOiAxMDUwcHhcbiAgaGQtY3V0b2ZmOiAxODAwcHhcbiAgZW5hYmxlLWVtLWJyZWFrcG9pbnRzOiBmYWxzZVxuICBiYXNlLWZvbnQtc2l6ZTogYmFzZS1mb250LXNpemVcbiAgYW50aS1vdmVybGFwOiBmYWxzZVxuICBkZW5zaXR5LXF1ZXJpZXM6ICdkcHB4JyAnd2Via2l0JyAnbW96JyAnZHBpJ1xuICByZXRpbmEtZGVuc2l0eTogMS41XG4gIHVzZS1kZXZpY2Utd2lkdGg6IGZhbHNlXG59XG5ydXB0dXJlLnNjYWxlID0gMCAocnVwdHVyZS5tb2JpbGUtY3V0b2ZmKSA2MDBweCA4MDBweCAocnVwdHVyZS5kZXNrdG9wLWN1dG9mZikgKHJ1cHR1cmUuaGQtY3V0b2ZmKVxucnVwdHVyZS5zY2FsZS1uYW1lcyA9ICd4cycgJ3MnICdtJyAnbCcgJ3hsJyAnaGQnXG5cbi1pcy1zdHJpbmcodmFsKVxuICBpZiB0eXBlb2YodmFsKSBpcyBub3QgJ3VuaXQnXG4gICAgaWYgdmFsIGlzIGEgJ3N0cmluZycgb3IgdmFsIGlzIGEgJ2lkZW50J1xuICAgICAgdHJ1ZVxuICAgIGVsc2VcbiAgICAgIGZhbHNlXG4gIGVsc2VcbiAgICBmYWxzZVxuXG4tZ2V0LXNjYWxlLW51bWJlcihzY2FsZS1uYW1lKVxuICBmb3IgbGlzdC1pdGVtLCBpIGluIHJ1cHR1cmUuc2NhbGUtbmFtZXNcbiAgICBpZiBsaXN0LWl0ZW0gaXMgc2NhbGUtbmFtZVxuICAgICAgcmV0dXJuIGkgKyAxXG4gIHJldHVybiBmYWxzZVxuXG4tY29udmVydC10byh0by11bml0LCB2YWx1ZSwgY29udGV4dCA9IHJ1cHR1cmUuYmFzZS1mb250LXNpemUpXG4gIGZyb20tdW5pdCA9IHVuaXQodmFsdWUpXG4gIHJldHVybiB2YWx1ZSBpZiB0by11bml0IGlzIGZyb20tdW5pdFxuICBpZiB0by11bml0IGluICgnZW0nICdyZW0nKVxuICAgIHJldHVybiB2YWx1ZSBpZiBmcm9tLXVuaXQgaW4gKCdlbScgJ3JlbScpXG4gICAgcmV0dXJuIHVuaXQoKHZhbHVlIC8gY29udGV4dCksIHRvLXVuaXQpXG4gIGlmIHRvLXVuaXQgaXMgJ3B4J1xuICAgIHJldHVybiB1bml0KCh2YWx1ZSAqIGNvbnRleHQpLCAncHgnKVxuXG4tb24tc2NhbGUobilcbiAgcmV0dXJuIHVuaXQobikgaXMgJydcblxuLWxhcmdlci10aGFuLXNjYWxlKG4pXG4gIHJldHVybiAobiA+IChsZW5ndGgocnVwdHVyZS5zY2FsZSkgLSAxKSkgYW5kIC1vbi1zY2FsZShuKVxuXG4taXMtemVybyhuKVxuICByZXR1cm4gbiBpcyAwXG5cbi1vdmVybGFwLXNoaWZ0KGFudGktb3ZlcmxhcCwgbilcbiAgc2hpZnQtdW5pdCA9IHVuaXQobilcbiAgYW50aS1vdmVybGFwID0gMHB4IHVubGVzcyBhbnRpLW92ZXJsYXBcbiAgYW50aS1vdmVybGFwID0gMXB4IGlmIGFudGktb3ZlcmxhcCBpcyB0cnVlXG4gIGlmIGxlbmd0aChhbnRpLW92ZXJsYXApIGlzIDFcbiAgICByZXR1cm4gLWNvbnZlcnQtdG8oc2hpZnQtdW5pdCwgYW50aS1vdmVybGFwKVxuICBmb3IgdmFsIGluIGFudGktb3ZlcmxhcFxuICAgIHJldHVybiB2YWwgaWYgdW5pdCh2YWwpIGlzIHNoaWZ0LXVuaXRcblxuLWFkanVzdC1vdmVybGFwKGFudGktb3ZlcmxhcCwgbiwgc2lkZSA9ICdtaW4nKVxuICAtc2hpZnQgPSAtb3ZlcmxhcC1zaGlmdChhbnRpLW92ZXJsYXAsIG4pXG4gIGlmIChzaWRlIGlzICdtaW4nIGFuZCAtc2hpZnQgPiAwKSBvciAoc2lkZSBpcyAnbWF4JyBhbmQgLXNoaWZ0IDwgMClcbiAgICBuID0gbiArIC1zaGlmdFxuICByZXR1cm4gblxuXG4taXMtcG9zaXRpdmUobilcbiAgcmV0dXJuIG4gPj0gMFxuXG4tZGVuc2l0eS1xdWVyaWVzKGRlbnNpdHkpXG4gIGlmIHR5cGVvZihkZW5zaXR5KSBpcyBub3QgJ3VuaXQnXG4gICAgaWYgbm90IC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICAgIGRlbnNpdHkgPSAnJXMnICUgZGVuc2l0eVxuICBkZW5zaXR5ID0gcnVwdHVyZS5yZXRpbmEtZGVuc2l0eSBpZiBkZW5zaXR5IGlzICdyZXRpbmEnXG4gIHF1ZXJpZXMgPSAoKVxuICBmb3IgcXVlcnkgaW4gcnVwdHVyZS5kZW5zaXR5LXF1ZXJpZXNcbiAgICBpZiBxdWVyeSBpcyAnd2Via2l0J1xuICAgICAgcHVzaChxdWVyaWVzLCAnKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogJXMpJyAlIChkZW5zaXR5KSlcbiAgICBlbHNlIGlmIHF1ZXJ5IGlzICdtb3onXG4gICAgICBwdXNoKHF1ZXJpZXMsICcobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAlcyknICUgKGRlbnNpdHkpKVxuICAgIGVsc2UgaWYgcXVlcnkgaXMgJ28nXG4gICAgICBwdXNoKHF1ZXJpZXMsICcoLW8tbWluLWRldmljZS1waXhlbC1yYXRpbzogJXMvMSknICUgKGRlbnNpdHkpKVxuICAgIGVsc2UgaWYgcXVlcnkgaXMgJ3JhdGlvJ1xuICAgICAgcHVzaChxdWVyaWVzLCAnKG1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86ICVzKScgJSAoZGVuc2l0eSkpXG4gICAgZWxzZSBpZiBxdWVyeSBpcyAnZHBpJ1xuICAgICAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgICAgICBkZW5zaXR5PWNvbnZlcnQoZGVuc2l0eSlcbiAgICAgIHB1c2gocXVlcmllcywgJyhtaW4tcmVzb2x1dGlvbjogJXNkcGkpJyAlIChyb3VuZChkZW5zaXR5ICogOTYsIDEpKSlcbiAgICBlbHNlIGlmIHF1ZXJ5IGlzICdkcHB4J1xuICAgICAgcHVzaChxdWVyaWVzLCAnKG1pbi1yZXNvbHV0aW9uOiAlc2RwcHgpJyAlIChkZW5zaXR5KSlcbiAgcmV0dXJuIHF1ZXJpZXNcblxuY3JlYXRlLWZhbGxiYWNrLWNsYXNzKHNlbGVjdGVkLCBjbGFzcylcbiAgL3snJyArIGNsYXNzICsgJyAnICsgc2VsZWN0ZWR9XG4gICAge2Jsb2NrfVxuXG4vLyArYmV0d2VlbihtaW4sIG1heClcbi8vIHVzYWdlIChzY2FsZSBjYW4gYmUgbWl4ZWQgd2l0aCBjdXN0b20gdmFsdWVzKTpcbi8vICAgLSArYmV0d2VlbigxLCAzKSBzY2FsZTpzY2FsZVxuLy8gICAtICtiZXR3ZWVuKDAsIDMpIDAgd2lkdGg6c2NhbGVcbi8vICAgLSArYmV0d2VlbigyMDBweCwgNTAwcHgpIGN1c3RvbTpjdXN0b21cbi8vICAgLSArYmV0d2VlbigwLCAzMDBweCkgMCB3aWR0aDpjdXN0b21cbi8vICAgLSArYmV0d2VlbigxLCAzMDBweCkgc2NhbGU6Y3VzdG9tXG4vLyAgIC0gK2JldHdlZW4oMjAwcHgsIDQpIGN1c3RvbTpzY2FsZVxuXG5iZXR3ZWVuKG1pbiwgbWF4LCBhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBzZWxlY3RlZCA9IHNlbGVjdG9yKClcblxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gIGlmIC1pcy1zdHJpbmcobWluKVxuICAgIG1pbiA9IC1nZXQtc2NhbGUtbnVtYmVyKG1pbilcbiAgaWYgLWlzLXN0cmluZyhtYXgpXG4gICAgbWF4ID0gLWdldC1zY2FsZS1udW1iZXIobWF4KVxuXG4gIC1taW4gPSBydXB0dXJlLnNjYWxlW21pbiAtIDFdIHVubGVzcyAtaXMtemVybyhtaW4pIG9yIChub3QgLW9uLXNjYWxlKG1pbikpXG4gIC1tYXggPSBydXB0dXJlLnNjYWxlW21heF0gdW5sZXNzIG5vdCAtb24tc2NhbGUobWF4KVxuICAtbWluID89IG1pblxuICAtbWF4ID89IG1heFxuXG4gIGlmIChydXB0dXJlLnJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzKVxuICAgIGlmIG5vdCAoZGVuc2l0eSBvciAtbWF4IG9yIG9yaWVudGF0aW9uKVxuICAgICAge2Jsb2NrfVxuICBlbHNlXG4gICAgY29uZGl0aW9uID0gJ29ubHkgc2NyZWVuJ1xuICAgIHVzZS1kZXZpY2Utd2lkdGggPSB1c2UtZGV2aWNlLXdpZHRoID8gJ2RldmljZS0nIDogJydcbiAgICB1bmxlc3MgLW1pbiBpcyAwXG4gICAgICAtbWluID0gLWNvbnZlcnQtdG8oJ2VtJywgLW1pbikgaWYgcnVwdHVyZS5lbmFibGUtZW0tYnJlYWtwb2ludHNcbiAgICAgIC1taW4gPSAtYWRqdXN0LW92ZXJsYXAoYW50aS1vdmVybGFwLCAtbWluLCBzaWRlOiAnbWluJylcbiAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbiArICcgYW5kIChtaW4tJyArIHVzZS1kZXZpY2Utd2lkdGggKyAnd2lkdGg6ICVzKScgJSAoLW1pbilcbiAgICB1bmxlc3MgLWxhcmdlci10aGFuLXNjYWxlKG1heClcbiAgICAgIC1tYXggPSAtY29udmVydC10bygnZW0nLCAtbWF4KSBpZiBydXB0dXJlLmVuYWJsZS1lbS1icmVha3BvaW50c1xuICAgICAgLW1heCA9IC1hZGp1c3Qtb3ZlcmxhcChhbnRpLW92ZXJsYXAsIC1tYXgsIHNpZGU6ICdtYXgnKVxuICAgICAgY29uZGl0aW9uID0gY29uZGl0aW9uICsgJyBhbmQgKG1heC0nICsgdXNlLWRldmljZS13aWR0aCArICd3aWR0aDogJXMpJyAlICgtbWF4KVxuICAgIGlmIG9yaWVudGF0aW9uXG4gICAgICBjb25kaXRpb24gPSBjb25kaXRpb24gKyAnIGFuZCAob3JpZW50YXRpb246ICVzKScgJSAob3JpZW50YXRpb24pXG4gICAgaWYgZGVuc2l0eVxuICAgICAgY29uZGl0aW9ucyA9ICgpXG4gICAgICBmb3IgcXVlcnkgaW4gLWRlbnNpdHktcXVlcmllcyhkZW5zaXR5KVxuICAgICAgICBwdXNoKGNvbmRpdGlvbnMsIGNvbmRpdGlvbiArICcgYW5kICVzJyAlIChxdWVyeSkpXG4gICAgICBjb25kaXRpb24gPSBqb2luKCcsICcsIGNvbmRpdGlvbnMpXG4gICAgQG1lZGlhIGNvbmRpdGlvblxuICAgICAge2Jsb2NrfVxuICBpZiBmYWxsYmFjay1jbGFzc1xuICAgICtjcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAge2Jsb2NrfVxuXG5hdChzY2FsZS1wb2ludCwgYW50aS1vdmVybGFwID0gcnVwdHVyZS5hbnRpLW92ZXJsYXAsIGRlbnNpdHkgPSBudWxsLCBvcmllbnRhdGlvbiA9IG51bGwsIHVzZS1kZXZpY2Utd2lkdGggPSBydXB0dXJlLnVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgaWYgLWlzLXN0cmluZyhvcmllbnRhdGlvbilcbiAgICBvcmllbnRhdGlvbiA9IGNvbnZlcnQob3JpZW50YXRpb24pXG4gIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICArYmV0d2VlbihzY2FsZS1wb2ludCwgc2NhbGUtcG9pbnQsIGFudGktb3ZlcmxhcCwgZGVuc2l0eSwgb3JpZW50YXRpb24sIHVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzKVxuICAgIHtibG9ja31cblxuZnJvbS13aWR0aChzY2FsZS1wb2ludCwgYW50aS1vdmVybGFwID0gcnVwdHVyZS5hbnRpLW92ZXJsYXAsIGRlbnNpdHkgPSBudWxsLCBvcmllbnRhdGlvbiA9IG51bGwsIHVzZS1kZXZpY2Utd2lkdGggPSBydXB0dXJlLnVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgaWYgLWlzLXN0cmluZyhvcmllbnRhdGlvbilcbiAgICBvcmllbnRhdGlvbiA9IGNvbnZlcnQob3JpZW50YXRpb24pXG4gIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICArYmV0d2VlbihzY2FsZS1wb2ludCwgbGVuZ3RoKHJ1cHR1cmUuc2NhbGUpLCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmFib3ZlID0gZnJvbS13aWR0aFxuXG50by13aWR0aChzY2FsZS1wb2ludCwgYW50aS1vdmVybGFwID0gcnVwdHVyZS5hbnRpLW92ZXJsYXAsIGRlbnNpdHkgPSBudWxsLCBvcmllbnRhdGlvbiA9IG51bGwsIHVzZS1kZXZpY2Utd2lkdGggPSBydXB0dXJlLnVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgaWYgLWlzLXN0cmluZyhvcmllbnRhdGlvbilcbiAgICBvcmllbnRhdGlvbiA9IGNvbnZlcnQob3JpZW50YXRpb24pXG4gIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICArYmV0d2VlbigxLCBzY2FsZS1wb2ludCwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG5iZWxvdyA9IHRvLXdpZHRoXG5cbm1vYmlsZShhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICtiZWxvdyhydXB0dXJlLm1vYmlsZS1jdXRvZmYsIGFudGktb3ZlcmxhcCwgZGVuc2l0eSwgb3JpZW50YXRpb24sIHVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzKVxuICAgIHtibG9ja31cblxudGFibGV0KGFudGktb3ZlcmxhcCA9IHJ1cHR1cmUuYW50aS1vdmVybGFwLCBkZW5zaXR5ID0gbnVsbCwgb3JpZW50YXRpb24gPSBudWxsLCB1c2UtZGV2aWNlLXdpZHRoID0gcnVwdHVyZS51c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gIGlmIC1pcy1zdHJpbmcob3JpZW50YXRpb24pXG4gICAgb3JpZW50YXRpb24gPSBjb252ZXJ0KG9yaWVudGF0aW9uKVxuICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgZGVuc2l0eSA9IGNvbnZlcnQoZGVuc2l0eSlcbiAgK2JldHdlZW4ocnVwdHVyZS5tb2JpbGUtY3V0b2ZmLCBydXB0dXJlLmRlc2t0b3AtY3V0b2ZmLCBhbnRpLW92ZXJsYXAsIGRlbnNpdHksIG9yaWVudGF0aW9uLCB1c2UtZGV2aWNlLXdpZHRoLCBmYWxsYmFjay1jbGFzcylcbiAgICB7YmxvY2t9XG5cbmRlc2t0b3AoYW50aS1vdmVybGFwID0gcnVwdHVyZS5hbnRpLW92ZXJsYXAsIGRlbnNpdHkgPSBudWxsLCBvcmllbnRhdGlvbiA9IG51bGwsIHVzZS1kZXZpY2Utd2lkdGggPSBydXB0dXJlLnVzZS1kZXZpY2Utd2lkdGgsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgaWYgLWlzLXN0cmluZyhvcmllbnRhdGlvbilcbiAgICBvcmllbnRhdGlvbiA9IGNvbnZlcnQob3JpZW50YXRpb24pXG4gIGlmIC1pcy1zdHJpbmcoZGVuc2l0eSlcbiAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICArYWJvdmUocnVwdHVyZS5kZXNrdG9wLWN1dG9mZiwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG5oZChhbnRpLW92ZXJsYXAgPSBydXB0dXJlLmFudGktb3ZlcmxhcCwgZGVuc2l0eSA9IG51bGwsIG9yaWVudGF0aW9uID0gbnVsbCwgdXNlLWRldmljZS13aWR0aCA9IHJ1cHR1cmUudXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBpZiAtaXMtc3RyaW5nKG9yaWVudGF0aW9uKVxuICAgIG9yaWVudGF0aW9uID0gY29udmVydChvcmllbnRhdGlvbilcbiAgaWYgLWlzLXN0cmluZyhkZW5zaXR5KVxuICAgIGRlbnNpdHkgPSBjb252ZXJ0KGRlbnNpdHkpXG4gICthYm92ZShydXB0dXJlLmhkLWN1dG9mZiwgYW50aS1vdmVybGFwLCBkZW5zaXR5LCBvcmllbnRhdGlvbiwgdXNlLWRldmljZS13aWR0aCwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG5kZW5zaXR5KGRlbnNpdHksIG9yaWVudGF0aW9uID0gbnVsbCwgZmFsbGJhY2stY2xhc3MgPSBudWxsKVxuICBzZWxlY3RlZCA9IHNlbGVjdG9yKClcbiAgaWYgbm90IChydXB0dXJlLnJhc3RlcmlzZS1tZWRpYS1xdWVyaWVzKVxuICAgIGNvbmRpdGlvbnMgPSAoKVxuICAgIGZvciBxdWVyeSBpbiAtZGVuc2l0eS1xdWVyaWVzKGRlbnNpdHkpXG4gICAgICBjb25kaXRpb24gPSAnb25seSBzY3JlZW4gYW5kICVzJyAlIChxdWVyeSlcbiAgICAgIGlmIG9yaWVudGF0aW9uXG4gICAgICAgIGNvbmRpdGlvbiA9IGNvbmRpdGlvbiArICcgYW5kIChvcmllbnRhdGlvbjogJXMpJyAlIChvcmllbnRhdGlvbilcbiAgICAgIHB1c2goY29uZGl0aW9ucywgY29uZGl0aW9uKVxuICAgIGNvbmRpdGlvbiA9IGpvaW4oJywgJywgY29uZGl0aW9ucylcbiAgICBAbWVkaWEgY29uZGl0aW9uXG4gICAgICB7YmxvY2t9XG4gICAgaWYgZmFsbGJhY2stY2xhc3NcbiAgICAgICtjcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICB7YmxvY2t9XG5cbnBpeGVsLXJhdGlvID0gZGVuc2l0eVxuXG5yZXRpbmEob3JpZW50YXRpb24gPSBudWxsLCBmYWxsYmFjay1jbGFzcyA9IG51bGwpXG4gICtkZW5zaXR5KCdyZXRpbmEnLCBvcmllbnRhdGlvbiwgZmFsbGJhY2stY2xhc3MpXG4gICAge2Jsb2NrfVxuXG5sYW5kc2NhcGUoZGVuc2l0eSA9IG51bGwsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgc2VsZWN0ZWQgPSBzZWxlY3RvcigpXG4gIGlmIG5vdCAocnVwdHVyZS5yYXN0ZXJpc2UtbWVkaWEtcXVlcmllcylcbiAgICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICAgIGlmIGRlbnNpdHlcbiAgICAgICtwaXhlbC1yYXRpbyhkZW5zaXR5LCBvcmllbnRhdGlvbjogbGFuZHNjYXBlLCBmYWxsYmFjay1jbGFzcylcbiAgICAgICAge2Jsb2NrfVxuICAgIGVsc2VcbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpXG4gICAgICAgIHtibG9ja31cbiAgICAgIGlmIGZhbGxiYWNrLWNsYXNzXG4gICAgICAgICtjcmVhdGUtZmFsbGJhY2stY2xhc3Moc2VsZWN0ZWQsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICAgIHtibG9ja31cblxucG9ydHJhaXQoZGVuc2l0eSA9IG51bGwsIGZhbGxiYWNrLWNsYXNzID0gbnVsbClcbiAgc2VsZWN0ZWQgPSBzZWxlY3RvcigpXG4gIGlmIG5vdCAocnVwdHVyZS5yYXN0ZXJpc2UtbWVkaWEtcXVlcmllcylcbiAgICBpZiAtaXMtc3RyaW5nKGRlbnNpdHkpXG4gICAgICBkZW5zaXR5ID0gY29udmVydChkZW5zaXR5KVxuICAgIGlmIGRlbnNpdHlcbiAgICAgICtwaXhlbC1yYXRpbyhkZW5zaXR5LCBvcmllbnRhdGlvbjogcG9ydHJhaXQsIGZhbGxiYWNrLWNsYXNzKVxuICAgICAgICB7YmxvY2t9XG4gICAgZWxzZVxuICAgICAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KVxuICAgICAgICB7YmxvY2t9XG4gICAgICBpZiBmYWxsYmFjay1jbGFzc1xuICAgICAgICArY3JlYXRlLWZhbGxiYWNrLWNsYXNzKHNlbGVjdGVkLCBmYWxsYmFjay1jbGFzcylcbiAgICAgICAgICB7YmxvY2t9XG4iXX0= */
