/*////////////////////////////////////

    BASE

/////////////////////////////////////*/

.breadcrumb-item {
  font-size: 0.9em;
}

/*====================================
    .carousel-product
====================================*/

.carousel-product:hover {
  text-decoration: none;
}

/*====================================
    body
====================================*/

body {
  background: #ededed;
  position: relative;
}

body a {
  color: grey;
  transition: all 0.3s;
}

body a:hover {
  color: #0AB3A3;
}

/*====================================
    h tag
====================================*/

h1,
h2,
h3,
h4,
h5,
h6 {
  text-transform: uppercase;
  font-weight: 400;
}

/*====================================
    main
====================================*/

main {
  background: white;
}

/*====================================
    .social-fixed
====================================*/

.social-fixed {
  position: fixed;
  top: 30%;
  right: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  z-index: 10;
}

.social-fixed a {
  background: white;
  padding: 1em;
  color: #0AB3A3;
  font-size: 1.5em;
  transition: all 0.3s;
  margin-bottom: 0.2em;
}

.social-fixed a:hover {
  background: #FD6D6D;
  color: white;
  text-decoration: none;
}

/*====================================
    .teal-color
====================================*/

.teal-color,
.teal {
  color: #0AB3A3;
}

/*====================================
    .pink-color
====================================*/

.pink-color,
.pink {
  color: #FD6D6D;
}

/*====================================
    .product
====================================*/

.product-name,
.product-price {
  text-align: center;
  font-size: 0.8em;
}

.product-name {
  margin-top: 0.5em;
  font-size: 0.7em;
}

.product-price {
  color: #0AB3A3;
}

/*====================================
    loaders.css
====================================*/

.loader.loader-active .loader-inner {
  display: block;
  margin: auto;
}

.loader.loader-active .loader-inner > div {
  background: #0AB3A3;
}

/*====================================
    .loads
====================================*/

.loads {
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: placeload;
  animation-timing-function: linear;
  background: #F6F6F6;
  background: #ededed;
  background: linear-gradient(to right, #F6F6F6 8%, #ededed 18%, #F6F6F6 33%);
  background-size: 1200px 104px;
  position: relative;
}

@keyframes placeload {
  0% {
    background-position: -468px 0;
  }

  100% {
    background-position: 468px 0;
  }
}

/*====================================
    #react
====================================*/

#react {
  transition: all 0.3s;
}

/*====================================
    .slick-img-container
====================================*/

.slick-img-container {
  position: relative;
}

.slick-img-container .discount {
  background: #FD6D6D;
  color: white;
  position: absolute;
  top: -7px;
  right: 0;
  min-width: 45px;
  text-align: center;
  padding: 9px 4px;
  border-radius: 50%;
}

/*====================================
    .star-rating
====================================*/

.star-rating {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  margin: 3px 0;
}

.star-rating .fa-star,
.star-rating .fa-star-half-alt {
  color: #FD6D6D;
}

/*====================================
    .toggle
====================================*/

.toggle {
  overflow-y: hidden;
  max-height: 500px;
  /* approximate max height */
  transition-property: all;
  transition-duration: .3s;
}

.toggle.closed {
  max-height: 0;
}

/*////////////////////////////////////

    HEADER

/////////////////////////////////////*/

.github-block {
  max-width: 350px;
  border-radius: 0 0 0 15px;
  background: #262626;
  padding: 0.7em;
  padding-top: 0;
}

.github-block .icon {
  font-size: 30px;
}

.github-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
      justify-content: flex-end;
  border-top: 10px solid #262626;
}

.github-container a:hover {
  text-decoration: none;
}

header {
  position: relative;
}

/*====================================
    #header-block-1
====================================*/

#header-block-1 {
  text-transform: capitalize;
  font-size: 14px;
  margin-top: 3em;
  height: 50px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

#header-block-1 .greeting-block {
  background: #0AB3A3;
  color: white;
  padding: 1em;
}

/*====================================
    #header-block-2
====================================*/

#header-block-2 {
  background: white;
  z-index: 5;
  box-shadow: 0px 11px 9px -2px rgba(181, 181, 181, 0.7);
}

#header-block-2 .icons {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  font-size: 25px;
}

#header-block-2 .nav-link {
  text-transform: uppercase;
  font-size: 0.9em;
}

#header-block-2 .nav-link:hover {
  color: grey;
}

#header-block-2 .nav-item {
  -ms-flex-item-align: stretch;
      -ms-grid-row-align: stretch;
      align-self: stretch;
  padding: 0.5em 0;
  position: relative;
}

#header-block-2 .submenu {
  position: absolute;
  background: #ededed;
  display: none;
  top: 70%;
  left: 0;
  z-index: 5;
  padding: 1em 3em;
}

#header-block-2 .submenu ul {
  display: block;
}

#header-block-2 .submenu ul > li {
  list-style: none;
}

#header-block-2 .shopping-number {
  background: #0AB3A3;
  padding: 15px;
  box-shadow: 2px 2px 2px grey;
  color: white;
  border-radius: 15px;
  height: 21px;
  width: 21px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  font-size: 16px;
}

#header-block-2 .shopping-number.active {
  background: #FD6D6D;
}

#header-block-2 .shopping-number.active:hover {
  cursor: pointer;
}

/*====================================
    #desktop-nav
====================================*/

#desktop-nav .submenu.desktop {
  text-transform: uppercase;
  width: 700px;
  font-size: 0.7em;
  box-shadow: 2px 2px 8px grey;
  background: white;
  left: -100%;
}

#desktop-nav .submenu.desktop ul {
  margin: 0;
  padding: 0 1em;
  list-style: none;
  text-align: center;
}

#desktop-nav .submenu.desktop .header a {
  color: #0AB3A3;
  font-size: 1.2em;
}

#desktop-nav > .navbar-nav {
  height: 100%;
}

#desktop-nav > .navbar-nav > .nav-item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  padding: 0;
}

#desktop-nav .dropdown-item {
  padding: 0.5em 0;
}

#desktop-nav .dropdown-item:hover {
  background: none;
}

/*====================================
    #mobile-nav
====================================*/

#mobile-nav p {
  margin: 1em 0;
}

#mobile-nav .navbar-nav {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
}

#mobile-nav .nav-item {
  border-left: 1px solid black;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1;
      flex: 1;
  -ms-flex-pack: center;
      justify-content: center;
}

#mobile-nav li.nav-item.dropdown:hover .dropdown-menu {
  display: block;
}

#mobile-nav .dropdown-menu {
  background: white;
}

#mobile-nav .submenu {
  top: 100%;
  padding: 0;
  width: 100%;
}

#mobile-nav .menu.submenu .dropdown-item {
  text-transform: uppercase;
  font-size: 0.8em;
  border-bottom: 1px solid #ededed;
  color: rgba(255, 255, 255, 0.5);
  background: #292b2c;
  padding: 1em;
  min-width: 200px;
}

#mobile-nav .account.submenu .dropdown-item {
  text-transform: capitalize;
  font-size: 0.8em;
  border-bottom: 1px solid #ededed;
  color: grey;
  background: white;
  padding: 1em;
  min-width: 200px;
  width: 100%;
  transition: all 0.3s;
}

#mobile-nav .account.submenu .dropdown-item:hover {
  background: #F6F6F6;
}

#mobile-nav .search.submenu {
  width: 100%;
  background: white;
  padding: 1em 0;
}

#mobile-nav .search.submenu form {
  width: 80%;
  margin: auto;
}

#mobile-nav .search.submenu input {
  border-style: none;
  padding-right: 15%;
  font-size: 0.9em;
  color: #ededed;
}

#mobile-nav .search.submenu .btn {
  color: grey;
  background: transparent;
  border-style: none;
}

/*====================================
    MEDIA
====================================*/

/*////////////////////////////////////

    FOOTER

/////////////////////////////////////*/

footer {
  background: #F6F6F6;
}

/*====================================
    #footer-block-1
====================================*/

#footer-block-1 .block-item-1 p {
  font-size: 0.8em;
}

#footer-block-1 .block-item-2 h4 {
  font-size: 0.9em;
}

#footer-block-1 .block-item-2 ul {
  padding: 0;
}

#footer-block-1 .block-item-2 li {
  list-style: none;
}

#footer-block-1 .block-item-2 a {
  font-size: 0.7em;
  text-transform: uppercase;
}

#footer-block-1 .block-item-3 {
  padding-top: 1.9em;
}

#footer-block-1 .block-item-3 h4 {
  font-size: 0.9em;
}

#footer-block-1 .block-item-3 button {
  border-radius: 0;
  color: white;
  background: #0AB3A3;
  margin-left: 1em;
  transition: all 0.3s;
}

#footer-block-1 .block-item-3 button:hover {
  background: #FD6D6D;
  cursor: pointer;
}

#footer-block-1 .block-item-3 input {
  border-radius: 0;
}

#footer-block-1 .block-item-3 .social {
  padding-top: 1em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

/*====================================
    #footer-block-2
====================================*/

#footer-block-2 {
  border-top: 1px solid #ededed;
}

#footer-block-2 .copyright {
  font-size: 0.8em;
}

#footer-block-2 .copyright a {
  color: #0AB3A3;
}

/*////////////////////////////////////

    HOME

/////////////////////////////////////*/

#home .slick-slide img {
  padding: 0 1em;
}

#home .slick-arrow {
  position: absolute;
  top: 45%;
  z-index: 2;
  border-style: none;
  background-color: #ededed;
  border-radius: 10%;
  padding: 15px 10px;
  color: white;
  font-size: 1.5em;
  transition: all 0.3s;
}

#home .slick-arrow:hover {
  background-color: grey;
}

#home .slick-left {
  left: -15px;
}

#home .slick-right {
  right: -15px;
}

/*====================================
    #home-block-1
====================================*/

#home-block-1 {
  padding-top: 0;
}

#home-block-1 .block-item-6 {
  padding: 0;
}

#home-block-1 .text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  width: 100%;
  text-align: center;
  background: #ededed;
  text-transform: uppercase;
  position: relative;
}

#home-block-1 .text.pink {
  background: rgba(128, 128, 128, 0.3);
  color: white;
  padding: 0.5em 0;
}

#home-block-1 .text.teal {
  background: rgba(10, 179, 163, 0.5);
  color: white;
  padding: 0.5em 0;
}

#home-block-1 .block-1 {
  max-width: 80%;
  padding: 1em;
  z-index: 3;
  position: absolute;
}

#home-block-1 h2 {
  font-size: 3em;
}

#home-block-1 h4 {
  font-size: 1.1em;
}

#home-block-1 p {
  font-size: 0.7em;
}

#home-block-1 h3,
#home-block-1 h4 {
  font-weight: 300;
}

#home-block-1 .block-item-1,
#home-block-1 .block-item-2,
#home-block-1 .block-item-3,
#home-block-1 .block-item-4,
#home-block-1 .block-item-5 {
  position: relative;
}

#home-block-1 .block-item-1 .bg-container,
#home-block-1 .block-item-2 .bg-container,
#home-block-1 .block-item-3 .bg-container,
#home-block-1 .block-item-4 .bg-container,
#home-block-1 .block-item-5 .bg-container {
  position: absolute;
  top: 0;
  left: 0;
  background: transparent;
  width: 100%;
  height: 100%;
  padding: 0.5em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
}

#home-block-1 .block-item-1 .bg,
#home-block-1 .block-item-2 .bg,
#home-block-1 .block-item-3 .bg,
#home-block-1 .block-item-4 .bg,
#home-block-1 .block-item-5 .bg {
  height: 100%;
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-direction: column;
      flex-direction: column;
  text-align: right;
}

#home-block-1 .text.teal h4 {
  font-size: 0.9em;
}

#home-block-1 .text.teal h2 {
  font-size: 3.5em;
  margin-bottom: 0.5em;
}

#home-block-1 .text.teal a {
  display: block;
  padding: 0.5em 1.5em;
  color: white;
  background: #0AB3A3;
  text-transform: uppercase;
  transition: all 0.3s;
  border-style: none;
  border-radius: none;
}

#home-block-1 .text.teal a:hover {
  text-decoration: none;
  background: #FD6D6D;
}

#home-block-1 .block-item-6 .text.pinky {
  background: #FD6D6D;
  color: white;
}

#home-block-1 .block-item-6 .text.pinky h4 {
  color: white;
}

#home-block-1 .block-item-6 .text:hover h2,
#home-block-1 .block-item-6 .text:hover h3,
#home-block-1 .block-item-6 .text:hover h4,
#home-block-1 .block-item-6 .text:hover p {
  color: white;
}

#home-block-1 .block-item-6 .text:hover .block-2.hover {
  background: #0AB3A3;
  transform: scale(1, 1);
}

#home-block-1 .block-item-6 .text .block-2.hover {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  transform: scale(0, 0);
  transition: all 0.4s;
  z-index: 2;
}

#home-block-1 .block-item-6 .text h4,
#home-block-1 .block-item-6 .text p {
  color: #0AB3A3;
}

/*====================================
    #home-block-2
====================================*/

#home-block-2 .new-products {
  padding-top: 2em;
}

/*====================================
    #home-block-4
====================================*/

#home-block-4 {
  background: #0AB3A3;
  color: white;
  font-size: 0.8em;
}

#home-block-4 img {
  border-radius: 50%;
}

#home-block-4 h4 {
  text-transform: uppercase;
  font-size: 1.2em;
}

#home-block-4 .quote {
  font-size: 4em;
}

/*====================================
    #home-block-5
====================================*/

#home-block-5 {
  padding: 3em 0;
  font-size: 0.8em;
}

#home-block-5 h4 {
  font-size: 1.3em;
}

#home-block-5 .btn {
  background: #0AB3A3;
  color: white;
  text-transform: uppercase;
  box-shadow: 0px 9px 8px 1px rgba(181, 181, 181, 0.5);
  border-style: none;
  transition: all 0.3s;
}

#home-block-5 .btn:hover {
  background: #FD6D6D;
}

#home-block-5 .date,
#home-block-5 .comments {
  color: #0AB3A3;
}

/*====================================
    MEDIA
====================================*/

@media all and (max-width: 992px) {
  #home-block-1 h2 {
    font-size: 2.5em;
  }

  #home-block-1 h3 {
    font-size: 1.2em;
  }

  #home-block-1 h4 {
    font-size: 0.9em;
  }

  #home-block-1 p {
    display: none;
  }
}

@media all and (max-width: 767px) {
  #home-block-1 h2 {
    font-size: 3em;
  }

  #home-block-1 h3 {
    font-size: 1.7em;
  }

  #home-block-1 h4 {
    font-size: 1.2em;
  }

  #home-block-1 p {
    display: block;
  }
}

@media all and (max-width: 567px) {
  #home-block-1 .block-item-1 .bg,
  #home-block-1 .block-item-4 .bg {
    background: rgba(10, 179, 163, 0.5);
  }

  #home-block-1 .block-item-1 .text.teal h2,
  #home-block-1 .block-item-4 .text.teal h2 {
    font-size: 2em;
  }
}

/*////////////////////////////////////

    PRODUCT

/////////////////////////////////////*/

#product .breadcrumb {
  margin: 0;
}

#product .breadcrumb-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center;
  padding: 0 0.5em;
  background-color: #ededed;
}

#product .cart-btn {
  background-color: #0AB3A3;
  border-color: transparent;
  color: white;
  max-width: 200px;
  padding: 0.5em 2em;
  margin-bottom: 0.5em;
  font-size: 1.3em;
  text-align: center;
}

#product .cart-btn.disabled {
  background-color: grey;
}

#product .cart-btn.disabled:hover {
  background-color: grey;
}

#product .cart-btn:hover {
  background-color: #FD6D6D;
}

#product .customer-icon {
  background-color: #0AB3A3;
  height: 40px;
  width: 40px;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
  color: white;
  border-radius: 100%;
}

#product .customer-name {
  color: grey;
  margin-left: 1em;
  font-size: 0.9em;
}

#product .customer-title {
  font-size: 1.5em;
}

#product .customer-rating {
  font-size: 0.8em;
  color: grey;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 1em;
}

#product .customer-review {
  padding: 2.5em 0;
  border-bottom: 1px solid #ededed;
}

#product .customer-reviews {
  padding: 2em 0;
  text-align: center;
}

#product .customer-reviews .title {
  font-size: 2em;
}

#product .customer-reviews .star-rating {
  font-size: 2em;
  margin: 1em 0;
}

#product .customer-reviews .rating {
  font-size: 0.9em;
  margin-bottom: 1em;
}

#product .customer-summary {
  color: grey;
}

#product .date {
  margin-left: 1em;
}

#product #detail {
  padding: 3.5em 0;
}

#product .label {
  color: grey;
  text-transform: uppercase;
  font-size: 0.8em;
}

#product .product-links {
  display: -ms-flexbox;
  display: flex;
}

#product .product-links .label {
  color: grey;
  text-transform: uppercase;
  font-size: 0.8em;
}

#product .product-name {
  text-align: inherit;
  font-size: 1.2em;
}

#product .product-price {
  font-size: 1.5em;
  color: grey;
}

#product .product-price-container {
  margin: 1em 0;
}

#product .product-price-container p {
  margin-bottom: 0;
}

#product .product-reviews {
  border-top: 1px solid #ededed;
  width: 90%;
  margin: auto;
  margin-top: 1em;
}

#product .product-size {
  max-width: 200px;
  margin: 1em 0;
}

#product-quantity {
  margin: 1em 0;
}

#product-quantity button {
  background-color: transparent;
  border-style: none;
}

#product-quantity button:hover span {
  color: #FD6D6D;
}

#product-quantity input {
  border-style: none;
  width: 50px;
  text-align: center;
}

#product .rating-container {
  display: -ms-flexbox;
  display: flex;
  margin-right: 1.5em;
  -ms-flex-align: center;
      align-items: center;
}

#product .rating-reviews {
  color: grey;
  font-style: oblique;
  font-size: 0.7em;
  margin-left: 1em;
}

#product .review-header {
  text-transform: uppercase;
  color: grey;
  border-bottom: 1px solid #ededed;
  padding: 0.5em 0;
}

#product .share-links {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
      align-items: flex-end;
  margin-left: 1em;
  width: 200px;
}

#product .social {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
  font-size: 0.8em;
}

/*////////////////////////////////////

    RECENT ARRIVALS

/////////////////////////////////////*/

#recent-arrivals .card {
  padding: 0 15px;
  border-style: none;
}

#recent-arrivals .card-body {
  text-align: center;
}

#recent-arrivals .card-title {
  margin: 1em 0;
}

#recent-arrivals .filter-item {
  margin-bottom: 0.5em;
  text-transform: capitalize;
}

#recent-arrivals .filter-list {
  margin: 1em 0;
}

