.form--listing .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list {
    position: relative;
}

.form--listing .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room {
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.stm_wp_hotelier_rooms_list_style_1 {
    position: relative;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types {
    list-style: none;
    font-size: 0;
    margin-bottom: 46px;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types ul {
    font-size: 0;
    padding-left: 0;
    text-align: center;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types ul li {
    padding: 0 30px;
    font-size: 14px;
    display: inline-block;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types ul li a {
    padding: 8px 0;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-decoration: none;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types ul li.active a {
    border-bottom: 1px solid;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types ul li.active a:after {
    opacity: 1;
}

.stm_wp_hotelier_rooms_list_style_1 .room-list-wrapper {
    position: relative;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -15px;
    font-size: 14px;
    position: absolute;
    top: 0;
    left: 0;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room {
    -webkit-transition: .3s ease;
    -o-transition: .3s ease;
    transition: .3s ease;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(15px);
    -ms-transform: translateY(15px);
    transform: translateY(15px);
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list.active {
    position: relative;
    z-index: 100;
    -webkit-transition: 0.3s cubic-bezier(0.06, 0.43, 0.22, 1);
    -o-transition: 0.3s cubic-bezier(0.06, 0.43, 0.22, 1);
    transition: 0.3s cubic-bezier(0.06, 0.43, 0.22, 1);
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list.active .room {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list.active .room:nth-child(1) {
    -webkit-transition-delay: .2s;
    -o-transition-delay: .2s;
    transition-delay: .2s;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list.active .room:nth-child(2) {
    -webkit-transition-delay: .3s;
    -o-transition-delay: .3s;
    transition-delay: .3s;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list.active .room:nth-child(3) {
    -webkit-transition-delay: .4s;
    -o-transition-delay: .4s;
    transition-delay: .4s;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list.active .room:hover {
    -webkit-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    transform: translateY(-15px);
    -webkit-transition-delay: 0s !important;
    -o-transition-delay: 0s !important;
    transition-delay: 0s !important;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room {
    width: 33.33%;
    padding: 0 15px;
    margin-bottom: 60px;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room:last-child {
    margin-bottom: 60px !important;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room .inner {
    height: 100%;
    background-color: #fff;
    -webkit-box-shadow: 0 30px 50px rgba(153, 153, 153, 0.15);
    box-shadow: 0 30px 50px rgba(153, 153, 153, 0.15);
    -webkit-transition: .3s ease;
    -o-transition: .3s ease;
    transition: .3s ease;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__image {
    position: relative;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__image img {
    width: 100%;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__price {
    position: absolute;
    color: #fff;
    bottom: -20px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    font-weight: normal;
    padding: 10px 20px;
    border-radius: 50px;
    font-size: 18px;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__content {
    padding: 40px 30px 21px;
    background-color: #fff;
    text-align: center;
    line-height: 22px;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__link {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(56, 49, 40, 0.8);
    opacity: 0;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__link:hover {
    opacity: 1;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__title h3 {
    margin-bottom: 8px !important;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__title h3 a {
    display: block;
    -webkit-transition: all .3s ease;
    -o-transition: all .3s ease;
    transition: all .3s ease;
    overflow: hidden;
    white-space: nowrap;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__excerpt {
    font-size: 15px;
    margin-bottom: 19px;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room_info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 20px;
    border-top: 1px solid rgba(204, 204, 204, 0.5);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    line-height: 17px;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room_info__single {
    margin: 0 10px;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room_info__single i {
    margin-right: 4px;
    font-size: 17px;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room_info__single span {
    position: relative;
    top: 3px;
    font-size: 14px;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room_info__single > * {
    vertical-align: top;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room:hover .inner {
    -webkit-box-shadow: 0 30px 50px rgba(153, 153, 153, 0.35);
    box-shadow: 0 30px 50px rgba(153, 153, 153, 0.35);
}

.stm_wp_hotelier_rooms_list_style_1 .stm-load-more {
    margin: 0 auto;
    display: block;
}

.stm_wp_hotelier_rooms_list_style_1 .stm-preloader {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-animation: scaleout 1s infinite ease-in-out;
    animation: scaleout 1s infinite ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    margin: 0 auto;
}

.stm_wp_hotelier_rooms_list_style_1.white_nav .stm-rooms-types ul li a {
    color: #fff;
}

@media (max-width: 1023px) {
    .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types {
        margin-bottom: 35px;
    }

    .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types ul {
        text-align: center;
    }

    .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-types ul li {
        margin-bottom: 15px;
        padding: 0 10px;
    }

    .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room {
        height: auto;
        width: 50%;
    }

    .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__occupancy {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__occupancy span {
        width: 100%;
    }
}

@media (max-width: 550px) {
    .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room {
        width: 100%;
    }
}

@media (max-width: 1024px) {
    .stm_wp_hotelier_rooms_list_style_1 .stm-rooms-list .room__price {
        left: 15%;
        right: 15%;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
        text-align: center;
    }
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmNfZWxlbWVudHMvd3BfaG90ZWxpZXJfcm9vbXNfbGlzdC9zdHlsZV8xLmNzcyIsInNvdXJjZXMiOlsidmNfZWxlbWVudHMvd3BfaG90ZWxpZXJfcm9vbXNfbGlzdC9zdHlsZV8xLnNjc3MiLCJfbWl4aW5zLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIi4uLy4uL21peGluc1wiO1xuLy9AaW1wb3J0IFwiLi4vLi4vaWNvbnMvaG90ZWwvdmFyaWFibGVzXCI7XG5cbi5mb3JtLS1saXN0aW5nIHtcbiAgICAuc3RtX3dwX2hvdGVsaWVyX3Jvb21zX2xpc3Rfc3R5bGVfMSB7XG4gICAgICAgIC5zdG0tcm9vbXMtbGlzdCB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAucm9vbSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnN0bV93cF9ob3RlbGllcl9yb29tc19saXN0X3N0eWxlXzEge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAuc3RtLXJvb21zLXR5cGVzIHtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgZm9udC1zaXplOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA0NnB4O1xuICAgICAgICB1bCB7XG4gICAgICAgICAgICBmb250LXNpemU6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMCAzMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIC5yb29tLWxpc3Qtd3JhcHBlciB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLnN0bS1yb29tcy1saXN0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBtYXJnaW46IDAgLTE1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIC5yb29tIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxNXB4KTtcbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB6LWluZGV4OiAxMDA7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzIGN1YmljLWJlemllcigwLjA2LCAwLjQzLCAwLjIyLCAxKTtcbiAgICAgICAgICAgIC5yb29tIHtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjJzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4zcztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuNHM7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAwcyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucm9vbSB7XG4gICAgICAgICAgICB3aWR0aDogMzMuMzMlO1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNjBweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAwIDMwcHggNTBweCByZ2JhKDE1MywxNTMsMTUzLCAuMTUpO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IC4zcyBlYXNlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJl9faW1hZ2Uge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX19wcmljZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNTAlKTtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX19jb250ZW50IHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDMwcHggMjFweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICZfX2xpbmsge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGFic29sdXRlZCgpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoIzM4MzEyOCwgLjgpO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX190aXRsZSB7XG4gICAgICAgICAgICAgICAgaDMge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA4cHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmX19leGNlcnB0IHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTlweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICZfaW5mbyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMjA0LDIwNCwyMDQsMC41KTtcbiAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTdweDtcbiAgICAgICAgICAgICAgICAmX19zaW5nbGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTdweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgID4gKiB7XG4gICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm94LXNoYWRvdzogMCAzMHB4IDUwcHggcmdiYSgxNTMsMTUzLDE1MywgLjM1KTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc3RtLWxvYWQtbW9yZSB7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICAuc3RtLXByZWxvYWRlciB7XG4gICAgICAgIHdpZHRoOiAzMnB4O1xuICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYW5pbWF0aW9uOiBzY2FsZW91dCAxcyBpbmZpbml0ZSBlYXNlLWluLW91dDtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgfVxuXG4gICAgJi53aGl0ZV9uYXYge1xuICAgICAgICAuc3RtLXJvb21zLXR5cGVzIHVsIGxpIGEge1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBicmVha3BvaW50KHRhYmxldHVuZGVyKSB7XG4gICAgICAgIC5zdG0tcm9vbXMtdHlwZXMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zdG0tcm9vbXMtbGlzdCB7XG4gICAgICAgICAgICAucm9vbSB7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgICAgICAgICAgJl9fb2NjdXBhbmN5IHtcbiAgICAgICAgICAgICAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgYnJlYWtwb2ludChtb2JpbGUpIHtcbiAgICAgICAgLnN0bS1yb29tcy1saXN0IHtcbiAgICAgICAgICAgIC5yb29tIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuQGluY2x1ZGUgYnJlYWtwb2ludCh0YWJsZXQpIHtcbiAgICAuc3RtX3dwX2hvdGVsaWVyX3Jvb21zX2xpc3Rfc3R5bGVfMSAuc3RtLXJvb21zLWxpc3QgLnJvb21fX3ByaWNlIHtcbiAgICAgICAgbGVmdDogMTUlO1xuICAgICAgICByaWdodDogMTUlO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG59IiwiQGZ1bmN0aW9uIHVuaWNvZGUoJHN0cikge1xuICAgIEByZXR1cm4gdW5xdW90ZShcIlxcXCJcIikgKyAkc3RyICsgdW5xdW90ZShcIlxcXCJcIik7XG59XG5cbkBtaXhpbiBwc2V1ZG8oKSB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtaXhpbiBhYnNvbHV0ZWQoKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvdHRvbTogMDtcbn1cblxuQG1peGluIHRleHRfcmVuZGVyaW5nKCkge1xuICAgIHRleHQtcmVuZGVyaW5nOiBhdXRvO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbkBtaXhpbiBmYSgpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgZm9udDogbm9ybWFsIG5vcm1hbCBub3JtYWwgMTRweC8xIEZvbnRBd2Vzb21lO1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG5AbWl4aW4gaF9saW5lKCkge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiA0NnB4O1xuICAgIGhlaWdodDogNXB4O1xuICAgIG1hcmdpbjogMCAwIDIxcHg7XG59XG5cbkBtaXhpbiBib3JkZXJfc21hbGwoKSB7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiA1MCU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGZvbnQtc2l6ZTogMTBweDtcbiAgICB0ZXh0LXJlbmRlcmluZzogYXV0bztcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDNweCAwIDNweCA1cHg7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuQG1peGluIHJlcGVhdGluZ19ncmFkaWVudCgpIHtcbiAgICBiYWNrZ3JvdW5kOiByZXBlYXRpbmctbGluZWFyLWdyYWRpZW50KFxuICAgICAgICAgICAgICAgICAgICAxMzVkZWcsXG4gICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgMC4xNSkgNXB4LFxuICAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIDAuMTUpIDEwcHgsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IDEwcHgsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IDE1cHhcbiAgICApXG59XG5cbkBtaXhpbiByZXBlYXRpbmdfYm9yZGVyX2dyYWRpZW50KCkge1xuICAgIGJvcmRlci1pbWFnZTogcmVwZWF0aW5nLWxpbmVhci1ncmFkaWVudChcbiAgICAgICAgICAgICAgICAgICAgLTQ1ZGVnLFxuICAgICAgICAgICAgICAgICAgICB0cmFuc3BhcmVudCAwcHgsXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50IDVweCxcbiAgICAgICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMSkgNXB4LFxuICAgICAgICAgICAgICAgICAgICByZ2JhKDAsIDAsIDAsIC4xKSAxMHB4KSA0O1xufVxuXG5AbWl4aW4gcHJlbG9hZGVyKCkge1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIGhlaWdodDogMzJweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBhbmltYXRpb246IHNjYWxlb3V0IDEuMHMgaW5maW5pdGUgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZS1pbi1vdXQ7XG59XG5cbkBtaXhpbiBicmVha3BvaW50KCRwb2ludCkge1xuICAgIEBpZiAkcG9pbnQgPT0gbGFwdG9wIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDE0NDBweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQgO1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gdW5kZXJMYXB0b3Age1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogMTUwMHB4KSB7XG4gICAgICAgICAgICBAY29udGVudCA7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwb2ludCA9PSBhZnRlckxhcHRvcCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxNTAwcHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50IDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50IDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldGxhbmQge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNXB4KSBhbmQgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50IDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHBvaW50ID09IHRhYmxldHVuZGVyIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDEwMjNweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQgO1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gdGFibGV0b25seSB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjlweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQgO1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gbW9iaWxlIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU1MHB4KSB7XG4gICAgICAgICAgICBAY29udGVudCA7XG4gICAgICAgIH1cbiAgICB9IEBlbHNlIGlmICRwb2ludCA9PSB0YWJsZXRpemVkIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OXB4KSBhbmQgKG1pbi13aWR0aDogNDI1cHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50IDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHBvaW50ID09IG1vYmlsaXplZCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA0MjVweCkge1xuICAgICAgICAgICAgQGNvbnRlbnQgO1xuICAgICAgICB9XG4gICAgfSBAZWxzZSBpZiAkcG9pbnQgPT0gaXBob25lNXBvcnRyYWl0IHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDU3MHB4KSBhbmQgKG1pbi13aWR0aDogNTUxcHgpIHtcbiAgICAgICAgICAgIEBjb250ZW50IDtcbiAgICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogJHBvaW50KSB7XG4gICAgICAgICAgICBAY29udGVudCA7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbkBtaXhpbiBzdG1pY29uKCRjb250ZW50LCAkaW1wb3J0YW50OiB0cnVlKSB7XG4gICAgQGlmICRpbXBvcnRhbnQgPT0gdHJ1ZSB7XG4gICAgICAgIGNvbnRlbnQ6IHVuaWNvZGUoJGNvbnRlbnQpICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtZmFtaWx5OiAnc3RtaWNvbnMnICFpbXBvcnRhbnQ7XG4gICAgfSBAZWxzZSB7XG4gICAgICAgIGNvbnRlbnQ6IHVuaWNvZGUoJGNvbnRlbnQpO1xuICAgICAgICBmb250LWZhbWlseTogJ3N0bWljb25zJztcbiAgICB9XG59XG5cbkBtaXhpbiBhYnNBbGlnbigkZGlyZWN0aW9uKSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuXG4gICAgQGlmICgkZGlyZWN0aW9uID09IHYpIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICB9IEBlbHNlIGlmICgkZGlyZWN0aW9uID09IGgpIHtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgfSBAZWxzZSBpZiAoJGRpcmVjdGlvbiA9PSBjKSB7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgIH1cblxufVxuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxufVxuXG5AbWl4aW4gc2l6ZSgkc2l6ZSkge1xuICAgIHdpZHRoOiAjeyRzaXplfXB4O1xuICAgIGhlaWdodDogI3skc2l6ZX1weDtcbn1cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxBQUVRLGNBRk0sQ0FDVixtQ0FBbUMsQ0FDL0IsZUFBZSxDQUFDO0VBQ1osUUFBUSxFQUFFLFFBQVEsR0FNckI7RUFUVCxBQUlZLGNBSkUsQ0FDVixtQ0FBbUMsQ0FDL0IsZUFBZSxDQUVYLEtBQUssQ0FBQztJQUNGLE9BQU8sRUFBRSxDQUFDO0lBQ1YsVUFBVSxFQUFFLE9BQU87SUFDbkIsU0FBUyxFQUFFLGFBQWEsR0FDM0I7O0FBS2IsQUFBQSxtQ0FBbUMsQ0FBQztFQUNoQyxRQUFRLEVBQUUsUUFBUSxHQTJOckI7RUE1TkQsQUFFSSxtQ0FGK0IsQ0FFL0IsZ0JBQWdCLENBQUM7SUFDYixVQUFVLEVBQUUsSUFBSTtJQUNoQixTQUFTLEVBQUUsQ0FBQztJQUNaLGFBQWEsRUFBRSxJQUFJLEdBeUJ0QjtJQTlCTCxBQU1RLG1DQU4yQixDQUUvQixnQkFBZ0IsQ0FJWixFQUFFLENBQUM7TUFDQyxTQUFTLEVBQUUsQ0FBQztNQUNaLFlBQVksRUFBRSxDQUFDO01BQ2YsVUFBVSxFQUFFLE1BQU0sR0FvQnJCO01BN0JULEFBVVksbUNBVnVCLENBRS9CLGdC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 */
