section, aside {
    padding: 3rem 0;
}

@media (max-width: 575.98px) {
    section, aside {
        padding: 2rem 0;
    }

}

@media (min-width: 576px) and (max-width: 767.98px) {
    section, aside {
        padding: 2rem 0;
    }
}

/*School Info page*/
.btn-like-fav{
    margin-top: 20px;
}
.btn-like-fav a{
 /*margin: 5px;*/
 text-decoration: none;
}

.btn-like-fav .fa-heart,
.btn-like-fav .fa-star,
.btn-like-fav .fa-envelope{
font-size: 40px;
}

.btn-like-fav .fa-star
{
color: #fdc800 !important;
}


.btn-school-admission{
   margin-top: 18px;
   margin-bottom: 18px; 
}

.btn-school-admission a{
    font-size: 10px;
    padding: 9px;
  
}

.btn-school-admission a:hover{
/* color: #fdc800 !important; */
color: black;
}

/*School Info page*/

.divider-v {
    content: "|";
    color: #fff;
    padding: 0 1rem;
    background-color: transparent;
}

.divider-h {
    content: "-";
    color: #fff;
    padding: 0 1rem;
    background-color: transparent;
}

.custom-bg-primary {
    background-color: #002147;
}

.custom-bg-secondary {
    background-color: #fdc800;
}

.custom-color-primary, .custom-text-primary {
    color: #002147 !important;
}

.custom-color-secondary, .custom-text-secondary {
    color: #fdc800 !important;
}

.btn-custom-secondary, #content .more-button {
    color: #002147;
    background-color: #fdc800;
}

.btn-round-secondary, .schools-list .school-card .details-option .details-buttons .btn-details {
    color: #002147;
    background-color: #fdc800;
    border: 1px solid #fdc800;
    text-transform: uppercase;
    font-weight: bold;
    border-radius: 20px;
}

.btn-round-secondary:hover, .schools-list .school-card .details-option .details-buttons .btn-details:hover {
    background-color: #fff;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1);
}

.btn-round-primary, .custom-modal .modal-body-with-content .btn-round-primary {
    color: #fff;
    background-color: #002147;
    border: 1px solid #002147;
    text-transform: uppercase;
    font-weight: bold;
    border-radius: 1.4rem;
}

.btn-round-primary:hover, .custom-modal .modal-body-with-content .btn-round-primary:hover {
    background-color: #fdc800;
    color: #002147;
    border: 1px solid #fdc800;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1);
}

.main-heading-style, .events-container .main-heading-style, #school-details-page .heading, #school-details-page .school-card .card-title, #about-page .content .heading, #about-page .content .alternate-heading, #bde-form .main-heading-style, #school-form .main-heading-style, #student-form .main-heading-style, #nsi .main-heading-style, #gallery-page .title, #gallery-inner .title, #faq-page .heading, #notification-page .heading {
    text-transform: uppercase;
    font-size: 2rem;
    font-weight: bold;
    color: #454851;
    text-align: left;
    padding-right: 1rem;
    position: relative;
    display: inline-block;
}

.main-heading-style::before, .events-container .main-heading-style::before, #school-details-page .heading::before, #school-details-page .school-card .card-title::before, #about-page .content .heading::before, #about-page .content .alternate-heading::before, #bde-form .main-heading-style::before, #school-form .main-heading-style::before, #student-form .main-heading-style::before, #nsi .main-heading-style::before, #gallery-page .title::before, #gallery-inner .title::before, #faq-page .heading::before, #notification-page .heading::before {
    position: absolute;
    content: "";
    left: 100%;
    width: 50%;
    bottom: 10px;
    height: 3px;
    background-color: #fdc800;
}

.underline-heading-style, .schools-list .school-card .image-and-details .primary-details .title, #blog-details .blog-details .blog-content .blog-heading, #gallery-page .title-alternate {
    color: #fff;
    font-size: 5rem;
    font-weight: bold;
    text-transform: none;
    position: relative;
    text-align: center;
    text-shadow: 2px 2px 10px rgba(34, 34, 34, 0.3);
}

.underline-heading-style::before, .schools-list .school-card .image-and-details .primary-details .title::before, #blog-details .blog-details .blog-content .blog-heading::before, #gallery-page .title-alternate::before {
    position: absolute;
    content: "";
    height: 4px;
    bottom: 0;
    left: 25%;
    right: 25%;
    background-color: #222;
}

.custom-pagination {
    display: flex;
    list-style: none;
    padding: 0 !important;
    margin: 0;
}

.custom-pagination .page-item:last-of-type .page-link {
    margin-right: 0;
}

.custom-pagination .page-link {
    border-radius: 50% !important;
    margin-right: 1rem;
    color: #222;
    font-weight: bold;
    font-size: 1rem;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1);
}

.custom-pagination .page-link:hover, .custom-pagination .page-link.active {
    background-color: #fdc800;
    color: #002147;
}

.time-details, .event-content .time-details {
    padding-right: .7rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    border-right: 1px solid #fdc800;
}

.time-details .date-details .date {
    color: #fdc800;
    font-weight: bold;
    font-size: 2.5rem;
}

.time-details .date-details .month {
    color: #222;
    text-transform: uppercase;
    font-size: 1.5rem;
    font-weight: bold;
}

.time-details .time {
    font-size: .9rem;
    color: #222;
    text-transform: uppercase;
}

.star-rating i.active {
    color: #fdc800 !important;
}

.form-rounded {
    border-radius: 1rem;
}

.icon-inside-right, #bde-form .special-inside-icon {
    position: relative;
    width: 100%;
}

.icon-inside-right select, #bde-form .special-inside-icon select {
    -moz-appearance: none;
    /* Firefox */
    -webkit-appearance: none;
    /* Safari and Chrome */
    appearance: none;
}

.icon-inside-right input, #bde-form .special-inside-icon input, .icon-inside-right select, #bde-form .special-inside-icon select {
    padding-right: 2rem;
}

.icon-inside-right input:focus + i, #bde-form .special-inside-icon input:focus + i, .icon-inside-right select:focus + i, #bde-form .special-inside-icon select:focus + i {
    color: #222;
}

.icon-inside-right i, #bde-form .special-inside-icon i {
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    font-size: 1.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bbb;
}

.icon-inside-left {
    position: relative;
    width: 100%;
}

.icon-inside-left select {
    -moz-appearance: none;
    /* Firefox */
    -webkit-appearance: none;
    /* Safari and Chrome */
    appearance: none;
}

.icon-inside-left input, .icon-inside-left select {
    padding-left: 3rem;
}

.icon-inside-left input:focus + i, .icon-inside-left select:focus + i {
    color: #222;
}

.icon-inside-left i {
    position: absolute;
    left: 10px;
    top: 0;
    bottom: 0;
    font-size: 1.3rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #bbb;
}

.form-rounded {
    border-radius: 1rem;
}

.form-label {
    margin: 0.5rem 0;
}

.form-width {
    width: 175px;
}

@media (max-width: 575.98px) {
    .form-width {
        width: 100%;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .form-width {
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .form-width {
        width: 100%;
    }
}

.form-width-wide {
    width: 276px;
}

@media (max-width: 575.98px) {
    .form-width-wide {
        width: 100%;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .form-width-wide {
        width: 100%;
    }
}

.text-rounded {
    border-radius: 20px 20px 0 0;
}

.text-rounded-inverse {
    border-radius: 0 0 20px 20px;
}

.input-bottom {
    border: 0;
    border-bottom: 1px solid #000;
    border-radius: 0;
}

.input-bottom:hover {
    border-radius: 1rem;
    border: 1px solid lightblue;
    box-shadow: 0 0 11px lightblue;
}

.input-rounded {
    border-color: #000;
    border-radius: 1rem;
}

.input-rounded:hover {
    border: 1px solid lightblue;
    box-shadow: 0 0 11px lightblue;
}

.contact-heading {
    font-size: 22px;
}

.input-icon {
    border: 0;
    background: none;
    border-bottom: 1px solid #000;
    border-radius: 0;
}

.less-height-input {
    height: calc(1.5em + .3rem + 2px);
}

.less-height-form input, .less-height-form select {
    height: calc(1.5em + .3rem + 2px);
}

.social-links .links-container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
}

.social-links .links-container.contact-page a {
    margin: 0 1.2rem 1rem;
}

.social-links .links-container li {
    flex-basis: 20%;
}

.social-links .links-container li img {
    display: block;
    width: 100%;
}

.social-links .links-container a {
    display: inline-block;
    margin: 0 .8rem 1rem;
}

.loading-container {
    display: flex;
    justify-content: center;
    align-items: center;
}

.loading-container .loader {
    width: 60px;
}

.loading-container .loader-wheel {
    animation: spin 1s infinite linear;
    border: 2px solid rgba(255, 255, 255, 0.8);
    border-left: 4px solid #002147;
    border-radius: 50%;
    height: 50px;
    margin-bottom: 10px;
    width: 50px;
}

.loading-container .loader-text {
    color: #222;
    font-family: arial, sans-serif;
}

.loading-container .loader-text:after {
    content: 'Loading';
    animation: load 2s linear infinite;
}

@keyframes spin {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes load {
    0% {
        content: 'Loading';
    }
    33% {
        content: 'Loading.';
    }
    67% {
        content: 'Loading..';
    }
    100% {
        content: 'Loading...';
    }
}

/*.modal-dialog-scrollable {
  !* width *!
  ::-webkit-scrollbar {
    width: 4px;
    margin-right: 1rem;
  }

  !* Track *!
  ::-webkit-scrollbar-track {
    background: lighten($grey, 10%);
  }

  !* Handle *!
  ::-webkit-scrollbar-thumb {
    background: $secondary-color;
  }

  !* Handle on hover *!
  ::-webkit-scrollbar-thumb:hover {
    background: darken($secondary-color, 20%);
  }
}*/
header, header:not(#home) {
    background: url("../../images/website/schotest_pattern.svg") repeat 80%;
    background-size: contain;
    height: 95vh;
    width: 100%;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    z-index: 1;
}

header .form-group, header:not(#home) .form-group {
    margin: 0;
}

header::before, header:not(#home)::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 25, 69, 0.5);
    z-index: -1;
}

header .location-selector, header:not(#home) .location-selector {
    padding: 0 .5rem !important;
    color: #454851 !important;
    border-radius: 15px;
    height: auto !important;
    font-style: italic;
    font-size: .9rem;
}

header .top-bar, header:not(#home) .top-bar {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    background-color: transparent;
    padding: 1rem 1rem .5rem;
}

header .top-bar a, header:not(#home) .top-bar a {
    text-decoration: none;
}

header .top-bar .links, header:not(#home) .top-bar .links {
    padding: 0 1rem;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

header .top-bar .links *, header:not(#home) .top-bar .links * {
    color: #fff;
}

header .top-bar .login-link, header:not(#home) .top-bar .login-link {
    padding-right: 1.5rem;
    border-right: 1px solid #fdc800;
    margin-right: 1.5rem;
}

header .search-container, header:not(#home) .search-container {
    width: calc(100% - 30%);
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    text-align: center;
}

header .search-container .heading, header:not(#home) .search-container .heading, header .search-container #school-details-page .school-card .card-title, #school-details-page .school-card header .search-container .card-title {
    color: #fdc800;
    font-weight: 700;
    font-size: 2.2rem;
    text-shadow: 1px 3px 3px rgba(0, 0, 0, 0.9);
}

header .search-container .search, header:not(#home) .search-container .search {
    display: flex;
}

header .search-container .logo, header:not(#home) .search-container .logo {
    width: 60px;
    height: 60px;
    margin-right: 1rem;
}

header .search-container .logo img, header:not(#home) .search-container .logo img {
    width: 100%;
}

header .search-container input[name="school_name"], header:not(#home) .search-container input[name="school_name"] {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    margin: 0;
    min-width: 250px;
    padding: .5rem;
    font-size: .8rem;
}

header .search-container .btn, header:not(#home) .search-container .btn {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    text-transform: uppercase;
    font-size: .7rem;
    font-weight: bold;
    padding: .45rem 1rem;
}

header .navigation-bar, header:not(#home) .navigation-bar {
    width: 100%;
    background-color: #002147;
    border-top: 1px solid #fdc800;
}

header .navigation-bar .nav-item, header:not(#home) .navigation-bar .nav-item {
    border-right: 1px dotted #fff;
    padding: 0 .7rem;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: bold;
}

header .navigation-bar .nav-item .nav-link, header:not(#home) .navigation-bar .nav-item .nav-link {
    color: #fff;
}

header .navigation-bar .nav-item:hover, header:not(#home) .navigation-bar .nav-item:hover {
    color: #fdc800 !important;
    border-right: 1px dotted #fdc800;
}

header .navigation-bar .nav-item:hover .nav-link, header:not(#home) .navigation-bar .nav-item:hover .nav-link {
    color: #fdc800;
}

header .navigation-bar .nav-item.active, header:not(#home) .navigation-bar .nav-item.active {
    color: #fdc800 !important;
    border-right: 1px dotted #fdc800;
}

header .navigation-bar .nav-item.active .nav-link, header:not(#home) .navigation-bar .nav-item.active .nav-link {
    color: #fdc800;
}

header .navigation-bar .dropdown:hover .dropdown-menu, header:not(#home) .navigation-bar .dropdown:hover .dropdown-menu {
    display: block;
}

header .navigation-bar .dropdown-menu, header:not(#home) .navigation-bar .dropdown-menu {
    min-width: 8rem;
    background-color: #002147;
    margin-top: 0;
}

header .navigation-bar .dropdown-item, header:not(#home) .navigation-bar .dropdown-item {
    background-color: #002147;
    color: #fff;
    text-transform: none;
    font-size: .8rem;
}

main {
    position: relative;
}

#schools {
    background-color: transparent;
    padding: 3rem 0 1rem;
}

#schools .schools-container {
    padding: 3rem 0 4rem;
    overflow: hidden;
}

#schools .school-card {
    padding: .6rem;
    width: 80%;
    min-height: 295px;
    max-height: 350px;
    margin: 0 auto 1rem;
    border-radius: 15px;
    -webkit-box-shadow: 0 3px 11px 0 rgba(0, 0, 0, 0.4);
    -moz-box-shadow: 0 3px 11px 0 rgba(0, 0, 0, 0.4);
    box-shadow: 0 3px 11px 0 rgba(0, 0, 0, 0.4);
    transition: all 500ms ease-in-out;
}

#schools .school-card * {
    transition: all 500ms ease-in-out;
}

#schools .school-card:hover {
    transform: scaleX(1.3) scaleY(1.3);
    /*.image {
        position: relative;
        z-index: 1;

        &::after {
          content: "";
          position: absolute;
          top: 0;
          bottom: 0;
          left: 0;
          right: 0;
          z-index: 2;
          background: transparentize($primary-color, .3);
        }
      }*/
}

#schools .school-card a {
    text-decoration: none;
}

#schools .school-card .image {
    min-height: 120px;
    max-height: 140px;
    border-radius: 15px;
    overflow: hidden;
}

#schools .school-card .image img {
    width: 100%;
    display: block;
    margin: 0;
    padding: 0;
}

#schools .school-card .details {
    padding-top: .3rem;
}

#schools .school-card .details .name {
    font-weight: bold;
    color: #222;
    text-align: center;
    position: relative;
    padding: 0 0 .5rem;
    margin: 0;
    font-size: .9rem;
}

#schools .school-card .details .name::before {
    position: absolute;
    content: "";
    bottom: 0;
    left: 20%;
    right: 20%;
    height: 2px;
    background-color: #fdc800;
}

#schools .school-card .details .type {
    font-size: .7rem;
    font-weight: 300;
    padding: .3rem 0 .4rem;
    margin: 0;
    color: #222;
    text-align: center;
}

#schools .school-card .details .review-container {
    display: flex;
    align-items: center;
    padding: 0;
    margin-bottom: .3rem;
    /*&:first-child {
          padding-right: 1rem;
        }

        &:last-child {
          padding-left: 1rem;
        }*/
}

#schools .school-card .details .review-container * {
    flex-basis: 50%;
    font-size: .8rem;
    color: #222;
}

#schools .school-card .details .review-container .star-rating {
    text-align: center;
}

#schools .school-card .details .review-container .star-rating i {
    font-size: .7rem;
}

#schools .school-card .details .review-container .total-review {
    border-right: 1px solid #666;
    text-align: center;
}

#schools .school-card .details .review-container .total-review sup {
    font-size: 65%;
}

#schools .school-card .details .basic-details {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

#schools .school-card .details .basic-details * {
    font-size: .7rem;
    color: #222;
}

#schools .school-card .details .basic-details .description {
    display: flex;
    flex-direction: column;
    flex-basis: 80%;
    margin: 0 auto;
    color: #222;
}

#schools .school-card .details .basic-details .description .content-row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
}

#schools .school-card .details .basic-details .description .content-row sup {
    font-size: 70%;
}

#schools .school-card .details .basic-details .compare {
    flex-basis: 30%;
    text-align: right;
}

#schools .school-card .details .basic-details .compare .compare-btn {
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: #fdc800;
    border: 1px solid transparent;
    padding: .1rem .3rem;
    font-size: .7rem;
    line-height: 1.5;
    border-radius: 1rem;
}

@media (max-width: 575.98px) {
    #schools {
        padding-top: 1rem;
    }
    h1 {
        font-size: 2rem;
    }

    #schools .main-heading-style, #schools #school-details-page .heading, #school-details-page #schools .heading, #schools #school-details-page .school-card .card-title, #school-details-page .school-card #schools .card-title, #schools #about-page .content .heading, #about-page .content #schools .heading, #schools #about-page .content .alternate-heading, #about-page .content #schools .alternate-heading, #schools #gallery-page .title, #gallery-page #schools .title, #schools #gallery-inner .title, #gallery-inner #schools .title, #schools #faq-page .heading, #faq-page #schools .heading, #schools #notification-page .heading, #notification-page #schools .heading {
        font-size: 1.5rem;
    }

    #schools .schools-container {
        padding: 0;
    }

    #schools .school-card {
        min-height: auto;
        max-height: initial;
    }
}

#gallery {
    background: url("../../images/website/gallery-bg-image.png") #fdc800 no-repeat center;
    -webkit-background-size: cover;
    background-size: cover;
    padding: 4rem 0;
    /*.gallery-grid {
    border: 3px solid $white;
    overflow: hidden;
    display: flex;
    width: 100%;
    flex-direction: row;
    justify-content: flex-start;
    align-items: stretch;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;

    * {
      padding: 0;
      margin: 0;
    }

    img {
      display: block;
      margin: 0;
      padding: 0;
    }

    .main-grid {
      flex-basis: 40%;
      width: 100%;
      display: flex;
      flex-wrap: wrap;
      align-items: stretch;
      //border-right: 3px solid $white;

      .big-image {
        flex-basis: 100%;
        //border-bottom: 3px solid $white;

        img {
          width: 100%;
        }
      }

      .small-image {
        flex-basis: 50%;
        //border-right: 3px solid $white;

        &:last-child {
          border: 0;
        }

        img {
          width: 100%;
        }
      }
    }

    .secondary-grid {
      flex-basis: 60%;
      width: 100%;
      display: flex;
      flex-wrap: wrap;

      .image-row {
        //border-bottom: 3px solid $white;
        display: flex;
        flex-wrap: wrap;

        &:last-child {
          border-bottom: 0;
        }
      }

      .small-image {
        flex-basis: 33%;
        //border-right: 3px solid $white;

        &:last-child {
          border-right: 0;
        }

        img {
          width: 100%;
        }
      }
    }
  }*/
}

#gallery .underline-heading {
    color: #fff;
    font-size: 4.5rem;
    font-weight: bold;
    text-transform: none;
    position: relative;
    text-align: center;
    text-shadow: 2px 2px 10px rgba(34, 34, 34, 0.3);
}

#gallery .underline-heading::before {
    position: absolute;
    content: "";
    height: 4px;
    bottom: 10px;
    left: 25%;
    right: 25%;
    background-color: #002147;
}

#gallery .gallery-grid {
    display: grid;
    grid-template-areas: "main main secondary secondary secondary" "main main secondary secondary secondary";
    grid-gap: .3rem;
    border: 3px solid #fff;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
    width: 100%;
    background-color: #fff;
    overflow: hidden;
}

#gallery .gallery-grid img {
    width: 100%;
    height: 100%;
}

#gallery .gallery-grid .main-grid {
    grid-area: main;
    display: grid;
    grid-gap: .3rem;
    grid-template-rows: repeat(3, 102px);
    grid-template-columns: repeat(2, 1fr);
    overflow: hidden;
}

#gallery .gallery-grid .main-grid .big-image {
    overflow: hidden;
    grid-column: 1/3;
    grid-row: 1/3;
}

#gallery .gallery-grid .main-grid .big-image img {
    width: 100%;
    height: 100%;
}

#gallery .gallery-grid .main-grid .small-image {
    overflow: hidden;
}

#gallery .gallery-grid .secondary-grid {
    grid-area: secondary;
    display: grid;
    grid-gap: .3rem;
    grid-template-rows: repeat(3, 102px);
    overflow: hidden;
}

#gallery .gallery-grid .secondary-grid .image-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: .3rem;
    overflow: hidden;
}

#gallery .gallery-grid .secondary-grid .small-image {
    overflow: hidden;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
    #gallery .underline-heading {
        font-size: 3rem;
        margin-bottom: 1rem;
    }

    #gallery .underline-heading::before {
        left: 34%;
        right: 35%;
    }
}

#content {
    overflow: hidden;
    /* width */
    /* Track */
    /* Handle */
    /* Handle on hover */
}

#content .main-heading-style, #content #school-details-page .heading, #school-details-page #content .heading, #content #school-details-page .school-card .card-title, #school-details-page .school-card #content .card-title, #content #about-page .content .heading, #about-page .content #content .heading, #content #about-page .content .alternate-heading, #about-page .content #content .alternate-heading, #content #gallery-page .title, #gallery-page #content .title, #content #gallery-inner .title, #gallery-inner #content .title, #content #faq-page .heading, #faq-page #content .heading, #content #notification-page .heading, #notification-page #content .heading {
    font-size: 2rem;
    margin-bottom: 2rem;
}

#content .main-heading-style::before, #content #school-details-page .heading::before, #school-details-page #content .heading::before, #content #school-details-page .school-card .card-title::before, #school-details-page .school-card #content .card-title::before, #content #about-page .content .heading::before, #about-page .content #content .heading::before, #content #about-page .content .alternate-heading::before, #about-page .content #content .alternate-heading::before, #content #gallery-page .title::before, #gallery-page #content .title::before, #content #gallery-inner .title::before, #gallery-inner #content .title::before, #content #faq-page .heading::before, #faq-page #content .heading::before, #content #notification-page .heading::before, #notification-page #content .heading::before {
    width: 100px;
}

#content ::-webkit-scrollbar {
    width: 4px;
}

#content ::-webkit-scrollbar-track {
    background: #d5d5d5;
}

#content ::-webkit-scrollbar-thumb {
    background: #fdc800;
}

#content ::-webkit-scrollbar-thumb:hover {
    background: #977700;
}

#content .events-container {
    padding: 0;
    overflow: hidden;
    /*.main-heading-style {
      @extend .main-heading-style;
      font-size: 2rem;
      margin-bottom: 2rem;

      &::before {
        width: 40%;
      }
    }*/
}

#content .events {
    background-color: #fff;
    padding: 0 .5rem 0 0;
    width: 90%;
    height: 400px;
    overflow: auto;
    margin-bottom: 1rem;
}

#content .events .event {
    margin-bottom: 1rem;
    border: 1px solid #e1e1e1;
    padding: 0;
    background-color: #fff;
    color: #454851;
    text-decoration: none;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

#content .events .event .event-image {
    flex-basis: calc(30% - (.7rem / 2));
    width: 100%;
    padding: .4rem;
}

#content .events .event .event-image img {
    width: 100%;
}

#content .events .event .event-details {
    flex-basis: calc(70% - (.7rem / 2));
    padding: .4rem 0 0;
}

#content .events .event .event-details .date-details {
    margin-bottom: .7rem;
    font-size: .7rem;
}

#content .events .event .event-details .date-details i {
    color: var(--danger);
    margin-right: .3rem;
}

#content .events .event .event-details p {
    font-size: .666rem;
    margin: 0;
}

#content .events .event h6, #content .events .event .heading, #content .events .event #school-details-page .school-card .card-title, #school-details-page .school-card #content .events .event .card-title {
    font-size: .8rem;
    font-weight: bold;
    color: #222;
}

#content .events .event:last-child {
    margin-bottom: 0;
}

#content .more-button {
    margin-top: 1rem;
    color: #001a39;
    border-radius: 20px;
    font-weight: bold;
    font-size: .8rem;
    padding: .2rem .4rem;
}

#content .more-button:hover {
    background-color: #fff;
    border-color: #fdc800;
    box-shadow: 0 1px 6px 1px rgba(0, 0, 0, 0.2);
}

#content .upcoming-events-container {
    overflow: hidden;
}

#content .upcoming-events-container .upcoming-events {
    height: 400px;
    overflow: auto;
    margin-bottom: 1rem;
}

#content .upcoming-events-container .main-heading-style::before, #content .upcoming-events-container #school-details-page .heading::before, #school-details-page #content .upcoming-events-container .heading::before, #content .upcoming-events-container #school-details-page .school-card .card-title::before, #school-details-page .school-card #content .upcoming-events-container .card-title::before, #content .upcoming-events-container #about-page .content .heading::before, #about-page .content #content .upcoming-events-container .heading::before, #content .upcoming-events-container #about-page .content .alternate-heading::before, #about-page .content #content .upcoming-events-container .alternate-heading::before, #content .upcoming-events-container #gallery-page .title::before, #gallery-page #content .upcoming-events-container .title::before, #content .upcoming-events-container #gallery-inner .title::before, #gallery-inner #content .upcoming-events-container .title::before, #content .upcoming-events-container #faq-page .heading::before, #faq-page #content .upcoming-events-container .heading::before, #content .upcoming-events-container #notification-page .heading::before, #notification-page #content .upcoming-events-container .heading::before {
    background-color: #fdc800;
}

#content .upcoming-events-container .upcoming-events {
    padding: 0;
}

#content .upcoming-events-container .upcoming-events .event {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: 2rem;
}

#content .upcoming-events-container .upcoming-events .event .image-details {
    flex-basis: 45%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

#content .upcoming-events-container .upcoming-events .event .image-details img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
}

#content .upcoming-events-container .upcoming-events .event .image-details .time-details {
    line-height: 1;
    padding-right: .7rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-right: 1px solid #fdc800;
}

#content .upcoming-events-container .upcoming-events .event .image-details .date-details .date {
    color: #fdc800;
    font-weight: bold;
    font-size: 2.5rem;
}

#content .upcoming-events-container .upcoming-events .event .image-details .date-details .month {
    color: #222;
    text-transform: uppercase;
    font-size: 1.2rem;
    font-weight: bold;
}

#content .upcoming-events-container .upcoming-events .event .image-details .time {
    font-size: .7rem;
    color: #222;
    text-transform: uppercase;
}

#content .upcoming-events-container .upcoming-events .event .event-details {
    padding-left: .7rem;
    flex-basis: calc(55% - .7rem);
    font-size: .8rem;
}

#content .upcoming-events-container .upcoming-events .event .event-details h6, #content .upcoming-events-container .upcoming-events .event .event-details .heading, #content .upcoming-events-container .upcoming-events .event .event-details #school-details-page .school-card .card-title, #school-details-page .school-card #content .upcoming-events-container .upcoming-events .event .event-details .card-title {
    color: #002147;
    font-size: 1rem;
    font-weight: bold;
    margin-bottom: .1rem;
}

#content .upcoming-events-container .upcoming-events .event .event-details p.details {
    font-size: .7rem;
    color: #222;
    margin: 0 0 .4rem;
}

#content .upcoming-events-container .upcoming-events .event .event-details .address {
    font-size: .7rem;
    color: #002147;
    font-weight: bold;
    margin: 0;
}

#content .blogs-container {
    margin: 4rem 0 2rem;
}

#content .blogs-container .main-heading-style, #content .blogs-container #school-details-page .heading, #school-details-page #content .blogs-container .heading, #content .blogs-container #school-details-page .school-card .card-title, #school-details-page .school-card #content .blogs-container .card-title, #content .blogs-container #about-page .content .heading, #about-page .content #content .blogs-container .heading, #content .blogs-container #about-page .content .alternate-heading, #about-page .content #content .blogs-container .alternate-heading, #content .blogs-container #gallery-page .title, #gallery-page #content .blogs-container .title, #content .blogs-container #gallery-inner .title, #gallery-inner #content .blogs-container .title, #content .blogs-container #faq-page .heading, #faq-page #content .blogs-container .heading, #content .blogs-container #notification-page .heading, #notification-page #content .blogs-container .heading {
    text-transform: none;
    margin-bottom: 2rem;
}

#content .blogs-container .main-heading-style::before, #content .blogs-container #school-details-page .heading::before, #school-details-page #content .blogs-container .heading::before, #content .blogs-container #school-details-page .school-card .card-title::before, #school-details-page .school-card #content .blogs-container .card-title::before, #content .blogs-container #about-page .content .heading::before, #about-page .content #content .blogs-container .heading::before, #content .blogs-container #about-page .content .alternate-heading::before, #about-page .content #content .blogs-container .alternate-heading::before, #content .blogs-container #gallery-page .title::before, #gallery-page #content .blogs-container .title::before, #content .blogs-container #gallery-inner .title::before, #gallery-inner #content .blogs-container .title::before, #content .blogs-container #faq-page .heading::before, #faq-page #content .blogs-container .heading::before, #content .blogs-container #notification-page .heading::before, #notification-page #content .blogs-container .heading::before {
    width: 100%;
}

#content .blogs-container .blog-item {
    height: 155px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .5rem;
    border: 1px solid #e1e1e1;
    -webkit-box-shadow: 2px 2px 3px rgba(60, 53, 51, 0.1);
    -moz-box-shadow: 2px 2px 3px rgba(60, 53, 51, 0.1);
    box-shadow: 2px 2px 3px rgba(60, 53, 51, 0.1);
}

#content .blogs-container .blog-item .image {
    flex-basis: 40%;
    height: 100%;
}

#content .blogs-container .blog-item .image img {
    width: 100%;
    height: 100%;
}

#content .blogs-container .blog-item .details {
    flex-basis: 55%;
    color: #222;
}

#content .blogs-container .blog-item .details .title {
    margin: 0 0 .2rem;
    color: #222;
    line-height: 1;
    font-size: 1.2rem;
}

#content .blogs-container .blog-item .details .post-date {
    font-size: .75rem;
    margin: 0 0 0.3rem 0;
}

#content .blogs-container .blog-item .details .post-date p {
    margin: 0;
    padding: 0 0 0.2rem;
}

#content .blogs-container .blog-item .details .post-date .divider {
    width: 70%;
    height: 2px;
    background-color: #fdc800;
}

#content .blogs-container .blog-item .details .description {
    font-size: .666rem;
    margin: 0;
}

#content .blogs-container .blog-item .details .read-more {
    text-align: right;
    font-size: .75rem;
    font-style: italic;
    color: #000;
    text-decoration: underline;
}

@media (max-width: 575.98px) {
    #content {
        padding: 1rem 0;
    }

    #content .events-container {
        margin-bottom: 2rem;
    }

    #content .events {
        width: 100%;
    }

    #content .blogs-container .blog-item {
        height: auto;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #content .main-heading-style, #content #school-details-page .heading, #school-details-page #content .heading, #content #school-details-page .school-card .card-title, #school-details-page .school-card #content .card-title, #content #about-page .content .heading, #about-page .content #content .heading, #content #about-page .content .alternate-heading, #about-page .content #content .alternate-heading, #content #gallery-page .title, #gallery-page #content .title, #content #gallery-inner .title, #gallery-inner #content .title, #content #faq-page .heading, #faq-page #content .heading, #content #notification-page .heading, #notification-page #content .heading {
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
    }

    #content .events {
        width: 100%;
    }

    #content .upcoming-events-container {
        margin-top: 2rem;
        overflow: hidden;
    }

    #content .blogs-container {
        margin: 2rem 0 0;
    }

    #content .blogs-container .blog-item {
        height: auto;
        margin-bottom: 1rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #content .main-heading-style, #content #school-details-page .heading, #school-details-page #content .heading, #content #school-details-page .school-card .card-title, #school-details-page .school-card #content .card-title, #content #about-page .content .heading, #about-page .content #content .heading, #content #about-page .content .alternate-heading, #about-page .content #content .alternate-heading, #content #gallery-page .title, #gallery-page #content .title, #content #gallery-inner .title, #gallery-inner #content .title, #content #faq-page .heading, #faq-page #content .heading, #content #notification-page .heading, #notification-page #content .heading {
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
    }

    #content .events-container {
        overflow: hidden;
    }

    #content .upcoming-events-container {
        overflow: hidden;
    }

    #content .blogs-container {
        margin: 2rem 0 0;
    }

    #content .blogs-container .blog-item {
        height: auto;
        margin-bottom: 1rem;
    }
}

#counter {
    background: url("../../images/website/counter-bg.png") no-repeat center;
}

#counter * {
    color: #fff;
}

#counter .counting-item {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

#counter .counting-item h4 {
    width: auto;
    font-size: 1.2rem;
    text-transform: uppercase;
    margin-bottom: 0;
}

#counter .counting {
    font-size: 3rem;
    border-bottom: 5px solid #fdc800;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #counter {
        padding: 1rem 0;
        background-size: cover;
    }

    #counter .counting-item h4 {
        text-transform: uppercase;
        font-size: 1.3rem;
    }

    #counter .counting {
        font-size: 2rem;
        border-bottom: 5px solid #fdc800;
    }

    #counter .counting-item {
        flex-direction: column;
        margin-bottom: 2rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #counter .counting-item h4 {
        font-size: 1rem;
        margin-right: 1rem;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    #counter .counting-item h4 {
        font-size: 1.2rem;
        margin-right: 1rem;
    }
}

#founders-pen .founder-image {
    padding: .6rem;
    -webkit-box-shadow: 0 5px 20px 2px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 5px 20px 2px rgba(0, 0, 0, 0.2);
    box-shadow: 0 5px 20px 2px rgba(0, 0, 0, 0.2);
}

#founders-pen .founder-image img {
    width: 100%;
}

#founders-pen .desc {
    padding-left: 2rem;
    overflow: hidden;
}

#founders-pen .main-heading-style, #founders-pen #school-details-page .heading, #school-details-page #founders-pen .heading, #founders-pen #school-details-page .school-card .card-title, #school-details-page .school-card #founders-pen .card-title, #founders-pen #about-page .content .heading, #about-page .content #founders-pen .heading, #founders-pen #about-page .content .alternate-heading, #about-page .content #founders-pen .alternate-heading, #founders-pen #gallery-page .title, #gallery-page #founders-pen .title, #founders-pen #gallery-inner .title, #gallery-inner #founders-pen .title, #founders-pen #faq-page .heading, #faq-page #founders-pen .heading, #founders-pen #notification-page .heading, #notification-page #founders-pen .heading {
    font-size: 1.3rem;
    color: #002147;
    text-transform: none;
    margin-bottom: 1rem;
}

#founders-pen .details {
    width: 80%;
}

#founders-pen .description {
    padding: 0 1rem 0 .7rem;
    font-size: .8rem;
    margin: 0;
    color: #222;
    position: relative;
}

#founders-pen .author {
    width: 92%;
    font-size: 1.2rem;
    font-style: italic;
    color: #222;
    margin: 0;
    text-align: right;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #founders-pen .desc {
        margin-top: 1rem;
    }
}

#testimonials {
    /*background: url("../../images/website/testimonials-bg.png") no-repeat; }*/
}

#testimonials .underline-heading-style, #testimonials .schools-list .school-card .image-and-details .primary-details .title, .schools-list .school-card .image-and-details .primary-details #testimonials .title, #testimonials #blog-details .blog-details .blog-content .blog-heading, #blog-details .blog-details .blog-content #testimonials .blog-heading, #testimonials #gallery-page .title-alternate, #gallery-page #testimonials .title-alternate {
    color: #454851;
    font-size: 2rem;
    font-weight: 700;
    padding-bottom: .5rem;
    text-transform: uppercase;
    text-shadow: none;
}

#testimonials .underline-heading-style::before, #testimonials .schools-list .school-card .image-and-details .primary-details .title::before, .schools-list .school-card .image-and-details .primary-details #testimonials .title::before, #testimonials #blog-details .blog-details .blog-content .blog-heading::before, #blog-details .blog-details .blog-content #testimonials .blog-heading::before, #testimonials #gallery-page .title-alternate::before, #gallery-page #testimonials .title-alternate::before {
    height: 3px;
    background-color: #fdc800;
}

#testimonials .testimonials-container {
    overflow: hidden;
    width: 100%;
}

#testimonials .testimonials-container .placeholder-container {
    width: 100%;
}

#testimonials .rating-card {
    margin: 0 .5rem 0 0;
    padding: .8rem;
    -webkit-box-shadow: 2px 1px 6px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 2px 1px 6px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 2px 1px 6px 0 rgba(0, 0, 0, 0.2);
}

#testimonials .basic-details {
    width: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

#testimonials .basic-details p {
    margin: 0;
}

#testimonials .basic-details .details {
    width: calc(100% - 75px);
    padding: 0 .5rem;
}

#testimonials .basic-details .user-name {
    margin-top: .5rem;
}

#testimonials .basic-details .name {
    font-weight: bold;
    font-size: .9rem;
    color: #222;
}

#testimonials .basic-details .education {
    font-size: .7rem;
    color: #222;
}

#testimonials .basic-details .profile-image {
    width: 75px;
    height: 75px;
    border-radius: 50%;
    border: 1px solid #bbb;
    overflow: hidden;
}

#testimonials .basic-details .profile-image img {
    width: 100%;
    display: block;
    margin: 0;
    padding: 0;
}

#testimonials .basic-details .rating {
    text-align: right;
}

#testimonials .basic-details .rating i {
    font-size: .7rem;
}

#testimonials .basic-details .rating p {
    font-size: .7rem;
    margin: 0;
    color: #222;
}

#testimonials .description {
    font-size: .7rem;
    text-align: justify;
    margin: 1rem 0 0;
}

#testimonials .add-button {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    padding: 1rem 0;
}

#testimonials .add-testimonial {
    text-align: right;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    border: 1px solid #bbb;
    color: #bbb;
    width: 30px;
    height: 30px;
    -webkit-box-shadow: 2px 1px 10px 0 rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 2px 1px 10px 0 rgba(0, 0, 0, 0.2);
    box-shadow: 2px 1px 10px 0 rgba(0, 0, 0, 0.2);
}

@media screen and (min-width: 481px) and (max-width: 767px) {
    #testimonials .underline-heading-style, #testimonials .schools-list .school-card .image-and-details .primary-details .title, .schools-list .school-card .image-and-details .primary-details #testimonials .title, #testimonials #blog-details .blog-details .blog-content .blog-heading, #blog-details .blog-details .blog-content #testimonials .blog-heading, #testimonials #gallery-page .title-alternate, #gallery-page #testimonials .title-alternate {
        font-size: 2rem;
        margin-bottom: 1rem;
    }

    #testimonials .basic-details .profile-image {
        width: 50px;
        height: 50px;
    }

    #testimonials .basic-details .details {
        width: calc(100% - 50px);
    }

    #testimonials .description {
        margin-top: 1rem;
    }

    #testimonials .star-rating i {
        font-size: .6rem;
    }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
    #testimonials .star-rating i {
        font-size: .48rem;
    }
}

#bde-overview {
    background-color: #fdc800;
    color: #002147;
    padding: 1rem 0;
}

#bde-overview .heading, #bde-overview #school-details-page .school-card .card-title, #school-details-page .school-card #bde-overview .card-title {
    text-align: center;
    font-weight: bold;
    font-size: 2.3rem;
}

#bde-overview .bde-container {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
}

#bde-overview .bde-container .bde-item {
    flex-basis: 14%;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#bde-overview .bde-container .bde-item .profile-image {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    overflow: hidden;
}

#bde-overview .bde-container .bde-item .profile-image img {
    width: 100%;
}

#bde-overview .bde-container .bde-item .profile-details {
    display: flex;
    flex-direction: column;
    margin-top: .4rem;
}

#bde-overview .bde-container .bde-item .profile-details .name {
    font-weight: bold;
    text-align: center;
    margin: 0;
    padding: 0;
    color: #222;
}

#bde-overview .bde-container .bde-item .profile-details .location {
    text-align: center;
    margin: 0;
    padding: 0;
    color: #222;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #bde-overview .heading, #bde-overview #school-details-page .school-card .card-title, #school-details-page .school-card #bde-overview .card-title {
        font-size: 2rem;
    }

    #bde-overview .bde-container {
        overflow: hidden;
        flex-wrap: wrap;
    }

    #bde-overview .bde-container .bde-item .profile-image {
        width: 80px;
        height: 80px;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #bde-overview .bde-container {
        overflow: hidden;
        flex-wrap: wrap;
    }
}

#associates {
    position: relative;
    border-bottom: none;
}

#associates p {
    font-size: .8rem;
}

#associates .associates-logo-container {
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
}

#associates .associates-logo-container .associates-logo {
    width: calc(100% / 4 - 1rem);
    background-color: #ddd;
    margin: 0 .5rem 1rem;
    height: 100px;
}

#associates .associates-logo-container .associates-logo img {
    width: 100%;
    height: 100%;
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #associates p {
        font-size: .8rem;
        text-align: justify;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #associates .main-heading-style, #associates #school-details-page .heading, #school-details-page #associates .heading, #associates #school-details-page .school-card .card-title, #school-details-page .school-card #associates .card-title, #associates #about-page .content .heading, #about-page .content #associates .heading, #associates #about-page .content .alternate-heading, #about-page .content #associates .alternate-heading, #associates #gallery-page .title, #gallery-page #associates .title, #associates #gallery-inner .title, #gallery-inner #associates .title, #associates #faq-page .heading, #faq-page #associates .heading, #associates #notification-page .heading, #notification-page #associates .heading {
        font-size: 1.5rem;
    }
}

@media (max-width: 575.98px) {
    header .form-group, header:not(#home) .form-group {
        margin-bottom: 0;
    }

    header .top-bar, header:not(#home) .top-bar {
        padding-top: .5rem;
        justify-content: space-between;
    }

    header .top-bar .links, header:not(#home) .top-bar .links {
        padding: 0;
    }

    header .top-bar .login-link, header:not(#home) .top-bar .login-link {
        padding-right: .5rem;
        margin-right: .5rem;
    }

    header .heading, header:not(#home) .heading, header #school-details-page .school-card .card-title, #school-details-page .school-card header .card-title {
        font-size: 2rem !important;
        margin: 1rem 0 0;
    }

    header .search-container, header:not(#home) .search-container {
        width: 100%;
        display: flex;
        flex-direction: column-reverse;
    }

    header .search-container .heading, header:not(#home) .search-container .heading, header .search-container #school-details-page .school-card .card-title, #school-details-page .school-card header .search-container .card-title {
        padding: 0 1rem;
    }

    header .search-container .search, header:not(#home) .search-container .search {
        flex-direction: column;
        align-items: center;
    }

    header .search-container .logo, header:not(#home) .search-container .logo {
        margin: 0 0 1rem;
        width: calc(100vw - 70vw);
        height: calc(100vw - 70vw);
    }

    header .search-container input[name="school_name"], header:not(#home) .search-container input[name="school_name"] {
        max-width: 150px !important;
        min-width: auto !important;
    }

    header .navigation-bar, header:not(#home) .navigation-bar {
        border-top: 1px solid #fdc800;
    }

    header .navigation-bar .nav-item, header:not(#home) .navigation-bar .nav-item {
        border-right: 0;
        padding: 0 1rem;
        text-transform: uppercase;
        font-size: 15px;
    }

    header .navigation-bar .nav-item:hover, header:not(#home) .navigation-bar .nav-item:hover {
        border-right: 0;
    }

    header .navigation-bar .nav-item.active, header:not(#home) .navigation-bar .nav-item.active {
        border-right: 0;
    }

    main {
        padding-bottom: 0;
    }

    section {
        border-bottom: 4px solid #e7e7e7;
    }

    #schools .school-card {
        width: 60%;
    }

    #gallery {
        padding: 1rem 0 2rem;
    }

    #gallery .underline-heading {
        font-size: 2.5rem;
        margin-bottom: 1rem;
        text-transform: uppercase;
    }

    #gallery .underline-heading::before {
        height: 2px;
        bottom: 3px;
        left: 20%;
        right: 20%;
    }

    #gallery .gallery-grid {
        grid-template-areas: "main main main" "main main main" "secondary secondary secondary" "secondary secondary secondary" "secondary secondary secondary";
    }

    #gallery .gallery-grid .main-grid {
        grid-template-rows: repeat(2, 59px);
        grid-template-columns: repeat(3, 1fr);
    }

    #gallery .gallery-grid .main-grid .big-image {
        grid-column: 1 / 3;
    }

    #gallery .gallery-grid .secondary-grid {
        grid-template-rows: repeat(3, 59px);
    }

    #content {
        padding: 0;
    }

    #content .events .event {
        padding: .5rem;
        flex-direction: column;
    }

    #content .events-container, #content .upcoming-events-container, #content .blogs-container {
        padding: 2rem 0;
        border-bottom: 4px solid #e7e7e7;
        margin-bottom: 0;
    }

    #content .upcoming-events-container .upcoming-events .event {
        align-items: stretch;
    }

    #content .upcoming-events-container .upcoming-events .event .image-details {
        flex-direction: column;
        padding-right: .7rem;
        border-right: 1px solid #fdc800;
    }

    #content .upcoming-events-container .upcoming-events .event .image-details img {
        width: 100%;
        height: auto;
        max-height: 120px;
        border-radius: 0;
    }

    #content .upcoming-events-container .upcoming-events .event .image-details .time-details {
        border-right: none;
        padding-right: 0;
        align-items: flex-start;
    }

    #content .blogs-container {
        margin: 0;
    }

    #content .blogs-container .main-heading-style, #content .blogs-container #school-details-page .heading, #school-details-page #content .blogs-container .heading, #content .blogs-container #school-details-page .school-card .card-title, #school-details-page .school-card #content .blogs-container .card-title, #content .blogs-container #about-page .content .heading, #about-page .content #content .blogs-container .heading, #content .blogs-container #about-page .content .alternate-heading, #about-page .content #content .blogs-container .alternate-heading, #content .blogs-container #gallery-page .title, #gallery-page #content .blogs-container .title, #content .blogs-container #gallery-inner .title, #gallery-inner #content .blogs-container .title, #content .blogs-container #faq-page .heading, #faq-page #content .blogs-container .heading, #content .blogs-container #notification-page .heading, #notification-page #content .blogs-container .heading {
        margin-bottom: 1rem;
    }

    #content .blogs-container .blog-item {
        margin: 1rem 0;
        flex-direction: column;
    }

    #content .blogs-container .blog-item .image {
        margin-bottom: 1rem;
    }

    #content .blogs-container .blog-item .details .title {
        font-size: 1rem;
        width: 100%;
    }

    #content .blogs-container .blog-item .details .post-date p {
        padding: 0;
    }

    #content .blogs-container .blog-item .details .description {
        font-size: .75rem;
        line-height: 1.1;
    }

    #counter {
        padding: 2rem 0 0;
        background-size: cover;
    }

    #counter .counting-item:nth-last-of-type {
        margin-bottom: 0;
    }

    #counter .counting-item {
        flex-direction: column;
        margin-bottom: 2rem;
    }

    #founders-pen {
        padding: 2rem 0;
    }

    #founders-pen .container {
        overflow: hidden;
    }

    #founders-pen .founder-image {
        margin-bottom: 1rem;
    }

    #founders-pen .main-heading-style, #founders-pen #school-details-page .heading, #school-details-page #founders-pen .heading, #founders-pen #school-details-page .school-card .card-title, #school-details-page .school-card #founders-pen .card-title, #founders-pen #about-page .content .heading, #about-page .content #founders-pen .heading, #founders-pen #about-page .content .alternate-heading, #about-page .content #founders-pen .alternate-heading, #founders-pen #gallery-page .title, #gallery-page #founders-pen .title, #founders-pen #gallery-inner .title, #gallery-inner #founders-pen .title, #founders-pen #faq-page .heading, #faq-page #founders-pen .heading, #founders-pen #notification-page .heading, #notification-page #founders-pen .heading {
        font-size: 1.6rem;
    }

    #founders-pen .main-heading-style::before, #founders-pen #school-details-page .heading::before, #school-details-page #founders-pen .heading::before, #founders-pen #school-details-page .school-card .card-title::before, #school-details-page .school-card #founders-pen .card-title::before, #founders-pen #about-page .content .heading::before, #about-page .content #founders-pen .heading::before, #founders-pen #about-page .content .alternate-heading::before, #about-page .content #founders-pen .alternate-heading::before, #founders-pen #gallery-page .title::before, #gallery-page #founders-pen .title::before, #founders-pen #gallery-inner .title::before, #gallery-inner #founders-pen .title::before, #founders-pen #faq-page .heading::before, #faq-page #founders-pen .heading::before, #founders-pen #notification-page .heading::before, #notification-page #founders-pen .heading::before {
        width: 30%;
    }

    #founders-pen .desc {
        padding: 0;
    }

    #founders-pen .details {
        width: 100%;
    }

    #founders-pen .description {
        text-align: justify;
        font-size: 1rem;
    }

    #founders-pen .author {
        width: 100%;
        font-size: 1.5rem;
    }

    #testimonials {
        background: url("../../images/website/testimonial-bg-mobile.png") no-repeat;
        background-size: 100% 100%;
        padding: 2rem 0;
        color: inherit;
        /*.description {
      font-size: 1rem;
    }*/
    }

    #testimonials .rating-card {
        margin: 0 0 1rem;
    }

    #testimonials .underline-heading-style, #testimonials .schools-list .school-card .image-and-details .primary-details .title, .schools-list .school-card .image-and-details .primary-details #testimonials .title, #testimonials #blog-details .blog-details .blog-content .blog-heading, #blog-details .blog-details .blog-content #testimonials .blog-heading, #testimonials #gallery-page .title-alternate, #gallery-page #testimonials .title-alternate {
        font-size: 2rem;
        margin-bottom: 1rem;
    }

    #testimonials .basic-details {
        /*.education {
        font-size: 1rem;
      }

      .rating p {
        font-size: 1rem;
      }*/
    }

    #testimonials .add-button {
        padding: 0;
    }

    #bde-overview .heading, #bde-overview #school-details-page .school-card .card-title, #school-details-page .school-card #bde-overview .card-title {
        font-size: 1.8rem;
    }

    #bde-overview .bde-container {
        overflow: hidden;
        flex-wrap: wrap;
    }

    #bde-overview .bde-container .bde-item {
        flex-basis: 50%;
        margin-bottom: 1rem;
    }

    #bde-overview .bde-container .bde-item .profile-image {
        box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
    }

    #bde-overview .bde-container .bde-item:nth-child(7) {
        display: none;
    }

    #associates {
        padding: 2rem 0 0;
    }

    #associates .col-sm-12 {
        overflow: hidden;
    }

    #associates .main-heading-style, #associates #school-details-page .heading, #school-details-page #associates .heading, #associates #school-details-page .school-card .card-title, #school-details-page .school-card #associates .card-title, #associates #about-page .content .heading, #about-page .content #associates .heading, #associates #about-page .content .alternate-heading, #about-page .content #associates .alternate-heading, #associates #gallery-page .title, #gallery-page #associates .title, #associates #gallery-inner .title, #gallery-inner #associates .title, #associates #faq-page .heading, #faq-page #associates .heading, #associates #notification-page .heading, #notification-page #associates .heading {
        margin-bottom: 2rem;
    }

    #associates p {
        font-size: 1rem;
    }

    #associates .associates-logo-container .associates-logo {
        height: auto;
        width: calc((100% / 2) - 1rem);
    }

    #associates .associates-logo-container .associates-logo img {
        height: auto;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    header .form-group, header:not(#home) .form-group {
        margin-bottom: 0;
    }

    header .top-bar, header:not(#home) .top-bar {
        padding-top: .5rem;
    }

    header .heading, header:not(#home) .heading, header #school-details-page .school-card .card-title, #school-details-page .school-card header .card-title {
        font-size: 2rem !important;
        margin: 1rem 0 0;
    }

    header .search-container, header:not(#home) .search-container {
        width: 100%;
        display: flex;
        flex-direction: column-reverse;
    }

    header .search-container .heading, header:not(#home) .search-container .heading, header .search-container #school-details-page .school-card .card-title, #school-details-page .school-card header .search-container .card-title {
        padding: 0 1rem;
    }

    header .search-container .search, header:not(#home) .search-container .search {
        flex-direction: column;
        align-items: center;
    }

    header .search-container .logo, header:not(#home) .search-container .logo {
        margin: 0 0 1rem;
        width: calc(100vw - 70vw);
        height: calc(100vw - 70vw);
    }

    header .search-container input[name="school_name"], header:not(#home) .search-container input[name="school_name"] {
        max-width: 150px !important;
        min-width: auto !important;
    }

    header .navigation-bar, header:not(#home) .navigation-bar {
        border-top: 1px solid #fdc800;
    }

    header .navigation-bar .nav-item, header:not(#home) .navigation-bar .nav-item {
        border-right: 0;
        padding: 0 1rem;
        text-transform: uppercase;
        font-size: 15px;
    }

    header .navigation-bar .nav-item:hover, header:not(#home) .navigation-bar .nav-item:hover {
        border-right: 0;
    }

    header .navigation-bar .nav-item.active, header:not(#home) .navigation-bar .nav-item.active {
        border-right: 0;
    }

    main {
        padding: 0;
    }

    #schools {
        padding: 2rem 0;
    }

    #schools .schools-container {
        padding: 2rem 0 1rem;
    }

    #schools .school-card {
        width: 90%;
    }

    #gallery {
        padding: 1rem 0 2rem;
    }

    #gallery .underline-heading {
        font-size: 3rem;
        margin-bottom: 2rem;
    }

    #gallery .underline-heading::before {
        bottom: 5px;
    }

    #gallery .gallery-grid {
        width: 65%;
        margin: 0 auto;
        grid-template-areas: "main main main" "main main main" "secondary secondary secondary" "secondary secondary secondary" "secondary secondary secondary";
    }

    #gallery .gallery-grid .main-grid {
        grid-template-rows: repeat(2, 59px);
        grid-template-columns: repeat(3, 1fr);
    }

    #gallery .gallery-grid .main-grid .big-image {
        grid-column: 1 / 3;
    }

    #gallery .gallery-grid .secondary-grid {
        grid-template-rows: repeat(3, 59px);
    }

    #content .blogs-container .blog-item {
        align-items: flex-start;
    }

    #testimonials .rating-card {
        padding: .2rem .8rem .8rem;
    }

    #bde-overview .heading, #bde-overview #school-details-page .school-card .card-title, #school-details-page .school-card #bde-overview .card-title {
        font-size: 1.6rem;
    }

    #bde-overview .bde-container {
        overflow: hidden;
        flex-wrap: wrap;
    }

    #bde-overview .bde-container .bde-item {
        flex-basis: 33%;
        margin-bottom: 1rem;
    }

    #bde-overview .bde-container .bde-item:nth-child(7) {
        display: none;
    }

    #bde-overview .bde-container .bde-item .profile-image {
        box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2);
    }

    #bde-overview .bde-container .bde-item .profile-details {
        font-size: .9rem;
    }

    #associates {
        padding: 2rem 0 0;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    header .form-group, header:not(#home) .form-group {
        margin-bottom: 0;
    }

    header .top-bar, header:not(#home) .top-bar {
        padding-top: .5rem;
    }

    header .heading, header:not(#home) .heading, header #school-details-page .school-card .card-title, #school-details-page .school-card header .card-title {
        font-size: 2rem !important;
        margin: 1rem 0 0;
    }

    header .search-container, header:not(#home) .search-container {
        width: 100%;
        display: flex;
        flex-direction: column-reverse;
    }

    header .search-container .heading, header:not(#home) .search-container .heading, header .search-container #school-details-page .school-card .card-title, #school-details-page .school-card header .search-container .card-title {
        padding: 0 1rem;
    }

    header .search-container .search, header:not(#home) .search-container .search {
        flex-direction: column;
        align-items: center;
    }

    header .search-container .logo, header:not(#home) .search-container .logo {
        margin: 0 0 1rem;
        width: calc(100vw - 70vw);
        height: calc(100vw - 70vw);
    }

    header .search-container input[name="school_name"], header:not(#home) .search-container input[name="school_name"] {
        max-width: 150px !important;
        min-width: auto !important;
    }

    header .navigation-bar, header:not(#home) .navigation-bar {
        border-top: 1px solid #fdc800;
    }

    header .navigation-bar .nav-item, header:not(#home) .navigation-bar .nav-item {
        border-right: 0;
        padding: 0 1rem;
        text-transform: uppercase;
        font-size: 15px;
    }

    header .navigation-bar .nav-item:hover, header:not(#home) .navigation-bar .nav-item:hover {
        border-right: 0;
    }

    header .navigation-bar .nav-item.active, header:not(#home) .navigation-bar .nav-item.active {
        border-right: 0;
    }

    section {
        padding: 2rem 0;
    }

    #schools .schools-container {
        padding: 2rem 0;
    }

    #schools .school-card {
        width: 90%;
    }

    #gallery {
        padding: 1rem 0 2rem;
    }

    #gallery .underline-heading::before {
        left: 10%;
        right: 10%;
        height: 3px;
        bottom: 0;
    }

    #content {
        padding: 0;
    }

    #content .events .event {
        padding: .5rem;
        flex-direction: column;
    }

    #content .events-container, #content .upcoming-events-container, #content .blogs-container {
        padding: 2rem 0;
        border-bottom: 4px solid #e7e7e7;
        margin-bottom: 0;
    }

    #content .upcoming-events-container .upcoming-events {
        width: 95%;
    }

    #content .upcoming-events-container .upcoming-events .event {
        align-items: stretch;
    }

    #content .upcoming-events-container .upcoming-events .event .image-details {
        flex-direction: column;
        padding-right: .7rem;
        border-right: 1px solid #fdc800;
    }

    #content .upcoming-events-container .upcoming-events .event .image-details img {
        width: 100%;
        height: auto;
        max-height: 120px;
        border-radius: 0;
    }

    #content .upcoming-events-container .upcoming-events .event .image-details .time-details {
        border-right: none;
        padding-right: 0;
        align-items: flex-start;
    }

    #content .blogs-container {
        margin: 0;
    }

    #content .blogs-container .main-heading-style, #content .blogs-container #school-details-page .heading, #school-details-page #content .blogs-container .heading, #content .blogs-container #school-details-page .school-card .card-title, #school-details-page .school-card #content .blogs-container .card-title, #content .blogs-container #about-page .content .heading, #about-page .content #content .blogs-container .heading, #content .blogs-container #about-page .content .alternate-heading, #about-page .content #content .blogs-container .alternate-heading, #content .blogs-container #gallery-page .title, #gallery-page #content .blogs-container .title, #content .blogs-container #gallery-inner .title, #gallery-inner #content .blogs-container .title, #content .blogs-container #faq-page .heading, #faq-page #content .blogs-container .heading, #content .blogs-container #notification-page .heading, #notification-page #content .blogs-container .heading {
        margin-bottom: 1rem;
    }

    #content .blogs-container .blog-item {
        margin: 1rem 0;
        flex-direction: column;
    }

    #content .blogs-container .blog-item .image {
        margin-bottom: 1rem;
    }

    #content .blogs-container .blog-item .details .title {
        font-size: 1rem;
        width: 100%;
    }

    #content .blogs-container .blog-item .details .post-date p {
        padding: 0;
    }

    #content .blogs-container .blog-item .details .description {
        font-size: .75rem;
        line-height: 1.1;
    }

    #founders-pen .desc {
        padding-left: 0;
    }

    #founders-pen .details {
        width: 100%;
    }

    #testimonials .underline-heading-style, #testimonials .schools-list .school-card .image-and-details .primary-details .title, .schools-list .school-card .image-and-details .primary-details #testimonials .title, #testimonials #blog-details .blog-details .blog-content .blog-heading, #blog-details .blog-details .blog-content #testimonials .blog-heading, #testimonials #gallery-page .title-alternate, #gallery-page #testimonials .title-alternate {
        font-size: 1.5rem;
    }

    #testimonials .underline-heading-style::before, #testimonials .schools-list .school-card .image-and-details .primary-details .title::before, .schools-list .school-card .image-and-details .primary-details #testimonials .title::before, #testimonials #blog-details .blog-details .blog-content .blog-heading::before, #blog-details .blog-details .blog-content #testimonials .blog-heading::before, #testimonials #gallery-page .title-alternate::before, #gallery-page #testimonials .title-alternate::before {
        left: 40%;
        right: 40%;
    }

    #testimonials .description {
        line-height: 1.2;
    }

    #bde-overview {
        padding: 2rem 0;
    }

    #bde-overview .bde-container .bde-item {
        flex-basis: 25%;
        margin-bottom: 1rem;
    }

    #associates {
        padding: 2rem 0 0;
    }

    #associates .associates-details {
        overflow: hidden;
    }

    #associates .associates-logo-container {
        justify-content: flex-start;
    }

    #associates .associates-logo-container .associates-logo {
        width: calc(100% / 3 - 1rem);
    }

    .floating-contact {
        width: 80%;
        left: 10%;
    }
}

.events-tab {
    margin: 2rem 0 1rem;
    border-bottom: 2px solid #002147;
}

.events-tab .nav-item {
    margin-bottom: -2px;
}

.events-tab .nav-link {
    display: block;
    border: 2px solid #bbb;
    border-bottom-color: transparent;
    color: #454851;
    text-transform: uppercase;
    font-weight: bold;
    margin: 0 .6rem;
    position: relative;
    transition: all 300ms ease-in-out;
}

.events-tab .nav-link:hover {
    border-bottom-color: transparent;
}

.events-tab .nav-link:first-of-type {
    margin-left: 0;
}

.events-tab .nav-link.active {
    border-color: #002147 #002147 transparent #002147;
    color: #002147;
}

.events-container .main-heading-style, .events-container #school-details-page .heading, #school-details-page .events-container .heading, .events-container #school-details-page .school-card .card-title, #school-details-page .school-card .events-container .card-title, .events-container #about-page .content .heading, #about-page .content .events-container .heading, .events-container #about-page .content .alternate-heading, #about-page .content .events-container .alternate-heading, .events-container #bde-form .main-heading-style, #bde-form .events-container .main-heading-style, .events-container #school-form .main-heading-style, #school-form .events-container .main-heading-style, .events-container #student-form .main-heading-style, #student-form .events-container .main-heading-style, .events-container #nsi .main-heading-style, #nsi .events-container .main-heading-style, .events-container #gallery-page .title, #gallery-page .events-container .title, .events-container #gallery-inner .title, #gallery-inner .events-container .title, .events-container #faq-page .heading, #faq-page .events-container .heading, .events-container #notification-page .heading, #notification-page .events-container .heading {
    font-size: 2rem;
    margin-bottom: 2rem;
}

.events-container .main-heading-style::before, .events-container #school-details-page .heading::before, #school-details-page .events-container .heading::before, .events-container #school-details-page .school-card .card-title::before, #school-details-page .school-card .events-container .card-title::before, .events-container #about-page .content .heading::before, #about-page .content .events-container .heading::before, .events-container #about-page .content .alternate-heading::before, #about-page .content .events-container .alternate-heading::before, .events-container #bde-form .main-heading-style::before, #bde-form .events-container .main-heading-style::before, .events-container #school-form .main-heading-style::before, #school-form .events-container .main-heading-style::before, .events-container #student-form .main-heading-style::before, #student-form .events-container .main-heading-style::before, .events-container #nsi .main-heading-style::before, #nsi .events-container .main-heading-style::before, .events-container #gallery-page .title::before, #gallery-page .events-container .title::before, .events-container #gallery-inner .title::before, #gallery-inner .events-container .title::before, .events-container #faq-page .heading::before, #faq-page .events-container .heading::before, .events-container #notification-page .heading::before, #notification-page .events-container .heading::before {
    width: 30%;
}

.events-container .event {
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    padding: 2rem 3rem;
}

.events-container .event .image {
    flex-basis: 35%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
}

.events-container .event .image img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
}

.events-container .event .image .time-details {
    line-height: 1;
    padding-right: .7rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-right: 1px solid #fdc800;
}

.events-container .event .image .date-details .date {
    color: #fdc800;
    font-weight: bold;
    font-size: 2.5rem;
}

.events-container .event .image .date-details .month {
    color: #222;
    text-transform: uppercase;
    font-size: 1.5rem;
    font-weight: bold;
}

.events-container .event .image .time {
    font-size: .8rem;
    color: #222;
    text-transform: uppercase;
}

.events-container .event .event-details {
    padding-left: .7rem;
    flex-basis: calc(100% - (50%));
    font-size: .8rem;
    display: flex;
    align-items: flex-start;
}

.events-container .event .event-details .time-details {
    flex-basis: 30%;
}

.events-container .event .event-details .main-details {
    flex-basis: 100%;
    padding-left: .7rem;
}

.events-container .event .event-details h6, .events-container .event .event-details .heading, .events-container .event .event-details #school-details-page .school-card .card-title, #school-details-page .school-card .events-container .event .event-details .card-title {
    color: #002147;
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: .3rem;
}

.events-container .event .event-details p.details {
    font-size: .9rem;
    color: #222;
    margin: 0 0 .4rem;
    line-height: 1.3;
}

.events-container .event .event-details .address {
    font-size: .8rem;
    color: #002147;
    font-weight: bold;
    margin: 0;
    line-height: 1.3;
}

.events-container .event .event-details .address::before {
    content: "\f3c5";
    font-family: "Font Awesome 5 Free";
    color: #fdc800;
    font-size: .9rem;
    padding-right: .2rem;
}

.events-container .event .details-button {
    flex-basis: 15%;
    display: flex;
    align-items: flex-end;
}

.events-container .event .details-button .btn-round-secondary, .events-container .event .details-button .schools-list .school-card .details-option .details-buttons .btn-details, .schools-list .school-card .details-option .details-buttons .events-container .event .details-button .btn-details {
    font-size: .8rem;
}

@media (max-width: 575.98px) {
    .events-tab {
        margin-top: 1rem;
    }

    .events-tab .nav-item {
        margin: 0 0 -3px;
    }

    .events-tab .nav-link {
        padding: .3rem;
    }

    .events-container {
        /*.event {
      align-items: flex-start;
      justify-content: space-between;
      padding: 2rem 0;
      border-bottom: 4px solid $light-grey;
      flex-wrap: wrap;

      .image {
        flex-basis: 100px;
        flex-direction: column;
        margin-bottom: 1rem;

        img {
          width: 100px !important;
          height: 100px !important;
        }
      }

      .event-details {
        flex-basis: calc(100% - 110px);
        padding: 0;

        .time-details {
          border-right-width: 2px;
          padding-right: .5rem;

          .date-details {
            margin-bottom: .3rem;

            .date {
              font-size: 2rem !important;
            }

            .month {
              font-size: .8rem !important;
            }
          }

          .time {
            font-size: .7rem !important;
          }
        }

        .main-details {
          flex-basis: auto;
          text-align: justify;
          padding-left: .5rem;
        }

        h6, .heading {
          font-size: 1rem !important;
          margin: 0;
        }

        p.details {
          font-size: .8rem;
          margin-bottom: .2rem;
          line-height: 1.2;
        }

        .address {
          font-size: .8rem !important;
          font-weight: normal;

          &::before {
            font-size: .9rem !important;
            margin: 0;
            padding: 0;
          }
        }
      }

      .details-button {
        flex-basis: 100%;
        padding: 1rem 0 0;
        text-align: right;
        margin: 0;
      }

      &:last-of-type {
        border-bottom: none;
      }
    }*/
    }

    .events-container .event {
        padding: 0 .5rem;
        flex-wrap: wrap;
        margin-bottom: 2rem;
        align-items: flex-start;
    }

    .events-container .event .image {
        flex-direction: column;
        padding-right: .7rem;
        border-right: 1px solid #fdc800;
        flex-basis: 44%;
    }

    .events-container .event .image .event-image {
        width: 100%;
    }

    .events-container .event .image img {
        width: 100%;
        height: auto;
        max-height: 120px;
        border-radius: 0;
    }

    .events-container .event .image .time-details {
        border-right: none;
        padding-right: 0;
        align-items: flex-start;
    }

    .events-container .event .image .time-details .date {
        font-size: 2rem;
    }

    .events-container .event .image .time-details .month {
        font-size: 1rem;
    }

    .events-container .event .image .time-details .time {
        font-size: .7rem;
    }

    .events-container .event .event-details {
        flex-basis: 55%;
    }

    .events-container .event .event-details .main-details {
        flex-basis: 100%;
        padding: 0;
    }

    .events-container .event .event-details h6, .events-container .event .event-details .heading, .events-container .event .event-details #school-details-page .school-card .card-title, #school-details-page .school-card .events-container .event .event-details .card-title {
        font-size: 1rem;
    }

    .events-container .event .event-details p.details {
        font-size: .8rem;
    }

    .events-container .event .event-details .address {
        font-size: .7rem;
    }

    .events-container .event .event-details .address::before {
        font-size: .8rem;
    }

    .events-container .event .details-button {
        margin-top: 1rem;
        margin-left: 0;
        flex-basis: 100%;
        text-align: right;
        justify-content: flex-end;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .events-container {
        overflow: hidden;
        padding-top: 1rem;
    }

    .events-container .main-heading-style, .events-container #school-details-page .heading, #school-details-page .events-container .heading, .events-container #school-details-page .school-card .card-title, #school-details-page .school-card .events-container .card-title, .events-container #about-page .content .heading, #about-page .content .events-container .heading, .events-container #about-page .content .alternate-heading, #about-page .content .events-container .alternate-heading, .events-container #bde-form .main-heading-style, #bde-form .events-container .main-heading-style, .events-container #school-form .main-heading-style, #school-form .events-container .main-heading-style, .events-container #student-form .main-heading-style, #student-form .events-container .main-heading-style, .events-container #nsi .main-heading-style, #nsi .events-container .main-heading-style, .events-container #gallery-page .title, #gallery-page .events-container .title, .events-container #gallery-inner .title, #gallery-inner .events-container .title, .events-container #faq-page .heading, #faq-page .events-container .heading, .events-container #notification-page .heading, #notification-page .events-container .heading {
        font-size: 1.5rem;
        margin-bottom: 1.5rem;
    }

    .events-container .event {
        padding: 0 .5rem;
        flex-wrap: wrap;
        margin-bottom: 2rem;
        align-items: flex-start;
    }

    .events-container .event .image {
        flex-direction: column;
        padding-right: .7rem;
        border-right: 1px solid #fdc800;
        flex-basis: 34%;
    }

    .events-container .event .image .event-image {
        width: 100%;
    }

    .events-container .event .image img {
        width: 100%;
        height: auto;
        max-height: 120px;
        border-radius: 0;
    }

    .events-container .event .image .time-details {
        border-right: none;
        padding-right: 0;
        align-items: flex-start;
    }

    .events-container .event .image .time-details .date {
        font-size: 2rem;
    }

    .events-container .event .image .time-details .month {
        font-size: 1rem;
    }

    .events-container .event .image .time-details .time {
        font-size: .8rem;
    }

    .events-container .event .event-details {
        flex-basis: 65%;
    }

    .events-container .event .event-details .main-details {
        flex-basis: 100%;
    }

    .events-container .event .event-details h6, .events-container .event .event-details .heading, .events-container .event .event-details #school-details-page .school-card .card-title, #school-details-page .school-card .events-container .event .event-details .card-title {
        font-size: 1.5rem;
    }

    .events-container .event .event-details p.details {
        font-size: .95rem;
    }

    .events-container .event .event-details .address {
        font-size: .7rem;
    }

    .events-container .event .event-details .address::before {
        font-size: .8rem;
    }

    .events-container .event .details-button {
        margin-top: .5rem;
        margin-left: 0;
        flex-basis: 100%;
        text-align: right;
        justify-content: flex-end;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .events-container .event {
        padding: 2rem 1rem;
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .events-container .event .image {
        flex-basis: 50%;
    }

    .events-container .event .event-details {
        flex-basis: calc(100% - 50%);
    }

    .events-container .event .event-details .main-details {
        flex-basis: 100%;
        text-align: justify;
    }

    .events-container .event .details-button {
        flex-basis: 100%;
        text-align: right;
        margin: 0;
        justify-content: flex-end;
    }
}

.event-content {
    margin-top: 2rem;
    margin-bottom: 2rem;
    overflow: hidden;
}

.event-content .event-image img {
    width: 100%;
}

.event-content .time-details {
    border: 0;
    align-items: flex-start;
    position: relative;
    margin-bottom: 2rem;
}

.event-content .time-details::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 0;
    right: 85%;
    height: 2px;
    background-color: #fdc800;
}

.event-content .time-details .time {
    margin-top: -13px;
}

.event-content .main-heading-style, .event-content #school-details-page .heading, #school-details-page .event-content .heading, .event-content #school-details-page .school-card .card-title, #school-details-page .school-card .event-content .card-title, .event-content #about-page .content .heading, #about-page .content .event-content .heading, .event-content #about-page .content .alternate-heading, #about-page .content .event-content .alternate-heading, .event-content #bde-form .main-heading-style, #bde-form .event-content .main-heading-style, .event-content #school-form .main-heading-style, #school-form .event-content .main-heading-style, .event-content #student-form .main-heading-style, #student-form .event-content .main-heading-style, .event-content #nsi .main-heading-style, #nsi .event-content .main-heading-style, .event-content #gallery-page .title, #gallery-page .event-content .title, .event-content #gallery-inner .title, #gallery-inner .event-content .title, .event-content #faq-page .heading, #faq-page .event-content .heading, .event-content #notification-page .heading, #notification-page .event-content .heading {
    font-size: 1.4rem !important;
    text-transform: none;
    color: #002147;
    text-align: justify;
}

.event-content .details {
    font-size: 1rem;
    color: #666;
}

.event-content .details * {
    color: #222;
}

.event-content .event-share {
    padding: 1rem 0;
    border-top: 1px solid #bbb;
    border-bottom: 1px solid #bbb;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.event-content .event-share * {
    line-height: 1.2;
}

.event-content .event-share p {
    color: #222;
    margin: 0;
    text-transform: uppercase;
    font-weight: bold;
    flex-basis: 60%;
}

.event-content .event-share .links {
    flex-basis: 40%;
    display: flex;
    justify-content: space-between;
}

.event-content .event-share i {
    font-weight: normal;
    color: #222;
}

.event-content .address {
    color: #002147;
    font-size: 1rem;
    font-weight: 600;
}

.event-content .address::before {
    content: "\f3c5";
    color: #fdc800;
    font-family: "Font Awesome 5 Free";
}

.event-extra-details {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.event-extra-details #map {
    width: 100%;
    height: 200px;
}

.event-extra-details #map iframe {
    height: 200px;
    width: 100%;
}

@media (max-width: 575.98px) {
    .event-content .content {
        padding: 0;
        overflow: hidden;
    }

    .event-content .time-details {
        padding: 0;
        align-items: flex-start;
        margin-bottom: 2rem;
    }

    .event-content .time-details .date {
        font-size: 2rem;
    }

    .event-content .time-details .month {
        font-size: 1rem;
    }

    .event-content .time-details .time {
        font-size: .8rem;
        margin-left: 0;
    }

    .event-content .details {
        font-size: .9rem;
        line-height: 1.2;
    }

    .event-content .address {
        text-align: justify;
        padding: 2rem 0 0;
    }

    .event-content .main-heading-style, .event-content #school-details-page .heading, #school-details-page .event-content .heading, .event-content #school-details-page .school-card .card-title, #school-details-page .school-card .event-content .card-title, .event-content #about-page .content .heading, #about-page .content .event-content .heading, .event-content #about-page .content .alternate-heading, #about-page .content .event-content .alternate-heading, .event-content #bde-form .main-heading-style, #bde-form .event-content .main-heading-style, .event-content #school-form .main-heading-style, #school-form .event-content .main-heading-style, .event-content #student-form .main-heading-style, #student-form .event-content .main-heading-style, .event-content #nsi .main-heading-style, #nsi .event-content .main-heading-style, .event-content #gallery-page .title, #gallery-page .event-content .title, .event-content #gallery-inner .title, #gallery-inner .event-content .title, .event-content #faq-page .heading, #faq-page .event-content .heading, .event-content #notification-page .heading, #notification-page .event-content .heading {
        font-size: 1.5rem;
    }

    .event-extra-details {
        flex-direction: column-reverse;
    }

    .event-extra-details #map {
        margin: 0 0 2rem 0;
        padding: 0;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .event-content .content {
        padding: 0;
    }

    .event-content .time-details {
        padding: 0;
        align-items: flex-start;
        margin-bottom: 2rem;
    }

    .event-content .time-details .date {
        font-size: 2rem;
    }

    .event-content .time-details .month {
        font-size: 1rem;
    }

    .event-content .time-details .time {
        font-size: .8rem;
    }

    .event-content .main-heading-style, .event-content #school-details-page .heading, #school-details-page .event-content .heading, .event-content #school-details-page .school-card .card-title, #school-details-page .school-card .event-content .card-title, .event-content #about-page .content .heading, #about-page .content .event-content .heading, .event-content #about-page .content .alternate-heading, #about-page .content .event-content .alternate-heading, .event-content #bde-form .main-heading-style, #bde-form .event-content .main-heading-style, .event-content #school-form .main-heading-style, #school-form .event-content .main-heading-style, .event-content #student-form .main-heading-style, #student-form .event-content .main-heading-style, .event-content #nsi .main-heading-style, #nsi .event-content .main-heading-style, .event-content #gallery-page .title, #gallery-page .event-content .title, .event-content #gallery-inner .title, #gallery-inner .event-content .title, .event-content #faq-page .heading, #faq-page .event-content .heading, .event-content #notification-page .heading, #notification-page .event-content .heading {
        font-size: 1.5rem;
    }

    .event-content .main-heading-style::before, .event-content #school-details-page .heading::before, #school-details-page .event-content .heading::before, .event-content #school-details-page .school-card .card-title::before, #school-details-page .school-card .event-content .card-title::before, .event-content #about-page .content .heading::before, #about-page .content .event-content .heading::before, .event-content #about-page .content .alternate-heading::before, #about-page .content .event-content .alternate-heading::before, .event-content #bde-form .main-heading-style::before, #bde-form .event-content .main-heading-style::before, .event-content #school-form .main-heading-style::before, #school-form .event-content .main-heading-style::before, .event-content #student-form .main-heading-style::before, #student-form .event-content .main-heading-style::before, .event-content #nsi .main-heading-style::before, #nsi .event-content .main-heading-style::before, .event-content #gallery-page .title::before, #gallery-page .event-content .title::before, .event-content #gallery-inner .title::before, #gallery-inner .event-content .title::before, .event-content #faq-page .heading::before, #faq-page .event-content .heading::before, .event-content #notification-page .heading::before, #notification-page .event-content .heading::before {
        display: none;
    }

    .event-content .address {
        margin-top: 2rem;
    }

    .event-extra-details {
        flex-direction: column-reverse;
    }

    .event-extra-details #map {
        margin: 0 0 2rem;
        padding: 0;
    }
}

@media (min-width: 1200px) {
    .event-content .event-share {
        margin-top: 2rem;
    }

    .event-content .address {
        margin-top: 2rem;
    }
}

.sidebar {
    padding: 0 1rem 0 0;
    margin-top: 1rem;
    border-right: 1px solid #bbb;
}

.sidebar * {
    color: #222;
}

.sidebar .pre-header {
    display: none;
}

.sidebar .pre-header .icon-inside-right i, .sidebar .pre-header #bde-form .special-inside-icon i, #bde-form .sidebar .pre-header .special-inside-icon i {
    transition: all 300ms ease-in-out;
}

.sidebar .pre-header .icon-inside-right input *, .sidebar .pre-header #bde-form .special-inside-icon input *, #bde-form .sidebar .pre-header .special-inside-icon input * {
    transition: all 300ms ease-in-out;
}

.sidebar .pre-header .icon-inside-right input:hover, .sidebar .pre-header #bde-form .special-inside-icon input:hover, #bde-form .sidebar .pre-header .special-inside-icon input:hover {
    border-color: #fdc800;
    box-shadow: 0 0 11px rgba(253, 200, 0, 0.1);
}

.sidebar .pre-header .icon-inside-right input:focus, .sidebar .pre-header #bde-form .special-inside-icon input:focus, #bde-form .sidebar .pre-header .special-inside-icon input:focus {
    border-color: #fdc800;
    box-shadow: 0 0 0 0.2rem rgba(253, 200, 0, 0.2);
}

.sidebar .pre-header .icon-inside-right input:focus + i, .sidebar .pre-header #bde-form .special-inside-icon input:focus + i, #bde-form .sidebar .pre-header .special-inside-icon input:focus + i {
    color: #002147;
}

.sidebar .mobile-filter-trigger-container {
    display: none;
}

.sidebar .mobile-filter-controls {
    display: none;
}

.sidebar .header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #e1e1e1;
    padding: 0 1rem;
    margin-bottom: 1rem;
}

.sidebar .header h3, .sidebar .header .heading, .sidebar .header #school-details-page .school-card .card-title, #school-details-page .school-card .sidebar .header .card-title {
    font-size: 1.3rem;
    margin-bottom: .2rem;
    flex-basis: 90%;
}

.sidebar .header i, .sidebar .header .icon {
    flex-basis: 10%;
    text-align: right;
}

.sidebar .ranking, .sidebar .rating, .sidebar .school-type, .sidebar .school-location, .sidebar .school-medium, .sidebar .school-features, .sidebar .school-strength {
    overflow: hidden;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e1e1e1;
    /* width */
    /* Track */
    /* Handle */
    /* Handle on hover */
}

.sidebar .ranking .header, .sidebar .rating .header, .sidebar .school-type .header, .sidebar .school-location .header, .sidebar .school-medium .header, .sidebar .school-features .header, .sidebar .school-strength .header {
    border-bottom: 0;
    margin-bottom: 0;
}

.sidebar .ranking h3, .sidebar .rating h3, .sidebar .school-type h3, .sidebar .school-location h3, .sidebar .school-medium h3, .sidebar .school-features h3, .sidebar .school-strength h3, .sidebar .ranking .heading, .sidebar .rating .heading, .sidebar .school-type .heading, .sidebar .school-location .heading, .sidebar .school-medium .heading, .sidebar .school-features .heading, .sidebar .school-strength .heading, .sidebar .ranking #school-details-page .school-card .card-title, #school-details-page .school-card .sidebar .ranking .card-title, .sidebar .rating #school-details-page .school-card .card-title, #school-details-page .school-card .sidebar .rating .card-title, .sidebar .school-type #school-details-page .school-card .card-title, #school-details-page .school-card .sidebar .school-type .card-title, .sidebar .school-location #school-details-page .school-card .card-title, #school-details-page .school-card .sidebar .school-location .card-title, .sidebar .school-medium #school-details-page .school-card .card-title, #school-details-page .school-card .sidebar .school-medium .card-title, .sidebar .school-features #school-details-page .school-card .card-title, #school-details-page .school-card .sidebar .school-features .card-title, .sidebar .school-strength #school-details-page .school-card .card-title, #school-details-page .school-card .sidebar .school-strength .card-title {
    font-size: 1.1rem;
    font-weight: bold;
}

.sidebar .ranking .content, .sidebar .rating .content, .sidebar .school-type .content, .sidebar .school-location .content, .sidebar .school-medium .content, .sidebar .school-features .content, .sidebar .school-strength .content {
    overflow-y: auto;
    max-height: 120px;
    flex-direction: column;
    width: 100%;
    align-items: flex-end;
}

.sidebar .ranking .content.show, .sidebar .rating .content.show, .sidebar .school-type .content.show, .sidebar .school-location .content.show, .sidebar .school-medium .content.show, .sidebar .school-features .content.show, .sidebar .school-strength .content.show {
    display: flex;
}

.sidebar .ranking .content .box, .sidebar .rating .content .box, .sidebar .school-type .content .box, .sidebar .school-location .content .box, .sidebar .school-medium .content .box, .sidebar .school-features .content .box, .sidebar .school-strength .content .box {
    width: 100%;
}

.sidebar .ranking .content .hidden-content, .sidebar .rating .content .hidden-content, .sidebar .school-type .content .hidden-content, .sidebar .school-location .content .hidden-content, .sidebar .school-medium .content .hidden-content, .sidebar .school-features .content .hidden-content, .sidebar .school-strength .content .hidden-content {
    display: none;
}

.sidebar .ranking .content .hidden-content.show, .sidebar .rating .content .hidden-content.show, .sidebar .school-type .content .hidden-content.show, .sidebar .school-location .content .hidden-content.show, .sidebar .school-medium .content .hidden-content.show, .sidebar .school-features .content .hidden-content.show, .sidebar .school-strength .content .hidden-content.show {
    display: block;
}

.sidebar .ranking .form-group, .sidebar .rating .form-group, .sidebar .school-type .form-group, .sidebar .school-location .form-group, .sidebar .school-medium .form-group, .sidebar .school-features .form-group, .sidebar .school-strength .form-group {
    padding: 0 1rem;
    margin: 0;
}

.sidebar .ranking .form-group label, .sidebar .rating .form-group label, .sidebar .school-type .form-group label, .sidebar .school-location .form-group label, .sidebar .school-medium .form-group label, .sidebar .school-features .form-group label, .sidebar .school-strength .form-group label {
    margin-bottom: .1rem;
    font-weight: lighter;
    font-size: .8rem;
}

.sidebar .ranking .toggle-extra, .sidebar .rating .toggle-extra, .sidebar .school-type .toggle-extra, .sidebar .school-location .toggle-extra, .sidebar .school-medium .toggle-extra, .sidebar .school-features .toggle-extra, .sidebar .school-strength .toggle-extra {
    color: #222;
    text-decoration: underline;
}

.sidebar .ranking ::-webkit-scrollbar, .sidebar .rating ::-webkit-scrollbar, .sidebar .school-type ::-webkit-scrollbar, .sidebar .school-location ::-webkit-scrollbar, .sidebar .school-medium ::-webkit-scrollbar, .sidebar .school-features ::-webkit-scrollbar, .sidebar .school-strength ::-webkit-scrollbar {
    width: 4px;
}

.sidebar .ranking ::-webkit-scrollbar-track, .sidebar .rating ::-webkit-scrollbar-track, .sidebar .school-type ::-webkit-scrollbar-track, .sidebar .school-location ::-webkit-scrollbar-track, .sidebar .school-medium ::-webkit-scrollbar-track, .sidebar .school-features ::-webkit-scrollbar-track, .sidebar .school-strength ::-webkit-scrollbar-track {
    background: #bbb;
}

.sidebar .ranking ::-webkit-scrollbar-thumb, .sidebar .rating ::-webkit-scrollbar-thumb, .sidebar .school-type ::-webkit-scrollbar-thumb, .sidebar .school-location ::-webkit-scrollbar-thumb, .sidebar .school-medium ::-webkit-scrollbar-thumb, .sidebar .school-features ::-webkit-scrollbar-thumb, .sidebar .school-strength ::-webkit-scrollbar-thumb {
    background: #fdc800;
}

.sidebar .ranking ::-webkit-scrollbar-thumb:hover, .sidebar .rating ::-webkit-scrollbar-thumb:hover, .sidebar .school-type ::-webkit-scrollbar-thumb:hover, .sidebar .school-location ::-webkit-scrollbar-thumb:hover, .sidebar .school-medium ::-webkit-scrollbar-thumb:hover, .sidebar .school-features ::-webkit-scrollbar-thumb:hover, .sidebar .school-strength ::-webkit-scrollbar-thumb:hover {
    background: #fdc800;
}

.sidebar .rating {
    margin-top: 1rem;
}

.sidebar .rating .form-group {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sidebar .rating .form-group .star-rating-container {
    flex-basis: 95%;
    display: flex;
    align-items: center;
}

.sidebar .rating .form-group .star-rating-container i {
    font-size: .8rem;
    color: #bbb;
}

.sidebar .rating .form-group .star-rating-container .text {
    margin: 0;
    padding: 0 0 0 .4rem;
    font-size: 1rem;
}

.sidebar .rating .form-group input {
    flex-basis: 5%;
}

.sidebar .school-type, .sidebar .school-location, .sidebar .school-medium, .sidebar .school-features {
    margin-top: 1rem;
}

.sidebar .school-type .form-group, .sidebar .school-location .form-group, .sidebar .school-medium .form-group, .sidebar .school-features .form-group {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sidebar .school-strength {
    margin-top: 1rem;
}

.sidebar .school-strength .form-group {
    text-align: center;
}

.sidebar .school-strength .custom-range::-webkit-slider-thumb {
    background: #fdc800;
}

.sidebar .school-strength .custom-range::-moz-range-thumb {
    background: #fdc800;
}

.sidebar .school-features {
    border-bottom: 0;
}

.schools-list {
    margin-top: 1rem;
    padding: 0;
}

.schools-list .top-details {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-bottom: .3rem;
    border-bottom: 1px solid #e1e1e1;
}


.schools-list .top-details .icon-inside-right i, .schools-list .top-details #bde-form .special-inside-icon i, #bde-form .schools-list .top-details .special-inside-icon i {
    transition: all 300ms ease-in-out;
}

.schools-list .top-details .icon-inside-right input *, .schools-list .top-details #bde-form .special-inside-icon input *, #bde-form .schools-list .top-details .special-inside-icon input * {
    transition: all 300ms ease-in-out;
}

.schools-list .top-details .icon-inside-right input:hover, .schools-list .top-details #bde-form .special-inside-icon input:hover, #bde-form .schools-list .top-details .special-inside-icon input:hover {
    border-color: #fdc800;
    box-shadow: 0 0 11px rgba(253, 200, 0, 0.1);
}

.schools-list .top-details .icon-inside-right input:focus, .schools-list .top-details #bde-form .special-inside-icon input:focus, #bde-form .schools-list .top-details .special-inside-icon input:focus {
    border-color: #fdc800;
    box-shadow: 0 0 0 0.2rem rgba(253, 200, 0, 0.2);
}

.schools-list .top-details .icon-inside-right input:focus + i, .schools-list .top-details #bde-form .special-inside-icon input:focus + i, #bde-form .schools-list .top-details .special-inside-icon input:focus + i {
    color: #002147;
}

.schools-list .info {
    margin: 0;
    flex-basis: 10%;
}

.schools-list .search-box {
    flex-basis: 40%;
    width: 100%;
}

.schools-list .search-input {
    border-radius: 20px;
}

.schools-list .school-card {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: .3rem .4rem;
    border: 1px solid #e1e1e1;
    border-radius: 10px;
    -webkit-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1);
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1);
}

.schools-list .school-card .image-and-details {
    flex-basis: 70%;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-right: .5rem;
    border-right: 1px solid #e1e1e1;
}

.schools-list .school-card .image-and-details .image {
    flex-basis: calc(45% - .5rem);
    border-radius: 10px;
    overflow: hidden;
    margin-right: .5rem;
}

.schools-list .school-card .image-and-details .image img {
    width: 100%;
    height: 100%;
}

.schools-list .school-card .image-and-details .primary-details {
    flex-basis: 55%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.schools-list .school-card .image-and-details .primary-details .title {
    font-size: .8rem;
    color: #222;
    text-shadow: 0 0 0;
    font-weight: normal;
}

.schools-list .school-card .image-and-details .primary-details .title::before {
    height: 2px;
    bottom: -5px;
    background-color: #fdc800;
}

.schools-list .school-card .image-and-details .primary-details .basic-info {
    padding: 0;
    width: 100%;
    margin-top: 1rem;
    margin-bottom: 0;
}

.schools-list .school-card .image-and-details .primary-details .basic-info li {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    font-size: .666rem;
    margin-bottom: .1rem;
}

.schools-list .school-card .image-and-details .primary-details .basic-info li span {
    display: block;
    width: 50%;
}

.schools-list .school-card .image-and-details .extra-info {
    flex-basis: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: center;
}

.schools-list .school-card .image-and-details .extra-info .tags p, .schools-list .school-card .image-and-details .extra-info #blog-details .blog-details .blog-content .blog-additional-info .share p, #blog-details .blog-details .blog-content .blog-additional-info .schools-list .school-card .image-and-details .extra-info .share p {
    margin: 0;
    color: #a2a2a2;
    font-size: .7rem;
}

.schools-list .school-card .image-and-details .extra-info .contact-info {
    font-size: .8rem;
    color: #fdc800;
    display: flex;
    /*i {
            &:first-of-type {
            }
          }*/
}

.schools-list .school-card .image-and-details .extra-info .contact-info .hover-slide-left {
    display: flex;
}

.schools-list .school-card .image-and-details .extra-info .contact-info .hover-slide-left:first-of-type i {
    border-right: 1px solid #e1e1e1;
    padding-right: .4rem;
    margin: 0;
}

.schools-list .school-card .image-and-details .extra-info .contact-info .hover-slide-left:last-of-type i {
    padding-left: .2rem;
}

.schools-list .school-card .image-and-details .extra-info .contact-info .hover-slide-left .slide-this {
    display: block;
    transition: all 200ms ease-in-out;
}

.schools-list .school-card .image-and-details .extra-info .contact-info .hover-slide-left .slide-this.show {
    display: block;
}

.schools-list .school-card .details-option {
    flex-basis: 30%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.schools-list .school-card .details-option .favourite {
    color: #bbb;
    width: 100%;
    text-align: right;
    line-height: .5;
}

.schools-list .school-card .details-option .favourite i {
    font-size: .8rem;
}

.schools-list .school-card .details-option .favourite i.active {
    color: var(--danger);
}

.schools-list .school-card .details-option .rating-details {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: .9rem;
}

.schools-list .school-card .details-option .rating-details h3 {
    font-size: 1rem;
    font-weight: bold;
    margin: 0;
    line-height: 1;
}

.schools-list .school-card .details-option .rating-details .star-rating-container {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    line-height: .7;
    margin-bottom: .2rem;
}

.schools-list .school-card .details-option .rating-details .star-rating-container i {
    font-size: .7rem;
}

.schools-list .school-card .details-option .rating-details .star-rating-container span {
    font-size: .7rem;
    padding: 0 0 0 .3rem;
}

.schools-list .school-card .details-option .rating-details .total-reviews {
    font-size: .666rem;
}

.schools-list .school-card .details-option .details-buttons {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.schools-list .school-card .details-option .details-buttons > .btn {
    margin-bottom: .3rem;
}

.schools-list .school-card .details-option .details-buttons > .btn:last-of-type {
    margin-bottom: 0;
}

.schools-list .school-card .details-option .details-buttons .btn-details {
    font-size: .666rem;
    text-transform: none;
    padding: .05rem .5rem;
    border-radius: 5px;
    font-weight: normal;
}

.schools-list .school-card .details-option .details-buttons .btn-details.active {
    background-color: #fff;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1);
}

.schools-list .top-details #totalButton {
    font-size: 12.5px;
    width: 15%;
    height: 35px;
}

.schools-list .top-details #comButton {
    font-size: 10.5px;
    width: 15%;
    height: 35px;
}

@media screen and (min-width: 767px) {
    .schools-list {
        margin-bottom: 2rem;
    }
}

@media (max-width: 575.98px) {
    .sidebar {
        border-right: none;
        padding: 0;
    }

    .sidebar .pre-header {
        display: block;
    }

    .sidebar .hide-mobile {
        display: none;
    }

    .sidebar .mobile-filter-trigger-container {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding-bottom: 1.5rem;
        border-bottom: 4px solid #e7e7e7;
    }

    .sidebar .mobile-filter-trigger-container .mobile-filter-trigger, .sidebar .mobile-filter-trigger-container .total-result {
        padding: .3rem 1rem;
        border: 1px solid #e7e7e7;
        box-shadow: 2px 2px 10px rgba(60, 53, 51, 0.1), -2px -2px 10px rgba(60, 53, 51, 0.1);
    }

    .sidebar .mobile-filter-trigger-container .total-result {
        box-shadow: none;
    }

    .sidebar .mobile-filter-trigger-container .mobile-filter-trigger {
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .sidebar .mobile-filter-trigger-container .mobile-filter-trigger i {
        margin-left: 1rem;
    }

    .sidebar .mobile-filters-container {
        padding-top: 2rem;
    }

    .sidebar .mobile-filters-container .mobile-filter-controls {
        display: flex;
        justify-content: space-around;
        align-items: center;
        margin-bottom: 2rem;
    }

    .sidebar .mobile-filters-container .mobile-filter-controls .clear-button {
        color: #002147;
        text-decoration: underline;
        font-size: 1.3rem;
    }

    .sidebar .rating, .sidebar .ranking, .sidebar .rating, .sidebar .school-type, .sidebar .school-location, .sidebar .school-medium, .sidebar .school-features, .sidebar .school-strength, .sidebar .header {
        border-bottom: 4px solid #e7e7e7;
    }

    /* .schools-list .top-details {
      

    } */

    .schools-list .top-details #totalButton {
        font-size: 9.5px;
    
    }

    .schools-list .top-details #comButton {
        font-size: 6.7px;
   
    }

    .schools-list #pagination {
        padding-right: 20rem;
    }

    .schools-list .school-card {
        flex-direction: column;
    }

    .schools-list .school-card .image-and-details {
        flex-basis: 100%;
        padding: 0 0 .5rem 0;
        border-right: none;
    }

    .schools-list .school-card .details-option {
        flex-basis: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-around;
        width: 100%;
        border-top: 1px solid #bbb;
        padding: .5rem 0 0;
    }

    .schools-list .school-card .details-option > * {
        flex-basis: 35%;
    }

    .schools-list .school-card .details-option .favourite {
        flex-basis: 15%;
    }

    .schools-list .school-card .details-option .rating-details {
        order: 1;
    }

    .schools-list .school-card .details-option .favourite {
        order: 2;
        text-align: center;
    }

    .schools-list .school-card .details-option .favourite i {
        font-size: 1.5rem;
    }

    .schools-list .school-card .details-option .details-buttons {
        order: 3;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .sidebar {
        border-right: none;
        padding: 0;
    }

    .sidebar .pre-header {
        display: block;
    }

    .sidebar .hide-mobile {
        display: none;
    }

    .sidebar .mobile-filter-trigger-container {
        display: flex;
        justify-content: space-around;
        align-items: center;
        padding-bottom: 1.5rem;
        border-bottom: 4px solid #e7e7e7;
    }

    .sidebar .mobile-filter-trigger-container .mobile-filter-trigger, .sidebar .mobile-filter-trigger-container .total-result {
        padding: .3rem 1rem;
        border: 1px solid #e7e7e7;
        box-shadow: 2px 2px 10px rgba(60, 53, 51, 0.1), -2px -2px 10px rgba(60, 53, 51, 0.1);
    }

    .sidebar .mobile-filter-trigger-container .total-result {
        box-shadow: none;
    }

    .sidebar .mobile-filter-trigger-container .mobile-filter-trigger {
        cursor: pointer;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .sidebar .mobile-filter-trigger-container .mobile-filter-trigger i {
        margin-left: 1rem;
    }

    .sidebar .mobile-filters-container {
        padding-top: 2rem;
    }

    .sidebar .mobile-filters-container .mobile-filter-controls {
        display: flex;
        justify-content: space-around;
        align-items: center;
        margin-bottom: 2rem;
    }

    .sidebar .mobile-filters-container .mobile-filter-controls .clear-button {
        color: #002147;
        text-decoration: underline;
        font-size: 1.3rem;
    }

    .sidebar .rating, .sidebar .ranking, .sidebar .rating, .sidebar .school-type, .sidebar .school-location, .sidebar .school-medium, .sidebar .school-features, .sidebar .school-strength, .sidebar .header {
        border-bottom: 4px solid #e7e7e7;
    }

    .schools-list .top-details {
        display: none;
    }

    .schools-list .school-card .image-and-details .primary-details .title {
        font-size: 1rem;
    }

    .schools-list .school-card .image-and-details .primary-details .basic-info li {
        font-size: .9rem;
    }

    .schools-list .school-card .details-option .rating-details .total-reviews {
        font-size: .8rem;
    }

    .schools-list .school-card .details-option .details-buttons > .btn {
        margin-bottom: .6rem;
    }

    .schools-list .school-card .details-option .details-buttons .btn-details {
        font-size: .9rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .sidebar .pre-header {
        display: none;
    }

    .sidebar .mobile-filters-container {
        display: block;
    }

    .schools-list .top-details .search-box {
        display: block;
    }

    .schools-list .school-card {
        flex-direction: column;
    }

    .schools-list .school-card .image-and-details {
        border-right: none;
        padding-bottom: .5rem;
    }

    .schools-list .school-card .details-option {
        flex-basis: 100%;
        display: flex;
        flex-direction: row;
        justify-content: space-around;
        width: 100%;
        border-top: 1px solid #bbb;
        padding: .5rem 0 0;
    }

    .schools-list .school-card .details-option .rating-details, .schools-list .school-card .details-option .details-buttons {
        flex-basis: 35%;
    }

    .schools-list .school-card .details-option .rating-details {
        order: 1;
        margin: 0;
    }

    .schools-list .school-card .details-option .rating-details > * {
        margin-bottom: .4rem !important;
    }

    .schools-list .school-card .details-option .favourite {
        order: 2;
        text-align: center;
    }

    .schools-list .school-card .details-option .favourite i {
        font-size: 1.3rem;
    }

    .schools-list .school-card .details-option .details-buttons {
        order: 3;
    }

    .schools-list .school-card .details-option .details-buttons > .btn {
        margin-bottom: .6rem;
    }

    .schools-list .school-card .details-option .favourite {
        flex-basis: 15%;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .sidebar .mobile-filters-container {
        display: block;
    }
}

@media (min-width: 1200px) {
    .sidebar .mobile-filters-container {
        display: block;
    }
}

#blog-details .main-heading-style, #blog-details #school-details-page .heading, #school-details-page #blog-details .heading, #blog-details #school-details-page .school-card .card-title, #school-details-page .school-card #blog-details .card-title, #blog-details #about-page .content .heading, #about-page .content #blog-details .heading, #blog-details #about-page .content .alternate-heading, #about-page .content #blog-details .alternate-heading, #blog-details #gallery-page .title, #gallery-page #blog-details .title, #blog-details #gallery-inner .title, #gallery-inner #blog-details .title, #blog-details #faq-page .heading, #faq-page #blog-details .heading, #blog-details #notification-page .heading, #notification-page #blog-details .heading {
    font-size: 2rem;
    color: #1d2330;
    text-transform: none;
}

#blog-details .main-heading-style::before, #blog-details #school-details-page .heading::before, #school-details-page #blog-details .heading::before, #blog-details #school-details-page .school-card .card-title::before, #school-details-page .school-card #blog-details .card-title::before, #blog-details #about-page .content .heading::before, #about-page .content #blog-details .heading::before, #blog-details #about-page .content .alternate-heading::before, #about-page .content #blog-details .alternate-heading::before, #blog-details #gallery-page .title::before, #gallery-page #blog-details .title::before, #blog-details #gallery-inner .title::before, #gallery-inner #blog-details .title::before, #blog-details #faq-page .heading::before, #faq-page #blog-details .heading::before, #blog-details #notification-page .heading::before, #notification-page #blog-details .heading::before {
    bottom: 5px;
}

#blog-details .blog-details .blog-image-details .main-image {
    width: 100%;
    border: 0.5rem solid #fff;
    box-shadow: 2px 2px 3px rgba(60, 53, 51, 0.1);
}

#blog-details .blog-details .blog-image-details .blog-author-details {
    position: relative;
    top: -60px;
    left: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: -45px;
}

#blog-details .blog-details .blog-image-details .blog-author-details .author-image {
    display: block;
    border-radius: 50%;
    overflow: hidden;
    height: 110px;
    width: 110px;
    border: 3px solid #fff;
}

#blog-details .blog-details .blog-image-details .blog-author-details .name {
    margin: 0;
    color: #454851;
    text-align: center;
}

#blog-details .blog-details .blog-image-details .blog-author-details .name strong {
    text-transform: uppercase;
    color: #000;
}

#blog-details .blog-details .blog-content {
    overflow: hidden;
    text-align: center;
}

#blog-details .blog-details .blog-content .blog-heading {
    font-size: 2rem;
    color: #454851;
    text-shadow: none;
    padding: 1rem 0;
}

#blog-details .blog-details .blog-content .blog-heading::before {
    background-color: #fdc800;
    height: 2px;
    left: 40%;
    right: 40%;
}

#blog-details .blog-details .blog-content .main-heading-style, #blog-details .blog-details .blog-content #school-details-page .heading, #school-details-page #blog-details .blog-details .blog-content .heading, #blog-details .blog-details .blog-content #school-details-page .school-card .card-title, #school-details-page .school-card #blog-details .blog-details .blog-content .card-title, #blog-details .blog-details .blog-content #about-page .content .heading, #about-page .content #blog-details .blog-details .blog-content .heading, #blog-details .blog-details .blog-content #about-page .content .alternate-heading, #about-page .content #blog-details .blog-details .blog-content .alternate-heading, #blog-details .blog-details .blog-content #gallery-page .title, #gallery-page #blog-details .blog-details .blog-content .title, #blog-details .blog-details .blog-content #gallery-inner .title, #gallery-inner #blog-details .blog-details .blog-content .title, #blog-details .blog-details .blog-content #faq-page .heading, #faq-page #blog-details .blog-details .blog-content .heading, #blog-details .blog-details .blog-content #notification-page .heading, #notification-page #blog-details .blog-details .blog-content .heading {
    font-size: 1.7rem;
    margin-bottom: 2rem;
}

#blog-details .blog-details .blog-content .main-heading-style::before, #blog-details .blog-details .blog-content #school-details-page .heading::before, #school-details-page #blog-details .blog-details .blog-content .heading::before, #blog-details .blog-details .blog-content #school-details-page .school-card .card-title::before, #school-details-page .school-card #blog-details .blog-details .blog-content .card-title::before, #blog-details .blog-details .blog-content #about-page .content .heading::before, #about-page .content #blog-details .blog-details .blog-content .heading::before, #blog-details .blog-details .blog-content #about-page .content .alternate-heading::before, #about-page .content #blog-details .blog-details .blog-content .alternate-heading::before, #blog-details .blog-details .blog-content #gallery-page .title::before, #gallery-page #blog-details .blog-details .blog-content .title::before, #blog-details .blog-details .blog-content #gallery-inner .title::before, #gallery-inner #blog-details .blog-details .blog-content .title::before, #blog-details .blog-details .blog-content #faq-page .heading::before, #faq-page #blog-details .blog-details .blog-content .heading::before, #blog-details .blog-details .blog-content #notification-page .heading::before, #notification-page #blog-details .blog-details .blog-content .heading::before {
    bottom: 5px;
}

#blog-details .blog-details .blog-content .description {
    font-size: .8rem;
}

#blog-details .blog-details .blog-content .blog-basic-details {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}

#blog-details .blog-details .blog-content .blog-basic-details .post-date {
    color: #666;
    font-size: .8rem;
}

#blog-details .blog-details .blog-content .blog-basic-details .post-date::before {
    content: "\2022";
    margin-right: .2rem;
    color: #fdc800;
    font-weight: bold;
}

#blog-details .blog-details .blog-content .blog-basic-details .blog-author {
    text-align: right;
    text-transform: uppercase;
    font-size: 1rem;
    font-weight: bold;
    color: #1d2330;
    font-style: italic;
}

#blog-details .blog-details .blog-content .blog-basic-details .blog-author::before {
    content: "-";
    font-weight: bold;
    color: #1d2330;
}

#blog-details .blog-details .blog-content .blog-additional-info {
    border-top: 1px solid #bbb;
    border-bottom: 1px solid #bbb;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 1rem 0;
}

#blog-details .blog-details .blog-content .blog-additional-info .tags, #blog-details .blog-details .blog-content .blog-additional-info .share {
    display: flex;
    flex-basis: 70%;
    margin-bottom: 1rem;
}

#blog-details .blog-details .blog-content .blog-additional-info .tags *, #blog-details .blog-details .blog-content .blog-additional-info .share * {
    margin: 0;
}

#blog-details .blog-details .blog-content .blog-additional-info .tags h6, #blog-details .blog-details .blog-content .blog-additional-info .share h6 {
    font-weight: bold;
    margin-right: .5rem;
    text-transform: uppercase;
    font-size: .9rem;
}

#blog-details .blog-details .blog-content .blog-additional-info .tags p, #blog-details .blog-details .blog-content .blog-additional-info .share p {
    font-weight: normal;
    font-size: .9rem;
    line-height: 1;
    color: #666;
    text-align: left;
}

#blog-details .blog-details .blog-content .blog-additional-info .share {
    flex-basis: 30%;
    text-align: right;
    margin-bottom: 0;
}

#blog-details .blog-details .blog-content .blog-additional-info .share .share-icons {
    line-height: 1;
    display: flex;
    justify-content: space-around;
    width: 50%;
}

#blog-details .blog-details .blog-content .blog-additional-info .share .share-icons i {
    font-size: 1.2rem;
}

#blog-details .blog-sidebar {
    overflow: hidden;
}

#blog-details .blog-sidebar .main-heading-style, #blog-details .blog-sidebar #school-details-page .heading, #school-details-page #blog-details .blog-sidebar .heading, #blog-details .blog-sidebar #school-details-page .school-card .card-title, #school-details-page .school-card #blog-details .blog-sidebar .card-title, #blog-details .blog-sidebar #about-page .content .heading, #about-page .content #blog-details .blog-sidebar .heading, #blog-details .blog-sidebar #about-page .content .alternate-heading, #about-page .content #blog-details .blog-sidebar .alternate-heading, #blog-details .blog-sidebar #gallery-page .title, #gallery-page #blog-details .blog-sidebar .title, #blog-details .blog-sidebar #gallery-inner .title, #gallery-inner #blog-details .blog-sidebar .title, #blog-details .blog-sidebar #faq-page .heading, #faq-page #blog-details .blog-sidebar .heading, #blog-details .blog-sidebar #notification-page .heading, #notification-page #blog-details .blog-sidebar .heading {
    font-size: 2rem;
    margin-bottom: 1.5rem;
}

#blog-details .blog-sidebar .related-posts-container .post-item {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 2rem;
}

#blog-details .blog-sidebar .related-posts-container .post-item .image {
    flex-basis: 40%;
}

#blog-details .blog-sidebar .related-posts-container .post-item .image img {
    width: 100%;
}

#blog-details .blog-sidebar .related-posts-container .post-item .details {
    flex-basis: 60%;
}

#blog-details .blog-sidebar .related-posts-container .post-item .details p {
    padding: 0 0 0 .9rem;
    margin: 0;
    font-size: .77rem;
    color: #222;
}

#blog-details .blog-sidebar .related-posts-container .post-item .read-more {
    margin-left: 45%;
    font-size: .8rem;
    color: #222;
    text-decoration: underline;
    font-style: italic;
}

#blog-details .popular-blogs {
    margin: 4rem 0 4rem;
    overflow: hidden;
}

#blog-details .popular-blogs .main-heading-style, #blog-details .popular-blogs #school-details-page .heading, #school-details-page #blog-details .popular-blogs .heading, #blog-details .popular-blogs #school-details-page .school-card .card-title, #school-details-page .school-card #blog-details .popular-blogs .card-title, #blog-details .popular-blogs #about-page .content .heading, #about-page .content #blog-details .popular-blogs .heading, #blog-details .popular-blogs #about-page .content .alternate-heading, #about-page .content #blog-details .popular-blogs .alternate-heading, #blog-details .popular-blogs #gallery-page .title, #gallery-page #blog-details .popular-blogs .title, #blog-details .popular-blogs #gallery-inner .title, #gallery-inner #blog-details .popular-blogs .title, #blog-details .popular-blogs #faq-page .heading, #faq-page #blog-details .popular-blogs .heading, #blog-details .popular-blogs #notification-page .heading, #notification-page #blog-details .popular-blogs .heading {
    font-size: 1.5rem;
    margin-bottom: 2rem;
    text-transform: uppercase;
}

#blog-details .popular-blogs .main-heading-style::before, #blog-details .popular-blogs #school-details-page .heading::before, #school-details-page #blog-details .popular-blogs .heading::before, #blog-details .popular-blogs #school-details-page .school-card .card-title::before, #school-details-page .school-card #blog-details .popular-blogs .card-title::before, #blog-details .popular-blogs #about-page .content .heading::before, #about-page .content #blog-details .popular-blogs .heading::before, #blog-details .popular-blogs #about-page .content .alternate-heading::before, #about-page .content #blog-details .popular-blogs .alternate-heading::before, #blog-details .popular-blogs #gallery-page .title::before, #gallery-page #blog-details .popular-blogs .title::before, #blog-details .popular-blogs #gallery-inner .title::before, #gallery-inner #blog-details .popular-blogs .title::before, #blog-details .popular-blogs #faq-page .heading::before, #faq-page #blog-details .popular-blogs .heading::before, #blog-details .popular-blogs #notification-page .heading::before, #notification-page #blog-details .popular-blogs .heading::before {
    bottom: 5px;
}

#blog-details .popular-blogs .popular-blog img {
    width: 100%;
    margin-bottom: .2rem;
}

#blog-details .popular-blogs .popular-blog h6, #blog-details .popular-blogs .popular-blog .title {
    font-size: .9rem;
    color: #222;
}

#blog-details .comments {
    margin-bottom: 4rem;
}

#blog-details .comments .main-heading-style, #blog-details .comments #school-details-page .heading, #school-details-page #blog-details .comments .heading, #blog-details .comments #school-details-page .school-card .card-title, #school-details-page .school-card #blog-details .comments .card-title, #blog-details .comments #about-page .content .heading, #about-page .content #blog-details .comments .heading, #blog-details .comments #about-page .content .alternate-heading, #about-page .content #blog-details .comments .alternate-heading, #blog-details .comments #gallery-page .title, #gallery-page #blog-details .comments .title, #blog-details .comments #gallery-inner .title, #gallery-inner #blog-details .comments .title, #blog-details .comments #faq-page .heading, #faq-page #blog-details .comments .heading, #blog-details .comments #notification-page .heading, #notification-page #blog-details .comments .heading {
    font-size: 1.5rem;
    margin-bottom: 2rem;
}

#blog-details .comments .main-heading-style::before, #blog-details .comments #school-details-page .heading::before, #school-details-page #blog-details .comments .heading::before, #blog-details .comments #school-details-page .school-card .card-title::before, #school-details-page .school-card #blog-details .comments .card-title::before, #blog-details .comments #about-page .content .heading::before, #about-page .content #blog-details .comments .heading::before, #blog-details .comments #about-page .content .alternate-heading::before, #about-page .content #blog-details .comments .alternate-heading::before, #blog-details .comments #gallery-page .title::before, #gallery-page #blog-details .comments .title::before, #blog-details .comments #gallery-inner .title::before, #gallery-inner #blog-details .comments .title::before, #blog-details .comments #faq-page .heading::before, #faq-page #blog-details .comments .heading::before, #blog-details .comments #notification-page .heading::before, #notification-page #blog-details .comments .heading::before {
    bottom: 5px;
}

#blog-details .comments .comment {
    display: flex;
    flex-direction: column;
}

#blog-details .comments .comment .comment-details {
    width: 100%;
    display: flex;
    justify-content: flex-start;
}

#blog-details .comments .comment .comment-details .comment-image {
    flex-basis: 50px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    overflow: hidden;
}

#blog-details .comments .comment .comment-details .comment-image img {
    width: 100%;
}

#blog-details .comments .comment .comment-details .comment-basic-details {
    margin-left: .5rem;
}

#blog-details .comments .comment .comment-details .name {
    font-weight: bold;
    font-size: 1.1rem;
    margin-bottom: 0;
    color: #222;
}

#blog-details .comments .comment .comment-details .date-of-comment {
    font-size: .8rem;
}

#blog-details .comments .comment .comment-description {
    padding: .5rem 1rem;
    font-size: .8rem;
    display: flex;
    align-items: flex-end;
}

#blog-details .comments .comment .btn-round-secondary, #blog-details .comments .comment .schools-list .school-card .details-option .details-buttons .btn-details, .schools-list .school-card .details-option .details-buttons #blog-details .comments .comment .btn-details {
    padding: 0 .4rem;
    font-size: .8rem;
    font-weight: normal;
    text-transform: none;
}

#blog-details .add-new-comment .main-heading-style, #blog-details .add-new-comment #school-details-page .heading, #school-details-page #blog-details .add-new-comment .heading, #blog-details .add-new-comment #school-details-page .school-card .card-title, #school-details-page .school-card #blog-details .add-new-comment .card-title, #blog-details .add-new-comment #about-page .content .heading, #about-page .content #blog-details .add-new-comment .heading, #blog-details .add-new-comment #about-page .content .alternate-heading, #about-page .content #blog-details .add-new-comment .alternate-heading, #blog-details .add-new-comment #gallery-page .title, #gallery-page #blog-details .add-new-comment .title, #blog-details .add-new-comment #gallery-inner .title, #gallery-inner #blog-details .add-new-comment .title, #blog-details .add-new-comment #faq-page .heading, #faq-page #blog-details .add-new-comment .heading, #blog-details .add-new-comment #notification-page .heading, #notification-page #blog-details .add-new-comment .heading {
    font-size: 1.5rem;
    margin-bottom: 3rem;
}

@media screen and (max-width: 767px) {
    #blog-details .related-blogs {
        margin: 2rem 0;
    }

    #blog-details .related-blogs:last-of-type .related-blog {
        margin-bottom: 0;
    }

    #blog-details .related-blogs .related-blog {
        margin-bottom: 1rem;
    }

    #blog-details .comments {
        margin-bottom: 2rem;
    }

    #blog-details .comments .comment {
        margin: 0 0 2rem 0;
    }

    #blog-details .comments .comment:last-of-type {
        margin-bottom: 0;
    }

    #blog-details .comments .comment .comment-description {
        flex-wrap: wrap;
        justify-content: center;
    }

    #blog-details .add-new-comment {
        overflow: hidden;
    }
}

@media (max-width: 575.98px) {
    #blog-details {
        border-bottom: none;
    }

    #blog-details .blog-details {
        border-bottom: 4px solid #e7e7e7;
    }

    #blog-details .blog-details .blog-basic-details {
        margin-bottom: 1rem;
    }

    #blog-details .blog-details .blog-content .blog-heading {
        margin-bottom: .5rem;
        font-size: 1.2rem;
        padding-bottom: .5rem;
    }

    #blog-details .blog-details .blog-content .blog-additional-info {
        border-bottom: 0;
    }

    #blog-details .blog-sidebar {
        margin: 2rem 0 0;
        border-bottom: 4px solid #e7e7e7;
    }

    #blog-details .blog-sidebar .post-item {
        padding: .7rem .5rem;
        border: 1px solid #bbb;
        box-shadow: 12px 3px 10px rgba(60, 53, 51, 0.1), 12px 3px 10px rgba(60, 53, 51, 0.1);
    }

    #blog-details .blog-sidebar .post-item .details p {
        font-size: 1rem !important;
        position: relative;
    }

    #blog-details .blog-sidebar .post-item .details p::after {
        content: "";
        position: absolute;
        height: 2px;
        width: 60%;
        left: .9rem;
        bottom: -7px;
        background-color: #fdc800;
    }

    #blog-details .blog-sidebar .read-more {
        flex-basis: 100%;
        margin: 0 !important;
        text-align: right;
        display: block;
        width: 100%;
    }

    #blog-details .popular-blogs {
        order: 2;
        margin: 2rem 0 0;
        border-bottom: 4px solid #e7e7e7;
    }

    #blog-details .popular-blogs .popular-blog {
        border: 1px solid #bbb;
        padding: .7rem .5rem;
        box-shadow: 12px 3px 10px rgba(60, 53, 51, 0.1), 12px 3px 10px rgba(60, 53, 51, 0.1);
        margin-bottom: 2rem;
        display: flex;
    }

    #blog-details .popular-blogs .popular-blog .image {
        flex-basis: 40%;
    }

    #blog-details .popular-blogs .popular-blog .title {
        padding: 0 0 0 .9rem;
        color: #222;
        flex-basis: 60%;
        font-size: 1rem !important;
        position: relative;
    }

    #blog-details .popular-blogs .popular-blog .title::after {
        content: "";
        position: absolute;
        height: 2px;
        width: 60%;
        left: .9rem;
        bottom: -7px;
        background-color: #fdc800;
    }

    #blog-details .comments {
        padding: 2rem 0;
        margin: 0;
        border-bottom: 4px solid #e7e7e7;
        order: 1;
    }

    #blog-details .add-new-comment {
        order: 3;
        padding: 2rem 0 0;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #blog-details .blog-sidebar {
        margin-top: 2rem;
    }

    #blog-details .blog-sidebar .related-posts {
        display: flex;
        margin: 0 -15px;
    }

    #blog-details .blog-sidebar .related-posts > .post-item {
        flex-basis: calc(100% / 3);
    }

    #blog-details .blog-sidebar .related-posts-container .post-item {
        flex-wrap: nowrap;
        flex-direction: column;
        padding: 0 1rem;
    }

    #blog-details .blog-sidebar .related-posts-container .post-item .details p {
        padding-left: 0;
        font-size: .9rem;
        line-height: 1.2;
    }

    #blog-details .blog-sidebar .related-posts-container .post-item .read-more {
        display: block;
        text-align: right;
    }

    #blog-details .blog-details .blog-basic-details {
        margin-bottom: 1rem;
    }

    #blog-details .blog-details .blog-content .blog-heading {
        margin-bottom: .5rem;
        font-size: 1.2rem;
        padding-bottom: .5rem;
    }

    #blog-details .blog-details .blog-content .blog-additional-info {
        flex-direction: column;
    }

    #blog-details .popular-blogs {
        order: 2;
    }

    #blog-details .comments {
        order: 1;
    }

    #blog-details .add-new-comment {
        order: 3;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #blog-details .blog-sidebar .related-posts-container .post-item .read-more {
        display: block;
        text-align: right;
        width: 100%;
    }

    #blog-details .blog-details .blog-content .blog-additional-info {
        flex-direction: column;
    }

    #blog-details .blog-details .blog-content .blog-additional-info .share .share-icons i {
        font-size: 1.2rem;
    }
}

#blogs .blog-flex {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

#blogs .blogs-container {
    width: 75%;
    padding-top: 2rem;
}

#blogs .blogs-container .blog-item {
    padding: 0;
    display: flex;
    justify-content: space-between;
    margin-bottom: 2.5rem;
    /*& > .details-button {
        display: none;
      }*/
}

#blogs .blogs-container .blog-item .image {
    flex-basis: 35%;
}

#blogs .blogs-container .blog-item .image img {
    border-radius: 0;
    width: 100%;
    height: auto;
}

#blogs .blogs-container .blog-item .blog-details {
    flex-basis: 60%;
    padding: .5rem 0;
}

#blogs .blogs-container .blog-item .blog-details h6 {
    margin: 0 0 .7rem;
    color: #222;
    line-height: 1;
    font-size: 1.4rem;
}

#blogs .blogs-container .blog-item .blog-details .details {
    font-size: .9rem;
}

#blogs .blogs-container .blog-item .blog-details .post-date {
    font-size: .75rem;
    margin: 0 0 0.3rem 0;
}

#blogs .blogs-container .blog-item .blog-details .post-date p {
    margin: 0;
    padding: 0 0 0.2rem;
}

#blogs .blogs-container .blog-item .blog-details .post-date .divider {
    width: 30%;
    height: 2px;
    background-color: #fdc800;
}

#blogs .blogs-container .blog-item .blog-details .details-button {
    text-align: right;
}

#blogs .blogs-container .blog-item .blog-details .details-button .read-more {
    text-align: right;
    font-size: .9rem;
    font-style: italic;
    color: #000;
    text-decoration: underline;
}

#blogs .blog-sidebar {
    overflow: hidden;
    width: 20%;
    padding-top: 2rem;
}

#blogs .blog-sidebar .main-heading-style, #blogs .blog-sidebar #school-details-page .heading, #school-details-page #blogs .blog-sidebar .heading, #blogs .blog-sidebar #school-details-page .school-card .card-title, #school-details-page .school-card #blogs .blog-sidebar .card-title, #blogs .blog-sidebar #about-page .content .heading, #about-page .content #blogs .blog-sidebar .heading, #blogs .blog-sidebar #about-page .content .alternate-heading, #about-page .content #blogs .blog-sidebar .alternate-heading, #blogs .blog-sidebar #gallery-page .title, #gallery-page #blogs .blog-sidebar .title, #blogs .blog-sidebar #gallery-inner .title, #gallery-inner #blogs .blog-sidebar .title, #blogs .blog-sidebar #faq-page .heading, #faq-page #blogs .blog-sidebar .heading, #blogs .blog-sidebar #notification-page .heading, #notification-page #blogs .blog-sidebar .heading {
    text-transform: uppercase;
    font-size: 1rem;
    margin-bottom: 1.5rem;
}

#blogs .blog-sidebar .main-heading-style::before, #blogs .blog-sidebar #school-details-page .heading::before, #school-details-page #blogs .blog-sidebar .heading::before, #blogs .blog-sidebar #school-details-page .school-card .card-title::before, #school-details-page .school-card #blogs .blog-sidebar .card-title::before, #blogs .blog-sidebar #about-page .content .heading::before, #about-page .content #blogs .blog-sidebar .heading::before, #blogs .blog-sidebar #about-page .content .alternate-heading::before, #about-page .content #blogs .blog-sidebar .alternate-heading::before, #blogs .blog-sidebar #gallery-page .title::before, #gallery-page #blogs .blog-sidebar .title::before, #blogs .blog-sidebar #gallery-inner .title::before, #gallery-inner #blogs .blog-sidebar .title::before, #blogs .blog-sidebar #faq-page .heading::before, #faq-page #blogs .blog-sidebar .heading::before, #blogs .blog-sidebar #notification-page .heading::before, #notification-page #blogs .blog-sidebar .heading::before {
    bottom: 4px;
    width: 80px;
}

#blogs .blog-sidebar .search-container {
    position: relative;
    max-width: 180px;
    margin-bottom: 3rem;
}

#blogs .blog-sidebar .search-container .search-input {
    border-radius: 15px;
    padding-right: 43px;
    border: 2px solid #fdc800;
}

#blogs .blog-sidebar .search-container .search-input * {
    transition: all 300ms ease-in-out;
}

#blogs .blog-sidebar .search-container .search-input:hover {
    border-color: #fdc800;
    box-shadow: none;
}

#blogs .blog-sidebar .search-container .search-input:focus {
    border-color: #fdc800;
    box-shadow: none;
}

#blogs .blog-sidebar .search-container .search-button {
    position: absolute;
    top: 0;
    right: 0;
    color: #002147;
}

#blogs .blog-sidebar .categories-container {
    margin-bottom: 3rem;
}

#blogs .blog-sidebar .categories-container .categories-list {
    list-style: none;
    padding: 0;
}

#blogs .blog-sidebar .categories-container .categories-list .category-item {
    text-transform: uppercase;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #666;
    font-size: .8rem;
    padding: .7rem;
    border-bottom: 1px solid #e1e1e1;
}

#blogs .blog-sidebar .categories-container .categories-list .category-item:first-of-type {
    margin-top: 0;
}

#blogs .blog-sidebar .categories-container .categories-list .category-item * {
    margin: 0;
}

.blog-category-bar {
    display: none;
}

@media (max-width: 575.98px) {
    .blog-category-bar {
        display: block;
        padding: 1rem 0;
        border-bottom: 1px solid #e7e7e7;
    }

    .filter-bar {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .filter-bar .category-aria {
        display: flex;
        flex-direction: column;
    }

    .filter-bar .category-aria a {
        color: #454851;
        text-decoration: underline;
        text-transform: uppercase;
    }

    .filter-bar .category-aria p {
        margin: 0;
        font-size: .8rem;
        padding-left: .4rem;
    }

    .filter-bar .category-aria p span {
        padding-left: .4rem;
    }

    .filter-bar .search-aria {
        flex-grow: 2;
        margin-left: .3rem;
        display: flex;
        justify-content: flex-end;
        overflow: hidden;
    }

    .filter-bar .search-aria .search-icon {
        color: #fff;
        background-color: #fdc800;
        height: calc(1.5em + .75rem + 2px);
        width: 2.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        z-index: 99;
        cursor: pointer;
    }

    .filter-bar .search-aria form {
        z-index: 9;
        transform: translateX(200%);
        opacity: 0;
        transition: opacity 150ms ease-in-out 150ms, transform 300ms ease-in-out;
    }

    .filter-bar .search-aria form.show {
        opacity: 1;
        transform: translateX(15%);
    }

    .filter-bar .search-aria form input {
        width: 80%;
        border-radius: 15px;
        border: 2px solid #fdc800;
    }

    .filter-bar .search-aria form input:hover {
        border-color: #fdc800;
        box-shadow: none;
    }

    .filter-bar .search-aria form input:focus {
        border-color: #fdc800;
        box-shadow: none;
    }

    .filter-bar .search-aria .form-group {
        margin: 0;
    }

    .categories-container {
        margin-bottom: 1rem;
    }

    .categories-container .categories-list {
        list-style: none;
        padding: 0;
    }

    .categories-container .categories-list .category-item {
        text-transform: uppercase;
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #666;
        font-size: .8rem;
        padding: .7rem;
        border-bottom: 1px solid #e1e1e1;
    }

    .categories-container .categories-list .category-item:first-of-type {
        margin-top: 0;
    }

    .categories-container .categories-list .category-item * {
        margin: 0;
    }

    #blogs .blog-flex {
        flex-direction: row-reverse;
    }

    #blogs .blogs-container {
        width: 100%;
        padding: 0;
    }

    #blogs .blogs-container .blog-item {
        flex-direction: column;
        margin: 0;
        border-bottom: 4px solid #e7e7e7;
        padding: 2rem 0;
    }

    #blogs .blogs-container .blog-item .image {
        flex-basis: 35%;
        margin-bottom: 1rem;
    }

    #blogs .blogs-container .blog-item .blog-details {
        flex-basis: 62%;
    }

    #blogs .blogs-container .blog-item .blog-details h6 {
        margin: 0;
        font-weight: bold;
        font-size: 1.2rem;
    }

    #blogs .blogs-container .blog-item .blog-details .post-date .divider {
        width: 60%;
    }

    #blogs .blogs-container .blog-item .blog-details .details {
        font-size: .8rem;
        line-height: 1.2;
        margin-bottom: .5rem;
    }

    #blogs .blogs-container .blog-item:last-of-type {
        border-bottom: none;
    }

    #blogs .blog-sidebar {
        display: none;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .blog-category-bar {
        display: block;
        padding: 1rem 0;
        border-bottom: 1px solid #e7e7e7;
    }

    .filter-bar {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }

    .filter-bar .category-aria {
        display: flex;
        flex-direction: column;
    }

    .filter-bar .category-aria a {
        color: #454851;
        text-decoration: underline;
        text-transform: uppercase;
    }

    .filter-bar .category-aria p {
        margin: 0;
        font-size: .8rem;
        padding-left: .4rem;
    }

    .filter-bar .category-aria p span {
        padding-left: .4rem;
    }

    .filter-bar .search-aria {
        flex-grow: 2;
        margin-left: .3rem;
        display: flex;
        justify-content: flex-end;
        overflow: hidden;
    }

    .filter-bar .search-aria .search-icon {
        color: #fff;
        background-color: #fdc800;
        height: calc(1.5em + .75rem + 2px);
        width: 2.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        z-index: 99;
        cursor: pointer;
    }

    .filter-bar .search-aria form {
        z-index: 9;
        transform: translateX(200%);
        opacity: 0;
        transition: opacity 150ms ease-in-out 150ms, transform 300ms ease-in-out;
    }

    .filter-bar .search-aria form.show {
        opacity: 1;
        transform: translateX(5%);
    }

    .filter-bar .search-aria form input {
        width: 90%;
        border-radius: 15px;
        border: 2px solid #fdc800;
    }

    .filter-bar .search-aria form input:hover {
        border-color: #fdc800;
        box-shadow: none;
    }

    .filter-bar .search-aria form input:focus {
        border-color: #fdc800;
        box-shadow: none;
    }

    .filter-bar .search-aria .form-group {
        margin: 0;
    }

    .categories-container .categories-list {
        list-style: none;
        padding: 0;
        /*& > li {
        flex-basis: 50%;
      }*/
    }

    .categories-container .categories-list .category-item {
        text-transform: uppercase;
        display: flex;
        justify-content: space-between;
        align-items: center;
        color: #666;
        font-size: .8rem;
        padding: .7rem;
        border-bottom: 1px solid #e1e1e1;
    }

    .categories-container .categories-list .category-item:first-of-type {
        margin-top: 0;
    }

    .categories-container .categories-list .category-item * {
        margin: 0;
    }

    #blogs .blogs-container {
        width: 100%;
        padding: 0;
    }

    #blogs .blogs-container .blog-item {
        margin: 0;
        border-bottom: 4px solid #e7e7e7;
        padding: 2rem 0;
    }

    #blogs .blogs-container .blog-item .image {
        flex-basis: 35%;
    }

    #blogs .blogs-container .blog-item .blog-details {
        flex-basis: 62%;
        padding: 0;
    }

    #blogs .blogs-container .blog-item .blog-details h6 {
        margin: 0;
        font-weight: bold;
        font-size: .9rem;
    }

    #blogs .blogs-container .blog-item .blog-details .post-date .divider {
        width: 60%;
    }

    #blogs .blogs-container .blog-item .blog-details .details {
        font-size: .8rem;
        line-height: 1.2;
        margin-bottom: .5rem;
    }

    #blogs .blogs-container .blog-item:last-of-type {
        border-bottom: none;
    }

    #blogs .blog-sidebar {
        display: none;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #blogs .blogs-container {
        width: 70%;
    }

    #blogs .blogs-container .blog-item .blog-details {
        padding: 0;
    }

    #blogs .blogs-container .blog-item .blog-details h6 {
        margin: 0 0 0.1rem;
        font-size: 1.2rem;
    }

    #blogs .blogs-container .blog-item .blog-details .post-date {
        margin: 0 0 0.1rem;
    }

    #blogs .blogs-container .blog-item .blog-details .post-date p {
        padding: 0;
    }

    #blogs .blogs-container .blog-item .blog-details .details {
        font-size: .8rem;
        line-height: 1.3;
    }

    #blogs .blog-sidebar {
        width: 25%;
    }
}

.comparison-table.school-compare {
    width: 100%;
}

.comparison-table.school-compare .border-bottom {
    border-bottom: 1px solid #888888;
}

.comparison-table.school-compare .summary-row .summary-item {
    padding: 1rem 0 0 !important;
    border-bottom: 1px solid #bbb !important;
}

.comparison-table.school-compare .summary-row .summary-item .summary-title {
    font-size: 1.2rem !important;
    font-weight: bold;
}

.comparison-table.school-compare .summary-row .comparison-item {
    border-bottom: 1px solid #e1e1e1;
}

.comparison-table.school-compare .image-row .comparison-item {
    padding: 3rem 1rem 0 !important;
    border-bottom: 0 !important;
}

.comparison-table.school-compare .position-row .comparison-item {
    padding: 0 !important;
}

.comparison-table.school-compare .position-row .position-details {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.comparison-table.school-compare .position-row .position-details .shape {
    width: 20px;
    height: 20px;
}

.comparison-table.school-compare .position-row .position-details .shape.first {
    background-color: #9cc93a;
}

.comparison-table.school-compare .position-row .position-details .shape.second {
    background-color: #fdc800;
}

.comparison-table.school-compare .position-row .position-details .shape.third {
    background-color: #f4671f;
}

.comparison-table.school-compare .position-row .position-details .text {
    margin-top: .2rem;
    font-size: 1rem;
    color: #222;
}

.comparison-table.school-compare .ranking-list {
    width: 100%;
    list-style: none;
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    align-items: stretch;
}

.comparison-table.school-compare .description {
    padding: 0 2rem !important;
}

.comparison-table.school-compare .comparison-row {
    display: flex;
    flex-direction: row;
    justify-content: space-evenly;
    flex-wrap: nowrap;
    align-items: stretch;
}

.comparison-table.school-compare .comparison-row.position-row .comparison-item:first-of-type, .comparison-table.school-compare .comparison-row.name-row .comparison-item:first-of-type {
    border-bottom: 0;
}

.comparison-table.school-compare .comparison-row .comparison-item {
    flex-basis: calc(85% / 3);
    text-align: center;
    border-right: 1px solid #e1e1e1;
    font-size: .8rem;
    color: #4d4d4d;
    display: flex;
    justify-content: center;
    padding: 1rem 0;
}

.comparison-table.school-compare .comparison-row .comparison-item:first-of-type {
    flex-basis: 15%;
    border-bottom: 1px solid #eeeeee;
    padding-right: 1rem;
    color: #000;
    font-size: .9rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.comparison-table.school-compare .comparison-row .comparison-item:first-of-type p {
    font-weight: bold;
}

.comparison-table.school-compare .comparison-row .comparison-item:last-of-type {
    border-right: none;
}

.comparison-table.school-compare .comparison-row .comparison-item > * {
    width: 100%;
}

.comparison-table.school-compare .comparison-row .comparison-item h6 {
    color: #000;
}

.comparison-table.school-compare .comparison-row .comparison-item .availability-image {
    width: 10%;
    margin: 0 auto;
}

.comparison-table.school-compare .comparison-row .comparison-item .availability-image img {
    width: 100%;
}

.comparison-table.school-compare .comparison-row .comparison-item strong {
    font-size: .9rem;
    color: #000;
}

.comparison-table.school-compare .comparison-row .comparison-item * {
    margin: 0;
    padding: 0;
}

.comparison-table.school-compare .comparison-row .comparison-item .school-image {
    width: 100%;
    padding: 3rem 2rem 1rem;
}

.comparison-table.school-compare .comparison-row .comparison-item .school-image img {
    width: 100%;
    border-radius: 15px;
    box-shadow: 2px 2px 3px rgba(60, 53, 51, 0.1);
}

.comparison-table.school-compare .comparison-row .comparison-item .caption {
    text-align: center;
    color: #1d2331;
    font-size: 1.3rem;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0 1rem 1rem;
    border-bottom: #fdc800 solid 3px;
    /*&::after {
          position: absolute;
          content: "";
          bottom: 0;
          height: 3px;
          left: 20%;
          right: 20%;
          background-color: $secondary-color;
        }*/
}

.comparison-table.school-compare .details-with-position-badge {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.comparison-table.school-compare .details-with-position-badge .badge {
    padding: .4rem 1rem;
    border-radius: 20px;
    width: calc(27px + 2rem);
    text-align: center;
    font-size: .9rem;
    margin-bottom: .5rem;
}

.comparison-table.school-compare .details-with-position-badge .badge.first {
    background-color: #9cc93a;
    color: #fff;
}

.comparison-table.school-compare .details-with-position-badge .badge.second {
    background-color: #fdc800;
    color: #222;
}

.comparison-table.school-compare .details-with-position-badge .badge.third {
    background-color: #f4671f;
    color: #fff;
}

@media (max-width: 575.98px) {
    .comparison-table.school-compare .comparison-header {
        border-bottom: 1px solid #bbb;
        background-color: #fff;
        transition: all 300ms ease-in-out;
    }

    .comparison-table.school-compare .comparison-header.sticky {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 999;
    }

    .comparison-table.school-compare .image-row .comparison-item {
        padding: 1rem .5rem !important;
    }

    .comparison-table.school-compare .image-row .comparison-item:first-of-type {
        display: none;
    }

    .comparison-table.school-compare .name-row .comparison-item {
        padding: 0 0 .2rem !important;
    }

    .comparison-table.school-compare .name-row .comparison-item:first-of-type {
        display: none;
    }

    .comparison-table.school-compare .name-row .comparison-item .caption {
        margin: 0;
        font-size: .8rem;
        padding-bottom: .5rem;
    }

    .comparison-table.school-compare .position-row .position-details {
        padding: 1rem 0;
    }

    .comparison-table.school-compare .summary-row > :not(.summary-item) {
        display: none;
    }

    .comparison-table.school-compare .summary-row .summary-item {
        flex-basis: 100%;
        padding: 1rem .5rem !important;
        background-color: #e7e7e7 !important;
    }

    .comparison-table.school-compare .summary-row .summary-item .summary-title {
        font-size: 1.5rem !important;
    }

    .comparison-table.school-compare .ranking-list {
        justify-content: center;
        flex-wrap: wrap;
    }

    .comparison-table.school-compare .ranking-list > li, .comparison-table.school-compare .ranking-list > div, .comparison-table.school-compare .ranking-list > .ranking-item {
        margin-bottom: 1rem !important;
        flex-basis: 100%;
    }

    .comparison-table.school-compare .ranking-list > li:last-of-type, .comparison-table.school-compare .ranking-list > div:last-of-type, .comparison-table.school-compare .ranking-list > .ranking-item:last-of-type {
        margin: 0 !important;
    }

    .comparison-table.school-compare .comparison-row {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .comparison-table.school-compare .comparison-row .comparison-item {
        flex-basis: calc(100% / 3);
        padding: 1rem .5rem;
    }

    .comparison-table.school-compare .comparison-row .comparison-item:first-of-type {
        font-size: 1.1rem;
        flex-basis: 100%;
        border-right: 0;
    }

    .comparison-table.school-compare .comparison-row .comparison-item .heading, .comparison-table.school-compare .comparison-row .comparison-item #school-details-page .school-card .card-title, #school-details-page .school-card .comparison-table.school-compare .comparison-row .comparison-item .card-title {
        width: initial;
        background-color: #fdc800;
        padding: .4rem 1rem;
        border-radius: 15px;
    }

    .comparison-table.school-compare .comparison-row .comparison-item .school-image {
        padding: 0;
    }

    .comparison-table.school-compare .comparison-row .comparison-item .availability-image {
        width: 25%;
    }

    .comparison-table.school-compare .description {
        padding: 0 !important;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .comparison-table.school-compare {
        /*.comparison-row {
      flex-direction: column;

      .comparison-item {

        &:first-of-type {
          font-size: 1.1rem;
          //background-color: $grey;
        }
      }
    }*/
    }

    .comparison-table.school-compare .comparison-header {
        border-bottom: 1px solid #bbb;
        background-color: #fff;
        transition: all 300ms ease-in-out;
    }

    .comparison-table.school-compare .comparison-header.sticky {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 999;
    }

    .comparison-table.school-compare .image-row .comparison-item {
        padding: 1rem .5rem !important;
    }

    .comparison-table.school-compare .image-row .comparison-item:first-of-type {
        display: none;
    }

    .comparison-table.school-compare .name-row .comparison-item {
        padding: 0 0 .2rem !important;
    }

    .comparison-table.school-compare .name-row .comparison-item:first-of-type {
        display: none;
    }

    .comparison-table.school-compare .name-row .comparison-item .caption {
        margin: 0;
        font-size: .8rem;
    }

    .comparison-table.school-compare .position-row .position-details {
        padding: 1rem 0;
    }

    .comparison-table.school-compare .summary-row > :not(.summary-item) {
        display: none;
    }

    .comparison-table.school-compare .summary-row .summary-item {
        flex-basis: 100%;
        padding: 1rem .5rem !important;
        background-color: #e7e7e7 !important;
    }

    .comparison-table.school-compare .summary-row .summary-item .summary-title {
        font-size: 1.5rem !important;
    }

    .comparison-table.school-compare .ranking-list {
        justify-content: center;
        flex-wrap: wrap;
    }

    .comparison-table.school-compare .ranking-list > li, .comparison-table.school-compare .ranking-list > div, .comparison-table.school-compare .ranking-list > .ranking-item {
        margin-bottom: 1rem !important;
        flex-basis: 100%;
    }

    .comparison-table.school-compare .ranking-list > li:last-of-type, .comparison-table.school-compare .ranking-list > div:last-of-type, .comparison-table.school-compare .ranking-list > .ranking-item:last-of-type {
        margin: 0 !important;
    }

    .comparison-table.school-compare .comparison-row {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .comparison-table.school-compare .comparison-row .comparison-item {
        flex-basis: calc(100% / 3);
        padding: 1rem .5rem;
    }

    .comparison-table.school-compare .comparison-row .comparison-item:first-of-type {
        font-size: 1.1rem;
        flex-basis: 100%;
        border-right: 0;
    }

    .comparison-table.school-compare .comparison-row .comparison-item .heading, .comparison-table.school-compare .comparison-row .comparison-item #school-details-page .school-card .card-title, #school-details-page .school-card .comparison-table.school-compare .comparison-row .comparison-item .card-title {
        width: initial;
        font-size: 1.5rem;
        background-color: #fdc800;
        padding: .4rem 1rem;
        border-radius: 15px;
    }

    .comparison-table.school-compare .comparison-row .comparison-item .school-image {
        padding: 0;
    }

    .comparison-table.school-compare .comparison-row .comparison-item .availability-image {
        width: 25%;
    }

    .comparison-table.school-compare .description {
        padding: 0 !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .comparison-table.school-compare .comparison-row .comparison-item .school-image {
        padding: 0;
    }

    .comparison-table.school-compare .school-image .caption {
        font-size: 1rem;
    }
}

#school-details-page .slick-list {
    overflow: hidden !important;
    padding: 0;
}

#school-details-page .heading, #school-details-page .school-card .card-title {
    color: #002147;
    position: relative;
    text-transform: none;
}

#school-details-page .heading::before, #school-details-page .school-card .card-title::before {
    width: 100px;
    bottom: 10px !important;
}

#school-details-page .school-card {
    box-shadow: 2px 2px 3px rgba(60, 53, 51, 0.1), -2px -2px 3px rgba(60, 53, 51, 0.1);
    padding: 1.2rem;
    margin: 1rem 0;
    overflow: hidden;
}

#school-details-page .school-card .card-title {
    font-size: 2rem;
    font-weight: bold;
}

#school-details-page .school-card .card-title::before {
    bottom: 0;
}

#school-details-page .school-card .card-content {
    padding: 0 .7rem;
    font-size: 1rem;
}

#school-details-page .school-card .card-content ul {
    list-style: none;
    padding: 0;
    margin-bottom: 0;
}

#school-details-page .school-card .card-content ul li {
    display: flex;
    width: 100%;
    font-size: 1.1rem;
    margin-bottom: .4rem;
}

#school-details-page .school-card .card-content ul li .title {
    flex-basis: 35% !important;
}

#school-details-page .school-card .card-content ul li .title-response {
    flex-basis: 65%;
}

#school-details-page .school-card .card-content .title {
    font-weight: bold;
}

#school-details-page .school-card.no-shadow {
    box-shadow: none;
}

#school-details-page .slick-dots {
    bottom: 25px;
}

#school-details-page .slick-dots li button::before {
    font-size: 10px;
    color: #fff;
}

#school-details-page .school-details-header .image-carousel {
   width:60%;
   margin-top:-28px;
    z-index: 100;
     box-shadow: 2px 2px 10px rgba(60, 53, 51, 0.3), -2px -2px 10px rgba(60, 53, 51, 0.3);
}

#school-details-page .school-details-header .image-carousel img {
    width: 100%;
}

#school-details-page .school-details-header .school-details .headings {
    margin-bottom: 1rem;
}

#school-details-page .school-details-header .school-details .school-name {
    color: #002147;
    font-weight: bold;
}

#school-details-page .school-details-header .school-details .school-location {
    color: #002147;
    position: relative;
}

#school-details-page .school-details-header .school-details .school-location::before {
    content: "";
    position: absolute;
    left: -2px;
    bottom: -5px;
    width: 100px;
    height: 4px;
    background-color: #fdc800;
}

#school-details-page .school-details-header .school-details .buttons-container {
    width: 80%;
    margin-top: 3rem;
    display: flex;
    justify-content: space-around;
}

#school-details-page .school-details-header .school-details .buttons-container .btn-round-secondary, #school-details-page .school-details-header .school-details .buttons-container .schools-list .school-card .details-option .details-buttons .btn-details, .schools-list .school-card .details-option .details-buttons #school-details-page .school-details-header .school-details .buttons-container .btn-details {
    font-size: .8rem;
    font-weight: bold;
    padding: .2rem .3rem;
    letter-spacing: 1px;
}

#school-details-page .school-details-content .school-info {
    width: 93%;
    margin-top:-2rem;
}

#school-details-page .school-details-content .school-info .title {
    color: #002147;
}

#school-details-page .school-details-content .school-info .title-response {
    color: #222;
}

#school-details-page .school-details-content .school-ranking, #school-details-page .school-details-content .school-rating {
    width: 80%;
    margin-top:-2rem;
}

#school-details-page .school-details-content .school-ranking .title, #school-details-page .school-details-content .school-rating .title {
    flex-basis: 50% !important;
}

#school-details-page .school-details-content .school-ranking .star-rating, #school-details-page .school-details-content .school-rating .star-rating {
    font-size: .8rem;
}

#school-details-page .school-details-content .school-features .feature-row {
    display: flex;
    justify-content: space-evenly;
    padding-bottom: .5rem;
    border-bottom: 1px solid #eeeeee;
    margin-top: 2rem;
    box-shadow: 2px 7px 10px -2px rgba(60, 53, 51, 0.1);
}

#school-details-page .school-details-content .school-features .feature-row .feature-item {
    flex-basis: 30%;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: .666rem;
    text-align: center;
    color: #000;
}

#school-details-page .school-details-content .school-features .feature-row .feature-item figure {
    margin-bottom: .5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#school-details-page .school-details-content .school-features .feature-row .feature-item figure img {
    width: 40%;
}

#school-details-page .school-details-content .school-features .feature-row .feature-item figcaption {
    font-size: 1.1rem;
    color: #002147;
    font-weight: bold;
    margin-top: .3rem;
}

#school-details-page .school-details-content .school-features .feature-row .feature-item .text {
    font-size: .666rem;
}

#school-details-page .school-details-content .school-features .feature-row .feature-item .star-rating-container {
    font-size: .6rem;
}

#school-details-page .school-details-content .school-features .feature-row .feature-item .star-rating-container i {
    font-size: .45rem;
}

#school-details-page .school-details-content .school-features .feature-row .feature-item .more-link {
    background-color: #002147;
    font-size: .666rem;
    color: #fff;
    padding: 0 .2rem;
    border-radius: 3px;
    margin-top: .3rem;
}

#school-details-page .school-details-content .basic-params .param-item {
    border: 1px solid #c8c8c8;
    font-size: .6rem;
    color: #454851;
    display: flex;
}

#school-details-page .school-details-content .basic-params .param-item .image {
    flex-basis: 40%;
    padding: .5rem;
}

#school-details-page .school-details-content .basic-params .param-item .image img {
    width: 100%;
}

#school-details-page .school-details-content .basic-params .param-item .content {
    flex-basis: 60%;
}

#school-details-page .school-details-content .basic-params .param-item .param-title {
    font-size: 1.2rem;
    color: #002147;
    font-weight: bold;
}

#school-details-page .school-details-content .basic-params .param-item .link-container {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    padding-right: .4rem;
}

#school-details-page .school-details-content .basic-params .more-link {
    background-color: #002147;
    font-size: .666rem;
    color: #fff;
    padding: 0 .2rem;
    border-radius: 3px;
    margin: .3rem 0;
}

@media (max-width: 575.98px) {
    #school-details-page {
        border-bottom: none;
    }

    #school-details-page .school-card .card-content ul li {
        justify-content: space-between;
    }

    #school-details-page .school-details-header .image-carousel {
        margin: auto;
        border: 5px solid #fff;
        box-shadow: 2px 2px 10px rgba(60, 53, 51, 0.3), -2px -2px 10px rgba(60, 53, 51, 0.3);
    }

    #school-details-page .school-details-header .school-details {
        padding-bottom: 2rem;
        border-bottom: 4px solid #e7e7e7;
    }

    #school-details-page .school-details-header .school-details .school-name {
       margin-top:1rem;
    }

    #school-details-page .school-details-header .school-details .school-location {
        margin-bottom: 2rem;
    }

    #school-details-page .school-details-header .school-details .buttons-container {
        width: 100%;
    }

    #school-details-page .school-details-header .school-details .buttons-container .btn-round-secondary, #school-details-page .school-details-header .school-details .buttons-container .schools-list .school-card .details-option .details-buttons .btn-details, .schools-list .school-card .details-option .details-buttons #school-details-page .school-details-header .school-details .buttons-container .btn-details {
        padding: .3rem .5rem;
    }

    #school-details-page .school-details-content .school-card .card-content ul li .title {
        flex-basis: 50% !important;
    }

    #school-details-page .school-details-content .school-card .card-content ul li .title-response {
        flex-basis: 45%;
    }

    #school-details-page .school-details-content .school-info-container {
        order: 2;
    }

    #school-details-page .school-details-content .school-ranking-container {
        order: 1;
    }

    #school-details-page .school-details-content .school-features-container {
        order: 3;
    }

    #school-details-page .school-details-content .school-basic-params-container {
        order: 4;
    }

    #school-details-page .school-details-content .school-info {
        width: 100%;
    }

    #school-details-page .school-details-content .school-ranking, #school-details-page .school-details-content .school-rating {
        width: 100%;
    }

    #school-details-page .school-details-content .basic-params .param-item {
        flex-direction: column;
    }

    #school-details-page .school-details-content .basic-params .content {
        padding: 0 .5rem;
    }

    #school-details-page .school-details-content .basic-params .more-link {
        font-size: .8rem;
        padding: 0 .5rem;
        border-radius: 20px;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #school-details-page .school-details-header .image-carousel {
        margin:auto ;
        border: 5px solid #fff;
        box-shadow: 2px 2px 10px rgba(60, 53, 51, 0.3), -2px -2px 10px rgba(60, 53, 51, 0.3);
    }

    #school-details-page .school-details-header .school-details .school-name {
        margin: 0 0 1rem 0;
    }

    #school-details-page .school-details-header .school-details .school-location {
        margin-bottom: 2rem;
    }

    #school-details-page .school-details-header .school-details .buttons-container {
        width: 100%;
    }

    #school-details-page .school-details-header .school-details .buttons-container .btn-round-secondary, #school-details-page .school-details-header .school-details .buttons-container .schools-list .school-card .details-option .details-buttons .btn-details, .schools-list .school-card .details-option .details-buttons #school-details-page .school-details-header .school-details .buttons-container .btn-details {
        padding: .3rem .5rem;
    }

    #school-details-page .school-details-content .school-info-container {
        order: 2;
    }

    #school-details-page .school-details-content .school-ranking-container {
        order: 1;
    }

    #school-details-page .school-details-content .school-features-container {
        order: 3;
    }

    #school-details-page .school-details-content .school-basic-params-container {
        order: 4;
    }

    #school-details-page .school-details-content .school-info {
        width: 100%;
    }

    #school-details-page .school-details-content .school-ranking, #school-details-page .school-details-content .school-rating {
        width: 100%;
    }

    #school-details-page .school-details-content .basic-params .param-item {
        flex-direction: column;
    }

    #school-details-page .school-details-content .basic-params .content {
        padding: 0 .5rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #school-details-page {
        padding: 2rem 0;
    }

    #school-details-page .school-card .card-content ul li {
        margin-bottom: .6rem;
    }

    #school-details-page .school-card .card-content ul li .title {
        flex-basis: 60% !important;
    }

    #school-details-page .school-card .card-content ul li .title-response {
        flex-basis: 40% !important;
    }

    #school-details-page .school-info .card-content ul li {
        margin-bottom: .6rem;
    }

    #school-details-page .school-info .card-content ul li .title {
        flex-basis: 50% !important;
    }

    #school-details-page .school-info .card-content ul li .title-response {
        flex-basis: 50% !important;
    }

    #school-details-page .school-details-header .image-carousel {
        margin-top: 0;
    }

    #school-details-page .school-details-header .school-details .school-name {
        margin: 0 0 1rem 0;
    }

    #school-details-page .school-details-header .school-details .school-location {
        margin-bottom: 2rem;
    }

    #school-details-page .school-details-header .school-details .buttons-container {
        width: 100%;
    }

    #school-details-page .school-details-header .school-details .buttons-container .btn-round-secondary, #school-details-page .school-details-header .school-details .buttons-container .schools-list .school-card .details-option .details-buttons .btn-details, .schools-list .school-card .details-option .details-buttons #school-details-page .school-details-header .school-details .buttons-container .btn-details {
        padding: .3rem .5rem;
    }

    #school-details-page .school-details-content .school-info {
        width: 100%;
    }

    #school-details-page .school-details-content .school-ranking, #school-details-page .school-details-content .school-rating {
        width: 100%;
    }

    #school-details-page .school-details-content .basic-params .param-item {
        flex-direction: column;
    }

    #school-details-page .school-details-content .basic-params .content {
        padding: 0 .5rem;
    }

    #school-details-page .star-rating {
        line-height: 2;
    }
}

#school-details-page .extra-info-container .extra-info-image-slider {
    margin-bottom: 1.5rem;
}

#school-details-page .extra-info-container .extra-info-image-slider .image-item {
    border: 8px solid #fff;
    box-shadow: 2px 2px 3px rgba(60, 53, 51, 0.1), -2px -2px 3px rgba(60, 53, 51, 0.1);
}

#school-details-page .extra-info-container .extra-info-details {
    overflow: hidden;
    /* width */
    /* Track */
    /* Handle */
    /* Handle on hover */
}

#school-details-page .extra-info-container .extra-info-details ::-webkit-scrollbar {
    width: 4px;
    margin-right: 1rem;
}

#school-details-page .extra-info-container .extra-info-details ::-webkit-scrollbar-track {
    background: #d5d5d5;
}

#school-details-page .extra-info-container .extra-info-details ::-webkit-scrollbar-thumb {
    background: #fdc800;
}

#school-details-page .extra-info-container .extra-info-details ::-webkit-scrollbar-thumb:hover {
    background: #977700;
}

#school-details-page .extra-info-container .extra-info-details .main-heading-style, #school-details-page .extra-info-container .extra-info-details .heading, #school-details-page .extra-info-container .extra-info-details .school-card .card-title, #school-details-page .school-card .extra-info-container .extra-info-details .card-title, #school-details-page .extra-info-container .extra-info-details #about-page .content .alternate-heading, #about-page .content #school-details-page .extra-info-container .extra-info-details .alternate-heading, #school-details-page .extra-info-container .extra-info-details #gallery-page .title, #gallery-page #school-details-page .extra-info-container .extra-info-details .title, #school-details-page .extra-info-container .extra-info-details #gallery-inner .title, #gallery-inner #school-details-page .extra-info-container .extra-info-details .title {
    text-transform: none;
    margin-bottom: 1rem;
}

#school-details-page .extra-info-container .extra-info-details .main-heading-style::before, #school-details-page .extra-info-container .extra-info-details .heading::before, #school-details-page .extra-info-container .extra-info-details .school-card .card-title::before, #school-details-page .school-card .extra-info-container .extra-info-details .card-title::before, #school-details-page .extra-info-container .extra-info-details #about-page .content .alternate-heading::before, #about-page .content #school-details-page .extra-info-container .extra-info-details .alternate-heading::before, #school-details-page .extra-info-container .extra-info-details #gallery-page .title::before, #gallery-page #school-details-page .extra-info-container .extra-info-details .title::before, #school-details-page .extra-info-container .extra-info-details #gallery-inner .title::before, #gallery-inner #school-details-page .extra-info-container .extra-info-details .title::before {
    width: 200px;
}

#school-details-page .extra-info-container .rating-details-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    margin-bottom: 1.5rem;
}

#school-details-page .extra-info-container .rating-details {
    width: 100%;
    display: flex;
    justify-content: space-around;
    margin-bottom: .3rem;
}

#school-details-page .extra-info-container .rating-details .title {
    flex-basis: 40%;
}

#school-details-page .extra-info-container .rating-details .star-rating {
    flex-basis: 60%;
}

#school-details-page .extra-info-container .rating-details .title {
    text-align: left;
}

#school-details-page .extra-info-content, #school-details-page .extra-icon-content {
    margin-bottom: 1.5rem;
}

#school-details-page .extra-info-content .main-heading-style, #school-details-page .extra-icon-content .main-heading-style, #school-details-page .extra-info-content .heading, #school-details-page .extra-icon-content .heading, #school-details-page .extra-info-content .school-card .card-title, #school-details-page .school-card .extra-info-content .card-title, #school-details-page .extra-icon-content .school-card .card-title, #school-details-page .school-card .extra-icon-content .card-title, #school-details-page .extra-info-content #about-page .content .alternate-heading, #about-page .content #school-details-page .extra-info-content .alternate-heading, #school-details-page .extra-icon-content #about-page .content .alternate-heading, #about-page .content #school-details-page .extra-icon-content .alternate-heading, #school-details-page .extra-info-content #gallery-page .title, #gallery-page #school-details-page .extra-info-content .title, #school-details-page .extra-icon-content #gallery-page .title, #gallery-page #school-details-page .extra-icon-content .title, #school-details-page .extra-info-content #gallery-inner .title, #gallery-inner #school-details-page .extra-info-content .title, #school-details-page .extra-icon-content #gallery-inner .title, #gallery-inner #school-details-page .extra-icon-content .title, #school-details-page .extra-info-content h3, #school-details-page .extra-icon-content h3 {
    font-size: 1.2rem;
    margin-bottom: .2rem;
}

#school-details-page .extra-info-content .main-heading-style::before, #school-details-page .extra-icon-content .main-heading-style::before, #school-details-page .extra-info-content .heading::before, #school-details-page .extra-icon-content .heading::before, #school-details-page .extra-info-content .school-card .card-title::before, #school-details-page .school-card .extra-info-content .card-title::before, #school-details-page .extra-icon-content .school-card .card-title::before, #school-details-page .school-card .extra-icon-content .card-title::before, #school-details-page .extra-info-content #about-page .content .alternate-heading::before, #about-page .content #school-details-page .extra-info-content .alternate-heading::before, #school-details-page .extra-icon-content #about-page .content .alternate-heading::before, #about-page .content #school-details-page .extra-icon-content .alternate-heading::before, #school-details-page .extra-info-content #gallery-page .title::before, #gallery-page #school-details-page .extra-info-content .title::before, #school-details-page .extra-icon-content #gallery-page .title::before, #gallery-page #school-details-page .extra-icon-content .title::before, #school-details-page .extra-info-content #gallery-inner .title::before, #gallery-inner #school-details-page .extra-info-content .title::before, #school-details-page .extra-icon-content #gallery-inner .title::before, #gallery-inner #school-details-page .extra-icon-content .title::before, #school-details-page .extra-info-content h3::before, #school-details-page .extra-icon-content h3::before {
    width: 90px;
    bottom: 5px;
}

#school-details-page .extra-info-content p, #school-details-page .extra-icon-content p, #school-details-page .extra-info-content .description, #school-details-page .extra-icon-content .description {
    margin: 0;
}

#school-details-page .extra-icon-container {
    height: 280px;
    overflow-y: auto;
}

#school-details-page .extra-icon-content {
    display: flex;
    align-items: center;
}

#school-details-page .extra-icon-content .image-icon {
    flex-basis: 16%;
}

#school-details-page .extra-icon-content .image-icon img {
    width: 100%;
}

#school-details-page .extra-icon-content .icon-details {
    flex-basis: calc(84% - 1rem);
    margin-left: 1rem;
    display: flex;
    align-items: flex-end;
}

#school-details-page .extra-icon-content .icon-details .checkbox-image {
    flex-basis: 6%;
}

#school-details-page .extra-icon-content .icon-details .checkbox-image img {
    width: 100%;
}

#school-details-page .extra-icon-content .icon-details h3 {
    flex-basis: calc(94% - 1rem);
    margin-left: 1rem;
    margin-bottom: 0;
}

#about-page .content {
    overflow: hidden;
}

#about-page .content .heading, #about-page .content #school-details-page .school-card .card-title, #school-details-page .school-card #about-page .content .card-title {
    color: #454851;
    font-size: 2.2rem;
}

#about-page .content .heading::before, #about-page .content #school-details-page .school-card .card-title::before, #school-details-page .school-card #about-page .content .card-title::before {
    left: 105%;
}

#about-page .content .alternate-heading {
    color: #454851;
    font-size: 2.2rem;
    text-align: center;
    width: 100%;
    margin-bottom: 2.5rem;
}

#about-page .content .alternate-heading::before {
    left: 33.3%;
    width: 33.3%;
    bottom: -10px;
}

#about-page .content .description {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.2;
}

#about-page .what-we-do {
    margin-top: 3rem;
}

#about-page .about-image {
    box-shadow: 14px 13px 20px rgba(0, 0, 0, 0.1), -14px -13px 20px rgba(0, 0, 0, 0.1);
}

#about-page .about-image img {
    border: 10px white solid;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1), -2px -2px 3px rgba(0, 0, 0, 0.1);
}

#about-page .content-item {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 100%;
    text-align: center;
    margin-top: 4rem;
}

#about-page .content-item > * {
    flex-basis: 100%;
}

#about-page .content-item .content-image {
    text-align: center;
    width: 33.3%;
    margin: 0 auto;
}

#about-page .content-item .heading, #about-page .content-item #school-details-page .school-card .card-title, #school-details-page .school-card #about-page .content-item .card-title {
    font-weight: bold;
    margin-bottom: 2rem;
}

#about-page .content-item .description {
    font-size: .8rem;
}

@media (max-width: 575.98px) {
    #about-page {
        padding: 2rem 0;
    }

    #about-page .about-image {
        margin-top: 3rem;
    }

    #about-page .description {
        font-size: .9rem;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #about-page {
        padding: 2rem 0;
    }

    #about-page .about-image {
        margin-top: 3rem;
    }
}

.custom-modal .modal-body {
    padding: 1rem 2rem;
}

.custom-modal .action-modal {
    max-width: 340px;
}

.custom-modal .modal-content {
    border-radius: 1rem;
}

.custom-modal .modal-header-with-logo {
    width: 100%;
    position: relative;
}

.custom-modal .modal-header-with-logo .modal-logo {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.custom-modal .modal-header-with-logo .modal-close-button {
    position: absolute;
    right: -25px;
    top: -15px;
}

.custom-modal .modal-header-with-logo .modal-close-button button {
    font-size: 2rem;
    font-weight: normal;
}

.custom-modal .modal-header {
    border-bottom: 0;
}

.custom-modal .modal-footer {
    border-top: 0;
}

.custom-modal .modal-body-with-content p {
    margin: 0;
    font-size: .8rem;
}

.custom-modal .modal-body-with-content h3 {
    margin: 1.2rem 0 1.5rem;
}

.custom-modal .modal-body-with-content input, .custom-modal .modal-body-with-content select {
    border-radius: 1.4rem;
    font-size: .8rem;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.1), -2px -2px 3px rgba(0, 0, 0, 0.1);
}

.custom-modal .modal-body-with-content input:hover, .custom-modal .modal-body-with-content input:focus, .custom-modal .modal-body-with-content select:hover, .custom-modal .modal-body-with-content select:focus {
    border-radius: 1rem;
    border: 1px solid lightblue;
    box-shadow: 0 0 11px lightblue;
}

.custom-modal .modal-body-with-content select {
    -moz-appearance: none;
    /* Firefox */
    -webkit-appearance: none;
    /* Safari and Chrome */
    appearance: none;
    position: relative;
}

.custom-modal .modal-body-with-content .btn-round-primary {
    text-transform: none;
    border-radius: 1.4rem;
    width: 100%;
}

.custom-modal .modal-body-with-content .remember-me-and-forgot {
    margin: 1.5rem 0 1rem;
    display: flex;
    justify-content: space-between;
    font-size: .8rem;
}

.custom-modal .modal-body-with-content .remember-me-and-forgot * {
    color: #454851;
}

.custom-modal .modal-body-with-content .remember-me-and-forgot .form-group {
    margin: 0;
}

.custom-modal .modal-body-with-content .remember-me-and-forgot label {
    margin: 0;
}

.custom-modal .modal-body-with-content .pink {
    color: #f07b73;
}

@media (max-width: 575.98px) {
    .custom-modal .modal-dialog {
        max-width: 100%;
    }
}

#bde-form #school-details-page .heading, #school-details-page #bde-form .heading, #bde-form #school-details-page .school-card .card-title, #school-details-page .school-card #bde-form .card-title, #bde-form #about-page .content .heading, #about-page .content #bde-form .heading, #bde-form #about-page .content .alternate-heading, #about-page .content #bde-form .alternate-heading, #bde-form .main-heading-style, #bde-form #gallery-page .title, #gallery-page #bde-form .title, #bde-form #gallery-inner .title, #gallery-inner #bde-form .title, #bde-form #faq-page .heading, #faq-page #bde-form .heading, #bde-form #notification-page .heading, #notification-page #bde-form .heading {
    font-size: 2rem;
    text-transform: none;
    margin-bottom: 2rem;
}

#bde-form .special-inside-icon input {
    width: 175px;
}

#bde-form .special-inside-icon i {
    right: 185px;
}

#bde-form #datepicker {
    width: 276px;
}

#bde-form .special-inside-icon .input-group {
    width: 276px;
}

#bde-form .special-inside-icon input {
    width: 276px;
}

#bde-form .special-inside-icon i {
    right: 40%;
}

@media (max-width: 575.98px) {
    #bde-form .special-inside-icon .input-group {
        width: 100% !important;
    }

    #bde-form .special-inside-icon input {
        width: 100%;
    }

    #bde-form .special-inside-icon i {
        right: 10px;
    }

    #bde-form #datepicker {
        width: 100%;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #bde-form .special-inside-icon .input-group {
        width: 100%;
    }

    #bde-form .special-inside-icon input {
        width: 100%;
    }

    #bde-form .special-inside-icon i {
        right: 10px;
    }

    #bde-form #datepicker {
        width: 100%;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #bde-form .special-inside-icon .input-group {
        width: 100%;
    }

    #bde-form .special-inside-icon input {
        width: 100%;
    }

    #bde-form .special-inside-icon i {
        right: 10px;
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    #bde-form .special-inside-icon i {
        right: 30%;
    }
}

@media (max-width: 575.98px) {
    .contact-form {
        margin-top: 2rem;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .social-links .links-container li {
        flex-basis: 15%;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .social-links .links-container.contact-page a {
        margin: 0 0.5rem;
    }
}

#school-form #school-details-page .heading, #school-details-page #school-form .heading, #school-form #school-details-page .school-card .card-title, #school-details-page .school-card #school-form .card-title, #school-form #about-page .content .heading, #about-page .content #school-form .heading, #school-form #about-page .content .alternate-heading, #about-page .content #school-form .alternate-heading, #school-form .main-heading-style, #school-form #gallery-page .title, #gallery-page #school-form .title, #school-form #gallery-inner .title, #gallery-inner #school-form .title, #school-form #faq-page .heading, #faq-page #school-form .heading, #school-form #notification-page .heading, #notification-page #school-form .heading {
    font-size: 2rem;
    text-transform: none;
    margin-bottom: 2rem;
}

#student-form #school-details-page .heading, #school-details-page #student-form .heading, #student-form #school-details-page .school-card .card-title, #school-details-page .school-card #student-form .card-title, #student-form #about-page .content .heading, #about-page .content #student-form .heading, #student-form #about-page .content .alternate-heading, #about-page .content #student-form .alternate-heading, #student-form .main-heading-style, #student-form #gallery-page .title, #gallery-page #student-form .title, #student-form #gallery-inner .title, #gallery-inner #student-form .title, #student-form #faq-page .heading, #faq-page #student-form .heading, #student-form #notification-page .heading, #notification-page #student-form .heading {
    font-size: 2rem;
    text-transform: none;
    margin-bottom: 2rem;
}

#nsi {
    overflow: hidden;
}

#nsi #school-details-page .heading, #school-details-page #nsi .heading, #nsi #school-details-page .school-card .card-title, #school-details-page .school-card #nsi .card-title, #nsi #about-page .content .heading, #about-page .content #nsi .heading, #nsi #about-page .content .alternate-heading, #about-page .content #nsi .alternate-heading, #nsi .main-heading-style, #nsi #gallery-page .title, #gallery-page #nsi .title, #nsi #gallery-inner .title, #gallery-inner #nsi .title, #nsi #faq-page .heading, #faq-page #nsi .heading, #nsi #notification-page .heading, #notification-page #nsi .heading {
    font-size: 1.4rem;
    margin-bottom: 2rem;
    color: #222;
}

#nsi #school-details-page .heading::before, #school-details-page #nsi .heading::before, #nsi #school-details-page .school-card .card-title::before, #school-details-page .school-card #nsi .card-title::before, #nsi #about-page .content .heading::before, #about-page .content #nsi .heading::before, #nsi #about-page .content .alternate-heading::before, #about-page .content #nsi .alternate-heading::before, #nsi .main-heading-style::before, #nsi #gallery-page .title::before, #gallery-page #nsi .title::before, #nsi #gallery-inner .title::before, #gallery-inner #nsi .title::before, #nsi #faq-page .heading::before, #faq-page #nsi .heading::before, #nsi #notification-page .heading::before, #notification-page #nsi .heading::before {
    bottom: 5px;
    height: 2px;
}

#nsi .description {
    font-size: .9rem;
    color: #454851;
    line-height: 1.3;
}

#nsi .nsi-image {
    width: 100%;
    margin: 2rem 0 3rem;
}

#nsi .nsi-image svg {
    width: 100%;
}

#nsi .nsi-list ul {
    padding-inline-start: 20px;
}

#nsi .nsi-list li {
    list-style: none;
    margin-bottom: 2rem;
    position: relative;
}

#nsi .nsi-list li::before {
    content: "";
    position: absolute;
    top: 5px;
    left: -20px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #002147;
}

#nsi .nsi-list li img {
    width: 70%;
    margin-bottom: 1rem;
    box-shadow: 2px 2px 7px rgba(60, 53, 51, 0.4);
}

#nsi .nsi-list .nsi-item-header {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

#nsi .nsi-list .nsi-item-header .image {
    flex-basis: 100px;
    margin-right: 1rem;
}

#nsi .nsi-list .nsi-item-header .image img {
    height: 100px;
    width: 100px;
}

#nsi .nsi-list .nsi-item-header h3, #nsi .nsi-list .nsi-item-header .title {
    flex-basis: calc(100% - (100px + 1rem));
}

#nsi .nsi-list .nsi-item-header a {
    color: #454851;
}

#nsi .nsi-list .nsi-item-content .description {
    margin-bottom: 1rem;
}

@media (max-width: 575.98px) {
    #nsi .nsi-image {
        margin: 2rem 0 2rem;
    }
}

#gallery-page {
    margin: 2rem 0;
}

#gallery-page .title {
    font-size: 1.7rem;
    text-transform: none;
    margin-bottom: 1rem;
}

#gallery-page .title::before {
    bottom: 5px;
    height: 2px;
}

#gallery-page .title-alternate {
    font-size: 1.7rem;
    text-transform: none;
    margin-bottom: 1rem;
    color: #454851;
    text-shadow: none;
}

#gallery-page .title-alternate::before {
    height: 2px;
    background-color: #fdc800;
    left: calc(50% - 50px);
    right: calc(50% - 50px);
    bottom: -2px;
}

#gallery-page .moment-item {
    margin: 3rem 0;
    align-items: baseline;
    flex-direction: row;
}

#gallery-page .moment-item:nth-child(even) {
    flex-direction: row-reverse;
}

#gallery-page .moment-details, #gallery-page .all-image-section .details {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
}

#gallery-page .moment-details .description, #gallery-page .all-image-section .details .description {
    font-size: .9rem;
    margin-bottom: 1rem;
}

#gallery-page .all-image-section {
    align-items: center;
}

#gallery-page .all-gallery-grid {
    width: 100%;
    display: flex;
    flex-direction: row;
    align-items: center;
    flex-wrap: wrap;
}

#gallery-page .all-gallery-grid .grid-image {
    flex-basis: calc((100% / 6) - 1rem);
    width: 100%;
    margin: .5rem;
}

#gallery-page .all-gallery-grid .grid-image img {
    width: 100%;
}

#gallery-page .gallery-events {
    margin: 3rem 0;
}

#gallery-page .gallery-events .gallery-events-details {
    text-align: center;
    margin-bottom: 1rem;
}

#gallery-page .gallery-events .gallery-events-details p {
    margin: 0 auto;
    line-height: 1.2;
    width: 85%;
    font-size: .9rem;
}

#gallery-page .gallery-events .title-alternate {
    font-size: 2rem;
}

#gallery-page .gallery-events .title-alternate::before {
    left: calc(50% - 30px);
    right: calc(50% - 30px);
}

#gallery-page .gallery-category-container .gallery-category {
    display: block;
    margin: 1.5rem 0;
}

#gallery-page .gallery-category-container .gallery-category:hover {
    text-decoration: none;
}

#gallery-page .gallery-category-container .gallery-category:hover figcaption {
    transform: translateY(0);
}

#gallery-page .gallery-category-container .gallery-category figure {
    margin: 0;
    position: relative;
    overflow: hidden;
}

#gallery-page .gallery-category-container .gallery-category figcaption {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: rgba(34, 34, 34, 0.2);
    padding: 1rem;
    transform: translateY(-100%);
    transition: 300ms all ease-in-out;
}

#gallery-page .gallery-category-container .gallery-category .title-alternate {
    color: #fff;
    padding-left: 1rem;
    text-align: left;
}

#gallery-page .gallery-category-container .gallery-category .title-alternate::before {
    left: 1rem;
    width: 50px;
    bottom: -5px;
    right: initial;
}

#gallery-page .gallery-category-container .gallery-category img {
    box-shadow: 2px 2px 10px rgba(60, 53, 51, 0.1), -2px -2px 10px rgba(60, 53, 51, 0.1);
}

#gallery-page .gallery-category-container .gallery-category-title {
    text-align: center;
    color: #222;
    margin-top: 1.2rem;
}

#gallery-inner {
    padding: 3rem 0;
    /*@include for-large-devices {
    .gallery-images-container {
      flex-direction: row;

      .gallery-image {

        img {
          margin-bottom: .5rem;
        }

        .caption {
          font-size: 1.2rem;
          margin-bottom: .5rem;
        }
      }
    }
  }*/
}

#gallery-inner .title {
    font-size: 1.8rem;
    text-transform: none;
}

#gallery-inner .title::before {
    height: 2px;
    bottom: 5px;
    width: 100px;
}

#gallery-inner .gallery-details {
    overflow: hidden;
    margin-bottom: 2rem;
}

#gallery-inner .description {
    line-height: 1.2;
}

#gallery-inner .gallery-images-container {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
}

#gallery-inner .gallery-images-container .gallery-image {
    flex-basis: 20%;
    display: block;
    padding: 0 .5rem;
    margin: 0 0 1rem;
}

#gallery-inner .gallery-images-container .gallery-image:hover {
    text-decoration: none;
}

#gallery-inner .gallery-images-container .gallery-image:hover img {
    box-shadow: 2px 2px 10px rgba(60, 53, 51, 0.3), -2px -2px 10px rgba(60, 53, 51, 0.3);
}

#gallery-inner .gallery-images-container .gallery-image:hover .caption {
    text-shadow: 2px 2px 10px rgba(60, 53, 51, 0.3), -2px -2px 10px rgba(60, 53, 51, 0.3);
}

#gallery-inner .gallery-images-container .gallery-image img {
    border: 3px solid #fff;
    box-shadow: 2px 2px 10px rgba(60, 53, 51, 0.1), -2px -2px 10px rgba(60, 53, 51, 0.1);
    margin-bottom: 1rem;
    transition: all ease-in-out 300ms;
}

#gallery-inner .gallery-images-container .gallery-image .caption {
    color: #222;
    text-align: center;
    margin-bottom: 1.5rem;
    line-height: 1;
}

#gallery-inner .gallery-images-container .gallery-image .caption * {
    margin: 0;
}

@media (max-width: 575.98px) {
    #gallery-inner .gallery-images-container {
        flex-direction: column;
    }

    #gallery-inner .gallery-images-container .gallery-image img {
        margin-bottom: .5rem;
    }

    #gallery-inner .gallery-images-container .gallery-image .caption {
        font-size: 1.2rem;
        margin-bottom: .5rem;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #gallery-inner .gallery-images-container {
        flex-direction: row;
    }

    #gallery-inner .gallery-images-container .gallery-image {
        flex-basis: 33%;
        padding: 0 .4rem;
    }

    #gallery-inner .gallery-images-container .gallery-image img {
        margin-bottom: .5rem;
    }

    #gallery-inner .gallery-images-container .gallery-image .caption {
        font-size: 1.2rem;
        margin-bottom: .5rem;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #gallery-inner .gallery-images-container {
        flex-direction: row;
    }

    #gallery-inner .gallery-images-container .gallery-image {
        flex-basis: 25%;
        padding: 0 .5rem;
    }

    #gallery-inner .gallery-images-container .gallery-image img {
        margin-bottom: .5rem;
    }

    #gallery-inner .gallery-images-container .gallery-image .caption {
        margin-bottom: .5rem;
    }
}

#faq-page .heading, #faq-page #school-details-page .school-card .card-title, #school-details-page .school-card #faq-page .card-title {
    font-size: 2rem;
    margin-bottom: 2rem;
}

#faq-page .heading::before, #faq-page #school-details-page .school-card .card-title::before, #school-details-page .school-card #faq-page .card-title::before {
    width: 150px;
    height: 3px;
}

#faq-page .content .faq-panel {
    width: 100%;
    display: flex;
    flex-direction: column;
}

#faq-page .content .faq-question-container {
    width: 100%;
    border: 1px solid #e7e7e7;
    padding: .5rem 1rem;
    margin-bottom: 1rem;
}

#faq-page .content .faq-question-container:last-of-type {
    border-bottom: 1px solid #e7e7e7;
}

#faq-page .content .faq-question {
    width: 100%;
    display: block;
    text-decoration: none;
    color: #222;
}

#faq-page .content .faq-answer {
    width: 100%;
    font-size: .9rem;
    padding: .5rem 1rem;
}

#notification-page .heading, #notification-page #school-details-page .school-card .card-title, #school-details-page .school-card #notification-page .card-title {
    font-size: 2rem;
    margin-bottom: 2rem;
}

#notification-page .heading::before, #notification-page #school-details-page .school-card .card-title::before, #school-details-page .school-card #notification-page .card-title::before {
    width: 150px;
    height: 3px;
}

#notification-page .notification-container {
    width: 100%;
    padding-top: 2rem;
}

#notification-page .notification-container .notification-item {
    padding: 0;
    display: flex;
    justify-content: space-between;
    margin-bottom: 2.5rem;
}

#notification-page .notification-container .notification-item .image {
    flex-basis: 25%;
}

#notification-page .notification-container .notification-item .image img {
    border-radius: 0;
    width: 100%;
    height: auto;
}

#notification-page .notification-container .notification-item .notification-details {
    flex-basis: 70%;
    padding: .5rem 0;
}

#notification-page .notification-container .notification-item .notification-details h6 {
    margin: 0 0 .7rem;
    color: #222;
    line-height: 1;
    font-size: 1.4rem;
}

#notification-page .notification-container .notification-item .notification-details .details {
    font-size: .9rem;
}

#notification-page .notification-container .notification-item .notification-details .post-date {
    font-size: .75rem;
    margin: 0 0 0.3rem 0;
}

#notification-page .notification-container .notification-item .notification-details .post-date p {
    margin: 0;
    padding: 0 0 0.2rem;
}

#notification-page .notification-container .notification-item .notification-details .post-date .divider {
    width: 30%;
    height: 2px;
    background-color: #fdc800;
}

#notification-page .notification-container .notification-item .notification-details .details-button {
    text-align: right;
}

#notification-page .notification-container .notification-item .notification-details .details-button .read-more {
    text-align: right;
    font-size: .9rem;
    font-style: italic;
    color: #000;
    text-decoration: underline;
}

@media (max-width: 575.98px) {
    #notification-page .notification-container {
        width: 100%;
        padding: 0;
    }

    #notification-page .notification-container .notification-item {
        flex-direction: column;
        margin: 0;
        border-bottom: 4px solid #e7e7e7;
        padding: 2rem 0;
    }

    #notification-page .notification-container .notification-item .image {
        flex-basis: 35%;
        margin-bottom: 1rem;
    }

    #notification-page .notification-container .notification-item .notification-details {
        flex-basis: 62%;
    }

    #notification-page .notification-container .notification-item .notification-details h6 {
        margin: 0;
        font-weight: bold;
        font-size: 1.2rem;
    }

    #notification-page .notification-container .notification-item .notification-details .post-date .divider {
        width: 60%;
    }

    #notification-page .notification-container .notification-item .notification-details .details {
        font-size: .8rem;
        line-height: 1.2;
        margin-bottom: .5rem;
    }

    #notification-page .notification-container .notification-item:last-of-type {
        border-bottom: none;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    #notification-page .notification-container {
        width: 100%;
        padding: 0;
    }

    #notification-page .notification-container .notification-item {
        margin: 0;
        border-bottom: 4px solid #e7e7e7;
        padding: 2rem 0;
    }

    #notification-page .notification-container .notification-item .image {
        flex-basis: 35%;
    }

    #notification-page .notification-container .notification-item .notification-details {
        flex-basis: 62%;
        padding: 0;
    }

    #notification-page .notification-container .notification-item .notification-details h6 {
        margin: 0;
        font-weight: bold;
        font-size: .9rem;
    }

    #notification-page .notification-container .notification-item .notification-details .post-date .divider {
        width: 60%;
    }

    #notification-page .notification-container .notification-item .notification-details .details {
        font-size: .8rem;
        line-height: 1.2;
        margin-bottom: .5rem;
    }

    #notification-page .notification-container .notification-item:last-of-type {
        border-bottom: none;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #notification-page .notification-container {
        width: 70%;
    }

    #notification-page .notification-container .notification-item .notification-details {
        padding: 0;
    }

    #notification-page .notification-container .notification-item .notification-details h6 {
        margin: 0 0 0.1rem;
        font-size: 1.2rem;
    }

    #notification-page .notification-container .notification-item .notification-details .post-date {
        margin: 0 0 0.1rem;
    }

    #notification-page .notification-container .notification-item .notification-details .post-date p {
        padding: 0;
    }

    #notification-page .notification-container .notification-item .notification-details .details {
        font-size: .8rem;
        line-height: 1.3;
    }
}

#notification-details-page .notification-details {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

#notification-details-page .notification-details .notification-image {
    margin-bottom: 2rem;
    width: 100%;
    text-align: center;
}

#notification-details-page .notification-details .notification-image img {
    border: 0.5rem solid #fff;
    box-shadow: 2px 2px 3px rgba(60, 53, 51, 0.1);
}

#notification-details-page .notification-details .notification-content .title {
    font-size: 2rem;
    color: #454851;
    font-weight: bold;
    text-align: center;
    position: relative;
    margin-bottom: 1rem;
}

#notification-details-page .notification-details .notification-content .title::after {
    content: "";
    bottom: -10px;
    background-color: #fdc800;
    height: 3px;
    position: absolute;
    left: 35%;
    right: 35%;
}

#notification-details-page .notification-details .notification-content .notification-date {
    font-size: .9rem;
    color: #454851;
    margin-bottom: 1rem;
}

#notification-details-page .notification-details .notification-content .notification-description {
    width: 100%;
    font-size: .9rem;
    line-height: 1.3;
}

* {
    font-family: Arial, sans-serif;
}

body {
    background-color: #fff;
    color: #454851;
    margin: 0;
    padding: 0;
}

header:not(#home) {
    background: url("../../images/website/events-header.png") no-repeat 100%;
    background-size: cover;
    position: relative;
    height: 200px;
    z-index: 1;
}

header:not(#home)::before {
    position: absolute;
    content: "";
    background-color: rgba(0, 0, 0, 0.3);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

header:not(#home) .align-to-top {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

header:not(#home) .navigation-bar {
    border: 0;
}

header:not(#home) .navigation-bar .fixed {
    position: fixed;
    z-index: 999;
}

header:not(#home) .navigation-bar .nav-item .nav-link {
    color: #fff;
}

header:not(#home) .navbar-logo {
    position: absolute;
    top: .5rem;
    left: 2rem;
    width: 100px;
    height: 100px;
}

header:not(#home) .navbar-logo.active {
    z-index: -1;
}

header:not(#home) .navbar-logo img {
    width: 100%;
}

header:not(#home) .top-bar {
    background-color: transparent;
}

header:not(#home) .top-bar select {
    color: #454851;
}

header:not(#home) .header-container {
    background-color: transparent;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    width: 100%;
    align-items: center;
    height: 100%;
    color: #fff;
    z-index: auto;
}

header:not(#home) .header-container .custom-breadcrumb {
    margin-left: 8rem;
}

header:not(#home) .header-container h1, header:not(#home) .header-container .heading, header:not(#home) .header-container #school-details-page .school-card .card-title, #school-details-page .school-card header:not(#home) .header-container .card-title {
    font-size: 3rem;
    font-weight: bolder;
}
.page-title{
    margin-top: 55px;
}

header:not(#home) .header-container .breadcrumb-item {
    display: inline-block;
}

header:not(#home) .header-container .breadcrumb-item a {
    color: #fff;
}

header:not(#home) .header-container .breadcrumb-item.active {
    color: #fdc800;
}

header:not(#home) .header-container .breadcrumb-item:first-of-type {
    margin-left: 4rem;
    color: #fdc800;
}

header:not(#home) .header-container .breadcrumb-item:first-of-type a {
    color: #fdc800;
}

header:not(#home) .header-container .breadcrumb-item:not(:first-of-type)::before {
    content: "\f101";
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    color: #fff;
}

footer {
    position: relative;
}

.floating-container-triggerer {
    display: none;
}

.floating-contact {
    display: flex !important;
    flex-direction: row;
    justify-content: space-around;
    align-items: flex-start;
    position: relative;
    width: 60%;
    top: 60px;
    left: 20%;
    right: 20%;
    border-radius: 50px;
    background-color: #001a39;
    color: #fff;
    padding: 0 2rem;
    z-index: 100;
    -webkit-box-shadow: 8px 10px 20px 6px rgba(0, 0, 0, 0.5);
    -moz-box-shadow: 8px 10px 20px 6px rgba(0, 0, 0, 0.5);
    box-shadow: 8px 10px 20px 6px rgba(0, 0, 0, 0.5);
}

.floating-contact .vertical-line {
    width: 1px;
    background-color: #fdc800;
    float: left;
    height: 75px;
    margin-top: 53px;
}

.floating-contact .vertical-line-middle {
    width: 1px;
    background-color: #fdc800;
    float: left;
    height: 100px;
    margin-top: 40px;
    margin-left: 2px;
}

.floating-contact .vertical-line-last {
    width: 1px;
    background-color: #fdc800;
    float: left;
    height: 75px;
    margin-top: 53px;
    margin-left: 2px;
}

.floating-contact .contact-item {
    width: calc(100% / 3);
    padding: 1rem .2rem;
    text-align: center;
    color: #fdc800;
}

.floating-contact .contact-item:last-child {
    border-right: 0;
}

.floating-contact .contact-item .heading-container i {
    font-size: 1.7rem;
    padding: 1rem;
}

.floating-contact .contact-item .heading-container h3 {
    font-size: 1.4rem;
    font-weight: bold;
}

.floating-contact .contact-item .description {
    font-size: .8rem;
    color: #fff;
}

#footer {
    padding-top: 6rem;
    padding-bottom: .8rem;
    background-color: #1d2331;
    color: #fff;
}

#footer .container-fluid {
    padding: 0 3rem !important;
}

#footer * {
    color: #fff;
    font-size: .8rem;
}

#footer a {
    text-decoration: none;
}

#footer .main-heading-style, #footer #school-details-page .heading, #school-details-page #footer .heading, #footer #school-details-page .school-card .card-title, #school-details-page .school-card #footer .card-title, #footer #about-page .content .heading, #about-page .content #footer .heading, #footer #about-page .content .alternate-heading, #about-page .content #footer .alternate-heading, #footer #gallery-page .title, #gallery-page #footer .title, #footer #gallery-inner .title, #gallery-inner #footer .title, #footer #faq-page .heading, #faq-page #footer .heading, #footer #notification-page .heading, #notification-page #footer .heading {
    text-transform: none;
    font-size: 1.5rem;
    margin-bottom: 1.5rem;
}

#footer .main-heading-style::before, #footer #school-details-page .heading::before, #school-details-page #footer .heading::before, #footer #school-details-page .school-card .card-title::before, #school-details-page .school-card #footer .card-title::before, #footer #about-page .content .heading::before, #about-page .content #footer .heading::before, #footer #about-page .content .alternate-heading::before, #about-page .content #footer .alternate-heading::before, #footer #gallery-page .title::before, #gallery-page #footer .title::before, #footer #gallery-inner .title::before, #gallery-inner #footer .title::before, #footer #faq-page .heading::before, #faq-page #footer .heading::before, #footer #notification-page .heading::before, #notification-page #footer .heading::before {
    height: 2px;
    width: 40%;
}

#footer .footer-information p {
    font-size: .8rem;
}

#footer .footer-quick-links ul {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    flex-wrap: wrap;
}

#footer .footer-quick-links ul li {
    flex-basis: 50%;
}

#footer .footer-quick-links i {
    color: #fdc800;
}

#footer .footer-quick-links a {
    font-size: .8rem;
}

#footer .newsletter-container .newsletter-form {
    width: 60%;
    position: relative;
}

#footer .newsletter-container .newsletter-form .newsletter-input {
    -webkit-border-radius: 1rem;
    -moz-border-radius: 1rem;
    border-radius: 1rem;
    height: initial;
    padding: .2rem .5rem;
    color: #000;
    margin-right: 0.5rem;
}

#footer .newsletter-container .newsletter-form button, #footer .newsletter-container .newsletter-form input[type=submit] {
    position: absolute;
    right: 0;
    left:100%;
    top: 0;
    padding: .2rem .7rem;
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 1rem;
}

#footer .newsletter-container .newsletter-form button i, #footer .newsletter-container .newsletter-form input[type=submit] i {
    font-size: 1rem;
}

#footer .newsletter-container i {
    color: inherit;
}

@media (min-width: 768px) and (max-width: 991.98px) {
    #footer .form-group {
        width: calc(100% - 40px);
    }
}

.copyright-footer {
    background-color: #001a39;
    color: #fff;
}

.copyright-footer .content {
    width: 80%;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    color: #666;
    font-size: .7rem;
    padding: .7rem 0;
}

.copyright-footer .content p {
    margin: 0;
}

.copyright-footer .content p a {
    color: #fff;
}

@media (max-width: 575.98px) {
    header:not(#home) {
        height: 42vh;
        
    }

    header:not(#home) .top-bar {
        padding: .5rem;
        flex-direction: column-reverse;
        align-items: flex-end;
    }

    header:not(#home) .top-bar .links {
        padding: 0 0 0 .5rem;
        margin-bottom: .7rem;
    }

    header:not(#home) .header-container .custom-breadcrumb {
        margin: 0;
    }

    header:not(#home) .header-container h1 {
        font-size: 2rem;
    }

    header:not(#home) .header-container .breadcrumb-item:first-of-type {
        margin-left: 3rem;
    }

    .floating-container-triggerer {
        display: flex;
        justify-content: center;
        text-align: center;
        padding: 1rem 1rem;
        position: relative;
        background: #001a39;
        color: #fdc800;
        font-weight: bold;
        width: 70%;
        margin: 2rem auto 0;
        border-radius: 20px;
        top: 20px;
        z-index: 111;
    }

    .floating-container-triggerer p {
        line-height: 1;
        font-size: 1.4rem;
        margin: 0;
        padding-right: .5rem;
    }

    .floating-container-triggerer i {
        line-height: .7;
    }

    .floating-contact {
        position: relative;
        flex-direction: column;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
        top: initial;
        left: initial;
        right: initial;
        width: 100%;
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
        padding: 1.5rem 0 1rem;
        border-bottom: none;
    }

    .floating-contact.collapse:not(.show) {
        display: none !important;
    }

    .floating-contact .contact-item {
        width: 60%;
        margin: 0 auto;
        padding-top: 0;
        border: 0;
    }

    .floating-contact .contact-item p {
        margin: 0;
    }

    .floating-contact .contact-item .heading-container i {
        font-size: 1.3rem;
        padding: .3rem;
    }

    .contact-container {
        border: 0 !important;
        padding: 0 !important;
    }

    .vertical-line {
        display: none;
    }

    .vertical-line-middle {
        display: none;
    }

    .vertical-line-last {
        display: none;
    }

    #footer {
        margin-top: 0;
        padding: 2rem 0;
    }

    #footer .main-heading-style, #footer #school-details-page .heading, #school-details-page #footer .heading, #footer #school-details-page .school-card .card-title, #school-details-page .school-card #footer .card-title, #footer #about-page .content .heading, #about-page .content #footer .heading, #footer #about-page .content .alternate-heading, #about-page .content #footer .alternate-heading, #footer #gallery-page .title, #gallery-page #footer .title, #footer #gallery-inner .title, #gallery-inner #footer .title, #footer #faq-page .heading, #faq-page #footer .heading, #footer #notification-page .heading, #notification-page #footer .heading {
        margin-bottom: .6rem;
    }

    #footer .form-group {
        margin: 0;
    }

    #footer .form-inline {
        text-align: center;
        justify-content: center;
    }

    #footer .newsletter-container {
        margin-bottom: 1rem;
    }

    #footer .newsletter-container .newsletter-form {
        width: 100%;
    }

    #footer .links-container {
        margin: 0;
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .floating-contact {
        top: 60px;
        width: 80%;
        left: 10%;
    }

    .floating-contact .contact-item .heading-container i {
        padding: .7rem;
    }

    .floating-contact .contact-item .heading-container i, .floating-contact .contact-item .heading-container h3 {
        font-size: 1.2rem;
    }

    .floating-contact .contact-item .description {
        -ms-word-break: break-all;
        word-break: break-all;
    }

    #footer {
        margin-top: 0;
        padding-top: 6rem;
    }

    #footer .main-heading-style, #footer #school-details-page .heading, #school-details-page #footer .heading, #footer #school-details-page .school-card .card-title, #school-details-page .school-card #footer .card-title, #footer #about-page .content .heading, #about-page .content #footer .heading, #footer #about-page .content .alternate-heading, #about-page .content #footer .alternate-heading, #footer #gallery-page .title, #gallery-page #footer .title, #footer #gallery-inner .title, #gallery-inner #footer .title, #footer #faq-page .heading, #faq-page #footer .heading, #footer #notification-page .heading, #notification-page #footer .heading {
        font-size: 1.1rem;
        margin-bottom: .8rem;
    }

    #footer .form-group {
        margin: 0;
    }

    #footer .newsletter-container {
        margin-bottom: 1rem;
    }

    #footer .social-links .links-container li {
        flex-basis: 20%;
    }

    .copyright-footer .content {
        justify-content: center;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .floating-contact {
        width: 80%;
        left: 10%;
    }

    #footer .footer-information, #footer .footer-quick-links, #footer .newsletter, #footer .social-links {
        overflow: hidden;
    }

    #footer .newsletter-container .newsletter-form {
        width: 100%;
    }

    #footer .social-links .links-container a {
        margin: 0 .5rem 1rem;
    }
}


.social-links-b ul {
background-color: #212529;
margin: 0;

}

.social-links-b ul li{
    list-style: none;
    display: inline-block;
    font-size: 9px;
    border-radius: 100%;
 margin-right: 13px;
}

@media (max-width: 575.98px){

    #school-details-page .school-details-header .school-details ,
    .testionials-bottom-border-none{
        
        border-bottom: none !important;
    }
    }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX2NvbXBvbmVudHMvX3ZhcmlhYmxlcy5zY3NzIiwiX2NvbXBvbmVudHMvX2NvbXBvbmVudHMuc2NzcyIsIl9jb21wb25lbnRzL19taXhpbnMuc2NzcyIsIl9jb21wb25lbnRzL19ob21lLnNjc3MiLCJfY29tcG9uZW50cy9fZXZlbnRzLnNjc3MiLCJfY29tcG9uZW50cy9fZXZlbnQtZGV0YWlscy5zY3NzIiwiX2NvbXBvbmVudHMvX3NjaG9vbHMuc2NzcyIsIl9jb21wb25lbnRzL19ibG9nLWRldGFpbHMuc2NzcyIsIl9jb21wb25lbnRzL19ibG9ncy5zY3NzIiwiX2NvbXBvbmVudHMvX3NjaG9vbC1jb21wYXJlLnNjc3MiLCJfY29tcG9uZW50cy9fc2Nob29sLWRldGFpbHMuc2NzcyIsIl9jb21wb25lbnRzL19hYm91dC11cy5zY3NzIiwiX2NvbXBvbmVudHMvX21vZGFscy5zY3NzIiwiX2NvbXBvbmVudHMvX2JkZS1mb3JtLnNjc3MiLCJfY29tcG9uZW50cy9fc2Nob29sLWZvcm0uc2NzcyIsIl9jb21wb25lbnRzL19zdHVkZW50LWZvcm0uc2NzcyIsIl9jb21wb25lbnRzL19uc2kuc2NzcyIsIl9jb21wb25lbnRzL19nYWxsZXJ5LnNjc3MiLCJfY29tcG9uZW50cy9fZ2FsbGVyeS1pbm5lci5zY3NzIiwiX2NvbXBvbmVudHMvX2ZhcXMuc2NzcyIsIl9jb21wb25lbnRzL19ub3RpZmljYXRpb25zLnNjc3MiLCJfY29tcG9uZW50cy9fbm90aWZpY2F0aW9uLWRldGFpbHMuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiX2NvbXBvbmVudHMvdmFyaWFibGVzXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvY29tcG9uZW50c1wiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL21peGluc1wiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL2hvbWVcIjtcbkBpbXBvcnQgXCJfY29tcG9uZW50cy9ldmVudHNcIjtcbkBpbXBvcnQgXCJfY29tcG9uZW50cy9ldmVudC1kZXRhaWxzXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvc2Nob29sc1wiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL2Jsb2ctZGV0YWlsc1wiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL2Jsb2dzXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvc2Nob29sLWNvbXBhcmVcIjtcbkBpbXBvcnQgXCJfY29tcG9uZW50cy9zY2hvb2wtZGV0YWlsc1wiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL2Fib3V0LXVzXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvbW9kYWxzXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvYmRlLWZvcm1cIjtcbkBpbXBvcnQgXCJfY29tcG9uZW50cy9zY2hvb2wtZm9ybVwiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL3N0dWRlbnQtZm9ybVwiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL25zaVwiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL2dhbGxlcnlcIjtcbkBpbXBvcnQgXCJfY29tcG9uZW50cy9nYWxsZXJ5LWlubmVyXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvZmFxc1wiO1xuQGltcG9ydCBcIl9jb21wb25lbnRzL25vdGlmaWNhdGlvbnNcIjtcbkBpbXBvcnQgXCJfY29tcG9uZW50cy9ub3RpZmljYXRpb24tZGV0YWlsc1wiO1xuXG4qIHtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmO1xufVxuXG5ib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBjb2xvcjogJGZvbnQtY29sb3I7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuaGVhZGVyOm5vdCgjaG9tZSkge1xuICBAZXh0ZW5kIGhlYWRlcjtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2V2ZW50cy1oZWFkZXIucG5nXCIpIG5vLXJlcGVhdCAxMDAlO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogODV2aDtcbiAgei1pbmRleDogMTtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4zKTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAuYWxpZ24tdG8tdG9wIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gIH1cblxuICAubmF2aWdhdGlvbi1iYXIge1xuICAgIGJvcmRlcjogMDtcblxuICAgIC5maXhlZCB7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB6LWluZGV4OiA5OTk7XG4gICAgfVxuXG4gICAgLm5hdi1pdGVtIHtcbiAgICAgIC5uYXYtbGluayB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1sb2dvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAuNXJlbTtcbiAgICBsZWZ0OiAycmVtO1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gIC50b3AtYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgIHNlbGVjdCB7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmhlYWRlci1jb250YWluZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICB6LWluZGV4OiBhdXRvO1xuXG4gICAgLmN1c3RvbS1icmVhZGNydW1iIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiA4cmVtO1xuICAgIH1cblxuICAgIGgxLCAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDRyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZGVyO1xuICAgIH1cblxuICAgIC5icmVhZGNydW1iLWl0ZW0ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDRyZW07XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bm90KDpmaXJzdC1vZi10eXBlKSB7XG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcXGYxMDFcIjtcbiAgICAgICAgICBmb250LWZhbWlseTogXCJGb250IEF3ZXNvbWUgNSBGcmVlXCI7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5mb290ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5mbG9hdGluZy1jb250YWluZXItdHJpZ2dlcmVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmZsb2F0aW5nLWNvbnRhY3Qge1xuICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNjAlO1xuICB0b3A6IDYwcHg7XG4gIC8vcG9zaXRpb246IGFic29sdXRlO1xuICAvL3RvcDogLTQwJTtcbiAgbGVmdDogMjAlO1xuICByaWdodDogMjAlO1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvci1zaGFkZTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgcGFkZGluZzogMCAycmVtO1xuICB6LWluZGV4OiAxMDA7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogOHB4IDEwcHggMjBweCA2cHggdHJhbnNwYXJlbnRpemUoJHB1cmUtYmxhY2ssIC41KTtcbiAgLW1vei1ib3gtc2hhZG93OiA4cHggMTBweCAyMHB4IDZweCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjUpO1xuICBib3gtc2hhZG93OiA4cHggMTBweCAyMHB4IDZweCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjUpO1xuXG4gIC52ZXJ0aWNhbC1saW5lIHtcbiAgICB3aWR0aDogMXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgaGVpZ2h0OiA3NXB4O1xuICAgIG1hcmdpbi10b3A6IDUzcHg7XG4gIH1cblxuICAudmVydGljYWwtbGluZS1taWRkbGUge1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgfVxuXG4gIC52ZXJ0aWNhbC1saW5lLWxhc3Qge1xuICAgIHdpZHRoOiAxcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gICAgbWFyZ2luLXRvcDogNTNweDtcbiAgICBtYXJnaW4tbGVmdDogMnB4O1xuICB9XG5cbiAgLmNvbnRhY3QtaXRlbSB7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuICAgIHBhZGRpbmc6IDFyZW0gLjJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICB9XG5cbiAgICAuaGVhZGluZy1jb250YWluZXIge1xuXG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjdyZW07XG4gICAgICAgIHBhZGRpbmc6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIGgzIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICB9XG4gIH1cbn1cblxuI2Zvb3RlciB7XG4gIC8vbWFyZ2luLXRvcDogMTByZW07XG4gIHBhZGRpbmctdG9wOiA2cmVtO1xuICBwYWRkaW5nLWJvdHRvbTogLjhyZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXItY29sb3I7XG4gIGNvbG9yOiAkd2hpdGU7XG5cbiAgLmNvbnRhaW5lci1mbHVpZCB7XG4gICAgcGFkZGluZzogMCAzcmVtICFpbXBvcnRhbnQ7XG4gIH1cblxuICAqIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gIH1cblxuICBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIH1cblxuICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICB3aWR0aDogNDAlO1xuICAgIH1cbiAgfVxuXG4gIC5mb290ZXItaW5mb3JtYXRpb24ge1xuXG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IC44cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5mb290ZXItcXVpY2stbGlua3Mge1xuXG4gICAgdWwge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGkge1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgfVxuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IC44cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5uZXdzbGV0dGVyLWNvbnRhaW5lciB7XG5cbiAgICAubmV3c2xldHRlci1mb3JtIHtcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIC5uZXdzbGV0dGVyLWlucHV0IHtcbiAgICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgIGhlaWdodDogaW5pdGlhbDtcbiAgICAgICAgcGFkZGluZzogLjJyZW0gLjVyZW07XG4gICAgICAgIGNvbG9yOiAkcHVyZS1ibGFjaztcbiAgICAgIH1cblxuICAgICAgYnV0dG9uLCBpbnB1dFt0eXBlPXN1Ym1pdF0ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IC4ycmVtIC43cmVtO1xuICAgICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1tZWRpdW0tZGV2aWNlcyB7XG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQwcHgpO1xuICAgIH1cbiAgfVxufVxuXG4uY29weXJpZ2h0LWZvb3RlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yLXNoYWRlO1xuICBjb2xvcjogJHdoaXRlO1xuXG4gIC5jb250ZW50IHtcbiAgICB3aWR0aDogODAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBjb2xvcjogJGxpZ2h0LWJsYWNrO1xuICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgcGFkZGluZzogLjdyZW0gMDtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZm9yLWV4dHJhLXNtYWxsLWRldmljZXMge1xuXG4gIGhlYWRlcjpub3QoI2hvbWUpIHtcbiAgICBoZWlnaHQ6IDcwdmg7XG4gICAgLnRvcC1iYXIge1xuICAgICAgcGFkZGluZzogLjVyZW07XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICAvL2FsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgLy9qdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAubGlua3Mge1xuICAgICAgICBwYWRkaW5nOiAwIDAgMCAuNXJlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjdyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmhlYWRlci1jb250YWluZXIge1xuICAgICAgLmN1c3RvbS1icmVhZGNydW1iIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuXG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgIH1cblxuICAgICAgLmJyZWFkY3J1bWItaXRlbSB7XG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDNyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZmxvYXRpbmctY29udGFpbmVyLXRyaWdnZXJlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMXJlbSAxcmVtO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiAjMDAxYTM5O1xuICAgIGNvbG9yOiAjZmRjODAwO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHdpZHRoOiA3MCU7XG4gICAgbWFyZ2luOiAycmVtIGF1dG8gMDtcbiAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgIHRvcDogMjBweDtcbiAgICB6LWluZGV4OiAxMTE7XG5cbiAgICBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAuNXJlbTtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAuNztcbiAgICB9XG4gIH1cblxuICAuZmxvYXRpbmctY29udGFjdCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAgIC1tb3otYm9yZGVyLXJhZGl1czogMDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIHRvcDogaW5pdGlhbDtcbiAgICBsZWZ0OiBpbml0aWFsO1xuICAgIHJpZ2h0OiBpbml0aWFsO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcbiAgICAtbW96LWJveC1zaGFkb3c6IG5vbmU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBwYWRkaW5nOiAxLjVyZW0gMCAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG5cbiAgICAmLmNvbGxhcHNlOm5vdCguc2hvdykge1xuICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5jb250YWN0LWl0ZW0ge1xuICAgICAgd2lkdGg6IDYwJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICBib3JkZXI6IDA7XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG5cbiAgICAgIC5oZWFkaW5nLWNvbnRhaW5lciB7XG4gICAgICAgIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICAgIHBhZGRpbmc6IC4zcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNvbnRhY3QtY29udGFpbmVyIHtcbiAgICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIH1cbiAgLnZlcnRpY2FsLWxpbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgLnZlcnRpY2FsLWxpbmUtbWlkZGxlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC52ZXJ0aWNhbC1saW5lLWxhc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAjZm9vdGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogLjZyZW07XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5mb3JtLWlubGluZSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG5cbiAgICAubmV3c2xldHRlci1jb250YWluZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgLm5ld3NsZXR0ZXItZm9ybSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5saW5rcy1jb250YWluZXIge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG5cbiAgLmZsb2F0aW5nLWNvbnRhY3Qge1xuICAgIHRvcDogNjBweDtcbiAgICB3aWR0aDogODAlO1xuICAgIGxlZnQ6IDEwJTtcblxuICAgIC5jb250YWN0LWl0ZW0ge1xuICAgICAgLmhlYWRpbmctY29udGFpbmVyIHtcbiAgICAgICAgaSB7XG4gICAgICAgICAgcGFkZGluZzogLjdyZW07XG4gICAgICAgIH1cblxuICAgICAgICBpLCBoMyB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgLW1zLXdvcmQtYnJlYWs6IGJyZWFrLWFsbDtcbiAgICAgICAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52ZXJ0aWNhbC1saW5lIHtcbiAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAudmVydGljYWwtbGluZS1taWRkbGUge1xuICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC52ZXJ0aWNhbC1saW5lLWxhc3Qge1xuICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICNmb290ZXIge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgcGFkZGluZy10b3A6IDZyZW07XG5cbiAgICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogLjhyZW07XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxuICAgIC5uZXdzbGV0dGVyLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIC5zb2NpYWwtbGlua3MgLmxpbmtzLWNvbnRhaW5lciBsaSB7XG4gICAgICBmbGV4LWJhc2lzOiAyMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvcHlyaWdodC1mb290ZXIge1xuICAgIC5jb250ZW50IHtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBmb3ItbWVkaXVtLWRldmljZXMge1xuICAuZmxvYXRpbmctY29udGFjdCB7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBsZWZ0OiAxMCU7XG4gIH1cbiAgI2Zvb3RlciB7XG4gICAgLmZvb3Rlci1pbmZvcm1hdGlvbiwgLmZvb3Rlci1xdWljay1saW5rcywgLm5ld3NsZXR0ZXIsIC5zb2NpYWwtbGlua3Mge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAubmV3c2xldHRlci1jb250YWluZXIge1xuXG4gICAgICAubmV3c2xldHRlci1mb3JtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNvY2lhbC1saW5rcyB7XG4gICAgICAubGlua3MtY29udGFpbmVyIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgbWFyZ2luOiAwIC41cmVtIDFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiRwcmltYXJ5LWNvbG9yOiAjMDAyMTQ3O1xuJHByaW1hcnktY29sb3Itc2hhZGU6ICMwMDFhMzk7XG4kZm9vdGVyLWNvbG9yOiAjMWQyMzMxO1xuJHNlY29uZGFyeS1jb2xvcjogI2ZkYzgwMDtcblxuJHdoaXRlOiAjZmZmO1xuJGJsYWNrOiAjMjIyO1xuJHB1cmUtYmxhY2s6ICMwMDA7XG4kbGlnaHQtYmxhY2s6ICM2NjY7XG5cbiRmb250LWNvbG9yOiAjNDU0ODUxO1xuJGhlYWRpbmctY29sb3I6ICMxZDIzMzA7XG4kZ3JleTogI2JiYjtcbiRsaWdodC1ncmV5OiAjZTdlN2U3O1xuXG4kbGlnaHQtc2hhZG93OiAycHggMnB4IDNweCByZ2JhKDYwLCA1MywgNTEsIDAuMSk7XG4kbm9ybWFsLXNoYWRvdzogMnB4IDJweCA3cHggcmdiYSg2MCwgNTMsIDUxLCAwLjQpO1xuJHNxdWFyZS1zaGFkb3c6IDJweCAycHggM3B4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKSwgLTJweCAtMnB4IDNweCByZ2JhKDYwLCA1MywgNTEsIDAuMSk7XG4iLCJAaW1wb3J0IFwibWl4aW5zXCI7XG5cbnNlY3Rpb24sIGFzaWRlIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuXG4gIEBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuICB9XG59XG5cbi5kaXZpZGVyIHtcblxuICAmLXYge1xuICAgIGNvbnRlbnQ6IFwifFwiO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMCAxcmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgJi1oIHtcbiAgICBjb250ZW50OiBcIi1cIjtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxufVxuXG4uY3VzdG9tLWJnIHtcbiAgJi1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgfVxuXG4gICYtc2Vjb25kYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICB9XG59XG5cbi5jdXN0b20tY29sb3IsIC5jdXN0b20tdGV4dCB7XG4gICYtcHJpbWFyeSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XG4gIH1cblxuICAmLXNlY29uZGFyeSB7XG4gICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3IgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYnRuLWN1c3RvbS1zZWNvbmRhcnkge1xuICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG59XG5cbi5idG4tcm91bmQge1xuICAmLXNlY29uZGFyeSB7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggM3B4IHRyYW5zcGFyZW50aXplKCRwdXJlLWJsYWNrLCAuOSk7XG4gICAgfVxuICB9XG5cbiAgJi1wcmltYXJ5IHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5LWNvbG9yO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgYm9yZGVyLXJhZGl1czogMS40cmVtO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggM3B4IHRyYW5zcGFyZW50aXplKCRwdXJlLWJsYWNrLCAuOSk7XG4gICAgfVxuICB9XG59XG5cbi5tYWluLWhlYWRpbmctc3R5bGUge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXNpemU6IDJyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBjb2xvcjogJGZvbnQtY29sb3I7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgbGVmdDogMTAwJTtcbiAgICB3aWR0aDogNTAlO1xuICAgIGJvdHRvbTogMTBweDtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICB9XG59XG5cbi51bmRlcmxpbmUtaGVhZGluZy1zdHlsZSB7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtc2l6ZTogNXJlbTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1zaGFkb3c6IDJweCAycHggMTBweCB0cmFuc3BhcmVudGl6ZSgkYmxhY2ssIC43KTtcblxuICAmOjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGhlaWdodDogNHB4O1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAyNSU7XG4gICAgcmlnaHQ6IDI1JTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gIH1cbn1cblxuLmN1c3RvbS1wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogZmxleDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDA7XG5cbiAgLnBhZ2UtaXRlbSB7XG4gICAgJjpsYXN0LW9mLXR5cGUgLnBhZ2UtbGluayB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG5cbiAgLnBhZ2UtbGluayB7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggM3B4IHRyYW5zcGFyZW50aXplKCRwdXJlLWJsYWNrLCAuOSk7XG5cbiAgICAmOmhvdmVyLCAmLmFjdGl2ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yXG4gICAgfVxuICB9XG59XG5cbi50aW1lLWRldGFpbHMge1xuICBwYWRkaW5nLXJpZ2h0OiAuN3JlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcblxuICAuZGF0ZS1kZXRhaWxzIHtcbiAgICAuZGF0ZSB7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgfVxuXG4gICAgLm1vbnRoIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG4gIH1cblxuICAudGltZSB7XG4gICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIH1cbn1cblxuLnN0YXItcmF0aW5nIHtcbiAgaSB7XG4gICAgJi5hY3RpdmUge1xuICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3IgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tcm91bmRlZCB7XG4gIGJvcmRlci1yYWRpdXM6IDFyZW07XG59XG5cbi5pY29uLWluc2lkZSB7XG4gICYtcmlnaHQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHNlbGVjdCB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7IC8qIEZpcmVmb3ggKi9cbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgfVxuXG4gICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAycmVtO1xuXG4gICAgICAmOmZvY3VzICsgaSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogMTBweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICB9XG4gIH1cblxuICAmLWxlZnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHNlbGVjdCB7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7IC8qIEZpcmVmb3ggKi9cbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgLyogU2FmYXJpIGFuZCBDaHJvbWUgKi9cbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgfVxuXG4gICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDNyZW07XG5cbiAgICAgICY6Zm9jdXMgKyBpIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICB0b3A6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBjb2xvcjogJGdyZXk7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAxcmVtO1xufVxuXG4uZm9ybS1sYWJlbCB7XG4gIG1hcmdpbjogMC41cmVtIDA7XG59XG5cbi5mb3JtLXdpZHRoIHtcbiAgd2lkdGg6IDE3NXB4O1xuXG4gIEBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zbWFsbC1kZXZpY2VzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1tZWRpdW0tZGV2aWNlcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmZvcm0td2lkdGgtd2lkZSB7XG4gIHdpZHRoOiAyNzZweDtcblxuICBAaW5jbHVkZSBmb3ItZXh0cmEtc21hbGwtZGV2aWNlcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICBAaW5jbHVkZSBmb3ItbGFyZ2UtZGV2aWNlcyB7XG5cbiAgfVxuXG59XG5cbi50ZXh0LXJvdW5kZWQge1xuICBib3JkZXItcmFkaXVzOiAyMHB4IDIwcHggMCAwO1xufVxuXG4udGV4dC1yb3VuZGVkLWludmVyc2Uge1xuICBib3JkZXItcmFkaXVzOiAwIDAgMjBweCAyMHB4O1xufVxuXG4uaW5wdXQtYm90dG9tIHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHB1cmUtYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgJjpob3ZlciB7XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGJsdWU7XG4gICAgYm94LXNoYWRvdzogMCAwIDExcHggbGlnaHRibHVlO1xuICB9XG59XG5cbi5pbnB1dC1yb3VuZGVkIHtcbiAgYm9yZGVyLWNvbG9yOiAkcHVyZS1ibGFjaztcbiAgYm9yZGVyLXJhZGl1czogMXJlbTtcblxuICAmOmhvdmVyIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGJsdWU7XG4gICAgYm94LXNoYWRvdzogMCAwIDExcHggbGlnaHRibHVlO1xuICB9XG59XG5cbi5jb250YWN0LWhlYWRpbmcge1xuICBmb250LXNpemU6IDIycHg7XG59XG5cbi5pbnB1dC1pY29uIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHB1cmUtYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi5sZXNzLWhlaWdodC1pbnB1dCB7XG4gIGhlaWdodDogY2FsYygxLjVlbSArIC4zcmVtICsgMnB4KTtcbn1cblxuLmxlc3MtaGVpZ2h0LWZvcm0ge1xuICBpbnB1dCwgc2VsZWN0IHtcbiAgICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAuM3JlbSArIDJweCk7XG4gIH1cbn1cblxuLnNvY2lhbC1saW5rcyB7XG5cbiAgLmxpbmtzLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvL2p1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXG4gICAgJi5jb250YWN0LXBhZ2Uge1xuICAgICAgYSB7XG4gICAgICAgIG1hcmdpbjogMCAxLjJyZW0gMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBmbGV4LWJhc2lzOiAyMCU7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCAuOHJlbSAxcmVtO1xuICAgIH1cbiAgfVxufVxuXG4ubG9hZGluZy1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAubG9hZGVyIHtcbiAgICB3aWR0aDogNjBweDtcbiAgfVxuXG4gIC5sb2FkZXItd2hlZWwge1xuICAgIGFuaW1hdGlvbjogc3BpbiAxcyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYm9yZGVyOiAycHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjgpO1xuICAgIGJvcmRlci1sZWZ0OiA0cHggc29saWQgJHByaW1hcnktY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGhlaWdodDogNTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIHdpZHRoOiA1MHB4O1xuICB9XG5cbiAgLmxvYWRlci10ZXh0IHtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIGZvbnQtZmFtaWx5OiBhcmlhbCwgc2Fucy1zZXJpZjtcbiAgfVxuXG4gIC5sb2FkZXItdGV4dDphZnRlciB7XG4gICAgY29udGVudDogJ0xvYWRpbmcnO1xuICAgIGFuaW1hdGlvbjogbG9hZCAycyBsaW5lYXIgaW5maW5pdGU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBsb2FkIHtcbiAgMCUge1xuICAgIGNvbnRlbnQ6ICdMb2FkaW5nJztcbiAgfVxuICAzMyUge1xuICAgIGNvbnRlbnQ6ICdMb2FkaW5nLic7XG4gIH1cbiAgNjclIHtcbiAgICBjb250ZW50OiAnTG9hZGluZy4uJztcbiAgfVxuICAxMDAlIHtcbiAgICBjb250ZW50OiAnTG9hZGluZy4uLic7XG4gIH1cbn1cblxuLyoubW9kYWwtZGlhbG9nLXNjcm9sbGFibGUge1xuICAhKiB3aWR0aCAqIVxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICB3aWR0aDogNHB4O1xuICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgfVxuXG4gICEqIFRyYWNrICohXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGdyZXksIDEwJSk7XG4gIH1cblxuICAhKiBIYW5kbGUgKiFcbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgfVxuXG4gICEqIEhhbmRsZSBvbiBob3ZlciAqIVxuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHNlY29uZGFyeS1jb2xvciwgMjAlKTtcbiAgfVxufSovXG4iLCJAbWl4aW4gYm9yZGVyLXNpZGUoJHNpZGU6IGxlZnQsICRjb2xvcjogJGdyZXksICRzaXplOiAxcHgsICR0eXBlOiBzb2xpZCkge1xuICBib3JkZXItI3skc2lkZX06ICRzaXplICR0eXBlICRjb2xvcjtcbn1cblxuQG1peGluIG1hcmdpbi1zaWRlKCRzaWRlOiBsZWZ0LCAkc2l6ZToxcmVtKSB7XG4gIG1hcmdpbi0jeyRzaWRlfTogJHNpemU7XG59XG5cbkBtaXhpbiBmb3ItZXh0cmEtc21hbGwtZGV2aWNlcyB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA1NzUuOThweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3Itc21hbGwtZGV2aWNlcyB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA1NzZweCkgYW5kIChtYXgtd2lkdGg6IDc2Ny45OHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvci1tZWRpdW0tZGV2aWNlcyB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MS45OHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvci1sYXJnZS1kZXZpY2VzIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTE5OS45OHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvci14bC1kZXZpY2VzIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3ItcGhvbmVzIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDU3NnB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvci10YWJsZXRzIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGZvci1kZXNrdG9wcyB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbkBtaXhpbiBmb3ItbGFyZ2UtZGVza3RvcHMtZGV2aWNlcyB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAxMjAwcHgpIHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuIiwiaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL3NjaG90ZXN0X3BhdHRlcm4uc3ZnXCIpIHJlcGVhdCA4MCU7XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgaGVpZ2h0OiA5NXZoO1xuICB3aWR0aDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHotaW5kZXg6IDE7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMjUsIDY5LCAuNSk7XG4gICAgei1pbmRleDogLTE7XG4gIH1cblxuICAubG9jYXRpb24tc2VsZWN0b3Ige1xuICAgIHBhZGRpbmc6IDAgLjVyZW0gIWltcG9ydGFudDtcbiAgICBjb2xvcjogJGZvbnQtY29sb3IgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICBmb250LXNpemU6IC45cmVtO1xuICB9XG5cbiAgLnRvcC1iYXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAjMDAyNzViO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmc6IDFyZW0gMXJlbSAuNXJlbTtcblxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5saW5rcyB7XG4gICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgKiB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmxvZ2luLWxpbmsge1xuICAgICAgcGFkZGluZy1yaWdodDogMS41cmVtO1xuICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIG1hcmdpbi1yaWdodDogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5zZWFyY2gtY29udGFpbmVyIHtcbiAgICB3aWR0aDogY2FsYygxMDAlIC0gMzAlKTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuaGVhZGluZyB7XG4gICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgIHRleHQtc2hhZG93OiAxcHggM3B4IDNweCByZ2JhKDAsIDAsIDAsIDAuOSk7XG4gICAgfVxuXG4gICAgLnNlYXJjaCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgIH1cblxuICAgIC5sb2dvIHtcbiAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgbWFyZ2luLXJpZ2h0OiAxcmVtO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dFtuYW1lPVwic2Nob29sX25hbWVcIl0ge1xuICAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAwO1xuICAgICAgLW1vei1ib3JkZXItcmFkaXVzOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIG1pbi13aWR0aDogMjUwcHg7XG4gICAgICBwYWRkaW5nOiAuNXJlbTtcbiAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgfVxuXG4gICAgLmJ0biB7XG4gICAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIC8vcGFkZGluZy1sZWZ0OiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgICAvL3BhZGRpbmctcmlnaHQ6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IC40NXJlbSAxcmVtO1xuICAgIH1cblxuICB9XG5cbiAgLm5hdmlnYXRpb24tYmFyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBkb3R0ZWQgJHdoaXRlO1xuICAgICAgcGFkZGluZzogMCAuN3JlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcblxuICAgICAgLm5hdi1saW5rIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IGRvdHRlZCAkc2Vjb25kYXJ5LWNvbG9yO1xuXG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3JcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IGRvdHRlZCAkc2Vjb25kYXJ5LWNvbG9yO1xuXG4gICAgICAgIC5uYXYtbGluayB7XG4gICAgICAgICAgY29sb3I6ICRzZWNvbmRhcnktY29sb3JcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5kcm9wZG93bjpob3ZlciB7XG5cbiAgICAgIC5kcm9wZG93bi1tZW51IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRyb3Bkb3duLW1lbnUge1xuICAgICAgbWluLXdpZHRoOiA4cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cblxuICAgIC5kcm9wZG93bi1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICB9XG4gIH1cbn1cblxubWFpbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI3NjaG9vbHMge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogM3JlbSAwIDFyZW07XG5cbiAgLnNjaG9vbHMtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAzcmVtIDAgNHJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLnNjaG9vbC1jYXJkIHtcbiAgICBwYWRkaW5nOiAuNnJlbTtcbiAgICB3aWR0aDogODAlO1xuICAgIG1pbi1oZWlnaHQ6IDI5NXB4O1xuICAgIG1heC1oZWlnaHQ6IDM1MHB4O1xuICAgIG1hcmdpbjogMCBhdXRvIDFyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAvL21hcmdpbi1ib3R0b206IDFyZW07XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDNweCAxMXB4IDAgdHJhbnNwYXJlbnRpemUoJHB1cmUtYmxhY2ssIC42KTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgM3B4IDExcHggMCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjYpO1xuICAgIGJveC1zaGFkb3c6IDAgM3B4IDExcHggMCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjYpO1xuICAgIHRyYW5zaXRpb246IGFsbCA1MDBtcyBlYXNlLWluLW91dDtcblxuICAgICoge1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDUwMG1zIGVhc2UtaW4tb3V0O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoMS4zKSBzY2FsZVkoMS4zKTtcblxuICAgICAgLyouaW1hZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50aXplKCRwcmltYXJ5LWNvbG9yLCAuMyk7XG4gICAgICAgIH1cbiAgICAgIH0qL1xuICAgIH1cblxuICAgIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cblxuICAgIC5pbWFnZSB7XG4gICAgICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgICAgIG1heC1oZWlnaHQ6IDE0MHB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctdG9wOiAuM3JlbTtcbiAgICAgIC8vaGVpZ2h0OiA1NSU7XG5cbiAgICAgIC5uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nOiAwIDAgLjVyZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBsZWZ0OiAyMCU7XG4gICAgICAgICAgcmlnaHQ6IDIwJTtcbiAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50eXBlIHtcbiAgICAgICAgZm9udC1zaXplOiAuN3JlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgcGFkZGluZzogLjNyZW0gMCAuNHJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5yZXZpZXctY29udGFpbmVyIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogLjNyZW07XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5zdGFyLXJhdGluZyB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IC43cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50b3RhbC1yZXZpZXcge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRsaWdodC1ibGFjaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIC8vZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHN1cCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDY1JTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMXJlbTtcbiAgICAgICAgfSovXG4gICAgICB9XG5cbiAgICAgIC5iYXNpYy1kZXRhaWxzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgZm9udC1zaXplOiAuN3JlbTtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgZmxleC1iYXNpczogODAlO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAuY29udGVudC1yb3cge1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICAgICBzdXAge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDcwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29tcGFyZSB7XG4gICAgICAgICAgZmxleC1iYXNpczogMzAlO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgLmNvbXBhcmUtYnRuIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBjb2xvcjogIzIxMjUyOTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgcGFkZGluZzogLjFyZW0gLjNyZW07XG4gICAgICAgICAgICBmb250LXNpemU6IC43cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLWV4dHJhLXNtYWxsLWRldmljZXMge1xuICAgIHBhZGRpbmctdG9wOiAxcmVtO1xuXG4gICAgLm1haW4taGVhZGluZy1zdHlsZSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG5cbiAgICAuc2Nob29scy1jb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAuc2Nob29sLWNhcmQge1xuICAgICAgbWluLWhlaWdodDogYXV0bztcbiAgICAgIG1heC1oZWlnaHQ6IGluaXRpYWw7XG4gICAgfVxuICB9XG59XG5cbiNnYWxsZXJ5IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2dhbGxlcnktYmctaW1hZ2UucG5nXCIpICRzZWNvbmRhcnktY29sb3Igbm8tcmVwZWF0IGNlbnRlcjtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwYWRkaW5nOiA0cmVtIDA7XG5cbiAgLnVuZGVybGluZS1oZWFkaW5nIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC1zaGFkb3c6IDJweCAycHggMTBweCB0cmFuc3BhcmVudGl6ZSgkYmxhY2ssIC43KTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICBib3R0b206IDEwcHg7XG4gICAgICBsZWZ0OiAyNSU7XG4gICAgICByaWdodDogMjUlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmdhbGxlcnktZ3JpZCB7XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBncmlkLXRlbXBsYXRlLWFyZWFzOiBcIm1haW4gbWFpbiBzZWNvbmRhcnkgc2Vjb25kYXJ5IHNlY29uZGFyeVwiIFwibWFpbiBtYWluIHNlY29uZGFyeSBzZWNvbmRhcnkgc2Vjb25kYXJ5XCI7XG4gICAgZ3JpZC1nYXA6IC4zcmVtO1xuICAgIGJvcmRlcjogM3B4IHNvbGlkICR3aGl0ZTtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuXG4gICAgLm1haW4tZ3JpZCB7XG4gICAgICAvL3dpZHRoOiAzNSU7XG4gICAgICBncmlkLWFyZWE6IG1haW47XG4gICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgZ3JpZC1nYXA6IC4zcmVtO1xuICAgICAgLy9ncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1yb3dzOiByZXBlYXQoMywgMTAycHgpO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1jb2x1bW5zOiByZXBlYXQoMiwgMWZyKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIC5iaWctaW1hZ2Uge1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBncmlkLWNvbHVtbjogMS8zO1xuICAgICAgICBncmlkLXJvdzogMS8zO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zbWFsbC1pbWFnZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1ncmlkIHtcbiAgICAgIC8vd2lkdGg6IDY1JTtcbiAgICAgIGdyaWQtYXJlYTogc2Vjb25kYXJ5O1xuICAgICAgZGlzcGxheTogZ3JpZDtcbiAgICAgIGdyaWQtZ2FwOiAuM3JlbTtcbiAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDMsIDEwMnB4KTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIC5pbWFnZS1yb3cge1xuICAgICAgICBkaXNwbGF5OiBncmlkO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuICAgICAgICBncmlkLWdhcDogLjNyZW07XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG5cbiAgICAgIC5zbWFsbC1pbWFnZSB7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyouZ2FsbGVyeS1ncmlkIHtcbiAgICBib3JkZXI6IDNweCBzb2xpZCAkd2hpdGU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBzdHJldGNoO1xuICAgIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcblxuICAgICoge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5tYWluLWdyaWQge1xuICAgICAgZmxleC1iYXNpczogNDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgICAvL2JvcmRlci1yaWdodDogM3B4IHNvbGlkICR3aGl0ZTtcblxuICAgICAgLmJpZy1pbWFnZSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIC8vYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICR3aGl0ZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zbWFsbC1pbWFnZSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgLy9ib3JkZXItcmlnaHQ6IDNweCBzb2xpZCAkd2hpdGU7XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlY29uZGFyeS1ncmlkIHtcbiAgICAgIGZsZXgtYmFzaXM6IDYwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLmltYWdlLXJvdyB7XG4gICAgICAgIC8vYm9yZGVyLWJvdHRvbTogM3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc21hbGwtaW1hZ2Uge1xuICAgICAgICBmbGV4LWJhc2lzOiAzMyU7XG4gICAgICAgIC8vYm9yZGVyLXJpZ2h0OiAzcHggc29saWQgJHdoaXRlO1xuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSovXG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiAxMDIzcHgpIHtcblxuICAgIC51bmRlcmxpbmUtaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDNyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAzNCU7XG4gICAgICAgIHJpZ2h0OiAzNSU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbiNjb250ZW50IHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgfVxuICB9XG5cbiAgLyogd2lkdGggKi9cbiAgOjotd2Via2l0LXNjcm9sbGJhciB7XG4gICAgd2lkdGg6IDRweDtcbiAgfVxuXG4gIC8qIFRyYWNrICovXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgIGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGdyZXksIDEwJSk7XG4gIH1cblxuICAvKiBIYW5kbGUgKi9cbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgfVxuXG4gIC8qIEhhbmRsZSBvbiBob3ZlciAqL1xuICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiBkYXJrZW4oJHNlY29uZGFyeS1jb2xvciwgMjAlKTtcbiAgfVxuXG4gIC5ldmVudHMtY29udGFpbmVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAvKi5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgQGV4dGVuZCAubWFpbi1oZWFkaW5nLXN0eWxlO1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIH1cbiAgICB9Ki9cbiAgfVxuXG4gIC5ldmVudHMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAwIC41cmVtIDAgMDtcbiAgICB3aWR0aDogOTAlO1xuICAgIGhlaWdodDogNDAwcHg7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIC5ldmVudCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgbGlnaHRlbigkZ3JleSwgMTUlKTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAuZXZlbnQtaW1hZ2Uge1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDMwJSAtICguN3JlbSAvIDIpKTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IC40cmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmV2ZW50LWRldGFpbHMge1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDcwJSAtICguN3JlbSAvIDIpKTtcbiAgICAgICAgcGFkZGluZzogLjRyZW0gMCAwO1xuXG4gICAgICAgIC5kYXRlLWRldGFpbHMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC43cmVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjdyZW07XG5cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiB2YXIoLS1kYW5nZXIpO1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAuM3JlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IC42NjZyZW07XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGg2LCAuaGVhZGluZyB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tb3JlLWJ1dHRvbiB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcbiAgICBAZXh0ZW5kIC5idG4tY3VzdG9tLXNlY29uZGFyeTtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3Itc2hhZGU7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IC44cmVtO1xuICAgIHBhZGRpbmc6IC4ycmVtIC40cmVtO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICBib3gtc2hhZG93OiAwIDFweCA2cHggMXB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICB9XG4gIH1cblxuICAudXBjb21pbmctZXZlbnRzLWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC51cGNvbWluZy1ldmVudHMge1xuICAgICAgaGVpZ2h0OiA0MDBweDtcbiAgICAgIG92ZXJmbG93OiBhdXRvO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICB9XG5cbiAgICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICAgIC8vQGV4dGVuZCAubWFpbi1oZWFkaW5nLXN0eWxlO1xuICAgICAgLy9mb250LXNpemU6IDJyZW07XG4gICAgICAvL21hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIC8vd2lkdGg6IDMwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudXBjb21pbmctZXZlbnRzIHtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5ldmVudCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgIC5pbWFnZS1kZXRhaWxzIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA0NSU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAudGltZS1kZXRhaWxzIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogLjdyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRhdGUtZGV0YWlscyB7XG4gICAgICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjVyZW07XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5tb250aCB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAudGltZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IC43cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmV2ZW50LWRldGFpbHMge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogLjdyZW07XG4gICAgICAgICAgZmxleC1iYXNpczogY2FsYyg1NSUgLSAuN3JlbSk7XG4gICAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcblxuICAgICAgICAgIGg2LCAuaGVhZGluZyB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC4xcmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHAuZGV0YWlscyB7XG4gICAgICAgICAgICBmb250LXNpemU6IC43cmVtO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIC40cmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5hZGRyZXNzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuYmxvZ3MtY29udGFpbmVyIHtcbiAgICBtYXJnaW46IDRyZW0gMCAycmVtO1xuXG4gICAgLm1haW4taGVhZGluZy1zdHlsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLWl0ZW0ge1xuICAgICAgaGVpZ2h0OiAxNTVweDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgcGFkZGluZzogLjVyZW07XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGVuKCRncmV5LCAxNSUpO1xuICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAycHggMnB4IDNweCByZ2JhKDYwLCA1MywgNTEsIDAuMSk7XG4gICAgICAtbW96LWJveC1zaGFkb3c6IDJweCAycHggM3B4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKTtcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggM3B4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKTtcblxuICAgICAgLmltYWdlIHtcbiAgICAgICAgZmxleC1iYXNpczogNDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmRldGFpbHMge1xuICAgICAgICBmbGV4LWJhc2lzOiA1NSU7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAuMnJlbTtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIC8vd2lkdGg6IDg1JTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wb3N0LWRhdGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjc1cmVtO1xuICAgICAgICAgIG1hcmdpbjogMCAwIDAuM3JlbSAwO1xuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDAgMC4ycmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgICBmb250LXNpemU6IC42NjZyZW07XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnJlYWQtbW9yZSB7XG4gICAgICAgICAgLy9kaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgY29sb3I6ICRwdXJlLWJsYWNrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLWV4dHJhLXNtYWxsLWRldmljZXMge1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcblxuICAgIC5ldmVudHMtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuXG4gICAgLmV2ZW50cyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAudXBjb21pbmctZXZlbnRzLWNvbnRhaW5lciB7XG4gICAgICAvL21hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuXG4gICAgLmJsb2dzLWNvbnRhaW5lciB7XG4gICAgICAuYmxvZy1pdGVtIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1zbWFsbC1kZXZpY2VzIHtcblxuICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLmV2ZW50cyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAudXBjb21pbmctZXZlbnRzLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuYmxvZ3MtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbjogMnJlbSAwIDA7XG5cbiAgICAgIC5ibG9nLWl0ZW0ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICBAaW5jbHVkZSBmb3ItbWVkaXVtLWRldmljZXMge1xuXG4gICAgLm1haW4taGVhZGluZy1zdHlsZSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICAuZXZlbnRzLWNvbnRhaW5lciB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC51cGNvbWluZy1ldmVudHMtY29udGFpbmVyIHtcbiAgICAgIC8vbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLmJsb2dzLWNvbnRhaW5lciB7XG4gICAgICBtYXJnaW46IDJyZW0gMCAwO1xuXG4gICAgICAuYmxvZy1pdGVtIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jY291bnRlciB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9jb3VudGVyLWJnLnBuZ1wiKSBuby1yZXBlYXQgY2VudGVyO1xuXG4gICoge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cblxuICAuY291bnRpbmctaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBoNCB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmNvdW50aW5nIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAuY291bnRpbmctaXRlbSB7XG4gICAgICBoNCB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb3VudGluZyB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBib3JkZXItYm90dG9tOiA1cHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcbiAgICB9XG5cbiAgICAuY291bnRpbmctaXRlbSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3ItbWVkaXVtLWRldmljZXMge1xuICAgIC5jb3VudGluZy1pdGVtIHtcbiAgICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLWxhcmdlLWRldmljZXMge1xuICAgIC5jb3VudGluZy1pdGVtIHtcbiAgICAgIGg0IHtcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2ZvdW5kZXJzLXBlbiB7XG5cbiAgLmZvdW5kZXItaW1hZ2Uge1xuICAgIHBhZGRpbmc6IC42cmVtO1xuICAgIC13ZWJraXQtYm94LXNoYWRvdzogMCA1cHggMjBweCAycHggdHJhbnNwYXJlbnRpemUoJHB1cmUtYmxhY2ssIC44KTtcbiAgICAtbW96LWJveC1zaGFkb3c6IDAgNXB4IDIwcHggMnB4IHRyYW5zcGFyZW50aXplKCRwdXJlLWJsYWNrLCAuOCk7XG4gICAgYm94LXNoYWRvdzogMCA1cHggMjBweCAycHggdHJhbnNwYXJlbnRpemUoJHB1cmUtYmxhY2ssIC44KTtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAuZGVzYyB7XG4gICAgcGFkZGluZy1sZWZ0OiAycmVtO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgfVxuXG4gIC5kZXRhaWxzIHtcbiAgICB3aWR0aDogODAlO1xuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwIDFyZW0gMCAuN3JlbTtcbiAgICBmb250LXNpemU6IC44cmVtO1xuICAgIG1hcmdpbjogMDtcbiAgICBjb2xvcjogJGJsYWNrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxuXG4gIC5hdXRob3Ige1xuICAgIHdpZHRoOiA5MiU7XG4gICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xuICAgIC8vIG5vdGhpbmcgc3BlY2lhbCBoZXJlIHJpZ2h0IG5vd1xuICAgIC5kZXNjIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuICB9XG59XG5cbiN0ZXN0aW1vbmlhbHMge1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvdGVzdGltb25pYWxzLWJnLnBuZ1wiKSBuby1yZXBlYXQ7XG5cbiAgLnVuZGVybGluZS1oZWFkaW5nLXN0eWxlIHtcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgcGFkZGluZy1ib3R0b206IC41cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgLy90ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtc2hhZG93OiBub25lO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogM3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAudGVzdGltb25pYWxzLWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIC5wbGFjZWhvbGRlci1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLnJhdGluZy1jYXJkIHtcbiAgICAvL2ZsZXgtYmFzaXM6IDQ3JTtcbiAgICAvL3dpZHRoOiBjYWxjKDUwJSAtIDJyZW0pO1xuICAgIG1hcmdpbjogMCAuNXJlbSAwIDA7XG4gICAgcGFkZGluZzogLjhyZW07XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAycHggMXB4IDZweCAwIHRyYW5zcGFyZW50aXplKCRwdXJlLWJsYWNrLCAuOCk7XG4gICAgLW1vei1ib3gtc2hhZG93OiAycHggMXB4IDZweCAwIHRyYW5zcGFyZW50aXplKCRwdXJlLWJsYWNrLCAuOCk7XG4gICAgYm94LXNoYWRvdzogMnB4IDFweCA2cHggMCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjgpO1xuICB9XG5cbiAgLmJhc2ljLWRldGFpbHMge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICAuZGV0YWlscyB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gNzVweCk7XG4gICAgICBwYWRkaW5nOiAwIC41cmVtO1xuICAgIH1cblxuICAgIC51c2VyLW5hbWUge1xuICAgICAgbWFyZ2luLXRvcDogLjVyZW07XG4gICAgfVxuXG4gICAgLm5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG5cbiAgICAuZWR1Y2F0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cblxuICAgIC5wcm9maWxlLWltYWdlIHtcbiAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgaGVpZ2h0OiA3NXB4O1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucmF0aW5nIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICBpIHtcbiAgICAgICAgZm9udC1zaXplOiAuN3JlbTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGVzY3JpcHRpb24ge1xuICAgIGZvbnQtc2l6ZTogLjdyZW07XG4gICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICBtYXJnaW46IDFyZW0gMCAwO1xuICB9XG5cbiAgLmFkZC1idXR0b24ge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgfVxuXG4gIC5hZGQtdGVzdGltb25pYWwge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmV5O1xuICAgIGNvbG9yOiAkZ3JleTtcbiAgICB3aWR0aDogMzBweDtcbiAgICBoZWlnaHQ6IDMwcHg7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAycHggMXB4IDEwcHggMCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjgpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMnB4IDFweCAxMHB4IDAgdHJhbnNwYXJlbnRpemUoJHB1cmUtYmxhY2ssIC44KTtcbiAgICBib3gtc2hhZG93OiAycHggMXB4IDEwcHggMCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjgpO1xuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgxcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC51bmRlcmxpbmUtaGVhZGluZy1zdHlsZSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIC5iYXNpYy1kZXRhaWxzIHtcbiAgICAgIC5wcm9maWxlLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIH1cblxuICAgICAgLmRldGFpbHMge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC0gNTBweCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIG1hcmdpbi10b3A6IDFyZW07XG4gICAgfVxuXG4gICAgLnN0YXItcmF0aW5nIHtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IC42cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogMTAyM3B4KSB7XG4gICAgLnN0YXItcmF0aW5nIHtcbiAgICAgIGkge1xuICAgICAgICBmb250LXNpemU6IC40OHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2JkZS1vdmVydmlldyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgcGFkZGluZzogMXJlbSAwO1xuXG4gIC5oZWFkaW5nIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZm9udC1zaXplOiAyLjNyZW07XG4gIH1cblxuICAuYmRlLWNvbnRhaW5lciB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAuYmRlLWl0ZW0ge1xuICAgICAgZmxleC1iYXNpczogMTQlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgLnByb2ZpbGUtaW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTIwcHg7XG4gICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wcm9maWxlLWRldGFpbHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBtYXJnaW4tdG9wOiAuNHJlbTtcblxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIH1cblxuICAgICAgICAubG9jYXRpb24ge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xuICAgIC5oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICB9XG5cbiAgICAuYmRlLWNvbnRhaW5lciB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAuYmRlLWl0ZW0ge1xuICAgICAgICAucHJvZmlsZS1pbWFnZSB7XG4gICAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLW1lZGl1bS1kZXZpY2VzIHtcblxuICAgIC5iZGUtY29udGFpbmVyIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICB9XG59XG5cbiNhc3NvY2lhdGVzIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gIHAge1xuICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gIH1cblxuICAuYXNzb2NpYXRlcy1sb2dvLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLmFzc29jaWF0ZXMtbG9nbyB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC8gNCAtIDFyZW0pO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2RkZDtcbiAgICAgIG1hcmdpbjogMCAuNXJlbSAxcmVtO1xuICAgICAgaGVpZ2h0OiAxMDBweDtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG4gICAgcCB7XG4gICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3ItbWVkaXVtLWRldmljZXMge1xuICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcblxuICBoZWFkZXIge1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLnRvcC1iYXIge1xuICAgICAgcGFkZGluZy10b3A6IC41cmVtO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgICAubGlua3Mge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAubG9naW4tbGluayB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IC41cmVtO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAxcmVtIDAgMDtcbiAgICB9XG5cbiAgICAuc2VhcmNoLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG5cbiAgICAgIC5oZWFkaW5nIHtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuc2VhcmNoIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgLmxvZ28ge1xuICAgICAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgICAgICB3aWR0aDogY2FsYygxMDB2dyAtIDcwdncpO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMTAwdncgLSA3MHZ3KVxuICAgICAgfVxuXG4gICAgICBpbnB1dFtuYW1lPVwic2Nob29sX25hbWVcIl0ge1xuICAgICAgICBtYXgtd2lkdGg6IDE1MHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIG1pbi13aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5uYXZpZ2F0aW9uLWJhciB7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcblxuICAgICAgLm5hdmJhci1jb2xsYXBzZS5zaG93IHtcbiAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAxMHJlbTtcbiAgICAgIH1cblxuICAgICAgLm5hdi1pdGVtIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbWFpbiB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cblxuICBzZWN0aW9uIHtcbiAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGxpZ2h0LWdyZXk7XG4gIH1cblxuICAjc2Nob29scyB7XG4gICAgLnNjaG9vbC1jYXJkIHtcbiAgICAgIHdpZHRoOiA2MCU7XG4gICAgfVxuICB9XG5cbiAgI2dhbGxlcnkge1xuICAgIHBhZGRpbmc6IDFyZW0gMCAycmVtO1xuXG4gICAgLnVuZGVybGluZS1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBib3R0b206IDNweDtcbiAgICAgICAgbGVmdDogMjAlO1xuICAgICAgICByaWdodDogMjAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nYWxsZXJ5LWdyaWQge1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJtYWluIG1haW4gbWFpblwiIFwibWFpbiBtYWluIG1haW5cIiBcInNlY29uZGFyeSBzZWNvbmRhcnkgc2Vjb25kYXJ5XCIgXCJzZWNvbmRhcnkgc2Vjb25kYXJ5IHNlY29uZGFyeVwiIFwic2Vjb25kYXJ5IHNlY29uZGFyeSBzZWNvbmRhcnlcIjtcblxuICAgICAgLm1haW4tZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDU5cHgpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuXG4gICAgICAgIC5iaWctaW1hZ2Uge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2Vjb25kYXJ5LWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCA1OXB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5ldmVudHMge1xuICAgICAgLmV2ZW50IHtcbiAgICAgICAgcGFkZGluZzogLjVyZW07XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmV2ZW50cy1jb250YWluZXIsIC51cGNvbWluZy1ldmVudHMtY29udGFpbmVyLCAuYmxvZ3MtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLnVwY29taW5nLWV2ZW50cy1jb250YWluZXIge1xuICAgICAgLnVwY29taW5nLWV2ZW50cyB7XG5cbiAgICAgICAgLmV2ZW50IHtcbiAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgICAgIC5pbWFnZS1kZXRhaWxzIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuN3JlbTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGltZS1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvZ3MtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1haW4taGVhZGluZy1zdHlsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC5ibG9nLWl0ZW0ge1xuICAgICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuZGV0YWlscyB7XG5cbiAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnBvc3QtZGF0ZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNjb3VudGVyIHtcbiAgICBwYWRkaW5nOiAycmVtIDAgMDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuXG4gICAgJiAuY291bnRpbmctaXRlbTpudGgtbGFzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLmNvdW50aW5nLWl0ZW0ge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgfVxuICB9XG5cbiAgI2ZvdW5kZXJzLXBlbiB7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgLmNvbnRhaW5lciB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC5mb3VuZGVyLWltYWdlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgfVxuXG4gICAgLm1haW4taGVhZGluZy1zdHlsZSB7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVzYyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5kZXRhaWxzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIH1cblxuICAgIC5hdXRob3Ige1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICB9XG4gIH1cblxuICAjdGVzdGltb25pYWxzIHtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoJy4uL2ltZy90ZXN0aW1vbmlhbC1iZy1tb2JpbGUucG5nJykgbm8tcmVwZWF0O1xuICAgIGJhY2tncm91bmQtc2l6ZTogMTAwJSAxMDAlO1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICBjb2xvcjogaW5oZXJpdDtcblxuICAgIC5yYXRpbmctY2FyZCB7XG4gICAgICBtYXJnaW46IDAgMCAxcmVtO1xuICAgIH1cblxuICAgIC51bmRlcmxpbmUtaGVhZGluZy1zdHlsZSB7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cblxuICAgIC5iYXNpYy1kZXRhaWxzIHtcbiAgICAgIC8qLmVkdWNhdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnJhdGluZyBwIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfSovXG4gICAgfVxuXG4gICAgLyouZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgIH0qL1xuXG4gICAgLmFkZC1idXR0b24ge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAjYmRlLW92ZXJ2aWV3IHtcblxuICAgIC5oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIH1cblxuICAgIC5iZGUtY29udGFpbmVyIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgIC5iZGUtaXRlbSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAucHJvZmlsZS1pbWFnZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMnB4IDJweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6bnRoLWNoaWxkKDcpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2Fzc29jaWF0ZXMge1xuICAgIHBhZGRpbmc6IDJyZW0gMCAwO1xuXG4gICAgLmNvbC1zbS0xMiB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICB9XG5cbiAgICAuYXNzb2NpYXRlcy1sb2dvLWNvbnRhaW5lciB7XG5cbiAgICAgIC5hc3NvY2lhdGVzLWxvZ28ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHdpZHRoOiBjYWxjKCgxMDAlIC8gMikgLSAxcmVtKTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG5cbiAgaGVhZGVyIHtcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC50b3AtYmFyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAuNXJlbTtcbiAgICB9XG5cbiAgICAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMXJlbSAwIDA7XG4gICAgfVxuXG4gICAgLnNlYXJjaC1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuXG4gICAgICAuaGVhZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnNlYXJjaCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5sb2dvIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLSA3MHZ3KTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZ3IC0gNzB2dylcbiAgICAgIH1cblxuICAgICAgaW5wdXRbbmFtZT1cInNjaG9vbF9uYW1lXCJdIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbi1iYXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG5cbiAgICAgIC5uYXZiYXItY29sbGFwc2Uuc2hvdyB7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMTByZW07XG4gICAgICB9XG5cbiAgICAgIC5uYXYtaXRlbSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG1haW4ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cblxuICAjc2Nob29scyB7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgLnNjaG9vbHMtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMCAxcmVtO1xuICAgIH1cblxuICAgIC5zY2hvb2wtY2FyZCB7XG4gICAgICB3aWR0aDogOTAlO1xuICAgIH1cblxuICB9XG5cbiAgI2dhbGxlcnkge1xuICAgIHBhZGRpbmc6IDFyZW0gMCAycmVtO1xuXG4gICAgLnVuZGVybGluZS1oZWFkaW5nIHtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5nYWxsZXJ5LWdyaWQge1xuICAgICAgd2lkdGg6IDY1JTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgZ3JpZC10ZW1wbGF0ZS1hcmVhczogXCJtYWluIG1haW4gbWFpblwiIFwibWFpbiBtYWluIG1haW5cIiBcInNlY29uZGFyeSBzZWNvbmRhcnkgc2Vjb25kYXJ5XCIgXCJzZWNvbmRhcnkgc2Vjb25kYXJ5IHNlY29uZGFyeVwiIFwic2Vjb25kYXJ5IHNlY29uZGFyeSBzZWNvbmRhcnlcIjtcblxuICAgICAgLm1haW4tZ3JpZCB7XG4gICAgICAgIGdyaWQtdGVtcGxhdGUtcm93czogcmVwZWF0KDIsIDU5cHgpO1xuICAgICAgICBncmlkLXRlbXBsYXRlLWNvbHVtbnM6IHJlcGVhdCgzLCAxZnIpO1xuXG4gICAgICAgIC5iaWctaW1hZ2Uge1xuICAgICAgICAgIGdyaWQtY29sdW1uOiAxIC8gMztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2Vjb25kYXJ5LWdyaWQge1xuICAgICAgICBncmlkLXRlbXBsYXRlLXJvd3M6IHJlcGVhdCgzLCA1OXB4KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjY29udGVudCB7XG5cbiAgICAuYmxvZ3MtY29udGFpbmVyIHtcblxuICAgICAgLmJsb2ctaXRlbSB7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICN0ZXN0aW1vbmlhbHMge1xuXG4gICAgLnJhdGluZy1jYXJkIHtcbiAgICAgIHBhZGRpbmc6IC4ycmVtIC44cmVtIC44cmVtO1xuICAgIH1cbiAgO1xuICB9XG5cbiAgI2JkZS1vdmVydmlldyB7XG5cbiAgICAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICB9XG5cbiAgICAuYmRlLWNvbnRhaW5lciB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgICAuYmRlLWl0ZW0ge1xuICAgICAgICBmbGV4LWJhc2lzOiAzMyU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgJjpudGgtY2hpbGQoNykge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAucHJvZmlsZS1pbWFnZSB7XG4gICAgICAgICAgYm94LXNoYWRvdzogMnB4IDJweCAxMHB4IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcm9maWxlLWRldGFpbHMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYXNzb2NpYXRlcyB7XG4gICAgcGFkZGluZzogMnJlbSAwIDA7XG4gIH1cbn1cblxuQGluY2x1ZGUgZm9yLW1lZGl1bS1kZXZpY2VzIHtcbiAgaGVhZGVyIHtcbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIH1cblxuICAgIC50b3AtYmFyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAuNXJlbTtcbiAgICB9XG5cbiAgICAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMXJlbSAwIDA7XG4gICAgfVxuXG4gICAgLnNlYXJjaC1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuXG4gICAgICAuaGVhZGluZyB7XG4gICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcbiAgICAgIH1cblxuICAgICAgLnNlYXJjaCB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5sb2dvIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwdncgLSA3MHZ3KTtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEwMHZ3IC0gNzB2dylcbiAgICAgIH1cblxuICAgICAgaW5wdXRbbmFtZT1cInNjaG9vbF9uYW1lXCJdIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgICAgICBtaW4td2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbi1iYXIge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG5cbiAgICAgIC5uYXZiYXItY29sbGFwc2Uuc2hvdyB7XG4gICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMTByZW07XG4gICAgICB9XG5cbiAgICAgIC5uYXYtaXRlbSB7XG4gICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHNlY3Rpb24ge1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgfVxuXG4gICNzY2hvb2xzIHtcblxuICAgIC5zY2hvb2xzLWNvbnRhaW5lciB7XG4gICAgICBwYWRkaW5nOiAycmVtIDA7XG4gICAgfVxuXG4gICAgLnNjaG9vbC1jYXJkIHtcbiAgICAgIHdpZHRoOiA5MCU7XG4gICAgfVxuICB9XG5cbiAgI2dhbGxlcnkge1xuICAgIHBhZGRpbmc6IDFyZW0gMCAycmVtO1xuXG4gICAgLnVuZGVybGluZS1oZWFkaW5nIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgcmlnaHQ6IDEwJTtcbiAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5ldmVudHMge1xuICAgICAgLmV2ZW50IHtcbiAgICAgICAgcGFkZGluZzogLjVyZW07XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmV2ZW50cy1jb250YWluZXIsIC51cGNvbWluZy1ldmVudHMtY29udGFpbmVyLCAuYmxvZ3MtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuXG4gICAgLnVwY29taW5nLWV2ZW50cy1jb250YWluZXIge1xuICAgICAgLnVwY29taW5nLWV2ZW50cyB7XG4gICAgICAgIHdpZHRoOiA5NSU7XG5cbiAgICAgICAgLmV2ZW50IHtcbiAgICAgICAgICBhbGlnbi1pdGVtczogc3RyZXRjaDtcblxuICAgICAgICAgIC5pbWFnZS1kZXRhaWxzIHtcbiAgICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAuN3JlbTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAudGltZS1kZXRhaWxzIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvZ3MtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLm1haW4taGVhZGluZy1zdHlsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC5ibG9nLWl0ZW0ge1xuICAgICAgICBtYXJnaW46IDFyZW0gMDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuZGV0YWlscyB7XG5cbiAgICAgICAgICAudGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnBvc3QtZGF0ZSB7XG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNmb3VuZGVycy1wZW4ge1xuXG4gICAgLmRlc2Mge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC5kZXRhaWxzIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gICN0ZXN0aW1vbmlhbHMge1xuXG4gICAgLnVuZGVybGluZS1oZWFkaW5nLXN0eWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiA0MCU7XG4gICAgICAgIHJpZ2h0OiA0MCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgfVxuICB9XG5cbiAgI2JkZS1vdmVydmlldyB7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgLmJkZS1jb250YWluZXIge1xuICAgICAgLmJkZS1pdGVtIHtcbiAgICAgICAgZmxleC1iYXNpczogMjUlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNhc3NvY2lhdGVzIHtcbiAgICBwYWRkaW5nOiAycmVtIDAgMDtcblxuICAgIC5hc3NvY2lhdGVzLWRldGFpbHMge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB9XG5cbiAgICAuYXNzb2NpYXRlcy1sb2dvLWNvbnRhaW5lciB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG5cbiAgICAgIC5hc3NvY2lhdGVzLWxvZ28ge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMyAtIDFyZW0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5mbG9hdGluZy1jb250YWN0IHtcbiAgICB3aWR0aDogODAlO1xuICAgIGxlZnQ6IDEwJTtcbiAgfVxufVxuIiwiLmV2ZW50cy10YWIge1xuICBtYXJnaW46IDJyZW0gMCAxcmVtO1xuICBib3JkZXItYm90dG9tOiAycHggc29saWQgJHByaW1hcnktY29sb3I7XG5cbiAgLm5hdi1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAtMnB4O1xuICB9XG5cbiAgLm5hdi1saW5rIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXI6IDJweCBzb2xpZCAkZ3JleTtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBtYXJnaW46IDAgLjZyZW07XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblxuICAgICY6aG92ZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuXG4gICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgICYuYWN0aXZlIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHByaW1hcnktY29sb3IgJHByaW1hcnktY29sb3IgdHJhbnNwYXJlbnQgJHByaW1hcnktY29sb3I7XG4gICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5ldmVudHMtY29udGFpbmVyIHtcblxuICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICBAZXh0ZW5kIC5tYWluLWhlYWRpbmctc3R5bGU7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICB9XG4gIH1cblxuICAuZXZlbnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgLy9hbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgcGFkZGluZzogMnJlbSAzcmVtO1xuXG4gICAgLmltYWdlIHtcbiAgICAgIGZsZXgtYmFzaXM6IDM1JTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgfVxuXG4gICAgICAudGltZS1kZXRhaWxzIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIC8vbWFyZ2luLXRvcDogMnJlbTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogLjdyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAuZGF0ZS1kZXRhaWxzIHtcbiAgICAgICAgLmRhdGUge1xuICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm1vbnRoIHtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRpbWUge1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5ldmVudC1kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmctbGVmdDogLjdyZW07XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLSAoNTAlKSk7XG4gICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAudGltZS1kZXRhaWxzIHtcbiAgICAgICAgZmxleC1iYXNpczogMzAlO1xuICAgICAgfVxuXG4gICAgICAubWFpbi1kZXRhaWxzIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAuN3JlbTtcbiAgICAgIH1cblxuICAgICAgaDYsIC5oZWFkaW5nIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC4zcmVtO1xuICAgICAgfVxuXG4gICAgICBwLmRldGFpbHMge1xuICAgICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBtYXJnaW46IDAgMCAuNHJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgIH1cblxuICAgICAgLmFkZHJlc3Mge1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlxcZjNjNVwiO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkZvbnQgQXdlc29tZSA1IEZyZWVcIjtcbiAgICAgICAgICBjb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IC4ycmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmRldGFpbHMtYnV0dG9uIHtcbiAgICAgIGZsZXgtYmFzaXM6IDE1JTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAgIC5idG4tcm91bmQtc2Vjb25kYXJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZm9yLWV4dHJhLXNtYWxsLWRldmljZXMge1xuICAuZXZlbnRzLXRhYiB7XG4gICAgbWFyZ2luLXRvcDogMXJlbTtcblxuICAgIC5uYXYtaXRlbSB7XG4gICAgICBtYXJnaW46IDAgMCAtM3B4O1xuICAgIH1cblxuICAgIC5uYXYtbGluayB7XG4gICAgICBwYWRkaW5nOiAuM3JlbTtcbiAgICB9XG4gIH1cblxuICAuZXZlbnRzLWNvbnRhaW5lciB7XG5cbiAgICAvKi5ldmVudCB7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLmltYWdlIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwcHg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmV2ZW50LWRldGFpbHMge1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLSAxMTBweCk7XG4gICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgLnRpbWUtZGV0YWlscyB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAycHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogLjVyZW07XG5cbiAgICAgICAgICAuZGF0ZS1kZXRhaWxzIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC4zcmVtO1xuXG4gICAgICAgICAgICAuZGF0ZSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubW9udGgge1xuICAgICAgICAgICAgICBmb250LXNpemU6IC44cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnRpbWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuN3JlbSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5tYWluLWRldGFpbHMge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IGF1dG87XG4gICAgICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgaDYsIC5oZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cblxuICAgICAgICBwLmRldGFpbHMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjJyZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hZGRyZXNzIHtcbiAgICAgICAgICBmb250LXNpemU6IC44cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IC45cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGV0YWlscy1idXR0b24ge1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDAgMDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuICAgIH0qL1xuXG5cbiAgICAuZXZlbnQge1xuICAgICAgcGFkZGluZzogMCAuNXJlbTtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgLmltYWdlIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgcGFkZGluZy1yaWdodDogLjdyZW07XG4gICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgIGZsZXgtYmFzaXM6IDQ0JTtcblxuICAgICAgICAuZXZlbnQtaW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aW1lLWRldGFpbHMge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuXG4gICAgICAgICAgLmRhdGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tb250aCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnRpbWUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuN3JlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmV2ZW50LWRldGFpbHMge1xuICAgICAgICBmbGV4LWJhc2lzOiA1NSU7XG5cbiAgICAgICAgLm1haW4tZGV0YWlscyB7XG4gICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDYsIC5oZWFkaW5nIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIH1cblxuICAgICAgICBwLmRldGFpbHMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYWRkcmVzcyB7XG4gICAgICAgICAgZm9udC1zaXplOiAuN3JlbTtcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGV0YWlscy1idXR0b24ge1xuICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGZvci1zbWFsbC1kZXZpY2VzIHtcblxuICAuZXZlbnRzLWNvbnRhaW5lciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nLXRvcDogMXJlbTtcblxuICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG4gICAgfVxuXG4gICAgLmV2ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgLjVyZW07XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG5cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IC43cmVtO1xuICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBmbGV4LWJhc2lzOiAzNCU7XG5cbiAgICAgICAgLmV2ZW50LWltYWdlIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDEyMHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAudGltZS1kZXRhaWxzIHtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcblxuICAgICAgICAgIC5kYXRlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAubW9udGgge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC50aW1lIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5ldmVudC1kZXRhaWxzIHtcbiAgICAgICAgZmxleC1iYXNpczogNjUlO1xuXG4gICAgICAgIC5tYWluLWRldGFpbHMge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICBoNiwgLmhlYWRpbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgcC5kZXRhaWxzIHtcbiAgICAgICAgICBmb250LXNpemU6IC45NXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hZGRyZXNzIHtcbiAgICAgICAgICBmb250LXNpemU6IC43cmVtO1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5kZXRhaWxzLWJ1dHRvbiB7XG4gICAgICAgIG1hcmdpbi10b3A6IC41cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGZvci1tZWRpdW0tZGV2aWNlcyB7XG4gIC5ldmVudHMtY29udGFpbmVyIHtcblxuICAgIC5ldmVudCB7XG4gICAgICBwYWRkaW5nOiAycmVtIDFyZW07XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLmltYWdlIHtcbiAgICAgICAgZmxleC1iYXNpczogNTAlO1xuICAgICAgfVxuXG4gICAgICAuZXZlbnQtZGV0YWlscyB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAtIDUwJSk7XG5cbiAgICAgICAgLm1haW4tZGV0YWlscyB7XG4gICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5kZXRhaWxzLWJ1dHRvbiB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuZXZlbnQtY29udGVudCB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmV2ZW50LWltYWdlIHtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRlbnQge1xuICAgIC8vcGFkZGluZy1sZWZ0OiAycmVtO1xuICB9XG5cbiAgLnRpbWUtZGV0YWlscyB7XG4gICAgQGV4dGVuZCAudGltZS1kZXRhaWxzO1xuICAgIGJvcmRlcjogMDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICY6OmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3R0b206IC0xMHB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiA4NSU7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgfVxuXG4gICAgLnRpbWUge1xuICAgICAgbWFyZ2luLXRvcDogLTEzcHg7XG4gICAgICAvL21hcmdpbi1sZWZ0OiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gIH1cblxuICAuZGV0YWlscyB7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGNvbG9yOiAkbGlnaHQtYmxhY2s7XG5cbiAgICAqIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICB9XG5cbiAgLmV2ZW50LXNoYXJlIHtcbiAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmV5O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuXG4gICAgKiB7XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGZsZXgtYmFzaXM6IDYwJTtcbiAgICB9XG5cbiAgICAubGlua3Mge1xuICAgICAgZmxleC1iYXNpczogNDAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgfVxuXG4gIC5hZGRyZXNzIHtcbiAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgZm9udC1zaXplOiAxcmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYzYzVcIjtcbiAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgZm9udC1mYW1pbHk6IFwiRm9udCBBd2Vzb21lIDUgRnJlZVwiO1xuICAgIH1cbiAgfVxufVxuXG4uZXZlbnQtZXh0cmEtZGV0YWlscyB7XG4gIG1hcmdpbi10b3A6IDJyZW07XG4gIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgI21hcCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAyMDBweDtcblxuICAgIGlmcmFtZSB7XG4gICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcbiAgLmV2ZW50LWNvbnRlbnQge1xuXG4gICAgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgfVxuXG4gICAgLnRpbWUtZGV0YWlscyB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAuZGF0ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIH1cblxuICAgICAgLm1vbnRoIHtcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAudGltZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXRhaWxzIHtcbiAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIH1cblxuICAgIC5hZGRyZXNzIHtcbiAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICBwYWRkaW5nOiAycmVtIDAgMDtcbiAgICB9XG5cbiAgICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5ldmVudC1leHRyYS1kZXRhaWxzIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uLXJldmVyc2U7XG5cbiAgICAjbWFwIHtcbiAgICAgIG1hcmdpbjogMCAwIDJyZW0gMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLmpvaW4tZm9ybSB7XG5cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xuICAuZXZlbnQtY29udGVudCB7XG4gICAgLmNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAudGltZS1kZXRhaWxzIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgIC5kYXRlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgfVxuXG4gICAgICAubW9udGgge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC50aW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hZGRyZXNzIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuICB9XG5cbiAgLmV2ZW50LWV4dHJhLWRldGFpbHMge1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcblxuICAgICNtYXAge1xuICAgICAgbWFyZ2luOiAwIDAgMnJlbTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGZvci14bC1kZXZpY2VzIHtcbiAgLmV2ZW50LWNvbnRlbnQge1xuXG4gICAgLmV2ZW50LXNoYXJlIHtcbiAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgfVxuXG4gICAgLmFkZHJlc3Mge1xuICAgICAgbWFyZ2luLXRvcDogMnJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIiRib3JkZXItYm90dG9tOiAxcHggc29saWQgbGlnaHRlbigkZ3JleSwgMTUlKTtcbi5zaWRlYmFyIHtcbiAgcGFkZGluZzogMCAxcmVtIDAgMDtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbiAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgJGdyZXk7XG5cbiAgKiB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuXG4gIC5wcmUtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgLmljb24taW5zaWRlLXJpZ2h0IHtcbiAgICAgIGkge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgKiB7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgICB9XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAxMXB4IHRyYW5zcGFyZW50aXplKCRzZWNvbmRhcnktY29sb3IsIC45KTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMCAwLjJyZW0gdHJhbnNwYXJlbnRpemUoJHNlY29uZGFyeS1jb2xvciwgLjgpO1xuXG4gICAgICAgICAgKyBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubW9iaWxlLWZpbHRlci10cmlnZ2VyLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5tb2JpbGUtZmlsdGVyLWNvbnRyb2xzIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLmhlYWRlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLWJvdHRvbTtcbiAgICBwYWRkaW5nOiAwIDFyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIGgzLCAuaGVhZGluZyB7XG4gICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC4ycmVtO1xuICAgICAgZmxleC1iYXNpczogOTAlO1xuICAgIH1cblxuICAgIGksIC5pY29uIHtcbiAgICAgIGZsZXgtYmFzaXM6IDEwJTtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5yYW5raW5nIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOiAxcmVtO1xuICAgIGJvcmRlci1ib3R0b206ICRib3JkZXItYm90dG9tO1xuXG4gICAgLmhlYWRlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICBoMywgLmhlYWRpbmcge1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB9XG5cbiAgICAuY29udGVudCB7XG4gICAgICBvdmVyZmxvdy15OiBhdXRvO1xuICAgICAgbWF4LWhlaWdodDogMTIwcHg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG5cbiAgICAgICYuc2hvdyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB9XG5cbiAgICAgIC5ib3gge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLmhpZGRlbi1jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAmLnNob3cge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgcGFkZGluZzogMCAxcmVtO1xuICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC4xcmVtO1xuICAgICAgICBmb250LXdlaWdodDogbGlnaHRlcjtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudG9nZ2xlLWV4dHJhIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG5cbiAgICAvKiB3aWR0aCAqL1xuICAgIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgd2lkdGg6IDRweDtcbiAgICB9XG5cbiAgICAvKiBUcmFjayAqL1xuICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdHJhY2sge1xuICAgICAgYmFja2dyb3VuZDogJGdyZXk7XG4gICAgfVxuXG4gICAgLyogSGFuZGxlICovXG4gICAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIH1cblxuICAgIC8qIEhhbmRsZSBvbiBob3ZlciAqL1xuICAgIDo6LXdlYmtpdC1zY3JvbGxiYXItdGh1bWI6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICB9XG4gIH1cblxuICAucmF0aW5nIHtcbiAgICBAZXh0ZW5kIC5yYW5raW5nO1xuICAgIG1hcmdpbi10b3A6IDFyZW07XG5cbiAgICAuZm9ybS1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgLnN0YXItcmF0aW5nLWNvbnRhaW5lciB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDk1JTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgIGNvbG9yOiAkZ3JleTtcbiAgICAgICAgfVxuXG4gICAgICAgIC50ZXh0IHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgcGFkZGluZzogMCAwIDAgLjRyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGlucHV0IHtcbiAgICAgICAgZmxleC1iYXNpczogNSU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNjaG9vbC10eXBlLCAuc2Nob29sLWxvY2F0aW9uLCAuc2Nob29sLW1lZGl1bSwgLnNjaG9vbC1mZWF0dXJlcyB7XG4gICAgQGV4dGVuZCAucmFua2luZztcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgLnNjaG9vbC1zdHJlbmd0aCB7XG4gICAgQGV4dGVuZCAucmFua2luZztcbiAgICBtYXJnaW4tdG9wOiAxcmVtO1xuXG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIC5jdXN0b20tcmFuZ2U6Oi13ZWJraXQtc2xpZGVyLXRodW1iIHtcbiAgICAgIGJhY2tncm91bmQ6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgfVxuXG4gICAgLmN1c3RvbS1yYW5nZTo6LW1vei1yYW5nZS10aHVtYiB7XG4gICAgICBiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5zY2hvb2wtZmVhdHVyZXMge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gIH1cbn1cblxuLnNjaG9vbHMtbGlzdCB7XG4gIG1hcmdpbi10b3A6IDFyZW07XG4gIHBhZGRpbmc6IDA7XG5cbiAgLnRvcC1kZXRhaWxzIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIHBhZGRpbmctYm90dG9tOiAuM3JlbTtcbiAgICBib3JkZXItYm90dG9tOiAkYm9yZGVyLWJvdHRvbTtcblxuICAgIC5pY29uLWluc2lkZS1yaWdodCB7XG4gICAgICBpIHtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDMwMG1zIGVhc2UtaW4tb3V0O1xuICAgICAgfVxuXG4gICAgICBpbnB1dCB7XG4gICAgICAgICoge1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAgMTFweCB0cmFuc3BhcmVudGl6ZSgkc2Vjb25kYXJ5LWNvbG9yLCAuOSk7XG4gICAgICAgIH1cblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogMCAwIDAgMC4ycmVtIHRyYW5zcGFyZW50aXplKCRzZWNvbmRhcnktY29sb3IsIC44KTtcblxuICAgICAgICAgICsgaSB7XG4gICAgICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmluZm8ge1xuICAgIC8vd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZsZXgtYmFzaXM6IDEwJTtcbiAgfVxuXG4gIC5zZWFyY2gtYm94IHtcbiAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLy9kaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLnNlYXJjaC1pbnB1dCB7XG4gICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgfVxuXG4gIC5zY2hvb2wtY2FyZCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwYWRkaW5nOiAuM3JlbSAuNHJlbTtcbiAgICBib3JkZXI6ICRib3JkZXItYm90dG9tO1xuICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiAycHggMnB4IDNweCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjkpO1xuICAgIC1tb3otYm94LXNoYWRvdzogMnB4IDJweCAzcHggdHJhbnNwYXJlbnRpemUoJHB1cmUtYmxhY2ssIC45KTtcbiAgICBib3gtc2hhZG93OiAycHggMnB4IDNweCB0cmFuc3BhcmVudGl6ZSgkcHVyZS1ibGFjaywgLjkpO1xuXG4gICAgLmltYWdlLWFuZC1kZXRhaWxzIHtcbiAgICAgIGZsZXgtYmFzaXM6IDcwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgICAvL2FsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAuNXJlbTtcbiAgICAgIGJvcmRlci1yaWdodDogJGJvcmRlci1ib3R0b207XG5cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoNDUlIC0gLjVyZW0pO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHB4O1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wcmltYXJ5LWRldGFpbHMge1xuICAgICAgICBmbGV4LWJhc2lzOiA1NSU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgQGV4dGVuZCAudW5kZXJsaW5lLWhlYWRpbmctc3R5bGU7XG4gICAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIHRleHQtc2hhZG93OiAwIDAgMDtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYm90dG9tOiAtNXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFzaWMtaW5mbyB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxcmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgICAgICAgICAgIC8vYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjY2NnJlbTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC4xcmVtO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5leHRyYS1pbmZvIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICAudGFncyB7XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBjb2xvcjogZGFya2VuKCRncmV5LCAxMCUpO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuN3JlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGFjdC1pbmZvIHtcbiAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgIGNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgICAuaG92ZXItc2xpZGUtbGVmdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICAgICAmOmZpcnN0LW9mLXR5cGUgaSB7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogJGJvcmRlci1ib3R0b207XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IC40cmVtO1xuICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1vZi10eXBlIGkge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IC4ycmVtO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAuc2xpZGUtdGhpcyB7XG4gICAgICAgICAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAyMDBtcyBlYXNlLWluLW91dDtcblxuICAgICAgICAgICAgICAmLnNob3cge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLyppIHtcbiAgICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSovXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGV0YWlscy1vcHRpb24ge1xuICAgICAgZmxleC1iYXNpczogMzAlO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAuZmF2b3VyaXRlIHtcbiAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAuNTtcblxuICAgICAgICAmIGkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG5cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBjb2xvcjogdmFyKC0tZGFuZ2VyKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnJhdGluZy1kZXRhaWxzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IC45cmVtO1xuXG4gICAgICAgIGgzIHtcbiAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLnN0YXItcmF0aW5nLWNvbnRhaW5lciB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IC43O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC4ycmVtO1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IC43cmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuN3JlbTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIC4zcmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50b3RhbC1yZXZpZXdzIHtcbiAgICAgICAgICBmb250LXNpemU6IC42NjZyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmRldGFpbHMtYnV0dG9ucyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgJiA+IC5idG4ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC4zcmVtO1xuXG4gICAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYnRuLWRldGFpbHMge1xuICAgICAgICAgIEBleHRlbmQgLmJ0bi1yb3VuZC1zZWNvbmRhcnk7XG4gICAgICAgICAgZm9udC1zaXplOiAuNjY2cmVtO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAgIHBhZGRpbmc6IC4wNXJlbSAuNXJlbTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDJweCAycHggM3B4IHRyYW5zcGFyZW50aXplKCRwdXJlLWJsYWNrLCAuOSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY3cHgpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG59XG5cbkBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcbiAgLnNpZGViYXIge1xuICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICBwYWRkaW5nOiAwO1xuICAgIFxuICAgIC5wcmUtaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5oaWRlLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5tb2JpbGUtZmlsdGVyLXRyaWdnZXItY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEuNXJlbTtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcblxuICAgICAgLm1vYmlsZS1maWx0ZXItdHJpZ2dlciwgLnRvdGFsLXJlc3VsdCB7XG4gICAgICAgIHBhZGRpbmc6IC4zcmVtIDFyZW07XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuICAgICAgICBib3gtc2hhZG93OiAycHggMnB4IDEwcHggcmdiYSg2MCwgNTMsIDUxLCAwLjEpLCAtMnB4IC0ycHggMTBweCByZ2JhKDYwLCA1MywgNTEsIDAuMSk7XG4gICAgICB9XG5cbiAgICAgIC50b3RhbC1yZXN1bHQge1xuICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgfVxuXG4gICAgICAubW9iaWxlLWZpbHRlci10cmlnZ2VyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9iaWxlLWZpbHRlcnMtY29udGFpbmVyIHtcbiAgICAgIHBhZGRpbmctdG9wOiAycmVtO1xuXG4gICAgICAubW9iaWxlLWZpbHRlci1jb250cm9scyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgICAgIC5jbGVhci1idXR0b24ge1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5yYXRpbmcsIC5yYW5raW5nLCAuaGVhZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgICB9XG5cbiAgfVxuXG4gIC5zY2hvb2xzLWxpc3Qge1xuICAgIC50b3AtZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5zY2hvb2wtY2FyZCB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAuaW1hZ2UtYW5kLWRldGFpbHMge1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwIDAgLjVyZW0gMDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuZGV0YWlscy1vcHRpb24ge1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgICAgcGFkZGluZzogLjVyZW0gMCAwO1xuXG4gICAgICAgICYgPiAqIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAzNSU7XG4gICAgICAgIH1cblxuICAgICAgICAuZmF2b3VyaXRlIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAxNSU7XG4gICAgICAgIH1cblxuICAgICAgICAucmF0aW5nLWRldGFpbHMge1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICB9XG5cbiAgICAgICAgLmZhdm91cml0ZSB7XG4gICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGV0YWlscy1idXR0b25zIHtcbiAgICAgICAgICBvcmRlcjogMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG4gIC5zaWRlYmFyIHtcbiAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgcGFkZGluZzogMDtcblxuICAgIC5wcmUtaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cblxuICAgIC5oaWRlLW1vYmlsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIC5tb2JpbGUtZmlsdGVyLXRyaWdnZXItY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMS41cmVtO1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRsaWdodC1ncmV5O1xuXG4gICAgICAubW9iaWxlLWZpbHRlci10cmlnZ2VyLCAudG90YWwtcmVzdWx0IHtcbiAgICAgICAgcGFkZGluZzogLjNyZW0gMXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XG4gICAgICAgIGJveC1zaGFkb3c6IDJweCAycHggMTBweCByZ2JhKDYwLCA1MywgNTEsIDAuMSksIC0ycHggLTJweCAxMHB4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKTtcbiAgICAgIH1cblxuICAgICAgLnRvdGFsLXJlc3VsdCB7XG4gICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5tb2JpbGUtZmlsdGVyLXRyaWdnZXIge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2JpbGUtZmlsdGVycy1jb250YWluZXIge1xuICAgICAgcGFkZGluZy10b3A6IDJyZW07XG5cbiAgICAgIC5tb2JpbGUtZmlsdGVyLWNvbnRyb2xzIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgLmNsZWFyLWJ1dHRvbiB7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJhdGluZywgLnJhbmtpbmcsIC5oZWFkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRsaWdodC1ncmV5O1xuICAgIH1cblxuICB9XG5cbiAgLnNjaG9vbHMtbGlzdCB7XG4gICAgLnRvcC1kZXRhaWxzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLnNjaG9vbC1jYXJkIHtcblxuICAgICAgLmltYWdlLWFuZC1kZXRhaWxzIHtcblxuICAgICAgICAucHJpbWFyeS1kZXRhaWxzIHtcblxuICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmJhc2ljLWluZm8ge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZGV0YWlscy1vcHRpb24ge1xuXG4gICAgICAgIC5yYXRpbmctZGV0YWlscyB7XG5cbiAgICAgICAgICAudG90YWwtcmV2aWV3cyB7XG4gICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXRhaWxzLWJ1dHRvbnMge1xuXG4gICAgICAgICAgJiA+IC5idG4ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjZyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmJ0bi1kZXRhaWxzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGZvci1tZWRpdW0tZGV2aWNlcyB7XG4gIC5zaWRlYmFyIHtcblxuICAgIC5wcmUtaGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLm1vYmlsZS1maWx0ZXJzLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICAuc2Nob29scy1saXN0IHtcblxuICAgIC50b3AtZGV0YWlscyB7XG5cbiAgICAgIC5zZWFyY2gtYm94IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNjaG9vbC1jYXJkIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIC5pbWFnZS1hbmQtZGV0YWlscyB7XG4gICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IC41cmVtO1xuICAgICAgfVxuXG4gICAgICAuZGV0YWlscy1vcHRpb24ge1xuICAgICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjYmJiO1xuICAgICAgICBwYWRkaW5nOiAuNXJlbSAwIDA7XG5cbiAgICAgICAgLnJhdGluZy1kZXRhaWxzLCAuZGV0YWlscy1idXR0b25zIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAzNSU7XG4gICAgICAgIH1cblxuICAgICAgICAucmF0aW5nLWRldGFpbHMge1xuICAgICAgICAgIG9yZGVyOiAxO1xuICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICYgPiAqIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC40cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmZhdm91cml0ZSB7XG4gICAgICAgICAgb3JkZXI6IDI7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgaSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM3JlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGV0YWlscy1idXR0b25zIHtcbiAgICAgICAgICBvcmRlcjogMztcblxuICAgICAgICAgICYgPiAuYnRuIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC42cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mYXZvdXJpdGUge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDE1JTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBmb3ItbGFyZ2UtZGV2aWNlcyB7XG5cbiAgLnNpZGViYXIge1xuICAgIC5tb2JpbGUtZmlsdGVycy1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGZvci14bC1kZXZpY2VzIHtcblxuICAuc2lkZWJhciB7XG4gICAgLm1vYmlsZS1maWx0ZXJzLWNvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIiNibG9nLWRldGFpbHMge1xuXG4gIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBjb2xvcjogJGhlYWRpbmctY29sb3I7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgLmJsb2ctZGV0YWlscyB7XG5cbiAgICAuYmxvZy1pbWFnZS1kZXRhaWxzIHtcblxuICAgICAgLm1haW4taW1hZ2Uge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyOiAuNXJlbSBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6ICRsaWdodC1zaGFkb3c7XG4gICAgICB9XG5cbiAgICAgIC5ibG9nLWF1dGhvci1kZXRhaWxzIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC02MHB4O1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAtNDVweDtcblxuICAgICAgICAuYXV0aG9yLWltYWdlIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBoZWlnaHQ6IDExMHB4O1xuICAgICAgICAgIHdpZHRoOiAxMTBweDtcbiAgICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIH1cblxuICAgICAgICAubmFtZSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGNvbG9yOiAkcHVyZS1ibGFjaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvZy1jb250ZW50IHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5ibG9nLWhlYWRpbmcge1xuICAgICAgICBAZXh0ZW5kIC51bmRlcmxpbmUtaGVhZGluZy1zdHlsZTtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgIGxlZnQ6IDQwJTtcbiAgICAgICAgICByaWdodDogNDAlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICB9XG5cbiAgICAgIC5ibG9nLWJhc2ljLWRldGFpbHMge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgLnBvc3QtZGF0ZSB7XG4gICAgICAgICAgY29sb3I6ICRsaWdodC1ibGFjaztcbiAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDIyXCI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC4ycmVtO1xuICAgICAgICAgICAgY29sb3I6ICNmZGM4MDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvZy1hdXRob3Ige1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC1zaXplOiAxcmVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGNvbG9yOiAkaGVhZGluZy1jb2xvcjtcbiAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG5cbiAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogXCItXCI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGNvbG9yOiAkaGVhZGluZy1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJsb2ctYWRkaXRpb25hbC1pbmZvIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRncmV5O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXk7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgcGFkZGluZzogMXJlbSAwO1xuXG4gICAgICAgIC50YWdzIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDcwJTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG4gICAgICAgICAgKiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaDYge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IC41cmVtO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgY29sb3I6ICRsaWdodC1ibGFjaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNoYXJlIHtcbiAgICAgICAgICBAZXh0ZW5kIC50YWdzO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDMwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuXG4gICAgICAgICAgLnNoYXJlLWljb25zIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5ibG9nLXNpZGViYXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICAgIC8vdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbiAgICB9XG5cbiAgICAucmVsYXRlZC1wb3N0cy1jb250YWluZXIge1xuICAgICAgLnBvc3QtaXRlbSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA0MCU7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDYwJTtcblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAgLjlyZW07XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXNpemU6IC43N3JlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnJlYWQtbW9yZSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDQ1JTtcbiAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnBvcHVsYXItYmxvZ3Mge1xuICAgIG1hcmdpbjogNHJlbSAwIDRyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgZm9udC1zaXplOiAxLjVyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIC8vY29sb3I6ICRmb250LWNvbG9yO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBib3R0b206IDVweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucG9wdWxhci1ibG9nIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAuMnJlbTtcbiAgICAgIH1cblxuICAgICAgaDYsIC50aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmNvbW1lbnRzIHtcbiAgICBtYXJnaW4tYm90dG9tOiA0cmVtO1xuXG4gICAgLm1haW4taGVhZGluZy1zdHlsZSB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb21tZW50IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAuY29tbWVudC1kZXRhaWxzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcblxuICAgICAgICAuY29tbWVudC1pbWFnZSB7XG4gICAgICAgICAgZmxleC1iYXNpczogNTBweDtcbiAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbW1lbnQtYmFzaWMtZGV0YWlscyB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgfVxuXG4gICAgICAgIC5kYXRlLW9mLWNvbW1lbnQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbW1lbnQtZGVzY3JpcHRpb24ge1xuICAgICAgICBwYWRkaW5nOiAuNXJlbSAxcmVtO1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgICB9XG5cbiAgICAgIC5idG4tcm91bmQtc2Vjb25kYXJ5IHtcbiAgICAgICAgcGFkZGluZzogMCAuNHJlbTtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFkZC1uZXctY29tbWVudCB7XG5cbiAgICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjdweCkge1xuXG4gICAgLnJlbGF0ZWQtYmxvZ3Mge1xuICAgICAgbWFyZ2luOiAycmVtIDA7XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIC5yZWxhdGVkLWJsb2cge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAucmVsYXRlZC1ibG9nIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29tbWVudHMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcblxuICAgICAgLmNvbW1lbnQge1xuICAgICAgICBtYXJnaW46IDAgMCAycmVtIDA7XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuY29tbWVudC1kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFkZC1uZXctY29tbWVudCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuXG4gICAgLmJsb2ctZGV0YWlscyB7XG4gICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGxpZ2h0LWdyZXk7XG5cbiAgICAgIC5ibG9nLWJhc2ljLWRldGFpbHMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuYmxvZy1jb250ZW50IHtcblxuICAgICAgICAuYmxvZy1oZWFkaW5nIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjVyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYmxvZy1hZGRpdGlvbmFsLWluZm8ge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYmxvZy1zaWRlYmFyIHtcbiAgICAgIG1hcmdpbjogMnJlbSAwIDA7XG4gICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGxpZ2h0LWdyZXk7XG5cbiAgICAgIC5wb3N0LWl0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAuN3JlbSAuNXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XG4gICAgICAgIGJveC1zaGFkb3c6IDEycHggM3B4IDEwcHggcmdiYSg2MCwgNTMsIDUxLCAwLjEpLCAxMnB4IDNweCAxMHB4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKTtcblxuICAgICAgICAuZGV0YWlscyB7XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgICBsZWZ0OiAuOXJlbTtcbiAgICAgICAgICAgICAgYm90dG9tOiAtN3B4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAucmVhZC1tb3JlIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBvcHVsYXItYmxvZ3Mge1xuICAgICAgb3JkZXI6IDI7XG4gICAgICBtYXJnaW46IDJyZW0gMCAwO1xuICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRsaWdodC1ncmV5O1xuXG4gICAgICAucG9wdWxhci1ibG9nIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZXk7XG4gICAgICAgIHBhZGRpbmc6IC43cmVtIC41cmVtO1xuICAgICAgICBib3gtc2hhZG93OiAxMnB4IDNweCAxMHB4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKSwgMTJweCAzcHggMTBweCByZ2JhKDYwLCA1MywgNTEsIDAuMSk7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG5cbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgICAgIH1cblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMCAwIC45cmVtO1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgZmxleC1iYXNpczogNjAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbSAhaW1wb3J0YW50O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICBsZWZ0OiAuOXJlbTtcbiAgICAgICAgICAgIGJvdHRvbTogLTdweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbW1lbnRzIHtcbiAgICAgIHBhZGRpbmc6IDJyZW0gMDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgIC5hZGQtbmV3LWNvbW1lbnQge1xuICAgICAgb3JkZXI6IDM7XG4gICAgICBwYWRkaW5nOiAycmVtIDAgMDtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG4gICAgLmJsb2ctc2lkZWJhciB7XG4gICAgICBtYXJnaW4tdG9wOiAycmVtO1xuXG4gICAgICAucmVsYXRlZC1wb3N0cyB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIG1hcmdpbjogMCAtMTVweDtcblxuICAgICAgICAmID4gLnBvc3QtaXRlbSB7XG4gICAgICAgICAgZmxleC1iYXNpczogY2FsYygxMDAlIC8gMyk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnJlbGF0ZWQtcG9zdHMtY29udGFpbmVyIHtcblxuICAgICAgICAucG9zdC1pdGVtIHtcbiAgICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMXJlbTtcblxuICAgICAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnJlYWQtbW9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLWRldGFpbHMge1xuXG4gICAgICAuYmxvZy1iYXNpYy1kZXRhaWxzIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLmJsb2ctY29udGVudCB7XG5cbiAgICAgICAgLmJsb2ctaGVhZGluZyB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJsb2ctYWRkaXRpb25hbC1pbmZvIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBvcHVsYXItYmxvZ3Mge1xuICAgICAgb3JkZXI6IDI7XG4gICAgfVxuXG4gICAgLmNvbW1lbnRzIHtcbiAgICAgIG9yZGVyOiAxO1xuICAgIH1cblxuICAgIC5hZGQtbmV3LWNvbW1lbnQge1xuICAgICAgb3JkZXI6IDM7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLW1lZGl1bS1kZXZpY2VzIHtcbiAgICAuYmxvZy1zaWRlYmFyIHtcbiAgICAgIC5yZWxhdGVkLXBvc3RzLWNvbnRhaW5lciB7XG4gICAgICAgIC5wb3N0LWl0ZW0ge1xuICAgICAgICAgIC5yZWFkLW1vcmUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLWRldGFpbHMge1xuICAgICAgLmJsb2ctY29udGVudCB7XG5cbiAgICAgICAgLmJsb2ctYWRkaXRpb25hbC1pbmZvIHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgLnNoYXJlIHtcbiAgICAgICAgICAgIC5zaGFyZS1pY29ucyB7XG5cbiAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNibG9ncyB7XG5cbiAgLmJsb2ctZmxleCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuXG4gIC5ibG9ncy1jb250YWluZXIge1xuICAgIHdpZHRoOiA3NSU7XG4gICAgcGFkZGluZy10b3A6IDJyZW07XG5cbiAgICAuYmxvZy1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBmbGV4LWJhc2lzOiAzNSU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYmxvZy1kZXRhaWxzIHtcbiAgICAgICAgZmxleC1iYXNpczogNjAlO1xuICAgICAgICBwYWRkaW5nOiAuNXJlbSAwO1xuXG4gICAgICAgIGg2IHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAuN3JlbTtcbiAgICAgICAgICBjb2xvcjogIzIyMjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLnBvc3QtZGF0ZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAuNzVyZW07XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMC4zcmVtIDA7XG5cbiAgICAgICAgICBwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMCAwLjJyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgd2lkdGg6IDMwJTtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZkYzgwMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuZGV0YWlscy1idXR0b24ge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgICAgLnJlYWQtbW9yZSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgICAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWFpbi1kZXRhaWxzIHtcbiAgICAgIH1cblxuICAgICAgLyomID4gLmRldGFpbHMtYnV0dG9uIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH0qL1xuICAgIH1cbiAgfVxuXG4gIC5ibG9nLXNpZGViYXIge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IDIwJTtcbiAgICBwYWRkaW5nLXRvcDogMnJlbTtcblxuICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYm90dG9tOiA0cHg7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zZWFyY2gtY29udGFpbmVyIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1heC13aWR0aDogMTgwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xuXG4gICAgICAuc2VhcmNoLWlucHV0IHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogNDNweDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcblxuICAgICAgICAqIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5zZWFyY2gtYnV0dG9uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNhdGVnb3JpZXMtY29udGFpbmVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDNyZW07XG5cbiAgICAgIC5jYXRlZ29yaWVzLWxpc3Qge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgIC5jYXRlZ29yeS1pdGVtIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgY29sb3I6ICRsaWdodC1ibGFjaztcbiAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgIHBhZGRpbmc6IC43cmVtO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBsaWdodGVuKCRncmV5LCAxNSUpO1xuXG4gICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgKiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5ibG9nLWNhdGVnb3J5LWJhciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbkBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcblxuICAuYmxvZy1jYXRlZ29yeS1iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGxpZ2h0LWdyZXk7XG4gIH1cblxuICAuZmlsdGVyLWJhciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5jYXRlZ29yeS1hcmlhIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIH1cblxuICAgICAgcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAuNHJlbTtcblxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IC40cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlYXJjaC1hcmlhIHtcbiAgICAgIC8vZGlzcGxheTogbm9uZTtcbiAgICAgIGZsZXgtZ3JvdzogMjtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuM3JlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgLnNlYXJjaC1pY29uIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgaGVpZ2h0OiBjYWxjKDEuNWVtICsgLjc1cmVtICsgMnB4KTtcbiAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIH1cblxuICAgICAgZm9ybSB7XG4gICAgICAgIHotaW5kZXg6IDk7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAlKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxNTBtcyBlYXNlLWluLW91dCAxNTBtcywgdHJhbnNmb3JtIDMwMG1zIGVhc2UtaW4tb3V0O1xuXG4gICAgICAgICYuc2hvdyB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTUlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgJHNlY29uZGFyeS1jb2xvcjtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5jYXRlZ29yaWVzLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIC5jYXRlZ29yaWVzLWxpc3Qge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5jYXRlZ29yeS1pdGVtIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGxpZ2h0LWJsYWNrO1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICBwYWRkaW5nOiAuN3JlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGxpZ2h0ZW4oJGdyZXksIDE1JSk7XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgKiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI2Jsb2dzIHtcbiAgICAuYmxvZy1mbGV4IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG5cbiAgICAuYmxvZ3MtY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLmJsb2ctaXRlbSB7XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkICRsaWdodC1ncmV5O1xuICAgICAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAgICAgLmltYWdlIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAzNSU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ibG9nLWRldGFpbHMge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDYyJTtcblxuICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnBvc3QtZGF0ZSB7XG4gICAgICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLXNpZGViYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xuXG4gIC5ibG9nLWNhdGVnb3J5LWJhciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMXJlbSAwO1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgfVxuXG4gIC5maWx0ZXItYmFyIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgLmNhdGVnb3J5LWFyaWEge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgfVxuXG4gICAgICBwIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IC40cmVtO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogLjRyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VhcmNoLWFyaWEge1xuICAgICAgLy9kaXNwbGF5OiBub25lO1xuICAgICAgZmxleC1ncm93OiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC4zcmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAuc2VhcmNoLWljb24ge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICBoZWlnaHQ6IGNhbGMoMS41ZW0gKyAuNzVyZW0gKyAycHgpO1xuICAgICAgICB3aWR0aDogMi41cmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuXG4gICAgICBmb3JtIHtcbiAgICAgICAgei1pbmRleDogOTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMCUpO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDE1MG1zIGVhc2UtaW4tb3V0IDE1MG1zLCB0cmFuc2Zvcm0gMzAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICAgJi5zaG93IHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1JSk7XG4gICAgICAgIH1cblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICAgIGJvcmRlcjogMnB4IHNvbGlkICRzZWNvbmRhcnktY29sb3I7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2F0ZWdvcmllcy1jb250YWluZXIge1xuICAgIC8vbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgIC5jYXRlZ29yaWVzLWxpc3Qge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAvL2Rpc3BsYXk6IGZsZXg7XG4gICAgICAvL2ZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICAvL2ZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLyomID4gbGkge1xuICAgICAgICBmbGV4LWJhc2lzOiA1MCU7XG4gICAgICB9Ki9cblxuICAgICAgLmNhdGVnb3J5LWl0ZW0ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGNvbG9yOiAkbGlnaHQtYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgIHBhZGRpbmc6IC43cmVtO1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgbGlnaHRlbigkZ3JleSwgMTUlKTtcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAqIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAjYmxvZ3Mge1xuXG4gICAgLmJsb2dzLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIC5ibG9nLWl0ZW0ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgZmxleC1iYXNpczogMzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJsb2ctZGV0YWlscyB7XG4gICAgICAgICAgZmxleC1iYXNpczogNjIlO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICAgICBoNiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnBvc3QtZGF0ZSB7XG4gICAgICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLXNpZGViYXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxufVxuXG5AaW5jbHVkZSBmb3ItbWVkaXVtLWRldmljZXMge1xuXG4gICNibG9ncyB7XG4gICAgLmJsb2dzLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogNzAlO1xuXG4gICAgICAuYmxvZy1pdGVtIHtcblxuICAgICAgICAuYmxvZy1kZXRhaWxzIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAgICAgaDYge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMC4xcmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnBvc3QtZGF0ZSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAwLjFyZW07XG5cbiAgICAgICAgICAgIHAge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5ibG9nLXNpZGViYXIge1xuICAgICAgd2lkdGg6IDI1JTtcbiAgICB9XG4gIH1cbn1cbiIsIiRmaXJzdC1iZy1jb2xvcjogIzljYzkzYTtcbiRmaXJzdC1jb2xvcjogJHdoaXRlO1xuJHNlY29uZC1iZy1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiRzZWNvbmQtY29sb3I6ICRibGFjaztcbiR0aGlyZC1iZy1jb2xvcjogI2Y0NjcxZjtcbiR0aGlyZC1jb2xvcjogJHdoaXRlO1xuXG4uY29tcGFyaXNvbi10YWJsZS5zY2hvb2wtY29tcGFyZSB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gIC5ib3JkZXItYm90dG9tIHtcbiAgICBAaW5jbHVkZSBib3JkZXItc2lkZShib3R0b20sIGRhcmtlbigkZ3JleSwgMjAlKSk7XG4gIH1cblxuICAuc3VtbWFyeS1yb3cge1xuXG4gICAgLnN1bW1hcnktaXRlbSB7XG4gICAgICBwYWRkaW5nOiAxcmVtIDAgMCAhaW1wb3J0YW50O1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXNpZGUoYm90dG9tLCAkZ3JleSAhaW1wb3J0YW50KTtcblxuICAgICAgLnN1bW1hcnktdGl0bGUge1xuICAgICAgICBmb250LXNpemU6IDEuMnJlbSAhaW1wb3J0YW50O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29tcGFyaXNvbi1pdGVtIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBsaWdodGVuKCRncmV5LCAxNSUpO1xuICAgIH1cbiAgfVxuXG4gIC5pbWFnZS1yb3cge1xuICAgIC5jb21wYXJpc29uLWl0ZW0ge1xuICAgICAgcGFkZGluZzogM3JlbSAxcmVtIDAgIWltcG9ydGFudDtcbiAgICAgIGJvcmRlci1ib3R0b206IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAucG9zaXRpb24tcm93IHtcbiAgICAuY29tcGFyaXNvbi1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAucG9zaXRpb24tZGV0YWlscyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgICAgLnNoYXBlIHtcbiAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgIGhlaWdodDogMjBweDtcblxuICAgICAgICAmLmZpcnN0IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZmlyc3QtYmctY29sb3I7XG4gICAgICAgIH1cblxuICAgICAgICAmLnNlY29uZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZC1iZy1jb2xvcjtcbiAgICAgICAgfVxuXG4gICAgICAgICYudGhpcmQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGlyZC1iZy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudGV4dCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC4ycmVtO1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnJhbmtpbmctbGlzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gIH1cblxuICAuZGVzY3JpcHRpb24ge1xuICAgIHBhZGRpbmc6IDAgMnJlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLmNvbXBhcmlzb24tcm93IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgZmxleC13cmFwOiBub3dyYXA7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG5cbiAgICAmLnBvc2l0aW9uLXJvdywgJi5uYW1lLXJvdyB7XG4gICAgICAuY29tcGFyaXNvbi1pdGVtOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb21wYXJpc29uLWl0ZW0ge1xuICAgICAgZmxleC1iYXNpczogY2FsYyg4NSUgLyAzKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1zaWRlKHJpZ2h0LCBsaWdodGVuKCRncmV5LCAxNSUpKTtcbiAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICBjb2xvcjogZGFya2VuKCRsaWdodC1ibGFjaywgMTAlKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDFyZW0gMDtcblxuICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgZmxleC1iYXNpczogMTUlO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItc2lkZShib3R0b20sIGxpZ2h0ZW4oJGdyZXksIDIwJSkpO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxcmVtO1xuICAgICAgICBjb2xvcjogJHB1cmUtYmxhY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgICAgIHAge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgfVxuXG4gICAgICAmID4gKiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICBoNiB7XG4gICAgICAgIGNvbG9yOiAkcHVyZS1ibGFjaztcbiAgICAgIH1cblxuICAgICAgLmF2YWlsYWJpbGl0eS1pbWFnZSB7XG4gICAgICAgIHdpZHRoOiAxMCU7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3Ryb25nIHtcbiAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgY29sb3I6ICRwdXJlLWJsYWNrO1xuICAgICAgfVxuXG4gICAgICAqIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuXG4gICAgICAuc2Nob29sLWltYWdlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDNyZW0gMnJlbSAxcmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICBib3gtc2hhZG93OiAkbGlnaHQtc2hhZG93O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBjb2xvcjogJGZvb3Rlci1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAxLjNyZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luOiAwIDFyZW0gMXJlbTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXNpZGUoYm90dG9tLCAzcHgsICRzZWNvbmRhcnktY29sb3IpO1xuXG4gICAgICAgIC8qJjo6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICBoZWlnaHQ6IDNweDtcbiAgICAgICAgICBsZWZ0OiAyMCU7XG4gICAgICAgICAgcmlnaHQ6IDIwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuICAgICAgICB9Ki9cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZGV0YWlscy13aXRoLXBvc2l0aW9uLWJhZGdlIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC5iYWRnZSB7XG4gICAgICBwYWRkaW5nOiAuNHJlbSAxcmVtO1xuICAgICAgYm9yZGVyLXJhZGl1czogMjBweDtcbiAgICAgIHdpZHRoOiBjYWxjKDI3cHggKyAycmVtKTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcblxuICAgICAgJi5maXJzdCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRmaXJzdC1iZy1jb2xvcjtcbiAgICAgICAgY29sb3I6ICRmaXJzdC1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi5zZWNvbmQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2Vjb25kLWJnLWNvbG9yO1xuICAgICAgICBjb2xvcjogJHNlY29uZC1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgJi50aGlyZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGlyZC1iZy1jb2xvcjtcbiAgICAgICAgY29sb3I6ICR0aGlyZC1jb2xvcjtcbiAgICAgIH1cblxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcblxuICAgIC5jb21wYXJpc29uLWhlYWRlciB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgZWFzZS1pbi1vdXQ7XG5cbiAgICAgICYuc3RpY2t5IHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuaW1hZ2Utcm93IHtcbiAgICAgIC5jb21wYXJpc29uLWl0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIC41cmVtICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5hbWUtcm93IHtcbiAgICAgIC5jb21wYXJpc29uLWl0ZW0ge1xuICAgICAgICBwYWRkaW5nOiAwIDAgLjJyZW0gIWltcG9ydGFudDtcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBvc2l0aW9uLXJvdyB7XG4gICAgICAucG9zaXRpb24tZGV0YWlscyB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc3VtbWFyeS1yb3cge1xuICAgICAgJiA+IDpub3QoLnN1bW1hcnktaXRlbSkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuXG4gICAgICAuc3VtbWFyeS1pdGVtIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMXJlbSAuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHQtZ3JleSAhaW1wb3J0YW50O1xuXG4gICAgICAgIC5zdW1tYXJ5LXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNXJlbSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJhbmtpbmctbGlzdCB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgJiA+IGxpLCAmID4gZGl2LCAmID4gLnJhbmtpbmctaXRlbSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW0gIWltcG9ydGFudDtcbiAgICAgICAgZmxleC1iYXNpczogMTAwJTtcblxuICAgICAgICAmOmxhc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY29tcGFyaXNvbi1yb3cge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgLmNvbXBhcmlzb24taXRlbSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoMTAwJSAvIDMpO1xuICAgICAgICBwYWRkaW5nOiAxcmVtIC41cmVtO1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgZmxleC1iYXNpczogMTAwJTtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgIH1cblxuICAgICAgICAuaGVhZGluZyB7XG4gICAgICAgICAgd2lkdGg6IGluaXRpYWw7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgICBwYWRkaW5nOiAuNHJlbSAxcmVtO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgIH1cblxuICAgICAgICAuc2Nob29sLWltYWdlIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmF2YWlsYWJpbGl0eS1pbWFnZSB7XG4gICAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xuXG4gICAgLmNvbXBhcmlzb24taGVhZGVyIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAzMDBtcyBlYXNlLWluLW91dDtcblxuICAgICAgJi5zdGlja3kge1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pbWFnZS1yb3cge1xuICAgICAgLmNvbXBhcmlzb24taXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gLjVyZW0gIWltcG9ydGFudDtcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubmFtZS1yb3cge1xuICAgICAgLmNvbXBhcmlzb24taXRlbSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMCAuMnJlbSAhaW1wb3J0YW50O1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5wb3NpdGlvbi1yb3cge1xuICAgICAgLnBvc2l0aW9uLWRldGFpbHMge1xuICAgICAgICBwYWRkaW5nOiAxcmVtIDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN1bW1hcnktcm93IHtcbiAgICAgICYgPiA6bm90KC5zdW1tYXJ5LWl0ZW0pIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLnN1bW1hcnktaXRlbSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDFyZW0gLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0LWdyZXkgIWltcG9ydGFudDtcblxuICAgICAgICAuc3VtbWFyeS10aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVyZW0gIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5yYW5raW5nLWxpc3Qge1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgICYgPiBsaSwgJiA+IGRpdiwgJiA+IC5yYW5raW5nLWl0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbXBhcmlzb24tcm93IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAgIC5jb21wYXJpc29uLWl0ZW0ge1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLyAzKTtcbiAgICAgICAgcGFkZGluZzogMXJlbSAuNXJlbTtcblxuICAgICAgICAmOmZpcnN0LW9mLXR5cGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xcmVtO1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDEwMCU7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLmhlYWRpbmcge1xuICAgICAgICAgIHdpZHRoOiBpbml0aWFsO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgcGFkZGluZzogLjRyZW0gMXJlbTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxNXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnNjaG9vbC1pbWFnZSB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5hdmFpbGFiaWxpdHktaW1hZ2Uge1xuICAgICAgICAgIHdpZHRoOiAyNSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC8qLmNvbXBhcmlzb24tcm93IHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIC5jb21wYXJpc29uLWl0ZW0ge1xuXG4gICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICAgICAgLy9iYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0qL1xuICB9XG5cbiAgQGluY2x1ZGUgZm9yLW1lZGl1bS1kZXZpY2VzIHtcblxuICAgIC5jb21wYXJpc29uLXJvdyB7XG4gICAgICAuY29tcGFyaXNvbi1pdGVtIHtcbiAgICAgICAgLnNjaG9vbC1pbWFnZSB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zY2hvb2wtaW1hZ2Uge1xuICAgICAgLmNhcHRpb24ge1xuICAgICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIjc2Nob29sLWRldGFpbHMtcGFnZSB7XG4gIC5zbGljay1saXN0IHtcbiAgICBvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuXG4gIC5oZWFkaW5nIHtcbiAgICBAZXh0ZW5kIC5tYWluLWhlYWRpbmctc3R5bGU7XG4gICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBib3R0b206IDEwcHggIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAuc2Nob29sLWNhcmQge1xuICAgIGJveC1zaGFkb3c6IDJweCAycHggM3B4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKSwgLTJweCAtMnB4IDNweCByZ2JhKDYwLCA1MywgNTEsIDAuMSk7XG4gICAgcGFkZGluZzogMS4ycmVtO1xuICAgIG1hcmdpbjogMXJlbSAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAuY2FyZC10aXRsZSB7XG4gICAgICBAZXh0ZW5kIC5oZWFkaW5nO1xuICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FyZC1jb250ZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgLjdyZW07XG4gICAgICBmb250LXNpemU6IDFyZW07XG5cbiAgICAgIHVsIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNHJlbTtcblxuICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBmbGV4LWJhc2lzOiAzNSUgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAudGl0bGUtcmVzcG9uc2Uge1xuICAgICAgICAgICAgZmxleC1iYXNpczogNjUlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlLXJlc3BvbnNlIHtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLm5vLXNoYWRvdyB7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5zbGljay1kb3RzIHtcbiAgICBib3R0b206IDI1cHg7XG5cbiAgICBsaSBidXR0b24ge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zY2hvb2wtZGV0YWlscy1oZWFkZXIge1xuXG4gICAgLmltYWdlLWNhcm91c2VsIHtcbiAgICAgIG1hcmdpbi10b3A6IC0yMjBweDtcbiAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgIGJveC1zaGFkb3c6ICRsaWdodC1zaGFkb3c7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zY2hvb2wtZGV0YWlscyB7XG4gICAgICAuaGVhZGluZ3Mge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAuc2Nob29sLW5hbWUge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgfVxuXG4gICAgICAuc2Nob29sLWxvY2F0aW9uIHtcbiAgICAgICAgY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBsZWZ0OiAtMnB4O1xuICAgICAgICAgIGJvdHRvbTogLTVweDtcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYnV0dG9ucy1jb250YWluZXIge1xuICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcblxuICAgICAgICAuYnRuLXJvdW5kLXNlY29uZGFyeSB7XG4gICAgICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICBwYWRkaW5nOiAuMnJlbSAuM3JlbTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNjaG9vbC1kZXRhaWxzLWNvbnRlbnQge1xuICAgIC5zY2hvb2wtaW5mbyB7XG4gICAgICB3aWR0aDogOTMlO1xuXG4gICAgICAudGl0bGUge1xuICAgICAgICBjb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICB9XG5cbiAgICAgIC50aXRsZS1yZXNwb25zZSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNjaG9vbC1yYW5raW5nIHtcbiAgICAgIHdpZHRoOiA4MCU7XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDUwJSAhaW1wb3J0YW50O1xuICAgICAgfVxuXG4gICAgICAuc3Rhci1yYXRpbmcge1xuICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5zY2hvb2wtcmF0aW5nIHtcbiAgICAgIEBleHRlbmQgLnNjaG9vbC1yYW5raW5nO1xuICAgIH1cblxuICAgIC5zY2hvb2wtZmVhdHVyZXMge1xuICAgICAgLmZlYXR1cmUtcm93IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1ldmVubHk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAuNXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGxpZ2h0ZW4oJGdyZXksIDIwJSk7XG4gICAgICAgIG1hcmdpbi10b3A6IDJyZW07XG4gICAgICAgIGJveC1zaGFkb3c6IDJweCA3cHggMTBweCAtMnB4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKTtcblxuICAgICAgICAuZmVhdHVyZS1pdGVtIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAzMCU7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgZm9udC1zaXplOiAuNjY2cmVtO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBjb2xvcjogJHB1cmUtYmxhY2s7XG5cbiAgICAgICAgICBmaWd1cmUge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgZmlnY2FwdGlvbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuMXJlbTtcbiAgICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLjNyZW07XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgLnRleHQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuNjY2cmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5zdGFyLXJhdGluZy1jb250YWluZXIge1xuICAgICAgICAgICAgZm9udC1zaXplOiAuNnJlbTtcblxuICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogLjQ1cmVtO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5tb3JlLWxpbmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnktY29sb3I7XG4gICAgICAgICAgICBmb250LXNpemU6IC42NjZyZW07XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAuMnJlbTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC4zcmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5iYXNpYy1wYXJhbXMge1xuXG4gICAgICAucGFyYW0taXRlbSB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0ZW4oJGdyZXksIDUlKTtcbiAgICAgICAgZm9udC1zaXplOiAuNnJlbTtcbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yO1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgZmxleC1iYXNpczogNDAlO1xuICAgICAgICAgIHBhZGRpbmc6IC41cmVtO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA2MCU7XG4gICAgICAgIH1cblxuICAgICAgICAucGFyYW0tdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgIGNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5saW5rLWNvbnRhaW5lciB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogLjRyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLm1vcmUtbGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IC42NjZyZW07XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDAgLjJyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgbWFyZ2luOiAuM3JlbSAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIFxuICAgIC5zY2hvb2wtY2FyZCB7XG4gICAgICAuY2FyZC1jb250ZW50IHtcbiAgICAgICAgdWwgbGkge1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zY2hvb2wtZGV0YWlscy1oZWFkZXIge1xuICAgICAgLmltYWdlLWNhcm91c2VsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgYm9yZGVyOiA1cHggc29saWQgJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAycHggMnB4IDEwcHggcmdiYSg2MCwgNTMsIDUxLCAwLjMpLCAtMnB4IC0ycHggMTBweCByZ2JhKDYwLCA1MywgNTEsIC4zKTtcbiAgICAgIH1cblxuICAgICAgLnNjaG9vbC1kZXRhaWxzIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDJyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcblxuICAgICAgICAuc2Nob29sLW5hbWUge1xuICAgICAgICAgIG1hcmdpbjogMCAwIDFyZW0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5zY2hvb2wtbG9jYXRpb24ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9ucy1jb250YWluZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgLmJ0bi1yb3VuZC1zZWNvbmRhcnkge1xuICAgICAgICAgICAgcGFkZGluZzogLjNyZW0gLjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNjaG9vbC1kZXRhaWxzLWNvbnRlbnQge1xuXG4gICAgICAuc2Nob29sLWNhcmQge1xuXG4gICAgICAgIC5jYXJkLWNvbnRlbnQge1xuICAgICAgICAgIHVsIGxpIHtcbiAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgZmxleC1iYXNpczogNTAlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpdGxlLXJlc3BvbnNlIHtcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogNDUlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG5cbiAgICAgIC5zY2hvb2wtaW5mby1jb250YWluZXIge1xuICAgICAgICBvcmRlcjogMjtcbiAgICAgIH1cblxuICAgICAgLnNjaG9vbC1yYW5raW5nLWNvbnRhaW5lciB7XG4gICAgICAgIG9yZGVyOiAxO1xuICAgICAgfVxuXG4gICAgICAuc2Nob29sLWZlYXR1cmVzLWNvbnRhaW5lciB7XG4gICAgICAgIG9yZGVyOiAzO1xuICAgICAgfVxuXG4gICAgICAuc2Nob29sLWJhc2ljLXBhcmFtcy1jb250YWluZXIge1xuICAgICAgICBvcmRlcjogNDtcbiAgICAgIH1cblxuICAgICAgLnNjaG9vbC1pbmZvIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5zY2hvb2wtcmFua2luZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAuYmFzaWMtcGFyYW1zIHtcbiAgICAgICAgLnBhcmFtLWl0ZW0ge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgIH1cblxuICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMCAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tb3JlLWxpbmsge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgcGFkZGluZzogMCAuNXJlbTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xuICAgIC5zY2hvb2wtZGV0YWlscy1oZWFkZXIge1xuICAgICAgLmltYWdlLWNhcm91c2VsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgYm9yZGVyOiA1cHggc29saWQgJHdoaXRlO1xuICAgICAgICBib3gtc2hhZG93OiAycHggMnB4IDEwcHggcmdiYSg2MCwgNTMsIDUxLCAwLjMpLCAtMnB4IC0ycHggMTBweCByZ2JhKDYwLCA1MywgNTEsIC4zKTtcbiAgICAgIH1cblxuICAgICAgLnNjaG9vbC1kZXRhaWxzIHtcbiAgICAgICAgLnNjaG9vbC1uYW1lIHtcbiAgICAgICAgICBtYXJnaW46IDAgMCAxcmVtIDA7XG4gICAgICAgIH1cblxuICAgICAgICAuc2Nob29sLWxvY2F0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ1dHRvbnMtY29udGFpbmVyIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgIC5idG4tcm91bmQtc2Vjb25kYXJ5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IC4zcmVtIC41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5zY2hvb2wtZGV0YWlscy1jb250ZW50IHtcblxuICAgICAgLnNjaG9vbC1pbmZvLWNvbnRhaW5lciB7XG4gICAgICAgIG9yZGVyOiAyO1xuICAgICAgfVxuXG4gICAgICAuc2Nob29sLXJhbmtpbmctY29udGFpbmVyIHtcbiAgICAgICAgb3JkZXI6IDE7XG4gICAgICB9XG5cbiAgICAgIC5zY2hvb2wtZmVhdHVyZXMtY29udGFpbmVyIHtcbiAgICAgICAgb3JkZXI6IDM7XG4gICAgICB9XG5cbiAgICAgIC5zY2hvb2wtYmFzaWMtcGFyYW1zLWNvbnRhaW5lciB7XG4gICAgICAgIG9yZGVyOiA0O1xuICAgICAgfVxuXG4gICAgICAuc2Nob29sLWluZm8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLnNjaG9vbC1yYW5raW5nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5iYXNpYy1wYXJhbXMge1xuICAgICAgICAucGFyYW0taXRlbSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLW1lZGl1bS1kZXZpY2VzIHtcbiAgICBwYWRkaW5nOiAycmVtIDA7XG5cbiAgICAuc2Nob29sLWNhcmQge1xuICAgICAgLmNhcmQtY29udGVudCB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNnJlbTtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogNjAlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpdGxlLXJlc3BvbnNlIHtcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogNDAlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nob29sLWluZm8ge1xuICAgICAgLmNhcmQtY29udGVudCB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNnJlbTtcblxuICAgICAgICAgICAgLnRpdGxlIHtcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnRpdGxlLXJlc3BvbnNlIHtcbiAgICAgICAgICAgICAgZmxleC1iYXNpczogNTAlIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nob29sLWRldGFpbHMtaGVhZGVyIHtcbiAgICAgIC5pbWFnZS1jYXJvdXNlbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG5cbiAgICAgIC5zY2hvb2wtZGV0YWlscyB7XG4gICAgICAgIC5zY2hvb2wtbmFtZSB7XG4gICAgICAgICAgbWFyZ2luOiAwIDAgMXJlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgLnNjaG9vbC1sb2NhdGlvbiB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b25zLWNvbnRhaW5lciB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAuYnRuLXJvdW5kLXNlY29uZGFyeSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAuM3JlbSAuNXJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2Nob29sLWRldGFpbHMtY29udGVudCB7XG4gICAgICAuc2Nob29sLWluZm8ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgLnNjaG9vbC1yYW5raW5nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5iYXNpYy1wYXJhbXMge1xuICAgICAgICAucGFyYW0taXRlbSB7XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICBwYWRkaW5nOiAwIC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN0YXItcmF0aW5nIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIH1cbiAgfVxuXG4gIC5leHRyYS1pbmZvLWNvbnRhaW5lciB7XG4gICAgLmV4dHJhLWluZm8taW1hZ2Utc2xpZGVyIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcblxuICAgICAgLmltYWdlLWl0ZW0ge1xuICAgICAgICBib3JkZXI6IDhweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6ICRzcXVhcmUtc2hhZG93O1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICAvL3dpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5leHRyYS1pbmZvLWRldGFpbHMge1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgLyogd2lkdGggKi9cbiAgICAgIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICB3aWR0aDogNHB4O1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIC8qIFRyYWNrICovXG4gICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRyYWNrIHtcbiAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkZ3JleSwgMTAlKTtcbiAgICAgIH1cblxuICAgICAgLyogSGFuZGxlICovXG4gICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iIHtcbiAgICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeS1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgLyogSGFuZGxlIG9uIGhvdmVyICovXG4gICAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyLXRodW1iOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogZGFya2VuKCRzZWNvbmRhcnktY29sb3IsIDIwJSk7XG4gICAgICB9XG5cbiAgICAgIC5tYWluLWhlYWRpbmctc3R5bGUge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5yYXRpbmctZGV0YWlscy1jb250YWluZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgIH1cblxuICAgIC5yYXRpbmctZGV0YWlscyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgIG1hcmdpbi1ib3R0b206IC4zcmVtO1xuXG4gICAgICAudGl0bGUge1xuICAgICAgICBmbGV4LWJhc2lzOiA0MCU7XG4gICAgICB9XG5cbiAgICAgIC5zdGFyLXJhdGluZyB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDYwJTtcbiAgICAgIH1cblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuZXh0cmEtaW5mby1jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAxLjVyZW07XG5cbiAgICAubWFpbi1oZWFkaW5nLXN0eWxlLCBoMyB7XG4gICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IC4ycmVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICB3aWR0aDogOTBweDtcbiAgICAgICAgYm90dG9tOiA1cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcCwgLmRlc2NyaXB0aW9uIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAuZXh0cmEtaWNvbi1jb250YWluZXIge1xuICAgIGhlaWdodDogMjgwcHg7XG4gICAgb3ZlcmZsb3cteTogYXV0bztcbiAgfVxuXG4gIC5leHRyYS1pY29uLWNvbnRlbnQge1xuICAgIEBleHRlbmQgLmV4dHJhLWluZm8tY29udGVudDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICAuaW1hZ2UtaWNvbiB7XG4gICAgICBmbGV4LWJhc2lzOiAxNiU7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5pY29uLWRldGFpbHMge1xuICAgICAgZmxleC1iYXNpczogY2FsYyg4NCUgLSAxcmVtKTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcblxuICAgICAgLmNoZWNrYm94LWltYWdlIHtcbiAgICAgICAgZmxleC1iYXNpczogNiU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBoMyB7XG4gICAgICAgIGZsZXgtYmFzaXM6IGNhbGMoOTQlIC0gMXJlbSk7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxcmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiI2Fib3V0LXBhZ2Uge1xuICAuY29udGVudCB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIC5oZWFkaW5nIHtcbiAgICAgIEBleHRlbmQgLm1haW4taGVhZGluZy1zdHlsZTtcbiAgICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogMi4ycmVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAxMDUlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5hbHRlcm5hdGUtaGVhZGluZyB7XG4gICAgICBAZXh0ZW5kIC5tYWluLWhlYWRpbmctc3R5bGU7XG4gICAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBsZWZ0OiAzMy4zJTtcbiAgICAgICAgd2lkdGg6IDMzLjMlO1xuICAgICAgICBib3R0b206IC0xMHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5kZXNjcmlwdGlvbiB7XG4gICAgICBmb250LXNpemU6IDFyZW07XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICB9XG4gIH1cblxuICAud2hhdC13ZS1kbyB7XG4gICAgbWFyZ2luLXRvcDogM3JlbTtcbiAgfVxuXG4gIC5hYm91dC1pbWFnZSB7XG4gICAgYm94LXNoYWRvdzogMTRweCAxM3B4IDIwcHggcmdiYSgwLCAwLCAwLCAwLjEpLCAtMTRweCAtMTNweCAyMHB4IHJnYmEoMCwgMCwgMCwgLjEpO1xuXG4gICAgaW1nIHtcbiAgICAgIGJvcmRlcjogMTBweCB3aGl0ZSBzb2xpZDtcbiAgICAgIGJveC1zaGFkb3c6IDJweCAycHggM3B4IHJnYmEoMCwgMCwgMCwgMC4xKSwgLTJweCAtMnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRlbnQtaXRlbSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDRyZW07XG5cbiAgICAmID4gKiB7XG4gICAgICBmbGV4LWJhc2lzOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250ZW50LWltYWdlIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIHdpZHRoOiAzMy4zJTtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgIC5oZWFkaW5nIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICB9XG5cbiAgICAuZGVzY3JpcHRpb24ge1xuICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3ItZXh0cmEtc21hbGwtZGV2aWNlcyB7XG4gICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgLmFib3V0LWltYWdlIHtcbiAgICAgIG1hcmdpbi10b3A6IDNyZW07XG4gICAgfVxuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xuICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgIC5hYm91dC1pbWFnZSB7XG4gICAgICBtYXJnaW4tdG9wOiAzcmVtO1xuICAgIH1cbiAgfVxufVxuIiwiLmN1c3RvbS1tb2RhbCB7XG5cbiAgLm1vZGFsLWJvZHkge1xuICAgIHBhZGRpbmc6IDFyZW0gMnJlbTtcbiAgfVxuXG4gIC5hY3Rpb24tbW9kYWwge1xuICAgIG1heC13aWR0aDogMzQwcHg7XG4gIH1cblxuICAubW9kYWwtY29udGVudCB7XG4gICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgfVxuXG4gIC5tb2RhbC1oZWFkZXItd2l0aC1sb2dvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAubW9kYWwtbG9nbyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgfVxuXG4gICAgLm1vZGFsLWNsb3NlLWJ1dHRvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICByaWdodDogLTI1cHg7XG4gICAgICB0b3A6IC0xNXB4O1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1vZGFsLWhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5tb2RhbC1mb290ZXIge1xuICAgIGJvcmRlci10b3A6IDA7XG4gIH1cblxuICAubW9kYWwtYm9keS13aXRoLWNvbnRlbnQge1xuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgZm9udC1zaXplOiAuOHJlbTtcbiAgICB9XG5cbiAgICBoMyB7XG4gICAgICBtYXJnaW46IDEuMnJlbSAwIDEuNXJlbTtcbiAgICB9XG5cbiAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuNHJlbTtcbiAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICBib3gtc2hhZG93OiAycHggMnB4IDNweCByZ2JhKDAsIDAsIDAsIDAuMSksIC0ycHggLTJweCAzcHggcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMXJlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgbGlnaHRibHVlO1xuICAgICAgICBib3gtc2hhZG93OiAwIDAgMTFweCBsaWdodGJsdWU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0IHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTsgLyogRmlyZWZveCAqL1xuICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyAvKiBTYWZhcmkgYW5kIENocm9tZSAqL1xuICAgICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICAuYnRuLXJvdW5kLXByaW1hcnkge1xuICAgICAgQGV4dGVuZCAuYnRuLXJvdW5kLXByaW1hcnk7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEuNHJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5yZW1lbWJlci1tZS1hbmQtZm9yZ290IHtcbiAgICAgIG1hcmdpbjogMS41cmVtIDAgMXJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgICBmb250LXNpemU6IC44cmVtO1xuXG4gICAgICAqIHtcbiAgICAgICAgY29sb3I6ICRmb250LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cblxuICAgICAgbGFiZWwge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBpbmsge1xuICAgICAgY29sb3I6ICNmMDdiNzM7XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLWV4dHJhLXNtYWxsLWRldmljZXMge1xuICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuIiwiI2JkZS1mb3JtIHtcclxuICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcclxuICAgIEBleHRlbmQgLm1haW4taGVhZGluZy1zdHlsZTtcclxuICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xyXG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcclxuICB9XHJcblxyXG4gIC5zcGVjaWFsLWluc2lkZS1pY29uIHtcclxuICAgIEBleHRlbmQgLmljb24taW5zaWRlLXJpZ2h0O1xyXG5cclxuICAgIGlucHV0IHtcclxuICAgICAgd2lkdGg6IDE3NXB4O1xyXG4gICAgfVxyXG5cclxuICAgIGkge1xyXG4gICAgICByaWdodDogMTg1cHg7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAjZGF0ZXBpY2tlciB7XHJcbiAgICB3aWR0aDogMjc2cHg7XHJcbiAgfVxyXG4gIC5zcGVjaWFsLWluc2lkZS1pY29uIHtcclxuICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgIHdpZHRoOiAyNzZweDtcclxuICAgIH1cclxuXHJcbiAgICBpbnB1dCB7XHJcbiAgICAgIHdpZHRoOiAyNzZweDtcclxuICAgIH1cclxuXHJcbiAgICBpIHtcclxuICAgICAgcmlnaHQ6IDQwJTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcclxuICAgIC5zcGVjaWFsLWluc2lkZS1pY29uIHtcclxuXHJcbiAgICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpIHtcclxuICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgICNkYXRlcGlja2VyIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XHJcbiAgICAuc3BlY2lhbC1pbnNpZGUtaWNvbiB7XHJcbiAgICAgIC5pbnB1dC1ncm91cCB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlucHV0IHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaSB7XHJcbiAgICAgICAgcmlnaHQ6IDEwcHg7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAjZGF0ZXBpY2tlciB7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgZm9yLW1lZGl1bS1kZXZpY2VzIHtcclxuICAgIC5zcGVjaWFsLWluc2lkZS1pY29uIHtcclxuICAgICAgLmlucHV0LWdyb3VwIHtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgfVxyXG5cclxuICAgICAgaW5wdXQge1xyXG4gICAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICB9XHJcblxyXG4gICAgICBpIHtcclxuICAgICAgICByaWdodDogMTBweDtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgZm9yLWxhcmdlLWRldmljZXMge1xyXG4gICAgLnNwZWNpYWwtaW5zaWRlLWljb24ge1xyXG4gICAgICBpIHtcclxuICAgICAgICByaWdodDogMzAlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG4jc3R1ZGVudC1mb3JtIHtcclxuXHJcbn1cclxuXHJcbi5jb250YWN0LWZvcm0ge1xyXG5cclxuICBAaW5jbHVkZSBmb3ItZXh0cmEtc21hbGwtZGV2aWNlcyB7XHJcbiAgICBtYXJnaW4tdG9wOiAycmVtO1xyXG4gIH1cclxufVxyXG5cclxuQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xyXG4gIC5zb2NpYWwtbGlua3Mge1xyXG4gICAgLmxpbmtzLWNvbnRhaW5lciB7XHJcblxyXG4gICAgICBsaSB7XHJcbiAgICAgICAgZmxleC1iYXNpczogMTUlO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcblxyXG5AaW5jbHVkZSBmb3ItbWVkaXVtLWRldmljZXMge1xyXG4gIC5zb2NpYWwtbGlua3Mge1xyXG4gICAgLmxpbmtzLWNvbnRhaW5lciB7XHJcbiAgICAgICYuY29udGFjdC1wYWdlIHtcclxuICAgICAgICBhIHtcclxuICAgICAgICAgIG1hcmdpbjogMCAwLjVyZW07XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIiNzY2hvb2wtZm9ybSB7XHJcbiAgLm1haW4taGVhZGluZy1zdHlsZSB7XHJcbiAgICBAZXh0ZW5kIC5tYWluLWhlYWRpbmctc3R5bGU7XHJcbiAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcclxuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XHJcbiAgfVxyXG59XHJcbiIsIiNzdHVkZW50LWZvcm0ge1xyXG4gIC5tYWluLWhlYWRpbmctc3R5bGUge1xyXG4gICAgQGV4dGVuZCAubWFpbi1oZWFkaW5nLXN0eWxlO1xyXG4gICAgZm9udC1zaXplOiAycmVtO1xyXG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xyXG4gIH1cclxufVxyXG4iLCIjbnNpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAubWFpbi1oZWFkaW5nLXN0eWxlIHtcbiAgICBAZXh0ZW5kIC5tYWluLWhlYWRpbmctc3R5bGU7XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICBjb2xvcjogJGJsYWNrO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJvdHRvbTogNXB4O1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgfVxuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBmb250LXNpemU6IC45cmVtO1xuICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICB9XG5cbiAgLm5zaS1pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luOiAycmVtIDAgM3JlbTtcblxuICAgIHN2ZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cblxuICAubnNpLWxpc3Qge1xuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICB9XG5cbiAgICB1bCB7XG4gICAgICBwYWRkaW5nLWlubGluZS1zdGFydDogMjBweDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgIHdpZHRoOiA4cHg7XG4gICAgICAgIGhlaWdodDogOHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICBib3gtc2hhZG93OiAkbm9ybWFsLXNoYWRvdztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubnNpLWxpc3QtaXRlbSB7XG5cbiAgICB9XG5cbiAgICAubnNpLWl0ZW0taGVhZGVyIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgLmltYWdlIHtcbiAgICAgICAgZmxleC1iYXNpczogMTAwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMXJlbTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGgzLCAudGl0bGUge1xuICAgICAgICBmbGV4LWJhc2lzOiBjYWxjKDEwMCUgLSAoMTAwcHggKyAxcmVtKSk7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLm5zaS1pdGVtLWNvbnRlbnQge1xuICAgICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3ItZXh0cmEtc21hbGwtZGV2aWNlcyB7XG4gICAgLm5zaS1pbWFnZSB7XG4gICAgICBtYXJnaW46IDJyZW0gMCAycmVtO1xuICAgIH1cbiAgfVxufVxuIiwiI2dhbGxlcnktcGFnZSB7XG4gIG1hcmdpbjogMnJlbSAwO1xuXG4gIC50aXRsZSB7XG4gICAgQGV4dGVuZCAubWFpbi1oZWFkaW5nLXN0eWxlO1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgYm90dG9tOiA1cHg7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICB9XG4gIH1cblxuICAudGl0bGUtYWx0ZXJuYXRlIHtcbiAgICBAZXh0ZW5kIC51bmRlcmxpbmUtaGVhZGluZy1zdHlsZTtcbiAgICBmb250LXNpemU6IDEuN3JlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcblxuICAgICY6OmJlZm9yZSB7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICBsZWZ0OiBjYWxjKDUwJSAtIDUwcHgpO1xuICAgICAgcmlnaHQ6IGNhbGMoNTAlIC0gNTBweCk7XG4gICAgICBib3R0b206IC0ycHg7XG4gICAgfVxuICB9XG5cbiAgLm1vbWVudC1pdGVtIHtcbiAgICBtYXJnaW46IDNyZW0gMDtcbiAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICB9XG4gIH1cblxuICAubW9tZW50LWRldGFpbHMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgIH1cbiAgfVxuXG4gIC5hbGwtaW1hZ2Utc2VjdGlvbiB7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5kZXRhaWxzIHtcbiAgICAgIEBleHRlbmQgLm1vbWVudC1kZXRhaWxzO1xuICAgIH1cbiAgfVxuXG4gIC5hbGwtZ2FsbGVyeS1ncmlkIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG5cbiAgICAuZ3JpZC1pbWFnZSB7XG4gICAgICBmbGV4LWJhc2lzOiBjYWxjKCgxMDAlIC8gNikgLSAxcmVtKTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAuNXJlbTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdhbGxlcnktZXZlbnRzIHtcbiAgICBtYXJnaW46IDNyZW0gMDtcblxuICAgIC5nYWxsZXJ5LWV2ZW50cy1kZXRhaWxzIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgIHAge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgd2lkdGg6IDg1JTtcbiAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGl0bGUtYWx0ZXJuYXRlIHtcbiAgICAgIGZvbnQtc2l6ZTogMnJlbTtcblxuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSAzMHB4KTtcbiAgICAgICAgcmlnaHQ6IGNhbGMoNTAlIC0gMzBweCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmdhbGxlcnktY2F0ZWdvcnktY29udGFpbmVyIHtcblxuICAgIC5nYWxsZXJ5LWNhdGVnb3J5IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAxLjVyZW0gMDtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBmaWdjYXB0aW9uIHtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgZmlndXJlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB9XG5cbiAgICAgIGZpZ2NhcHRpb24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50aXplKCRibGFjaywgLjgpO1xuICAgICAgICBwYWRkaW5nOiAxcmVtO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiAzMDBtcyBhbGwgZWFzZS1pbi1vdXQ7XG4gICAgICB9XG5cbiAgICAgIC50aXRsZS1hbHRlcm5hdGUge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDFyZW07XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBsZWZ0OiAxcmVtO1xuICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgIGJvdHRvbTogLTVweDtcbiAgICAgICAgICByaWdodDogaW5pdGlhbDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBib3gtc2hhZG93OiAycHggMnB4IDEwcHggcmdiYSg2MCwgNTMsIDUxLCAwLjEpLCAtMnB4IC0ycHggMTBweCByZ2JhKDYwLCA1MywgNTEsIDAuMSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmdhbGxlcnktY2F0ZWdvcnktdGl0bGUge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIiNnYWxsZXJ5LWlubmVyIHtcbiAgcGFkZGluZzogM3JlbSAwO1xuXG4gIC50aXRsZSB7XG4gICAgQGV4dGVuZCAubWFpbi1oZWFkaW5nLXN0eWxlO1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgYm90dG9tOiA1cHg7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgfVxuICB9XG5cbiAgLmdhbGxlcnktZGV0YWlscyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuICB9XG5cbiAgLmRlc2NyaXB0aW9uIHtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICB9XG5cbiAgLmdhbGxlcnktaW1hZ2VzLWNvbnRhaW5lciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgYWxpZ24taXRlbXM6IHN0cmV0Y2g7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuXG4gICAgLmdhbGxlcnktaW1hZ2Uge1xuICAgICAgZmxleC1iYXNpczogMjAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAwIC41cmVtO1xuICAgICAgbWFyZ2luOiAwIDAgMXJlbTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIGJveC1zaGFkb3c6IDJweCAycHggMTBweCByZ2JhKDYwLCA1MywgNTEsIDAuMyksIC0ycHggLTJweCAxMHB4IHJnYmEoNjAsIDUzLCA1MSwgMC4zKTtcbiAgICAgICAgfVxuICAgICAgICAuY2FwdGlvbiB7XG4gICAgICAgICAgdGV4dC1zaGFkb3c6IDJweCAycHggMTBweCByZ2JhKDYwLCA1MywgNTEsIDAuMyksIC0ycHggLTJweCAxMHB4IHJnYmEoNjAsIDUzLCA1MSwgMC4zKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXI6IDNweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIGJveC1zaGFkb3c6IDJweCAycHggMTBweCByZ2JhKDYwLCA1MywgNTEsIDAuMSksIC0ycHggLTJweCAxMHB4IHJnYmEoNjAsIDUzLCA1MSwgMC4xKTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIGVhc2UtaW4tb3V0IDMwMG1zO1xuICAgICAgfVxuXG4gICAgICAuY2FwdGlvbiB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMS41cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcblxuICAgICAgICAqIHtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1leHRyYS1zbWFsbC1kZXZpY2VzIHtcbiAgICAuZ2FsbGVyeS1pbWFnZXMtY29udGFpbmVyIHtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIC5nYWxsZXJ5LWltYWdlIHtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcHRpb24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLXNtYWxsLWRldmljZXMge1xuICAgIC5nYWxsZXJ5LWltYWdlcy1jb250YWluZXIge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcblxuICAgICAgLmdhbGxlcnktaW1hZ2Uge1xuICAgICAgICBmbGV4LWJhc2lzOiAzMyU7XG4gICAgICAgIHBhZGRpbmc6IDAgLjRyZW07XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIGZvci1tZWRpdW0tZGV2aWNlcyB7XG4gICAgLmdhbGxlcnktaW1hZ2VzLWNvbnRhaW5lciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAuZ2FsbGVyeS1pbWFnZSB7XG4gICAgICAgIGZsZXgtYmFzaXM6IDI1JTtcbiAgICAgICAgcGFkZGluZzogMCAuNXJlbTtcblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmNhcHRpb24ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLypAaW5jbHVkZSBmb3ItbGFyZ2UtZGV2aWNlcyB7XG4gICAgLmdhbGxlcnktaW1hZ2VzLWNvbnRhaW5lciB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuXG4gICAgICAuZ2FsbGVyeS1pbWFnZSB7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5jYXB0aW9uIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMnJlbTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAuNXJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfSovXG59XG4iLCIjZmFxLXBhZ2Uge1xuICAuaGVhZGluZyB7XG4gICAgQGV4dGVuZCAubWFpbi1oZWFkaW5nLXN0eWxlO1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBtYXJnaW4tYm90dG9tOiAycmVtO1xuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgIGhlaWdodDogM3B4O1xuICAgIH1cbiAgfVxuXG4gIC5jb250ZW50IHtcblxuICAgIC5mYXEtcGFuZWwge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAuZmFxLXF1ZXN0aW9uLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuICAgICAgcGFkZGluZzogLjVyZW0gMXJlbTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG5cbiAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsaWdodC1ncmV5O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5mYXEtcXVlc3Rpb24ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuXG4gICAgLmZhcS1hbnN3ZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgcGFkZGluZzogLjVyZW0gMXJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIiNub3RpZmljYXRpb24tcGFnZSB7XG4gIC5oZWFkaW5nIHtcbiAgICBAZXh0ZW5kIC5tYWluLWhlYWRpbmctc3R5bGU7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgfVxuICB9XG5cbiAgLm5vdGlmaWNhdGlvbi1jb250YWluZXIge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiAycmVtO1xuXG4gICAgLm5vdGlmaWNhdGlvbi1pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMi41cmVtO1xuXG4gICAgICAuaW1hZ2Uge1xuICAgICAgICBmbGV4LWJhc2lzOiAyNSU7XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubm90aWZpY2F0aW9uLWRldGFpbHMge1xuICAgICAgICBmbGV4LWJhc2lzOiA3MCU7XG4gICAgICAgIHBhZGRpbmc6IC41cmVtIDA7XG5cbiAgICAgICAgaDYge1xuICAgICAgICAgIG1hcmdpbjogMCAwIC43cmVtO1xuICAgICAgICAgIGNvbG9yOiAjMjIyO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLmRldGFpbHMge1xuICAgICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgIH1cblxuICAgICAgICAucG9zdC1kYXRlIHtcbiAgICAgICAgICBmb250LXNpemU6IC43NXJlbTtcbiAgICAgICAgICBtYXJnaW46IDAgMCAwLjNyZW0gMDtcblxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCAwIDAuMnJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmRjODAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5kZXRhaWxzLWJ1dHRvbiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICAucmVhZC1tb3JlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLWV4dHJhLXNtYWxsLWRldmljZXMge1xuICAgIC5ub3RpZmljYXRpb24tY29udGFpbmVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgLm5vdGlmaWNhdGlvbi1pdGVtIHtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiA0cHggc29saWQgJGxpZ2h0LWdyZXk7XG4gICAgICAgIHBhZGRpbmc6IDJyZW0gMDtcblxuICAgICAgICAuaW1hZ2Uge1xuICAgICAgICAgIGZsZXgtYmFzaXM6IDM1JTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxcmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5vdGlmaWNhdGlvbi1kZXRhaWxzIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA2MiU7XG5cbiAgICAgICAgICBoNiB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wb3N0LWRhdGUge1xuICAgICAgICAgICAgLmRpdmlkZXIge1xuICAgICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5kZXRhaWxzIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogLjhyZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogLjVyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LW9mLXR5cGUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBmb3Itc21hbGwtZGV2aWNlcyB7XG4gICAgLm5vdGlmaWNhdGlvbi1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAubm90aWZpY2F0aW9uLWl0ZW0ge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkbGlnaHQtZ3JleTtcbiAgICAgICAgcGFkZGluZzogMnJlbSAwO1xuXG4gICAgICAgIC5pbWFnZSB7XG4gICAgICAgICAgZmxleC1iYXNpczogMzUlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm5vdGlmaWNhdGlvbi1kZXRhaWxzIHtcbiAgICAgICAgICBmbGV4LWJhc2lzOiA2MiU7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgZm9udC1zaXplOiAuOXJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucG9zdC1kYXRlIHtcbiAgICAgICAgICAgIC5kaXZpZGVyIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDYwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZGV0YWlscyB7XG4gICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC41cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGluY2x1ZGUgZm9yLW1lZGl1bS1kZXZpY2VzIHtcbiAgICAubm90aWZpY2F0aW9uLWNvbnRhaW5lciB7XG4gICAgICB3aWR0aDogNzAlO1xuXG4gICAgICAubm90aWZpY2F0aW9uLWl0ZW0ge1xuXG4gICAgICAgIC5ub3RpZmljYXRpb24tZGV0YWlscyB7XG4gICAgICAgICAgcGFkZGluZzogMDtcblxuICAgICAgICAgIGg2IHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDAuMXJlbTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wb3N0LWRhdGUge1xuICAgICAgICAgICAgbWFyZ2luOiAwIDAgMC4xcmVtO1xuXG4gICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZGV0YWlscyB7XG4gICAgICAgICAgICBmb250LXNpemU6IC44cmVtO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIiNub3RpZmljYXRpb24tZGV0YWlscy1wYWdlIHtcbiAgLm5vdGlmaWNhdGlvbi1kZXRhaWxzIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcblxuICAgIC5ub3RpZmljYXRpb24taW1hZ2Uge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICBpbWcge1xuICAgICAgICBib3JkZXI6IDAuNXJlbSBzb2xpZCAjZmZmO1xuICAgICAgICBib3gtc2hhZG93OiAycHggMnB4IDNweCByZ2JhKDYwLCA1MywgNTEsIDAuMSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubm90aWZpY2F0aW9uLWNvbnRlbnQge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICBjb2xvcjogJGZvbnQtY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcblxuICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBib3R0b206IC0xMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzZWNvbmRhcnktY29sb3I7XG4gICAgICAgICAgaGVpZ2h0OiAzcHg7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDM1JTtcbiAgICAgICAgICByaWdodDogMzUlO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5ub3RpZmljYXRpb24tZGF0ZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogLjlyZW07XG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMXJlbTtcbiAgICAgIH1cblxuICAgICAgLm5vdGlmaWNhdGlvbi1kZXNjcmlwdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmb250LXNpemU6IC45cmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBRUVBLEFBQUEsT0FBTyxFQUFFLEtBQUssQ0FBQztFQUNiLE9BQU8sRUFBRSxNQUFNLEdBU2hCO0VDSEMsTUFBTSxFQUFFLFNBQVMsRUFBRSxRQUFRO0lEUDdCLEFBQUEsT0FBTyxFQUFFLEtBQUssQ0FBQztNQUlYLE9BQU8sRUFBRSxNQUFNLEdBTWxCO0VDR0MsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLLE9BQU8sU0FBUyxFQUFFLFFBQVE7SURicEQsQUFBQSxPQUFPLEVBQUUsS0FBSyxDQUFDO01BUVgsT0FBTyxFQUFFLE1BQU0sR0FFbEI7O0FBSUUsQUFBRCxVQUFHLENBQUM7RUFDRixPQUFPLEVBQUUsR0FBRztFQUNaLEtBQUssRURiRCxJQUFJO0VDY1IsT0FBTyxFQUFFLE1BQU07RUFDZixnQkFBZ0IsRUFBRSxXQUFX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 */