#recent-arrivals .filter-list-group {
  margin-top: 2.2em;
}

#recent-arrivals .filter-name {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  margin: 0;
  width: 100%;
  -ms-flex-item-align: center;
      align-self: center;
}

#recent-arrivals .page-arrow {
  color: #262626;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
  background: transparent;
  border-style: none;
  margin: 0 8px;
}

#recent-arrivals .page-arrow:hover {
  text-decoration: underline;
}

#recent-arrivals .page-arrow.disabled {
  color: #ededed;
}

#recent-arrivals .page-arrow.disabled:hover {
  cursor: not-allowed;
}

#recent-arrivals .page-item {
  display: -ms-flexbox;
  display: flex;
}

#recent-arrivals .page-link {
  color: #262626;
  background: white;
  margin: 0 8px;
}

#recent-arrivals .page-link:hover,
#recent-arrivals .page-link.active {
  background: #262626;
  color: white;
}

#recent-arrivals .pagination {
  margin: 1em 0;
  padding: 1em 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  border-top: 1px solid #ededed;
  border-bottom: 1px solid #ededed;
}

#recent-arrivals .product-name,
#recent-arrivals .product-price {
  text-align: center;
  font-size: 16px;
}

#recent-arrivals .product-name {
  margin-top: 0.5em;
  font-size: 0.7em;
}

#recent-arrivals .product-price {
  color: #0AB3A3;
}

/*====================================
    #cart
====================================*/

#cart .checkout-btn {
  background: #0AB3A3;
  border-radius: 5px;
  padding: 0.5em;
  color: white;
  max-width: 220px;
}

#cart .checkout-btn:hover {
  background: #FD6D6D;
  text-decoration: none;
}

#cart .shopping-cart-container {
  margin: auto;
  width: 80%;
}

#cart .subtotal-container {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: end;
      align-items: flex-end;
  padding-bottom: 3em;
}

#cart .subtotal-block {
  font-size: 20px;
  margin-bottom: 1em;
}

/*====================================
    #cart-modal
====================================*/

#cart-modal {
  display: none;
  height: 0;
  width: 0;
  transition: all 0.3s;
  position: fixed;
  z-index: 100;
  top: 0;
}

#cart-modal.open-modal {
  background: rgba(38, 38, 38, 0.5);
  height: 100%;
  width: 100%;
  display: block;
}

#cart-modal .cart-body {
  min-height: 300px;
  overflow-y: scroll;
  width: 100%;
  background: #F6F6F6;
  height: 100%;
}

#cart-modal .cart-btn {
  margin: auto;
  display: block;
  font-size: 21px;
  background: #0AB3A3;
  text-transform: capitalize;
  color: white;
  width: 90%;
  transition: all 0.3s;
}

#cart-modal .cart-btn:hover {
  background: #FD6D6D;
}

#cart-modal .cart-footer {
  position: absolute;
  bottom: 0;
  background: white;
  padding: 0.5em 0;
  width: 95%;
}

#cart-modal .cart-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: baseline;
      align-items: baseline;
  padding-bottom: 0.5em;
  border-bottom: 1px solid #ededed;
  text-transform: uppercase;
}

#cart-modal .cart-header .btn {
  color: white;
  background: #0AB3A3;
  transition: all 0.3s;
  padding: 0.5em;
}

#cart-modal .cart-header .btn:hover {
  background: #FD6D6D;
}

#cart-modal .cart-item {
  position: relative;
}

#cart-modal .cart-item .name {
  font-size: 16px;
}

#cart-modal .cart-item .price,
#cart-modal .cart-item .quantity {
  font-size: 14px;
}

#cart-modal .cart-item .size {
  position: absolute;
  top: 10px;
  right: 0;
  background: grey;
  border-radius: 3px;
  text-transform: capitalize;
  padding: 2px;
  color: white;
  width: 70px;
  font-size: 12px;
}

#cart-modal .cart-item span {
  padding: 0 6px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
  -ms-flex-pack: center;
      justify-content: center;
}

#cart-modal .cart-menu {
  background: white;
  width: 450px;
  padding: 1em;
  height: 100%;
  position: relative;
}

#cart-modal #total-price {
  background: rgba(255, 255, 255, 0.5);
  border-radius: 5px;
  padding: 2px 5px;
  margin-left: 10px;
}

/*====================================
    #checkout
====================================*/

#checkout .checkout-header {
  font-size: 24px;
}

#checkout .item-block {
  margin-bottom: 1em;
}

#checkout .item-details span {
  margin-right: 15px;
  font-size: 0.8em;
}

#checkout .item-img {
  max-width: 50px;
  max-height: 50px;
  margin-right: 1em;
}

#checkout .item-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

#checkout .item-name {
  font-size: 20px;
  font-weight: bold;
  color: #0AB3A3;
  letter-spacing: -1px;
  font-weight: lighter;
}

#checkout #details-container {
  border-right: 3px solid #F6F6F6;
  margin-right: 1em;
}

#checkout #order-container p {
  font-size: 0.8em;
  margin-bottom: 5px;
  text-transform: capitalize;
}

#checkout .order-btn {
  border-radius: 3px;
  color: white;
  background: #0AB3A3;
  display: block;
  border-style: none;
  padding: 0.3em 0.5em;
  font-size: 20px;
  margin-top: 1em;
  transition: 0.3s;
  width: 100%;
  max-width: 350px;
}

#checkout .order-btn:hover {
  background: #FD6D6D;
}

#checkout #stripe-form {
  background: #262626;
  border-radius: 5px;
  max-width: 350px;
  padding: 5px;
}

/*////////////////////////////////////

    LOGIN

/////////////////////////////////////*/

#loginModal {
  background: rgba(38, 38, 38, 0.5);
}

#loginModal .modal-body .form-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
  width: 70%;
  margin: auto;
  margin-top: 1em;
  margin-bottom: 1em;
}

#loginModal .modal-body input.btn {
  background: #0AB3A3;
  color: white;
  display: block;
  width: 100%;
}

#loginModal .modal-body input.form-control {
  background: #ededed;
  border-style: none;
}

#loginModal .modal-body input:-ms-input-placeholder {
  text-align: center;
}

#loginModal .modal-body input::placeholder {
  text-align: center;
}

#loginModal .modal-body .google-btn {
  color: white;
  background: #0099ff;
  border-style: none;
  border-radius: 5px;
  width: 100%;
  padding: 7px;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center;
}

#loginModal .modal-body .google-btn .name {
  margin: auto;
}

#loginModal .modal-footer .signup-msg {
  margin: auto;
  text-align: center;
  font-size: 0.7em;
}

#loginModal .modal-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
      justify-content: center;
}

#loginModal .modal-header #logo {
  width: 200px;
  margin-top: -3em;
}

