/*------------------------------------------------------------
	Media
------------------------------------------------------------*/
/*------------------------------------------------------------
	Flex Box
------------------------------------------------------------*/
:root {
  --font-title: "Fudo", sans-serif;
  --font-desc: "Mulish", sans-serif;
  --font-pri: "Open Sans", sans-serif; }

.sw-pagination {
  margin-top: 4rem;
  display: flex;
  align-items: center;
  justify-content: space-between; }
  @media screen and (max-width: 576px) {
    .sw-pagination {
      row-gap: 2.4rem;
      flex-wrap: wrap;
      margin-top: 2.4rem;
      flex-direction: column; } }
  .sw-pagination .pagi-pagination {
    position: relative;
    height: 0.2rem !important;
    width: 26.8rem !important;
    background: rgba(210, 237, 178, 0.5); }
    .sw-pagination .pagi-pagination .swiper-pagination-progressbar-fill {
      background-color: #598b43; }
  .sw-pagination .text-18 {
    column-gap: 0.8rem;
    display: flex;
    align-items: center;
    text-decoration: none; }

.swiper-control {
  user-select: none;
  column-gap: 0.8rem;
  display: flex;
  align-items: center; }
  .swiper-control .prev,
  .swiper-control .next {
    margin: 0;
    position: static;
    border-radius: 50%;
    width: 4rem;
    height: 4rem;
    transition: 0.4s ease-in-out;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    border: 0.1rem solid #598b43; }
    @media screen and (min-width: 1201px) {
      .swiper-control .prev:hover,
      .swiper-control .next:hover {
        background-color: #598b43; }
        .swiper-control .prev:hover:after,
        .swiper-control .next:hover:after {
          filter: brightness(0) invert(1); } }
    .swiper-control .prev::after,
    .swiper-control .next::after {
      content: "";
      width: 2.4rem;
      height: 2.4rem;
      display: inline-block;
      background-image: url("../../assets/images/icons/icon-arrow.svg"); }
  .swiper-control .prev {
    transform: rotate(180deg); }

.m-blog {
  border-radius: 2.4rem;
  margin: 10rem 0rem 10rem;
  padding: 10rem 0rem 10rem;
  background: linear-gradient(298deg, #dfefdf 33.25%, rgba(223, 239, 223, 0) 86.3%); }
  @media screen and (max-width: 992px) {
    .m-blog {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .m-blog {
      margin: 5rem 0rem; } }
  @media screen and (max-width: 992px) {
    .m-blog {
      padding: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .m-blog {
      padding: 4rem 0rem; } }

@media screen and (max-width: 1200px) {
  .m-blog-wrap {
    row-gap: 3.2rem; } }

@media screen and (max-width: 767px) {
  .m-blog-wrap {
    row-gap: 2.4rem; } }

.js-blog .swiper {
  margin-block: -4rem;
  padding-block: 4rem;
  margin-inline: -1.6rem; }
  @media screen and (max-width: 576px) {
    .js-blog .swiper {
      margin-inline: -0.8rem; } }
  .js-blog .swiper::before {
    content: unset; }

.js-blog .swiper-slide {
  padding: 0 1.6rem;
  width: calc(100% / 3); }
  @media screen and (max-width: 1024px) {
    .js-blog .swiper-slide {
      width: calc(100% / 2); } }
  @media screen and (max-width: 576px) {
    .js-blog .swiper-slide {
      padding: 0 0.8rem;
      width: calc(100% / 1.2); } }

.js-blog .pagi-pagination {
  margin: 0 auto; }

.product-box {
  height: 100%;
  overflow: hidden;
  position: relative;
  border-radius: 1.6rem;
  background: linear-gradient(0deg, rgba(247, 238, 229, 0.75) 55.59%, rgba(247, 238, 229, 0) 93.27%); }
  @media screen and (min-width: 1201px) {
    .product-box:hover .img img {
      transform: translate(-50%, -50%) scale(1.05); } }
  .product-box::before {
    content: "";
    left: 0;
    bottom: 0;
    z-index: 1;
    height: 50%;
    width: 100%;
    position: absolute;
    pointer-events: none;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top;
    background-image: url("../../assets/images/product/item-decor.png"); }
    @media screen and (max-width: 767px) {
      .product-box::before {
        height: 55%; } }

.product-img {
  user-select: none;
  position: relative; }
  .product-img .img {
    display: block;
    overflow: hidden;
    position: relative;
    padding-top: calc(350 / 384 * 100%); }
    .product-img .img img {
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      object-fit: cover;
      position: absolute;
      transform: translate(-50%, -50%);
      transition: 0.4s ease-in-out; }
  .product-img .cate {
    top: 1.6rem;
    left: 1.6rem;
    column-gap: 0.8rem;
    position: absolute;
    border-radius: 10rem;
    display: flex;
    align-items: center;
    padding: 0.6rem 1.2rem;
    background-color: #ec5858; }
    @media screen and (max-width: 1200px) {
      .product-img .cate {
        top: 1rem;
        left: 1rem; } }
    .product-img .cate .text-12 {
      line-height: 1.3; }
    .product-img .cate img {
      flex-shrink: 0;
      width: 2rem;
      height: 2rem; }
  .product-img img {
    user-select: none; }

.product-content {
  z-index: 5;
  height: 100%;
  position: relative;
  padding: 0 2rem 4rem 2rem; }
  @media screen and (max-width: 1200px) {
    .product-content {
      padding: 0 2rem 2rem; } }
  .product-content > .text-14 {
    line-height: 1.3; }
  .product-content > .btn {
    margin-top: 1.6rem; }

.product-logo {
  column-gap: 0.8rem;
  display: flex;
  align-items: center; }
  .product-logo img {
    flex-shrink: 0;
    height: 2.8rem;
    user-select: none;
    object-fit: contain;
    width: 8rem !important; }
  .product-logo .title-28 {
    color: #2b6037;
    line-height: 1.1;
    position: relative; }
    .product-logo .title-28 span {
      font-weight: 700;
      font-size: 1.1rem;
      position: absolute;
      margin-left: 0.2rem;
      font-family: var(--font-pri); }

.blog-detail {
  margin: 10rem 0rem 10rem; }
  @media screen and (max-width: 992px) {
    .blog-detail {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .blog-detail {
      margin: 5rem 0rem; } }

.blog-detail-content > .btn {
  margin: 0 auto; }

.blog-detail-related {
  flex-wrap: wrap;
  display: flex;
  align-items: center;
  margin: 6.4rem -1.2rem; }
  @media screen and (max-width: 767px) {
    .blog-detail-related {
      row-gap: 2.4rem;
      margin: 4rem -0.2rem; } }
  .blog-detail-related_img, .blog-detail-related_content {
    padding: 0 1.2rem; }
  .blog-detail-related_img {
    width: calc(3 / 12 * 100%); }
    @media screen and (max-width: 767px) {
      .blog-detail-related_img {
        width: 100%; } }
    .blog-detail-related_img .img {
      overflow: hidden;
      position: relative;
      border-radius: 0.8rem;
      padding-top: calc(1 / 1 * 100%); }
      .blog-detail-related_img .img img {
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        transform: translate(-50%, -50%); }
  .blog-detail-related_content {
    width: calc(9 / 12 * 100%); }
    @media screen and (max-width: 767px) {
      .blog-detail-related_content {
        width: 100%; } }
    .blog-detail-related_content .text-20 {
      margin: 0;
      font-size: 2rem;
      line-height: 1.4;
      color: #598b43;
      position: relative; }
      .blog-detail-related_content .text-20::before {
        content: "";
        left: 0;
        width: 100%;
        height: 0.2rem;
        bottom: -1.2rem;
        position: absolute;
        background: linear-gradient(270deg, rgba(89, 139, 67, 0) -3.72%, #598b43 100%); }
    .blog-detail-related_content ul,
    .blog-detail-related_content li {
      margin: 0; }
    .blog-detail-related_content li {
      padding-left: 2.4rem; }
      .blog-detail-related_content li::before {
        top: 0.4rem;
        transform: rotate(0);
        width: 1.6rem;
        height: 1.6rem;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: top;
        background-color: transparent;
        background-image: url("../../assets/images/icons/icon-check.svg"); }
    .blog-detail-related_content .btn {
      font-weight: 400;
      color: #151f12;
      text-transform: none; }
      @media screen and (min-width: 1201px) {
        .blog-detail-related_content .btn:hover {
          color: white; } }
  .blog-detail-related img {
    margin: 0; }

.js-detail {
  margin: 2.4rem 0; }
  .js-detail .swiper {
    margin: 0 -1.6rem;
    position: relative; }
    @media screen and (max-width: 1200px) {
      .js-detail .swiper {
        margin: 0 -0.8rem; } }
    .js-detail .swiper::before {
      content: "";
      top: 0;
      right: 0;
      z-index: 3;
      height: 100%;
      width: 9.8rem;
      position: absolute;
      pointer-events: none;
      background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #fff 100%); }
  .js-detail .swiper-slide {
    padding: 0 1.6rem;
    width: calc(100% / 2.5); }
    @media screen and (max-width: 1200px) {
      .js-detail .swiper-slide {
        padding: 0 0.8rem; } }
    @media screen and (max-width: 991px) {
      .js-detail .swiper-slide {
        width: calc(100% / 1.75); } }
    @media screen and (max-width: 576px) {
      .js-detail .swiper-slide {
        width: calc(100% / 1.2); } }
  .js-detail img {
    margin: 0; }
  .js-detail .product-logo .title-28 {
    margin: 0; }
  .js-detail .product-content > .text-14 {
    margin: 0; }
  .js-detail .product-content > .btn {
    color: #151f12;
    text-decoration: none; }
    @media screen and (min-width: 1201px) {
      .js-detail .product-content > .btn:hover {
        color: white; } }
  .js-detail .product-img .cate .text-12 {
    margin: 0; }
  .js-detail .sw-pagination .text-18 {
    text-decoration: none; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvZy1kZXRhaWwuY3NzIiwic291cmNlcyI6WyJibG9nLWRldGFpbC5zY3NzIiwiX2NvcmUvX21peGluLnNjc3MiLCJfY29yZS9fdmFyaWFibGUuc2NzcyIsIl9sYXlvdXRzL19zd2lwZXIuc2NzcyIsIl9sYXlvdXRzL19tLWJsb2cuc2NzcyIsIl9sYXlvdXRzL19wcm9kdWN0LnNjc3MiLCJfcGFnZXMvX2Jsb2ctZGV0YWlsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29yZVxuQGltcG9ydCBcIl9jb3JlL21peGluXCI7XG5AaW1wb3J0IFwiX2NvcmUvdmFyaWFibGVcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwiX2xheW91dHMvc3dpcGVyXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvbS1ibG9nXCI7XG5AaW1wb3J0IFwiX2xheW91dHMvcHJvZHVjdFwiO1xuXG4vLyBQYWdlc1xuQGltcG9ydCBcIl9wYWdlcy9ibG9nLWRldGFpbFwiO1xuIiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cclxuXHRNZWRpYVxyXG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xyXG5AbWl4aW4gbWF4KCRwb2ludCkge1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRwb2ludCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gbWluKCRwb2ludCkge1xyXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRwb2ludCkge1xyXG4gICAgQGNvbnRlbnQ7XHJcbiAgfVxyXG59XHJcblxyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdEZsZXggQm94XHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbkBtaXhpbiBmbGV4IHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxufVxyXG5cclxuQG1peGluIGZsZXgtY2VudGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1pY2VudGVyIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWpjZW50ZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWpiZXR3ZWVuIHtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxufVxyXG5cclxuQG1peGluIGJnSW1hZ2UoJHBvc2l0aW9uOiBjZW50ZXIsICRzaXplOiBjb3ZlciwgJHJlcGVhdDogbm8tcmVwZWF0KSB7XHJcbiAgYmFja2dyb3VuZC1zaXplOiAkc2l6ZTtcclxuICBiYWNrZ3JvdW5kLXJlcGVhdDogJHJlcGVhdDtcclxuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAkcG9zaXRpb247XHJcbn1cclxuXHJcbkBtaXhpbiB0cmFuc2l0aW9uKCRzOiAwLjRzKSB7XHJcbiAgdHJhbnNpdGlvbjogJHMgZWFzZS1pbi1vdXQ7XHJcbn1cclxuXHJcbkBtaXhpbiBib3goJHdpZHRoLCAkaGVpZ2h0OiAkd2lkdGgpIHtcclxuICB3aWR0aDogJHdpZHRoO1xyXG4gIGhlaWdodDogJGhlaWdodDtcclxufVxyXG5cclxuQG1peGluIGltZ0NvdmVyIHtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgd2lkdGg6IDEwMCU7XHJcbiAgaGVpZ2h0OiAxMDAlO1xyXG4gIG9iamVjdC1maXQ6IGNvdmVyO1xyXG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxufVxyXG5cclxuQG1peGluIGltZ0NvbnRhaW4ge1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIG9iamVjdC1maXQ6IGNvbnRhaW47XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBsaW5lQ2xhbXAoJGxpbmU6IDIsICRkaXNwbGF5OiB0cnVlKSB7XHJcbiAgQGlmICRkaXNwbGF5IHtcclxuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xyXG4gICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgfVxyXG5cclxuICBsaW5lLWNsYW1wOiAkbGluZTtcclxuICAtd2Via2l0LWxpbmUtY2xhbXA6ICRsaW5lO1xyXG59XHJcblxyXG5AbWl4aW4gc2hhZG93IHtcclxuICBib3gtc2hhZG93OiAwLjRyZW0gMC40cmVtIDAuOHJlbSAwIHJnYmEoMCwgMCwgMCwgMC4wNSk7XHJcbn1cclxuXHJcbkBtaXhpbiBwb3NDZW50ZXIge1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XHJcbn1cclxuXHJcbkBtaXhpbiBtYXJnaW4oJG1hcmdpbjEsICRtYXJnaW4yOiAkbWFyZ2luMSkge1xyXG4gIG1hcmdpbjogJG1hcmdpbjEgMHJlbSAkbWFyZ2luMjtcclxuXHJcbiAgQGluY2x1ZGUgbWF4KDk5MnB4KSB7XHJcbiAgICBtYXJnaW46IDZyZW0gMHJlbTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgbWFyZ2luOiA1cmVtIDByZW07XHJcbiAgfVxyXG59XHJcblxyXG5AbWl4aW4gcGFkZGluZygkcGFkZGluZzEsICRwYWRkaW5nMjogJHBhZGRpbmcxKSB7XHJcbiAgcGFkZGluZzogJHBhZGRpbmcxIDByZW0gJHBhZGRpbmcyO1xyXG5cclxuICBAaW5jbHVkZSBtYXgoOTkycHgpIHtcclxuICAgIHBhZGRpbmc6IDZyZW0gMHJlbTtcclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgcGFkZGluZzogNHJlbSAwcmVtO1xyXG4gIH1cclxufVxyXG4iLCI6cm9vdCB7XHJcbiAgLS1mb250LXRpdGxlOiBcIkZ1ZG9cIiwgc2Fucy1zZXJpZjtcclxuICAtLWZvbnQtZGVzYzogXCJNdWxpc2hcIiwgc2Fucy1zZXJpZjtcclxuICAtLWZvbnQtcHJpOiBcIk9wZW4gU2Fuc1wiLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG4kY29sb3ItcHJpOiAjNTk4YjQzO1xyXG4kY29sb3Itc2VjOiAjN2ViNzUzO1xyXG4kY29sb3ItdGhpcmQ6ICNmMGE0MDI7XHJcbiRjb2xvci10ZXh0OiAjMTUxZjEyO1xyXG4kY29sb3ItYmc6ICNmMGYwZjA7XHJcbiIsIi5zdy1wYWdpbmF0aW9uIHtcbiAgbWFyZ2luLXRvcDogNHJlbTtcbiAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgcm93LWdhcDogMi40cmVtO1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBtYXJnaW4tdG9wOiAyLjRyZW07XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC5wYWdpLXBhZ2luYXRpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDAuMnJlbSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAyNi44cmVtICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogcmdiYSgyMTAsIDIzNywgMTc4LCAwLjUpO1xuXG4gICAgLnN3aXBlci1wYWdpbmF0aW9uLXByb2dyZXNzYmFyLWZpbGwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaTtcbiAgICB9XG4gIH1cblxuICAudGV4dC0xOCB7XG4gICAgY29sdW1uLWdhcDogMC44cmVtO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cbn1cblxuLnN3aXBlci1jb250cm9sIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGNvbHVtbi1nYXA6IDAuOHJlbTtcbiAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gIC5wcmV2LFxuICAubmV4dCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIEBpbmNsdWRlIGJveCg0cmVtKTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICRjb2xvci1wcmk7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaTtcblxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIEBpbmNsdWRlIGJveCgyLjRyZW0pO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ltYWdlcy9pY29ucy9pY29uLWFycm93LnN2Z1wiKTtcbiAgICB9XG4gIH1cblxuICAucHJldiB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgfVxufVxuIiwiLm0tYmxvZyB7XG4gIGJvcmRlci1yYWRpdXM6IDIuNHJlbTtcbiAgQGluY2x1ZGUgbWFyZ2luKDEwcmVtKTtcbiAgQGluY2x1ZGUgcGFkZGluZygxMHJlbSk7XG4gIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCgyOThkZWcsICNkZmVmZGYgMzMuMjUlLCByZ2JhKDIyMywgMjM5LCAyMjMsIDApIDg2LjMlKTtcbn1cblxuLm0tYmxvZy13cmFwIHtcbiAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgIHJvdy1nYXA6IDMuMnJlbTtcbiAgfVxuXG4gIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgIHJvdy1nYXA6IDIuNHJlbTtcbiAgfVxufVxuXG4uanMtYmxvZyB7XG4gIC5zd2lwZXIge1xuICAgIG1hcmdpbi1ibG9jazogLTRyZW07XG4gICAgcGFkZGluZy1ibG9jazogNHJlbTtcbiAgICBtYXJnaW4taW5saW5lOiAtMS42cmVtO1xuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBtYXJnaW4taW5saW5lOiAtMC44cmVtO1xuICAgIH1cblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBjb250ZW50OiB1bnNldDtcbiAgICB9XG4gIH1cblxuICAuc3dpcGVyLXNsaWRlIHtcbiAgICBwYWRkaW5nOiAwIDEuNnJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMyk7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTAyNHB4KSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gMik7XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBwYWRkaW5nOiAwIDAuOHJlbTtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAxLjIpO1xuICAgIH1cbiAgfVxuXG4gIC5wYWdpLXBhZ2luYXRpb24ge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG59XG4iLCIucHJvZHVjdC1ib3gge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyLXJhZGl1czogMS42cmVtO1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgyNDcsIDIzOCwgMjI5LCAwLjc1KSA1NS41OSUsIHJnYmEoMjQ3LCAyMzgsIDIyOSwgMCkgOTMuMjclKTtcblxuICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgJjpob3ZlciB7XG4gICAgICAuaW1nIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBsZWZ0OiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIGhlaWdodDogNTAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBAaW5jbHVkZSBiZ0ltYWdlKHRvcCwgY292ZXIpO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2Fzc2V0cy9pbWFnZXMvcHJvZHVjdC9pdGVtLWRlY29yLnBuZ1wiKTtcblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgaGVpZ2h0OiA1NSU7XG4gICAgfVxuICB9XG59XG5cbi5wcm9kdWN0LWltZyB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgLmltZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy10b3A6IGNhbGMoMzUwIC8gMzg0ICogMTAwJSk7XG5cbiAgICBpbWcge1xuICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gIC5jYXRlIHtcbiAgICB0b3A6IDEuNnJlbTtcbiAgICBsZWZ0OiAxLjZyZW07XG4gICAgY29sdW1uLWdhcDogMC44cmVtO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMHJlbTtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgcGFkZGluZzogMC42cmVtIDEuMnJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWM1ODU4O1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgdG9wOiAxcmVtO1xuICAgICAgbGVmdDogMXJlbTtcbiAgICB9XG5cbiAgICAudGV4dC0xMiB7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIEBpbmNsdWRlIGJveCgycmVtKTtcbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICB9XG59XG5cbi5wcm9kdWN0LWNvbnRlbnQge1xuICB6LWluZGV4OiA1O1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZzogMCAycmVtIDRyZW0gMnJlbTtcblxuICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgcGFkZGluZzogMCAycmVtIDJyZW07XG4gIH1cblxuICA+IC50ZXh0LTE0IHtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG5cbiAgPiAuYnRuIHtcbiAgICBtYXJnaW4tdG9wOiAxLjZyZW07XG4gIH1cbn1cblxuLnByb2R1Y3QtbG9nbyB7XG4gIGNvbHVtbi1nYXA6IDAuOHJlbTtcbiAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gIGltZyB7XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgaGVpZ2h0OiAyLjhyZW07XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgb2JqZWN0LWZpdDogY29udGFpbjtcbiAgICB3aWR0aDogOHJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnRpdGxlLTI4IHtcbiAgICBjb2xvcjogIzJiNjAzNztcbiAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbWFyZ2luLWxlZnQ6IDAuMnJlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaSk7XG4gICAgfVxuICB9XG59XG4iLCIuYmxvZy1kZXRhaWwge1xuICBAaW5jbHVkZSBtYXJnaW4oMTByZW0pO1xufVxuXG4uYmxvZy1kZXRhaWwtY29udGVudCB7XG4gID4gLmJ0biB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cbn1cblxuLmJsb2ctZGV0YWlsLXJlbGF0ZWQge1xuICBmbGV4LXdyYXA6IHdyYXA7XG4gIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgbWFyZ2luOiA2LjRyZW0gLTEuMnJlbTtcblxuICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICByb3ctZ2FwOiAyLjRyZW07XG4gICAgbWFyZ2luOiA0cmVtIC0wLjJyZW07XG4gIH1cblxuICAmX2ltZyxcbiAgJl9jb250ZW50IHtcbiAgICBwYWRkaW5nOiAwIDEuMnJlbTtcbiAgfVxuXG4gICZfaW1nIHtcbiAgICB3aWR0aDogY2FsYygzIC8gMTIgKiAxMDAlKTtcblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLmltZyB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgICAgcGFkZGluZy10b3A6IGNhbGMoMSAvIDEgKiAxMDAlKTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJl9jb250ZW50IHtcbiAgICB3aWR0aDogY2FsYyg5IC8gMTIgKiAxMDAlKTtcblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnRleHQtMjAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwLjJyZW07XG4gICAgICAgIGJvdHRvbTogLTEuMnJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMjcwZGVnLCByZ2JhKDg5LCAxMzksIDY3LCAwKSAtMy43MiUsICM1OThiNDMgMTAwJSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgdWwsXG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIGxpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMi40cmVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB0b3A6IDAuNHJlbTtcbiAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgICAgIEBpbmNsdWRlIGJveCgxLjZyZW0pO1xuICAgICAgICBAaW5jbHVkZSBiZ0ltYWdlKHRvcCwgY292ZXIpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ltYWdlcy9pY29ucy9pY29uLWNoZWNrLnN2Z1wiKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnRuIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICBjb2xvcjogJGNvbG9yLXRleHQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBpbWcge1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG4uanMtZGV0YWlsIHtcbiAgbWFyZ2luOiAyLjRyZW0gMDtcblxuICAuc3dpcGVyIHtcbiAgICBtYXJnaW46IDAgLTEuNnJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBtYXJnaW46IDAgLTAuOHJlbTtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogMztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiA5LjhyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IGxpbmVhci1ncmFkaWVudCg5MGRlZywgcmdiYSgyNTUsIDI1NSwgMjU1LCAwKSAwJSwgI2ZmZiAxMDAlKTtcbiAgICB9XG4gIH1cblxuICAuc3dpcGVyLXNsaWRlIHtcbiAgICBwYWRkaW5nOiAwIDEuNnJlbTtcbiAgICB3aWR0aDogY2FsYygxMDAlIC8gMi41KTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHBhZGRpbmc6IDAgMC44cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg5OTFweCkge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDEuNzUpO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDEuMik7XG4gICAgfVxuICB9XG5cbiAgaW1nIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAucHJvZHVjdC1sb2dvIHtcbiAgICAudGl0bGUtMjgge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0LWNvbnRlbnQge1xuICAgID4gLnRleHQtMTQge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgID4gLmJ0biB7XG4gICAgICBjb2xvcjogJGNvbG9yLXRleHQ7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnByb2R1Y3QtaW1nIC5jYXRlIC50ZXh0LTEyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuc3ctcGFnaW5hdGlvbiAudGV4dC0xOCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFDQUE7OzhEQUU4RDtBQWE5RDs7OERBRThEO0FDakI5RCxBQUFBLEtBQUssQ0FBQztFQUNKLFlBQVksQ0FBQSxtQkFBQztFQUNiLFdBQVcsQ0FBQSxxQkFBQztFQUNaLFVBQVUsQ0FBQSx3QkFBQyxHQUNaOztBQ0pELEFBQUEsY0FBYyxDQUFDO0VBQ2IsVUFBVSxFQUFFLElBQUk7RUY4QmhCLE9BQU8sRUFBRSxJQUFJO0VBQ2IsV0FBVyxFQUFFLE1BQU07RUU3Qm5CLGVBQWUsRUFBRSxhQUFhLEdBeUIvQjtFRnhCQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lFSnJDLEFBQUEsY0FBYyxDQUFDO01BTVgsT0FBTyxFQUFFLE1BQU07TUFDZixTQUFTLEVBQUUsSUFBSTtNQUNmLFVBQVUsRUFBRSxNQUFNO01BQ2xCLGNBQWMsRUFBRSxNQUFNLEdBbUJ6QjtFQTVCRCxBQVlFLGNBWlksQ0FZWixnQkFBZ0IsQ0FBQztJQUNmLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE1BQU0sRUFBRSxpQkFBaUI7SUFDekIsS0FBSyxFQUFFLGtCQUFrQjtJQUN6QixVQUFVLEVBQUUsd0JBQXdCLEdBS3JDO0lBckJILEFBa0JJLGNBbEJVLENBWVosZ0JBQWdCLENBTWQsbUNBQW1DLENBQUM7TUFDbEMsZ0JBQWdCLEVEYlYsT0FBTyxHQ2NkO0VBcEJMLEFBdUJFLGNBdkJZLENBdUJaLFFBQVEsQ0FBQztJQUNQLFVBQVUsRUFBRSxNQUFNO0lGT3BCLE9BQU8sRUFBRSxJQUFJO0lBQ2IsV0FBVyxFQUFFLE1BQU07SUVOakIsZUFBZSxFQUFFLElBQUksR0FDdEI7O0FBR0gsQUFBQSxlQUFlLENBQUM7RUFDZCxXQUFXLEVBQUUsSUFBSTtFQUNqQixVQUFVLEVBQUUsTUFBTTtFRkRsQixPQUFPLEVBQUUsSUFBSTtFQUNiLFdBQVcsRUFBRSxNQUFNLEdFa0NwQjtFQXBDRCxBQUtFLGVBTGEsQ0FLYixLQUFLO0VBTFAsZUFBZSxDQU1iLEtBQUssQ0FBQztJQUNKLE1BQU0sRUFBRSxDQUFDO0lBQ1QsUUFBUSxFQUFFLE1BQU07SUFDaEIsYUFBYSxFQUFFLEdBQUc7SUZpQnBCLEtBQUssRUVoQlUsSUFBSTtJRmlCbkIsTUFBTSxFRWpCUyxJQUFJO0lGWW5CLFVBQVUsRUFEVSxJQUFJLENBQ1QsV0FBVztJQTVCMUIsT0FBTyxFQUFFLElBQUk7SUFDYixTQUFTLEVBQUUsSUFBSTtJQUNmLFdBQVcsRUFBRSxNQUFNO0lBQ25CLGVBQWUsRUFBRSxNQUFNO0lFZ0JyQixNQUFNLEVBQUUsTUFBTSxDQUFDLEtBQUssQ0RyQ1osT0FBTyxHQ3VEaEI7SUZuREQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNRW9CdEMsQUFnQk0sZUFoQlMsQ0FLYixLQUFLLEFBV0EsTUFBTTtNQWhCYixlQUFlLENBTWIsS0FBSyxBQVVBLE1BQU0sQ0FBQztRQUNOLGdCQUFnQixFRHpDWixPQUFPLEdDOENaO1FBdEJQLEFBbUJRLGVBbkJPLENBS2IsS0FBSyxBQVdBLE1BQU0sQUFHSixNQUFNO1FBbkJmLGVBQWUsQ0FNYixLQUFLLEFBVUEsTUFBTSxBQUdKLE1BQU0sQ0FBQztVQUNOLE1BQU0sRUFBRSxhQUFhLENBQUMsU0FBUyxHQUNoQztJQXJCVCxBQXlCSSxlQXpCVyxDQUtiLEtBQUssQUFvQkYsT0FBTztJQXpCWixlQUFlLENBTWIsS0FBSyxBQW1CRixPQUFPLENBQUM7TUFDUCxPQUFPLEVBQUUsRUFBRTtNRkFmLEtBQUssRUVDWSxNQUFNO01GQXZCLE1BQU0sRUVBVyxNQUFNO01BQ25CLE9BQU8sRUFBRSxZQUFZO01BQ3JCLGdCQUFnQixFQUFFLCtDQUErQyxHQUNsRTtFQTlCTCxBQWlDRSxlQWpDYSxDQWlDYixLQUFLLENBQUM7SUFDSixTQUFTLEVBQUUsY0FBYyxHQUMxQjs7QUNqRUgsQUFBQSxPQUFPLENBQUM7RUFDTixhQUFhLEVBQUUsTUFBTTtFSHNHckIsTUFBTSxFR3JHVSxLQUFLLENIcUdKLElBQUksQ0dyR0wsS0FBSztFSGlIckIsT0FBTyxFR2hIVSxLQUFLLENIZ0hILElBQUksQ0doSE4sS0FBSztFQUN0QixVQUFVLEVBQUUscUVBQXFFLEdBQ2xGO0VIREMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJR0pyQyxBQUFBLE9BQU8sQ0FBQztNSDBHSixNQUFNLEVBQUUsU0FBUyxHR3JHcEI7RUhEQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lHSnJDLEFBQUEsT0FBTyxDQUFDO01IOEdKLE1BQU0sRUFBRSxTQUFTLEdHekdwQjtFSERDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SUdKckMsQUFBQSxPQUFPLENBQUM7TUhzSEosT0FBTyxFQUFFLFNBQVMsR0dqSHJCO0VIREMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJR0pyQyxBQUFBLE9BQU8sQ0FBQztNSDBISixPQUFPLEVBQUUsU0FBUyxHR3JIckI7O0FIREMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtFR0d0QyxBQUFBLFlBQVksQ0FBQztJQUVULE9BQU8sRUFBRSxNQUFNLEdBTWxCOztBSFhDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7RUdHckMsQUFBQSxZQUFZLENBQUM7SUFNVCxPQUFPLEVBQUUsTUFBTSxHQUVsQjs7QUFFRCxBQUNFLFFBRE0sQ0FDTixPQUFPLENBQUM7RUFDTixZQUFZLEVBQUUsS0FBSztFQUNuQixhQUFhLEVBQUUsSUFBSTtFQUNuQixhQUFhLEVBQUUsT0FBTyxHQVN2QjtFSDFCRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lHYXJDLEFBQ0UsUUFETSxDQUNOLE9BQU8sQ0FBQztNQU1KLGFBQWEsRUFBRSxPQUFPLEdBTXpCO0VBYkgsQUFVSSxRQVZJLENBQ04sT0FBTyxBQVNKLFFBQVEsQ0FBQztJQUNSLE9BQU8sRUFBRSxLQUFLLEdBQ2Y7O0FBWkwsQUFlRSxRQWZNLENBZU4sYUFBYSxDQUFDO0VBQ1osT0FBTyxFQUFFLFFBQVE7RUFDakIsS0FBSyxFQUFFLGNBQWMsR0FVdEI7RUh4Q0QsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJR2F0QyxBQWVFLFFBZk0sQ0FlTixhQUFhLENBQUM7TUFLVixLQUFLLEVBQUUsY0FBYyxHQU94QjtFSHhDRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lHYXJDLEFBZUUsUUFmTSxDQWVOLGFBQWEsQ0FBQztNQVNWLE9BQU8sRUFBRSxRQUFRO01BQ2pCLEtBQUssRUFBRSxnQkFBZ0IsR0FFMUI7O0FBM0JILEFBNkJFLFFBN0JNLENBNkJOLGdCQUFnQixDQUFDO0VBQ2YsTUFBTSxFQUFFLE1BQU0sR0FDZjs7QUNoREgsQUFBQSxZQUFZLENBQUM7RUFDWCxNQUFNLEVBQUUsSUFBSTtFQUNaLFFBQVEsRUFBRSxNQUFNO0VBQ2hCLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGFBQWEsRUFBRSxNQUFNO0VBQ3JCLFVBQVUsRUFBRSxzRkFBc0YsR0EwQm5HO0VKckJDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SUlWdEMsQUFTTSxZQVRNLEFBUVAsTUFBTSxDQUNMLElBQUksQ0FBQyxHQUFHLENBQUM7TUFDUCxTQUFTLEVBQUUscUJBQXFCLENBQUMsV0FBVyxHQUM3QztFQVhQLEFBZUUsWUFmVSxBQWVULFFBQVEsQ0FBQztJQUNSLE9BQU8sRUFBRSxFQUFFO0lBQ1gsSUFBSSxFQUFFLENBQUM7SUFDUCxNQUFNLEVBQUUsQ0FBQztJQUNULE9BQU8sRUFBRSxDQUFDO0lBQ1YsTUFBTSxFQUFFLEdBQUc7SUFDWCxLQUFLLEVBQUUsSUFBSTtJQUNYLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLGNBQWMsRUFBRSxJQUFJO0lKdUJ0QixlQUFlLEVJdEJTLEtBQUs7SUp1QjdCLGlCQUFpQixFQUZzQyxTQUFTO0lBR2hFLG1CQUFtQixFSXhCQSxHQUFHO0lBQ3BCLGdCQUFnQixFQUFFLGlEQUFpRCxHQUtwRTtJSjFCRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO01JSnJDLEFBZUUsWUFmVSxBQWVULFFBQVEsQ0FBQztRQWFOLE1BQU0sRUFBRSxHQUFHLEdBRWQ7O0FBR0gsQUFBQSxZQUFZLENBQUM7RUFDWCxXQUFXLEVBQUUsSUFBSTtFQUNqQixRQUFRLEVBQUUsUUFBUSxHQTBDbkI7RUE1Q0QsQUFJRSxZQUpVLENBSVYsSUFBSSxDQUFDO0lBQ0gsT0FBTyxFQUFFLEtBQUs7SUFDZCxRQUFRLEVBQUUsTUFBTTtJQUNoQixRQUFRLEVBQUUsUUFBUTtJQUNsQixXQUFXLEVBQUUsc0JBQXNCLEdBTXBDO0lBZEgsQUFVSSxZQVZRLENBSVYsSUFBSSxDQU1GLEdBQUcsQ0FBQztNSmtCTixHQUFHLEVBQUUsR0FBRztNQUNSLElBQUksRUFBRSxHQUFHO01BQ1QsS0FBSyxFQUFFLElBQUk7TUFDWCxNQUFNLEVBQUUsSUFBSTtNQUNaLFVBQVUsRUFBRSxLQUFLO01BQ2pCLFFBQVEsRUFBRSxRQUFRO01BQ2xCLFNBQVMsRUFBRSxxQkFBcUI7TUFmaEMsVUFBVSxFQURVLElBQUksQ0FDVCxXQUFXLEdJTnZCO0VBYkwsQUFnQkUsWUFoQlUsQ0FnQlYsS0FBSyxDQUFDO0lBQ0osR0FBRyxFQUFFLE1BQU07SUFDWCxJQUFJLEVBQUUsTUFBTTtJQUNaLFVBQVUsRUFBRSxNQUFNO0lBQ2xCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLGFBQWEsRUFBRSxLQUFLO0lKdkJ0QixPQUFPLEVBQUUsSUFBSTtJQUNiLFdBQVcsRUFBRSxNQUFNO0lJd0JqQixPQUFPLEVBQUUsYUFBYTtJQUN0QixnQkFBZ0IsRUFBRSxPQUFPLEdBZTFCO0lKcEVELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07TUk2QnRDLEFBZ0JFLFlBaEJVLENBZ0JWLEtBQUssQ0FBQztRQVdGLEdBQUcsRUFBRSxJQUFJO1FBQ1QsSUFBSSxFQUFFLElBQUksR0FXYjtJQXZDSCxBQStCSSxZQS9CUSxDQWdCVixLQUFLLENBZUgsUUFBUSxDQUFDO01BQ1AsV0FBVyxFQUFFLEdBQUcsR0FDakI7SUFqQ0wsQUFtQ0ksWUFuQ1EsQ0FnQlYsS0FBSyxDQW1CSCxHQUFHLENBQUM7TUFDRixXQUFXLEVBQUUsQ0FBQztNSmJsQixLQUFLLEVJY1ksSUFBSTtNSmJyQixNQUFNLEVJYVcsSUFBSSxHQUNsQjtFQXRDTCxBQXlDRSxZQXpDVSxDQXlDVixHQUFHLENBQUM7SUFDRixXQUFXLEVBQUUsSUFBSSxHQUNsQjs7QUFHSCxBQUFBLGdCQUFnQixDQUFDO0VBQ2YsT0FBTyxFQUFFLENBQUM7RUFDVixNQUFNLEVBQUUsSUFBSTtFQUNaLFFBQVEsRUFBRSxRQUFRO0VBQ2xCLE9BQU8sRUFBRSxnQkFBZ0IsR0FhMUI7RUo1RkMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtJSTJFdEMsQUFBQSxnQkFBZ0IsQ0FBQztNQU9iLE9BQU8sRUFBRSxXQUFXLEdBVXZCO0VBakJELEFBVUUsZ0JBVmMsR0FVWixRQUFRLENBQUM7SUFDVCxXQUFXLEVBQUUsR0FBRyxHQUNqQjtFQVpILEFBY0UsZ0JBZGMsR0FjWixJQUFJLENBQUM7SUFDTCxVQUFVLEVBQUUsTUFBTSxHQUNuQjs7QUFHSCxBQUFBLGFBQWEsQ0FBQztFQUNaLFVBQVUsRUFBRSxNQUFNO0VKcEVsQixPQUFPLEVBQUUsSUFBSTtFQUNiLFdBQVcsRUFBRSxNQUFNLEdJMkZwQjtFQXpCRCxBQUlFLGFBSlcsQ0FJWCxHQUFHLENBQUM7SUFDRixXQUFXLEVBQUUsQ0FBQztJQUNkLE1BQU0sRUFBRSxNQUFNO0lBQ2QsV0FBVyxFQUFFLElBQUk7SUFDakIsVUFBVSxFQUFFLE9BQU87SUFDbkIsS0FBSyxFQUFFLGVBQWUsR0FDdkI7RUFWSCxBQVlFLGFBWlcsQ0FZWCxTQUFTLENBQUM7SUFDUixLQUFLLEVBQUUsT0FBTztJQUNkLFdBQVcsRUFBRSxHQUFHO0lBQ2hCLFFBQVEsRUFBRSxRQUFRLEdBU25CO0lBeEJILEFBaUJJLGFBakJTLENBWVgsU0FBUyxDQUtQLElBQUksQ0FBQztNQUNILFdBQVcsRUFBRSxHQUFHO01BQ2hCLFNBQVMsRUFBRSxNQUFNO01BQ2pCLFFBQVEsRUFBRSxRQUFRO01BQ2xCLFdBQVcsRUFBRSxNQUFNO01BQ25CLFdBQVcsRUFBRSxlQUFlLEdBQzdCOztBQ3pITCxBQUFBLFlBQVksQ0FBQztFTHVHWCxNQUFNLEVLdEdVLEtBQUssQ0xzR0osSUFBSSxDS3RHTCxLQUFLLEdBQ3RCO0VMRUMsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztJS0pyQyxBQUFBLFlBQVksQ0FBQztNTDBHVCxNQUFNLEVBQUUsU0FBUyxHS3hHcEI7RUxFQyxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lLSnJDLEFBQUEsWUFBWSxDQUFDO01MOEdULE1BQU0sRUFBRSxTQUFTLEdLNUdwQjs7QUFFRCxBQUNFLG9CQURrQixHQUNoQixJQUFJLENBQUM7RUFDTCxNQUFNLEVBQUUsTUFBTSxHQUNmOztBQUdILEFBQUEsb0JBQW9CLENBQUM7RUFDbkIsU0FBUyxFQUFFLElBQUk7RUxvQmYsT0FBTyxFQUFFLElBQUk7RUFDYixXQUFXLEVBQUUsTUFBTTtFS25CbkIsTUFBTSxFQUFFLGNBQWMsR0EwRnZCO0VMbkdDLE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUs7SUtNckMsQUFBQSxvQkFBb0IsQ0FBQztNQU1qQixPQUFPLEVBQUUsTUFBTTtNQUNmLE1BQU0sRUFBRSxZQUFZLEdBc0Z2QjtFQW5GRSxBQUFELHdCQUFLLEVBQ0osNEJBQVEsQ0FBQztJQUNSLE9BQU8sRUFBRSxRQUFRLEdBQ2xCO0VBRUEsQUFBRCx3QkFBSyxDQUFDO0lBQ0osS0FBSyxFQUFFLG1CQUFtQixHQWdCM0I7SUx0Q0QsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNS3FCbEMsQUFBRCx3QkFBSyxDQUFDO1FBSUYsS0FBSyxFQUFFLElBQUksR0FhZDtJQWpCQSxBQU9DLHdCQVBHLENBT0gsSUFBSSxDQUFDO01BQ0gsUUFBUSxFQUFFLE1BQU07TUFDaEIsUUFBUSxFQUFFLFFBQVE7TUFDbEIsYUFBYSxFQUFFLE1BQU07TUFDckIsV0FBVyxFQUFFLGtCQUFrQixHQUtoQztNQWhCRixBQWFHLHdCQWJDLENBT0gsSUFBSSxDQU1GLEdBQUcsQ0FBQztRTHVCUixHQUFHLEVBQUUsR0FBRztRQUNSLElBQUksRUFBRSxHQUFHO1FBQ1QsS0FBSyxFQUFFLElBQUk7UUFDWCxNQUFNLEVBQUUsSUFBSTtRQUNaLFVBQVUsRUFBRSxLQUFLO1FBQ2pCLFFBQVEsRUFBRSxRQUFRO1FBQ2xCLFNBQVMsRUFBRSxxQkFBcUIsR0szQjNCO0VBSUosQUFBRCw0QkFBUyxDQUFDO0lBQ1IsS0FBSyxFQUFFLG1CQUFtQixHQXFEM0I7SUw5RkQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNS3dDbEMsQUFBRCw0QkFBUyxDQUFDO1FBSU4sS0FBSyxFQUFFLElBQUksR0FrRGQ7SUF0REEsQUFPQyw0QkFQTyxDQU9QLFFBQVEsQ0FBQztNQUNQLE1BQU0sRUFBRSxDQUFDO01BQ1QsU0FBUyxFQUFFLElBQUk7TUFDZixXQUFXLEVBQUUsR0FBRztNQUNoQixLQUFLLEVKakRDLE9BQU87TUlrRGIsUUFBUSxFQUFFLFFBQVEsR0FXbkI7TUF2QkYsQUFjRyw0QkFkSyxDQU9QLFFBQVEsQUFPTCxRQUFRLENBQUM7UUFDUixPQUFPLEVBQUUsRUFBRTtRQUNYLElBQUksRUFBRSxDQUFDO1FBQ1AsS0FBSyxFQUFFLElBQUk7UUFDWCxNQUFNLEVBQUUsTUFBTTtRQUNkLE1BQU0sRUFBRSxPQUFPO1FBQ2YsUUFBUSxFQUFFLFFBQVE7UUFDbEIsVUFBVSxFQUFFLGtFQUFrRSxHQUMvRTtJQXRCSixBQXlCQyw0QkF6Qk8sQ0F5QlAsRUFBRTtJQXpCSCw0QkFBUSxDQTBCUCxFQUFFLENBQUM7TUFDRCxNQUFNLEVBQUUsQ0FBQyxHQUNWO0lBNUJGLEFBOEJDLDRCQTlCTyxDQThCUCxFQUFFLENBQUM7TUFDRCxZQUFZLEVBQUUsTUFBTSxHQVVyQjtNQXpDRixBQWlDRyw0QkFqQ0ssQ0E4QlAsRUFBRSxBQUdDLFFBQVEsQ0FBQztRQUNSLEdBQUcsRUFBRSxNQUFNO1FBQ1gsU0FBUyxFQUFFLFNBQVM7UUx2QjFCLEtBQUssRUt3QmMsTUFBTTtRTHZCekIsTUFBTSxFS3VCYSxNQUFNO1FMbEN6QixlQUFlLEVLbUNhLEtBQUs7UUxsQ2pDLGlCQUFpQixFQUZzQyxTQUFTO1FBR2hFLG1CQUFtQixFS2lDSSxHQUFHO1FBQ3BCLGdCQUFnQixFQUFFLFdBQVc7UUFDN0IsZ0JBQWdCLEVBQUUsK0NBQStDLEdBQ2xFO0lBeENKLEFBMkNDLDRCQTNDTyxDQTJDUCxJQUFJLENBQUM7TUFDSCxXQUFXLEVBQUUsR0FBRztNQUNoQixLQUFLLEVKaEZFLE9BQU87TUlpRmQsY0FBYyxFQUFFLElBQUksR0FPckI7TUx2RkgsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtRS2tDbkMsQUFpREssNEJBakRHLENBMkNQLElBQUksQUFNQyxNQUFNLENBQUM7VUFDTixLQUFLLEVBQUUsS0FBSyxHQUNiO0VBckZULEFBMEZFLG9CQTFGa0IsQ0EwRmxCLEdBQUcsQ0FBQztJQUNGLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7O0FBR0gsQUFBQSxVQUFVLENBQUM7RUFDVCxNQUFNLEVBQUUsUUFBUSxHQTBFakI7RUEzRUQsQUFHRSxVQUhRLENBR1IsT0FBTyxDQUFDO0lBQ04sTUFBTSxFQUFFLFNBQVM7SUFDakIsUUFBUSxFQUFFLFFBQVEsR0FpQm5CO0lMM0hELE1BQU0sQ0FBQyxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07TUtxR3RDLEFBR0UsVUFIUSxDQUdSLE9BQU8sQ0FBQztRQUtKLE1BQU0sRUFBRSxTQUFTLEdBY3BCO0lBdEJILEFBV0ksVUFYTSxDQUdSLE9BQU8sQUFRSixRQUFRLENBQUM7TUFDUixPQUFPLEVBQUUsRUFBRTtNQUNYLEdBQUcsRUFBRSxDQUFDO01BQ04sS0FBSyxFQUFFLENBQUM7TUFDUixPQUFPLEVBQUUsQ0FBQztNQUNWLE1BQU0sRUFBRSxJQUFJO01BQ1osS0FBSyxFQUFFLE1BQU07TUFDYixRQUFRLEVBQUUsUUFBUTtNQUNsQixjQUFjLEVBQUUsSUFBSTtNQUNwQixVQUFVLEVBQUUsNERBQTRELEdBQ3pFO0VBckJMLEFBd0JFLFVBeEJRLENBd0JSLGFBQWEsQ0FBQztJQUNaLE9BQU8sRUFBRSxRQUFRO0lBQ2pCLEtBQUssRUFBRSxnQkFBZ0IsR0FheEI7SUw1SUQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNS3FHdEMsQUF3QkUsVUF4QlEsQ0F3QlIsYUFBYSxDQUFDO1FBS1YsT0FBTyxFQUFFLFFBQVEsR0FVcEI7SUw1SUQsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSztNS3FHckMsQUF3QkUsVUF4QlEsQ0F3QlIsYUFBYSxDQUFDO1FBU1YsS0FBSyxFQUFFLGlCQUFpQixHQU0zQjtJTDVJRCxNQUFNLENBQUMsTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO01LcUdyQyxBQXdCRSxVQXhCUSxDQXdCUixhQUFhLENBQUM7UUFhVixLQUFLLEVBQUUsZ0JBQWdCLEdBRTFCO0VBdkNILEFBeUNFLFVBekNRLENBeUNSLEdBQUcsQ0FBQztJQUNGLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7RUEzQ0gsQUE4Q0ksVUE5Q00sQ0E2Q1IsYUFBYSxDQUNYLFNBQVMsQ0FBQztJQUNSLE1BQU0sRUFBRSxDQUFDLEdBQ1Y7RUFoREwsQUFvREksVUFwRE0sQ0FtRFIsZ0JBQWdCLEdBQ1osUUFBUSxDQUFDO0lBQ1QsTUFBTSxFQUFFLENBQUMsR0FDVjtFQXRETCxBQXdESSxVQXhETSxDQW1EUixnQkFBZ0IsR0FLWixJQUFJLENBQUM7SUFDTCxLQUFLLEVKekpFLE9BQU87SUkwSmQsZUFBZSxFQUFFLElBQUksR0FPdEI7SUxoS0gsTUFBTSxDQUFDLE1BQU0sTUFBTSxTQUFTLEVBQUUsTUFBTTtNSytGdEMsQUE2RFEsVUE3REUsQ0FtRFIsZ0JBQWdCLEdBS1osSUFBSSxBQUtELE1BQU0sQ0FBQztRQUNOLEtBQUssRUFBRSxLQUFLLEdBQ2I7RUEvRFQsQUFvRUUsVUFwRVEsQ0FvRVIsWUFBWSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDMUIsTUFBTSxFQUFFLENBQUMsR0FDVjtFQXRFSCxBQXdFRSxVQXhFUSxDQXdFUixjQUFjLENBQUMsUUFBUSxDQUFDO0lBQ3RCLGVBQWUsRUFBRSxJQUFJLEdBQ3RCIn0= */