/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc291cmNlcy9hc3NldHMvc2Fzcy9zdHlsZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL3ZhcmlhYmxlLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvYmFzZS5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2hlYWRlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2Zvb3Rlci5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2hvbWUuc2NzcyIsInJlc291cmNlcy9hc3NldHMvc2Fzcy9wcm9kdWN0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvcmVjZW50LWFycml2YWxzLnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvY2FydC5zY3NzIiwicmVzb3VyY2VzL2Fzc2V0cy9zYXNzL2NoZWNrb3V0LnNjc3MiLCJyZXNvdXJjZXMvYXNzZXRzL3Nhc3MvbG9naW4uc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJcblxuLy8gVmFyaWFibGVzXG5AaW1wb3J0IFwidmFyaWFibGVcIjtcblxuQGltcG9ydCBcImJhc2VcIjtcbkBpbXBvcnQgXCJoZWFkZXJcIjtcbkBpbXBvcnQgXCJmb290ZXJcIjtcbkBpbXBvcnQgXCJob21lXCI7XG5AaW1wb3J0IFwicHJvZHVjdFwiO1xuQGltcG9ydCBcInJlY2VudC1hcnJpdmFsc1wiO1xuQGltcG9ydCBcImNhcnRcIjtcbkBpbXBvcnQgXCJjaGVja291dFwiO1xuQGltcG9ydCBcImxvZ2luXCI7XG4iLCJcbiRkYXJrLWdyZXk6IGdyZXk7XG4kbGl0ZS1ncmV5OiAjRjZGNkY2O1xuJGdyZXk6ICNlZGVkZWQgO1xuJHRlYWw6ICMwQUIzQTMgO1xuJHBpbms6ICNGRDZENkQ7XG4kYmxhY2s6IzI2MjYyNjtcbiR5ZWxsb3c6I2U2YjgwMDtcbiRoOihoMSxoMixoMyxoNCxoNSxoNilcbiIsIlxuLyovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIEJBU0VcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLyovXG5cbi5icmVhZGNydW1iLWl0ZW17XG4gIGZvbnQtc2l6ZTowLjllbTtcbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAuY2Fyb3VzZWwtcHJvZHVjdFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLmNhcm91c2VsLXByb2R1Y3R7XG4gICY6aG92ZXJ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gIH1cblxufVxuXG5cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBib2R5XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG5ib2R5e1xuICAgIGJhY2tncm91bmQ6JGdyZXk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgYXtcbiAgICAgICAgY29sb3I6JGRhcmstZ3JleTtcbiAgICAgICAgdHJhbnNpdGlvbjphbGwgMC4zcztcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiR0ZWFsO1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgaCB0YWdcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cblxuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2XG4gICAge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OjQwMDtcbiAgICB9XG5cblxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIG1haW5cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbm1haW57XG4gICAgYmFja2dyb3VuZDp3aGl0ZTtcbn1cblxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIC5zb2NpYWwtZml4ZWRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uc29jaWFsLWZpeGVke1xuICAgIHBvc2l0aW9uOmZpeGVkO1xuICAgIHRvcDozMCU7XG4gICAgcmlnaHQ6MDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgIHotaW5kZXg6IDEwO1xuXG4gICAgYXtcbiAgICAgICAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgICAgICAgcGFkZGluZzoxZW07XG4gICAgICAgIGNvbG9yOiR0ZWFsO1xuICAgICAgICBmb250LXNpemU6MS41ZW07XG4gICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3M7XG4gICAgICAgIG1hcmdpbi1ib3R0b206MC4yZW07XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiRwaW5rO1xuICAgICAgICAgICAgY29sb3I6d2hpdGU7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246bm9uZTtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAudGVhbC1jb2xvclxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi50ZWFsLWNvbG9yLC50ZWFse1xuICAgIGNvbG9yOiR0ZWFsO1xufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIC5waW5rLWNvbG9yXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnBpbmstY29sb3IsLnBpbmt7XG4gICAgY29sb3I6JHBpbms7XG59XG5cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAucHJvZHVjdFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5wcm9kdWN0e1xuXG4gICYtbmFtZSwgJi1wcmljZXtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICBmb250LXNpemU6MC44ZW07XG4gIH1cblxuICAmLW5hbWV7XG4gICAgbWFyZ2luLXRvcDowLjVlbTtcbiAgICBmb250LXNpemU6MC43ZW07XG4gIH1cblxuICAmLXByaWNle1xuICAgIGNvbG9yOiR0ZWFsO1xuICB9XG5cbn1cblxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIGxvYWRlcnMuY3NzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmxvYWRlci5sb2FkZXItYWN0aXZle1xuXG4gICAgLmxvYWRlci1pbm5lcntcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBtYXJnaW46YXV0bztcbiAgICAgICAgJj5kaXZ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiR0ZWFsO1xuICAgICAgICB9XG4gICAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIC5sb2Fkc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLmxvYWRzIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBmb3J3YXJkcztcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gIGFuaW1hdGlvbi1uYW1lOiBwbGFjZWxvYWQ7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgYmFja2dyb3VuZDogJGxpdGUtZ3JleTtcbiAgYmFja2dyb3VuZDogJGdyZXk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtZ3JhZGllbnQoXG4gICAgbGluZWFyLFxuICAgIGxlZnQgdG9wLFxuICAgIHJpZ2h0IHRvcCxcbiAgICBjb2xvci1zdG9wKDglLCAkbGl0ZS1ncmV5KSxcbiAgICBjb2xvci1zdG9wKDE4JSwkZ3JleSksXG4gICAgY29sb3Itc3RvcCgzMyUsICRsaXRlLWdyZXkpXG4gICk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJGxpdGUtZ3JleSA4JSwgJGdyZXkgMTglLCAkbGl0ZS1ncmV5IDMzJSk7XG4gIGJhY2tncm91bmQtc2l6ZTogMTIwMHB4IDEwNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cblxuQGtleWZyYW1lcyBwbGFjZWxvYWQge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogLTQ2OHB4IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogNDY4cHggMDtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICNyZWFjdFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuI3JlYWN0e1xuICB0cmFuc2l0aW9uOmFsbCAwLjNzO1xufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIC5zbGljay1pbWctY29udGFpbmVyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4uc2xpY2staW1nLWNvbnRhaW5lcntcblxuICBwb3NpdGlvbjpyZWxhdGl2ZTtcblxuICAuZGlzY291bnR7XG4gICAgYmFja2dyb3VuZDokcGluaztcbiAgICBjb2xvcjp3aGl0ZTtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICB0b3A6LTdweDtcbiAgICByaWdodDowO1xuICAgIG1pbi13aWR0aDo0NXB4O1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIHBhZGRpbmc6OXB4IDRweDtcbiAgICBib3JkZXItcmFkaXVzOjUwJTtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIC5zdGFyLXJhdGluZ1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuLnN0YXItcmF0aW5ne1xuICBkaXNwbGF5OmZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBtYXJnaW46IDNweCAwO1xuICAuZmEtc3RhciwuZmEtc3Rhci1oYWxmLWFsdHtcbiAgICBjb2xvcjogJHBpbms7XG4gICAgLy8gZm9udC1zaXplOjNlbTtcbiAgfVxufVxuXG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgLnRvZ2dsZVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi50b2dnbGV7XG4gIG92ZXJmbG93LXk6IGhpZGRlbjtcblx0bWF4LWhlaWdodDogNTAwcHg7IC8qIGFwcHJveGltYXRlIG1heCBoZWlnaHQgKi9cblxuXHR0cmFuc2l0aW9uLXByb3BlcnR5OiBhbGw7XG5cdHRyYW5zaXRpb24tZHVyYXRpb246IC4zcztcbiAgJi5jbG9zZWR7XG4gICAgbWF4LWhlaWdodDogMDtcbiAgfVxufVxuIiwiXG4vKi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vL1xuXG4gICAgSEVBREVSXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8qL1xuXG5cbi5naXRodWJ7XG5cbiAgJi1ibG9ja3tcbiAgICBtYXgtd2lkdGg6MzUwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMCAwIDAgMTVweCA7XG4gICAgYmFja2dyb3VuZDogJGJsYWNrO1xuICAgIHBhZGRpbmc6IDAuN2VtO1xuICAgIHBhZGRpbmctdG9wOjA7XG4gICAgLmljb257XG4gICAgICBmb250LXNpemU6MzBweDtcbiAgICB9XG4gIH1cblxuICAmLWNvbnRhaW5lcntcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBib3JkZXItdG9wOjEwcHggc29saWQgJGJsYWNrO1xuICAgIGF7XG4gICAgICAvLyBib3JkZXItcmFkaXVzOjhweDtcbiAgICAgIC8vIHBhZGRpbmc6MC41ZW07XG4gICAgICAvLyBib3JkZXI6c29saWQgMXB4ICRkYXJrLWdyZXk7XG4gICAgICAmOmhvdmVye1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxufVxuXG5oZWFkZXJ7XG4gICAgcG9zaXRpb246cmVsYXRpdmU7XG59XG5cblxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICNoZWFkZXItYmxvY2stMVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuI2hlYWRlci1ibG9jay0xe1xuXG4gICAgdGV4dC10cmFuc2Zvcm06Y2FwaXRhbGl6ZTtcbiAgICBmb250LXNpemU6MTRweDtcbiAgICBtYXJnaW4tdG9wOjNlbTtcbiAgICBoZWlnaHQ6NTBweDtcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuXG4gICAgLmdyZWV0aW5nLWJsb2Nre1xuICAgICAgYmFja2dyb3VuZDokdGVhbDtcbiAgICAgIGNvbG9yOndoaXRlO1xuICAgICAgcGFkZGluZzoxZW07XG4gICAgfVxuXG59XG5cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAjaGVhZGVyLWJsb2NrLTJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbiNoZWFkZXItYmxvY2stMntcblxuICAgIGJhY2tncm91bmQ6d2hpdGU7XG4gICAgei1pbmRleDo1O1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDExcHggOXB4IC0ycHggcmdiYSgxODEsMTgxLDE4MSwwLjcpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDExcHggOXB4IC0ycHggcmdiYSgxODEsMTgxLDE4MSwwLjcpO1xuICAgIGJveC1zaGFkb3c6IDBweCAxMXB4IDlweCAtMnB4IHJnYmEoMTgxLDE4MSwxODEsMC43KTtcbiAgICAvLyBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICAvLyB0b3A6MnB4O1xuXG4gICAgLmljb25ze1xuICAgICAgICBhbGlnbi1zZWxmOmNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOjI1cHg7XG4gICAgfVxuXG4gICAgLy8gLm5hdmJhcntcbiAgICAvLyAgICAgbWFyZ2luLXRvcDoxZW07XG4gICAgLy8gfVxuXG4gICAgLm5hdi1saW5re1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTowLjllbTtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGNvbG9yOiRkYXJrLWdyZXk7XG4gICAgICAgICAgICBzcGFue1xuXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2LWl0ZW17XG4gICAgICAgIGFsaWduLXNlbGY6c3RyZXRjaDtcbiAgICAgICAgcGFkZGluZzowLjVlbSAwO1xuICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuc3VibWVudXtcbiAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6JGdyZXk7XG4gICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgdG9wOjcwJTtcbiAgICAgICAgbGVmdDowO1xuICAgICAgICB6LWluZGV4OjU7XG4gICAgICAgIHBhZGRpbmc6MWVtIDNlbTtcblxuICAgICAgICB1bHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICB1bCA+IGxpe1xuICAgICAgICAgICAgbGlzdC1zdHlsZTpub25lO1xuICAgICAgICB9XG4gICAgfVxuXG5cbiAgICAuc2hvcHBpbmctbnVtYmVye1xuICAgICAgICBiYWNrZ3JvdW5kOiR0ZWFsO1xuICAgICAgICBwYWRkaW5nOjE1cHg7XG4gICAgICAgIGJveC1zaGFkb3c6MnB4IDJweCAycHggZ3JleTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICBoZWlnaHQ6IDIxcHg7XG4gICAgICAgIHdpZHRoOiAyMXB4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAmLmFjdGl2ZXtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiRwaW5rO1xuXG4gICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG5cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAjZGVza3RvcC1uYXZcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbiNkZXNrdG9wLW5hdntcblxuICAgIC5zdWJtZW51LmRlc2t0b3B7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICAgICAgd2lkdGg6NzAwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTowLjdlbTtcbiAgICAgICAgYm94LXNoYWRvdzoycHggMnB4IDhweCAkZGFyay1ncmV5O1xuICAgICAgICBiYWNrZ3JvdW5kOndoaXRlO1xuICAgICAgICBsZWZ0Oi0xMDAlO1xuICAgICAgICB1bHtcbiAgICAgICAgICAgIC8vIGJvcmRlci1sZWZ0OjFweCAkdGVhbCBzb2xpZDtcbiAgICAgICAgICAgIG1hcmdpbjowO1xuICAgICAgICAgICAgcGFkZGluZzowIDFlbTtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oZWFkZXIgYXtcbiAgICAgICAgICAgIGNvbG9yOiR0ZWFsO1xuICAgICAgICAgICAgZm9udC1zaXplOjEuMmVtO1xuXG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgID4gLm5hdmJhci1uYXZ7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuXG4gICAgICAgID4gLm5hdi1pdGVte1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6Y2VudGVyO1xuICAgICAgICAgICAgcGFkZGluZzowO1xuICAgICAgICB9XG5cbiAgICB9XG5cblxuICAgIC5kcm9wZG93bi1pdGVte1xuICAgICAgICBwYWRkaW5nOjAuNWVtIDA7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOm5vbmU7XG4gICAgICAgIH1cblxuICAgIH1cblxufVxuXG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgI21vYmlsZS1uYXZcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbiNtb2JpbGUtbmF2e1xuXG4gICAgcHtcbiAgICAgICAgbWFyZ2luOjFlbSAwO1xuICAgIH1cblxuICAgIC5uYXZiYXItbmF2e1xuICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgfVxuXG4gICAgLm5hdi1pdGVte1xuICAgICAgICBib3JkZXItbGVmdDoxcHggc29saWQgYmxhY2s7XG4gICAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgICAgZmxleDoxO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuXG4gICAgfVxuXG4gICAgbGkubmF2LWl0ZW0uZHJvcGRvd246aG92ZXIgLmRyb3Bkb3duLW1lbnV7XG4gICAgICAgIGRpc3BsYXk6YmxvY2s7XG5cbiAgICB9XG5cbiAgICAuZHJvcGRvd24tbWVudXtcbiAgICAgICAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgICB9XG5cbiAgICAuc3VibWVudXtcbiAgICAgICAgdG9wOjEwMCU7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG5cbiAgICAubWVudS5zdWJtZW51IC5kcm9wZG93bi1pdGVte1xuICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2VkZWRlZDtcbiAgICAgICBjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuNSk7XG4gICAgICAgYmFja2dyb3VuZDogIzI5MmIyYztcbiAgICAgICBwYWRkaW5nOiAxZW07XG4gICAgICAgbWluLXdpZHRoOiAyMDBweDtcbiAgICB9XG5cbiAgICAuYWNjb3VudC5zdWJtZW51IC5kcm9wZG93bi1pdGVte1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTs7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgICAgY29sb3I6ICRkYXJrLWdyZXk7XG4gICAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAxZW07XG4gICAgICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3M7XG4gICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiRsaXRlLWdyZXk7XG4gICAgICAgIH1cbiAgICB9XG5cblxuICAgIC5zZWFyY2guc3VibWVudXtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgICAgICAgcGFkZGluZzoxZW0gMDtcblxuICAgICAgICBmb3Jte1xuICAgICAgICAgICAgd2lkdGg6ODAlO1xuICAgICAgICAgICAgbWFyZ2luOmF1dG87XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dHtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTpub25lO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDoxNSU7XG4gICAgICAgICAgICBmb250LXNpemU6MC45ZW07XG4gICAgICAgICAgICBjb2xvcjokZ3JleTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idG57XG4gICAgICAgICAgICBjb2xvcjokZGFyay1ncmV5O1xuICAgICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIGJvcmRlci1zdHlsZTpub25lO1xuICAgICAgICB9XG4gICAgfVxuXG59XG5cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBNRURJQVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuQG1lZGlhIGFsbCBhbmQgKG1heC13aWR0aDo5OTJweCkge1xuXG59XG4iLCJcbi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBGT09URVJcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLyovXG5cbmZvb3RlcntcblxuICAgIGJhY2tncm91bmQ6JGxpdGUtZ3JleTtcbn1cblxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICNmb290ZXItYmxvY2stMVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuI2Zvb3Rlci1ibG9jay0xe1xuXG4gICAgLmJsb2NrLWl0ZW0tMXtcbiAgICAgICAgcHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTowLjhlbTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9jay1pdGVtLTJ7XG4gICAgICAgIGg0e1xuICAgICAgICAgICAgZm9udC1zaXplOjAuOWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgdWx7XG4gICAgICAgICAgICBwYWRkaW5nOjA7XG4gICAgICAgIH1cblxuICAgICAgICBsaXtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6bm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGF7XG4gICAgICAgICAgICBmb250LXNpemU6MC43ZW07XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvY2staXRlbS0ze1xuICAgICAgICBwYWRkaW5nLXRvcDoxLjllbTtcblxuICAgICAgICBoNHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTowLjllbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGJ1dHRvbntcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6MDtcbiAgICAgICAgICAgIGNvbG9yOndoaXRlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDokdGVhbDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjFlbTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3M7XG5cbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDokcGluaztcbiAgICAgICAgICAgICAgICBjdXJzb3I6cG9pbnRlcjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXR7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOjA7XG4gICAgICAgIH1cblxuICAgICAgICAuc29jaWFse1xuICAgICAgICAgICAgcGFkZGluZy10b3A6MWVtO1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG5cbiAgICAgICAgfVxuICAgIH1cbn1cblxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICNmb290ZXItYmxvY2stMlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNmb290ZXItYmxvY2stMntcbiAgICBib3JkZXItdG9wOjFweCBzb2xpZCAkZ3JleTtcblxuICAgIC5jb3B5cmlnaHR7XG4gICAgICAgIGZvbnQtc2l6ZTowLjhlbTtcblxuICAgICAgICBhe1xuICAgICAgICAgICAgY29sb3I6JHRlYWw7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cbiIsIlxuLyovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIEhPTUVcblxuLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLyovXG5cbiNob21le1xuXG4gICAgLnNsaWNrLXNsaWRlIGltZ3tcbiAgICAgICAgICAgIHBhZGRpbmc6MCAxZW07XG4gICAgfVxuXG4gICAgLnNsaWNrLWFycm93e1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOjQ1JTtcbiAgICAgICAgei1pbmRleDoyO1xuICAgICAgICBib3JkZXItc3R5bGU6bm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjokZ3JleTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czoxMCU7XG4gICAgICAgIHBhZGRpbmc6MTVweCAxMHB4O1xuICAgICAgICAvLyBwYWRkaW5nLWxlZnQ6IDhweDtcbiAgICAgICAgY29sb3I6d2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZToxLjVlbTtcbiAgICAgICAgdHJhbnNpdGlvbjphbGwgMC4zcztcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6JGRhcmstZ3JleTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stbGVmdHtcbiAgICAgICAgbGVmdDotMTVweDtcbiAgICB9XG4gICAgLnNsaWNrLXJpZ2h0e1xuICAgICAgICByaWdodDotMTVweDtcbiAgICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgI2hvbWUtYmxvY2stMVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuI2hvbWUtYmxvY2stMXtcblxuICAgIHBhZGRpbmctdG9wOjA7XG5cbiAgICAuYmxvY2staXRlbS02e1xuXG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICB9XG5cbiAgICAudGV4dHtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIC8vIGhlaWdodDoyODBweDtcbiAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQ6JGdyZXk7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG5cblxuXG5cbiAgICAgICAgJi5waW5re1xuICAgICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudGl6ZSgkZGFyay1ncmV5LDAuNyk7XG4gICAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6MC41ZW0gMDtcblxuICAgICAgICB9XG5cbiAgICAgICAgJi50ZWFse1xuICAgICAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudGl6ZSgkdGVhbCwwLjUpO1xuICAgICAgICAgICAgY29sb3I6d2hpdGU7XG4gICAgICAgICAgICBwYWRkaW5nOjAuNWVtIDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAgICAgLmJsb2NrLTF7XG5cbiAgICAgICAgICAgIG1heC13aWR0aDo4MCU7XG4gICAgICAgICAgICBwYWRkaW5nOjFlbTtcbiAgICAgICAgICAgIHotaW5kZXg6MztcbiAgICAgICAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgICB9XG5cbiAgICAgICAgaDJ7XG4gICAgICAgICAgICBmb250LXNpemU6M2VtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDR7XG4gICAgICAgICAgICBmb250LXNpemU6MS4xZW07XG4gICAgICAgIH1cblxuICAgICAgICBwe1xuICAgICAgICAgICAgZm9udC1zaXplOjAuN2VtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDMsaDR7XG4gICAgICAgICAgICBmb250LXdlaWdodDozMDA7XG5cbiAgICAgICAgfVxuXG5cblxuXG5cbiAgICAuYmxvY2staXRlbS0xLFxuICAgIC5ibG9jay1pdGVtLTIsXG4gICAgLmJsb2NrLWl0ZW0tMyxcbiAgICAuYmxvY2staXRlbS00LFxuICAgIC5ibG9jay1pdGVtLTV7XG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgICAgICAuYmctY29udGFpbmVye1xuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6MDtcbiAgICAgICAgICAgIGxlZnQ6MDtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6dHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOjAuNWVtO1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJne1xuICAgICAgICAgICAgaGVpZ2h0OjEwMCU7XG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczpjZW50ZXI7XG4gICAgICAgICAgICBmbGV4LWRpcmVjdGlvbjpjb2x1bW47XG4gICAgICAgICAgICB0ZXh0LWFsaWduOnJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gaDJ7XG4gICAgICAgIC8vICAgICBjb2xvcjokdGVhbDtcbiAgICAgICAgLy8gfVxuXG5cbiAgICB9XG5cbiAgICAudGV4dC50ZWFse1xuXG4gICAgICAgIGg0e1xuICAgICAgICAgICAgZm9udC1zaXplOjAuOWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDJ7XG4gICAgICAgICAgICBmb250LXNpemU6My41ZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjAuNWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgYXtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOjAuNWVtIDEuNWVtO1xuICAgICAgICAgICAgY29sb3I6d2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiR0ZWFsO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3M7XG4gICAgICAgICAgICBib3JkZXItc3R5bGU6bm9uZTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6bm9uZTtcbiAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDokcGluaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9jay1pdGVtLTZ7XG5cbiAgICAgICAgLnRleHR7XG5cbiAgICAgICAgICAgICYucGlua3l7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDokcGluaztcbiAgICAgICAgICAgICAgICBjb2xvcjp3aGl0ZTtcblxuICAgICAgICAgICAgICAgIGg0e1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXJ7XG5cbiAgICAgICAgICAgICAgICBoMixcbiAgICAgICAgICAgICAgICBoMyxcbiAgICAgICAgICAgICAgICBoNCxcbiAgICAgICAgICAgICAgICBwe1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYmxvY2stMi5ob3ZlcntcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDokdGVhbDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOnNjYWxlKDEsMSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuYmxvY2stMi5ob3ZlcntcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDowO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTpzY2FsZSgwLDApO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjRzO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6MjtcblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBoNCxwe1xuICAgICAgICAgICAgICAgIGNvbG9yOiR0ZWFsO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgICNob21lLWJsb2NrLTJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4jaG9tZS1ibG9jay0ye1xuXG4gIC5uZXctcHJvZHVjdHN7XG4gICAgcGFkZGluZy10b3A6MmVtO1xuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgI2hvbWUtYmxvY2stNFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuXG4jaG9tZS1ibG9jay00e1xuXG4gICAgYmFja2dyb3VuZDokdGVhbDtcbiAgICBjb2xvcjp3aGl0ZTtcbiAgICBmb250LXNpemU6MC44ZW07XG5cbiAgICBpbWd7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6NTAlO1xuICAgIH1cblxuICAgIGg0e1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZToxLjJlbTtcbiAgICB9XG5cbiAgICAucXVvdGV7XG4gICAgICAgIGZvbnQtc2l6ZTo0ZW07XG4gICAgfVxufVxuXG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgI2hvbWUtYmxvY2stNVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuI2hvbWUtYmxvY2stNXtcblxuICAgIHBhZGRpbmc6M2VtIDA7XG4gICAgZm9udC1zaXplOjAuOGVtO1xuXG4gICAgaDR7XG4gICAgICAgIGZvbnQtc2l6ZToxLjNlbTtcbiAgICB9XG5cbiAgICAuYnRue1xuICAgICAgICBiYWNrZ3JvdW5kOiR0ZWFsO1xuICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6IDBweCA5cHggOHB4IDFweCByZ2JhKDE4MSwxODEsMTgxLDAuNSk7XG4gICAgICAgIC1tb3otYm94LXNoYWRvdzogMHB4IDlweCA4cHggMXB4IHJnYmEoMTgxLDE4MSwxODEsMC41KTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDlweCA4cHggMXB4IHJnYmEoMTgxLDE4MSwxODEsMC41KTtcbiAgICAgICAgYm9yZGVyLXN0eWxlOm5vbmU7XG4gICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3M7XG5cbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGJhY2tncm91bmQ6JHBpbms7XG4gICAgICAgIH1cbiAgICB9XG5cblxuXG4gICAgLmRhdGUsXG4gICAgLmNvbW1lbnRze1xuICAgICAgICBjb2xvcjokdGVhbDtcbiAgICB9XG5cbn1cblxuXG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgTUVESUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbkBtZWRpYSBhbGwgYW5kKG1heC13aWR0aDo5OTJweCkge1xuXG4gICAgI2hvbWUtYmxvY2stMXtcbiAgICAgICAgaDJ7XG4gICAgICAgICAgICBmb250LXNpemU6Mi41ZW07XG4gICAgICAgIH1cblxuICAgICAgICBoM3tcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxLjJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGg0e1xuICAgICAgICAgICAgZm9udC1zaXplOjAuOWVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcHtcbiAgICAgICAgICAgIGRpc3BsYXk6bm9uZTtcbiAgICAgICAgfVxuXG5cbiAgICB9XG5cbn1cblxuQG1lZGlhIGFsbCBhbmQobWF4LXdpZHRoOjc2N3B4KSB7XG5cbiAgICAjaG9tZS1ibG9jay0xe1xuICAgICAgICBoMntcbiAgICAgICAgICAgIGZvbnQtc2l6ZTozZW07XG4gICAgICAgIH1cblxuICAgICAgICBoM3tcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxLjdlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGg0e1xuICAgICAgICAgICAgZm9udC1zaXplOjEuMmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcHtcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICAgIH1cblxuXG5cblxuICAgIH1cblxufVxuXG5AbWVkaWEgYWxsIGFuZChtYXgtd2lkdGg6NTY3cHgpIHtcblxuICAgICNob21lLWJsb2NrLTF7XG5cbiAgICAgICAgLmJsb2NrLWl0ZW0tMSxcbiAgICAgICAgLmJsb2NrLWl0ZW0tNHtcbiAgICAgICAgICAgIC5iZ3tcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50aXplKCR0ZWFsLCAwLjUpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGV4dC50ZWFse1xuXG4gICAgICAgICAgICAgICAgaDJ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToyZW07XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuXG5cbiAgICB9XG5cbn1cbiIsIi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBQUk9EVUNUXG5cbi8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8qL1xuXG5cbiNwcm9kdWN0e1xuXG4gIC5icmVhZGNydW1ie1xuICAgIG1hcmdpbjowO1xuICB9XG5cbiAgLmJyZWFkY3J1bWItbmF2e1xuICAgIGRpc3BsYXk6ZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOjAgMC41ZW07XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiRncmV5O1xuXG4gIH1cblxuICAuY2FydC1idG57XG4gICAgYmFja2dyb3VuZC1jb2xvcjokdGVhbDtcbiAgICBib3JkZXItY29sb3I6dHJhbnNwYXJlbnQ7XG4gICAgY29sb3I6d2hpdGU7XG4gICAgbWF4LXdpZHRoOjIwMHB4O1xuICAgIHBhZGRpbmc6IDAuNWVtIDJlbTtcbiAgICBtYXJnaW4tYm90dG9tOjAuNWVtO1xuICAgIGZvbnQtc2l6ZToxLjNlbTtcbiAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAmLmRpc2FibGVke1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmstZ3JleTtcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6JGRhcmstZ3JleTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlcntcbiAgICAgIGJhY2tncm91bmQtY29sb3I6JHBpbms7XG4gICAgfVxuICB9XG5cblxuICAuY3VzdG9tZXIte1xuXG4gICAgJmljb257XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiR0ZWFsO1xuICAgICAgaGVpZ2h0OjQwcHg7XG4gICAgICB3aWR0aDo0MHB4O1xuICAgICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgfVxuXG4gICAgJm5hbWV7XG4gICAgICBjb2xvcjokZGFyay1ncmV5O1xuICAgICAgbWFyZ2luLWxlZnQ6MWVtO1xuICAgICAgZm9udC1zaXplOjAuOWVtO1xuICAgIH1cblxuICAgICZ0aXRsZXtcbiAgICAgIGZvbnQtc2l6ZToxLjVlbTtcbiAgICB9XG5cbiAgICAmcmF0aW5ne1xuICAgICAgZm9udC1zaXplOjAuOGVtO1xuICAgICAgY29sb3I6JGRhcmstZ3JleTtcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIG1hcmdpbi1ib3R0b206MWVtO1xuICAgIH1cblxuICAgICZyZXZpZXd7XG4gICAgICBwYWRkaW5nOjIuNWVtIDA7XG4gICAgICBib3JkZXItYm90dG9tOjFweCBzb2xpZCAkZ3JleTtcbiAgICB9XG5cbiAgICAmcmV2aWV3c3tcbiAgICBwYWRkaW5nOjJlbSAwO1xuICAgIHRleHQtYWxpZ246Y2VudGVyO1xuXG5cbiAgICAgIC50aXRsZXtcbiAgICAgICAgZm9udC1zaXplOjJlbTtcbiAgICAgIH1cblxuICAgICAgLnN0YXItcmF0aW5ne1xuICAgICAgICBmb250LXNpemU6MmVtO1xuICAgICAgICBtYXJnaW46IDFlbSAwO1xuICAgICAgfVxuXG4gICAgICAucmF0aW5ne1xuICAgICAgICBmb250LXNpemU6MC45ZW07XG4gICAgICAgIG1hcmdpbi1ib3R0b206MWVtO1xuICAgICAgfVxuXG4gICAgfVxuXG4gICAgJnN1bW1hcnl7XG4gICAgICBjb2xvcjokZGFyay1ncmV5O1xuICAgIH1cbiAgfVxuXG4gIC5kYXRle1xuICAgIG1hcmdpbi1sZWZ0OjFlbTtcbiAgfVxuXG4gICNkZXRhaWx7XG4gICAgcGFkZGluZzozLjVlbSAwO1xuICB9XG5cbiAgLmxhYmVse1xuICAgIGNvbG9yOiRkYXJrLWdyZXk7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXNpemU6MC44ZW07XG4gIH1cblxuICAucHJvZHVjdC17XG5cbiAgICAmbGlua3N7XG4gICAgICBkaXNwbGF5OmZsZXg7XG5cbiAgICAgIC5sYWJlbHtcbiAgICAgICAgY29sb3I6JGRhcmstZ3JleTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC1zaXplOjAuOGVtO1xuICAgICAgfVxuICAgIH1cblxuICAgICZuYW1le1xuICAgICAgdGV4dC1hbGlnbjppbmhlcml0O1xuICAgICAgZm9udC1zaXplOjEuMmVtO1xuICAgIH1cblxuICAgICZwcmljZXtcbiAgICAgIGZvbnQtc2l6ZToxLjVlbTtcbiAgICAgIGNvbG9yOiRkYXJrLWdyZXk7XG4gICAgICAmLWNvbnRhaW5lcntcbiAgICAgICAgbWFyZ2luOjFlbSAwO1xuICAgICAgICBwe1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206MDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuXG5cbiAgICAmcmV2aWV3c3tcbiAgICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmV5O1xuICAgICAgd2lkdGg6OTAlO1xuICAgICAgbWFyZ2luOmF1dG87XG4gICAgICBtYXJnaW4tdG9wOjFlbTtcbiAgICAgIC8vIGhlaWdodDo0MDBweDtcbiAgICB9XG5cbiAgICAmc2l6ZXtcbiAgICAgIG1heC13aWR0aDoyMDBweDtcbiAgICAgIG1hcmdpbjoxZW0gMDtcbiAgICB9XG4gIH0vLy5wcm9kdWN0XG5cbiAgJi1xdWFudGl0eXtcbiAgICBtYXJnaW46MWVtIDA7XG4gICAgYnV0dG9ue1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjp0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1zdHlsZTpub25lO1xuICAgICAgJjpob3ZlcntcbiAgICAgICAgc3BhbntcbiAgICAgICAgICBjb2xvcjokcGluaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBpbnB1dHtcbiAgICAgIGJvcmRlci1zdHlsZTpub25lO1xuICAgICAgd2lkdGg6NTBweDtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5yYXRpbmcte1xuXG4gICAgJmNvbnRhaW5lcntcbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIG1hcmdpbi1yaWdodDoxLjVlbTtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgJnJldmlld3N7XG4gICAgICBjb2xvcjokZGFyay1ncmV5O1xuICAgICAgZm9udC1zdHlsZTpvYmxpcXVlO1xuICAgICAgZm9udC1zaXplOjAuN2VtO1xuICAgICAgbWFyZ2luLWxlZnQ6MWVtO1xuICAgIH1cbiAgfS8vLnJhdGluZ1xuXG5cbiAgLnJldmlldy1oZWFkZXJ7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBjb2xvcjokZGFyay1ncmV5O1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmV5O1xuICAgIHBhZGRpbmc6MC41ZW0gMDtcbiAgfVxuXG4gIC5zaGFyZS1saW5rc3tcbiAgICBkaXNwbGF5OmZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgIG1hcmdpbi1sZWZ0OjFlbTtcbiAgICB3aWR0aDoyMDBweDtcbiAgfVxuXG4gIC5zb2NpYWx7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIGZvbnQtc2l6ZTowLjhlbTtcbiAgfVxufVxuIiwiLyovLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy9cblxuICAgIFJFQ0VOVCBBUlJJVkFMU1xuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKi9cblxuXG4jcmVjZW50LWFycml2YWxze1xuXG4gIC5jYXJke1xuICAgIHBhZGRpbmc6MCAxNXB4O1xuICAgIGJvcmRlci1zdHlsZTpub25lO1xuXG4gICAgJi1ib2R5e1xuICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgfVxuXG4gICAgJi10aXRsZXtcbiAgICAgIG1hcmdpbjoxZW0gMDtcbiAgICB9XG4gIH0vLy5jYXJkXG5cblxuICAuZmlsdGVye1xuXG4gICAgJi1pdGVte1xuICAgICAgbWFyZ2luLWJvdHRvbTowLjVlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOmNhcGl0YWxpemU7XG4gICAgfVxuXG4gICAgJi1saXN0e1xuICAgICAgbWFyZ2luOjFlbSAwO1xuICAgICAgLy8gZGlzcGxheTpub25lO1xuICAgICAgJi1ncm91cHtcbiAgICAgICAgbWFyZ2luLXRvcDoyLjJlbTtcbiAgICAgIH1cbiAgICB9XG4gICAgJi1uYW1le1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luOjA7XG4gICAgICB3aWR0aDoxMDAlO1xuICAgICAgYWxpZ24tc2VsZjogY2VudGVyO1xuICAgIH1cblxuICB9Ly8uZmlsdGVyXG5cbiAgLnBhZ2V7XG4gICAgICAmLWFycm93e1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOm5vbmU7XG4gICAgICAgIG1hcmdpbjowIDhweDtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICAgICYuZGlzYWJsZWR7XG4gICAgICAgICAgY29sb3I6JGdyZXk7XG4gICAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICAgIGN1cnNvcjpub3QtYWxsb3dlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYtaXRlbXtcbiAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgfVxuICAgICAgJi1saW5re1xuICAgICAgICBjb2xvcjokYmxhY2s7XG4gICAgICAgIGJhY2tncm91bmQ6d2hpdGU7XG4gICAgICAgIG1hcmdpbjowIDhweDtcbiAgICAgICAgJjpob3ZlciwmLmFjdGl2ZXtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiRibGFjaztcbiAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICB9XG5cbiAgLnBhZ2luYXRpb257XG4gICAgbWFyZ2luOjFlbSAwO1xuICAgIHBhZGRpbmc6MWVtIDA7XG4gICAgZGlzcGxheTpmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGJvcmRlci10b3A6MXB4IHNvbGlkICRncmV5O1xuICAgIGJvcmRlci1ib3R0b206MXB4IHNvbGlkICRncmV5O1xuXG5cbiAgfS8vLnBhZ2luYXRpb25cblxuICAucHJvZHVjdHtcblxuICAgICYtbmFtZSwgJi1wcmljZXtcbiAgICAgIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgfVxuXG4gICAgJi1uYW1le1xuICAgICAgbWFyZ2luLXRvcDowLjVlbTtcbiAgICAgIGZvbnQtc2l6ZTowLjdlbTtcbiAgICB9XG5cbiAgICAmLXByaWNle1xuICAgICAgY29sb3I6JHRlYWw7XG4gICAgfVxuXG4gIH0vLyAucHJvZHVjdFxufS8vICNyZWNlbnQtYXJyaXZhbHNcbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgI2NhcnRcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbiNjYXJ0e1xuXG5cbiAgLmNoZWNrb3V0LWJ0bntcbiAgICBiYWNrZ3JvdW5kOiR0ZWFsO1xuICAgIGJvcmRlci1yYWRpdXM6NXB4O1xuICAgIHBhZGRpbmc6MC41ZW07XG4gICAgY29sb3I6d2hpdGU7XG4gICAgbWF4LXdpZHRoOjIyMHB4O1xuICAgICY6aG92ZXJ7XG4gICAgICBiYWNrZ3JvdW5kOiRwaW5rO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOm5vbmU7XG4gICAgfVxuICB9XG4gIC5zaG9wcGluZy1jYXJ0e1xuICAgICYtY29udGFpbmVye1xuICAgICAgbWFyZ2luOmF1dG87XG4gICAgICB3aWR0aDo4MCU7XG5cbiAgICB9XG4gIH1cbiAgLnN1YnRvdGFse1xuICAgICYtY29udGFpbmVye1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246Y29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgcGFkZGluZy1ib3R0b206M2VtO1xuXG4gICAgfVxuICAgICYtYmxvY2t7XG4gICAgICBmb250LXNpemU6MjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206MWVtO1xuICAgIH1cbiAgfVxufVxuXG5cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAjY2FydC1tb2RhbFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuI2NhcnQtbW9kYWx7XG4gIGRpc3BsYXk6bm9uZTtcbiAgaGVpZ2h0OjA7XG4gIHdpZHRoOjA7XG4gIHRyYW5zaXRpb246YWxsIDAuM3M7XG4gIHBvc2l0aW9uOmZpeGVkO1xuICB6LWluZGV4OiAxMDA7XG4gIHRvcDowO1xuXG4gICYub3Blbi1tb2RhbHtcbiAgICBiYWNrZ3JvdW5kOnRyYW5zcGFyZW50aXplKCRibGFjaywwLjUpO1xuICAgIGhlaWdodDoxMDAlO1xuICAgIHdpZHRoOjEwMCU7XG4gICAgZGlzcGxheTpibG9jaztcbiAgfVxuXG5cbiAgLmNhcnQte1xuICAgICZib2R5e1xuICAgICAgbWluLWhlaWdodDozMDBweDtcbiAgICAgIG92ZXJmbG93LXk6c2Nyb2xsO1xuICAgICAgLy8gbWFyZ2luOjFlbSAwO1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICAgIGJhY2tncm91bmQ6JGxpdGUtZ3JleTtcbiAgICAgIGhlaWdodDoxMDAlO1xuICAgIH1cblxuICAgICZidG57XG4gICAgICBtYXJnaW46YXV0bztcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBmb250LXNpemU6MjFweDtcbiAgICAgIGJhY2tncm91bmQ6JHRlYWw7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGNvbG9yOndoaXRlO1xuICAgICAgd2lkdGg6OTAlO1xuICAgICAgdHJhbnNpdGlvbjphbGwgMC4zcztcbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGJhY2tncm91bmQ6JHBpbms7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJmZvb3RlcntcbiAgICAgIHBvc2l0aW9uOmFic29sdXRlO1xuICAgICAgYm90dG9tOjA7XG4gICAgICBiYWNrZ3JvdW5kOndoaXRlO1xuICAgICAgcGFkZGluZzowLjVlbSAwO1xuICAgICAgd2lkdGg6OTUlO1xuICAgIH1cblxuICAgICZoZWFkZXJ7XG5cbiAgICAgIGRpc3BsYXk6ZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOmJhc2VsaW5lO1xuICAgICAgcGFkZGluZy1ib3R0b206IDAuNWVtIDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTtcbiAgICAgIC5idG57XG4gICAgICAgIGNvbG9yOndoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiR0ZWFsO1xuICAgICAgICB0cmFuc2l0aW9uOmFsbCAwLjNzO1xuICAgICAgICBwYWRkaW5nOjAuNWVtO1xuICAgICAgICAvLyBmb250LXNpemU6MTZweDtcbiAgICAgICAgJjpob3ZlcntcbiAgICAgICAgICBiYWNrZ3JvdW5kOiRwaW5rO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICZpdGVte1xuICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAubmFtZXtcbiAgICAgICAgZm9udC1zaXplOjE2cHg7XG4gICAgICB9XG4gICAgICAucHJpY2UsLnF1YW50aXR5e1xuICAgICAgICBmb250LXNpemU6MTRweDtcbiAgICAgIH1cbiAgICAgIC5zaXple1xuICAgICAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbiAgICAgICAgdG9wOjEwcHg7XG4gICAgICAgIHJpZ2h0OjA7XG4gICAgICAgIGJhY2tncm91bmQ6JGRhcmstZ3JleTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czozcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOmNhcGl0YWxpemU7XG4gICAgICAgIHBhZGRpbmc6MnB4O1xuICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgd2lkdGg6NzBweDtcbiAgICAgICAgZm9udC1zaXplOjEycHg7XG4gICAgICB9XG4gICAgICBzcGFue1xuICAgICAgICBwYWRkaW5nOjAgNnB4O1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOmNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgICZtZW51e1xuICAgICAgYmFja2dyb3VuZDp3aGl0ZTtcbiAgICAgIHdpZHRoOjQ1MHB4O1xuICAgICAgcGFkZGluZzoxZW07XG4gICAgICBoZWlnaHQ6MTAwJTtcbiAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xuICAgIH1cblxuICB9XG5cbiAgI3RvdGFsLXByaWNle1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKHdoaXRlLCAwLjUpO1xuICAgIGJvcmRlci1yYWRpdXM6NXB4O1xuICAgIHBhZGRpbmc6MnB4IDVweDtcbiAgICBtYXJnaW4tbGVmdDoxMHB4O1xuXG4gIH1cbn1cbiIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgI2NoZWNrb3V0XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuXG4jY2hlY2tvdXR7XG5cbiAgLmNoZWNrb3V0e1xuXG4gICAgJi1oZWFkZXJ7XG4gICAgICBmb250LXNpemU6MjRweDtcbiAgICB9XG4gIH1cbiAgLml0ZW17XG5cbiAgICAmLWJsb2Nre1xuICAgICAgbWFyZ2luLWJvdHRvbToxZW07XG4gICAgfVxuXG4gICAgJi1jb250YWluZXJ7XG5cbiAgICB9XG5cbiAgICAmLWRldGFpbHN7XG5cbiAgICAgICBzcGFuIHtcbiAgICAgICAgIG1hcmdpbi1yaWdodDoxNXB4O1xuICAgICAgICAgZm9udC1zaXplOjAuOGVtO1xuICAgICAgIH1cbiAgICB9XG4gICAgJi1pbWd7XG4gICAgICBtYXgtd2lkdGg6NTBweDtcbiAgICAgIG1heC1oZWlnaHQ6NTBweDtcbiAgICAgIG1hcmdpbi1yaWdodDogMWVtO1xuICAgIH1cblxuICAgICYtaGVhZGVye1xuICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLW5hbWV7XG4gICAgICBmb250LXNpemU6MjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XG4gICAgICBjb2xvcjokdGVhbDtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAtMXB4O1xuICAgICAgZm9udC13ZWlnaHQ6bGlnaHRlcjtcbiAgICB9XG5cblxuICB9Ly9pdGVtXG5cbiAgI2RldGFpbHMtY29udGFpbmVye1xuICAgIGJvcmRlci1yaWdodDozcHggc29saWQgJGxpdGUtZ3JleTtcbiAgICBtYXJnaW4tcmlnaHQ6MWVtO1xuICB9XG5cbiAgI29yZGVyLWNvbnRhaW5lcntcbiAgICBwe1xuICAgICAgZm9udC1zaXplOjAuOGVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTo1cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplO1xuXG4gICAgfVxuICB9XG5cbiAgLm9yZGVye1xuXG4gICAgJi1idG57XG4gICAgICBib3JkZXItcmFkaXVzOjNweDtcbiAgICAgIGNvbG9yOndoaXRlO1xuICAgICAgYmFja2dyb3VuZDokdGVhbDtcbiAgICAgIGRpc3BsYXk6YmxvY2s7XG4gICAgICBib3JkZXItc3R5bGU6bm9uZTtcbiAgICAgIHBhZGRpbmc6MC4zZW0gMC41ZW07XG4gICAgICBmb250LXNpemU6MjBweDtcbiAgICAgIG1hcmdpbi10b3A6MWVtO1xuICAgICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICAgIHdpZHRoOjEwMCU7XG4gICAgICBtYXgtd2lkdGg6MzUwcHg7XG5cbiAgICAgICY6aG92ZXJ7XG4gICAgICAgIGJhY2tncm91bmQ6JHBpbms7XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAjc3RyaXBlLWZvcm17XG4gICAgYmFja2dyb3VuZDojMjYyNjI2O1xuICAgIGJvcmRlci1yYWRpdXM6NXB4O1xuICAgIG1heC13aWR0aDozNTBweDtcbiAgICBwYWRkaW5nOjVweDtcblxuXG4gIH1cbn1cbiIsIi8qLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vXG5cbiAgICBMT0dJTlxuXG4vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vKi9cblxuXG4jbG9naW57XG5cblxuICAmTW9kYWx7XG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudGl6ZSgkYmxhY2ssIDAuNSk7XG5cbiAgICAubW9kYWx7XG5cbiAgICAgICYtYm9keXtcbiAgICAgICAgLmZvcm0tZ3JvdXB7XG4gICAgICAgICAgZGlzcGxheTpmbGV4O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgIC8vIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgIHdpZHRoOjcwJTtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXRvcDoxZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbToxZW07XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXR7XG5cbiAgICAgICAgICAmLmJ0bntcbiAgICAgICAgICAgIC8vIHRleHQtYWxpZ246Y2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDokdGVhbDtcbiAgICAgICAgICAgIGNvbG9yOndoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTpibG9jaztcbiAgICAgICAgICAgIHdpZHRoOjEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5mb3JtLWNvbnRyb2x7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiRncmV5O1xuICAgICAgICAgICAgYm9yZGVyLXN0eWxlOm5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6cGxhY2Vob2xkZXJ7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZ29vZ2xlLWJ0bntcbiAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiMwMDk5ZmY7XG4gICAgICAgICAgYm9yZGVyLXN0eWxlOm5vbmU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czo1cHg7XG4gICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgICBwYWRkaW5nOjdweDtcbiAgICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgLm5hbWV7XG4gICAgICAgICAgICAgbWFyZ2luOmF1dG87XG4gICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfS8vYm9keVxuXG4gICAgICAmLWZvb3RlcntcbiAgICAgICAgLnNpZ251cC1tc2d7XG4gICAgICAgICAgbWFyZ2luOmF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOjAuN2VtO1xuICAgICAgICB9XG5cblxuICAgICAgfVxuXG5cbiAgICAgICYtaGVhZGVye1xuICAgICAgICBkaXNwbGF5OmZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgI2xvZ297XG4gICAgICAgICAgIHdpZHRoOjIwMHB4O1xuICAgICAgICAgICBtYXJnaW4tdG9wOi0zZW07XG4gICAgICAgICB9XG4gICAgICB9Ly9oZWFkZXJcbiAgICB9XG4gIH1cbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUVDQTs7Ozt1Q0FJdUM7QUFFdkMsQUFBQSxnQkFBZ0IsQ0FBQTtFQUNkLFNBQVMsRUFBQyxLQUFLO0NBQ2hCOztBQUVEOztzQ0FFc0M7QUFFdEMsQUFDRSxpQkFEZSxBQUNkLE1BQU0sQ0FBQTtFQUNMLGVBQWUsRUFBQyxJQUFJO0NBQ3JCOztBQU1IOztzQ0FFc0M7QUFFdEMsQUFBQSxJQUFJLENBQUE7RUFDQSxVQUFVLEVEMUJQLE9BQU87RUMyQlYsUUFBUSxFQUFFLFFBQVE7Q0FTckI7O0FBWEQsQUFJSSxJQUpBLENBSUEsQ0FBQyxDQUFBO0VBQ0csS0FBSyxFRGhDRCxJQUFJO0VDaUNSLFVBQVUsRUFBQyxRQUFRO0NBSXRCOztBQVZMLEFBT1EsSUFQSixDQUlBLENBQUMsQUFHSSxNQUFNLENBQUE7RUFDSCxLQUFLLEVEaENWLE9BQU87Q0NpQ0w7O0FBS1Q7O3NDQUVzQztBQUdsQyxBQUFBLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRSxDQUNGO0VBQ0ksY0FBYyxFQUFDLFNBQVM7RUFDeEIsV0FBVyxFQUFDLEdBQUc7Q0FDbEI7O0FBSUw7O3NDQUVzQztBQUV0QyxBQUFBLElBQUksQ0FBQTtFQUNBLFVBQVUsRUFBQyxLQUFLO0NBQ25COztBQUdEOztzQ0FFc0M7QUFDdEMsQUFBQSxhQUFhLENBQUE7RUFDVCxRQUFRLEVBQUMsS0FBSztFQUNkLEdBQUcsRUFBQyxHQUFHO0VBQ1AsS0FBSyxFQUFDLENBQUM7RUFDUCxPQUFPLEVBQUMsSUFBSTtFQUNaLGNBQWMsRUFBQyxNQUFNO0VBQ3JCLE9BQU8sRUFBRSxFQUFFO0NBZWQ7O0FBckJELEFBUUksYUFSUyxDQVFULENBQUMsQ0FBQTtFQUNHLFVBQVUsRUFBQyxLQUFLO0VBQ2hCLE9BQU8sRUFBQyxHQUFHO0VBQ1gsS0FBSyxFRC9FTixPQUFPO0VDZ0ZOLFNBQVMsRUFBQyxLQUFLO0VBQ2YsVUFBVSxFQUFDLFFBQVE7RUFDbkIsYUFBYSxFQUFDLEtBQUs7Q0FNdEI7O0FBcEJMLEFBZVEsYUFmSyxDQVFULENBQUMsQUFPSSxNQUFNLENBQUE7RUFDSCxVQUFVLEVEbkZmLE9BQU87RUNvRkYsS0FBSyxFQUFDLEtBQUs7RUFDWCxlQUFlLEVBQUMsSUFBSTtDQUN2Qjs7QUFJVDs7c0NBRXNDO0FBQ3RDLEFBQUEsV0FBVyxFQUFDLEtBQUssQ0FBQTtFQUNiLEtBQUssRUQvRkYsT0FBTztDQ2dHYjs7QUFFRDs7c0NBRXNDO0FBQ3RDLEFBQUEsV0FBVyxFQUFDLEtBQUssQ0FBQTtFQUNiLEtBQUssRURyR0YsT0FBTztDQ3NHYjs7QUFHRDs7c0NBRXNDO0FBR25DLEFBQUQsYUFBTSxFQUFHLGNBQU0sQ0FBQTtFQUNiLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLFNBQVMsRUFBQyxLQUFLO0NBQ2hCOztBQUVBLEFBQUQsYUFBTSxDQUFBO0VBQ0osVUFBVSxFQUFDLEtBQUs7RUFDaEIsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FBRUEsQUFBRCxjQUFPLENBQUE7RUFDTCxLQUFLLEVEMUhGLE9BQU87Q0MySFg7O0FBS0g7O3NDQUVzQztBQUN0QyxBQUVJLE9BRkcsQUFBQSxjQUFjLENBRWpCLGFBQWEsQ0FBQTtFQUNYLE9BQU8sRUFBQyxLQUFLO0VBQ2IsTUFBTSxFQUFDLElBQUk7Q0FJWjs7QUFSTCxBQUtRLE9BTEQsQUFBQSxjQUFjLENBRWpCLGFBQWEsR0FHUCxHQUFHLENBQUE7RUFDRCxVQUFVLEVEeklmLE9BQU87Q0MwSUw7O0FBSVQ7O3NDQUVzQztBQUV0QyxBQUFBLE1BQU0sQ0FBQztFQUNMLGtCQUFrQixFQUFFLElBQUk7RUFDeEIsbUJBQW1CLEVBQUUsUUFBUTtFQUM3Qix5QkFBeUIsRUFBRSxRQUFRO0VBQ25DLGNBQWMsRUFBRSxTQUFTO0VBQ3pCLHlCQUF5QixFQUFFLE1BQU07RUFDakMsVUFBVSxFRDFKQSxPQUFPO0VDMkpqQixVQUFVLEVEMUpMLE9BQU87RUMySlosVUFBVSxFQUFFLDBIQU9YO0VBQ0QsVUFBVSxFQUFFLCtEQUFtRTtFQUMvRSxlQUFlLEVBQUUsWUFBWTtFQUM3QixRQUFRLEVBQUUsUUFBUTtDQUNuQjs7QUFHRCxVQUFVLENBQVYsU0FBVTtFQUNSLEVBQUU7SUFDQSxtQkFBbUIsRUFBRSxRQUFROztFQUUvQixJQUFJO0lBQ0YsbUJBQW1CLEVBQUUsT0FBTzs7OztBQUloQzs7c0NBRXNDO0FBRXRDLEFBQUEsTUFBTSxDQUFBO0VBQ0osVUFBVSxFQUFDLFFBQVE7Q0FDcEI7O0FBRUQ7O3NDQUVzQztBQUV0QyxBQUFBLG9CQUFvQixDQUFBO0VBRWxCLFFBQVEsRUFBQyxRQUFRO0NBYWxCOztBQWZELEFBSUUsb0JBSmtCLENBSWxCLFNBQVMsQ0FBQTtFQUNQLFVBQVUsRURqTVAsT0FBTztFQ2tNVixLQUFLLEVBQUMsS0FBSztFQUNYLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEdBQUcsRUFBQyxJQUFJO0VBQ1IsS0FBSyxFQUFDLENBQUM7RUFDUCxTQUFTLEVBQUMsSUFBSTtFQUNkLFVBQVUsRUFBQyxNQUFNO0VBQ2pCLE9BQU8sRUFBQyxPQUFPO0VBQ2YsYUFBYSxFQUFDLEdBQUc7Q0FDbEI7O0FBR0g7O3NDQUVzQztBQUV0QyxBQUFBLFlBQVksQ0FBQTtFQUNWLE9BQU8sRUFBQyxJQUFJO0VBQ1osZUFBZSxFQUFFLE1BQU07RUFDdkIsV0FBVyxFQUFFLE1BQU07RUFDbkIsTUFBTSxFQUFFLEtBQUs7Q0FLZDs7QUFURCxBQUtFLFlBTFUsQ0FLVixRQUFRLEVBTFYsWUFBWSxDQUtELGlCQUFpQixDQUFBO0VBQ3hCLEtBQUssRUR2TkYsT0FBTztDQ3lOWDs7QUFJSDs7c0NBRXNDO0FBQ3RDLEFBQUEsT0FBTyxDQUFBO0VBQ0wsVUFBVSxFQUFFLE1BQU07RUFDbkIsVUFBVSxFQUFFLEtBQUs7RUFBRSw0QkFBNEI7RUFFL0MsbUJBQW1CLEVBQUUsR0FBRztFQUN4QixtQkFBbUIsRUFBRSxHQUFHO0NBSXhCOztBQVRELEFBTUUsT0FOSyxBQU1KLE9BQU8sQ0FBQTtFQUNOLFVBQVUsRUFBRSxDQUFDO0NBQ2Q7O0FDNU9IOzs7O3VDQUl1QztBQUtwQyxBQUFELGFBQU8sQ0FBQTtFQUNMLFNBQVMsRUFBQyxLQUFLO0VBQ2YsYUFBYSxFQUFFLFVBQVc7RUFDMUIsVUFBVSxFRlBQLE9BQU87RUVRVixPQUFPLEVBQUUsS0FBSztFQUNkLFdBQVcsRUFBQyxDQUFDO0NBSWQ7O0FBVEEsQUFNQyxhQU5LLENBTUwsS0FBSyxDQUFBO0VBQ0gsU0FBUyxFQUFDLElBQUk7Q0FDZjs7QUFHRixBQUFELGlCQUFXLENBQUE7RUFDVCxPQUFPLEVBQUMsSUFBSTtFQUNaLGVBQWUsRUFBRSxRQUFRO0VBQ3pCLFVBQVUsRUFBQyxJQUFJLENBQUMsS0FBSyxDRmxCbEIsT0FBTztDRTRCWDs7QUFiQSxBQVFHLGlCQVJPLENBSVQsQ0FBQyxBQUlFLE1BQU0sQ0FBQTtFQUNMLGVBQWUsRUFBRSxJQUFJO0NBQ3RCOztBQU9QLEFBQUEsTUFBTSxDQUFBO0VBQ0YsUUFBUSxFQUFDLFFBQVE7Q0FDcEI7O0FBSUQ7O3NDQUVzQztBQUV0QyxBQUFBLGVBQWUsQ0FBQTtFQUVYLGNBQWMsRUFBQyxVQUFVO0VBQ3pCLFNBQVMsRUFBQyxJQUFJO0VBQ2QsVUFBVSxFQUFDLEdBQUc7RUFDZCxNQUFNLEVBQUMsSUFBSTtFQUNYLE9BQU8sRUFBQyxJQUFJO0VBQ1osV0FBVyxFQUFDLE1BQU07Q0FRckI7O0FBZkQsQUFTSSxlQVRXLENBU1gsZUFBZSxDQUFBO0VBQ2IsVUFBVSxFRnREVCxPQUFPO0VFdURSLEtBQUssRUFBQyxLQUFLO0VBQ1gsT0FBTyxFQUFDLEdBQUc7Q0FDWjs7QUFLTDs7c0NBRXNDO0FBRXRDLEFBQUEsZUFBZSxDQUFBO0VBRVgsVUFBVSxFQUFDLEtBQUs7RUFDaEIsT0FBTyxFQUFDLENBQUM7RUFDVCxrQkFBa0IsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsd0JBQXFCO0VBQzNELGVBQWUsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsd0JBQXFCO0VBQ3hELFVBQVUsRUFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBRSxJQUFHLENBQUMsd0JBQXFCO0NBeUV0RDs7QUEvRUQsQUFVSSxlQVZXLENBVVgsTUFBTSxDQUFBO0VBQ0YsVUFBVSxFQUFDLE1BQU07RUFDakIsU0FBUyxFQUFDLElBQUk7Q0FDakI7O0FBYkwsQUFtQkksZUFuQlcsQ0FtQlgsU0FBUyxDQUFBO0VBQ0wsY0FBYyxFQUFDLFNBQVM7RUFDeEIsU0FBUyxFQUFDLEtBQUs7Q0FPbEI7O0FBNUJMLEFBc0JRLGVBdEJPLENBbUJYLFNBQVMsQUFHSixNQUFNLENBQUE7RUFDSCxLQUFLLEVGNUZMLElBQUk7Q0VnR1A7O0FBM0JULEFBOEJJLGVBOUJXLENBOEJYLFNBQVMsQ0FBQTtFQUNMLFVBQVUsRUFBQyxPQUFPO0VBQ2xCLE9BQU8sRUFBQyxPQUFPO0VBQ2YsUUFBUSxFQUFDLFFBQVE7Q0FDcEI7O0FBbENMLEFBb0NJLGVBcENXLENBb0NYLFFBQVEsQ0FBQTtFQUNKLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLFVBQVUsRUZ6R1gsT0FBTztFRTBHTixPQUFPLEVBQUMsSUFBSTtFQUNaLEdBQUcsRUFBQyxHQUFHO0VBQ1AsSUFBSSxFQUFDLENBQUM7RUFDTixPQUFPLEVBQUMsQ0FBQztFQUNULE9BQU8sRUFBQyxPQUFPO0NBU2xCOztBQXBETCxBQTZDUSxlQTdDTyxDQW9DWCxRQUFRLENBU0osRUFBRSxDQUFBO0VBQ0UsT0FBTyxFQUFDLEtBQUs7Q0FDaEI7O0FBL0NULEFBaURRLGVBakRPLENBb0NYLFFBQVEsQ0FhSixFQUFFLEdBQUcsRUFBRSxDQUFBO0VBQ0gsVUFBVSxFQUFDLElBQUk7Q0FDbEI7O0FBbkRULEFBdURJLGVBdkRXLENBdURYLGdCQUFnQixDQUFBO0VBQ1osVUFBVSxFRjFIWCxPQUFPO0VFMkhOLE9BQU8sRUFBQyxJQUFJO0VBQ1osVUFBVSxFQUFDLGdCQUFnQjtFQUMzQixLQUFLLEVBQUUsS0FBSztFQUNaLGFBQWEsRUFBRSxJQUFJO0VBQ25CLE1BQU0sRUFBRSxJQUFJO0VBQ1osS0FBSyxFQUFFLElBQUk7RUFDWCxPQUFPLEVBQUUsSUFBSTtFQUNiLFdBQVcsRUFBRSxNQUFNO0VBQ25CLGVBQWUsRUFBRSxNQUFNO0VBQ3ZCLFNBQVMsRUFBRSxJQUFJO0NBUWxCOztBQTFFTCxBQW1FUSxlQW5FTyxDQXVEWCxnQkFBZ0IsQUFZWCxPQUFPLENBQUE7RUFDTixVQUFVLEVGckliLE9BQU87Q0UwSUw7O0FBekVULEFBc0VVLGVBdEVLLENBdURYLGdCQUFnQixBQVlYLE9BQU8sQUFHTCxNQUFNLENBQUE7RUFDSixNQUFNLEVBQUMsT0FBTztDQUNoQjs7QUFTWDs7c0NBRXNDO0FBRXRDLEFBRUksWUFGUSxDQUVSLFFBQVEsQUFBQSxRQUFRLENBQUE7RUFDWixjQUFjLEVBQUMsU0FBUztFQUN4QixLQUFLLEVBQUMsS0FBSztFQUNYLFNBQVMsRUFBQyxLQUFLO0VBQ2YsVUFBVSxFQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDRmhLbEIsSUFBSTtFRWlLUixVQUFVLEVBQUMsS0FBSztFQUNoQixJQUFJLEVBQUMsS0FBSztDQWNiOztBQXRCTCxBQVNRLFlBVEksQ0FFUixRQUFRLEFBQUEsUUFBUSxDQU9aLEVBQUUsQ0FBQTtFQUVFLE1BQU0sRUFBQyxDQUFDO0VBQ1IsT0FBTyxFQUFDLEtBQUs7RUFDYixVQUFVLEVBQUUsSUFBSTtFQUNoQixVQUFVLEVBQUMsTUFBTTtDQUNwQjs7QUFmVCxBQWlCUSxZQWpCSSxDQUVSLFFBQVEsQUFBQSxRQUFRLENBZVosT0FBTyxDQUFDLENBQUMsQ0FBQTtFQUNMLEtBQUssRUZ6S1YsT0FBTztFRTBLRixTQUFTLEVBQUMsS0FBSztDQUVsQjs7QUFyQlQsQUF5QkksWUF6QlEsR0F5Qk4sV0FBVyxDQUFBO0VBQ1QsTUFBTSxFQUFDLElBQUk7Q0FRZDs7QUFsQ0wsQUE0QlEsWUE1QkksR0F5Qk4sV0FBVyxHQUdQLFNBQVMsQ0FBQTtFQUNQLE9BQU8sRUFBQyxJQUFJO0VBQ1osV0FBVyxFQUFDLE1BQU07RUFDbEIsT0FBTyxFQUFDLENBQUM7Q0FDWjs7QUFoQ1QsQUFxQ0ksWUFyQ1EsQ0FxQ1IsY0FBYyxDQUFBO0VBQ1YsT0FBTyxFQUFDLE9BQU87Q0FLbEI7O0FBM0NMLEFBdUNRLFlBdkNJLENBcUNSLGNBQWMsQUFFVCxNQUFNLENBQUE7RUFDSCxVQUFVLEVBQUMsSUFBSTtDQUNsQjs7QUFPVDs7c0NBRXNDO0FBRXRDLEFBRUksV0FGTyxDQUVQLENBQUMsQ0FBQTtFQUNHLE1BQU0sRUFBQyxLQUFLO0NBQ2Y7O0FBSkwsQUFNSSxXQU5PLENBTVAsV0FBVyxDQUFBO0VBQ1AsS0FBSyxFQUFDLElBQUk7RUFDVixPQUFPLEVBQUMsSUFBSTtDQUNmOztBQVRMLEFBV0ksV0FYTyxDQVdQLFNBQVMsQ0FBQTtFQUNMLFdBQVcsRUFBQyxlQUFlO0VBQzNCLE9BQU8sRUFBQyxJQUFJO0VBQ1osSUFBSSxFQUFDLENBQUM7RUFDTixlQUFlLEVBQUUsTUFBTTtDQUcxQjs7QUFsQkwsQUFvQkksV0FwQk8sQ0FvQlAsRUFBRSxBQUFBLFNBQVMsQUFBQSxTQUFTLEFBQUEsTUFBTSxDQUFDLGNBQWMsQ0FBQTtFQUNyQyxPQUFPLEVBQUMsS0FBSztDQUVoQjs7QUF2QkwsQUF5QkksV0F6Qk8sQ0F5QlAsY0FBYyxDQUFBO0VBQ1YsVUFBVSxFQUFDLEtBQUs7Q0FDbkI7O0FBM0JMLEFBNkJJLFdBN0JPLENBNkJQLFFBQVEsQ0FBQTtFQUNKLEdBQUcsRUFBQyxJQUFJO0VBQ1IsT0FBTyxFQUFDLENBQUM7RUFDVCxLQUFLLEVBQUMsSUFBSTtDQUNiOztBQWpDTCxBQW1DSSxXQW5DTyxDQW1DUCxLQUFLLEFBQUEsUUFBUSxDQUFDLGNBQWMsQ0FBQTtFQUN6QixjQUFjLEVBQUUsU0FBUztFQUN6QixTQUFTLEVBQUUsS0FBSztFQUNoQixhQUFhLEVBQUUsaUJBQWlCO0VBQ2hDLEtBQUssRUFBRSx3QkFBb0I7RUFDM0IsVUFBVSxFQUFFLE9BQU87RUFDbkIsT0FBTyxFQUFFLEdBQUc7RUFDWixTQUFTLEVBQUUsS0FBSztDQUNsQjs7QUEzQ0wsQUE2Q0ksV0E3Q08sQ0E2Q1AsUUFBUSxBQUFBLFFBQVEsQ0FBQyxjQUFjLENBQUE7RUFDM0IsY0FBYyxFQUFFLFVBQVU7RUFDMUIsU0FBUyxFQUFFLEtBQUs7RUFDaEIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENGNVB6QixPQUFPO0VFNlBOLEtBQUssRUYvUEQsSUFBSTtFRWdRUixVQUFVLEVBQUUsS0FBSztFQUNqQixPQUFPLEVBQUUsR0FBRztFQUNaLFNBQVMsRUFBRSxLQUFLO0VBQ2hCLEtBQUssRUFBQyxJQUFJO0VBQ1YsVUFBVSxFQUFDLFFBQVE7Q0FJdEI7O0FBMURMLEFBdURRLFdBdkRHLENBNkNQLFFBQVEsQUFBQSxRQUFRLENBQUMsY0FBYyxBQVUxQixNQUFNLENBQUE7RUFDSCxVQUFVLEVGclFWLE9BQU87Q0VzUVY7O0FBekRULEFBNkRJLFdBN0RPLENBNkRQLE9BQU8sQUFBQSxRQUFRLENBQUE7RUFDWCxLQUFLLEVBQUMsSUFBSTtFQUNWLFVBQVUsRUFBQyxLQUFLO0VBQ2hCLE9BQU8sRUFBQyxLQUFLO0NBbUJoQjs7QUFuRkwsQUFrRVEsV0FsRUcsQ0E2RFAsT0FBTyxBQUFBLFFBQVEsQ0FLWCxJQUFJLENBQUE7RUFDQSxLQUFLLEVBQUMsR0FBRztFQUNULE1BQU0sRUFBQyxJQUFJO0NBQ2Q7O0FBckVULEFBdUVRLFdBdkVHLENBNkRQLE9BQU8sQUFBQSxRQUFRLENBVVgsS0FBSyxDQUFBO0VBQ0QsWUFBWSxFQUFDLElBQUk7RUFDakIsYUFBYSxFQUFDLEdBQUc7RUFDakIsU0FBUyxFQUFDLEtBQUs7RUFDZixLQUFLLEVGdlJWLE9BQU87Q0V3Ukw7O0FBNUVULEFBOEVRLFdBOUVHLENBNkRQLE9BQU8sQUFBQSxRQUFRLENBaUJYLElBQUksQ0FBQTtFQUNBLEtBQUssRUY3UkwsSUFBSTtFRThSSixVQUFVLEVBQUMsV0FBVztFQUN0QixZQUFZLEVBQUMsSUFBSTtDQUNwQjs7QUFNVDs7c0NBRXNDO0FDeFN0Qzs7Ozt1Q0FJdUM7QUFFdkMsQUFBQSxNQUFNLENBQUE7RUFFRixVQUFVLEVIUEYsT0FBTztDR1FsQjs7QUFHRDs7c0NBRXNDO0FBRXRDLEFBR1EsZUFITyxDQUVYLGFBQWEsQ0FDVCxDQUFDLENBQUE7RUFDRyxTQUFTLEVBQUMsS0FBSztDQUNsQjs7QUFMVCxBQVNRLGVBVE8sQ0FRWCxhQUFhLENBQ1QsRUFBRSxDQUFBO0VBQ0UsU0FBUyxFQUFDLEtBQUs7Q0FDbEI7O0FBWFQsQUFhUSxlQWJPLENBUVgsYUFBYSxDQUtULEVBQUUsQ0FBQTtFQUNFLE9BQU8sRUFBQyxDQUFDO0NBQ1o7O0FBZlQsQUFpQlEsZUFqQk8sQ0FRWCxhQUFhLENBU1QsRUFBRSxDQUFBO0VBQ0UsVUFBVSxFQUFDLElBQUk7Q0FDbEI7O0FBbkJULEFBcUJRLGVBckJPLENBUVgsYUFBYSxDQWFULENBQUMsQ0FBQTtFQUNHLFNBQVMsRUFBQyxLQUFLO0VBQ2YsY0FBYyxFQUFDLFNBQVM7Q0FDM0I7O0FBeEJULEFBMkJJLGVBM0JXLENBMkJYLGFBQWEsQ0FBQTtFQUNULFdBQVcsRUFBQyxLQUFLO0NBOEJwQjs7QUExREwsQUE4QlEsZUE5Qk8sQ0EyQlgsYUFBYSxDQUdULEVBQUUsQ0FBQTtFQUNFLFNBQVMsRUFBQyxLQUFLO0NBQ2xCOztBQWhDVCxBQWtDUSxlQWxDTyxDQTJCWCxhQUFhLENBT1QsTUFBTSxDQUFBO0VBQ0YsYUFBYSxFQUFDLENBQUM7RUFDZixLQUFLLEVBQUMsS0FBSztFQUNYLFVBQVUsRUhsRGYsT0FBTztFR21ERixXQUFXLEVBQUMsR0FBRztFQUNmLFVBQVUsRUFBQyxRQUFRO0NBT3RCOztBQTlDVCxBQXlDWSxlQXpDRyxDQTJCWCxhQUFhLENBT1QsTUFBTSxBQU9ELE1BQU0sQ0FBQTtFQUNILFVBQVUsRUh0RG5CLE9BQU87RUd1REUsTUFBTSxFQUFDLE9BQU87Q0FDakI7O0FBNUNiLEFBZ0RRLGVBaERPLENBMkJYLGFBQWEsQ0FxQlQsS0FBSyxDQUFBO0VBQ0QsYUFBYSxFQUFDLENBQUM7Q0FDbEI7O0FBbERULEFBb0RRLGVBcERPLENBMkJYLGFBQWEsQ0F5QlQsT0FBTyxDQUFBO0VBQ0gsV0FBVyxFQUFDLEdBQUc7RUFDZixPQUFPLEVBQUMsSUFBSTtFQUNaLGVBQWUsRUFBRSxZQUFZO0NBRWhDOztBQUtUOztzQ0FFc0M7QUFDdEMsQUFBQSxlQUFlLENBQUE7RUFDWCxVQUFVLEVBQUMsR0FBRyxDQUFDLEtBQUssQ0hoRmpCLE9BQU87Q0cwRmI7O0FBWEQsQUFHSSxlQUhXLENBR1gsVUFBVSxDQUFBO0VBQ04sU0FBUyxFQUFDLEtBQUs7Q0FLbEI7O0FBVEwsQUFNUSxlQU5PLENBR1gsVUFBVSxDQUdOLENBQUMsQ0FBQTtFQUNHLEtBQUssRUhyRlYsT0FBTztDR3NGTDs7QUN6RlQ7Ozs7dUNBSXVDO0FBRXZDLEFBRUksS0FGQyxDQUVELFlBQVksQ0FBQyxHQUFHLENBQUE7RUFDUixPQUFPLEVBQUMsS0FBSztDQUNwQjs7QUFKTCxBQU1JLEtBTkMsQ0FNRCxZQUFZLENBQUE7RUFDUixRQUFRLEVBQUMsUUFBUTtFQUNqQixHQUFHLEVBQUMsR0FBRztFQUNQLE9BQU8sRUFBQyxDQUFDO0VBQ1QsWUFBWSxFQUFDLElBQUk7RUFDakIsZ0JBQWdCLEVKZmpCLE9BQU87RUlnQk4sYUFBYSxFQUFDLEdBQUc7RUFDakIsT0FBTyxFQUFDLFNBQVM7RUFFakIsS0FBSyxFQUFDLEtBQUs7RUFDWCxTQUFTLEVBQUMsS0FBSztFQUNmLFVBQVUsRUFBQyxRQUFRO0NBSXRCOztBQXJCTCxBQWtCUSxLQWxCSCxDQU1ELFlBQVksQUFZUCxNQUFNLENBQUE7RUFDSCxnQkFBZ0IsRUp6QmhCLElBQUk7Q0kwQlA7O0FBcEJULEFBc0JJLEtBdEJDLENBc0JELFdBQVcsQ0FBQTtFQUNQLElBQUksRUFBQyxLQUFLO0NBQ2I7O0FBeEJMLEFBeUJJLEtBekJDLENBeUJELFlBQVksQ0FBQTtFQUNSLEtBQUssRUFBQyxLQUFLO0NBQ2Q7O0FBR0w7O3NDQUVzQztBQUV0QyxBQUFBLGFBQWEsQ0FBQTtFQUVULFdBQVcsRUFBQyxDQUFDO0NBNktoQjs7QUEvS0QsQUFJSSxhQUpTLENBSVQsYUFBYSxDQUFBO0VBRVQsT0FBTyxFQUFDLENBQUM7Q0FDWjs7QUFQTCxBQVNJLGFBVFMsQ0FTVCxLQUFLLENBQUE7RUFDRCxPQUFPLEVBQUMsSUFBSTtFQUNaLGNBQWMsRUFBQyxNQUFNO0VBQ3JCLFdBQVcsRUFBQyxNQUFNO0VBQ2xCLGVBQWUsRUFBRSxNQUFNO0VBRXZCLEtBQUssRUFBQyxJQUFJO0VBQ1YsVUFBVSxFQUFDLE1BQU07RUFDakIsVUFBVSxFSnZEWCxPQUFPO0VJd0ROLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLFFBQVEsRUFBQyxRQUFRO0NBaUJwQjs7QUFwQ0wsQUF3QlEsYUF4QkssQ0FTVCxLQUFLLEFBZUEsS0FBSyxDQUFBO0VBQ0YsVUFBVSxFQUFDLHdCQUE4QjtFQUN6QyxLQUFLLEVBQUMsS0FBSztFQUNYLE9BQU8sRUFBQyxPQUFPO0NBRWxCOztBQTdCVCxBQStCUSxhQS9CSyxDQVNULEtBQUssQUFzQkEsS0FBSyxDQUFBO0VBQ0YsVUFBVSxFQUFDLHVCQUF5QjtFQUNwQyxLQUFLLEVBQUMsS0FBSztFQUNYLE9BQU8sRUFBQyxPQUFPO0NBQ2xCOztBQW5DVCxBQXNDUSxhQXRDSyxDQXNDTCxRQUFRLENBQUE7RUFFSixTQUFTLEVBQUMsR0FBRztFQUNiLE9BQU8sRUFBQyxHQUFHO0VBQ1gsT0FBTyxFQUFDLENBQUM7RUFDVCxRQUFRLEVBQUMsUUFBUTtDQUNwQjs7QUE1Q1QsQUE4Q1EsYUE5Q0ssQ0E4Q0wsRUFBRSxDQUFBO0VBQ0UsU0FBUyxFQUFDLEdBQUc7Q0FDaEI7O0FBaERULEFBa0RRLGFBbERLLENBa0RMLEVBQUUsQ0FBQTtFQUNFLFNBQVMsRUFBQyxLQUFLO0NBQ2xCOztBQXBEVCxBQXNEUSxhQXRESyxDQXNETCxDQUFDLENBQUE7RUFDRyxTQUFTLEVBQUMsS0FBSztDQUNsQjs7QUF4RFQsQUEwRFEsYUExREssQ0EwREwsRUFBRSxFQTFEVixhQUFhLENBMERGLEVBQUUsQ0FBQTtFQUNELFdBQVcsRUFBQyxHQUFHO0NBRWxCOztBQTdEVCxBQW1FSSxhQW5FUyxDQW1FVCxhQUFhO0FBbkVqQixhQUFhLENBb0VULGFBQWE7QUFwRWpCLGFBQWEsQ0FxRVQsYUFBYTtBQXJFakIsYUFBYSxDQXNFVCxhQUFhO0FBdEVqQixhQUFhLENBdUVULGFBQWEsQ0FBQTtFQUNULFFBQVEsRUFBQyxRQUFRO0NBNEJwQjs7QUFwR0wsQUF5RVEsYUF6RUssQ0FtRVQsYUFBYSxDQU1ULGFBQWE7QUF6RXJCLGFBQWEsQ0FvRVQsYUFBYSxDQUtULGFBQWE7QUF6RXJCLGFBQWEsQ0FxRVQsYUFBYSxDQUlULGFBQWE7QUF6RXJCLGFBQWEsQ0FzRVQsYUFBYSxDQUdULGFBQWE7QUF6RXJCLGFBQWEsQ0F1RVQsYUFBYSxDQUVULGFBQWEsQ0FBQTtFQUNULFFBQVEsRUFBQyxRQUFRO0VBQ2pCLEdBQUcsRUFBQyxDQUFDO0VBQ0wsSUFBSSxFQUFDLENBQUM7RUFDTixVQUFVLEVBQUMsV0FBVztFQUN0QixLQUFLLEVBQUMsSUFBSTtFQUNWLE1BQU0sRUFBQyxJQUFJO0VBQ1gsT0FBTyxFQUFDLEtBQUs7RUFDYixPQUFPLEVBQUMsSUFBSTtFQUNaLGNBQWMsRUFBQyxNQUFNO0NBQ3hCOztBQW5GVCxBQXFGUSxhQXJGSyxDQW1FVCxhQUFhLENBa0JULEdBQUc7QUFyRlgsYUFBYSxDQW9FVCxhQUFhLENBaUJULEdBQUc7QUFyRlgsYUFBYSxDQXFFVCxhQUFhLENBZ0JULEdBQUc7QUFyRlgsYUFBYSxDQXNFVCxhQUFhLENBZVQsR0FBRztBQXJGWCxhQUFhLENBdUVULGFBQWEsQ0FjVCxHQUFHLENBQUE7RUFDQyxNQUFNLEVBQUMsSUFBSTtFQUNYLEtBQUssRUFBQyxJQUFJO0VBQ1YsT0FBTyxFQUFDLElBQUk7RUFDWixlQUFlLEVBQUUsTUFBTTtFQUN2QixXQUFXLEVBQUMsTUFBTTtFQUNsQixjQUFjLEVBQUMsTUFBTTtFQUNyQixVQUFVLEVBQUMsS0FBSztDQUNuQjs7QUE3RlQsQUF3R1EsYUF4R0ssQ0FzR1QsS0FBSyxBQUFBLEtBQUssQ0FFTixFQUFFLENBQUE7RUFDRSxTQUFTLEVBQUMsS0FBSztDQUNsQjs7QUExR1QsQUE0R1EsYUE1R0ssQ0FzR1QsS0FBSyxBQUFBLEtBQUssQ0FNTixFQUFFLENBQUE7RUFDRSxTQUFTLEVBQUMsS0FBSztFQUNmLGFBQWEsRUFBQyxLQUFLO0NBQ3RCOztBQS9HVCxBQWlIUSxhQWpISyxDQXNHVCxLQUFLLEFBQUEsS0FBSyxDQVdOLENBQUMsQ0FBQTtFQUNHLE9BQU8sRUFBQyxLQUFLO0VBQ2IsT0FBTyxFQUFDLFdBQVc7RUFDbkIsS0FBSyxFQUFDLEtBQUs7RUFDWCxVQUFVLEVKMUpmLE9BQU87RUkySkYsY0FBYyxFQUFFLFNBQVM7RUFDekIsVUFBVSxFQUFDLFFBQVE7RUFDbkIsWUFBWSxFQUFDLElBQUk7RUFDakIsYUFBYSxFQUFDLElBQUk7Q0FLckI7O0FBOUhULEFBMEhZLGFBMUhDLENBc0dULEtBQUssQUFBQSxLQUFLLENBV04sQ0FBQyxBQVNJLE1BQU0sQ0FBQTtFQUNILGVBQWUsRUFBQyxJQUFJO0VBQ3BCLFVBQVUsRUpoS25CLE9BQU87Q0lpS0Q7O0FBN0hiLEFBcUlZLGFBcklDLENBaUlULGFBQWEsQ0FFVCxLQUFLLEFBRUEsTUFBTSxDQUFBO0VBQ0gsVUFBVSxFSjFLbkIsT0FBTztFSTJLRSxLQUFLLEVBQUMsS0FBSztDQUtkOztBQTVJYixBQXlJZ0IsYUF6SUgsQ0FpSVQsYUFBYSxDQUVULEtBQUssQUFFQSxNQUFNLENBSUgsRUFBRSxDQUFBO0VBQ0UsS0FBSyxFQUFDLEtBQUs7Q0FDZDs7QUEzSWpCLEFBZ0pnQixhQWhKSCxDQWlJVCxhQUFhLENBRVQsS0FBSyxBQVdBLE1BQU0sQ0FFSCxFQUFFO0FBaEpsQixhQUFhLENBaUlULGFBQWEsQ0FFVCxLQUFLLEFBV0EsTUFBTSxDQUdILEVBQUU7QUFqSmxCLGFBQWEsQ0FpSVQsYUFBYSxDQUVULEtBQUssQUFXQSxNQUFNLENBSUgsRUFBRTtBQWxKbEIsYUFBYSxDQWlJVCxhQUFhLENBRVQsS0FBSyxBQVdBLE1BQU0sQ0FLSCxDQUFDLENBQUE7RUFDRyxLQUFLLEVBQUMsS0FBSztDQUNkOztBQXJKakIsQUF1SmdCLGFBdkpILENBaUlULGFBQWEsQ0FFVCxLQUFLLEFBV0EsTUFBTSxDQVNILFFBQVEsQUFBQSxNQUFNLENBQUE7RUFDVixVQUFVLEVKN0x2QixPQUFPO0VJOExNLFNBQVMsRUFBQyxXQUFVO0NBQ3ZCOztBQTFKakIsQUE2SlksYUE3SkMsQ0FpSVQsYUFBYSxDQUVULEtBQUssQ0EwQkQsUUFBUSxBQUFBLE1BQU0sQ0FBQTtFQUNWLFFBQVEsRUFBQyxRQUFRO0VBQ2pCLE1BQU0sRUFBQyxJQUFJO0VBQ1gsS0FBSyxFQUFDLElBQUk7RUFDVixHQUFHLEVBQUMsQ0FBQztFQUNMLFNBQVMsRUFBQyxXQUFVO0VBQ3BCLFVBQVUsRUFBRSxRQUFRO0VBQ3BCLE9BQU8sRUFBQyxDQUFDO0NBRVo7O0FBdEtiLEFBd0tZLGFBeEtDLENBaUlULGFBQWEsQ0FFVCxLQUFLLENBcUNELEVBQUUsRUF4S2QsYUFBYSxDQWlJVCxhQUFhLENBRVQsS0FBSyxDQXFDRSxDQUFDLENBQUE7RUFDQSxLQUFLLEVKOU1kLE9BQU87Q0krTUQ7O0FBUWI7O3NDQUVzQztBQUN0QyxBQUVFLGFBRlcsQ0FFWCxhQUFhLENBQUE7RUFDWCxXQUFXLEVBQUMsR0FBRztDQUNoQjs7QUFHSDs7c0NBRXNDO0FBR3RDLEFBQUEsYUFBYSxDQUFBO0VBRVQsVUFBVSxFSnhPUCxPQUFPO0VJeU9WLEtBQUssRUFBQyxLQUFLO0VBQ1gsU0FBUyxFQUFDLEtBQUs7Q0FjbEI7O0FBbEJELEFBTUksYUFOUyxDQU1ULEdBQUcsQ0FBQTtFQUNDLGFBQWEsRUFBQyxHQUFHO0NBQ3BCOztBQVJMLEFBVUksYUFWUyxDQVVULEVBQUUsQ0FBQTtFQUNFLGNBQWMsRUFBQyxTQUFTO0VBQ3hCLFNBQVMsRUFBQyxLQUFLO0NBQ2xCOztBQWJMLEFBZUksYUFmUyxDQWVULE1BQU0sQ0FBQTtFQUNGLFNBQVMsRUFBQyxHQUFHO0NBQ2hCOztBQUlMOztzQ0FFc0M7QUFFdEMsQUFBQSxhQUFhLENBQUE7RUFFVCxPQUFPLEVBQUMsS0FBSztFQUNiLFNBQVMsRUFBQyxLQUFLO0NBNEJsQjs7QUEvQkQsQUFLSSxhQUxTLENBS1QsRUFBRSxDQUFBO0VBQ0UsU0FBUyxFQUFDLEtBQUs7Q0FDbEI7O0FBUEwsQUFTSSxhQVRTLENBU1QsSUFBSSxDQUFBO0VBQ0EsVUFBVSxFSnpRWCxPQUFPO0VJMFFOLEtBQUssRUFBQyxLQUFLO0VBQ1gsY0FBYyxFQUFDLFNBQVM7RUFDeEIsa0JBQWtCLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHdCQUFxQjtFQUN6RCxlQUFlLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHdCQUFxQjtFQUN0RCxVQUFVLEVBQUUsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLHdCQUFxQjtFQUNqRCxZQUFZLEVBQUMsSUFBSTtFQUNqQixVQUFVLEVBQUMsUUFBUTtDQUt0Qjs7QUF0QkwsQUFtQlEsYUFuQkssQ0FTVCxJQUFJLEFBVUMsTUFBTSxDQUFBO0VBQ0gsVUFBVSxFSmxSZixPQUFPO0NJbVJMOztBQXJCVCxBQTBCSSxhQTFCUyxDQTBCVCxLQUFLO0FBMUJULGFBQWEsQ0EyQlQsU0FBUyxDQUFBO0VBQ0wsS0FBSyxFSjNSTixPQUFPO0NJNFJUOztBQU1MOztzQ0FFc0M7QUFFdEMsTUFBTSxDQUFDLEdBQUcsTUFBTSxTQUFTLEVBQUUsS0FBSztFQUU1QixBQUNJLGFBRFMsQ0FDVCxFQUFFLENBQUE7SUFDRSxTQUFTLEVBQUMsS0FBSztHQUNsQjtFQUhMLEFBS0ksYUFMUyxDQUtULEVBQUUsQ0FBQTtJQUNFLFNBQVMsRUFBQyxLQUFLO0dBQ2xCO0VBUEwsQUFTSSxhQVRTLENBU1QsRUFBRSxDQUFBO0lBQ0UsU0FBUyxFQUFDLEtBQUs7R0FDbEI7RUFYTCxBQWFJLGFBYlMsQ0FhVCxDQUFDLENBQUE7SUFDRyxPQUFPLEVBQUMsSUFBSTtHQUNmOzs7QUFPVCxNQUFNLENBQUMsR0FBRyxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBRTVCLEFBQ0ksYUFEUyxDQUNULEVBQUUsQ0FBQTtJQUNFLFNBQVMsRUFBQyxHQUFHO0dBQ2hCO0VBSEwsQUFLSSxhQUxTLENBS1QsRUFBRSxDQUFBO0lBQ0UsU0FBUyxFQUFDLEtBQUs7R0FDbEI7RUFQTCxBQVNJLGFBVFMsQ0FTVCxFQUFFLENBQUE7SUFDRSxTQUFTLEVBQUMsS0FBSztHQUNsQjtFQVhMLEFBYUksYUFiUyxDQWFULENBQUMsQ0FBQTtJQUNHLE9BQU8sRUFBQyxLQUFLO0dBQ2hCOzs7QUFTVCxNQUFNLENBQUMsR0FBRyxNQUFNLFNBQVMsRUFBRSxLQUFLO0VBRTVCLEFBSVEsYUFKSyxDQUVULGFBQWEsQ0FFVCxHQUFHO0VBSlgsYUFBYSxDQUdULGFBQWEsQ0FDVCxHQUFHLENBQUE7SUFDQyxVQUFVLEVBQUMsdUJBQTBCO0dBQ3hDO0VBTlQsQUFVWSxhQVZDLENBRVQsYUFBYSxDQU1ULEtBQUssQUFBQSxLQUFLLENBRU4sRUFBRTtFQVZkLGFBQWEsQ0FHVCxhQUFhLENBS1QsS0FBSyxBQUFBLEtBQUssQ0FFTixFQUFFLENBQUE7SUFDRSxTQUFTLEVBQUMsR0FBRztHQUNoQjs7O0FDMVdqQjs7Ozt1Q0FJdUM7QUFHdkMsQUFFRSxRQUZNLENBRU4sV0FBVyxDQUFBO0VBQ1QsTUFBTSxFQUFDLENBQUM7Q0FDVDs7QUFKSCxBQU1FLFFBTk0sQ0FNTixlQUFlLENBQUE7RUFDYixPQUFPLEVBQUMsSUFBSTtFQUNaLGVBQWUsRUFBRSxhQUFhO0VBQzlCLFdBQVcsRUFBRSxNQUFNO0VBQ25CLE9BQU8sRUFBQyxPQUFPO0VBRWYsZ0JBQWdCLEVMaEJiLE9BQU87Q0trQlg7O0FBZEgsQUFnQkUsUUFoQk0sQ0FnQk4sU0FBUyxDQUFBO0VBQ1AsZ0JBQWdCLEVMcEJiLE9BQU87RUtxQlYsWUFBWSxFQUFDLFdBQVc7RUFDeEIsS0FBSyxFQUFDLEtBQUs7RUFDWCxTQUFTLEVBQUMsS0FBSztFQUNmLE9BQU8sRUFBRSxTQUFTO0VBQ2xCLGFBQWEsRUFBQyxLQUFLO0VBQ25CLFNBQVMsRUFBQyxLQUFLO0VBQ2YsVUFBVSxFQUFDLE1BQU07Q0FVbEI7O0FBbENILEFBeUJJLFFBekJJLENBZ0JOLFNBQVMsQUFTTixTQUFTLENBQUE7RUFDUixnQkFBZ0IsRUxoQ1YsSUFBSTtDS29DWDs7QUE5QkwsQUEyQk0sUUEzQkUsQ0FnQk4sU0FBUyxBQVNOLFNBQVMsQUFFUCxNQUFNLENBQUE7RUFDTCxnQkFBZ0IsRUxsQ1osSUFBSTtDS21DVDs7QUE3QlAsQUErQkksUUEvQkksQ0FnQk4sU0FBUyxBQWVOLE1BQU0sQ0FBQTtFQUNMLGdCQUFnQixFTGxDZixPQUFPO0NLbUNUOztBQWpDTCxBQXVDSSxRQXZDSSxDQXVDSCxjQUFJLENBQUE7RUFDSCxnQkFBZ0IsRUwzQ2YsT0FBTztFSzRDUixNQUFNLEVBQUMsSUFBSTtFQUNYLEtBQUssRUFBQyxJQUFJO0VBQ1YsT0FBTyxFQUFFLFdBQVc7RUFDcEIsV0FBVyxFQUFFLE1BQU07RUFDbkIsZUFBZSxFQUFFLE1BQU07RUFDdkIsS0FBSyxFQUFDLEtBQUs7RUFDWCxhQUFhLEVBQUUsSUFBSTtDQUNwQjs7QUFoREwsQUFrREksUUFsREksQ0FrREgsY0FBSSxDQUFBO0VBQ0gsS0FBSyxFTHpEQyxJQUFJO0VLMERWLFdBQVcsRUFBQyxHQUFHO0VBQ2YsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FBdERMLEFBd0RJLFFBeERJLENBd0RILGVBQUssQ0FBQTtFQUNKLFNBQVMsRUFBQyxLQUFLO0NBQ2hCOztBQTFETCxBQTRESSxRQTVESSxDQTRESCxnQkFBTSxDQUFBO0VBQ0wsU0FBUyxFQUFDLEtBQUs7RUFDZixLQUFLLEVMcEVDLElBQUk7RUtxRVYsT0FBTyxFQUFDLElBQUk7RUFDWixhQUFhLEVBQUMsR0FBRztDQUNsQjs7QUFqRUwsQUFtRUksUUFuRUksQ0FtRUgsZ0JBQU0sQ0FBQTtFQUNMLE9BQU8sRUFBQyxPQUFPO0VBQ2YsYUFBYSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENMekV0QixPQUFPO0NLMEVUOztBQXRFTCxBQXdFSSxRQXhFSSxDQXdFSCxpQkFBTyxDQUFBO0VBQ1IsT0FBTyxFQUFDLEtBQUs7RUFDYixVQUFVLEVBQUMsTUFBTTtDQWlCaEI7O0FBM0ZMLEFBNkVNLFFBN0VFLENBd0VILGlCQUFPLENBS04sTUFBTSxDQUFBO0VBQ0osU0FBUyxFQUFDLEdBQUc7Q0FDZDs7QUEvRVAsQUFpRk0sUUFqRkUsQ0F3RUgsaUJBQU8sQ0FTTixZQUFZLENBQUE7RUFDVixTQUFTLEVBQUMsR0FBRztFQUNiLE1BQU0sRUFBRSxLQUFLO0NBQ2Q7O0FBcEZQLEFBc0ZNLFFBdEZFLENBd0VILGlCQUFPLENBY04sT0FBTyxDQUFBO0VBQ0wsU0FBUyxFQUFDLEtBQUs7RUFDZixhQUFhLEVBQUMsR0FBRztDQUNsQjs7QUF6RlAsQUE2RkksUUE3RkksQ0E2RkgsaUJBQU8sQ0FBQTtFQUNOLEtBQUssRUxwR0MsSUFBSTtDS3FHWDs7QUEvRkwsQUFrR0UsUUFsR00sQ0FrR04sS0FBSyxDQUFBO0VBQ0gsV0FBVyxFQUFDLEdBQUc7Q0FDaEI7O0FBcEdILEFBc0dFLFFBdEdNLENBc0dOLE9BQU8sQ0FBQTtFQUNMLE9BQU8sRUFBQyxPQUFPO0NBQ2hCOztBQXhHSCxBQTBHRSxRQTFHTSxDQTBHTixNQUFNLENBQUE7RUFDSixLQUFLLEVMakhHLElBQUk7RUtrSFosY0FBYyxFQUFFLFNBQVM7RUFDekIsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FBOUdILEFBa0hJLFFBbEhJLENBa0hILGNBQUssQ0FBQTtFQUNKLE9BQU8sRUFBQyxJQUFJO0NBT2I7O0FBMUhMLEFBcUhNLFFBckhFLENBa0hILGNBQUssQ0FHSixNQUFNLENBQUE7RUFDSixLQUFLLEVMNUhELElBQUk7RUs2SFIsY0FBYyxFQUFFLFNBQVM7RUFDekIsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FBekhQLEFBNEhJLFFBNUhJLENBNEhILGFBQUksQ0FBQTtFQUNILFVBQVUsRUFBQyxPQUFPO0VBQ2xCLFNBQVMsRUFBQyxLQUFLO0NBQ2hCOztBQS9ITCxBQWlJSSxRQWpJSSxDQWlJSCxjQUFLLENBQUE7RUFDSixTQUFTLEVBQUMsS0FBSztFQUNmLEtBQUssRUx6SUMsSUFBSTtDS2dKWDs7QUExSUwsQUFvSU0sUUFwSUUsQ0FvSUQsd0JBQVUsQ0FBQTtFQUNULE1BQU0sRUFBQyxLQUFLO0NBSWI7O0FBeklQLEFBc0lRLFFBdElBLENBb0lELHdCQUFVLENBRVQsQ0FBQyxDQUFBO0VBQ0MsYUFBYSxFQUFDLENBQUM7Q0FDaEI7O0FBeElULEFBOElJLFFBOUlJLENBOElILGdCQUFPLENBQUE7RUFDTixVQUFVLEVBQUMsR0FBRyxDQUFDLEtBQUssQ0xuSm5CLE9BQU87RUtvSlIsS0FBSyxFQUFDLEdBQUc7RUFDVCxNQUFNLEVBQUMsSUFBSTtFQUNYLFVBQVUsRUFBQyxHQUFHO0NBRWY7O0FBcEpMLEFBc0pJLFFBdEpJLENBc0pILGFBQUksQ0FBQTtFQUNILFNBQVMsRUFBQyxLQUFLO0VBQ2YsTUFBTSxFQUFDLEtBQUs7Q0FDYjs7QUFHRixBQUFELGlCQUFVLENBQUE7RUFDUixNQUFNLEVBQUMsS0FBSztDQWViOztBQWhCQSxBQUVDLGlCQUZRLENBRVIsTUFBTSxDQUFBO0VBQ0osZ0JBQWdCLEVBQUMsV0FBVztFQUM1QixZQUFZLEVBQUMsSUFBSTtDQU1sQjs7QUFWRixBQU1LLGlCQU5JLENBRVIsTUFBTSxBQUdILE1BQU0sQ0FDTCxJQUFJLENBQUE7RUFDRixLQUFLLEVMcktSLE9BQU87Q0tzS0w7O0FBUk4sQUFXQyxpQkFYUSxDQVdSLEtBQUssQ0FBQTtFQUNILFlBQVksRUFBQyxJQUFJO0VBQ2pCLEtBQUssRUFBQyxJQUFJO0VBQ1YsVUFBVSxFQUFDLE1BQU07Q0FDbEI7O0FBM0tMLEFBZ0xJLFFBaExJLENBZ0xILGlCQUFTLENBQUE7RUFDUixPQUFPLEVBQUMsSUFBSTtFQUNaLFlBQVksRUFBQyxLQUFLO0VBQ2xCLFdBQVcsRUFBRSxNQUFNO0NBQ3BCOztBQXBMTCxBQXNMSSxRQXRMSSxDQXNMSCxlQUFPLENBQUE7RUFDTixLQUFLLEVMN0xDLElBQUk7RUs4TFYsVUFBVSxFQUFDLE9BQU87RUFDbEIsU0FBUyxFQUFDLEtBQUs7RUFDZixXQUFXLEVBQUMsR0FBRztDQUNoQjs7QUEzTEwsQUErTEUsUUEvTE0sQ0ErTE4sY0FBYyxDQUFBO0VBQ1osY0FBYyxFQUFFLFNBQVM7RUFDekIsS0FBSyxFTHZNRyxJQUFJO0VLd01aLGFBQWEsRUFBQyxHQUFHLENBQUMsS0FBSyxDTHRNcEIsT0FBTztFS3VNVixPQUFPLEVBQUMsT0FBTztDQUNoQjs7QUFwTUgsQUFzTUUsUUF0TU0sQ0FzTU4sWUFBWSxDQUFBO0VBQ1YsT0FBTyxFQUFDLElBQUk7RUFDWixXQUFXLEVBQUUsUUFBUTtFQUNyQixXQUFXLEVBQUMsR0FBRztFQUNmLEtBQUssRUFBQyxLQUFLO0NBQ1o7O0FBM01ILEFBNk1FLFFBN01NLENBNk1OLE9BQU8sQ0FBQTtFQUNMLE9BQU8sRUFBQyxJQUFJO0VBQ1osZUFBZSxFQUFFLFlBQVk7RUFDN0IsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FDeE5IOzs7O3VDQUl1QztBQUd2QyxBQUVFLGdCQUZjLENBRWQsS0FBSyxDQUFBO0VBQ0gsT0FBTyxFQUFDLE1BQU07RUFDZCxZQUFZLEVBQUMsSUFBSTtDQVNsQjs7QUFiSCxBQU1JLGdCQU5ZLENBTVgsVUFBSyxDQUFBO0VBQ0osVUFBVSxFQUFDLE1BQU07Q0FDbEI7O0FBUkwsQUFVSSxnQkFWWSxDQVVYLFdBQU0sQ0FBQTtFQUNMLE1BQU0sRUFBQyxLQUFLO0NBQ2I7O0FBWkwsQUFrQkksZ0JBbEJZLENBa0JYLFlBQUssQ0FBQTtFQUNKLGFBQWEsRUFBQyxLQUFLO0VBQ25CLGNBQWMsRUFBQyxVQUFVO0NBQzFCOztBQXJCTCxBQXVCSSxnQkF2QlksQ0F1QlgsWUFBSyxDQUFBO0VBQ0osTUFBTSxFQUFDLEtBQUs7Q0FLYjs7QUE3QkwsQUEwQk0sZ0JBMUJVLENBMEJULGtCQUFNLENBQUE7RUFDTCxVQUFVLEVBQUMsS0FBSztDQUNqQjs7QUE1QlAsQUE4QkksZ0JBOUJZLENBOEJYLFlBQUssQ0FBQTtFQUNKLE9BQU8sRUFBQyxJQUFJO0VBQ1osZUFBZSxFQUFFLGFBQWE7RUFDOUIsTUFBTSxFQUFDLENBQUM7RUFDUixLQUFLLEVBQUMsSUFBSTtFQUNWLFVBQVUsRUFBRSxNQUFNO0NBQ25COztBQXBDTCxBQXlDTSxnQkF6Q1UsQ0F5Q1QsV0FBTSxDQUFBO0VBQ0wsS0FBSyxFTjNDTixPQUFPO0VNNENOLFVBQVUsRUFBRSxNQUFNO0VBQ2xCLFVBQVUsRUFBQyxXQUFXO0VBQ3RCLFlBQVksRUFBQyxJQUFJO0VBQ2pCLE1BQU0sRUFBQyxLQUFLO0NBVWI7O0FBeERQLEFBK0NRLGdCQS9DUSxDQXlDVCxXQUFNLEFBTUosTUFBTSxDQUFBO0VBQ0wsZUFBZSxFQUFDLFNBQVM7Q0FDMUI7O0FBakRULEFBa0RRLGdCQWxEUSxDQXlDVCxXQUFNLEFBU0osU0FBUyxDQUFBO0VBQ1IsS0FBSyxFTnZEUixPQUFPO0NNMkRMOztBQXZEVCxBQW9EVSxnQkFwRE0sQ0F5Q1QsV0FBTSxBQVNKLFNBQVMsQUFFUCxNQUFNLENBQUE7RUFDTCxNQUFNLEVBQUMsV0FBVztDQUNuQjs7QUF0RFgsQUF5RE0sZ0JBekRVLENBeURULFVBQUssQ0FBQTtFQUNKLE9BQU8sRUFBQyxJQUFJO0NBQ2I7O0FBM0RQLEFBNERNLGdCQTVEVSxDQTREVCxVQUFLLENBQUE7RUFDSixLQUFLLEVOOUROLE9BQU87RU0rRE4sVUFBVSxFQUFDLEtBQUs7RUFDaEIsTUFBTSxFQUFDLEtBQUs7Q0FLYjs7QUFwRVAsQUFnRVEsZ0JBaEVRLENBNERULFVBQUssQUFJSCxNQUFNLEVBaEVmLGdCQUFnQixDQTREVCxVQUFLLEFBSUssT0FBTyxDQUFBO0VBQ2QsVUFBVSxFTmxFYixPQUFPO0VNbUVKLEtBQUssRUFBQyxLQUFLO0NBQ1o7O0FBbkVULEFBdUVFLGdCQXZFYyxDQXVFZCxXQUFXLENBQUE7RUFDVCxNQUFNLEVBQUMsS0FBSztFQUNaLE9BQU8sRUFBQyxLQUFLO0VBQ2IsT0FBTyxFQUFDLElBQUk7RUFDWixlQUFlLEVBQUUsTUFBTTtFQUN2QixVQUFVLEVBQUMsR0FBRyxDQUFDLEtBQUssQ05oRmpCLE9BQU87RU1pRlYsYUFBYSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENOakZwQixPQUFPO0NNb0ZYOztBQWhGSCxBQW9GSSxnQkFwRlksQ0FvRlgsYUFBSyxFQXBGVixnQkFBZ0IsQ0FvRkgsY0FBTSxDQUFBO0VBQ2IsVUFBVSxFQUFDLE1BQU07RUFDakIsU0FBUyxFQUFDLElBQUk7Q0FDZjs7QUF2RkwsQUF5RkksZ0JBekZZLENBeUZYLGFBQUssQ0FBQTtFQUNKLFVBQVUsRUFBQyxLQUFLO0VBQ2hCLFNBQVMsRUFBQyxLQUFLO0NBQ2hCOztBQTVGTCxBQThGSSxnQkE5RlksQ0E4RlgsY0FBTSxDQUFBO0VBQ0wsS0FBSyxFTmxHSixPQUFPO0NNbUdUOztBQ3ZHTDs7c0NBRXNDO0FBRXRDLEFBR0UsS0FIRyxDQUdILGFBQWEsQ0FBQTtFQUNYLFVBQVUsRVBKUCxPQUFPO0VPS1YsYUFBYSxFQUFDLEdBQUc7RUFDakIsT0FBTyxFQUFDLEtBQUs7RUFDYixLQUFLLEVBQUMsS0FBSztFQUNYLFNBQVMsRUFBQyxLQUFLO0NBS2hCOztBQWJILEFBU0ksS0FUQyxDQUdILGFBQWEsQUFNVixNQUFNLENBQUE7RUFDTCxVQUFVLEVQVFQsT0FBTztFT1VSLGVBQWUsRUFBQyxJQUFJO0NBQ3JCOztBQVpMLEFBZUksS0FmQyxDQWVBLHdCQUFVLENBQUE7RUFDVCxNQUFNLEVBQUMsSUFBSTtFQUNYLEtBQUssRUFBQyxHQUFHO0NBRVY7O0FBbkJMLEFBc0JJLEtBdEJDLENBc0JBLG1CQUFVLENBQUE7RUFDVCxPQUFPLEVBQUMsSUFBSTtFQUNaLGNBQWMsRUFBQyxNQUFNO0VBQ3JCLFdBQVcsRUFBRSxRQUFRO0VBQ3JCLGNBQWMsRUFBQyxHQUFHO0NBRW5COztBQTVCTCxBQTZCSSxLQTdCQyxDQTZCQSxlQUFNLENBQUE7RUFDTCxTQUFTLEVBQUMsSUFBSTtFQUNkLGFBQWEsRUFBQyxHQUFHO0NBQ2xCOztBQU1MOztzQ0FFc0M7QUFFdEMsQUFBQSxXQUFXLENBQUE7RUFDVCxPQUFPLEVBQUMsSUFBSTtFQUNaLE1BQU0sRUFBQyxDQUFDO0VBQ1IsS0FBSyxFQUFDLENBQUM7RUFDUCxVQUFVLEVBQUMsUUFBUTtFQUNuQixRQUFRLEVBQUMsS0FBSztFQUNkLE9BQU8sRUFBRSxHQUFHO0VBQ1osR0FBRyxFQUFDLENBQUM7Q0F5R047O0FBaEhELEFBU0UsV0FUUyxBQVNSLFdBQVcsQ0FBQTtFQUNWLFVBQVUsRUFBQyxxQkFBMEI7RUFDckMsTUFBTSxFQUFDLElBQUk7RUFDWCxLQUFLLEVBQUMsSUFBSTtFQUNWLE9BQU8sRUFBQyxLQUFLO0NBQ2Q7O0FBZEgsQUFrQkksV0FsQk8sQ0FrQk4sVUFBSSxDQUFBO0VBQ0gsVUFBVSxFQUFDLEtBQUs7RUFDaEIsVUFBVSxFQUFDLE1BQU07RUFFakIsS0FBSyxFQUFDLElBQUk7RUFDVixVQUFVLEVQbkVKLE9BQU87RU9vRWIsTUFBTSxFQUFDLElBQUk7Q0FDWjs7QUF6QkwsQUEyQkksV0EzQk8sQ0EyQk4sU0FBRyxDQUFBO0VBQ0YsTUFBTSxFQUFDLElBQUk7RUFDWCxPQUFPLEVBQUMsS0FBSztFQUNiLFNBQVMsRUFBQyxJQUFJO0VBQ2QsVUFBVSxFUHpFVCxPQUFPO0VPMEVSLGNBQWMsRUFBRSxVQUFVO0VBQzFCLEtBQUssRUFBQyxLQUFLO0VBQ1gsS0FBSyxFQUFDLEdBQUc7RUFDVCxVQUFVLEVBQUMsUUFBUTtDQUlwQjs7QUF2Q0wsQUFvQ00sV0FwQ0ssQ0EyQk4sU0FBRyxBQVNELE1BQU0sQ0FBQTtFQUNMLFVBQVUsRVA5RVgsT0FBTztDTytFUDs7QUF0Q1AsQUF5Q0ksV0F6Q08sQ0F5Q04sWUFBTSxDQUFBO0VBQ0wsUUFBUSxFQUFDLFFBQVE7RUFDakIsTUFBTSxFQUFDLENBQUM7RUFDUixVQUFVLEVBQUMsS0FBSztFQUNoQixPQUFPLEVBQUMsT0FBTztFQUNmLEtBQUssRUFBQyxHQUFHO0NBQ1Y7O0FBL0NMLEFBaURJLFdBakRPLENBaUROLFlBQU0sQ0FBQTtFQUVMLE9BQU8sRUFBQyxJQUFJO0VBQ1osZUFBZSxFQUFFLGFBQWE7RUFDOUIsV0FBVyxFQUFDLFFBQVE7RUFDcEIsY0FBYyxFQUFFLEtBQU07RUFDdEIsYUFBYSxFQUFFLEdBQUcsQ0FBQyxLQUFLLENQbEd2QixPQUFPO0VPbUdSLGNBQWMsRUFBQyxTQUFTO0NBV3pCOztBQW5FTCxBQXlETSxXQXpESyxDQWlETixZQUFNLENBUUwsSUFBSSxDQUFBO0VBQ0YsS0FBSyxFQUFDLEtBQUs7RUFDWCxVQUFVLEVQckdYLE9BQU87RU9zR04sVUFBVSxFQUFDLFFBQVE7RUFDbkIsT0FBTyxFQUFDLEtBQUs7Q0FLZDs7QUFsRVAsQUErRFEsV0EvREcsQ0FpRE4sWUFBTSxDQVFMLElBQUksQUFNRCxNQUFNLENBQUE7RUFDTCxVQUFVLEVQekdiLE9BQU87Q08wR0w7O0FBakVULEFBb0VJLFdBcEVPLENBb0VOLFVBQUksQ0FBQTtFQUNILFFBQVEsRUFBQyxRQUFRO0NBeUJsQjs7QUE5RkwsQUFzRU0sV0F0RUssQ0FvRU4sVUFBSSxDQUVILEtBQUssQ0FBQTtFQUNILFNBQVMsRUFBQyxJQUFJO0NBQ2Y7O0FBeEVQLEFBeUVNLFdBekVLLENBb0VOLFVBQUksQ0FLSCxNQUFNLEVBekVaLFdBQVcsQ0FvRU4sVUFBSSxDQUtJLFNBQVMsQ0FBQTtFQUNkLFNBQVMsRUFBQyxJQUFJO0NBQ2Y7O0FBM0VQLEFBNEVNLFdBNUVLLENBb0VOLFVBQUksQ0FRSCxLQUFLLENBQUE7RUFDSCxRQUFRLEVBQUMsUUFBUTtFQUNqQixHQUFHLEVBQUMsSUFBSTtFQUNSLEtBQUssRUFBQyxDQUFDO0VBQ1AsVUFBVSxFUDdITixJQUFJO0VPOEhSLGFBQWEsRUFBQyxHQUFHO0VBQ2pCLGNBQWMsRUFBQyxVQUFVO0VBQ3pCLE9BQU8sRUFBQyxHQUFHO0VBQ1gsS0FBSyxFQUFDLEtBQUs7RUFDWCxLQUFLLEVBQUMsSUFBSTtFQUNWLFNBQVMsRUFBQyxJQUFJO0NBQ2Y7O0FBdkZQLEFBd0ZNLFdBeEZLLENBb0VOLFVBQUksQ0FvQkgsSUFBSSxDQUFBO0VBQ0YsT0FBTyxFQUFDLEtBQUs7RUFDYixPQUFPLEVBQUMsSUFBSTtFQUNaLFdBQVcsRUFBQyxNQUFNO0VBQ2xCLGVBQWUsRUFBRSxNQUFNO0NBQ3hCOztBQTdGUCxBQStGSSxXQS9GTyxDQStGTixVQUFJLENBQUE7RUFDSCxVQUFVLEVBQUMsS0FBSztFQUNoQixLQUFLLEVBQUMsS0FBSztFQUNYLE9BQU8sRUFBQyxHQUFHO0VBQ1gsTUFBTSxFQUFDLElBQUk7RUFDWCxRQUFRLEVBQUMsUUFBUTtDQUNsQjs7QUFyR0wsQUF5R0UsV0F6R1MsQ0F5R1QsWUFBWSxDQUFBO0VBQ1YsVUFBVSxFQUFFLHdCQUEwQjtFQUN0QyxhQUFhLEVBQUMsR0FBRztFQUNqQixPQUFPLEVBQUMsT0FBTztFQUNmLFdBQVcsRUFBQyxJQUFJO0NBRWpCOztBQzdKSDs7c0NBRXNDO0FBRXRDLEFBSUksU0FKSyxDQUlKLGdCQUFPLENBQUE7RUFDTixTQUFTLEVBQUMsSUFBSTtDQUNmOztBQU5MLEFBVUksU0FWSyxDQVVKLFdBQU0sQ0FBQTtFQUNMLGFBQWEsRUFBQyxHQUFHO0NBQ2xCOztBQVpMLEFBb0JPLFNBcEJFLENBa0JKLGFBQVEsQ0FFTixJQUFJLENBQUM7RUFDSCxZQUFZLEVBQUMsSUFBSTtFQUNqQixTQUFTLEVBQUMsS0FBSztDQUNoQjs7QUF2QlIsQUF5QkksU0F6QkssQ0F5QkosU0FBSSxDQUFBO0VBQ0gsU0FBUyxFQUFDLElBQUk7RUFDZCxVQUFVLEVBQUMsSUFBSTtFQUNmLFlBQVksRUFBRSxHQUFHO0NBQ2xCOztBQTdCTCxBQStCSSxTQS9CSyxDQStCSixZQUFPLENBQUE7RUFDTixPQUFPLEVBQUMsSUFBSTtFQUNaLFdBQVcsRUFBRSxNQUFNO0NBQ3BCOztBQWxDTCxBQW9DSSxTQXBDSyxDQW9DSixVQUFLLENBQUE7RUFDSixTQUFTLEVBQUMsSUFBSTtFQUNkLFdBQVcsRUFBQyxJQUFJO0VBQ2hCLEtBQUssRVJ2Q0osT0FBTztFUXdDUixjQUFjLEVBQUUsSUFBSTtFQUNwQixXQUFXLEVBQUMsT0FBTztDQUNwQjs7QUExQ0wsQUErQ0UsU0EvQ08sQ0ErQ1Asa0JBQWtCLENBQUE7RUFDaEIsWUFBWSxFQUFDLEdBQUcsQ0FBQyxLQUFLLENSbERkLE9BQU87RVFtRGYsWUFBWSxFQUFDLEdBQUc7Q0FDakI7O0FBbERILEFBcURJLFNBckRLLENBb0RQLGdCQUFnQixDQUNkLENBQUMsQ0FBQTtFQUNDLFNBQVMsRUFBQyxLQUFLO0VBQ2YsYUFBYSxFQUFDLEdBQUc7RUFDakIsY0FBYyxFQUFDLFVBQVU7Q0FFMUI7O0FBMURMLEFBK0RJLFNBL0RLLENBK0RKLFVBQUksQ0FBQTtFQUNILGFBQWEsRUFBQyxHQUFHO0VBQ2pCLEtBQUssRUFBQyxLQUFLO0VBQ1gsVUFBVSxFUmxFVCxPQUFPO0VRbUVSLE9BQU8sRUFBQyxLQUFLO0VBQ2IsWUFBWSxFQUFDLElBQUk7RUFDakIsT0FBTyxFQUFDLFdBQVc7RUFDbkIsU0FBUyxFQUFDLElBQUk7RUFDZCxVQUFVLEVBQUMsR0FBRztFQUNkLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLEtBQUssRUFBQyxJQUFJO0VBQ1YsU0FBUyxFQUFDLEtBQUs7Q0FNaEI7O0FBaEZMLEFBNEVNLFNBNUVHLENBK0RKLFVBQUksQUFhRixNQUFNLENBQUE7RUFDTCxVQUFVLEVSNUVYLE9BQU87Q1E2RVA7O0FBOUVQLEFBbUZFLFNBbkZPLENBbUZQLFlBQVksQ0FBQTtFQUNWLFVBQVUsRUFBQyxPQUFPO0VBQ2xCLGFBQWEsRUFBQyxHQUFHO0VBQ2pCLFNBQVMsRUFBQyxLQUFLO0VBQ2YsT0FBTyxFQUFDLEdBQUc7Q0FHWjs7QUM5Rkg7Ozs7dUNBSXVDO0FBTXBDLEFBQUQsV0FBTSxDQUFBO0VBQ0osVUFBVSxFQUFDLHFCQUEyQjtDQXFFdkM7O0FBdEVBLEFBTUssV0FOQSxDQUtELFdBQUssQ0FDSixXQUFXLENBQUE7RUFDVCxPQUFPLEVBQUMsSUFBSTtFQUNaLGVBQWUsRUFBRSxNQUFNO0VBRXZCLEtBQUssRUFBQyxHQUFHO0VBQ1QsTUFBTSxFQUFFLElBQUk7RUFDWixVQUFVLEVBQUMsR0FBRztFQUNkLGFBQWEsRUFBQyxHQUFHO0NBQ2xCOztBQWROLEFBaUJPLFdBakJGLENBS0QsV0FBSyxDQVVKLEtBQUssQUFFRixJQUFJLENBQUE7RUFFSCxVQUFVLEVUekJmLE9BQU87RVMwQkYsS0FBSyxFQUFDLEtBQUs7RUFDWCxPQUFPLEVBQUMsS0FBSztFQUNiLEtBQUssRUFBQyxJQUFJO0NBQ1g7O0FBdkJSLEFBeUJPLFdBekJGLENBS0QsV0FBSyxDQVVKLEtBQUssQUFVRixhQUFhLENBQUE7RUFDWixVQUFVLEVUakNmLE9BQU87RVNrQ0YsWUFBWSxFQUFDLElBQUk7Q0FDbEI7O0FBNUJSLEFBOEJPLFdBOUJGLENBS0QsV0FBSyxDQVVKLEtBQUssQUFlRixhQUFhLENBQUE7RUFDWixVQUFVLEVBQUMsTUFBTTtDQUNsQjs7QUFoQ1IsQUFtQ0ssV0FuQ0EsQ0FLRCxXQUFLLENBOEJKLFdBQVcsQ0FBQTtFQUNULEtBQUssRUFBQyxLQUFLO0VBQ1gsVUFBVSxFQUFDLE9BQU87RUFDbEIsWUFBWSxFQUFDLElBQUk7RUFDakIsYUFBYSxFQUFDLEdBQUc7RUFDakIsS0FBSyxFQUFDLElBQUk7RUFDVixPQUFPLEVBQUMsR0FBRztFQUNYLE9BQU8sRUFBQyxJQUFJO0VBQ1osV0FBVyxFQUFFLE1BQU07Q0FJcEI7O0FBL0NOLEFBNENRLFdBNUNILENBS0QsV0FBSyxDQThCSixXQUFXLENBU1IsS0FBSyxDQUFBO0VBQ0gsTUFBTSxFQUFDLElBQUk7Q0FDWjs7QUE5Q1QsQUFtREssV0FuREEsQ0FrREQsYUFBTyxDQUNOLFdBQVcsQ0FBQTtFQUNULE1BQU0sRUFBQyxJQUFJO0VBQ1gsVUFBVSxFQUFDLE1BQU07RUFDakIsU0FBUyxFQUFDLEtBQUs7Q0FDaEI7O0FBdkROLEFBNkRHLFdBN0RFLENBNkRELGFBQU8sQ0FBQTtFQUNOLE9BQU8sRUFBQyxJQUFJO0VBQ1osZUFBZSxFQUFFLE1BQU07Q0FLeEI7O0FBcEVKLEFBZ0VNLFdBaEVELENBNkRELGFBQU8sQ0FHTCxLQUFLLENBQUE7RUFDSCxLQUFLLEVBQUMsS0FBSztFQUNYLFVBQVUsRUFBQyxJQUFJO0NBQ2hCIn0= */