﻿@charset "UTF-8";
/*
	Template Name: Aduca
	Version: 1.0
	最新最全最好的Bootstrap模板：http://www.bootstrapmb.com

*/
/*------------------------------------------------------------------
[Table of contents]
	+ General
		- Global Styles
		- general Styles
		- Preloader
		- Back To Top
		- theme-btn
		- section-heading
		- Move bg
		- Move bg 2
		- section divider
	+ Header
		- Logo
		- Category
		- Seach form
		- Main Navigation
		- Dropdown
		- Offcanvas menu
		- Admission
	+ Content
		+ Main Files
			- index.html
			- home-2.html
		+ Banner Area
			- Breadcrumb
	    + About
	        - About us
	    + Courses
	        - Course Grid
	        - Course Detail
		+ Pages
			- Teacher
			- Teacher Detail
			- FAQs
			- Admission
			- Gallery
			- Pricing Table
			- Sing up
			- Log in
			- Error 404 page
		+ Blog
		    - Blog Grid
		    - Blog Single
		+ Contact
		    - Contact
	+ Footer
		+ Top Footer
			- Logo
			- Company
			- Courses
			- Mobile app
		+ Bottom Footer
		    - Copyright
		    - Language Select
	+ Responsive Design Styles
            - $laptop_ls: 'only screen and (min-width: 320px) and (max-width: 1919px)';
            - $laptop_l: '(max-width: 1440px)';
            - $laptop_m: '(max-width: 1366px)';
            - $laptop_m_two: '(max-width: 1280px)';
            - $laptop_m_three: '(max-width: 1200px)';
            - $laptop_m_four: '(max-width: 1199px)';
            - $laptop_m_five: '(max-width: 1024px)';
            - $laptop_m_six: '(min-width: 1200px)';
            - $medium_device: 'only screen and (min-width: 992px) and (max-width: 1200px)';
            - $tab_device: 'only screen and (min-width: 768px) and (max-width: 991px)';
            - $tab_device-and-mobile: 'only screen and (min-width: 320px) and (max-width: 990px)';
            - $tab_device_two: '(max-width: 768px)';
            - $tab_device_three: '(max-width: 991px)';
            - $tab_device_four: '(min-width: 991px)';
            - $large_mobile: 'only screen and (min-width: 480px) and (max-width: 767px)';
            - $large_mobile_two: ' (max-width: 600px)';
            - $large_mobile_three: ' (max-width: 575px)';
            - $large_mobile_four: ' (max-width: 480px)';
            - $small_mobile: 'only screen and (min-width: 320px) and (max-width: 479px)';
            - $small_mobile_one: ' (max-width: 425px)';
            - $small_mobile_two: '(max-width: 400px)';
            - $small_mobile_three: '(max-width: 320px)';
            - $small_mobile_four: '(max-width: 375px)';
            - $device-1600: '(max-width: 1600px)';
            - $device-767: '(max-width: 767px)';
            - $device-992: '(max-width: 992px)';
            - $device-767: '(max-width: 767px)';
            - $device-481: '(max-width: 481px)';
            - $device-384: '(max-width: 384px)';
-------------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=Libre+Franklin:100,200,300,400,500,600,700&display=swap");
/*---- theme-btn ----*/
.theme-btn {
  font-size: 15px;
  text-transform: uppercase;
  background-color: #51be78;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.1px;
  padding: 0 30px 0 30px;
  line-height: 55px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  position: relative;
  z-index: 1;
  display: inline-block;
  -webkit-transition: 0.3s ease-in;
  -moz-transition: 0.3s ease-in;
  -ms-transition: 0.3s ease-in;
  -o-transition: 0.3s ease-in;
  transition: 0.3s ease-in;
  border: none;
  overflow: hidden; }

/*---- theme-btn-after ----*/
.theme-btn:after, .course-area .course-tab-wrap .course-tab-list.nav-tabs li a:after, .package-area .package-content-wrap .package-item .package-tooltip .package__tooltip:after {
  position: absolute;
  left: -12px;
  top: 0;
  height: 100%;
  width: 56%;
  content: "";
  background-color: #fff;
  opacity: .1;
  -webkit-transform: skewX(15deg);
  -moz-transform: skewX(15deg);
  -ms-transform: skewX(15deg);
  -o-transform: skewX(15deg);
  transform: skewX(15deg);
  -webkit-transition: 0.3s ease-in;
  -moz-transition: 0.3s ease-in;
  -ms-transition: 0.3s ease-in;
  -o-transition: 0.3s ease-in;
  transition: 0.3s ease-in; }

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box; }

ul {
  padding: 0;
  margin: 0;
  list-style-type: none; }

a:hover,
a:focus {
  text-decoration: none; }

input:focus {
  outline: none; }

h1, h2, h3, h4, h5, h6 {
  color: #233d63; }

h1, h2, h3, h4, h5, h6, p {
  margin: 0; }

body {
  font-size: 16px;
  line-height: 22px;
  font-family: "Libre Franklin", sans-serif;
  color: #7f8897;
  position: relative;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased; }

/*---------------- container ----------------*/
.container {
  max-width: 1200px; }

@media (min-width: 576px) {
  .container {
    max-width: 540px; } }

@media (min-width: 768px) {
  .container {
    max-width: 720px; } }

@media (min-width: 992px) {
  .container {
    max-width: 960px; } }

@media (min-width: 1200px) {
  .container {
    max-width: 1200px; } }

/*-================== loading-area ==============-*/
.preloader {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 9999;
  background-color: #fff; }
  .preloader .cssload-loader {
    width: 97px;
    height: 19px;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
    .preloader .cssload-loader > div {
      content: "";
      width: 12px;
      height: 12px;
      -webkit-border-radius: 100%;
      -moz-border-radius: 100%;
      border-radius: 100%;
      position: absolute;
      animation: cssload-shift 2.3s linear infinite;
      -o-animation: cssload-shift 2.3s linear infinite;
      -ms-animation: cssload-shift 2.3s linear infinite;
      -webkit-animation: cssload-shift 2.3s linear infinite;
      -moz-animation: cssload-shift 2.3s linear infinite;
      background-color: #51be78; }
      .preloader .cssload-loader > div:nth-of-type(1) {
        animation-delay: -0.46s;
        -o-animation-delay: -0.46s;
        -ms-animation-delay: -0.46s;
        -webkit-animation-delay: -0.46s;
        -moz-animation-delay: -0.46s; }
      .preloader .cssload-loader > div:nth-of-type(2) {
        animation-delay: -0.92s;
        -o-animation-delay: -0.92s;
        -ms-animation-delay: -0.92s;
        -webkit-animation-delay: -0.92s;
        -moz-animation-delay: -0.92s; }
      .preloader .cssload-loader > div:nth-of-type(3) {
        animation-delay: -1.38s;
        -o-animation-delay: -1.38s;
        -ms-animation-delay: -1.38s;
        -webkit-animation-delay: -1.38s;
        -moz-animation-delay: -1.38s; }
      .preloader .cssload-loader > div:nth-of-type(4) {
        animation-delay: -1.84s;
        -o-animation-delay: -1.84s;
        -ms-animation-delay: -1.84s;
        -webkit-animation-delay: -1.84s;
        -moz-animation-delay: -1.84s; }

/*---------------- cssload-shift ----------------*/
@keyframes cssload-shift {
  0% {
    left: -37px;
    opacity: 0; }
  10% {
    left: 0;
    opacity: 1; }
  90% {
    left: 62px;
    opacity: 1; }
  100% {
    left: 100px;
    opacity: 0; } }

@-o-keyframes cssload-shift {
  0% {
    left: -37px;
    opacity: 0; }
  10% {
    left: 0;
    opacity: 1; }
  90% {
    left: 62px;
    opacity: 1; }
  100% {
    left: 100px;
    opacity: 0; } }

@-ms-keyframes cssload-shift {
  0% {
    left: -37px;
    opacity: 0; }
  10% {
    left: 0;
    opacity: 1; }
  90% {
    left: 62px;
    opacity: 1; }
  100% {
    left: 100px;
    opacity: 0; } }

@-webkit-keyframes cssload-shift {
  0% {
    left: -37px;
    opacity: 0; }
  10% {
    left: 0;
    opacity: 1; }
  90% {
    left: 62px;
    opacity: 1; }
  100% {
    left: 100px;
    opacity: 0; } }

@-moz-keyframes cssload-shift {
  0% {
    left: -37px;
    opacity: 0; }
  10% {
    left: 0;
    opacity: 1; }
  90% {
    left: 62px;
    opacity: 1; }
  100% {
    left: 100px;
    opacity: 0; } }

/*---------------- theme-btn ----------------*/
.theme-btn:hover {
  color: #fff; }
  .theme-btn:hover:after {
    width: 100%;
    left: 0;
    -webkit-transform: skewX(0);
    -moz-transform: skewX(0);
    -ms-transform: skewX(0);
    -o-transform: skewX(0);
    transform: skewX(0);
    opacity: .2; }

.theme-btn2 {
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px; }

/*---------------- section-heading ----------------*/
.section-heading {
  position: relative;
  z-index: 1; }
  .section-heading .section__meta {
    display: inline-block;
    text-transform: uppercase;
    font-size: 14px;
    color: #51be78;
    background-color: rgba(81, 190, 120, 0.1);
    padding: 5px 10px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    letter-spacing: 0.6px;
    margin-bottom: 5px;
    font-weight: 400; }
  .section-heading .section__title {
    font-size: 45px;
    font-weight: 600; }
    @media (max-width: 575px) {
      .section-heading .section__title {
        font-size: 40px; } }
  .section-heading .section__title2,
  .section-heading .section__meta2 {
    color: #fff; }
  .section-heading .section__meta2 {
    background-color: rgba(255, 255, 255, 0.1); }
  .section-heading .section__meta3 {
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    padding: 6px 15px; }
  .section-heading .section__desc {
    line-height: 28px;
    margin-bottom: 34px; }
  .section-heading .section__desc2 {
    font-size: 22px;
    font-weight: 500; }
  .section-heading .section__divider {
    display: inline-block;
    position: relative;
    height: 5px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    background-color: #51be78;
    width: 90px;
    margin-top: 18px;
    margin-bottom: 18px;
    overflow: hidden; }
    .section-heading .section__divider:after {
      content: '';
      position: absolute;
      left: 0;
      top: -1.1px;
      height: 7px;
      width: 8px;
      background-color: #fff;
      -webkit-animation-duration: 3s;
      animation-duration: 3s;
      -webkit-animation-timing-function: linear;
      animation-timing-function: linear;
      -webkit-animation-iteration-count: infinite;
      animation-iteration-count: infinite;
      -webkit-animation-name: MOVE-BG;
      animation-name: MOVE-BG; }
  .section-heading .section__divider2 {
    background-color: rgba(255, 255, 255, 0.1); }
    .section-heading .section__divider2:after {
      background-color: #fff; }

/*---------------- MOVE-BG----------------*/
@-webkit-keyframes MOVE-BG {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  to {
    -webkit-transform: translateX(88px);
    transform: translateX(88px); } }

@-webkit-keyframes MOVE-BG {
  from {
    -ms-transform: translateX(0);
    transform: translateX(0); }
  to {
    -ms-transform: translateX(88px);
    transform: translateX(88px); } }

@keyframes MOVE-BG {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  to {
    -webkit-transform: translateX(88px);
    transform: translateX(88px); } }

/*---------------- MOVE-BG 2 ----------------*/
@-webkit-keyframes MOVE-BG2 {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  to {
    -webkit-transform: translateX(48px);
    transform: translateX(48px); } }

@-webkit-keyframes MOVE-BG2 {
  from {
    -ms-transform: translateX(0);
    transform: translateX(0); }
  to {
    -ms-transform: translateX(48px);
    transform: translateX(48px); } }

@keyframes MOVE-BG2 {
  from {
    -webkit-transform: translateX(0);
    transform: translateX(0); }
  to {
    -webkit-transform: translateX(48px);
    transform: translateX(48px); } }

/*---------------- section-divider ----------------*/
.section-divider {
  position: relative;
  height: 2px;
  background-color: rgba(127, 136, 151, 0.1); }

/*-===============================
    header-menu-area
===============================-*/
.header-menu-area {
  position: relative;
  z-index: 1023;
  background-color: #fff;
  padding-right: 185px;
  padding-left: 185px; }
  @media (max-width: 1600px) {
    .header-menu-area {
      padding-right: 0;
      padding-left: 0; } }
  .header-menu-area .container-fluid {
    padding-right: 0;
    padding-left: 0; }
    @media (max-width: 1600px) {
      .header-menu-area .container-fluid {
        padding-right: 15px;
        padding-left: 15px; } }
  .header-menu-area .header-top {
    border-bottom: 1px solid rgba(127, 136, 151, 0.1); }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .header-menu-area .header-top .col-lg-6 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%; } }
    @media (max-width: 768px) {
      .header-menu-area .header-top .col-lg-6 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; } }
    .header-menu-area .header-top .header-widget ul {
      height: 45px; }
      @media (max-width: 768px) {
        .header-menu-area .header-top .header-widget ul {
          -ms-flex-pack: center !important;
          justify-content: center !important; } }
      @media (max-width: 320px) {
        .header-menu-area .header-top .header-widget ul {
          display: block !important;
          height: 100%; } }
      .header-menu-area .header-top .header-widget ul li {
        margin-right: 10px;
        display: inline-block; }
        .header-menu-area .header-top .header-widget ul li:last-child {
          margin-right: 0; }
        .header-menu-area .header-top .header-widget ul li a {
          color: #233d63;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .header-menu-area .header-top .header-widget ul li a:hover {
            color: #51be78; }
        .header-menu-area .header-top .header-widget ul li .la {
          color: #51be78; }
        .header-menu-area .header-top .header-widget ul li .fa {
          width: 30px;
          height: 30px;
          line-height: 30px;
          -webkit-border-radius: 50%;
          -moz-border-radius: 50%;
          border-radius: 50%;
          background-color: rgba(81, 190, 120, 0.1);
          color: #51be78;
          text-align: center;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .header-menu-area .header-top .header-widget ul li .fa:hover {
            color: #fff;
            background-color: #51be78; }
      .header-menu-area .header-top .header-widget ul.contact-info li {
        height: 45px;
        border-right: 1px solid rgba(127, 136, 151, 0.1);
        padding-right: 15px;
        padding-left: 15px;
        padding-top: 10px;
        margin-right: 15px; }
        @media (max-width: 768px) {
          .header-menu-area .header-top .header-widget ul.contact-info li {
            border-right: 0;
            height: auto;
            padding-right: 0;
            padding-top: 0; } }
        @media (max-width: 320px) {
          .header-menu-area .header-top .header-widget ul.contact-info li {
            margin-right: 0;
            padding-right: 0;
            height: auto; } }
        .header-menu-area .header-top .header-widget ul.contact-info li span {
          margin-right: 2px; }
        .header-menu-area .header-top .header-widget ul.contact-info li:first-child, .header-menu-area .header-top .header-widget ul.contact-info li:last-child {
          padding-left: 0; }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .header-menu-area .header-top .header-widget ul.contact-info li:last-child {
            margin-right: 0;
            padding-right: 0; } }
        @media only screen and (min-width: 320px) and (max-width: 479px) {
          .header-menu-area .header-top .header-widget ul.contact-info li:last-child {
            margin-right: 0;
            padding-right: 0; } }
    @media (max-width: 320px) {
      .header-menu-area .header-top .header-widget1 {
        text-align: center; } }
    .header-menu-area .header-top .header-widget2 {
      height: 45px; }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .header-menu-area .header-top .header-widget2 {
          height: auto;
          padding-bottom: 10px; } }
      @media (max-width: 320px) {
        .header-menu-area .header-top .header-widget2 {
          height: auto;
          margin-top: 10px; } }
      @media (max-width: 320px) {
        .header-menu-area .header-top .header-widget2 .header-right-info {
          width: 100%; } }
      .header-menu-area .header-top .header-widget2 .header-right-info ul {
        border-right: 1px solid rgba(127, 136, 151, 0.1);
        padding-right: 15px;
        padding-left: 15px; }
        @media (max-width: 768px) {
          .header-menu-area .header-top .header-widget2 .header-right-info ul {
            border-right: 0;
            padding-right: 0;
            padding-left: 0; } }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .header-menu-area .header-top .header-widget2 .header-right-info ul {
            border-right: 0;
            padding-right: 0;
            padding-left: 0; } }
        @media (max-width: 320px) {
          .header-menu-area .header-top .header-widget2 .header-right-info ul {
            width: 100%;
            padding-right: 0;
            padding-left: 0; } }
        .header-menu-area .header-top .header-widget2 .header-right-info ul li {
          margin-right: 5px; }
          .header-menu-area .header-top .header-widget2 .header-right-info ul li:last-child {
            margin-right: 0; }
        .header-menu-area .header-top .header-widget2 .header-right-info ul.user-action {
          padding-right: 0;
          border-right: none; }
          @media (max-width: 375px) {
            .header-menu-area .header-top .header-widget2 .header-right-info ul.user-action {
              padding-left: 0; } }
        .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart {
          padding-right: 0;
          padding-left: 0; }
          @media (max-width: 320px) {
            .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart {
              text-align: right; } }
          .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li {
            position: relative; }
            .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .user-cart-btn {
              font-size: 24px;
              cursor: pointer;
              padding: 7px 15px 13px 15px; }
              @media (max-width: 320px) {
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .user-cart-btn {
                  padding-right: 0; } }
            .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item {
              position: absolute;
              z-index: 4;
              left: -225px;
              width: 280px;
              height: auto;
              top: 45px;
              padding: 25px;
              background-color: #fff;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              border-radius: 4px;
              -webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              -moz-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              -ms-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              -o-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
              -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
              box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
              text-align: center;
              opacity: 0;
              visibility: hidden;
              -webkit-transform: scale(0.8);
              -moz-transform: scale(0.8);
              -ms-transform: scale(0.8);
              -o-transform: scale(0.8);
              transform: scale(0.8); }
              @media (max-width: 480px) {
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item {
                  left: -125px; } }
              @media (max-width: 320px) {
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item {
                  left: -240px; } }
              .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item li {
                margin-right: 0;
                margin-bottom: 15px;
                line-height: 26px;
                font-weight: 500;
                color: #233d63; }
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item li:last-child {
                  margin-bottom: 0; }
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item li .theme-btn {
                  color: #fff;
                  font-size: 14px;
                  line-height: 42px;
                  padding: 0 15px; }
              .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item:after {
                top: -7px;
                content: "";
                position: absolute;
                background-color: #fff;
                right: 20px;
                width: 13px;
                height: 13px;
                -webkit-transform: rotate(45deg);
                -moz-transform: rotate(45deg);
                -ms-transform: rotate(45deg);
                -o-transform: rotate(45deg);
                transform: rotate(45deg);
                -webkit-box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2);
                -moz-box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2);
                box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2); }
                @media (max-width: 480px) {
                  .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item:after {
                    right: 120px; } }
                @media (max-width: 320px) {
                  .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item:after {
                    right: 10px; } }
            .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li:hover .dropdown-menu-item {
              opacity: 1;
              visibility: visible;
              -webkit-transform: scale(1);
              -moz-transform: scale(1);
              -ms-transform: scale(1);
              -o-transform: scale(1);
              transform: scale(1); }
      @media (max-width: 320px) {
        .header-menu-area .header-top .header-widget2 .header-right-info .social-info {
          display: none !important; } }
      @media (max-width: 320px) {
        .header-menu-area .header-top .header-widget2 .header-right-info.d-flex {
          flex-direction: row-reverse; } }
    @media (max-width: 320px) {
      .header-menu-area .header-top .header-widget2.d-flex {
        display: block !important; } }
    @media (max-width: 768px) {
      .header-menu-area .header-top .header-widget2.justify-content-end {
        -ms-flex-pack: center !important;
        justify-content: center !important; } }
  .header-menu-area .estage-menu-content {
    height: 100px; }
    @media (max-width: 425px) {
      .header-menu-area .estage-menu-content {
        height: auto;
        padding-top: 30px;
        padding-bottom: 30px; } }
    @media (max-width: 1199px) {
      .header-menu-area .estage-menu-content .col-lg-3 {
        -ms-flex: 0 0 30%;
        flex: 0 0 30%;
        max-width: 30%; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .header-menu-area .estage-menu-content .col-lg-3 {
        -ms-flex: 0 0 40%;
        flex: 0 0 40%;
        max-width: 40%; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .header-menu-area .estage-menu-content .col-lg-3 {
        -ms-flex: 0 0 85%;
        flex: 0 0 85%;
        max-width: 85%; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .header-menu-area .estage-menu-content .col-lg-3 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; } }
    @media (max-width: 1199px) {
      .header-menu-area .estage-menu-content .col-lg-9 {
        -ms-flex: 0 0 70%;
        flex: 0 0 70%;
        max-width: 70%; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .header-menu-area .estage-menu-content .col-lg-9 {
        -ms-flex: 0 0 60%;
        flex: 0 0 60%;
        max-width: 60%; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .header-menu-area .estage-menu-content .col-lg-9 {
        -ms-flex: 0 0 15%;
        flex: 0 0 15%;
        max-width: 15%; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .header-menu-area .estage-menu-content .col-lg-9 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; } }
    .header-menu-area .estage-menu-content .logo-box {
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center; }
      .header-menu-area .estage-menu-content .logo-box img {
        width: 150px; }
        @media (max-width: 320px) {
          .header-menu-area .estage-menu-content .logo-box img {
            width: 110px; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .header-menu-area .estage-menu-content .logo-box .logo {
          display: inline-block; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .header-menu-area .estage-menu-content .logo-box .logo {
          display: inline-block; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .header-menu-area .estage-menu-content .logo-box .logo {
          display: inline-block; } }
      .header-menu-area .estage-menu-content .logo-box .header-category {
        margin-left: auto;
        margin-right: 4px; }
        @media (max-width: 425px) {
          .header-menu-area .estage-menu-content .logo-box .header-category {
            margin-right: 0;
            margin-left: 40px; } }
        @media (max-width: 375px) {
          .header-menu-area .estage-menu-content .logo-box .header-category {
            margin-left: 30px; } }
        @media (max-width: 320px) {
          .header-menu-area .estage-menu-content .logo-box .header-category {
            margin-left: 15px; } }
        .header-menu-area .estage-menu-content .logo-box .header-category ul li {
          position: relative; }
          .header-menu-area .estage-menu-content .logo-box .header-category ul li a {
            font-size: 15px;
            color: #233d63;
            text-transform: uppercase;
            font-weight: 500;
            padding-bottom: 41px;
            -webkit-transition: all 0.3s;
            -moz-transition: all 0.3s;
            -ms-transition: all 0.3s;
            -o-transition: all 0.3s;
            transition: all 0.3s; }
            .header-menu-area .estage-menu-content .logo-box .header-category ul li a .fa-th {
              font-size: 14px; }
            .header-menu-area .estage-menu-content .logo-box .header-category ul li a:hover {
              color: #51be78; }
          .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item {
            position: absolute;
            left: 0;
            top: 58px;
            width: 320px;
            background-color: #fff;
            display: block;
            padding: 25px 0 25px 0;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px;
            border-radius: 4px;
            -webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            -moz-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            -ms-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            -o-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
            -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
            box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
            opacity: 0;
            visibility: hidden;
            -webkit-transform: scale(0.8);
            -moz-transform: scale(0.8);
            -ms-transform: scale(0.8);
            -o-transform: scale(0.8);
            transform: scale(0.8); }
            @media only screen and (min-width: 480px) and (max-width: 767px) {
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -210px; } }
            @media only screen and (min-width: 320px) and (max-width: 479px) {
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -210px; } }
            @media (max-width: 425px) {
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -150px; } }
            @media (max-width: 375px) {
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -165px; } }
            @media (max-width: 320px) {
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -130px;
                width: 300px; } }
            .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li {
              margin-bottom: 18px; }
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li:last-child {
                margin-bottom: 0; }
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li a {
                display: block;
                padding-right: 30px;
                padding-left: 30px;
                padding-bottom: 0; }
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li a .la-angle-right {
                  float: right;
                  padding-top: 3px;
                  -webkit-transition: all 0.3s;
                  -moz-transition: all 0.3s;
                  -ms-transition: all 0.3s;
                  -o-transition: all 0.3s;
                  transition: all 0.3s;
                  color: #7f8897; }
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li a:hover .la-angle-right {
                  color: #51be78; }
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu {
                position: absolute;
                top: -24px;
                left: 320px;
                width: 280px;
                background-color: #fff;
                padding: 25px 0 25px 0;
                -webkit-border-radius: 4px;
                -moz-border-radius: 4px;
                border-radius: 4px;
                -webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
                -moz-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
                -ms-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
                -o-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
                transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
                -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
                -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
                box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
                -webkit-transform: scale(0.8);
                -moz-transform: scale(0.8);
                -ms-transform: scale(0.8);
                -o-transform: scale(0.8);
                transform: scale(0.8);
                visibility: hidden;
                opacity: 0; }
                @media only screen and (min-width: 480px) and (max-width: 767px) {
                  .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu {
                    opacity: 1;
                    visibility: visible;
                    left: auto;
                    top: auto;
                    position: inherit;
                    width: 100%;
                    display: none;
                    -webkit-transform: scale(1);
                    -moz-transform: scale(1);
                    -ms-transform: scale(1);
                    -o-transform: scale(1);
                    transform: scale(1);
                    -webkit-transition: all 0s;
                    -moz-transition: all 0s;
                    -ms-transition: all 0s;
                    -o-transition: all 0s;
                    transition: all 0s;
                    -webkit-box-shadow: 0 0 0 0;
                    -moz-box-shadow: 0 0 0 0;
                    box-shadow: 0 0 0 0; } }
                @media only screen and (min-width: 320px) and (max-width: 479px) {
                  .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu {
                    left: auto;
                    top: auto;
                    position: inherit;
                    width: 100%;
                    display: none;
                    -webkit-transform: scale(1);
                    -moz-transform: scale(1);
                    -ms-transform: scale(1);
                    -o-transform: scale(1);
                    transform: scale(1);
                    -webkit-transition: all 0s;
                    -moz-transition: all 0s;
                    -ms-transition: all 0s;
                    -o-transition: all 0s;
                    transition: all 0s;
                    -webkit-box-shadow: 0 0 0 0;
                    -moz-box-shadow: 0 0 0 0;
                    box-shadow: 0 0 0 0; } }
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li {
                  margin-bottom: 18px; }
                  .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li:last-child {
                    margin-bottom: 0; }
                  .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li a {
                    color: #7f8897;
                    text-transform: capitalize;
                    position: relative;
                    display: inline-block;
                    padding-right: 0;
                    padding-left: 0;
                    margin-left: 30px; }
                    .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li a:after {
                      width: 0;
                      height: 2px;
                      position: absolute;
                      content: '';
                      bottom: -2px;
                      right: 0;
                      background-color: #51be78;
                      -webkit-transition: all 0.3s;
                      -moz-transition: all 0.3s;
                      -ms-transition: all 0.3s;
                      -o-transition: all 0.3s;
                      transition: all 0.3s; }
                    .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li a:hover {
                      color: #51be78; }
                      .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li a:hover:after {
                        width: 100%;
                        right: auto;
                        left: 0; }
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu.active {
                  display: block; }
              .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li:hover .sub-menu {
                opacity: 1;
                visibility: visible;
                -webkit-transform: scale(1);
                -moz-transform: scale(1);
                -ms-transform: scale(1);
                -o-transform: scale(1);
                transform: scale(1); }
              @media only screen and (min-width: 480px) and (max-width: 767px) {
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li.active a {
                  color: #51be78; } }
              @media only screen and (min-width: 320px) and (max-width: 479px) {
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li.active a {
                  color: #51be78; } }
              @media only screen and (min-width: 480px) and (max-width: 767px) {
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li.active a .la-angle-right {
                  -webkit-transform: rotate(-90deg);
                  -moz-transform: rotate(-90deg);
                  -ms-transform: rotate(-90deg);
                  -o-transform: rotate(-90deg);
                  transform: rotate(-90deg);
                  color: #51be78; } }
              @media only screen and (min-width: 320px) and (max-width: 479px) {
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li.active a .la-angle-right {
                  -webkit-transform: rotate(-90deg);
                  -moz-transform: rotate(-90deg);
                  -ms-transform: rotate(-90deg);
                  -o-transform: rotate(-90deg);
                  transform: rotate(-90deg);
                  color: #51be78; } }
            .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item:after {
              top: -7px;
              content: "";
              position: absolute;
              background-color: #fff;
              left: 30px;
              width: 13px;
              height: 13px;
              -webkit-transform: rotate(45deg);
              -moz-transform: rotate(45deg);
              -ms-transform: rotate(45deg);
              -o-transform: rotate(45deg);
              transform: rotate(45deg);
              -webkit-box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2);
              -moz-box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2);
              box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2); }
              @media only screen and (min-width: 480px) and (max-width: 767px) {
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item:after {
                  left: auto;
                  right: 30px; } }
              @media only screen and (min-width: 320px) and (max-width: 479px) {
                .header-menu-area .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item:after {
                  left: auto;
                  right: 30px; } }
          .header-menu-area .estage-menu-content .logo-box .header-category ul li:hover .dropdown-menu-item {
            opacity: 1;
            visibility: visible;
            -webkit-transform: scale(1);
            -moz-transform: scale(1);
            -ms-transform: scale(1);
            -o-transform: scale(1);
            transform: scale(1); }
    .header-menu-area .estage-menu-content .menu-wrapper {
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      -ms-flex-pack: end;
      justify-content: flex-end; }
      .header-menu-area .estage-menu-content .menu-wrapper .contact-form-action {
        width: 500px;
        margin-right: 35px; }
        @media (max-width: 1199px) {
          .header-menu-area .estage-menu-content .menu-wrapper .contact-form-action {
            width: 100%; } }
        @media only screen and (min-width: 768px) and (max-width: 991px) {
          .header-menu-area .estage-menu-content .menu-wrapper .contact-form-action {
            width: 380px; } }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .header-menu-area .estage-menu-content .menu-wrapper .contact-form-action {
            display: none; } }
        @media only screen and (min-width: 320px) and (max-width: 479px) {
          .header-menu-area .estage-menu-content .menu-wrapper .contact-form-action {
            display: none; } }
        .header-menu-area .estage-menu-content .menu-wrapper .contact-form-action form .form-group {
          margin: 0; }
          .header-menu-area .estage-menu-content .menu-wrapper .contact-form-action form .form-group .form-control {
            padding-left: 20px; }
      .header-menu-area .estage-menu-content .menu-wrapper .main-menu {
        margin-right: 35px; }
        @media (max-width: 1199px) {
          .header-menu-area .estage-menu-content .menu-wrapper .main-menu {
            display: none; } }
        .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul {
          display: -webkit-flex;
          display: -ms-flex;
          display: flex; }
          .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li {
            margin-right: 34px;
            text-transform: uppercase;
            font-weight: 500;
            position: relative; }
            @media (max-width: 1199px) {
              .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li {
                margin-right: 20px; } }
            .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li a {
              font-size: 15px;
              color: #233d63;
              -webkit-transition: all 0.3s;
              -moz-transition: all 0.3s;
              -ms-transition: all 0.3s;
              -o-transition: all 0.3s;
              transition: all 0.3s;
              position: relative;
              padding-bottom: 40px; }
              .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li a:after {
                width: 0;
                height: 2px;
                position: absolute;
                content: '';
                bottom: 36px;
                right: 0;
                background-color: #51be78;
                -webkit-transition: all 0.3s;
                -moz-transition: all 0.3s;
                -ms-transition: all 0.3s;
                -o-transition: all 0.3s;
                transition: all 0.3s; }
              .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li a:hover {
                color: #51be78; }
                .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li a:hover:after {
                  width: 100%;
                  right: auto;
                  left: 0; }
            .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li:last-child {
              margin-right: 0; }
            .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item {
              position: absolute;
              left: 0;
              top: 58px;
              width: 210px;
              background-color: #fff;
              display: block;
              padding: 25px 30px 25px 30px;
              -webkit-border-radius: 4px;
              -moz-border-radius: 4px;
              border-radius: 4px;
              -webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              -moz-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              -ms-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              -o-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
              -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
              -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
              box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
              opacity: 0;
              visibility: hidden;
              -webkit-transform: scale(0.8);
              -moz-transform: scale(0.8);
              -ms-transform: scale(0.8);
              -o-transform: scale(0.8);
              transform: scale(0.8); }
              .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item li {
                display: block;
                margin-right: 0;
                margin-bottom: 18px;
                text-transform: capitalize; }
                .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item li:last-child {
                  margin-bottom: 0; }
                .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item li a {
                  color: #7f8897;
                  display: inline-block;
                  position: relative;
                  padding-bottom: 0; }
                  .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item li a:after {
                    bottom: -2px; }
                  .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item li a:hover {
                    color: #51be78; }
              .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item:after {
                top: -7px;
                content: "";
                position: absolute;
                background-color: #fff;
                left: 30px;
                width: 13px;
                height: 13px;
                -webkit-transform: rotate(45deg);
                -moz-transform: rotate(45deg);
                -ms-transform: rotate(45deg);
                -o-transform: rotate(45deg);
                transform: rotate(45deg);
                -webkit-box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2);
                -moz-box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2);
                box-shadow: -2px -2px 10px -5px rgba(0, 0, 0, 0.2); }
            .header-menu-area .estage-menu-content .menu-wrapper .main-menu ul li:hover .dropdown-menu-item {
              -webkit-transform: scale(1);
              -moz-transform: scale(1);
              -ms-transform: scale(1);
              -o-transform: scale(1);
              transform: scale(1);
              opacity: 1;
              visibility: visible; }
      @media (max-width: 1199px) {
        .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button ul {
          display: none; } }
      .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button ul li .theme-btn {
        background-color: #42be6f;
        line-height: 52px; }
      .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open {
        width: 27px;
        cursor: pointer;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px;
        display: none;
        position: relative;
        z-index: 1; }
        @media (max-width: 1199px) {
          .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open {
            display: block; } }
        @media (max-width: 425px) {
          .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open {
            margin-top: -36px; } }
        @media (max-width: 320px) {
          .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open {
            margin-top: -28px; } }
        .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open .menu__bar {
          height: 2px;
          background-color: #233d63;
          display: block;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open .menu__bar:nth-child(1), .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open .menu__bar:nth-child(2) {
            margin-bottom: 5px; }
          .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open .menu__bar:nth-child(2) {
            margin-left: 5px; }
        .header-menu-area .estage-menu-content .menu-wrapper .logo-right-button .side-menu-open:hover .menu__bar:nth-child(2) {
          margin-left: 0;
          margin-right: 5px; }
  .header-menu-area .side-nav-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 320px;
    height: 100%;
    background-color: #233d63;
    overflow-x: hidden;
    z-index: 999;
    -webkit-transition: all 0.4s cubic-bezier(0.7, 0, 0.2, 1);
    -moz-transition: all 0.4s cubic-bezier(0.7, 0, 0.2, 1);
    -ms-transition: all 0.4s cubic-bezier(0.7, 0, 0.2, 1);
    -o-transition: all 0.4s cubic-bezier(0.7, 0, 0.2, 1);
    transition: all 0.4s cubic-bezier(0.7, 0, 0.2, 1);
    -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    -webkit-transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -o-transform: translateX(-100%);
    transform: translateX(-100%); }
    .header-menu-area .side-nav-container .humburger-menu .humburger-menu-lines {
      display: inline-block;
      text-align: right;
      width: 22px;
      height: 22px;
      cursor: pointer;
      position: absolute;
      top: 25px;
      right: 18px;
      opacity: .5; }
      .header-menu-area .side-nav-container .humburger-menu .humburger-menu-lines:before, .header-menu-area .side-nav-container .humburger-menu .humburger-menu-lines:after {
        position: absolute;
        content: '';
        height: 2px;
        width: 100%;
        top: 10px;
        left: 0;
        background-color: #fff;
        -webkit-transform: rotate(-43deg);
        -moz-transform: rotate(-43deg);
        -ms-transform: rotate(-43deg);
        -o-transform: rotate(-43deg);
        transform: rotate(-43deg);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .header-menu-area .side-nav-container .humburger-menu .humburger-menu-lines:after {
        -webkit-transform: rotate(43deg);
        -moz-transform: rotate(43deg);
        -ms-transform: rotate(43deg);
        -o-transform: rotate(43deg);
        transform: rotate(43deg); }
      .header-menu-area .side-nav-container .humburger-menu .humburger-menu-lines:hover:before, .header-menu-area .side-nav-container .humburger-menu .humburger-menu-lines:hover:after {
        -webkit-transform: rotate(0);
        -moz-transform: rotate(0);
        -ms-transform: rotate(0);
        -o-transform: rotate(0);
        transform: rotate(0); }
    .header-menu-area .side-nav-container .side-menu-wrap {
      margin-top: 100px; }
      .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item {
        position: relative;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item a {
          color: #fff;
          text-transform: uppercase;
          display: block;
          padding: 14px 20px;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          font-weight: 500; }
        .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .menu-plus-icon {
          position: absolute;
          top: 0;
          right: 0;
          width: 50px;
          height: 50px;
          line-height: 50px;
          cursor: pointer;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .menu-plus-icon:before, .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .menu-plus-icon:after {
            position: absolute;
            top: 24px;
            right: 20px;
            content: '';
            width: 11px;
            height: 2px;
            background-color: #fff;
            -webkit-transform: rotate(-90deg);
            -moz-transform: rotate(-90deg);
            -ms-transform: rotate(-90deg);
            -o-transform: rotate(-90deg);
            transform: rotate(-90deg);
            -webkit-transition: all 0.3s;
            -moz-transition: all 0.3s;
            -ms-transition: all 0.3s;
            -o-transition: all 0.3s;
            transition: all 0.3s; }
          .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .menu-plus-icon:after {
            -webkit-transform: rotate(0);
            -moz-transform: rotate(0);
            -ms-transform: rotate(0);
            -o-transform: rotate(0);
            transform: rotate(0); }
          .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .menu-plus-icon:hover {
            background-color: rgba(255, 255, 255, 0.1); }
        .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .side-sub-menu {
          display: none; }
          .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .side-sub-menu li {
            border-bottom: 1px solid rgba(255, 255, 255, 0.12); }
            .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .side-sub-menu li:first-child {
              border-top: 1px solid rgba(255, 255, 255, 0.12); }
            .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .side-sub-menu li a {
              padding-left: 30px;
              padding-top: 12px;
              padding-bottom: 12px;
              position: relative;
              text-transform: capitalize; }
              .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item .side-sub-menu li a:hover {
                color: #51be78; }
        .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item:after {
          position: absolute;
          content: '';
          bottom: 0;
          left: 0;
          width: 100%;
          height: 1px;
          background-color: rgba(255, 255, 255, 0.12); }
        .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item:hover > a {
          background-color: rgba(255, 255, 255, 0.12); }
        .header-menu-area .side-nav-container .side-menu-wrap .side-menu-ul .sidenav__item.active .menu-plus-icon:before {
          -webkit-transform: rotate(0deg);
          -moz-transform: rotate(0deg);
          -ms-transform: rotate(0deg);
          -o-transform: rotate(0deg);
          transform: rotate(0deg); }
    .header-menu-area .side-nav-container .side-btn-box {
      text-align: center;
      margin-top: 40px; }
    .header-menu-area .side-nav-container.active {
      -webkit-transform: translateX(0);
      -moz-transform: translateX(0);
      -ms-transform: translateX(0);
      -o-transform: translateX(0);
      transform: translateX(0); }
  .header-menu-area.header-fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    box-shadow: 0 0 40px rgba(82, 85, 90, 0.1); }
    .header-menu-area.header-fixed .estage-menu-content {
      height: 80px;
      -webkit-transition: all 0.5s;
      -moz-transition: all 0.5s;
      -ms-transition: all 0.5s;
      -o-transition: all 0.5s;
      transition: all 0.5s; }
      @media (max-width: 425px) {
        .header-menu-area.header-fixed .estage-menu-content {
          height: auto;
          padding-top: 25px;
          padding-bottom: 25px; } }
      .header-menu-area.header-fixed .estage-menu-content .logo-box .header-category ul li:hover .dropdown-menu-item {
        top: 50px; }
      .header-menu-area.header-fixed .estage-menu-content .menu-wrapper .main-menu ul li:hover .dropdown-menu-item {
        top: 50px; }

/*-===============================
    header-menu-area2
===============================-*/
.header-menu-area2 {
  padding-right: 0;
  padding-left: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background-color: transparent;
  border-bottom: 2px solid rgba(255, 255, 255, 0.1); }
  .header-menu-area2 .header-top {
    border-bottom: transparent;
    background-color: #fff; }
    .header-menu-area2 .header-top .header-widget2 .header-right-info ul.user-cart li .dropdown-menu-item li .theme-btn {
      -webkit-border-radius: 30px;
      -moz-border-radius: 30px;
      border-radius: 30px; }
  .header-menu-area2 .estage-menu-content .logo-box .header-category {
    margin-right: 0;
    margin-left: 60px; }
    .header-menu-area2 .estage-menu-content .logo-box .header-category ul li a {
      color: #fff;
      text-transform: capitalize; }
      .header-menu-area2 .estage-menu-content .logo-box .header-category ul li a .fa-th {
        margin-right: 2px; }
    .header-menu-area2 .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li a {
      color: #233d63; }
      .header-menu-area2 .estage-menu-content .logo-box .header-category ul li .dropdown-menu-item li a:hover {
        color: #51be78; }
  .header-menu-area2 .estage-menu-content .menu-wrapper .main-menu ul li {
    text-transform: capitalize; }
    .header-menu-area2 .estage-menu-content .menu-wrapper .main-menu ul li a {
      color: #fff; }
  .header-menu-area2 .estage-menu-content .menu-wrapper .logo-right-button .social-info li {
    margin-right: 5px; }
    .header-menu-area2 .estage-menu-content .menu-wrapper .logo-right-button .social-info li:last-child {
      margin-right: 0; }
    .header-menu-area2 .estage-menu-content .menu-wrapper .logo-right-button .social-info li a {
      color: #fff;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      display: block;
      width: 38px;
      height: 38px;
      line-height: 38px;
      text-align: center;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      background-color: rgba(255, 255, 255, 0.1); }
      .header-menu-area2 .estage-menu-content .menu-wrapper .logo-right-button .social-info li a:hover {
        color: #51be78;
        background-color: #fff; }
  .header-menu-area2.header-fixed {
    background-color: #233d63;
    border-bottom: none; }

/*-===============================
    slider-area
===============================-*/
.slider-area {
  position: relative; }
  .slider-area .single-slide-item {
    position: relative;
    background-position: center center;
    background-size: cover;
    color: #fff;
    padding-top: 250px;
    padding-bottom: 330px;
    z-index: 2; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .slider-area .single-slide-item {
        padding-top: 200px;
        padding-bottom: 300px; } }
    @media (max-width: 480px) {
      .slider-area .single-slide-item {
        padding-top: 140px;
        padding-bottom: 250px; } }
    .slider-area .single-slide-item .slide-item-table {
      display: table;
      width: 100%;
      height: 100%; }
      .slider-area .single-slide-item .slide-item-table .slide-item-tablecell {
        display: table-cell;
        vertical-align: middle; }
        @media (max-width: 1199px) {
          .slider-area .single-slide-item .slide-item-table .slide-item-tablecell .col-lg-9 {
            -ms-flex: 0 0 100%;
            flex: 0 0 100%;
            max-width: 100%; } }
    .slider-area .single-slide-item .slider-heading {
      position: relative;
      z-index: 2; }
      .slider-area .single-slide-item .slider-heading .slider__title {
        font-size: 90px;
        line-height: 100px;
        font-weight: 700;
        color: #fff;
        margin-bottom: 24px; }
        @media (max-width: 1199px) {
          .slider-area .single-slide-item .slider-heading .slider__title {
            font-size: 80px;
            line-height: 80px; } }
        @media only screen and (min-width: 768px) and (max-width: 991px) {
          .slider-area .single-slide-item .slider-heading .slider__title {
            font-size: 70px;
            line-height: 75px; } }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .slider-area .single-slide-item .slider-heading .slider__title {
            font-size: 60px;
            line-height: 65px; } }
        @media (max-width: 481px) {
          .slider-area .single-slide-item .slider-heading .slider__title {
            font-size: 45px;
            line-height: 50px; } }
      .slider-area .single-slide-item .slider-heading .slider__text {
        font-size: 18px;
        line-height: 29px;
        margin-bottom: 40px; }
        @media only screen and (min-width: 768px) and (max-width: 991px) {
          .slider-area .single-slide-item .slider-heading .slider__text br {
            display: none; } }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .slider-area .single-slide-item .slider-heading .slider__text br {
            display: none; } }
        @media only screen and (min-width: 320px) and (max-width: 479px) {
          .slider-area .single-slide-item .slider-heading .slider__text br {
            display: none; } }
      .slider-area .single-slide-item .slider-heading .slider-promo-btn {
        display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        -ms-flex-align: center;
        align-items: center; }
        @media (max-width: 425px) {
          .slider-area .single-slide-item .slider-heading .slider-promo-btn {
            display: block;
            text-align: center; } }
        .slider-area .single-slide-item .slider-heading .slider-promo-btn .video-play-btn {
          margin-left: 20px;
          color: rgba(255, 255, 255, 0.7);
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          font-weight: 500;
          display: -webkit-flex;
          display: -ms-flex;
          display: flex;
          -ms-flex-align: center;
          align-items: center; }
          @media (max-width: 425px) {
            .slider-area .single-slide-item .slider-heading .slider-promo-btn .video-play-btn {
              display: block;
              text-align: center;
              margin-left: 0;
              margin-top: 20px; } }
          .slider-area .single-slide-item .slider-heading .slider-promo-btn .video-play-btn span {
            width: 43px;
            height: 43px;
            line-height: 41px;
            text-align: center;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border-radius: 50%;
            border: 1px solid rgba(255, 255, 255, 0.7);
            margin-left: 10px;
            font-size: 22px; }
          .slider-area .single-slide-item .slider-heading .slider-promo-btn .video-play-btn:hover {
            color: #fff; }
            .slider-area .single-slide-item .slider-heading .slider-promo-btn .video-play-btn:hover span {
              background-color: #fff;
              border-color: #fff;
              color: #51be78; }
    .slider-area .single-slide-item:after {
      position: absolute;
      left: 0;
      top: 0;
      height: 100%;
      width: 100%;
      background-color: #233d63;
      opacity: .90;
      content: "";
      z-index: -1; }
    .slider-area .single-slide-item:before {
      position: absolute;
      content: '';
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: url("../images/shape.png");
      background-size: cover;
      background-position: center;
      z-index: 1;
      opacity: 0.1; }
  .slider-area .slide-bg1 {
    background-image: url("../images/slider-img1.jpg"); }
  .slider-area .slide-bg2 {
    background-image: url("../images/slider-img2.jpg"); }
  .slider-area .slide-bg3 {
    background-image: url("../images/slider-img3.jpg"); }
    .slider-area .slide-bg3 .slider-heading .slider-promo-btn .video-play-btn {
      margin-left: 0;
      margin-right: 20px; }
      @media (max-width: 425px) {
        .slider-area .slide-bg3 .slider-heading .slider-promo-btn .video-play-btn {
          margin-right: 0;
          margin-top: 0;
          margin-bottom: 20px; } }
      .slider-area .slide-bg3 .slider-heading .slider-promo-btn .video-play-btn span {
        margin-right: 10px;
        margin-left: 0; }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .slider-area .owl-nav {
      display: none; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .slider-area .owl-nav {
      display: none; } }
  .slider-area .owl-nav div {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    font-size: 18px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0;
    visibility: hidden; }
    .slider-area .owl-nav div:hover {
      background-color: #51be78;
      color: #fff; }
    .slider-area .owl-nav div.owl-prev {
      left: 20px; }
    .slider-area .owl-nav div.owl-next {
      left: auto;
      right: 20px; }
  .slider-area .owl-dots {
    position: absolute;
    bottom: 140px;
    width: 100%;
    text-align: center; }
    .slider-area .owl-dots div {
      width: 14px;
      height: 14px;
      line-height: 14px;
      border: 2px solid #fff;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      display: inline-block;
      margin: 0 3px;
      -webkit-transition: all 0.3s ease-in;
      -moz-transition: all 0.3s ease-in;
      -ms-transition: all 0.3s ease-in;
      -o-transition: all 0.3s ease-in;
      transition: all 0.3s ease-in;
      position: relative; }
      .slider-area .owl-dots div.active, .slider-area .owl-dots div:hover {
        background-color: #51be78;
        border-color: #51be78; }
  .slider-area:hover .owl-nav div {
    opacity: 1;
    visibility: visible; }
    .slider-area:hover .owl-nav div.owl-prev {
      left: 80px; }
      @media (max-width: 1280px) {
        .slider-area:hover .owl-nav div.owl-prev {
          left: 20px; } }
    .slider-area:hover .owl-nav div.owl-next {
      right: 80px; }
      @media (max-width: 1280px) {
        .slider-area:hover .owl-nav div.owl-next {
          right: 20px; } }

/*-===============================
    slider-area 2
===============================-*/
.slider-area2 .single-slide-item {
  padding-top: 180px;
  padding-bottom: 0; }
  @media (max-width: 320px) {
    .slider-area2 .single-slide-item {
      padding-top: 150px; } }
  @media (max-width: 1199px) {
    .slider-area2 .single-slide-item .col-lg-6 {
      -ms-flex: 0 0 63%;
      flex: 0 0 63%;
      max-width: 63%; } }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .slider-area2 .single-slide-item .col-lg-6 {
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .slider-area2 .single-slide-item .col-lg-6 {
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .slider-area2 .single-slide-item .col-lg-6 {
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%; } }
  .slider-area2 .single-slide-item #perticles-js-2 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .slider-area2 .single-slide-item .slider-heading {
      text-align: center; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .slider-area2 .single-slide-item .slider-heading {
      text-align: center; } }
  .slider-area2 .single-slide-item .slider-heading .slider__title {
    font-size: 70px;
    line-height: 75px; }
    @media (max-width: 575px) {
      .slider-area2 .single-slide-item .slider-heading .slider__title {
        font-size: 60px;
        line-height: 65px; } }
    @media (max-width: 320px) {
      .slider-area2 .single-slide-item .slider-heading .slider__title {
        font-size: 45px;
        line-height: 50px; } }
  .slider-area2 .single-slide-item .slider-heading .contact-form-action {
    padding-right: 40px; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .slider-area2 .single-slide-item .slider-heading .contact-form-action {
        padding-right: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .slider-area2 .single-slide-item .slider-heading .contact-form-action {
        padding-right: 0; } }
    .slider-area2 .single-slide-item .slider-heading .contact-form-action form .form-group .form-control {
      padding-left: 20px; }
    .slider-area2 .single-slide-item .slider-heading .contact-form-action form .form-group .search-icon {
      color: #233d63; }
  .slider-area2 .single-slide-item:before {
    display: none; }
  .slider-area2 .single-slide-item:after {
    opacity: 0.7; }
  .slider-area2 .single-slide-item .how-we-work-content {
    background: #429b85;
    background: -moz-linear-gradient(-45deg, #429b85 0%, #5f7b8c 100%);
    background: -webkit-linear-gradient(-45deg, #429b85 0%, #5f7b8c 100%);
    background: linear-gradient(135deg, #429b85 0%, #5f7b8c 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#429b85', endColorstr='#5f7b8c',GradientType=1 );
    margin-top: 150px;
    padding: 30px 0;
    position: relative;
    overflow: hidden; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .slider-area2 .single-slide-item .how-we-work-content {
        padding-bottom: 0; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .slider-area2 .single-slide-item .how-we-work-content {
        padding-bottom: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .slider-area2 .single-slide-item .how-we-work-content {
        padding-bottom: 0; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .col-lg-4 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%; } }
    .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item {
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center; }
      @media (max-width: 1199px) {
        .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item {
          display: block;
          text-align: center; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item {
          margin-bottom: 30px; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item {
          margin-bottom: 30px; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item {
          margin-bottom: 30px; } }
      .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item .la {
        font-size: 30px;
        width: 55px;
        height: 55px;
        line-height: 55px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        text-align: center;
        background-color: rgba(255, 255, 255, 0.1);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item .how-work__text {
        margin-left: 14px; }
        @media (max-width: 1199px) {
          .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item .how-work__text {
            margin-left: 0;
            margin-top: 20px; } }
        .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item .how-work__text .hww__sub-title {
          font-size: 22px;
          color: #fff;
          font-weight: 600;
          margin-bottom: 2px; }
      .slider-area2 .single-slide-item .how-we-work-content .how-we-work-wrap .how-we-work-item:hover .la {
        background-color: #fff;
        color: #51be78; }
    .slider-area2 .single-slide-item .how-we-work-content .hw-circle {
      width: 50px;
      height: 50px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      position: absolute;
      border: 8px solid #fff;
      opacity: 0.1; }
      .slider-area2 .single-slide-item .how-we-work-content .hw-circle:nth-child(1) {
        top: -20px;
        left: 30px; }
      .slider-area2 .single-slide-item .how-we-work-content .hw-circle:nth-child(2) {
        top: 73%;
        left: 50%; }
      .slider-area2 .single-slide-item .how-we-work-content .hw-circle:nth-child(3) {
        top: 5px;
        right: 10%; }

.slider-area2 .slide-bg1 {
  background-image: url("../images/slider-img4.jpg"); }

/*====================================================
    about-breadcrumb
 ====================================================*/
.about-breadcrumb {
  background-color: #F7FAFD;
  position: relative;
  padding-top: 167px;
  padding-bottom: 167px;
  z-index: 2;
  color: #fff;
  background-image: url("../images/about-breadcrumb.jpg");
  background-size: cover;
  background-position: center; }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .about-breadcrumb {
      padding-top: 140px;
      padding-bottom: 140px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .about-breadcrumb {
      padding-top: 140px;
      padding-bottom: 140px; } }
  .about-breadcrumb .breadcrumb-content .breadcrumb__meta {
    display: inline-block;
    text-transform: uppercase;
    font-size: 14px;
    color: #fff;
    background-color: rgba(255, 255, 255, 0.1);
    padding: 5px 10px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    letter-spacing: 0.6px;
    margin-bottom: 5px; }
  .about-breadcrumb .breadcrumb-content .breadcrumb__title {
    color: #fff;
    font-size: 60px;
    line-height: 75px;
    font-weight: 600; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .about-breadcrumb .breadcrumb-content .breadcrumb__title {
        font-size: 50px;
        line-height: 65px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .about-breadcrumb .breadcrumb-content .breadcrumb__title {
        font-size: 50px;
        line-height: 60px; } }
    @media (max-width: 425px) {
      .about-breadcrumb .breadcrumb-content .breadcrumb__title br {
        display: none; } }
  .about-breadcrumb .breadcrumb-content .breadcrumb__btn {
    margin-top: 48px;
    display: inline-block; }
    .about-breadcrumb .breadcrumb-content .breadcrumb__btn .video-play-btn {
      color: #fff;
      font-size: 20px;
      font-weight: 500;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center; }
      .about-breadcrumb .breadcrumb-content .breadcrumb__btn .video-play-btn:hover {
        color: #51be78; }
        .about-breadcrumb .breadcrumb-content .breadcrumb__btn .video-play-btn:hover span {
          color: #51be78; }
      .about-breadcrumb .breadcrumb-content .breadcrumb__btn .video-play-btn span {
        position: relative;
        display: inline-block;
        width: 70px;
        height: 70px;
        font-size: 28px;
        text-align: center;
        line-height: 70px;
        color: #233d63;
        margin-right: 20px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: #fff;
        z-index: 1;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .about-breadcrumb .breadcrumb-content .breadcrumb__btn .video-play-btn span:before, .about-breadcrumb .breadcrumb-content .breadcrumb__btn .video-play-btn span:after {
          position: absolute;
          content: '';
          top: -20px;
          left: -20px;
          bottom: -20px;
          right: -20px;
          background-color: rgba(255, 255, 255, 0.2);
          -webkit-border-radius: 50%;
          -moz-border-radius: 50%;
          border-radius: 50%;
          -webkit-animation: play-button-pulse 1.8s linear infinite;
          -moz-animation: play-button-pulse 1.8s linear infinite;
          animation: play-button-pulse 1.8s linear infinite;
          opacity: 0;
          z-index: -1; }
        .about-breadcrumb .breadcrumb-content .breadcrumb__btn .video-play-btn span:after {
          -webkit-animation-delay: .6s;
          -moz-animation-delay: .6s;
          animation-delay: .6s; }
  .about-breadcrumb:before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #233d63;
    opacity: 0.8;
    z-index: -1; }

/*============== play-button-pulse ==============*/
@-webkit-keyframes play-button-pulse {
  0% {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0; } }

@-moz-keyframes play-button-pulse {
  0% {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0; } }

@-ms-keyframes play-button-pulse {
  0% {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0; } }

@-o-keyframes play-button-pulse {
  0% {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0; } }

@keyframes play-button-pulse {
  0% {
    -webkit-transform: scale(0.5);
    -moz-transform: scale(0.5);
    -ms-transform: scale(0.5);
    -o-transform: scale(0.5);
    transform: scale(0.5);
    opacity: 0; }
  50% {
    opacity: 1; }
  100% {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    opacity: 0; } }

/*====================================================
    breadcrumb-area
 ====================================================*/
.breadcrumb-area {
  background-color: #F7FAFD;
  height: 450px;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  text-align: center;
  z-index: 2;
  color: #fff;
  background-image: url("../images/breadcrumb-bg.jpg");
  background-size: cover;
  background-position: center; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .breadcrumb-area {
      height: 300px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .breadcrumb-area {
      height: 300px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .breadcrumb-area {
      height: 300px; } }
  @media (max-width: 375px) {
    .breadcrumb-area {
      height: 220px; } }
  .breadcrumb-area .breadcrumb-content {
    position: relative;
    z-index: 3; }
    .breadcrumb-area .breadcrumb-content .breadcrumb__title {
      font-size: 70px;
      text-transform: capitalize;
      font-weight: 700;
      color: #fff; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .breadcrumb-area .breadcrumb-content .breadcrumb__title {
          font-size: 50px; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .breadcrumb-area .breadcrumb-content .breadcrumb__title {
          font-size: 50px; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .breadcrumb-area .breadcrumb-content .breadcrumb__title {
          font-size: 40px; } }
    .breadcrumb-area .breadcrumb-content .breadcrumb__list {
      margin-top: 8px; }
      .breadcrumb-area .breadcrumb-content .breadcrumb__list li {
        display: inline-block;
        text-transform: capitalize;
        color: #F7FAFD;
        font-size: 16px;
        font-weight: 500;
        position: relative;
        padding-right: 22px; }
        .breadcrumb-area .breadcrumb-content .breadcrumb__list li:last-child {
          padding-right: 0; }
        .breadcrumb-area .breadcrumb-content .breadcrumb__list li a {
          color: #F7FAFD;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .breadcrumb-area .breadcrumb-content .breadcrumb__list li a:hover {
            color: #51be78; }
        .breadcrumb-area .breadcrumb-content .breadcrumb__list li.active__list-item:after {
          position: absolute;
          content: '.';
          top: -6px;
          right: 0;
          padding: 0 6px;
          font-size: 20px; }
    .breadcrumb-area .breadcrumb-content .text-outline {
      -webkit-text-stroke-width: 1px;
      -webkit-text-stroke-color: rgba(255, 255, 255, 0.1);
      -ms-text-stroke-color: rgba(255, 255, 255, 0.1);
      -o-text-stroke-color: rgba(255, 255, 255, 0.1);
      font-size: 140px;
      color: transparent;
      position: absolute;
      letter-spacing: -0.02em;
      bottom: -115px;
      left: 0;
      right: 0;
      z-index: -1;
      text-transform: capitalize;
      font-weight: 600; }
      @media (max-width: 1199px) {
        .breadcrumb-area .breadcrumb-content .text-outline {
          display: none; } }
  .breadcrumb-area:before {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #233d63;
    opacity: 0.9;
    z-index: -1; }

/*====================================================
    breadcrumb-area 2
 ====================================================*/
.breadcrumb-area2 {
  text-align: left; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .breadcrumb-area2 {
      height: 450px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .breadcrumb-area2 {
      height: 450px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .breadcrumb-area2 {
      height: 450px; } }
  .breadcrumb-area2 .breadcrumb-content {
    padding-right: 400px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .breadcrumb-area2 .breadcrumb-content {
        padding-right: 0; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .breadcrumb-area2 .breadcrumb-content {
        padding-right: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .breadcrumb-area2 .breadcrumb-content {
        padding-right: 0; } }
    .breadcrumb-area2 .breadcrumb-content .breadcrumb__meta {
      margin-bottom: 5px; }
      .breadcrumb-area2 .breadcrumb-content .breadcrumb__meta .seller-badge {
        background-color: #51be78;
        color: #fff;
        text-transform: uppercase;
        font-weight: 600;
        display: inline-block;
        padding: 4px 10px 4px 12px;
        -webkit-border-radius: 4px 4px 0 4px;
        -moz-border-radius: 4px 4px 0 4px;
        border-radius: 4px 4px 0 4px;
        font-size: 12px;
        position: relative; }
        .breadcrumb-area2 .breadcrumb-content .breadcrumb__meta .seller-badge:after {
          content: "";
          position: absolute;
          display: block;
          width: 100%;
          height: 100%;
          top: 0;
          left: 6px;
          z-index: -1;
          background-color: #51be78;
          -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
          -webkit-transform: skew(12deg, 0deg);
          -moz-transform: skew(12deg, 0deg);
          -ms-transform: skew(12deg, 0deg);
          -o-transform: skew(12deg, 0deg);
          transform: skew(12deg, 0deg);
          -webkit-border-radius: 4px 4px 0 4px;
          -moz-border-radius: 4px 4px 0 4px;
          border-radius: 4px 4px 0 4px; }
    .breadcrumb-area2 .breadcrumb-content .breadcrumb__title {
      font-size: 50px;
      text-transform: inherit;
      line-height: 58px; }
      @media (max-width: 575px) {
        .breadcrumb-area2 .breadcrumb-content .breadcrumb__title {
          font-size: 40px;
          line-height: 50px; } }
    .breadcrumb-area2 .breadcrumb-content .breadcrumb__list {
      margin-top: 20px; }
      .breadcrumb-area2 .breadcrumb-content .breadcrumb__list li {
        text-transform: inherit;
        padding-right: 10px;
        padding-bottom: 5px; }
        .breadcrumb-area2 .breadcrumb-content .breadcrumb__list li:last-child {
          padding-bottom: 0; }
        .breadcrumb-area2 .breadcrumb-content .breadcrumb__list li i.la {
          color: #F68A03; }
        .breadcrumb-area2 .breadcrumb-content .breadcrumb__list li i.la-globe {
          color: #fff; }

/*====================================================
    instructor-breadcrumb
 ====================================================*/
.instructor-breadcrumb {
  text-align: left; }
  .instructor-breadcrumb .breadcrumb-content .breadcrumb__title {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -ms-flex-align: center;
    align-items: center; }
    .instructor-breadcrumb .breadcrumb-content .breadcrumb__title .la {
      font-size: 28px;
      color: #51be78;
      margin-left: 10px; }
  .instructor-breadcrumb .breadcrumb-content .breadcrumb__list {
    margin-top: 15px; }
    .instructor-breadcrumb .breadcrumb-content .breadcrumb__list li {
      font-size: 20px; }

/*====================================================
    ERROR AREA
 ====================================================*/
.error-area {
  padding-top: 120px;
  padding-bottom: 120px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .error-area {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .error-area {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .error-area {
      padding-bottom: 120px; } }
  .error-area .error-content img {
    width: 100%; }
  .error-area .error-content .error__title {
    font-size: 45px;
    font-weight: 600;
    margin-top: 33px;
    margin-bottom: 20px; }
  .error-area .error-content .error__text {
    font-size: 18px;
    line-height: 28px;
    margin-bottom: 35px; }

/*====================================================
    COURSE DETAIL AREA
 ====================================================*/
@media only screen and (min-width: 480px) and (max-width: 767px) {
  .course-detail {
    padding-bottom: 120px; } }

@media only screen and (min-width: 320px) and (max-width: 479px) {
  .course-detail {
    padding-bottom: 120px; } }

.course-detail .course-item-wrap .course-detail__title {
  font-weight: 600;
  font-size: 26px;
  margin-bottom: 25px; }

.course-detail .what-you-get {
  background-color: #F7FAFD;
  border: 1px solid rgba(127, 136, 151, 0.1);
  padding: 25px 30px 15px 30px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  margin-top: 100px;
  margin-bottom: 53px; }
  .course-detail .what-you-get .what-you-get__items {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .course-detail .what-you-get .what-you-get__items {
        display: block !important; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .course-detail .what-you-get .what-you-get__items {
        display: block !important; } }
    .course-detail .what-you-get .what-you-get__items .what-you-get__item {
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center;
      margin-bottom: 15px;
      width: 45%; }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .course-detail .what-you-get .what-you-get__items .what-you-get__item {
          display: block !important;
          width: 100%; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .course-detail .what-you-get .what-you-get__items .what-you-get__item {
          display: block !important;
          width: 100%; } }
      .course-detail .what-you-get .what-you-get__items .what-you-get__item .what-you-get__icon {
        align-self: flex-start;
        margin-top: 3px;
        margin-right: 10px;
        color: #F68A03;
        font-size: 18px; }

.course-detail .requirement-wrap {
  margin-bottom: 51px; }
  .course-detail .requirement-wrap .requirements__list .requirements__item {
    margin-bottom: 10px; }
    .course-detail .requirement-wrap .requirements__list .requirements__item:last-child {
      margin-bottom: 0; }
    .course-detail .requirement-wrap .requirements__list .requirements__item .requirements__icon {
      color: #233d63;
      margin-right: 2px; }

.course-detail .description-wrap {
  margin-bottom: 46px; }
  .course-detail .description-wrap .description__text {
    line-height: 28px;
    margin-bottom: 15px; }

.course-detail .audience-wrap .requirements__list .requirements__item .requirements__icon {
  font-size: 14px; }

.course-detail .curriculum-wrap {
  margin-bottom: 50px; }
  .course-detail .curriculum-wrap .curriculum-header {
    margin-bottom: 30px; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .course-detail .curriculum-wrap .curriculum-header {
        display: block !important; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .course-detail .curriculum-wrap .curriculum-header {
        display: block !important; } }
    .course-detail .curriculum-wrap .curriculum-header .course-detail__title {
      margin-bottom: 0; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .course-detail .curriculum-wrap .curriculum-header .curriculum-header-right {
        margin-top: 8px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .course-detail .curriculum-wrap .curriculum-header .curriculum-header-right {
        margin-top: 8px; } }
    .course-detail .curriculum-wrap .curriculum-header .curriculum-header-right span {
      margin-right: 10px; }
      .course-detail .curriculum-wrap .curriculum-header .curriculum-header-right span:last-child {
        margin-right: 0; }
      .course-detail .curriculum-wrap .curriculum-header .curriculum-header-right span strong {
        color: #233d63; }
  .course-detail .curriculum-wrap .curriculum-content .course-accordion .card {
    margin-bottom: 4px;
    border-color: rgba(127, 136, 151, 0.3);
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px; }
    .course-detail .curriculum-wrap .curriculum-content .course-accordion .card:first-of-type {
      border-bottom: 1px solid rgba(127, 136, 151, 0.3);
      -webkit-border-radius: 2px;
      -moz-border-radius: 2px;
      border-radius: 2px; }
    .course-detail .curriculum-wrap .curriculum-content .course-accordion .card:not(:first-of-type):not(:last-of-type) {
      border-bottom: 1px solid rgba(127, 136, 151, 0.3); }
    .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-header {
      padding: 0;
      text-align: left;
      background-color: #F7FAFD;
      border-bottom-color: rgba(127, 136, 151, 0.3); }
      .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-header .btn-link {
        display: block;
        width: 100%;
        text-align: left;
        -webkit-border-radius: 0;
        -moz-border-radius: 0;
        border-radius: 0;
        padding: 10px 20px 10px 50px;
        border: none;
        color: #233d63;
        text-decoration: none;
        font-size: 18px;
        position: relative;
        font-weight: 500; }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-header .btn-link i.la {
          display: none;
          position: absolute;
          left: 20px;
          top: 50%;
          -webkit-transform: translateY(-50%);
          -moz-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          -o-transform: translateY(-50%);
          transform: translateY(-50%);
          color: #7f8897; }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-header .btn-link .btn-text {
          float: right;
          color: #7f8897;
          font-size: 16px; }
      .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-header .btn-link[aria-expanded=true] i.la.la-angle-up {
        display: block; }
      .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-header .btn-link[aria-expanded=false] i.la.la-angle-down {
        display: block; }
    .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body {
      padding: 0; }
      .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item {
        position: relative;
        border-bottom: 1px solid rgba(127, 136, 151, 0.2);
        padding: 10px 20px 10px 50px; }
        @media (max-width: 375px) {
          .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item {
            padding-left: 20px; } }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item:last-child {
          border-bottom: 0; }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .course-play__icon {
          margin-right: 5px; }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .course-duration {
          position: absolute;
          right: 20px;
          top: 50%;
          -webkit-transform: translateY(-50%);
          -moz-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          -o-transform: translateY(-50%);
          transform: translateY(-50%);
          color: #51be78; }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .preview-link {
          background-color: transparent;
          outline: none;
          border: none;
          color: #51be78;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .preview-link:hover {
            color: #233d63; }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .modal .modal-title {
          line-height: 26px; }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .modal .modal-dialog {
          max-width: 650px; }
          @media only screen and (min-width: 480px) and (max-width: 767px) {
            .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .modal .modal-dialog {
              max-width: 500px; } }
          @media only screen and (min-width: 320px) and (max-width: 479px) {
            .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .modal .modal-dialog {
              max-width: 500px; } }
          @media (max-width: 575px) {
            .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .modal .modal-dialog {
              max-width: 100%; } }
        .course-detail .curriculum-wrap .curriculum-content .course-accordion .card .card-body .card-list .card-list-item .cart-disable__text .cart-question__text {
          float: right; }

.course-detail .view-more-courses {
  margin-bottom: 56px; }
  .course-detail .view-more-courses .owl-dots {
    text-align: center; }
    .course-detail .view-more-courses .owl-dots div {
      width: 14px;
      height: 14px;
      line-height: 14px;
      background-color: rgba(127, 136, 151, 0.4);
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      display: inline-block;
      margin: 0 2px;
      position: relative;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      -webkit-transform: scale(0.7);
      -moz-transform: scale(0.7);
      -ms-transform: scale(0.7);
      -o-transform: scale(0.7);
      transform: scale(0.7); }
      .course-detail .view-more-courses .owl-dots div.active, .course-detail .view-more-courses .owl-dots div:hover {
        background-color: #51be78;
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1); }

.course-detail .instructor-wrap {
  padding-top: 56px;
  border-top: 1px solid rgba(127, 136, 151, 0.2);
  margin-bottom: 60px; }
  .course-detail .instructor-wrap .instructor-content .instructor-img {
    margin-right: 40px;
    width: 270px; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .course-detail .instructor-wrap .instructor-content .instructor-img {
        width: 100%;
        margin-right: 0;
        margin-bottom: 40px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .course-detail .instructor-wrap .instructor-content .instructor-img {
        width: 100%;
        margin-right: 0;
        margin-bottom: 40px; } }
    .course-detail .instructor-wrap .instructor-content .instructor-img .instructor__avatar {
      margin-bottom: 15px;
      display: inline-block; }
      .course-detail .instructor-wrap .instructor-content .instructor-img .instructor__avatar img {
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        width: 108px;
        height: 108px; }
    .course-detail .instructor-wrap .instructor-content .instructor-img .instructor__stats li {
      display: block;
      margin-bottom: 6px; }
      .course-detail .instructor-wrap .instructor-content .instructor-img .instructor__stats li .la {
        font-size: 18px;
        margin-right: 3px; }
      .course-detail .instructor-wrap .instructor-content .instructor-img .instructor__stats li:last-child {
        margin-bottom: 0; }
      .course-detail .instructor-wrap .instructor-content .instructor-img .instructor__stats li a {
        color: #233d63;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .course-detail .instructor-wrap .instructor-content .instructor-img .instructor__stats li a:hover {
          color: #51be78; }
  .course-detail .instructor-wrap .instructor-content .instructor-details {
    width: 100%; }
    .course-detail .instructor-wrap .instructor-content .instructor-details .instructor-titles .instructor__title {
      font-size: 24px;
      font-weight: 600; }
      .course-detail .instructor-wrap .instructor-content .instructor-details .instructor-titles .instructor__title a {
        color: #233d63;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .course-detail .instructor-wrap .instructor-content .instructor-details .instructor-titles .instructor__title a:hover {
          color: #51be78; }
      .course-detail .instructor-wrap .instructor-content .instructor-details .instructor-titles .instructor__title .Instructor__title-icon {
        color: #51be78;
        font-size: 22px; }
    .course-detail .instructor-wrap .instructor-content .instructor-details .instructor-titles .instructor__subtitle {
      font-weight: 500;
      margin-bottom: 5px; }
    .course-detail .instructor-wrap .instructor-content .instructor-details .instructor-titles .instructor__meta {
      color: #233d63; }
    .course-detail .instructor-wrap .instructor-content .instructor-details .instructor-desc {
      margin-top: 10px; }
      .course-detail .instructor-wrap .instructor-content .instructor-details .instructor-desc .instructor__text {
        line-height: 28px; }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .course-detail .instructor-wrap .instructor-content.d-flex {
      display: block !important; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .course-detail .instructor-wrap .instructor-content.d-flex {
      display: block !important; } }

.course-detail .review-wrap .review-content {
  margin-top: 40px; }
  .course-detail .review-wrap .review-content .review-rating-summary .review-rating-summary-inner .stats-average__count .stats-average__count-count {
    color: #233d63;
    font-size: 70px;
    font-weight: 600; }
  .course-detail .review-wrap .review-content .review-rating-summary .review-rating-summary-inner .stats-average__rating {
    margin-left: 10px; }
    .course-detail .review-wrap .review-content .review-rating-summary .review-rating-summary-inner .stats-average__rating ul {
      margin-right: 5px; }
      .course-detail .review-wrap .review-content .review-rating-summary .review-rating-summary-inner .stats-average__rating ul li .la {
        color: #F68A03;
        font-size: 20px; }
  .course-detail .review-wrap .review-content .review-rating-summary .course-rating-text {
    text-align: center;
    margin-top: 5px; }
    @media (max-width: 1199px) {
      .course-detail .review-wrap .review-content .review-rating-summary .course-rating-text {
        text-align: left;
        margin-bottom: 30px; } }
    .course-detail .review-wrap .review-content .review-rating-summary .course-rating-text .course-rating-text__text {
      margin-left: 60px; }
      @media (max-width: 1199px) {
        .course-detail .review-wrap .review-content .review-rating-summary .course-rating-text .course-rating-text__text {
          margin-left: 0; } }
  .course-detail .review-wrap .review-content .review-rating-widget {
    margin-left: 50px;
    width: 100%; }
    @media (max-width: 1199px) {
      .course-detail .review-wrap .review-content .review-rating-widget {
        margin-left: 0; } }
    .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items {
      margin-bottom: 10px; }
      @media (max-width: 375px) {
        .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items {
          margin-bottom: 15px; } }
      .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items:last-child {
        margin-bottom: 0; }
      .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center; }
        @media (max-width: 375px) {
          .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item {
            display: block !important; } }
        .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-text {
          text-transform: uppercase;
          font-weight: 500;
          font-size: 15px;
          width: 75px; }
          @media (max-width: 375px) {
            .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-text {
              width: 100%;
              margin-bottom: 5px; } }
        .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill {
          width: 310px;
          height: 20px;
          background-color: rgba(127, 136, 151, 0.1);
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          margin-right: 15px; }
          @media (max-width: 480px) {
            .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill {
              width: 290px; } }
          @media (max-width: 425px) {
            .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill {
              width: 260px; } }
          @media (max-width: 375px) {
            .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill {
              width: 100%;
              margin-right: 0;
              margin-bottom: 5px; } }
          .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill .review-rating-rate__item-fill__fill {
            background-color: #F68A03;
            -webkit-border-radius: 4px;
            -moz-border-radius: 4px;
            border-radius: 4px;
            display: block;
            width: 77%;
            height: 100%; }
          .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill .rating-fill-width2 {
            width: 54%; }
          .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill .rating-fill-width3 {
            width: 14%; }
          .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill .rating-fill-width4 {
            width: 5%; }
          .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-fill .rating-fill-width5 {
            width: 2%; }
        .course-detail .review-wrap .review-content .review-rating-widget .review-rating-rate ul .review-rating-rate__items .review-rating-inner__item .review-rating-rate__item-percent-text {
          opacity: 0.8; }

@media (max-width: 1199px) {
  .course-detail .review-wrap .review-content.d-flex {
    display: block !important; } }

.course-detail .review-wrap .comments-wrapper {
  margin-top: 52px; }

.course-detail .view-more-courses2 {
  margin-top: 60px; }
  .course-detail .view-more-courses2 .view-more-carousel {
    padding-top: 30px;
    border-top: 1px solid rgba(127, 136, 151, 0.2); }
  .course-detail .view-more-courses2 .more-course-btn {
    margin-top: 50px; }
    .course-detail .view-more-courses2 .more-course-btn .report-modal {
      margin-top: -6px; }
      .course-detail .view-more-courses2 .more-course-btn .report-modal .report-btn {
        border: 1px solid rgba(127, 136, 151, 0.2);
        outline: none;
        background-color: #fff;
        color: #233d63;
        font-weight: 500;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s;
        line-height: 40px;
        padding-right: 20px;
        padding-left: 20px;
        text-transform: capitalize; }
        .course-detail .view-more-courses2 .more-course-btn .report-modal .report-btn:hover {
          background-color: rgba(127, 136, 151, 0.1);
          border-color: rgba(127, 136, 151, 0.4); }
        .course-detail .view-more-courses2 .more-course-btn .report-modal .report-btn .report-btn__icon {
          margin-right: 3px; }
      .course-detail .view-more-courses2 .more-course-btn .report-modal .modal .modal-content .modal-header .modal-title {
        font-weight: 600; }
      .course-detail .view-more-courses2 .more-course-btn .report-modal .modal .modal-content .modal-body .contact-form-action form .form-group .label-text {
        color: #233d63; }
      .course-detail .view-more-courses2 .more-course-btn .report-modal .modal .modal-content .modal-body .contact-form-action form .form-group .form-control {
        padding-left: 20px; }
      .course-detail .view-more-courses2 .more-course-btn .report-modal .modal .modal-content .modal-body .contact-form-action form .form-group .theme-btn {
        padding-right: 20px;
        padding-left: 20px;
        line-height: 45px; }

.course-detail .sidebar-component {
  position: relative;
  z-index: 3;
  margin-top: -90px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .course-detail .sidebar-component {
      margin-top: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .course-detail .sidebar-component {
      margin-top: 0; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .course-detail .sidebar-component {
      margin-top: 0; } }
  .course-detail .sidebar-component .sidebar .sidebar-preview {
    padding: 0;
    border: none;
    background-color: #fff; }
    .course-detail .sidebar-component .sidebar .sidebar-preview .sidebar-preview-titles {
      background-color: #51be78;
      padding: 20px 30px;
      -webkit-border-radius: 4px 4px 0 0;
      -moz-border-radius: 4px 4px 0 0;
      border-radius: 4px 4px 0 0; }
      .course-detail .sidebar-component .sidebar .sidebar-preview .sidebar-preview-titles .widget__title {
        color: #fff;
        margin-bottom: 0; }
      .course-detail .sidebar-component .sidebar .sidebar-preview .sidebar-preview-titles .section__divider {
        background-color: #fff;
        margin: 0; }
        .course-detail .sidebar-component .sidebar .sidebar-preview .sidebar-preview-titles .section__divider:after {
          background-color: #51be78; }
    .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details {
      border: 1px solid rgba(127, 136, 151, 0.2); }
      .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-video {
        padding: 4px; }
        .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-video iframe {
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px; }
      .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content {
        padding: 34px 30px 30px 30px;
        border-top: 0;
        margin-top: -5px; }
        .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course__price {
          margin-bottom: 16px; }
          .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course__price span {
            margin-right: 7px;
            font-size: 18px; }
            .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course__price span.price-current {
              color: #233d63;
              font-size: 40px;
              font-weight: 600;
              margin-right: 10px; }
              @media (max-width: 1199px) {
                .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course__price span.price-current {
                  margin-right: 0;
                  margin-bottom: 10px; } }
            .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course__price span.price-before {
              text-decoration: line-through; }
            .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course__price span.price-discount {
              margin-right: 0; }
        @media (max-width: 1199px) {
          .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course__price.d-flex {
            display: block !important; } }
        .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-price-discount__text {
          margin-bottom: 30px; }
          .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-price-discount__text .discount-left__text-text {
            color: #F68A03;
            font-weight: 500; }
        .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .buy-course-btn {
          margin-bottom: 15px; }
          .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .buy-course-btn .theme-btn {
            width: 100%;
            display: block; }
        .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course-incentives .preview-course-incentives__text {
          text-align: center; }
        .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course-incentives .preview-course-incentives__title {
          color: #233d63;
          font-size: 20px;
          font-weight: 500;
          margin-top: 20px;
          margin-bottom: 20px; }
        .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course-incentives .preview-course-incentives__list li {
          display: block;
          margin-bottom: 15px;
          position: relative;
          padding-left: 27px; }
          .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course-incentives .preview-course-incentives__list li span {
            position: absolute;
            top: 1px;
            left: 0;
            font-size: 20px; }
          .course-detail .sidebar-component .sidebar .sidebar-preview .preview-video-and-details .preview-course-content .preview-course-incentives .preview-course-incentives__list li:last-child {
            margin-bottom: 0; }
  .course-detail .sidebar-component .sidebar .sidebar-feature .widget__list li {
    padding-left: 0;
    border-bottom: 1px solid rgba(127, 136, 151, 0.1);
    padding-bottom: 15px; }
    .course-detail .sidebar-component .sidebar .sidebar-feature .widget__list li .course-feature__icon {
      margin-right: 5px; }
    .course-detail .sidebar-component .sidebar .sidebar-feature .widget__list li .course-feature__meta {
      float: right; }
    .course-detail .sidebar-component .sidebar .sidebar-feature .widget__list li:after {
      display: none; }
    .course-detail .sidebar-component .sidebar .sidebar-feature .widget__list li:last-child {
      padding-bottom: 0;
      border-bottom: 0; }

/*=============== comments-wrapper ===============*/
.comments-wrapper .comments-title,
.comments-wrapper .contact-title {
  font-size: 24px;
  font-weight: 600; }

.comments-wrapper .comments-list {
  margin-top: 20px;
  padding-top: 40px;
  margin-bottom: 45px;
  border-top: 1px solid rgba(127, 136, 151, 0.2); }
  .comments-wrapper .comments-list li .comment {
    border-bottom: 1px solid #eee;
    margin-bottom: 50px;
    padding-bottom: 50px; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .comments-wrapper .comments-list li .comment {
        text-align: center; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .comments-wrapper .comments-list li .comment {
        text-align: center; } }
    .comments-wrapper .comments-list li .comment .avatar__img {
      width: 100px;
      height: 100px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      margin-right: 20px;
      float: left; }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .comments-wrapper .comments-list li .comment .avatar__img {
          float: none;
          margin-right: 0; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .comments-wrapper .comments-list li .comment .avatar__img {
          float: none;
          margin-right: 0; } }
    .comments-wrapper .comments-list li .comment .comment-body {
      margin-left: 120px; }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .comments-wrapper .comments-list li .comment .comment-body {
          margin-left: 0; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .comments-wrapper .comments-list li .comment .comment-body {
          margin-left: 0; } }
      .comments-wrapper .comments-list li .comment .comment-body .meta-data {
        position: relative; }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .comments-wrapper .comments-list li .comment .comment-body .meta-data {
            margin-top: 15px; } }
        @media only screen and (min-width: 320px) and (max-width: 479px) {
          .comments-wrapper .comments-list li .comment .comment-body .meta-data {
            margin-top: 15px; } }
        .comments-wrapper .comments-list li .comment .comment-body .meta-data .comment__author {
          font-size: 22px;
          text-transform: capitalize;
          color: #233d63;
          margin-bottom: 5px;
          display: inline-block;
          font-weight: 600; }
        .comments-wrapper .comments-list li .comment .comment-body .meta-data .comment__date {
          font-size: 15px;
          color: #7f8897; }
        .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars {
          position: absolute;
          right: 10px;
          top: 10px; }
          @media only screen and (min-width: 480px) and (max-width: 767px) {
            .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars {
              position: inherit;
              right: auto;
              top: auto;
              margin-top: 4px; } }
          @media only screen and (min-width: 320px) and (max-width: 479px) {
            .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars {
              position: inherit;
              right: auto;
              top: auto;
              margin-top: 4px; } }
          .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars li {
            display: inline-block;
            color: #F68A03; }
            .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars li:nth-child(4), .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars li:nth-child(5) {
              color: #7f8897; }
        .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars2 li:nth-child(4) {
          color: #F68A03; }
        .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars3 li:nth-child(4), .comments-wrapper .comments-list li .comment .comment-body .meta-data .review-stars3 li:nth-child(5) {
          color: #F68A03; }
      .comments-wrapper .comments-list li .comment .comment-body .comment-content {
        font-size: 16px;
        color: #7f8897;
        margin-top: 20px;
        margin-bottom: 15px;
        line-height: 28px; }
        @media (max-width: 600px) {
          .comments-wrapper .comments-list li .comment .comment-body .comment-content {
            margin-bottom: 20px; } }
      .comments-wrapper .comments-list li .comment .comment-body .comment-reply .comment__btn {
        color: #7f8897;
        position: relative;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s;
        font-size: 16px;
        display: inline-block;
        padding: 7px 18px;
        border: 1px solid #eee;
        -webkit-border-radius: 30px;
        -moz-border-radius: 30px;
        border-radius: 30px;
        font-weight: 500; }
        .comments-wrapper .comments-list li .comment .comment-body .comment-reply .comment__btn:hover {
          background-color: #51be78;
          color: #fff;
          border-color: #51be78; }
      .comments-wrapper .comments-list li .comment .comment-body .comment-reply .helpful__action {
        float: right;
        margin-top: 10px; }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .comments-wrapper .comments-list li .comment .comment-body .comment-reply .helpful__action {
            margin-top: 30px;
            float: none; } }
        @media only screen and (min-width: 320px) and (max-width: 479px) {
          .comments-wrapper .comments-list li .comment .comment-body .comment-reply .helpful__action {
            margin-top: 30px;
            float: none; } }
        .comments-wrapper .comments-list li .comment .comment-body .comment-reply .helpful__action a {
          border: 1px solid rgba(128, 137, 150, 0.4);
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          padding: 4px 12px;
          color: #7f8897;
          margin-left: 3px;
          margin-right: 3px;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .comments-wrapper .comments-list li .comment .comment-body .comment-reply .helpful__action a:hover {
            background-color: rgba(128, 137, 150, 0.1);
            color: #233d63; }
  .comments-wrapper .comments-list li .comments-reply {
    margin-left: 130px; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .comments-wrapper .comments-list li .comments-reply {
        margin-left: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .comments-wrapper .comments-list li .comments-reply {
        margin-left: 0; } }

.comments-wrapper .see-more-review-btn {
  margin-bottom: 50px; }
  .comments-wrapper .see-more-review-btn .button-shared .theme-btn {
    line-height: 45px;
    padding-right: 20px;
    padding-left: 20px;
    font-size: 15px;
    outline: none; }

/*======================================
      faq-area
 ======================================*/
.faq-area {
  padding-top: 120px;
  padding-bottom: 120px;
  position: relative;
  z-index: 1; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .faq-area .col-lg-8 {
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .faq-area .col-lg-8 {
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .faq-area .col-lg-8 {
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%; } }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .faq-area .sidebar {
      margin-top: 56px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .faq-area .sidebar {
      margin-top: 56px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .faq-area .sidebar {
      margin-top: 56px; } }

.faq-body {
  margin-top: -20px; }
  .faq-body .faq-panel .faq-heading {
    margin-top: 20px; }
    .faq-body .faq-panel .faq-heading .faq__title {
      color: #233d63;
      width: 100%;
      cursor: pointer;
      padding: 20px 30px 18px 30px;
      display: block;
      border: 1px solid rgba(127, 136, 151, 0.2);
      font-weight: 500;
      font-size: 20px;
      background-color: #fff;
      position: relative;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      @media (max-width: 375px) {
        .faq-body .faq-panel .faq-heading .faq__title {
          font-size: 60px; } }
      @media (max-width: 400px) {
        .faq-body .faq-panel .faq-heading .faq__title {
          font-size: 16px; } }
      @media (max-width: 400px) {
        .faq-body .faq-panel .faq-heading .faq__title {
          padding-right: 20px;
          padding-left: 20px; } }
      .faq-body .faq-panel .faq-heading .faq__title i {
        float: right;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .faq-body .faq-panel .faq-heading .faq__title:hover {
        color: #51be78; }
  .faq-body .faq-panel .faq-content {
    padding: 23px 30px 21px 30px;
    display: none;
    -webkit-box-shadow: 1px 7px 41px -8px rgba(82, 85, 90, 0.1);
    -moz-box-shadow: 1px 7px 41px -8px rgba(82, 85, 90, 0.1);
    box-shadow: 1px 7px 41px -8px rgba(82, 85, 90, 0.1);
    -webkit-border-radius: 0 0 5px 5px;
    -moz-border-radius: 0 0 5px 5px;
    border-radius: 0 0 5px 5px;
    border: 1px solid rgba(127, 136, 151, 0.2);
    border-top: 0; }
    @media (max-width: 400px) {
      .faq-body .faq-panel .faq-content {
        padding-right: 20px;
        padding-left: 20px; } }
    .faq-body .faq-panel .faq-content .faq__desc {
      font-size: 16px;
      color: #7f8897;
      line-height: 28px; }
  .faq-body .faq-panel.active .faq-heading .faq__title {
    color: #51be78;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0; }
    .faq-body .faq-panel.active .faq-heading .faq__title i {
      -webkit-transform: rotate(-90deg);
      -moz-transform: rotate(-90deg);
      -ms-transform: rotate(-90deg);
      -o-transform: rotate(-90deg);
      transform: rotate(-90deg); }
    .faq-body .faq-panel.active .faq-heading .faq__title:after {
      z-index: -1; }
  .faq-body .faq-btn-box {
    margin-top: 60px; }

/*====================================================
    ADMISSION
 ====================================================*/
.admission-area {
  padding-top: 120px;
  padding-bottom: 90px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .admission-area {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .admission-area {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .admission-area {
      padding-bottom: 120px; } }
  .admission-area .admission-body {
    margin-top: 40px; }
    .admission-area .admission-body .contact-form-action form .form-group .form-control {
      padding-left: 20px; }

/*====================================================
    GALLERY
 ====================================================*/
.gallery-area {
  padding-top: 112px;
  padding-bottom: 120px;
  position: relative;
  z-index: 1; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .gallery-area {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .gallery-area {
      padding-bottom: 90px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .gallery-area {
      padding-bottom: 90px; } }
  .gallery-area .portfolio-filter {
    text-align: center; }
    .gallery-area .portfolio-filter li {
      display: inline-block;
      padding: 8px 25px;
      cursor: pointer;
      color: #233d63;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      position: relative;
      z-index: 1;
      -webkit-transition: all 0.4s;
      -moz-transition: all 0.4s;
      -ms-transition: all 0.4s;
      -o-transition: all 0.4s;
      transition: all 0.4s;
      font-size: 16px;
      font-weight: 500; }
      .gallery-area .portfolio-filter li:hover {
        color: #51be78;
        background-color: rgba(81, 190, 120, 0.1); }
      .gallery-area .portfolio-filter li.active {
        color: #fff;
        background-color: #51be78;
        -webkit-box-shadow: 0 10px 30px rgba(81, 190, 120, 0.2);
        -moz-box-shadow: 0 10px 30px rgba(81, 190, 120, 0.2);
        box-shadow: 0 10px 30px rgba(81, 190, 120, 0.2); }
  .gallery-area .portfolio-wrap {
    padding-right: 0;
    padding-left: 0; }
    .gallery-area .portfolio-wrap .portfolio-list {
      margin-top: 60px; }
      .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item {
        position: relative;
        z-index: 1;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        margin-bottom: 30px; }
        .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item img {
          width: 100%;
          height: 100%;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
        .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item .portfolio-hover {
          width: 100%;
          height: 100%;
          color: #fff;
          position: relative;
          overflow: hidden;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px; }
          .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item .portfolio-hover .portfolio-link {
            position: absolute;
            top: 0;
            left: 0;
            height: 100%;
            width: 100%;
            text-align: center;
            background-color: rgba(35, 61, 99, 0.6);
            z-index: 1;
            -webkit-transition: all 0.3s;
            -moz-transition: all 0.3s;
            -ms-transition: all 0.3s;
            -o-transition: all 0.3s;
            transition: all 0.3s;
            color: #fff;
            opacity: 0;
            visibility: hidden; }
            .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item .portfolio-hover .portfolio-link span {
              font-size: 60px;
              position: absolute;
              top: 50%;
              left: 50%;
              -webkit-transform: translate(-50%, -50%);
              -moz-transform: translate(-50%, -50%);
              -ms-transform: translate(-50%, -50%);
              -o-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%); }
        .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item:hover img {
          -webkit-transform: scale(1.1);
          -moz-transform: scale(1.1);
          -ms-transform: scale(1.1);
          -o-transform: scale(1.1);
          transform: scale(1.1); }
        .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item:hover .portfolio-hover .portfolio-link {
          opacity: 1;
          visibility: visible; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item.col-lg-4 {
          -ms-flex: 0 0 50%;
          flex: 0 0 50%;
          max-width: 50%; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item.col-lg-4 {
          -ms-flex: 0 0 50%;
          flex: 0 0 50%;
          max-width: 50%; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .gallery-area .portfolio-wrap .portfolio-list .single-portfolio-item.col-lg-4 {
          -ms-flex: 0 0 100%;
          flex: 0 0 100%;
          max-width: 100%; } }

/*====================================================
    about-area
 ====================================================*/
.about-area {
  padding-top: 120px;
  padding-bottom: 115px; }
  .about-area .section-heading .section__title {
    width: 850px;
    margin-left: auto;
    margin-right: auto; }
    @media (max-width: 1024px) {
      .about-area .section-heading .section__title {
        width: auto; } }
  .about-area .about-text {
    width: 760px;
    margin-left: auto;
    margin-right: auto;
    line-height: 28px; }
    @media (max-width: 1024px) {
      .about-area .about-text {
        width: auto; } }
  .about-area .about-img-wrap {
    margin-top: 55px; }
  .about-area .about-img {
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .about-area .about-img {
        margin-bottom: 30px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .about-area .about-img {
        margin-bottom: 30px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .about-area .about-img {
        margin-bottom: 30px; } }
    .about-area .about-img img {
      width: 100%;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px; }
  .about-area .about-fun-item {
    margin-top: 60px;
    margin-bottom: 30px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .about-area .about-fun-item {
        margin-top: 30px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .about-area .about-fun-item {
        margin-top: 30px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .about-area .about-fun-item {
        margin-top: 30px; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .about-area .about-fun-item .col-lg-3 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .about-area .about-fun-item .col-lg-3 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%; } }
    .about-area .about-fun-item .funfact-item {
      background-color: #fff;
      padding: 45px 0 38px 0;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
      -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
      box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
      border-top: 3px solid #51be78;
      margin-bottom: 30px; }
      .about-area .about-fun-item .funfact-item .fun__icon {
        width: 60px;
        height: 60px;
        line-height: 60px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: rgba(81, 190, 120, 0.1);
        color: #51be78;
        font-size: 30px;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .about-area .about-fun-item .funfact-item .funfact__title {
        font-size: 30px;
        font-weight: 600;
        margin-top: 16px; }
      .about-area .about-fun-item .funfact-item .funfact__meta {
        text-transform: capitalize;
        margin-top: 3px; }
      .about-area .about-fun-item .funfact-item:hover .fun__icon {
        background-color: #51be78;
        color: #fff; }
    .about-area .about-fun-item .funfact-item2 {
      border-top-color: #7E3CF9; }
      .about-area .about-fun-item .funfact-item2 .fun__icon {
        background-color: rgba(126, 60, 249, 0.1);
        color: #7E3CF9; }
      .about-area .about-fun-item .funfact-item2:hover .fun__icon {
        background-color: #7E3CF9; }
    .about-area .about-fun-item .funfact-item3 {
      border-top-color: #F68A03; }
      .about-area .about-fun-item .funfact-item3 .fun__icon {
        background-color: rgba(246, 138, 4, 0.1);
        color: #F68A03; }
      .about-area .about-fun-item .funfact-item3:hover .fun__icon {
        background-color: #F68A03; }
    .about-area .about-fun-item .funfact-item4 {
      border-top-color: #358FF7; }
      .about-area .about-fun-item .funfact-item4 .fun__icon {
        background-color: rgba(53, 143, 247, 0.1);
        color: #358FF7; }
      .about-area .about-fun-item .funfact-item4:hover .fun__icon {
        background-color: #358FF7; }

/*====================================================
    about-area 2
 ====================================================*/
.about-area2 {
  overflow: hidden; }
  .about-area2 .section-heading {
    padding-right: 30px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .about-area2 .section-heading {
        padding-right: 0;
        margin-bottom: 60px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .about-area2 .section-heading {
        padding-right: 0;
        margin-bottom: 60px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .about-area2 .section-heading {
        padding-right: 0;
        margin-bottom: 60px; } }
    .about-area2 .section-heading .section__desc {
      margin-bottom: 10px; }
    .about-area2 .section-heading .theme-btn {
      margin-top: 25px; }
  .about-area2 .about-img {
    position: relative;
    z-index: 1; }
    .about-area2 .about-img:before, .about-area2 .about-img:after {
      position: absolute;
      content: ''; }
    .about-area2 .about-img:before {
      width: 200px;
      height: 200px;
      bottom: -33px;
      right: -33px;
      background-image: url("../images/dots.png");
      background-size: cover;
      background-position: center;
      opacity: 0.2;
      z-index: -1; }
    .about-area2 .about-img:after {
      top: 0;
      left: 50%;
      height: 100%;
      -webkit-transform: translateX(-50%);
      -moz-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      -o-transform: translateX(-50%);
      transform: translateX(-50%);
      width: 12px;
      background-color: #fff; }

/*-===============================
    FEATURE AREA
===============================-*/
.feature-area {
  padding-bottom: 90px;
  position: relative;
  z-index: 2; }
  .feature-area .feature-content-wrap {
    margin-top: -60px; }
    @media (max-width: 481px) {
      .feature-area .feature-content-wrap {
        margin-top: 120px; } }
    @media (max-width: 480px) {
      .feature-area .feature-content-wrap {
        margin-top: 120px; } }
    @media (max-width: 425px) {
      .feature-area .feature-content-wrap {
        margin-top: 80px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .feature-area .feature-content-wrap .col-sm-6 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .feature-area .feature-content-wrap .col-sm-6 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; } }
    .feature-area .feature-content-wrap .feature-item {
      background-color: #fff;
      -webkit-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
      -moz-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
      box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
      padding: 50px 40px 42px 40px;
      border: 1px solid rgba(126, 60, 249, 0.2);
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      -webkit-transition: all 0.4s;
      -moz-transition: all 0.4s;
      -ms-transition: all 0.4s;
      -o-transition: all 0.4s;
      transition: all 0.4s;
      position: relative;
      overflow: hidden;
      margin-bottom: 30px; }
      .feature-area .feature-content-wrap .feature-item .feature__icon {
        color: #7E3CF9;
        font-size: 50px;
        position: relative;
        width: 80px;
        height: 80px;
        line-height: 80px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: rgba(126, 60, 249, 0.1);
        text-align: center;
        -webkit-transition: all 0.4s;
        -moz-transition: all 0.4s;
        -ms-transition: all 0.4s;
        -o-transition: all 0.4s;
        transition: all 0.4s; }
      .feature-area .feature-content-wrap .feature-item .feature__title {
        font-weight: 600;
        text-transform: capitalize;
        font-size: 24px;
        margin-top: 25px;
        margin-bottom: 20px;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .feature-area .feature-content-wrap .feature-item .feature__text {
        line-height: 28px;
        margin-bottom: 20px;
        -webkit-transition: all 0.4s;
        -moz-transition: all 0.4s;
        -ms-transition: all 0.4s;
        -o-transition: all 0.4s;
        transition: all 0.4s;
        font-weight: 500; }
      .feature-area .feature-content-wrap .feature-item .feature__btn {
        text-transform: capitalize;
        color: #7E3CF9;
        font-weight: 500;
        -webkit-transition: all 0.4s;
        -moz-transition: all 0.4s;
        -ms-transition: all 0.4s;
        -o-transition: all 0.4s;
        transition: all 0.4s; }
      .feature-area .feature-content-wrap .feature-item:before, .feature-area .feature-content-wrap .feature-item:after {
        content: '';
        width: 191px;
        height: 191px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: #fff;
        opacity: .1;
        position: absolute;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease; }
      .feature-area .feature-content-wrap .feature-item:before {
        top: 0;
        right: 0;
        -webkit-transform: translate(60%, -60%);
        -moz-transform: translate(60%, -60%);
        -ms-transform: translate(60%, -60%);
        -o-transform: translate(60%, -60%);
        transform: translate(60%, -60%); }
      .feature-area .feature-content-wrap .feature-item:after {
        bottom: 0;
        left: 0;
        -webkit-transform: translate(-60%, 60%);
        -moz-transform: translate(-60%, 60%);
        -ms-transform: translate(-60%, 60%);
        -o-transform: translate(-60%, 60%);
        transform: translate(-60%, 60%); }
      .feature-area .feature-content-wrap .feature-item:hover {
        border-color: #51be78;
        background-color: #51be78; }
        .feature-area .feature-content-wrap .feature-item:hover .feature__title,
        .feature-area .feature-content-wrap .feature-item:hover .feature__text,
        .feature-area .feature-content-wrap .feature-item:hover .feature__btn {
          color: #fff; }
        .feature-area .feature-content-wrap .feature-item:hover .feature__icon {
          color: #51be78;
          background-color: #fff; }
        .feature-area .feature-content-wrap .feature-item:hover:before {
          -webkit-transform: translate(30%, -30%);
          -moz-transform: translate(30%, -30%);
          -ms-transform: translate(30%, -30%);
          -o-transform: translate(30%, -30%);
          transform: translate(30%, -30%); }
        .feature-area .feature-content-wrap .feature-item:hover:after {
          -webkit-transform: translate(-30%, 30%);
          -moz-transform: translate(-30%, 30%);
          -ms-transform: translate(-30%, 30%);
          -o-transform: translate(-30%, 30%);
          transform: translate(-30%, 30%); }
    .feature-area .feature-content-wrap .feature-item2 {
      border: 1px solid rgba(246, 138, 3, 0.2); }
      .feature-area .feature-content-wrap .feature-item2 .feature__icon {
        color: #F68A03;
        background-color: rgba(246, 138, 3, 0.1); }
      .feature-area .feature-content-wrap .feature-item2 .feature__btn {
        color: #F68A03; }
    .feature-area .feature-content-wrap .feature-item3 {
      border: 1px solid rgba(53, 143, 247, 0.2); }
      .feature-area .feature-content-wrap .feature-item3 .feature__icon {
        color: #358FF7;
        background-color: rgba(53, 143, 247, 0.1); }
      .feature-area .feature-content-wrap .feature-item3 .feature__btn {
        color: #358FF7; }

/*==================================
    CATEGORY
 ==================================*/
.category-area {
  padding-bottom: 90px; }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .category-area .section-heading {
      text-align: center; } }
  .category-area .button-shared {
    margin-top: 15px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .category-area .button-shared.justify-content-end {
      -ms-flex-pack: start !important;
      justify-content: flex-start !important; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .category-area .button-shared.justify-content-end {
      -ms-flex-pack: center !important;
      justify-content: center !important; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .category-area .button-shared.justify-content-end {
      -ms-flex-pack: center !important;
      justify-content: center !important; } }
  .category-area .category-wrapper {
    margin-top: 36px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .category-area .category-wrapper {
        margin-top: 60px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .category-area .category-wrapper {
        margin-top: 60px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .category-area .category-wrapper {
        margin-top: 60px; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .category-area .category-wrapper .col-lg-4 {
        width: 50%; } }
    .category-area .category-wrapper .category-item {
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      position: relative;
      margin-bottom: 30px; }
      .category-area .category-wrapper .category-item img {
        width: 100%;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px; }
      .category-area .category-wrapper .category-item .category-content {
        position: absolute;
        text-align: center;
        padding-top: 40px;
        top: 50%;
        left: 50%;
        width: 100%;
        z-index: 1;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        color: #fff; }
        .category-area .category-wrapper .category-item .category-content .cat__title {
          color: #fff;
          text-transform: capitalize;
          font-weight: 500;
          font-size: 24px;
          margin-bottom: 4px;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
        .category-area .category-wrapper .category-item .category-content .cat__meta {
          text-transform: capitalize;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
        .category-area .category-wrapper .category-item .category-content .cat__link {
          text-transform: capitalize;
          display: inline-block;
          background-color: #fff;
          color: #233d63;
          padding: 8px 14px;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          -webkit-transform: translateY(10px);
          -moz-transform: translateY(10px);
          -ms-transform: translateY(10px);
          -o-transform: translateY(10px);
          transform: translateY(10px);
          opacity: 0;
          visibility: hidden; }
          .category-area .category-wrapper .category-item .category-content .cat__link:hover {
            background-color: #51be78;
            color: #fff; }
      .category-area .category-wrapper .category-item:after {
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 100%;
        background-color: #233d63;
        opacity: .80;
        content: "";
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .category-area .category-wrapper .category-item:hover .category-content .cat__title {
        margin-bottom: 0; }
      .category-area .category-wrapper .category-item:hover .category-content .cat__meta {
        opacity: 0;
        visibility: hidden; }
      .category-area .category-wrapper .category-item:hover .category-content .cat__link {
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(-5px);
        -moz-transform: translateY(-5px);
        -ms-transform: translateY(-5px);
        -o-transform: translateY(-5px);
        transform: translateY(-5px); }
      .category-area .category-wrapper .category-item:hover:after {
        opacity: .99; }

/*==================================
    CATEGORY 2
 ==================================*/
.category-area2 {
  padding-top: 120px;
  padding-bottom: 0; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .category-area2 .category-wrapper .col-lg-3 {
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%; } }
  .category-area2 .category-wrapper .category-item {
    background-color: #fff;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    padding: 40px 0 40px 0;
    border: 1px solid rgba(127, 136, 151, 0.2);
    overflow: hidden; }
    .category-area2 .category-wrapper .category-item .category-content {
      color: #233d63;
      position: inherit;
      top: auto;
      left: auto;
      -webkit-transform: translate(0, 0);
      -moz-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
      -o-transform: translate(0, 0);
      transform: translate(0, 0);
      padding-top: 0; }
      .category-area2 .category-wrapper .category-item .category-content a {
        display: block; }
      .category-area2 .category-wrapper .category-item .category-content .la {
        color: #51be78;
        width: 70px;
        height: 70px;
        line-height: 70px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: rgba(81, 190, 120, 0.1);
        font-size: 40px;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .category-area2 .category-wrapper .category-item .category-content .cat__title {
        color: #233d63;
        margin-top: 20px;
        margin-bottom: 0; }
    .category-area2 .category-wrapper .category-item:before {
      position: absolute;
      content: '';
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-image: url("../images/img8.jpg");
      background-size: cover;
      background-position: center;
      background-color: transparent;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      opacity: 0;
      visibility: hidden; }
    .category-area2 .category-wrapper .category-item:before, .category-area2 .category-wrapper .category-item:after {
      -webkit-transform: scale(1.1);
      -moz-transform: scale(1.1);
      -ms-transform: scale(1.1);
      -o-transform: scale(1.1);
      transform: scale(1.1);
      opacity: 0;
      visibility: hidden;
      -webkit-transition: all 0.6s;
      -moz-transition: all 0.6s;
      -ms-transition: all 0.6s;
      -o-transition: all 0.6s;
      transition: all 0.6s; }
    .category-area2 .category-wrapper .category-item:hover .category-content .la {
      background-color: #fff; }
    .category-area2 .category-wrapper .category-item:hover .category-content .cat__title {
      color: #fff; }
    .category-area2 .category-wrapper .category-item:hover:after {
      opacity: .80; }
    .category-area2 .category-wrapper .category-item:hover:before, .category-area2 .category-wrapper .category-item:hover:after {
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1);
      visibility: visible; }
    .category-area2 .category-wrapper .category-item:hover:before {
      opacity: 1; }

/*-===============================
    COURSE AREA
===============================-*/
.course-area .course-content-wrapper {
  background-color: #F7FAFD;
  padding-top: 80px;
  padding-bottom: 115px; }

.course-area .course-tab-wrap .course-tab-list.nav-tabs {
  border: none;
  margin-top: 36px;
  margin-bottom: 60px; }
  .course-area .course-tab-wrap .course-tab-list.nav-tabs li {
    margin: 0 1px; }
    .course-area .course-tab-wrap .course-tab-list.nav-tabs li a {
      color: #7f8897;
      text-transform: capitalize;
      font-weight: 500;
      display: block;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      padding: 8px 17px;
      position: relative;
      overflow: hidden;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      .course-area .course-tab-wrap .course-tab-list.nav-tabs li a.active {
        background-color: #51be78;
        color: #fff; }
        .course-area .course-tab-wrap .course-tab-list.nav-tabs li a.active:hover {
          background-color: #51be78;
          color: #fff; }
      .course-area .course-tab-wrap .course-tab-list.nav-tabs li a:hover {
        background-color: rgba(81, 190, 120, 0.1);
        color: #51be78; }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .course-area .tab-content .course-block .col-lg-4,
  .course-area .tab-content .course-block .col-lg-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%; } }

.course-area .button-shared {
  margin-top: 28px; }

/*============ course-block ============*/
.course-block .course-item {
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  margin-bottom: 30px;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  .course-block .course-item .course-img {
    position: relative; }
    .course-block .course-item .course-img .course__img {
      display: block; }
      .course-block .course-item .course-img .course__img img {
        width: 100%;
        -webkit-border-radius: 4px 4px 0 0;
        -moz-border-radius: 4px 4px 0 0;
        border-radius: 4px 4px 0 0; }
    .course-block .course-item .course-img .course-tooltip {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      z-index: 1; }
      .course-block .course-item .course-img .course-tooltip .tooltip-label {
        background-color: #51be78;
        color: #fff;
        text-transform: uppercase;
        font-weight: 600;
        display: inline-block;
        padding: 4px 10px 4px 12px;
        -webkit-border-radius: 4px 4px 4px 0;
        -moz-border-radius: 4px 4px 4px 0;
        border-radius: 4px 4px 4px 0;
        font-size: 12px;
        position: relative; }
        .course-block .course-item .course-img .course-tooltip .tooltip-label:after {
          content: "";
          position: absolute;
          display: block;
          width: 100%;
          height: 100%;
          top: 0;
          left: 6px;
          z-index: -1;
          background-color: #51be78;
          -webkit-transform-origin: bottom left;
          transform-origin: bottom left;
          -webkit-transform: skew(12deg, 0deg);
          -moz-transform: skew(12deg, 0deg);
          -ms-transform: skew(12deg, 0deg);
          -o-transform: skew(12deg, 0deg);
          transform: skew(12deg, 0deg);
          -webkit-border-radius: 4px 0 0 0;
          -moz-border-radius: 4px 0 0 0;
          border-radius: 4px 0 0 0; }
    .course-block .course-item .course-img:after {
      position: absolute;
      bottom: 0;
      left: 30px;
      content: '';
      width: 0;
      height: 0;
      border-left: 13px solid transparent;
      border-right: 13px solid transparent;
      border-bottom: 13px solid #fff; }
  .course-block .course-item .course-content {
    border: 1px solid rgba(127, 136, 151, 0.2);
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
    padding: 29px 30px 30px 30px;
    border-top: transparent; }
    .course-block .course-item .course-content .course__label {
      font-weight: 500;
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center; }
      .course-block .course-item .course-content .course__label .course__label-text {
        background-color: rgba(81, 190, 120, 0.1);
        display: inline-block;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        color: #51be78;
        padding: 3px 10px;
        text-transform: capitalize;
        font-size: 15px; }
      .course-block .course-item .course-content .course__label .course__collection-icon {
        margin-left: auto;
        color: #7f8897;
        font-size: 22px;
        position: relative; }
        .course-block .course-item .course-content .course__label .course__collection-icon:after {
          position: absolute;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          content: "\f233";
          font-family: "LineAwesome";
          color: #51be78;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          opacity: 0;
          visibility: hidden; }
        .course-block .course-item .course-content .course__label .course__collection-icon:hover:after {
          opacity: 1;
          visibility: visible; }
    .course-block .course-item .course-content .course__title {
      font-size: 22px;
      font-weight: 600;
      margin-top: 10px;
      margin-bottom: 9px;
      line-height: 28px; }
      .course-block .course-item .course-content .course__title a {
        color: #233d63;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .course-block .course-item .course-content .course__title a:hover {
          color: #51be78; }
    .course-block .course-item .course-content .course__author a {
      color: #7f8897;
      text-transform: capitalize;
      font-weight: 500;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      .course-block .course-item .course-content .course__author a:hover {
        color: #51be78; }
    .course-block .course-item .course-content .rating-wrap {
      margin-top: 8px;
      font-size: 15px;
      margin-bottom: 20px; }
      .course-block .course-item .course-content .rating-wrap .review-stars li {
        margin-right: 2px; }
        .course-block .course-item .course-content .rating-wrap .review-stars li span {
          color: #F68A03; }
      .course-block .course-item .course-content .rating-wrap .star-rating-wrap {
        color: #233d63;
        font-weight: 500; }
        .course-block .course-item .course-content .rating-wrap .star-rating-wrap .star__rating {
          margin: 0 1px 0 3px; }
    .course-block .course-item .course-content .course-meta {
      margin-bottom: 25px; }
      .course-block .course-item .course-content .course-meta .course__list li {
        width: 100%;
        border-right: 1px solid rgba(127, 136, 151, 0.2);
        padding: 0 15px; }
        .course-block .course-item .course-content .course-meta .course__list li:first-child {
          padding-left: 0; }
        .course-block .course-item .course-content .course-meta .course__list li:last-child {
          border-right: none;
          padding-right: 0;
          text-align: right; }
        .course-block .course-item .course-content .course-meta .course__list li span {
          display: block; }
          .course-block .course-item .course-content .course-meta .course__list li span.meta__date {
            color: #233d63;
            font-weight: 500; }
          .course-block .course-item .course-content .course-meta .course__list li span.meta__text {
            font-weight: 500;
            font-size: 15px; }
    .course-block .course-item .course-content .course-price-wrap {
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center; }
      .course-block .course-item .course-content .course-price-wrap .course__price {
        color: #233d63;
        font-weight: 600;
        font-size: 20px; }
        .course-block .course-item .course-content .course-price-wrap .course__price .course__before-price {
          font-size: 16px;
          margin-right: 3px;
          color: #7f8897;
          text-decoration: line-through; }
      .course-block .course-item .course-content .course-price-wrap .course__btn {
        margin-left: auto;
        color: #7f8897;
        font-weight: 500;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .course-block .course-item .course-content .course-price-wrap .course__btn:hover {
          color: #51be78; }
  .course-block .course-item:hover {
    -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    box-shadow: 0 0 40px rgba(82, 85, 90, 0.1); }

/*-===============================
    COURSE AREA 2
===============================-*/
.course-area2 {
  padding-top: 120px; }
  @media (max-width: 575px) {
    .course-area2 {
      padding-bottom: 80px; } }
  .course-area2 .course-content-wrapper {
    padding-top: 36px;
    padding-bottom: 0;
    background-color: transparent; }
  .course-area2 .owl-nav div {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 50px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background-color: #fff;
    border: 1px solid rgba(127, 136, 151, 0.1);
    -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    font-size: 18px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    @media (max-width: 1366px) {
      .course-area2 .owl-nav div {
        top: 38%;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        -ms-transform: translateY(0);
        -o-transform: translateY(0);
        transform: translateY(0); } }
    @media (max-width: 575px) {
      .course-area2 .owl-nav div {
        top: auto;
        bottom: -50px; } }
    .course-area2 .owl-nav div:hover {
      background-color: #51be78;
      color: #fff; }
    .course-area2 .owl-nav div.owl-prev {
      left: -100px; }
      @media (max-width: 1366px) {
        .course-area2 .owl-nav div.owl-prev {
          left: -25px; } }
      @media (max-width: 575px) {
        .course-area2 .owl-nav div.owl-prev {
          left: 200px; } }
      @media (max-width: 480px) {
        .course-area2 .owl-nav div.owl-prev {
          left: 160px; } }
      @media (max-width: 425px) {
        .course-area2 .owl-nav div.owl-prev {
          left: 130px; } }
      @media (max-width: 384px) {
        .course-area2 .owl-nav div.owl-prev {
          left: 110px; } }
      @media (max-width: 320px) {
        .course-area2 .owl-nav div.owl-prev {
          left: 85px; } }
    .course-area2 .owl-nav div.owl-next {
      left: auto;
      right: -100px; }
      @media (max-width: 1366px) {
        .course-area2 .owl-nav div.owl-next {
          right: -25px; } }
      @media (max-width: 575px) {
        .course-area2 .owl-nav div.owl-next {
          right: 200px; } }
      @media (max-width: 480px) {
        .course-area2 .owl-nav div.owl-next {
          right: 160px; } }
      @media (max-width: 425px) {
        .course-area2 .owl-nav div.owl-next {
          right: 130px; } }
      @media (max-width: 384px) {
        .course-area2 .owl-nav div.owl-next {
          right: 110px; } }
      @media (max-width: 320px) {
        .course-area2 .owl-nav div.owl-next {
          right: 85px; } }

/*-===============================
    COURSE AREA 3
===============================-*/
.course-area3 .course-wrapper {
  background-color: #F7FAFD; }
  .course-area3 .course-wrapper .course-tab-list.nav-tabs {
    margin-bottom: 30px; }
    .course-area3 .course-wrapper .course-tab-list.nav-tabs li a {
      -webkit-border-radius: 30px;
      -moz-border-radius: 30px;
      border-radius: 30px;
      padding-top: 6px;
      padding-bottom: 6px; }

.course-area3 .course-content-wrapper {
  background-color: transparent;
  padding-top: 30px; }

/*-===============================
    COURSE AREA 4
===============================-*/
.course-area4 {
  padding-top: 110px; }
  .course-area4 .course-tab-wrap {
    background-color: #fff;
    border: 1px solid rgba(127, 136, 151, 0.2);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    padding: 20px 20px; }
    .course-area4 .course-tab-wrap .course-tab-list.nav-tabs {
      margin: 0; }
      @media (max-width: 480px) {
        .course-area4 .course-tab-wrap .course-tab-list.nav-tabs {
          margin-bottom: 30px;
          -ms-flex-pack: center;
          justify-content: center; } }
      .course-area4 .course-tab-wrap .course-tab-list.nav-tabs li {
        margin-left: 0;
        margin-right: 5px; }
        .course-area4 .course-tab-wrap .course-tab-list.nav-tabs li:nth-child(2) {
          margin-right: 15px; }
        .course-area4 .course-tab-wrap .course-tab-list.nav-tabs li a {
          font-size: 22px;
          padding: 0; }
          .course-area4 .course-tab-wrap .course-tab-list.nav-tabs li a span {
            padding: 7px 12px;
            z-index: 1; }
    @media (max-width: 480px) {
      .course-area4 .course-tab-wrap .course-filter .courses-ordering {
        width: 100%; } }
  @media (max-width: 480px) {
    .course-area4 .course-tab-wrap.d-flex {
      display: block !important; } }
  .course-area4 .course-item-wrap .tab-content .course-list-block .course-item {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .course-area4 .course-item-wrap .tab-content .course-list-block .course-item {
        width: 100%; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .course-area4 .course-item-wrap .tab-content .course-list-block .course-item {
        width: 100%; } }
    @media (max-width: 425px) {
      .course-area4 .course-item-wrap .tab-content .course-list-block .course-item {
        display: block; } }
    .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-img {
      width: 40%; }
      @media (max-width: 425px) {
        .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-img {
          width: 100%; } }
      .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-img .course__img img {
        height: 304px;
        object-fit: cover;
        -webkit-border-radius: 4px 0 0 4px;
        -moz-border-radius: 4px 0 0 4px;
        border-radius: 4px 0 0 4px; }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-img .course__img img {
            height: 355px; } }
        @media (max-width: 425px) {
          .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-img .course__img img {
            height: auto;
            -webkit-border-radius: 4px 4px 0 0;
            -moz-border-radius: 4px 4px 0 0;
            border-radius: 4px 4px 0 0; } }
      .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-img:after {
        bottom: auto;
        top: 35px;
        left: auto;
        right: -7px;
        -webkit-transform: rotate(-90deg);
        -moz-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
        -o-transform: rotate(-90deg);
        transform: rotate(-90deg); }
        @media (max-width: 425px) {
          .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-img:after {
            top: auto;
            left: 30px;
            bottom: 0;
            right: auto;
            -webkit-transform: rotate(0);
            -moz-transform: rotate(0);
            -ms-transform: rotate(0);
            -o-transform: rotate(0);
            transform: rotate(0); } }
    .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-content {
      width: 60%;
      border-left: transparent;
      border-top: 1px solid rgba(127, 136, 151, 0.2);
      -webkit-border-radius: 0 4px 4px 0;
      -moz-border-radius: 0 4px 4px 0;
      border-radius: 0 4px 4px 0; }
      @media (max-width: 425px) {
        .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-content {
          width: 100%; } }
      @media (max-width: 425px) {
        .course-area4 .course-item-wrap .tab-content .course-list-block .course-item .course-content {
          border-top: transparent;
          -webkit-border-radius: 0 0 4px 4px;
          -moz-border-radius: 0 0 4px 4px;
          border-radius: 0 0 4px 4px;
          border-left: 1px solid rgba(127, 136, 151, 0.2); } }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .course-area4 .course-item-wrap .tab-content .course-block .course-item {
      width: 100%; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .course-area4 .course-item-wrap .tab-content .course-block .course-item {
      width: 100%; } }
  .course-area4 .course-content-wrapper {
    padding-top: 30px;
    background-color: transparent; }

/*-========= course-filter =========-*/
.course-filter .courses-ordering {
  position: relative;
  width: 200px; }
  .course-filter .courses-ordering .target-course {
    width: 100%;
    border: 1px solid rgba(127, 136, 151, 0.2);
    padding: 15px 0 15px 20px;
    font-size: 16px;
    color: #7f8897;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    cursor: pointer;
    outline: none;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    background-color: transparent;
    font-weight: 500; }
  .course-filter .courses-ordering:before {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
    font-family: "LineAwesome";
    font-size: 15px;
    color: #7f8897;
    pointer-events: none;
    display: inline-block;
    content: "\f110";
    right: 13px; }

/*-===============================
    FUNFACT AREA
===============================-*/
.funfact-area {
  padding-top: 103px;
  padding-bottom: 115px;
  position: relative;
  z-index: 1;
  overflow: hidden; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .funfact-area {
      padding-bottom: 54px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .funfact-area {
      padding-bottom: 54px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .funfact-area {
      padding-bottom: 54px; } }
  .funfact-area .funfact-row {
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .funfact-area .funfact-row {
        flex-wrap: wrap; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .funfact-area .funfact-row {
        flex-wrap: wrap; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .funfact-area .funfact-row {
        flex-wrap: wrap; } }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .funfact-area .funfact-item {
      margin-bottom: 60px;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      display: -webkit-box;
      display: -ms-flex;
      display: flex;
      -ms-flex-pack: center;
      justify-content: center;
      padding-left: 15px;
      padding-right: 15px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .funfact-area .funfact-item {
      margin-bottom: 60px;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      display: -webkit-box;
      display: -ms-flex;
      display: flex;
      -ms-flex-pack: center;
      justify-content: center;
      padding-left: 15px;
      padding-right: 15px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .funfact-area .funfact-item {
      margin-bottom: 60px;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      display: -webkit-box;
      display: -ms-flex;
      display: flex;
      -ms-flex-pack: center;
      justify-content: center;
      padding-left: 15px;
      padding-right: 15px; } }
  .funfact-area .funfact-item .funfact-inner-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    position: relative; }
    .funfact-area .funfact-item .funfact-inner-item .la {
      position: absolute;
      top: -25px;
      left: -25px;
      font-size: 70px;
      color: rgba(127, 136, 151, 0.1); }
    .funfact-area .funfact-item .funfact-inner-item .funfact__title {
      font-size: 50px;
      font-weight: 600;
      margin-bottom: 10px;
      color: #7E3CF9; }
    .funfact-area .funfact-item .funfact-inner-item .funfact__meta {
      font-size: 15px;
      font-weight: 500;
      text-transform: uppercase;
      letter-spacing: 1px; }
  .funfact-area .funfact-item:nth-child(2) .funfact-inner-item {
    border-color: rgba(246, 138, 3, 0.8); }
    .funfact-area .funfact-item:nth-child(2) .funfact-inner-item .funfact__title {
      color: #F68A03; }
  .funfact-area .funfact-item:nth-child(3) .funfact-inner-item {
    border-color: rgba(53, 143, 247, 0.2); }
    .funfact-area .funfact-item:nth-child(3) .funfact-inner-item .funfact__title {
      color: #358FF7; }
  .funfact-area .funfact-item:nth-child(4) .funfact-inner-item {
    border-color: rgba(56, 187, 12, 0.2); }
    .funfact-area .funfact-item:nth-child(4) .funfact-inner-item .funfact__title {
      color: #38BB0C; }
  .funfact-area:before, .funfact-area:after {
    position: absolute;
    content: '';
    bottom: 0;
    left: 0;
    width: 200px;
    height: 200px;
    background-position: center;
    background-image: url("../images/dots.png");
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-transform: rotate(10deg);
    -moz-transform: rotate(10deg);
    -ms-transform: rotate(10deg);
    -o-transform: rotate(10deg);
    transform: rotate(10deg);
    background-size: cover;
    opacity: 0.2; }
  .funfact-area:after {
    top: -80px;
    left: auto;
    bottom: auto;
    right: 0; }

/*-===============================
    SPEAKER AREA
===============================-*/
.speaker-area {
  padding-top: 120px;
  padding-bottom: 115px;
  position: relative; }
  .speaker-area .section-heading .section__title {
    width: 650px;
    margin-left: auto;
    margin-right: auto; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .speaker-area .section-heading .section__title {
        width: auto; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .speaker-area .section-heading .section__title {
        width: auto; } }
  .speaker-area .speaker-content-wrap {
    margin-top: 36px; }
    .speaker-area .speaker-content-wrap .speaker-item {
      margin-bottom: 30px;
      background-color: #fff;
      -webkit-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
      -moz-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
      box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
      border: 1px solid rgba(127, 136, 151, 0.1);
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      position: relative;
      z-index: 1;
      -webkit-transition: all 0.3s ease-in;
      -moz-transition: all 0.3s ease-in;
      -ms-transition: all 0.3s ease-in;
      -o-transition: all 0.3s ease-in;
      transition: all 0.3s ease-in; }
      .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box {
        position: relative; }
        .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box img {
          width: 100%;
          -webkit-border-radius: 4px 4px 0 0;
          -moz-border-radius: 4px 4px 0 0;
          border-radius: 4px 4px 0 0;
          -webkit-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
          -moz-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
          box-shadow: 0 0 40px rgba(14, 16, 48, 0.05); }
        .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box .speaker__profile {
          position: absolute;
          bottom: 0;
          left: 50%;
          width: 100%;
          -webkit-transform: translateX(-50%);
          -moz-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
          -o-transform: translateX(-50%);
          transform: translateX(-50%);
          opacity: 0;
          visibility: hidden;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          text-align: center; }
          .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box .speaker__profile li {
            display: inline-block; }
            .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box .speaker__profile li a {
              color: #233d63;
              display: block;
              width: 40px;
              height: 40px;
              line-height: 40px;
              text-align: center;
              -webkit-border-radius: 50%;
              -moz-border-radius: 50%;
              border-radius: 50%;
              background-color: #fff;
              -webkit-transition: all 0.3s;
              -moz-transition: all 0.3s;
              -ms-transition: all 0.3s;
              -o-transition: all 0.3s;
              transition: all 0.3s;
              position: relative;
              z-index: 1; }
              .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box .speaker__profile li a:after {
                position: absolute;
                content: '';
                width: 100%;
                height: 100%;
                top: 0;
                left: 0;
                background-color: #51be78;
                z-index: -1;
                -webkit-border-radius: 50%;
                -moz-border-radius: 50%;
                border-radius: 50%;
                -webkit-transform: scale(0.6);
                -moz-transform: scale(0.6);
                -ms-transform: scale(0.6);
                -o-transform: scale(0.6);
                transform: scale(0.6);
                -webkit-transition: all 0.3s ease-in-out;
                -moz-transition: all 0.3s ease-in-out;
                -ms-transition: all 0.3s ease-in-out;
                -o-transition: all 0.3s ease-in-out;
                transition: all 0.3s ease-in-out;
                opacity: 0;
                visibility: hidden; }
              .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box .speaker__profile li a:hover {
                color: #fff; }
                .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box .speaker__profile li a:hover:after {
                  -webkit-transform: scale(1);
                  -moz-transform: scale(1);
                  -ms-transform: scale(1);
                  -o-transform: scale(1);
                  transform: scale(1);
                  opacity: 1;
                  visibility: visible; }
        .speaker-area .speaker-content-wrap .speaker-item .speaker-img-box:after {
          position: absolute;
          content: '';
          bottom: -1px;
          left: 40px;
          width: 0;
          height: 0;
          border-left: 13px solid transparent;
          border-right: 13px solid transparent;
          border-bottom: 13px solid #fff; }
      .speaker-area .speaker-content-wrap .speaker-item .speaker-detail {
        padding: 32px 40px 38px 40px; }
        .speaker-area .speaker-content-wrap .speaker-item .speaker-detail .speaker-title-box {
          position: relative;
          z-index: 1; }
          .speaker-area .speaker-content-wrap .speaker-item .speaker-detail .speaker-title-box .speaker__title {
            font-size: 26px;
            text-transform: capitalize;
            font-weight: 600;
            display: inline-block;
            margin-bottom: 3px; }
            .speaker-area .speaker-content-wrap .speaker-item .speaker-detail .speaker-title-box .speaker__title a {
              color: #233d63;
              -webkit-transition: all 0.3s;
              -moz-transition: all 0.3s;
              -ms-transition: all 0.3s;
              -o-transition: all 0.3s;
              transition: all 0.3s;
              display: block;
              position: relative; }
              .speaker-area .speaker-content-wrap .speaker-item .speaker-detail .speaker-title-box .speaker__title a:hover {
                color: #51be78; }
          .speaker-area .speaker-content-wrap .speaker-item .speaker-detail .speaker-title-box .speaker__meta {
            text-transform: capitalize;
            font-weight: 500;
            margin-bottom: 25px; }
          .speaker-area .speaker-content-wrap .speaker-item .speaker-detail .speaker-title-box .speaker__text {
            line-height: 28px;
            margin-bottom: 35px; }
          .speaker-area .speaker-content-wrap .speaker-item .speaker-detail .speaker-title-box .speaker__link {
            color: #7f8897;
            text-transform: capitalize;
            font-weight: 500;
            display: inline-block;
            padding: 9px 20px;
            background-color: rgba(127, 136, 151, 0.1);
            -webkit-border-radius: 30px;
            -moz-border-radius: 30px;
            border-radius: 30px;
            -webkit-transition: all 0.3s;
            -moz-transition: all 0.3s;
            -ms-transition: all 0.3s;
            -o-transition: all 0.3s;
            transition: all 0.3s;
            border: 1px solid rgba(127, 136, 151, 0.2); }
            .speaker-area .speaker-content-wrap .speaker-item .speaker-detail .speaker-title-box .speaker__link:hover {
              background-color: #51be78;
              color: #fff; }
      .speaker-area .speaker-content-wrap .speaker-item:hover .speaker-img-box .speaker__profile {
        opacity: 1;
        visibility: visible;
        bottom: 30px; }
      .speaker-area .speaker-content-wrap .speaker-item:hover .speaker-title-box .speaker__link {
        background-color: #51be78;
        color: #fff;
        border-color: #51be78; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .speaker-area .speaker-content-wrap .col-lg-4 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%; } }
  .speaker-area .button-shared {
    margin-top: 30px; }

/*-===============================
    INSTRUCTOR-AREA
===============================-*/
.instructor-area .speaker-content-wrap {
  margin-top: 0; }

/*===================================
    TESTIMONIAL AREA
=====================================*/
.testimonial-area {
  padding-top: 119px;
  padding-bottom: 114px;
  background-color: #F7FAFD; }
  .testimonial-area .section-heading .section__title {
    width: 500px;
    margin-left: auto;
    margin-right: auto; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .testimonial-area .section-heading .section__title {
        width: auto; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .testimonial-area .section-heading .section__title {
        width: auto; } }
  .testimonial-area .testimonial-wrap {
    margin-top: 35px; }
    .testimonial-area .testimonial-wrap .testimonial-item {
      position: relative;
      padding: 40px 48px 40px 48px;
      -webkit-border-radius: 2px;
      -moz-border-radius: 2px;
      border-radius: 2px;
      background-color: #fff;
      -webkit-box-shadow: 0 0 40px rgba(0, 0, 0, 0.01);
      -moz-box-shadow: 0 0 40px rgba(0, 0, 0, 0.01);
      box-shadow: 0 0 40px rgba(0, 0, 0, 0.01);
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      border: 1px solid rgba(127, 136, 151, 0.2); }
      .testimonial-area .testimonial-wrap .testimonial-item .testimonial__desc {
        margin-top: 20px; }
        .testimonial-area .testimonial-wrap .testimonial-item .testimonial__desc .testimonial__desc-desc {
          line-height: 30px;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
        .testimonial-area .testimonial-wrap .testimonial-item .testimonial__desc:after {
          position: absolute;
          content: "”";
          font-size: 100px;
          line-height: 0;
          bottom: 20px;
          right: 20px;
          color: #7f8897;
          font-weight: 700;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          opacity: 0.1; }
      .testimonial-area .testimonial-wrap .testimonial-item .testimonial__name {
        position: relative;
        padding-left: 64px;
        padding-top: 14px;
        padding-bottom: 30px;
        line-height: 18px;
        border-bottom: 1px solid rgba(127, 136, 151, 0.2); }
        .testimonial-area .testimonial-wrap .testimonial-item .testimonial__name img {
          position: absolute;
          width: 54px;
          height: 54px;
          overflow: hidden;
          left: 0;
          top: 8px;
          -webkit-border-radius: 50%;
          -moz-border-radius: 50%;
          border-radius: 50%; }
        .testimonial-area .testimonial-wrap .testimonial-item .testimonial__name .testimonial__name-title {
          font-size: 20px;
          line-height: 20px;
          font-weight: 600;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          margin-bottom: 2px; }
        .testimonial-area .testimonial-wrap .testimonial-item .testimonial__name .testimonial__name-span {
          font-size: 15px;
          line-height: 14px;
          text-transform: capitalize;
          font-weight: 500;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
      .testimonial-area .testimonial-wrap .testimonial-item:hover {
        background-color: #51be78;
        border-color: #51be78; }
        .testimonial-area .testimonial-wrap .testimonial-item:hover .testimonial__desc .testimonial__desc-desc,
        .testimonial-area .testimonial-wrap .testimonial-item:hover .testimonial__name .testimonial__name-title,
        .testimonial-area .testimonial-wrap .testimonial-item:hover .testimonial__name .testimonial__name-span {
          color: #fff; }
        .testimonial-area .testimonial-wrap .testimonial-item:hover .testimonial__name {
          border-bottom-color: rgba(255, 255, 255, 0.1); }
        .testimonial-area .testimonial-wrap .testimonial-item:hover .testimonial__desc:after {
          color: #fff; }
    .testimonial-area .testimonial-wrap .owl-dots {
      text-align: center;
      margin-top: 60px; }
      .testimonial-area .testimonial-wrap .owl-dots div {
        width: 14px;
        height: 14px;
        line-height: 14px;
        background-color: rgba(127, 136, 151, 0.4);
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        display: inline-block;
        margin: 0 2px;
        position: relative;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s;
        -webkit-transform: scale(0.7);
        -moz-transform: scale(0.7);
        -ms-transform: scale(0.7);
        -o-transform: scale(0.7);
        transform: scale(0.7); }
        .testimonial-area .testimonial-wrap .owl-dots div.active, .testimonial-area .testimonial-wrap .owl-dots div:hover {
          background-color: #51be78;
          -webkit-transform: scale(1);
          -moz-transform: scale(1);
          -ms-transform: scale(1);
          -o-transform: scale(1);
          transform: scale(1); }

/*=== rotateme ===*/
.rotateme {
  -webkit-animation-name: rotateme;
  animation-name: rotateme;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear; }

@keyframes rotateme {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg); } }

/*-===============================
   perticles-js
===============================-*/
#perticles-js {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }

/*-===============================
    GET-START AREA
===============================-*/
.get-start-area {
  position: relative;
  padding-top: 120px;
  padding-bottom: 115px;
  background-image: url("../images/img7.jpg");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  z-index: 2;
  overflow: hidden; }
  .get-start-area .section-heading .section__title {
    font-size: 70px;
    line-height: 80px;
    text-transform: uppercase;
    font-weight: 700; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .get-start-area .section-heading .section__title {
        font-size: 60px;
        line-height: 75px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .get-start-area .section-heading .section__title {
        font-size: 50px;
        line-height: 60px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .get-start-area .section-heading .section__title {
        font-size: 50px;
        line-height: 60px; } }
    @media (max-width: 425px) {
      .get-start-area .section-heading .section__title {
        font-size: 40px;
        line-height: 50px; } }
  .get-start-area .section-heading .get-start-btn {
    margin-top: 38px; }
  .get-start-area:before {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    content: "";
    background-color: #233d63;
    opacity: .95; }
  .get-start-area .box-icons,
  .get-start-area .box-icons2 {
    position: absolute;
    left: 100px;
    bottom: 75px;
    z-index: 1; }
    @media (max-width: 575px) {
      .get-start-area .box-icons,
      .get-start-area .box-icons2 {
        display: none; } }
    .get-start-area .box-icons div,
    .get-start-area .box-icons2 div {
      position: absolute;
      border: 2px solid rgba(255, 255, 255, 0.1);
      width: 19px;
      height: 19px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%; }
      .get-start-area .box-icons div.box-one,
      .get-start-area .box-icons2 div.box-one {
        left: -40px;
        bottom: 50px; }
      .get-start-area .box-icons div.box-two,
      .get-start-area .box-icons2 div.box-two {
        left: 0px;
        top: 0;
        width: 46px;
        height: 46px; }
      .get-start-area .box-icons div.box-three,
      .get-start-area .box-icons2 div.box-three {
        left: 50px;
        top: -150px;
        width: 80px;
        height: 80px; }
      .get-start-area .box-icons div.box-four,
      .get-start-area .box-icons2 div.box-four {
        left: -85px;
        top: -258px;
        width: 97px;
        height: 97px; }
      .get-start-area .box-icons div.box-five,
      .get-start-area .box-icons2 div.box-five {
        left: 100px;
        top: 2px;
        width: 40px;
        height: 40px; }
  .get-start-area .box-icons2 {
    left: auto;
    right: 240px;
    bottom: auto;
    top: 100px;
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg); }

/*-===============================
    GET-START AREA 2
===============================-*/
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .get-start-area2 {
    text-align: center;
    padding-bottom: 150px; } }

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .get-start-area2 {
    text-align: center;
    padding-bottom: 150px; } }

@media only screen and (min-width: 320px) and (max-width: 479px) {
  .get-start-area2 {
    text-align: center;
    padding-bottom: 150px; } }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .get-start-area2 .col-lg-10 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%; } }

.get-start-area2 .section-heading .section__title {
  font-size: 50px;
  line-height: 60px;
  width: 690px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .get-start-area2 .section-heading .section__title {
      width: auto; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .get-start-area2 .section-heading .section__title {
      width: auto; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .get-start-area2 .section-heading .section__title {
      width: auto; } }
  @media (max-width: 320px) {
    .get-start-area2 .section-heading .section__title {
      font-size: 40px;
      line-height: 50px; } }

.get-start-area2 .box-icons {
  top: 75px;
  bottom: auto; }
  .get-start-area2 .box-icons div.box-three {
    top: 150px; }
  .get-start-area2 .box-icons div.box-four {
    top: 258px; }

.get-start-area2 .box-icons2 {
  top: auto;
  bottom: 75px; }
  .get-start-area2 .box-icons2 div.box-five {
    left: -130px; }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .get-start-area2 .promo-btn {
    margin-top: 60px; } }

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .get-start-area2 .promo-btn {
    margin-top: 60px; } }

@media only screen and (min-width: 320px) and (max-width: 479px) {
  .get-start-area2 .promo-btn {
    margin-top: 60px; } }

.get-start-area2 .promo-btn .video-play-btn {
  display: block;
  width: 130px;
  height: 130px;
  background-color: #fff;
  text-align: center;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
  line-height: 130px;
  color: #233d63;
  font-size: 60px;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  z-index: 1; }
  @media (max-width: 320px) {
    .get-start-area2 .promo-btn .video-play-btn {
      width: 100px;
      height: 100px;
      line-height: 100px;
      font-size: 50px; } }
  .get-start-area2 .promo-btn .video-play-btn:before, .get-start-area2 .promo-btn .video-play-btn:after {
    position: absolute;
    content: '';
    top: -25px;
    left: -25px;
    bottom: -25px;
    right: -25px;
    background-color: rgba(255, 255, 255, 0.2);
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    -webkit-animation: play-button-pulse 1.8s linear infinite;
    -moz-animation: play-button-pulse 1.8s linear infinite;
    animation: play-button-pulse 1.8s linear infinite;
    opacity: 0;
    z-index: -1; }
  .get-start-area2 .promo-btn .video-play-btn:after {
    -webkit-animation-delay: .6s;
    -moz-animation-delay: .6s;
    animation-delay: .6s; }
  .get-start-area2 .promo-btn .video-play-btn:hover {
    background-color: #51be78;
    color: #fff; }

@media only screen and (min-width: 768px) and (max-width: 991px) {
  .get-start-area2 .promo-btn.justify-content-end {
    -ms-flex-pack: center !important;
    justify-content: center !important; } }

@media only screen and (min-width: 480px) and (max-width: 767px) {
  .get-start-area2 .promo-btn.justify-content-end {
    -ms-flex-pack: center !important;
    justify-content: center !important; } }

@media only screen and (min-width: 320px) and (max-width: 479px) {
  .get-start-area2 .promo-btn.justify-content-end {
    -ms-flex-pack: center !important;
    justify-content: center !important; } }

/*-===============================
    BENEFIT AREA
===============================-*/
.benefit-area {
  position: relative;
  z-index: 1;
  padding-bottom: 115px;
  overflow: hidden; }
  .benefit-area .benefit-heading {
    padding-top: 120px; }
  .benefit-area .section-heading .section__desc {
    margin-bottom: 40px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .benefit-area .benefit-course-box .col-lg-4 {
      -ms-flex: 0 0 33%;
      flex: 0 0 33%;
      max-width: 33%; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .benefit-area .benefit-course-box .col-lg-4 {
      width: 50%; } }
  .benefit-area .benefit-course-box .benefit-item {
    margin-bottom: 48px; }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .benefit-area .benefit-course-box .benefit-item {
        text-align: center; } }
    .benefit-area .benefit-course-box .benefit-item .benefit__icon {
      color: #38BB0C;
      font-size: 30px;
      position: relative;
      width: 50px;
      height: 50px;
      line-height: 50px;
      -webkit-border-radius: 12px;
      -moz-border-radius: 12px;
      border-radius: 12px;
      background-color: rgba(56, 187, 12, 0.1);
      text-align: center;
      -webkit-transition: all 0.4s;
      -moz-transition: all 0.4s;
      -ms-transition: all 0.4s;
      -o-transition: all 0.4s;
      transition: all 0.4s; }
    .benefit-area .benefit-course-box .benefit-item .benefit__title {
      margin-top: 16px;
      font-weight: 600;
      font-size: 20px; }
    .benefit-area .benefit-course-box .benefit-item:hover .benefit__icon {
      background-color: #51be78;
      color: #fff; }
  .benefit-area .benefit-course-box .benefit-item2 .benefit__icon {
    color: #DD493D;
    background-color: rgba(221, 73, 61, 0.1); }
  .benefit-area .benefit-course-box .benefit-item3 .benefit__icon {
    color: #3E5B99;
    background-color: rgba(62, 91, 153, 0.1); }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .benefit-area .get-start-btn {
      text-align: center; } }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .benefit-area .benefit-img {
      margin-top: 55px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .benefit-area .benefit-img {
      margin-top: 55px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .benefit-area .benefit-img {
      margin-top: 55px; } }
  .benefit-area .benefit-img img {
    width: 100%;
    position: absolute;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .benefit-area .benefit-img img {
        position: inherit; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .benefit-area .benefit-img img {
        position: inherit; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .benefit-area .benefit-img img {
        position: inherit; } }
    .benefit-area .benefit-img img:nth-child(1) {
      top: 0;
      right: 0;
      margin-right: -352px;
      -webkit-border-radius: 0;
      -moz-border-radius: 0;
      border-radius: 0; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .benefit-area .benefit-img img:nth-child(1) {
          margin-right: auto;
          right: auto;
          top: auto;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          margin-bottom: 30px; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .benefit-area .benefit-img img:nth-child(1) {
          margin-right: auto;
          right: auto;
          top: auto;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          margin-bottom: 30px; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .benefit-area .benefit-img img:nth-child(1) {
          margin-right: auto;
          right: auto;
          top: auto;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          margin-bottom: 30px; } }
    .benefit-area .benefit-img img:nth-child(2) {
      margin-top: 230px;
      margin-left: 60px;
      border: 20px solid #fff; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .benefit-area .benefit-img img:nth-child(2) {
          margin-top: auto;
          margin-left: auto;
          border: none; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .benefit-area .benefit-img img:nth-child(2) {
          margin-top: auto;
          margin-left: auto;
          border: none; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .benefit-area .benefit-img img:nth-child(2) {
          margin-top: auto;
          margin-left: auto;
          border: none; } }
  .benefit-area:after {
    position: absolute;
    content: '';
    right: 200px;
    bottom: 45px;
    width: 220px;
    height: 341px;
    background-image: url("../images/dots.png");
    background-position: center;
    background-size: cover;
    z-index: -1;
    opacity: 0.1; }

/*-===============================
    BENEFIT AREA 2
===============================-*/
.benefit-area2 {
  padding-top: 120px; }
  .benefit-area2 .benefit-heading {
    padding-top: 0; }
    @media (max-width: 1199px) {
      .benefit-area2 .benefit-heading {
        padding-left: 30px; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .benefit-area2 .benefit-heading {
        padding-left: 0; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .benefit-area2 .benefit-heading {
        padding-left: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .benefit-area2 .benefit-heading {
        padding-left: 0; } }
    .benefit-area2 .benefit-heading .benefit-course-box .benefit-item .benefit__icon {
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .benefit-area2 .benefit-img {
      margin-top: 0;
      margin-bottom: 60px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .benefit-area2 .benefit-img {
      margin-top: 0;
      margin-bottom: 60px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .benefit-area2 .benefit-img {
      margin-top: 0;
      margin-bottom: 60px; } }
  .benefit-area2 .benefit-img img {
    -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.2);
    -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.2);
    box-shadow: 0 0 40px rgba(82, 85, 90, 0.2);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px; }
    @media (max-width: 1199px) {
      .benefit-area2 .benefit-img img {
        position: inherit; } }
    .benefit-area2 .benefit-img img:nth-child(1) {
      left: 15px;
      margin-left: 0;
      width: 59%;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px; }
      @media (max-width: 1199px) {
        .benefit-area2 .benefit-img img:nth-child(1) {
          width: 100%;
          left: auto;
          right: auto;
          margin-right: 0; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .benefit-area2 .benefit-img img:nth-child(1) {
          margin-bottom: 0; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .benefit-area2 .benefit-img img:nth-child(1) {
          margin-bottom: 0; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .benefit-area2 .benefit-img img:nth-child(1) {
          margin-bottom: 0; } }
    .benefit-area2 .benefit-img img:nth-child(2) {
      margin-left: 241px;
      margin-top: 40px;
      width: 40%;
      border: none; }
      @media (max-width: 1199px) {
        .benefit-area2 .benefit-img img:nth-child(2) {
          width: 100%;
          margin-left: inherit;
          margin-top: 30px; } }
    .benefit-area2 .benefit-img img:nth-child(3) {
      bottom: 5px;
      right: 15px;
      width: 60%;
      margin-right: 90px; }
      @media (max-width: 1199px) {
        .benefit-area2 .benefit-img img:nth-child(3) {
          display: none; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .benefit-area2 .benefit-img img:nth-child(3) {
          display: block;
          width: 100%;
          margin-right: 0;
          bottom: auto;
          right: auto;
          margin-top: 30px;
          margin-bottom: 30px; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .benefit-area2 .benefit-img img:nth-child(3) {
          display: block;
          width: 100%;
          margin-right: 0;
          bottom: auto;
          right: auto;
          margin-top: 30px;
          margin-bottom: 30px; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .benefit-area2 .benefit-img img:nth-child(3) {
          display: block;
          width: 100%;
          margin-right: 0;
          bottom: auto;
          right: auto;
          margin-top: 30px;
          margin-bottom: 30px; } }
    .benefit-area2 .benefit-img img:nth-child(4) {
      bottom: 46px;
      left: 15px;
      width: 40%; }
      @media (max-width: 1199px) {
        .benefit-area2 .benefit-img img:nth-child(4) {
          display: none; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .benefit-area2 .benefit-img img:nth-child(4) {
          display: block;
          width: 100%;
          left: auto;
          bottom: auto; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .benefit-area2 .benefit-img img:nth-child(4) {
          display: block;
          width: 100%;
          left: auto;
          bottom: auto; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .benefit-area2 .benefit-img img:nth-child(4) {
          display: block;
          width: 100%;
          left: auto;
          bottom: auto; } }
  .benefit-area2:after {
    right: auto;
    left: 290px;
    bottom: 83px; }

/*-===============================
    REGISTER AREA
===============================-*/
.register-area {
  padding-top: 120px;
  padding-bottom: 119px;
  position: relative;
  z-index: 1; }
  .register-area .register-heading {
    padding-left: 90px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .register-area .register-heading {
        margin-top: 60px;
        padding-left: 0; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .register-area .register-heading {
        margin-top: 60px;
        padding-left: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .register-area .register-heading {
        margin-top: 60px;
        padding-left: 0; } }
  .register-area .section-heading .register__desc {
    margin-bottom: 18px; }
  .register-area .register-wrap {
    background-color: #fff;
    -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    position: relative; }
    .register-area .register-wrap .contact-title {
      background-color: #51be78;
      color: #fff;
      font-weight: 600;
      padding: 30px 40px 30px 40px;
      -webkit-border-radius: 4px 4px 0 0;
      -moz-border-radius: 4px 4px 0 0;
      border-radius: 4px 4px 0 0;
      position: relative; }
      @media (max-width: 320px) {
        .register-area .register-wrap .contact-title {
          padding: 20px;
          font-size: 24px; } }
      .register-area .register-wrap .contact-title:after {
        position: absolute;
        content: '';
        bottom: -12px;
        left: 40px;
        width: 0;
        height: 0;
        border-left: 12px solid transparent;
        border-right: 12px solid transparent;
        border-top: 12px solid #51be78; }
        @media (max-width: 320px) {
          .register-area .register-wrap .contact-title:after {
            left: 20px;
            bottom: -10px;
            border-left: 10px solid transparent;
            border-right: 10px solid transparent;
            border-top: 10px solid #51be78; } }
    .register-area .register-wrap form {
      padding: 40px; }
      @media (max-width: 320px) {
        .register-area .register-wrap form {
          padding: 20px; } }
    .register-area .register-wrap:after {
      position: absolute;
      content: '';
      width: 100%;
      top: 0;
      left: 0;
      height: 2px;
      background-color: rgba(127, 136, 151, 0.1); }
  .register-area:before, .register-area:after {
    position: absolute;
    content: '';
    right: 55px;
    bottom: 91px;
    width: 200px;
    height: 200px;
    background-image: url("../images/dots.png");
    background-position: center;
    background-size: cover;
    z-index: -1;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    opacity: 0.3; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .register-area:before, .register-area:after {
        width: 100px;
        height: 100px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .register-area:before, .register-area:after {
        width: 100px;
        height: 100px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .register-area:before, .register-area:after {
        width: 100px;
        height: 100px; } }
  .register-area:after {
    right: auto;
    left: 280px;
    bottom: 71px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .register-area:after {
        left: 0;
        bottom: 0; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .register-area:after {
        left: 0;
        bottom: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .register-area:after {
        left: 0;
        bottom: 0; } }

/*-===============================
    REGISTER AREA 2
===============================-*/
.register-area2 .register-heading {
  padding-left: 0;
  padding-right: 90px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .register-area2 .register-heading {
      padding-right: 0;
      margin-top: 0;
      margin-bottom: 60px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .register-area2 .register-heading {
      padding-right: 0;
      margin-top: 0;
      margin-bottom: 60px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .register-area2 .register-heading {
      padding-right: 0;
      margin-top: 0;
      margin-bottom: 60px; } }

.register-area2:after {
  left: 50px; }

.register-area2:before {
  right: 280px; }

/*====================================================
   clientlogo-area
 ====================================================*/
.clientlogo-area {
  padding-top: 120px;
  padding-bottom: 102px;
  text-align: center;
  position: relative;
  overflow: hidden; }
  .clientlogo-area .client-logo {
    margin-top: 30px; }
    .clientlogo-area .client-logo .client-logo-item {
      display: inline-block; }
      .clientlogo-area .client-logo .client-logo-item img {
        -webkit-filter: grayscale(100%);
        filter: grayscale(100%);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .clientlogo-area .client-logo .client-logo-item:hover img {
        -webkit-filter: grayscale(0);
        filter: grayscale(0); }
  .clientlogo-area .stroke-line,
  .clientlogo-area .stroke-line2 {
    position: absolute;
    top: 175px;
    left: 50px;
    width: 200px;
    display: inline-block;
    -webkit-transform: rotate(-55deg);
    -moz-transform: rotate(-55deg);
    -ms-transform: rotate(-55deg);
    -o-transform: rotate(-55deg);
    transform: rotate(-55deg);
    opacity: 0.1; }
    .clientlogo-area .stroke-line .stroke__line,
    .clientlogo-area .stroke-line2 .stroke__line {
      background-color: #7f8897;
      height: 2px;
      display: block; }
      .clientlogo-area .stroke-line .stroke__line:nth-child(1), .clientlogo-area .stroke-line .stroke__line:nth-child(2),
      .clientlogo-area .stroke-line2 .stroke__line:nth-child(1),
      .clientlogo-area .stroke-line2 .stroke__line:nth-child(2) {
        margin-bottom: 18px; }
  .clientlogo-area .stroke-line2 {
    left: auto;
    right: 50px;
    bottom: 0;
    top: auto;
    -webkit-transform: rotate(55deg);
    -moz-transform: rotate(55deg);
    -ms-transform: rotate(55deg);
    -o-transform: rotate(55deg);
    transform: rotate(55deg); }

/*-===============================
    BLOG AREA
===============================-*/
.blog-area {
  position: relative;
  z-index: 1;
  padding-top: 120px; }
  .blog-area .blog-post-wrapper {
    margin-top: 37px; }
    .blog-area .blog-post-wrapper .blog-post-item {
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      margin-bottom: 30px; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .blog-area .blog-post-wrapper .blog-post-item {
          width: 70%;
          margin-left: auto;
          margin-right: auto; } }
      .blog-area .blog-post-wrapper .blog-post-item .blog-post-img {
        position: relative; }
        .blog-area .blog-post-wrapper .blog-post-item .blog-post-img .blog__img {
          width: 100%;
          -webkit-border-radius: 4px 4px 0 0;
          -moz-border-radius: 4px 4px 0 0;
          border-radius: 4px 4px 0 0; }
        .blog-area .blog-post-wrapper .blog-post-item .blog-post-img .blog__date {
          position: absolute;
          top: 20px;
          left: 20px;
          background-color: #fff;
          text-transform: capitalize;
          font-weight: 500;
          color: #233d63;
          display: inline-block;
          padding: 8px 12px;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          z-index: 1;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
        .blog-area .blog-post-wrapper .blog-post-item .blog-post-img:before {
          position: absolute;
          content: '';
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background-color: #233d63;
          opacity: 0.2;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          -webkit-border-radius: 4px 4px 0 0;
          -moz-border-radius: 4px 4px 0 0;
          border-radius: 4px 4px 0 0; }
        .blog-area .blog-post-wrapper .blog-post-item .blog-post-img:after {
          position: absolute;
          content: '';
          bottom: -1px;
          left: 30px;
          width: 0;
          height: 0;
          border-left: 13px solid transparent;
          border-right: 13px solid transparent;
          border-bottom: 13px solid #fff; }
      .blog-area .blog-post-wrapper .blog-post-item .post-body {
        background-color: #fff;
        -webkit-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
        -moz-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
        box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
        border: 1px solid rgba(127, 136, 151, 0.2);
        border-top: transparent;
        -webkit-border-radius: 0 0 4px 4px;
        -moz-border-radius: 0 0 4px 4px;
        border-radius: 0 0 4px 4px;
        padding: 30px 30px 35px 30px; }
        .blog-area .blog-post-wrapper .blog-post-item .post-body .blog-title {
          margin-bottom: 20px; }
          .blog-area .blog-post-wrapper .blog-post-item .post-body .blog-title .blog__title {
            display: block;
            color: #233d63;
            font-size: 22px;
            font-weight: 600;
            line-height: 28px;
            -webkit-transition: all 0.3s;
            -moz-transition: all 0.3s;
            -ms-transition: all 0.3s;
            -o-transition: all 0.3s;
            transition: all 0.3s; }
            .blog-area .blog-post-wrapper .blog-post-item .post-body .blog-title .blog__title:hover {
              color: #51be78; }
        .blog-area .blog-post-wrapper .blog-post-item .post-body .blog__panel li {
          margin-right: 14px;
          position: relative; }
          .blog-area .blog-post-wrapper .blog-post-item .post-body .blog__panel li:after {
            position: absolute;
            content: '.';
            bottom: 3px;
            right: -10px;
            color: #7f8897;
            font-size: 24px; }
          .blog-area .blog-post-wrapper .blog-post-item .post-body .blog__panel li a {
            color: #7f8897;
            margin-left: 3px;
            display: inline-block;
            -webkit-transition: all 0.3s;
            -moz-transition: all 0.3s;
            -ms-transition: all 0.3s;
            -o-transition: all 0.3s;
            transition: all 0.3s; }
            .blog-area .blog-post-wrapper .blog-post-item .post-body .blog__panel li a:hover {
              color: #51be78; }
          .blog-area .blog-post-wrapper .blog-post-item .post-body .blog__panel li:last-child {
            margin-right: 0; }
            .blog-area .blog-post-wrapper .blog-post-item .post-body .blog__panel li:last-child:after {
              display: none; }
      .blog-area .blog-post-wrapper .blog-post-item:hover .blog-post-img .blog__date {
        background-color: #51be78;
        color: #fff; }
      .blog-area .blog-post-wrapper .blog-post-item:hover .blog-post-img:before {
        opacity: 0.5; }
  .blog-area:before, .blog-area:after {
    position: absolute;
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 536px;
    z-index: -1; }
    @media (max-width: 1199px) {
      .blog-area:before, .blog-area:after {
        height: 484px; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .blog-area:before, .blog-area:after {
        height: 611px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .blog-area:before, .blog-area:after {
        height: 629px; } }
    @media (max-width: 425px) {
      .blog-area:before, .blog-area:after {
        height: 595px; } }
    @media (max-width: 375px) {
      .blog-area:before, .blog-area:after {
        height: 561px; } }
    @media (max-width: 320px) {
      .blog-area:before, .blog-area:after {
        height: 525px; } }
  .blog-area:before {
    background-image: url("../images/img8.jpg");
    background-size: cover;
    background-position: center; }
  .blog-area:after {
    background-color: #233d63;
    opacity: 0.90; }
  .blog-area .owl-dots {
    text-align: center;
    margin-top: 26px; }
    .blog-area .owl-dots div {
      width: 14px;
      height: 14px;
      line-height: 14px;
      background-color: rgba(127, 136, 151, 0.4);
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      display: inline-block;
      margin: 0 2px;
      position: relative;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s;
      -webkit-transform: scale(0.7);
      -moz-transform: scale(0.7);
      -ms-transform: scale(0.7);
      -o-transform: scale(0.7);
      transform: scale(0.7); }
      .blog-area .owl-dots div.active, .blog-area .owl-dots div:hover {
        background-color: #51be78;
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1); }

/*-===============================
    BLOG AREA 2
===============================-*/
.blog-area2 {
  padding-bottom: 118px; }
  .blog-area2:before, .blog-area2:after {
    top: auto;
    bottom: 0;
    height: 360px; }
    @media (max-width: 1199px) {
      .blog-area2:before, .blog-area2:after {
        height: 410px; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .blog-area2:before, .blog-area2:after {
        height: 360px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .blog-area2:before, .blog-area2:after {
        height: 360px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .blog-area2:before, .blog-area2:after {
        height: 360px; } }
    @media (max-width: 320px) {
      .blog-area2:before, .blog-area2:after {
        height: 410px; } }

/*-===============================
    BLOG AREA 3
===============================-*/
.blog-area3 {
  padding-bottom: 120px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .blog-area3 {
      padding-bottom: 0; } }
  .blog-area3 .blog-post-wrapper {
    margin-top: 0; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .blog-area3 .blog-post-wrapper .col-lg-4 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .blog-area3 .blog-post-wrapper .blog-post-item {
        width: auto; } }
  .blog-area3:before, .blog-area3:after {
    display: none; }

/*-===============================
    BLOG AREA 4
===============================-*/
.blog-area4 {
  padding-top: 120px;
  padding-bottom: 120px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .blog-area4 {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .blog-area4 {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .blog-area4 {
      padding-bottom: 120px; } }
  .blog-area4 .blog-content-wrap .blog-item .blog-img-box {
    position: relative;
    -webkit-border-radius: 4px 4px 0 0;
    -moz-border-radius: 4px 4px 0 0;
    border-radius: 4px 4px 0 0; }
    .blog-area4 .blog-content-wrap .blog-item .blog-img-box img {
      width: 100%;
      -webkit-border-radius: 4px 4px 0 0;
      -moz-border-radius: 4px 4px 0 0;
      border-radius: 4px 4px 0 0; }
    .blog-area4 .blog-content-wrap .blog-item .blog-img-box .blog__date {
      position: absolute;
      top: 20px;
      left: 20px;
      background-color: #fff;
      text-transform: capitalize;
      font-weight: 500;
      color: #233d63;
      display: inline-block;
      padding: 8px 12px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      z-index: 1;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
    .blog-area4 .blog-content-wrap .blog-item .blog-img-box:after {
      position: absolute;
      content: '';
      bottom: -1px;
      left: 30px;
      width: 0;
      height: 0;
      border-left: 20px solid transparent;
      border-right: 20px solid transparent;
      border-bottom: 20px solid #fff; }
  .blog-area4 .blog-content-wrap .blog-item .blog-content {
    border: 1px solid rgba(127, 136, 151, 0.2);
    border-top: 0;
    -webkit-border-radius: 0 0 4px 4px;
    -moz-border-radius: 0 0 4px 4px;
    border-radius: 0 0 4px 4px;
    padding: 30px 30px 35px 30px;
    margin-bottom: 60px; }
    .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__title {
      font-size: 40px;
      line-height: 50px;
      color: #233d63;
      font-weight: 600; }
      @media (max-width: 480px) {
        .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__title {
          font-size: 30px;
          line-height: 35px; } }
    .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__list {
      margin-top: 10px;
      margin-bottom: 30px;
      padding-bottom: 30px;
      border-bottom: 1px solid rgba(127, 136, 151, 0.2); }
      .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__list li {
        display: inline-block;
        margin-right: 10px; }
        .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__list li:last-child {
          margin-right: 0; }
        .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__list li .la {
          margin-right: 5px; }
        .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__list li a {
          color: #7f8897;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__list li a:hover {
            color: #51be78; }
    .blog-area4 .blog-content-wrap .blog-item .blog-content .blog__desc {
      line-height: 28px;
      margin-bottom: 15px; }
    .blog-area4 .blog-content-wrap .blog-item .blog-content .content-requirement .blog__title {
      font-size: 24px; }
    .blog-area4 .blog-content-wrap .blog-item .blog-content .content-requirement .content__list {
      margin-bottom: 20px; }
      .blog-area4 .blog-content-wrap .blog-item .blog-content .content-requirement .content__list li {
        position: relative;
        padding-left: 15px;
        margin-bottom: 10px; }
        .blog-area4 .blog-content-wrap .blog-item .blog-content .content-requirement .content__list li:last-child {
          margin-bottom: 0; }
        .blog-area4 .blog-content-wrap .blog-item .blog-content .content-requirement .content__list li:after {
          position: absolute;
          width: 6px;
          height: 6px;
          content: '';
          -webkit-border-radius: 50%;
          -moz-border-radius: 50%;
          border-radius: 50%;
          background-color: #7f8897;
          top: 6px;
          left: 0; }
    .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item {
      margin-top: 35px;
      border-top: 1px solid rgba(127, 136, 151, 0.2);
      padding-top: 35px;
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center; }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item {
          display: block; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item {
          display: block; } }
      .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul {
        display: -webkit-flex;
        display: -ms-flex;
        display: flex;
        -ms-flex-align: center;
        align-items: center; }
        @media (max-width: 425px) {
          .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul {
            display: block; } }
        .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul li {
          margin-right: 5px; }
          @media (max-width: 425px) {
            .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul li {
              display: inline-block; } }
          .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul li span {
            color: #233d63;
            font-weight: 600; }
        @media (max-width: 425px) {
          .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul.tag__list li {
            margin-bottom: 15px; } }
        .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul.tag__list li a {
          background-color: rgba(81, 190, 120, 0.1);
          color: #51be78;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          padding: 5px 12px;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul.tag__list li a:hover {
            background-color: #51be78;
            color: #fff; }
        .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul.social__links {
          margin-left: auto; }
          @media only screen and (min-width: 480px) and (max-width: 767px) {
            .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul.social__links {
              margin-top: 20px; } }
          @media only screen and (min-width: 320px) and (max-width: 479px) {
            .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul.social__links {
              margin-top: 20px; } }
          .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul.social__links li a {
            width: 35px;
            height: 35px;
            line-height: 35px;
            text-align: center;
            background-color: rgba(81, 190, 120, 0.1);
            color: #51be78;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border-radius: 50%;
            display: block;
            -webkit-transition: all 0.3s;
            -moz-transition: all 0.3s;
            -ms-transition: all 0.3s;
            -o-transition: all 0.3s;
            transition: all 0.3s; }
            .blog-area4 .blog-content-wrap .blog-item .blog-content .tags-item ul.social__links li a:hover {
              background-color: #51be78;
              color: #fff; }
  .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-wrap__title {
    font-size: 24px;
    font-weight: 600; }
  .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content {
    margin-top: 40px;
    margin-bottom: 40px; }
    .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content .instructor-img .instructor__avatar img {
      width: 150px;
      height: 150px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      margin-right: 20px; }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content .instructor-img .instructor__avatar img {
          margin-right: 0;
          margin-bottom: 20px; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content .instructor-img .instructor__avatar img {
          margin-right: 0;
          margin-bottom: 20px; } }
    .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content .instructor-details .instructor-titles {
      margin-bottom: 20px; }
      .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content .instructor-details .instructor-titles .instructor__title {
        font-size: 22px;
        font-weight: 600; }
    .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content .instructor-details .instructor-desc .instructor__text {
      line-height: 28px;
      margin-bottom: 15px; }
    .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content .instructor-details .instructor-desc .instructor__links {
      color: #233d63;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content .instructor-details .instructor-desc .instructor__links:hover {
        color: #51be78; }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content.d-flex {
      display: block !important; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .blog-area4 .blog-content-wrap .blog-item .instructor-wrap .instructor-content.d-flex {
      display: block !important; } }
  .blog-area4 .blog-content-wrap .blog-item .comments-wrapper .contact-title {
    margin-bottom: 35px; }
  .blog-area4 .blog-content-wrap .blog-item .comments-wrapper .comments-list li .comment .comment-body .meta-data {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -ms-flex-align: center;
    align-items: center; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .blog-area4 .blog-content-wrap .blog-item .comments-wrapper .comments-list li .comment .comment-body .meta-data {
        display: block; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .blog-area4 .blog-content-wrap .blog-item .comments-wrapper .comments-list li .comment .comment-body .meta-data {
        display: block; } }
    .blog-area4 .blog-content-wrap .blog-item .comments-wrapper .comments-list li .comment .comment-body .meta-data .comment__author {
      margin-bottom: 0; }
    .blog-area4 .blog-content-wrap .blog-item .comments-wrapper .comments-list li .comment .comment-body .meta-data .comment__date {
      margin-left: auto; }

/*-===============================
    TEAM DETAILS AREA
===============================-*/
.team-detail-area {
  padding-top: 120px;
  padding-bottom: 90px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .team-detail-area {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .team-detail-area {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .team-detail-area {
      padding-bottom: 120px; } }
  .team-detail-area .team-single-img {
    position: relative;
    z-index: 1; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .team-detail-area .team-single-img {
        margin-bottom: 60px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .team-detail-area .team-single-img {
        margin-bottom: 60px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .team-detail-area .team-single-img {
        margin-bottom: 60px; } }
    .team-detail-area .team-single-img img {
      width: 100%;
      -webkit-border-radius: 15px 0 15px 15px;
      -moz-border-radius: 15px 0 15px 15px;
      border-radius: 15px 0 15px 15px; }
    .team-detail-area .team-single-img:after {
      position: absolute;
      content: '';
      height: 100%;
      width: 100%;
      left: -45px;
      bottom: -52px;
      z-index: -1;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      background-image: url("../images/dots.png");
      background-size: cover;
      background-position: center;
      opacity: 0.1; }
  .team-detail-area .team-single-content {
    padding-left: 30px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .team-detail-area .team-single-content {
        padding-left: 0; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .team-detail-area .team-single-content {
        padding-left: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .team-detail-area .team-single-content {
        padding-left: 0; } }
    .team-detail-area .team-single-content .tsd-box .tsd-item .tsdi__title {
      font-size: 26px;
      font-weight: 600;
      margin-bottom: 25px; }
    .team-detail-area .team-single-content .tsd-box .tsd-item .tsdi__meta {
      font-size: 24px;
      font-weight: 500; }
    .team-detail-area .team-single-content .tsd-box .tsd-item .tsdi__list li {
      position: relative;
      font-weight: 500;
      margin-bottom: 10px;
      padding-left: 20px; }
      .team-detail-area .team-single-content .tsd-box .tsd-item .tsdi__list li:last-child {
        margin-bottom: 0; }
      .team-detail-area .team-single-content .tsd-box .tsd-item .tsdi__list li:after {
        position: absolute;
        content: "";
        top: 6px;
        left: 0;
        width: 10px;
        height: 10px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: rgba(127, 136, 151, 0.4); }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .team-detail-area .team-single-content .tsd-box .education-detail {
        margin-top: 35px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .team-detail-area .team-single-content .tsd-box .education-detail {
        margin-top: 35px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .team-detail-area .team-single-content .tsd-box .education-detail {
        margin-top: 35px; } }
    .team-detail-area .team-single-content .tsd-box-2 {
      margin-bottom: 33px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .team-detail-area .team-single-content .tsd-box-3 .col-lg-4 {
        -ms-flex: 0 0 33%;
        flex: 0 0 33%;
        max-width: 33%; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .team-detail-area .team-single-content .tsd-box-3 .col-lg-4 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%; } }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .team-detail-area .team-single-content .tsd-box-3 .tsd-item {
        margin-bottom: 30px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .team-detail-area .team-single-content .tsd-box-3 .tsd-item {
        margin-bottom: 30px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .team-detail-area .team-single-content .tsd-box-3 .tsd-item {
        margin-bottom: 30px; } }
    .team-detail-area .team-single-content .tsd-box-3 .tsd-item .tsdi__title {
      margin-bottom: 15px; }
    .team-detail-area .team-single-content .ts__contact {
      margin-top: 34px; }
      .team-detail-area .team-single-content .ts__contact li {
        display: block;
        position: relative;
        margin-bottom: 10px; }
        .team-detail-area .team-single-content .ts__contact li:last-child {
          margin-bottom: 0; }
        .team-detail-area .team-single-content .ts__contact li a {
          color: #7f8897;
          font-weight: 500;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .team-detail-area .team-single-content .ts__contact li a span {
            margin-right: 10px;
            width: 34px;
            height: 34px;
            line-height: 34px;
            text-align: center;
            color: #51be78;
            -webkit-border-radius: 50%;
            -moz-border-radius: 50%;
            border-radius: 50%;
            -webkit-transition: all 0.3s;
            -moz-transition: all 0.3s;
            -ms-transition: all 0.3s;
            -o-transition: all 0.3s;
            transition: all 0.3s;
            position: relative;
            background-color: rgba(81, 190, 120, 0.1); }
          .team-detail-area .team-single-content .ts__contact li a:hover {
            color: #51be78; }
            .team-detail-area .team-single-content .ts__contact li a:hover span {
              background-color: #51be78;
              color: #fff; }
  .team-detail-area .about-tab-wrap {
    margin-top: 60px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .team-detail-area .about-tab-wrap {
        margin-top: 30px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .team-detail-area .about-tab-wrap {
        margin-top: 30px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .team-detail-area .about-tab-wrap {
        margin-top: 30px; } }
    .team-detail-area .about-tab-wrap .course-tab-list {
      border-bottom: 0;
      margin-bottom: 25px; }
      .team-detail-area .about-tab-wrap .course-tab-list li {
        margin-right: 5px; }
        .team-detail-area .about-tab-wrap .course-tab-list li a {
          display: block;
          color: #51be78;
          font-weight: 500;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px;
          background-color: rgba(81, 190, 120, 0.1);
          padding: 8px 20px; }
          .team-detail-area .about-tab-wrap .course-tab-list li a.active {
            background-color: #51be78;
            color: #fff; }
    .team-detail-area .about-tab-wrap .tab-content .pane-body {
      background-color: #fff;
      padding: 30px 35px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
      -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
      box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
      line-height: 28px; }
  .team-detail-area .instructor-all-course {
    margin-top: 60px; }
    .team-detail-area .instructor-all-course .instructor-all-course__title {
      margin-bottom: 40px;
      padding-bottom: 20px;
      border-bottom: 1px solid rgba(127, 136, 151, 0.2); }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .team-detail-area .instructor-all-course .col-lg-4 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%; } }

/*-===============================
    PACKAGE AREA
===============================-*/
.package-area {
  padding-top: 120px;
  padding-bottom: 90px;
  position: relative; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .package-area {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .package-area {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .package-area {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .package-area .package-content-wrap .col-lg-4 {
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%; } }
  .package-area .package-content-wrap .package-item {
    background-color: #fff;
    -webkit-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
    -moz-box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
    box-shadow: 0 0 40px rgba(14, 16, 48, 0.05);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    padding: 42px 40px 45px 40px;
    margin-bottom: 30px;
    position: relative;
    z-index: 1; }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .package-area .package-content-wrap .package-item {
        width: auto; } }
    .package-area .package-content-wrap .package-item .package-tooltip {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      -webkit-border-radius: 4px 4px 0 0;
      -moz-border-radius: 4px 4px 0 0;
      border-radius: 4px 4px 0 0; }
      .package-area .package-content-wrap .package-item .package-tooltip .package__tooltip {
        background-color: #51be78;
        color: #fff;
        font-weight: 600;
        text-align: center;
        display: block;
        -webkit-border-radius: 4px 4px 0 0;
        -moz-border-radius: 4px 4px 0 0;
        border-radius: 4px 4px 0 0;
        padding: 15px 0;
        font-size: 18px;
        position: relative;
        z-index: 1; }
    .package-area .package-content-wrap .package-item .package-title {
      border-bottom: 1px solid rgba(127, 136, 151, 0.1);
      padding-bottom: 33px;
      margin-bottom: 35px; }
      .package-area .package-content-wrap .package-item .package-title .package__price {
        font-size: 50px;
        font-weight: 600;
        margin-bottom: 10px; }
      .package-area .package-content-wrap .package-item .package-title .package__title {
        font-size: 24px;
        font-weight: 600;
        margin-bottom: 6px; }
    .package-area .package-content-wrap .package-item .package-list {
      padding-bottom: 33px; }
      .package-area .package-content-wrap .package-item .package-list li {
        font-weight: 500;
        margin-bottom: 15px; }
        .package-area .package-content-wrap .package-item .package-list li span {
          color: #38BB0C;
          font-size: 15px;
          margin-right: 2px; }
          .package-area .package-content-wrap .package-item .package-list li span.la-close {
            color: #DD493D; }
        .package-area .package-content-wrap .package-item .package-list li:last-child {
          margin-bottom: 0; }
    .package-area .package-content-wrap .package-item .package-price .theme-btn {
      display: block;
      width: 100%;
      text-align: center;
      background-color: transparent;
      border: 1px solid #51be78;
      color: #51be78; }
      .package-area .package-content-wrap .package-item .package-price .theme-btn:hover {
        background-color: #51be78;
        color: #fff; }
    .package-area .package-content-wrap .package-item .package-price .package__meta {
      text-transform: uppercase;
      letter-spacing: 2px;
      font-weight: 500;
      margin-top: 23px;
      font-size: 15px; }
  .package-area .package-content-wrap .package-item2 {
    padding-top: 95px;
    margin-top: -24px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .package-area .package-content-wrap .package-item2 {
        margin-top: 0; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .package-area .package-content-wrap .package-item2 {
        margin-top: 0; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .package-area .package-content-wrap .package-item2 {
        margin-top: 0; } }
    .package-area .package-content-wrap .package-item2 .package-price .theme-btn {
      background-color: #51be78;
      color: #fff; }

/*-===============================
    PAGINATION-WRAP
===============================-*/
.pagination-wrap {
  margin-top: 25px; }
  .pagination-wrap .pagination .page-item .page-link {
    color: #51be78;
    background-color: rgba(81, 190, 120, 0.1);
    font-size: 18px;
    margin-left: 3px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    border: none;
    width: 40px;
    height: 40px;
    line-height: 39px;
    text-align: center;
    padding: 0; }
  .pagination-wrap .pagination .page-item:hover .page-link,
  .pagination-wrap .pagination .page-item.active .page-link {
    background-color: #51be78;
    color: #fff; }

/*-===============================
    SIDEBAR
===============================-*/
.sidebar {
  position: relative; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .sidebar {
      margin-top: 60px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .sidebar {
      margin-top: 60px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .sidebar {
      margin-top: 60px; } }
  .sidebar .sidebar-widget {
    margin-bottom: 30px;
    border: 1px solid rgba(127, 136, 151, 0.2);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    padding: 30px; }
    .sidebar .sidebar-widget .contact-form-action form .form-group {
      position: relative;
      margin-bottom: 0; }
      .sidebar .sidebar-widget .contact-form-action form .form-group .form-control {
        padding-left: 20px; }
      .sidebar .sidebar-widget .contact-form-action form .form-group .search__btn {
        position: absolute;
        top: 50%;
        right: 20px;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        transform: translateY(-50%);
        border: none;
        background-color: transparent;
        color: #233d63;
        font-size: 18px;
        outline: none;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .sidebar .sidebar-widget .contact-form-action form .form-group .subscriber__btn {
        background-color: #51be78;
        width: 40px;
        height: 40px;
        line-height: 40px;
        right: 15px;
        color: #fff;
        font-size: 20px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%; }
        .sidebar .sidebar-widget .contact-form-action form .form-group .subscriber__btn:hover {
          background-color: #233d63; }
    .sidebar .sidebar-widget:last-child {
      margin-bottom: 0; }
    .sidebar .sidebar-widget .widget__title {
      font-weight: 600;
      font-size: 24px;
      margin-bottom: 10px; }
    .sidebar .sidebar-widget .section__divider {
      display: inline-block;
      position: relative;
      height: 4px;
      -webkit-border-radius: 2px;
      -moz-border-radius: 2px;
      border-radius: 2px;
      background-color: #51be78;
      width: 50px;
      margin-bottom: 18px;
      overflow: hidden; }
      .sidebar .sidebar-widget .section__divider:after {
        content: '';
        position: absolute;
        left: 15px;
        top: -1.1px;
        height: 7px;
        width: 8px;
        background-color: #fff; }
    .sidebar .sidebar-widget .widget__list li {
      display: block;
      margin-bottom: 12px;
      position: relative;
      padding-left: 20px; }
      .sidebar .sidebar-widget .widget__list li:after {
        position: absolute;
        content: "";
        top: 6px;
        left: 0;
        width: 10px;
        height: 10px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        border: 1px solid rgba(127, 136, 151, 0.5);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .sidebar .sidebar-widget .widget__list li:last-child {
        margin-bottom: 0; }
      .sidebar .sidebar-widget .widget__list li a {
        display: block;
        color: #7f8897;
        text-transform: capitalize;
        font-weight: 500;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .sidebar .sidebar-widget .widget__list li a:hover {
          color: #51be78; }
      .sidebar .sidebar-widget .widget__list li:hover:after {
        background-color: #51be78;
        border-color: #51be78; }
    .sidebar .sidebar-widget .recent-item {
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      margin-bottom: 25px;
      padding-bottom: 25px;
      border-bottom: 1px solid rgba(127, 136, 152, 0.1); }
      @media (max-width: 375px) {
        .sidebar .sidebar-widget .recent-item {
          display: block; } }
      .sidebar .sidebar-widget .recent-item:last-child {
        margin-bottom: 0;
        padding-bottom: 0;
        border-bottom: none; }
      .sidebar .sidebar-widget .recent-item .recent-img {
        width: 85px;
        height: 100px;
        margin-right: 15px;
        flex-shrink: 0; }
        @media (max-width: 375px) {
          .sidebar .sidebar-widget .recent-item .recent-img {
            margin-right: 0;
            margin-bottom: 15px; } }
        .sidebar .sidebar-widget .recent-item .recent-img img {
          width: 100%;
          height: 100%;
          -webkit-border-radius: 4px;
          -moz-border-radius: 4px;
          border-radius: 4px; }
      .sidebar .sidebar-widget .recent-item .recentpost-body .recent__meta a {
        color: #7f8897;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .sidebar .sidebar-widget .recent-item .recentpost-body .recent__meta a:hover {
          color: #51be78; }
      .sidebar .sidebar-widget .recent-item .recentpost-body .recent__link {
        font-size: 16px;
        font-weight: 600;
        display: block;
        margin-top: 5px;
        margin-bottom: 5px; }
        .sidebar .sidebar-widget .recent-item .recentpost-body .recent__link a {
          color: #233d63;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
          .sidebar .sidebar-widget .recent-item .recentpost-body .recent__link a:hover {
            color: #51be78; }
      .sidebar .sidebar-widget .recent-item .recentpost-body .recent-course__price {
        color: #233d63;
        font-weight: 500; }
        .sidebar .sidebar-widget .recent-item .recentpost-body .recent-course__price span {
          text-decoration: line-through;
          margin-left: 3px;
          color: #7f8897; }
      .sidebar .sidebar-widget .recent-item .button-shared {
        width: 100%;
        text-align: center; }
        .sidebar .sidebar-widget .recent-item .button-shared .theme-btn {
          display: block;
          width: 100%;
          line-height: 50px;
          padding-right: 20px;
          padding-left: 20px;
          background-color: #fff;
          color: #233d63;
          border: 1px solid rgba(127, 136, 152, 0.2); }
          .sidebar .sidebar-widget .recent-item .button-shared .theme-btn:hover {
            background-color: #51be78;
            color: #fff;
            border-color: #51be78; }
    .sidebar .sidebar-widget .social__links li {
      display: inline-block; }
      .sidebar .sidebar-widget .social__links li a {
        color: #51be78;
        display: block;
        width: 40px;
        height: 40px;
        text-align: center;
        line-height: 40px;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: rgba(81, 190, 120, 0.1);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .sidebar .sidebar-widget .social__links li a:hover {
          background-color: #51be78;
          color: #fff; }
    .sidebar .sidebar-widget .rating__list {
      margin-top: 0;
      margin-bottom: 0; }
      .sidebar .sidebar-widget .rating__list li {
        display: block;
        padding-right: 0;
        padding-bottom: 10px; }
        .sidebar .sidebar-widget .rating__list li .review-label {
          display: inline-block;
          margin-top: 4px;
          float: left;
          margin-right: 28px; }
    .sidebar .sidebar-widget .courses-ordering {
      position: relative; }
      .sidebar .sidebar-widget .courses-ordering .target-course {
        width: 100%;
        border: 1px solid rgba(127, 136, 151, 0.2);
        padding: 15px 0 15px 20px;
        font-size: 16px;
        color: #7f8897;
        -webkit-appearance: none;
        -moz-appearance: none;
        -ms-appearance: none;
        -o-appearance: none;
        cursor: pointer;
        outline: none;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        background-color: transparent;
        font-weight: 500; }
      .sidebar .sidebar-widget .courses-ordering:before {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        transform: translateY(-50%);
        font-family: "LineAwesome";
        font-size: 15px;
        color: #7f8897;
        pointer-events: none;
        display: inline-block;
        content: "\f110";
        right: 13px; }
  .sidebar .tag-widget .widget__list li {
    padding-left: 0;
    display: inline-block; }
    .sidebar .tag-widget .widget__list li:after {
      display: none; }
    .sidebar .tag-widget .widget__list li a {
      border: 1px solid rgba(127, 136, 152, 0.2);
      padding: 4px 14px;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      display: block; }
      .sidebar .tag-widget .widget__list li a:hover {
        background-color: #51be78;
        color: #fff;
        border-color: #51be78; }
  .sidebar .instructor-widget .button-shared {
    width: 100%;
    text-align: center; }
    .sidebar .instructor-widget .button-shared .theme-btn {
      display: block;
      width: 100%;
      line-height: 50px;
      padding-right: 20px;
      padding-left: 20px;
      background-color: #fff;
      color: #233d63;
      border: 1px solid rgba(127, 136, 152, 0.2); }
      @media (max-width: 320px) {
        .sidebar .instructor-widget .button-shared .theme-btn {
          padding-right: 15px;
          padding-left: 15px; } }
      .sidebar .instructor-widget .button-shared .theme-btn:hover {
        background-color: #51be78;
        color: #fff;
        border-color: #51be78; }

/*== rating__list ==*/
.rating__list {
  margin-top: 25px;
  margin-bottom: 45px; }
  .rating__list li {
    display: inline-block;
    padding-right: 20px; }
    @media (max-width: 400px) {
      .rating__list li {
        display: block;
        padding-right: 0;
        padding-bottom: 30px; } }
    .rating__list li .la-star {
      color: #F68A03;
      font-size: 16px; }
    .rating__list li:last-child {
      padding-right: 0; }
    .rating__list li .review-label {
      display: block;
      position: relative;
      user-select: none;
      margin-top: 5px; }
      .rating__list li .review-label input {
        opacity: 0;
        position: absolute;
        cursor: pointer; }
        .rating__list li .review-label input:checked ~ .review-mark {
          border-color: #F68A03; }
          .rating__list li .review-label input:checked ~ .review-mark:before {
            opacity: 1;
            -webkit-transform: scale(1);
            -moz-transform: scale(1);
            -ms-transform: scale(1);
            -o-transform: scale(1);
            transform: scale(1); }
      .rating__list li .review-label .review-mark {
        position: absolute;
        top: 0;
        left: 0;
        width: 18px;
        height: 18px;
        cursor: pointer;
        border-width: 2px;
        border-style: solid;
        border-color: #eee;
        border-image: initial;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .rating__list li .review-label .review-mark:before {
          top: 2px;
          left: 2px;
          position: absolute;
          content: '';
          width: 10px;
          height: 10px;
          background-color: #F68A03;
          opacity: 0;
          -webkit-transform: scale(0.1);
          -moz-transform: scale(0.1);
          -ms-transform: scale(0.1);
          -o-transform: scale(0.1);
          transform: scale(0.1);
          -webkit-border-radius: 50%;
          -moz-border-radius: 50%;
          border-radius: 50%;
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }

/*-===============================
    CONTACT
===============================-*/
.contact-area {
  padding-top: 120px;
  padding-bottom: 120px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .contact-area {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .contact-area {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .contact-area {
      padding-bottom: 120px; } }
  .contact-area .contact-item {
    background-color: #fff;
    padding: 35px 30px;
    -webkit-box-shadow: 0 0 40px rgba(14, 16, 48, 0.01);
    -moz-box-shadow: 0 0 40px rgba(14, 16, 48, 0.01);
    box-shadow: 0 0 40px rgba(14, 16, 48, 0.01);
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    border: 1px solid rgba(126, 60, 249, 0.2);
    margin-bottom: 30px;
    text-align: center;
    position: relative;
    overflow: hidden;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    .contact-area .contact-item .contact__icon {
      color: #7E3CF9;
      font-size: 50px;
      position: relative;
      width: 80px;
      height: 80px;
      line-height: 80px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      background-color: rgba(126, 60, 249, 0.1);
      text-align: center;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
    .contact-area .contact-item .contact__title {
      font-weight: 600;
      font-size: 24px;
      position: relative;
      margin-top: 23px;
      margin-bottom: 20px;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
    .contact-area .contact-item .contact__desc {
      line-height: 28px;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
    .contact-area .contact-item .contact__list li {
      margin-bottom: 10px;
      font-weight: 500; }
      .contact-area .contact-item .contact__list li:last-child {
        margin-bottom: 0; }
      .contact-area .contact-item .contact__list li a {
        color: #7f8897;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .contact-area .contact-item .contact__list li:hover a {
        color: #51be78; }
    .contact-area .contact-item:before, .contact-area .contact-item:after {
      content: '';
      width: 191px;
      height: 191px;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      background-color: #fff;
      opacity: .1;
      position: absolute;
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -ms-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
    .contact-area .contact-item:before {
      top: 0;
      right: 0;
      -webkit-transform: translate(60%, -60%);
      -moz-transform: translate(60%, -60%);
      -ms-transform: translate(60%, -60%);
      -o-transform: translate(60%, -60%);
      transform: translate(60%, -60%); }
    .contact-area .contact-item:after {
      bottom: 0;
      left: 0;
      -webkit-transform: translate(-60%, 60%);
      -moz-transform: translate(-60%, 60%);
      -ms-transform: translate(-60%, 60%);
      -o-transform: translate(-60%, 60%);
      transform: translate(-60%, 60%); }
    .contact-area .contact-item:hover {
      border-color: #51be78;
      background-color: #51be78; }
      .contact-area .contact-item:hover .contact__title,
      .contact-area .contact-item:hover .contact__desc,
      .contact-area .contact-item:hover .contact__list li a {
        color: #fff; }
      .contact-area .contact-item:hover .contact__icon {
        color: #51be78;
        background-color: #fff; }
      .contact-area .contact-item:hover:before {
        -webkit-transform: translate(30%, -30%);
        -moz-transform: translate(30%, -30%);
        -ms-transform: translate(30%, -30%);
        -o-transform: translate(30%, -30%);
        transform: translate(30%, -30%); }
      .contact-area .contact-item:hover:after {
        -webkit-transform: translate(-30%, 30%);
        -moz-transform: translate(-30%, 30%);
        -ms-transform: translate(-30%, 30%);
        -o-transform: translate(-30%, 30%);
        transform: translate(-30%, 30%); }
  .contact-area .contact-item2 {
    border: 1px solid rgba(246, 138, 3, 0.2); }
    .contact-area .contact-item2 .contact__icon {
      color: #F68A03;
      background-color: rgba(246, 138, 3, 0.2); }
  .contact-area .contact-item3 {
    border: 1px solid rgba(53, 143, 247, 0.2); }
    .contact-area .contact-item3 .contact__icon {
      color: #358FF7;
      background-color: rgba(53, 143, 247, 0.2); }
  .contact-area .contact-form-wrap {
    margin-top: 90px; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .contact-area .contact-form-wrap .section-heading {
        margin-bottom: 60px; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .contact-area .contact-form-wrap .section-heading {
        margin-bottom: 60px; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .contact-area .contact-form-wrap .section-heading {
        margin-bottom: 60px; } }
    @media (max-width: 320px) {
      .contact-area .contact-form-wrap .section-heading .section__title {
        font-size: 30px; } }
    .contact-area .contact-form-wrap .section-heading .section__list li {
      display: inline-block; }
      .contact-area .contact-form-wrap .section-heading .section__list li a {
        color: #51be78; }
        .contact-area .contact-form-wrap .section-heading .section__list li a i {
          width: 35px;
          height: 35px;
          line-height: 35px;
          text-align: center;
          -webkit-border-radius: 50%;
          -moz-border-radius: 50%;
          border-radius: 50%;
          background-color: rgba(81, 190, 120, 0.1);
          -webkit-transition: all 0.3s;
          -moz-transition: all 0.3s;
          -ms-transition: all 0.3s;
          -o-transition: all 0.3s;
          transition: all 0.3s; }
        .contact-area .contact-form-wrap .section-heading .section__list li a:hover i {
          background-color: #51be78;
          color: #fff; }

/*-===============================
    MPA AREA
===============================-*/
.map-container #map {
  width: 100%;
  height: 500px; }
  @media (max-width: 481px) {
    .map-container #map {
      height: 400px; } }

.map-container #map .gm-style .gmnoprint,
.map-container #map .gm-style button.gm-control-active.gm-fullscreen-control,
.map-container #map .gm-style .gm-style-cc {
  display: none; }

/*-===============================
    SUBSCRIBER AREA
===============================-*/
.subscriber-area {
  padding-top: 115px;
  padding-bottom: 100px;
  position: relative; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .subscriber-area {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .subscriber-area {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .subscriber-area {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .subscriber-area .section-heading {
      text-align: center; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .subscriber-area .section-heading {
      text-align: center; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .subscriber-area .section-heading {
      text-align: center; } }
  .subscriber-area .subscriber-form-wrap {
    height: 100%;
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    position: relative;
    z-index: 1; }
    .subscriber-area .subscriber-form-wrap .subscriber-form {
      position: relative;
      width: 100%; }
      @media (max-width: 375px) {
        .subscriber-area .subscriber-form-wrap .subscriber-form {
          text-align: center; } }
      .subscriber-area .subscriber-form-wrap .subscriber-form .form-control {
        height: auto;
        line-height: inherit;
        padding: 20px 20px 20px 50px;
        font-size: 16px;
        color: #233d63;
        border-color: rgba(127, 136, 151, 0.2);
        font-weight: 400;
        background-color: #fff;
        -webkit-box-shadow: 0 0 40px rgba(14, 16, 48, 0.06);
        -moz-box-shadow: 0 0 40px rgba(14, 16, 48, 0.06);
        box-shadow: 0 0 40px rgba(14, 16, 48, 0.06);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px; }
        .subscriber-area .subscriber-form-wrap .subscriber-form .form-control:focus {
          border-color: rgba(127, 136, 151, 0.4); }
      .subscriber-area .subscriber-form-wrap .subscriber-form .la-envelope-o {
        position: absolute;
        top: 22px;
        left: 20px;
        font-size: 18px; }
      .subscriber-area .subscriber-form-wrap .subscriber-form .theme-btn {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        transform: translateY(-50%);
        right: 8px;
        line-height: 50px; }
        @media (max-width: 375px) {
          .subscriber-area .subscriber-form-wrap .subscriber-form .theme-btn {
            position: inherit;
            top: auto;
            right: auto;
            -webkit-transform: translateY(0);
            -moz-transform: translateY(0);
            -ms-transform: translateY(0);
            -o-transform: translateY(0);
            transform: translateY(0);
            margin-top: 20px; } }
  .subscriber-area:before, .subscriber-area:after {
    position: absolute;
    content: '';
    top: -100px;
    left: 30px;
    width: 200px;
    height: 200px;
    background-position: center;
    background-image: url("../images/dots.png");
    background-size: cover;
    opacity: 0.2;
    z-index: -1;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%; }
  .subscriber-area:after {
    top: auto;
    left: auto;
    bottom: 0;
    right: 30px; }

/*======== contact-form-action =========*/
.contact-form-action form .form-group {
  margin-bottom: 20px; }
  .contact-form-action form .form-group .course-filter .courses-ordering {
    width: 100%; }
  .contact-form-action form .form-group .birthday-filter .courses-ordering {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .contact-form-action form .form-group .birthday-filter .courses-ordering {
        display: block; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .contact-form-action form .form-group .birthday-filter .courses-ordering {
        display: block; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .contact-form-action form .form-group .birthday-filter .courses-ordering {
        display: block; } }
    .contact-form-action form .form-group .birthday-filter .courses-ordering:before {
      display: none; }
    .contact-form-action form .form-group .birthday-filter .courses-ordering span {
      width: 153px;
      margin-right: 5px;
      position: relative; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .contact-form-action form .form-group .birthday-filter .courses-ordering span {
          width: 100%;
          margin-right: 0; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .contact-form-action form .form-group .birthday-filter .courses-ordering span {
          width: 100%;
          margin-right: 0; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .contact-form-action form .form-group .birthday-filter .courses-ordering span {
          width: 100%;
          margin-right: 0; } }
      .contact-form-action form .form-group .birthday-filter .courses-ordering span:before {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        transform: translateY(-50%);
        font-family: "LineAwesome";
        font-size: 15px;
        color: #7f8897;
        pointer-events: none;
        display: inline-block;
        content: "\f110";
        right: 13px; }
      .contact-form-action form .form-group .birthday-filter .courses-ordering span:nth-of-type(3) {
        margin-right: 0; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .contact-form-action form .form-group .birthday-filter .courses-ordering span .target-course {
          margin-bottom: 15px; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .contact-form-action form .form-group .birthday-filter .courses-ordering span .target-course {
          margin-bottom: 15px; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .contact-form-action form .form-group .birthday-filter .courses-ordering span .target-course {
          margin-bottom: 15px; } }
  .contact-form-action form .form-group .form-label {
    color: #233d63;
    text-transform: capitalize;
    font-weight: 500; }
  .contact-form-action form .form-group .gender-control {
    margin-right: 5px; }
    .contact-form-action form .form-group .gender-control:nth-of-type(2) {
      margin-right: 0; }
  .contact-form-action form .form-group .form-control {
    height: auto;
    width: 100%;
    line-height: inherit;
    padding: 15px 20px 15px 50px;
    font-size: 16px;
    color: #233d63;
    border-color: rgba(127, 136, 151, 0.2);
    font-weight: 400;
    background-color: #fff;
    resize: none;
    -webkit-box-shadow: 0 0 0 0;
    -moz-box-shadow: 0 0 0 0;
    box-shadow: 0 0 0 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px; }
    .contact-form-action form .form-group .form-control:focus {
      border-color: rgba(127, 136, 151, 0.5); }
  .contact-form-action form .form-group .input-icon {
    position: absolute;
    top: 18px;
    left: 40px;
    font-size: 18px; }
  .contact-form-action form .form-group .search-icon {
    position: absolute;
    top: 50%;
    right: 16px;
    -webkit-transform: translateY(-50%) rotate(-90deg);
    -moz-transform: translateY(-50%) rotate(-90deg);
    -ms-transform: translateY(-50%) rotate(-90deg);
    -o-transform: translateY(-50%) rotate(-90deg);
    transform: translateY(-50%) rotate(-90deg);
    font-size: 18px;
    cursor: pointer;
    padding: 17px; }
  .contact-form-action form .form-group .message-control {
    height: 150px; }

.contact-form-action form .gender-group {
  margin-bottom: 30px; }
  .contact-form-action form .gender-group .form-label {
    margin-right: 8px; }

.contact-form-action form .theme-btn {
  outline: none; }

/*====================================================
    form-shared
 ====================================================*/
.form-shared {
  padding-top: 120px;
  padding-bottom: 90px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .form-shared {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .form-shared {
      padding-bottom: 120px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .form-shared {
      padding-bottom: 120px; } }
  .form-shared .contact-form-action {
    background-color: #fff;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    -moz-box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    box-shadow: 0 0 40px rgba(82, 85, 90, 0.1);
    padding: 46px 30px 42px 30px;
    border: 1px solid #eee; }
    .form-shared .contact-form-action .form-heading {
      margin-bottom: 33px; }
      .form-shared .contact-form-action .form-heading .form__title {
        font-size: 40px;
        color: #233d63;
        font-weight: 600;
        margin-bottom: 8px; }
        @media (max-width: 320px) {
          .form-shared .contact-form-action .form-heading .form__title {
            font-size: 30px; } }
      .form-shared .contact-form-action .form-heading .form__desc {
        font-size: 18px;
        color: #7f8897;
        font-weight: 500; }
      .form-shared .contact-form-action .form-heading .reset__desc {
        line-height: 30px;
        margin-top: 15px; }
        .form-shared .contact-form-action .form-heading .reset__desc a {
          color: #51be78; }
    .form-shared .contact-form-action form .form-group .sign-btn {
      width: 100%; }
      @media (max-width: 992px) {
        .form-shared .contact-form-action form .form-group .sign-btn {
          padding: 0; } }
      @media (max-width: 767px) {
        .form-shared .contact-form-action form .form-group .sign-btn {
          padding: 0; } }
    .form-shared .contact-form-action form .form-group .btn__google {
      background-color: #DD493D; }
    .form-shared .contact-form-action form .form-group .btn__facebook {
      background-color: #3E5B99; }
    .form-shared .contact-form-action form .form-group .btn__twitter {
      background-color: #3AAAE1; }
    .form-shared .contact-form-action form .form-group .reset__btn {
      margin-top: 0; }
    .form-shared .contact-form-action form .form-condition {
      margin-bottom: 25px; }
    .form-shared .contact-form-action form .account-assist {
      margin-top: 15px; }
      .form-shared .contact-form-action form .account-assist .account__desc {
        font-size: 16px;
        color: #7f8897;
        font-weight: 500; }
        .form-shared .contact-form-action form .account-assist .account__desc a {
          color: #51be78; }
          .form-shared .contact-form-action form .account-assist .account__desc a:hover {
            color: #42be6f; }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .form-shared .contact-form-action form .account-assist .account__desc.text-right {
            text-align: left !important; } }
        @media only screen and (min-width: 320px) and (max-width: 479px) {
          .form-shared .contact-form-action form .account-assist .account__desc.text-right {
            text-align: left !important; } }
      .form-shared .contact-form-action form .account-assist .account__desc2 {
        font-size: 20px;
        position: relative;
        margin-bottom: 32px; }
        .form-shared .contact-form-action form .account-assist .account__desc2:before {
          position: absolute;
          content: '';
          left: 0;
          top: 50%;
          width: 45%;
          height: 1px;
          background-color: #BDBBBC;
          -webkit-transform: translateY(-50%);
          -moz-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          -o-transform: translateY(-50%);
          transform: translateY(-50%); }
        .form-shared .contact-form-action form .account-assist .account__desc2:after {
          position: absolute;
          content: '';
          right: 0;
          top: 50%;
          width: 45%;
          height: 1px;
          background-color: #BDBBBC;
          -webkit-transform: translateY(-50%);
          -moz-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          -o-transform: translateY(-50%);
          transform: translateY(-50%); }

/*-===============================
    custom-checkbox
===============================-*/
.custom-checkbox {
  margin-bottom: 8px; }
  @media (max-width: 375px) {
    .custom-checkbox {
      margin-bottom: 0; } }
  .custom-checkbox label {
    color: #7f8897;
    font-size: 16px;
    font-weight: 500; }
    .custom-checkbox label a {
      color: #51be78;
      -webkit-transition: all 0.3s;
      -moz-transition: all 0.3s;
      -ms-transition: all 0.3s;
      -o-transition: all 0.3s;
      transition: all 0.3s; }
      .custom-checkbox label a:hover {
        color: #42be6f;
        text-decoration: underline; }
  .custom-checkbox .pass__desc {
    color: #51be78;
    font-weight: 600;
    float: right; }
    @media (max-width: 375px) {
      .custom-checkbox .pass__desc {
        float: none;
        text-align: left;
        display: block;
        margin-top: 5px; } }
    .custom-checkbox .pass__desc:hover {
      color: #42be6f; }
  .custom-checkbox input[type=checkbox]:not(:checked),
  .custom-checkbox input[type=checkbox]:checked {
    position: absolute;
    left: -9999px; }
  .custom-checkbox input[type=checkbox]:not(:checked) + label,
  .custom-checkbox input[type=checkbox]:checked + label {
    position: relative;
    padding-left: 26px;
    cursor: pointer; }
  .custom-checkbox input[type=checkbox]:not(:checked) + label:before,
  .custom-checkbox input[type=checkbox]:checked + label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 3px;
    width: 18px;
    height: 18px;
    border: 1px solid rgba(127, 136, 151, 0.4);
    background-color: #fff;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    border-radius: 2px; }
  .custom-checkbox input[type=checkbox]:not(:checked) + label:after,
  .custom-checkbox input[type=checkbox]:checked + label:after {
    content: '\f00c';
    position: absolute;
    top: 1px;
    left: 3px;
    font-size: 13px;
    color: #fff;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    font-family: FontAwesome,sans-serif; }
  .custom-checkbox input[type=checkbox]:not(:checked) + label:after {
    opacity: 0;
    visibility: hidden; }
  .custom-checkbox input[type=checkbox]:checked + label:after {
    opacity: 1;
    visibility: visible; }
  .custom-checkbox input[type=checkbox]:checked + label:before {
    background-color: #51be78;
    border-color: #51be78; }

/*-===============================
    FOOTER AREA
===============================-*/
.footer-area {
  position: relative;
  padding-bottom: 40px;
  padding-top: 160px;
  z-index: 1;
  overflow: hidden; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .footer-area {
      padding-top: 345px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .footer-area {
      padding-top: 120px;
      background-color: #233d63; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .footer-area {
      padding-top: 120px;
      background-color: #233d63; } }
  .footer-area .ocean {
    height: 67%;
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0;
    background-color: #233d63; }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .footer-area .ocean {
        display: none; } }
    .footer-area .ocean .wave {
      background: url(../images/wave.svg) repeat-x;
      position: absolute;
      top: -198px;
      width: 6400px;
      height: 350px;
      -webkit-animation: wave 55s cubic-bezier(0.36, 0.45, 0.63, 0.93) infinite;
      animation: wave 55s cubic-bezier(0.36, 0.45, 0.63, 0.93) infinite;
      -webkit-transform: translate3d(0, 0, 0);
      transform: translate3d(0, 0, 0); }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .footer-area .ocean .wave {
          height: 230px; } }
      .footer-area .ocean .wave:nth-of-type(2) {
        top: -175px;
        -webkit-animation: wave 55s cubic-bezier(0.36, 0.45, 0.63, 0.93) -0.125s infinite, swell 55s ease -1.25s infinite;
        animation: wave 55s cubic-bezier(0.36, 0.45, 0.63, 0.93) -0.125s infinite, swell 55s ease -1.25s infinite;
        opacity: 1; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .footer-area .footer-widget {
      margin-bottom: 40px; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .footer-area .footer-widget {
      margin-bottom: 40px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .footer-area .footer-widget {
      margin-bottom: 40px; } }
  .footer-area .footer-widget .footer__logo {
    width: 150px; }
  .footer-area .footer-widget .footer-title {
    text-transform: capitalize;
    font-weight: 600;
    position: relative;
    margin-bottom: 20px;
    font-size: 24px;
    color: #fff; }
  .footer-area .footer-widget .section__divider {
    display: inline-block;
    position: relative;
    height: 5px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    background-color: #9ea6ba;
    width: 50px;
    margin-bottom: 32px;
    overflow: hidden; }
    .footer-area .footer-widget .section__divider:after {
      content: '';
      position: absolute;
      left: 0;
      top: -0.1px;
      height: 5px;
      width: 5px;
      background-color: #fff;
      -webkit-animation-duration: 3s;
      animation-duration: 3s;
      -webkit-animation-timing-function: linear;
      animation-timing-function: linear;
      -webkit-animation-iteration-count: infinite;
      animation-iteration-count: infinite;
      -webkit-animation-name: MOVE-BG2;
      animation-name: MOVE-BG2; }
  .footer-area .footer-widget a {
    color: #9ea6ba;
    font-weight: 500;
    text-transform: capitalize;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    -ms-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s; }
    .footer-area .footer-widget a:hover {
      color: #51be78; }
  .footer-area .footer-widget .footer-address {
    margin-top: 38px;
    line-height: 30px;
    font-weight: 500; }
    .footer-area .footer-widget .footer-address li {
      display: block;
      color: #9ea6ba;
      line-height: 24px;
      margin-bottom: 7px; }
  .footer-area .footer-widget .footer-social {
    margin-top: 25px; }
    .footer-area .footer-widget .footer-social li {
      display: inline-block;
      margin-right: 2px; }
      .footer-area .footer-widget .footer-social li:last-child {
        margin-right: 0; }
      .footer-area .footer-widget .footer-social li a {
        display: block;
        width: 40px;
        height: 40px;
        text-align: center;
        line-height: 40px;
        -webkit-border-radius: 10px;
        -moz-border-radius: 10px;
        border-radius: 10px;
        background-color: rgba(158, 166, 186, 0.1); }
        .footer-area .footer-widget .footer-social li a:hover {
          background-color: #51be78;
          color: #fff; }
  .footer-area .footer-widget .footer-link li {
    margin-bottom: 12px; }
    .footer-area .footer-widget .footer-link li:last-child {
      margin-bottom: 0; }
    .footer-area .footer-widget .footer-link li a {
      position: relative;
      padding-left: 15px; }
      .footer-area .footer-widget .footer-link li a:after {
        position: absolute;
        content: '';
        top: 9px;
        left: 0;
        width: 5px;
        height: 2px;
        background-color: #9ea6ba;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
      .footer-area .footer-widget .footer-link li a i {
        width: 32px;
        height: 32px;
        line-height: 32px;
        text-align: center;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        background-color: rgba(63, 65, 97, 0.1);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s;
        font-size: 15px;
        margin-right: 5px; }
      .footer-area .footer-widget .footer-link li a:hover:after {
        width: 10px;
        background-color: #51be78; }
      .footer-area .footer-widget .footer-link li a:hover i {
        color: #fff; }
  .footer-area .footer-widget .social-link {
    text-align: left; }
    .footer-area .footer-widget .social-link li {
      margin-bottom: 15px; }
      .footer-area .footer-widget .social-link li a {
        padding: 20px 20px 20px 60px;
        display: block;
        background-color: rgba(158, 166, 186, 0.1);
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        font-size: 22px;
        position: relative; }
        @media (max-width: 575px) {
          .footer-area .footer-widget .social-link li a {
            display: inline-block;
            width: 210px; } }
        .footer-area .footer-widget .social-link li a i {
          left: 20px;
          top: 15px;
          font-size: 30px;
          position: absolute;
          width: auto;
          height: auto;
          -webkit-border-radius: 0;
          -moz-border-radius: 0;
          border-radius: 0;
          background-color: transparent; }
        .footer-area .footer-widget .social-link li a:hover {
          background-color: #fff; }
          .footer-area .footer-widget .social-link li a:hover i {
            color: #51be78; }
        .footer-area .footer-widget .social-link li a:after {
          display: none; }
  .footer-area .copyright-content {
    margin-top: 90px;
    padding-top: 40px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    position: relative; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .footer-area .copyright-content {
        margin-top: 40px;
        text-align: center; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .footer-area .copyright-content {
        margin-top: 40px;
        text-align: center; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .footer-area .copyright-content {
        margin-top: 40px;
        text-align: center; } }
    .footer-area .copyright-content .copy__desc {
      color: #9ea6ba; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .footer-area .copyright-content .copy__desc {
          margin-bottom: 30px; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .footer-area .copyright-content .copy__desc {
          margin-bottom: 30px; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .footer-area .copyright-content .copy__desc {
          margin-bottom: 30px; } }
      .footer-area .copyright-content .copy__desc a {
        color: #9ea6ba;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        -ms-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s; }
        .footer-area .copyright-content .copy__desc a:hover {
          color: #51be78; }
    .footer-area .copyright-content .language-select {
      text-align: right;
      position: relative; }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .footer-area .copyright-content .language-select {
          width: 30%;
          margin-left: auto;
          margin-right: auto;
          text-align: center; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .footer-area .copyright-content .language-select {
          width: 33%;
          margin-left: auto;
          margin-right: auto;
          text-align: center; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .footer-area .copyright-content .language-select {
          width: 45%;
          margin-left: auto;
          margin-right: auto;
          text-align: center; } }
      .footer-area .copyright-content .language-select .target-lang {
        width: 100%;
        border: 1px solid rgba(255, 255, 255, 0.2);
        padding: 10px 0 10px 35px;
        font-size: 16px;
        color: #9ea6ba;
        -webkit-appearance: none;
        -moz-appearance: none;
        -ms-appearance: none;
        -o-appearance: none;
        cursor: pointer;
        outline: none;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        border-radius: 4px;
        background-color: transparent;
        font-weight: 500; }
      .footer-area .copyright-content .language-select:before, .footer-area .copyright-content .language-select:after {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        -o-transform: translateY(-50%);
        transform: translateY(-50%);
        font-family: "LineAwesome";
        font-size: 15px;
        color: #9ea6ba;
        pointer-events: none;
        display: inline-block; }
      .footer-area .copyright-content .language-select:before {
        content: "\f113";
        right: 13px; }
      .footer-area .copyright-content .language-select:after {
        content: "\f219";
        left: 13px; }

/*=== wave ===*/
@-webkit-keyframes wave {
  0% {
    margin-left: 0; }
  100% {
    margin-left: -1600px; } }

@keyframes wave {
  0% {
    margin-left: 0; }
  100% {
    margin-left: -1600px; } }

@-webkit-keyframes swell {
  0%, 100% {
    -webkit-transform: translate3d(0, -25px, 0);
    transform: translate3d(0, -25px, 0); }
  50% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); } }

@keyframes swell {
  0%, 100% {
    -webkit-transform: translate3d(0, -25px, 0);
    transform: translate3d(0, -25px, 0); }
  50% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0); } }

/*=== scroll-top ===*/
#scroll-top {
  position: fixed;
  right: 0;
  bottom: 50px;
  background-color: #fff;
  color: #7f8897;
  font-size: 24px;
  z-index: 9999;
  width: 50px;
  height: 45px;
  line-height: 43px;
  -webkit-border-radius: 30px 0 0 30px;
  -moz-border-radius: 30px 0 0 30px;
  border-radius: 30px 0 0 30px;
  text-align: center;
  cursor: pointer;
  -webkit-box-shadow: 0 10px 40px rgba(14, 16, 48, 0.06);
  -moz-box-shadow: 0 10px 40px rgba(14, 16, 48, 0.06);
  box-shadow: 0 10px 40px rgba(14, 16, 48, 0.06);
  border: 1px solid rgba(127, 136, 151, 0.3);
  border-right: 0;
  padding-left: 4px;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s; }
  #scroll-top:hover {
    background-color: #51be78;
    border-color: #51be78;
    color: #fff; }
/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX3BsdWdpbi5zY3NzIiwiX21peGluLnNjc3MiLCJfcmVzcG9uc2l2ZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5cdFRlbXBsYXRlIE5hbWU6IEFkdWNhXG5cdFZlcnNpb246IDEuMFxuXHRBdXRob3I6IHRlY2h5ZGV2c1xuXHRBdXRob3IgRW1haWw6IGNvbnRhY3RAdGVjaHlkZXZzLmNvbVxuXHREZXNjcmlwdGlvbjogQWR1Y2EgLSBMZWFybmluZyAmIE9ubGluZSBFZHVjYXRpb24gSFRNTCBUZW1wbGF0ZVxuXG4qL1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbltUYWJsZSBvZiBjb250ZW50c11cblx0KyBHZW5lcmFsXG5cdFx0LSBHbG9iYWwgU3R5bGVzXG5cdFx0LSBnZW5lcmFsIFN0eWxlc1xuXHRcdC0gUHJlbG9hZGVyXG5cdFx0LSBCYWNrIFRvIFRvcFxuXHRcdC0gdGhlbWUtYnRuXG5cdFx0LSBzZWN0aW9uLWhlYWRpbmdcblx0XHQtIE1vdmUgYmdcblx0XHQtIE1vdmUgYmcgMlxuXHRcdC0gc2VjdGlvbiBkaXZpZGVyXG5cdCsgSGVhZGVyXG5cdFx0LSBMb2dvXG5cdFx0LSBDYXRlZ29yeVxuXHRcdC0gU2VhY2ggZm9ybVxuXHRcdC0gTWFpbiBOYXZpZ2F0aW9uXG5cdFx0LSBEcm9wZG93blxuXHRcdC0gT2ZmY2FudmFzIG1lbnVcblx0XHQtIEFkbWlzc2lvblxuXHQrIENvbnRlbnRcblx0XHQrIE1haW4gRmlsZXNcblx0XHRcdC0gaW5kZXguaHRtbFxuXHRcdFx0LSBob21lLTIuaHRtbFxuXHRcdCsgQmFubmVyIEFyZWFcblx0XHRcdC0gQnJlYWRjcnVtYlxuXHQgICAgKyBBYm91dFxuXHQgICAgICAgIC0gQWJvdXQgdXNcblx0ICAgICsgQ291cnNlc1xuXHQgICAgICAgIC0gQ291cnNlIEdyaWRcblx0ICAgICAgICAtIENvdXJzZSBEZXRhaWxcblx0XHQrIFBhZ2VzXG5cdFx0XHQtIFRlYWNoZXJcblx0XHRcdC0gVGVhY2hlciBEZXRhaWxcblx0XHRcdC0gRkFRc1xuXHRcdFx0LSBBZG1pc3Npb25cblx0XHRcdC0gR2FsbGVyeVxuXHRcdFx0LSBQcmljaW5nIFRhYmxlXG5cdFx0XHQtIFNpbmcgdXBcblx0XHRcdC0gTG9nIGluXG5cdFx0XHQtIEVycm9yIDQwNCBwYWdlXG5cdFx0KyBCbG9nXG5cdFx0ICAgIC0gQmxvZyBHcmlkXG5cdFx0ICAgIC0gQmxvZyBTaW5nbGVcblx0XHQrIENvbnRhY3Rcblx0XHQgICAgLSBDb250YWN0XG5cdCsgRm9vdGVyXG5cdFx0KyBUb3AgRm9vdGVyXG5cdFx0XHQtIExvZ29cblx0XHRcdC0gQ29tcGFueVxuXHRcdFx0LSBDb3Vyc2VzXG5cdFx0XHQtIE1vYmlsZSBhcHBcblx0XHQrIEJvdHRvbSBGb290ZXJcblx0XHQgICAgLSBDb3B5cmlnaHRcblx0XHQgICAgLSBMYW5ndWFnZSBTZWxlY3Rcblx0KyBSZXNwb25zaXZlIERlc2lnbiBTdHlsZXNcbiAgICAgICAgICAgIC0gJGxhcHRvcF9sczogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDE5MTlweCknO1xuICAgICAgICAgICAgLSAkbGFwdG9wX2w6ICcobWF4LXdpZHRoOiAxNDQwcHgpJztcbiAgICAgICAgICAgIC0gJGxhcHRvcF9tOiAnKG1heC13aWR0aDogMTM2NnB4KSc7XG4gICAgICAgICAgICAtICRsYXB0b3BfbV90d286ICcobWF4LXdpZHRoOiAxMjgwcHgpJztcbiAgICAgICAgICAgIC0gJGxhcHRvcF9tX3RocmVlOiAnKG1heC13aWR0aDogMTIwMHB4KSc7XG4gICAgICAgICAgICAtICRsYXB0b3BfbV9mb3VyOiAnKG1heC13aWR0aDogMTE5OXB4KSc7XG4gICAgICAgICAgICAtICRsYXB0b3BfbV9maXZlOiAnKG1heC13aWR0aDogMTAyNHB4KSc7XG4gICAgICAgICAgICAtICRsYXB0b3BfbV9zaXg6ICcobWluLXdpZHRoOiAxMjAwcHgpJztcbiAgICAgICAgICAgIC0gJG1lZGl1bV9kZXZpY2U6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogOTkycHgpIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpJztcbiAgICAgICAgICAgIC0gJHRhYl9kZXZpY2U6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCknO1xuICAgICAgICAgICAgLSAkdGFiX2RldmljZS1hbmQtbW9iaWxlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSBhbmQgKG1heC13aWR0aDogOTkwcHgpJztcbiAgICAgICAgICAgIC0gJHRhYl9kZXZpY2VfdHdvOiAnKG1heC13aWR0aDogNzY4cHgpJztcbiAgICAgICAgICAgIC0gJHRhYl9kZXZpY2VfdGhyZWU6ICcobWF4LXdpZHRoOiA5OTFweCknO1xuICAgICAgICAgICAgLSAkdGFiX2RldmljZV9mb3VyOiAnKG1pbi13aWR0aDogOTkxcHgpJztcbiAgICAgICAgICAgIC0gJGxhcmdlX21vYmlsZTogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA0ODBweCkgYW5kIChtYXgtd2lkdGg6IDc2N3B4KSc7XG4gICAgICAgICAgICAtICRsYXJnZV9tb2JpbGVfdHdvOiAnIChtYXgtd2lkdGg6IDYwMHB4KSc7XG4gICAgICAgICAgICAtICRsYXJnZV9tb2JpbGVfdGhyZWU6ICcgKG1heC13aWR0aDogNTc1cHgpJztcbiAgICAgICAgICAgIC0gJGxhcmdlX21vYmlsZV9mb3VyOiAnIChtYXgtd2lkdGg6IDQ4MHB4KSc7XG4gICAgICAgICAgICAtICRzbWFsbF9tb2JpbGU6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIGFuZCAobWF4LXdpZHRoOiA0NzlweCknO1xuICAgICAgICAgICAgLSAkc21hbGxfbW9iaWxlX29uZTogJyAobWF4LXdpZHRoOiA0MjVweCknO1xuICAgICAgICAgICAgLSAkc21hbGxfbW9iaWxlX3R3bzogJyhtYXgtd2lkdGg6IDQwMHB4KSc7XG4gICAgICAgICAgICAtICRzbWFsbF9tb2JpbGVfdGhyZWU6ICcobWF4LXdpZHRoOiAzMjBweCknO1xuICAgICAgICAgICAgLSAkc21hbGxfbW9iaWxlX2ZvdXI6ICcobWF4LXdpZHRoOiAzNzVweCknO1xuICAgICAgICAgICAgLSAkZGV2aWNlLTE2MDA6ICcobWF4LXdpZHRoOiAxNjAwcHgpJztcbiAgICAgICAgICAgIC0gJGRldmljZS03Njc6ICcobWF4LXdpZHRoOiA3NjdweCknO1xuICAgICAgICAgICAgLSAkZGV2aWNlLTk5MjogJyhtYXgtd2lkdGg6IDk5MnB4KSc7XG4gICAgICAgICAgICAtICRkZXZpY2UtNzY3OiAnKG1heC13aWR0aDogNzY3cHgpJztcbiAgICAgICAgICAgIC0gJGRldmljZS00ODE6ICcobWF4LXdpZHRoOiA0ODFweCknO1xuICAgICAgICAgICAgLSAkZGV2aWNlLTM4NDogJyhtYXgtd2lkdGg6IDM4NHB4KSc7XG4tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9TGlicmUrRnJhbmtsaW46MTAwLDIwMCwzMDAsNDAwLDUwMCw2MDAsNzAwJmRpc3BsYXk9c3dhcCcpO1xuXG5AaW1wb3J0IFwicGx1Z2luXCI7XG5AaW1wb3J0IFwibWl4aW5cIjtcbkBpbXBvcnQgXCJyZXNwb25zaXZlXCI7XG5cbioge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG51bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuYTpob3ZlcixcbmE6Zm9jdXN7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBjb2xvcjogJHRoZW1lLWNvbG9yO1xufVxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG4gIG1hcmdpbjogMDtcbn1cbmJvZHkge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBmb250LWZhbWlseTogJHRoZW1lLWZvbnQ7XG4gIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tIGNvbnRhaW5lciAtLS0tLS0tLS0tLS0tLS0tKi9cbi5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICB9XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PSBsb2FkaW5nLWFyZWEgPT09PT09PT09PT09PT0tKi9cbi5wcmVsb2FkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgLmNzc2xvYWQtbG9hZGVyIHtcbiAgICB3aWR0aDogOTdweDtcbiAgICBoZWlnaHQ6IDE5cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIC01MCUpKTtcbiAgICA+IGRpdiB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDEwMCUpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYW5pbWF0aW9uOiBjc3Nsb2FkLXNoaWZ0IDIuM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW8tYW5pbWF0aW9uOiBjc3Nsb2FkLXNoaWZ0IDIuM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW1zLWFuaW1hdGlvbjogY3NzbG9hZC1zaGlmdCAyLjNzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjc3Nsb2FkLXNoaWZ0IDIuM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW1vei1hbmltYXRpb246IGNzc2xvYWQtc2hpZnQgMi4zcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjQ2cztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMC40NnM7XG4gICAgICAgIC1tcy1hbmltYXRpb24tZGVsYXk6IC0wLjQ2cztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjQ2cztcbiAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0wLjQ2cztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjkycztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMC45MnM7XG4gICAgICAgIC1tcy1hbmltYXRpb24tZGVsYXk6IC0wLjkycztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjkycztcbiAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0wLjkycztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjM4cztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMS4zOHM7XG4gICAgICAgIC1tcy1hbmltYXRpb24tZGVsYXk6IC0xLjM4cztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjM4cztcbiAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0xLjM4cztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjg0cztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMS44NHM7XG4gICAgICAgIC1tcy1hbmltYXRpb24tZGVsYXk6IC0xLjg0cztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjg0cztcbiAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0xLjg0cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLSBjc3Nsb2FkLXNoaWZ0IC0tLS0tLS0tLS0tLS0tLS0qL1xuQGtleWZyYW1lcyBjc3Nsb2FkLXNoaWZ0IHtcbiAgMCUge1xuICAgIGxlZnQ6IC0zN3B4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAlIHtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgOTAlIHtcbiAgICBsZWZ0OiA2MnB4O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMTAwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5ALW8ta2V5ZnJhbWVzIGNzc2xvYWQtc2hpZnQge1xuICAwJSB7XG4gICAgbGVmdDogLTM3cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMCUge1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA5MCUge1xuICAgIGxlZnQ6IDYycHg7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAxMDBweDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtbXMta2V5ZnJhbWVzIGNzc2xvYWQtc2hpZnQge1xuICAwJSB7XG4gICAgbGVmdDogLTM3cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMCUge1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA5MCUge1xuICAgIGxlZnQ6IDYycHg7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAxMDBweDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBjc3Nsb2FkLXNoaWZ0IHtcbiAgMCUge1xuICAgIGxlZnQ6IC0zN3B4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAlIHtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgOTAlIHtcbiAgICBsZWZ0OiA2MnB4O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMTAwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgY3NzbG9hZC1zaGlmdCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAtMzdweDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwJSB7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDkwJSB7XG4gICAgbGVmdDogNjJweDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDEwMHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLSB0aGVtZS1idG4gLS0tLS0tLS0tLS0tLS0tLSovXG4udGhlbWUtYnRuIHtcbiAgQGV4dGVuZCAldGhlbWUtYnRuO1xuICAmOmFmdGVyIHtcbiAgICBAZXh0ZW5kICV0aGVtZS1idG4tYWZ0ZXI7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShza2V3WCgwKSk7XG4gICAgICBvcGFjaXR5OiAuMjtcbiAgICB9XG4gIH1cbn1cbi50aGVtZS1idG4yIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLSBzZWN0aW9uLWhlYWRpbmcgLS0tLS0tLS0tLS0tLS0tLSovXG4uc2VjdGlvbi1oZWFkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICAuc2VjdGlvbl9fbWV0YSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTM7XG4gICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC42cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbiAgfVxuICAuc2VjdGlvbl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJHByaW1hcnktZm9udDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb25fX3RpdGxlMixcbiAgLnNlY3Rpb25fX21ldGEye1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgLnNlY3Rpb25fX21ldGEyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIH1cbiAgLnNlY3Rpb25fX21ldGEzIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgIHBhZGRpbmc6IDZweCAxNXB4O1xuICB9XG4gIC5zZWN0aW9uX19kZXNjIHtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzNHB4O1xuICB9XG4gIC5zZWN0aW9uX19kZXNjMiB7XG4gICAgZm9udC1zaXplOiAkZGlzcGxheS0xMTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgfVxuICAuc2VjdGlvbl9fZGl2aWRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIHdpZHRoOiA5MHB4O1xuICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAtMS4xcHg7XG4gICAgICBoZWlnaHQ6IDdweDtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogM3M7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDNzO1xuICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBNT1ZFLUJHO1xuICAgICAgYW5pbWF0aW9uLW5hbWU6IE1PVkUtQkc7XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uX19kaXZpZGVyMiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLS0tIE1PVkUtQkctLS0tLS0tLS0tLS0tLS0tKi9cbkAtd2Via2l0LWtleWZyYW1lcyBNT1ZFLUJHIHtcbiAgIGZyb20ge1xuICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgfVxuICAgdG8ge1xuICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg4OHB4KTtcbiAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDg4cHgpO1xuICAgfVxuIH1cbkAtd2Via2l0LWtleWZyYW1lcyBNT1ZFLUJHIHtcbiAgZnJvbSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgdG8ge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODhweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDg4cHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgTU9WRS1CRyB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODhweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDg4cHgpO1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0gTU9WRS1CRyAyIC0tLS0tLS0tLS0tLS0tLS0qL1xuQC13ZWJraXQta2V5ZnJhbWVzIE1PVkUtQkcyIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0OHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDhweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBNT1ZFLUJHMiB7XG4gIGZyb20ge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIHRvIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0OHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1PVkUtQkcyIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0OHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDhweCk7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLSBzZWN0aW9uLWRpdmlkZXIgLS0tLS0tLS0tLS0tLS0tLSovXG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIGhlYWRlci1tZW51LWFyZWFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5oZWFkZXItbWVudS1hcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxMDIzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHBhZGRpbmctcmlnaHQ6IDE4NXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE4NXB4O1xuICBAbWVkaWEgI3skZGV2aWNlLTE2MDB9IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBAbWVkaWEgI3skZGV2aWNlLTE2MDB9IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgfVxuICB9XG4gIC5oZWFkZXItdG9wIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgIC5jb2wtbGctNiB7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZV90d299IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLXdpZGdldCB7XG4gICAgICB1bCB7XG4gICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2VfdHdvfSB7XG4gICAgICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5sYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5mYSB7XG4gICAgICAgICAgICB3aWR0aDogMzBweDtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MSwgMTkwLCAxMjAsIDAuMSk7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmNvbnRhY3QtaW5mbyB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2VfdHdvfSB7XG4gICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmZpcnN0LWNoaWxkLFxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLXdpZGdldDEge1xuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXItd2lkZ2V0MiB7XG4gICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgIH1cbiAgICAgIC5oZWFkZXItcmlnaHQtaW5mbyB7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlX3R3b30ge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi51c2VyLWFjdGlvbiB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiBub25lO1xuICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi51c2VyLWNhcnQge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAudXNlci1jYXJ0LWJ0biB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogN3B4IDE1cHggMTNweCAxNXB4O1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgICAgICAgICAgbGVmdDogLTIyNXB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAyODBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgdG9wOiA0NXB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDI1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MgY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMS4yNzUpKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjgpKTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IC0xMjVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgICAgICAgICAgbGVmdDogLTI0MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLnRoZW1lLWJ0biB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC0zO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDJweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIHRvcDogLTdweDtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg0NWRlZykpO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygtMnB4IC0ycHggMTBweCAtNXB4IHJnYmEoMCwwLDAsLjIpKTtcbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTIwcHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1pdGVtIHtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNvY2lhbC1pbmZvIHtcbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaGVhZGVyLXJpZ2h0LWluZm8uZC1mbGV4IHtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLXdpZGdldDIuZC1mbGV4IHtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlci13aWRnZXQyLmp1c3RpZnktY29udGVudC1lbmQge1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2VfdHdvfSB7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZXN0YWdlLW1lbnUtY29udGVudCB7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgLmNvbC1sZy0zIHtcbiAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMzAlO1xuICAgICAgICBmbGV4OiAwIDAgMzAlO1xuICAgICAgICBtYXgtd2lkdGg6IDMwJTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNDAlO1xuICAgICAgICBmbGV4OiAwIDAgNDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDQwJTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA4NSU7XG4gICAgICAgIGZsZXg6IDAgMCA4NSU7XG4gICAgICAgIG1heC13aWR0aDogODUlO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb2wtbGctOSB7XG4gICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDcwJTtcbiAgICAgICAgZmxleDogMCAwIDcwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA3MCU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDYwJTtcbiAgICAgICAgZmxleDogMCAwIDYwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA2MCU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMTUlO1xuICAgICAgICBmbGV4OiAwIDAgMTUlO1xuICAgICAgICBtYXgtd2lkdGg6IDE1JTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAubG9nby1ib3gge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICB3aWR0aDogMTEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5sb2dvIHtcbiAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaGVhZGVyLWNhdGVnb3J5IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDFweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgLmZhLXRoIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTJcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgdG9wOiA1OHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMzIwcHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMCAyNXB4IDA7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KSk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSg4MiwgODUsIDkwLCAwLjEpKTtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC44KSk7XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjEwcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yMTBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xNTBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTY1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMzAwcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAubGEtYW5nbGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAzcHg7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICAubGEtYW5nbGUtcmlnaHQge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgdG9wOiAtMjRweDtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IDMyMHB4O1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDI4MHB4O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogMjVweCAwIDI1cHggMDtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSkpO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDgyLCA4NSwgOTAsIDAuMSkpO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuOCkpO1xuICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMHMpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAwIDApO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwcyk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDAgMCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvdHRvbTogLTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmxhLWFuZ2xlLXJpZ2h0IHtcbiAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC05MGRlZykpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC05MGRlZykpO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KC0ycHggLTJweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMikpO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICByaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51LXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAtbXMtZmxleC1wYWNrOiBlbmQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgICAgLmNvbnRhY3QtZm9ybS1hY3Rpb24ge1xuICAgICAgICB3aWR0aDogNTAwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzVweDtcbiAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIHdpZHRoOiAzODBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMzVweDtcbiAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDM0cHg7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQwcHg7XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBib3R0b206IDM2cHg7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHRvcDogNThweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDIxMHB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDMwcHggMjVweCAzMHB4O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSkpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuOCkpO1xuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOiAtMnB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgdG9wOiAtN3B4O1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxM3B4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDQ1ZGVnKSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygtMnB4IC0ycHggMTBweCAtNXB4IHJnYmEoMCwwLDAsLjIpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubG9nby1yaWdodC1idXR0b24ge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMztcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zaWRlLW1lbnUtb3BlbiB7XG4gICAgICAgICAgd2lkdGg6IDI3cHg7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNXB4KTtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICAgbWFyZ2luLXRvcDogLTM2cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAubWVudV9fYmFyIHtcbiAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAubWVudV9fYmFyIHtcbiAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zaWRlLW5hdi1jb250YWluZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMzIwcHg7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47XG4gICAgei1pbmRleDogOTk5O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC40cyBjdWJpYy1iZXppZXIoMC43LCAwLCAwLjIsIDEpKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoLTEwMCUpKTtcbiAgICAuaHVtYnVyZ2VyLW1lbnUge1xuICAgICAgLmh1bWJ1cmdlci1tZW51LWxpbmVzIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgIGhlaWdodDogMjJweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjVweDtcbiAgICAgICAgcmlnaHQ6IDE4cHg7XG4gICAgICAgIG9wYWNpdHk6IC41O1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC00M2RlZykpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg0M2RlZykpO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgwKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zaWRlLW1lbnUtd3JhcCB7XG4gICAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICAgIC5zaWRlLW1lbnUtdWwge1xuICAgICAgICAuc2lkZW5hdl9faXRlbSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTRweCAyMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubWVudS1wbHVzLWljb24ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgIGhlaWdodDogNTBweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICY6YmVmb3JlLFxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiAyNHB4O1xuICAgICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICAgICBoZWlnaHQ6IDJweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC05MGRlZykpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zaWRlLXN1Yi1tZW51IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIC5tZW51LXBsdXMtaWNvbiB7XG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDBkZWcpKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2lkZS1idG4tYm94IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDQwcHg7XG4gICAgfVxuICAgICYuYWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVYKDApKTtcbiAgICB9XG4gIH1cbiAgJi5oZWFkZXItZml4ZWQge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNXMpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSg4MiwgODUsIDkwLCAwLjEpKTtcbiAgICAuZXN0YWdlLW1lbnUtY29udGVudCB7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNXMpO1xuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwYWRkaW5nLXRvcDogMjVweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgICB9XG4gICAgICAubG9nby1ib3gge1xuICAgICAgICAuaGVhZGVyLWNhdGVnb3J5IHtcbiAgICAgICAgICB1bCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgICAgdG9wOiA1MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1lbnUtd3JhcHBlciB7XG4gICAgICAgIC5tYWluLW1lbnUge1xuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgICB0b3A6IDUwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgaGVhZGVyLW1lbnUtYXJlYTJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5oZWFkZXItbWVudS1hcmVhMiB7XG4gIHBhZGRpbmctcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTs7XG4gIC5oZWFkZXItdG9wIHtcbiAgICBib3JkZXItYm90dG9tOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgLmhlYWRlci13aWRnZXQyIHtcbiAgICAgIC5oZWFkZXItcmlnaHQtaW5mbyB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAmLnVzZXItY2FydCB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZXN0YWdlLW1lbnUtY29udGVudCB7XG4gICAgLmxvZ28tYm94IHtcbiAgICAgIC5oZWFkZXItY2F0ZWdvcnkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA2MHB4O1xuICAgICAgICB1bCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAuZmEtdGgge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuZHJvcGRvd24tbWVudS1pdGVtIHtcbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tZW51LXdyYXBwZXIge1xuICAgICAgLm1haW4tbWVudSB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxvZ28tcmlnaHQtYnV0dG9uIHtcbiAgICAgICAgLnNvY2lhbC1pbmZvIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDM4cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM4cHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5oZWFkZXItZml4ZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICB9XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBzbGlkZXItYXJlYVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLnNsaWRlci1hcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAuc2luZ2xlLXNsaWRlLWl0ZW0ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nLXRvcDogMjUwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDMzMHB4O1xuICAgIHotaW5kZXg6IDI7XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgcGFkZGluZy10b3A6IDIwMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDMwMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNTBweDtcbiAgICB9XG4gICAgLnNsaWRlLWl0ZW0tdGFibGUge1xuICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIC5zbGlkZS1pdGVtLXRhYmxlY2VsbCB7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIC5jb2wtbGctOSB7XG4gICAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2xpZGVyLWhlYWRpbmcge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMjtcbiAgICAgIC5zbGlkZXJfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDEwMHB4O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI0cHg7XG4gICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0yO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA4MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0zO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGRldmljZS00ODF9IHtcbiAgICAgICAgICBmb250LXNpemU6ICRwcmltYXJ5LWZvbnQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zbGlkZXJfX3RleHQge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgICBsaW5lLWhlaWdodDogMjlweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgYnIge1xuICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnNsaWRlci1wcm9tby1idG4ge1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICAudmlkZW8tcGxheS1idG4ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICAgIGNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHdpZHRoOiA0M3B4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0M3B4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQxcHg7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNyk7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTE7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgb3BhY2l0eTogLjkwO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zaGFwZS5wbmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICB9XG4gIH1cbiAgLnNsaWRlLWJnMSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3NsaWRlci1pbWcxLmpwZ1wiKTtcbiAgfVxuICAuc2xpZGUtYmcyIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2xpZGVyLWltZzIuanBnXCIpO1xuICB9XG4gIC5zbGlkZS1iZzMge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zbGlkZXItaW1nMy5qcGdcIik7XG4gICAgLnNsaWRlci1oZWFkaW5nIHtcbiAgICAgIC5zbGlkZXItcHJvbW8tYnRuIHtcbiAgICAgICAgLnZpZGVvLXBsYXktYnRuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAub3dsLW5hdiB7XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgZGl2IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNTAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkpO1xuICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICAgICYub3dsLXByZXYge1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgfVxuICAgICAgJi5vd2wtbmV4dCB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAub3dsLWRvdHMge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDE0MHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBkaXYge1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgIGJvcmRlcjogMnB4IHNvbGlkICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCAzcHg7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MgZWFzZS1pbik7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAmLmFjdGl2ZSxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgLm93bC1uYXYge1xuICAgICAgZGl2IHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgJi5vd2wtcHJldiB7XG4gICAgICAgICAgbGVmdDogODBweDtcbiAgICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fdHdvfSB7XG4gICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLm93bC1uZXh0IHtcbiAgICAgICAgICByaWdodDogODBweDtcbiAgICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fdHdvfSB7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBzbGlkZXItYXJlYSAyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uc2xpZGVyLWFyZWEyIHtcbiAgLnNpbmdsZS1zbGlkZS1pdGVtIHtcbiAgICBwYWRkaW5nLXRvcDogMTgwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgcGFkZGluZy10b3A6IDE1MHB4O1xuICAgIH1cbiAgICAuY29sLWxnLTYge1xuICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA2MyU7XG4gICAgICAgIGZsZXg6IDAgMCA2MyU7XG4gICAgICAgIG1heC13aWR0aDogNjMlO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgI3BlcnRpY2xlcy1qcy0yIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gICAgLnNsaWRlci1oZWFkaW5nIHtcbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIC5zbGlkZXJfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0zO1xuICAgICAgICBsaW5lLWhlaWdodDogNzVweDtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNjVweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcHJpbWFyeS1mb250O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29udGFjdC1mb3JtLWFjdGlvbiB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuc2VhcmNoLWljb24ge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNztcbiAgICB9XG4gICAgLmhvdy13ZS13b3JrLWNvbnRlbnQge1xuICAgICAgYmFja2dyb3VuZDogIzQyOWI4NTtcbiAgICAgIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KC00NWRlZywgICM0MjliODUgMCUsICM1ZjdiOGMgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgtNDVkZWcsICAjNDI5Yjg1IDAlLCM1ZjdiOGMgMTAwJSk7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTM1ZGVnLCAgIzQyOWI4NSAwJSwjNWY3YjhjIDEwMCUpO1xuICAgICAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoIHN0YXJ0Q29sb3JzdHI9JyM0MjliODUnLCBlbmRDb2xvcnN0cj0nIzVmN2I4YycsR3JhZGllbnRUeXBlPTEgKTtcbiAgICAgIG1hcmdpbi10b3A6IDE1MHB4O1xuICAgICAgcGFkZGluZzogMzBweCAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICAuaG93LXdlLXdvcmstd3JhcCB7XG4gICAgICAgIC5jb2wtbGctNCB7XG4gICAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaG93LXdlLXdvcmstaXRlbSB7XG4gICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5sYSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTc7XG4gICAgICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1NXB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmhvdy13b3JrX190ZXh0IHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxNHB4O1xuICAgICAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaHd3X19zdWItdGl0bGUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5sYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmh3LWNpcmNsZSB7XG4gICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICBoZWlnaHQ6IDUwcHg7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3JkZXI6IDhweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIG9wYWNpdHk6IDAuMTtcbiAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgIHRvcDogLTIwcHg7XG4gICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgdG9wOiA3MyU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICByaWdodDogMTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zbGlkZS1iZzEge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zbGlkZXItaW1nNC5qcGdcIik7XG4gIH1cbn1cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIGFib3V0LWJyZWFkY3J1bWJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5hYm91dC1icmVhZGNydW1iIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDE2N3B4O1xuICBwYWRkaW5nLWJvdHRvbTogMTY3cHg7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9hYm91dC1icmVhZGNydW1iLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy10b3A6IDE0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNDBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgcGFkZGluZy10b3A6IDE0MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNDBweDtcbiAgfVxuICAuYnJlYWRjcnVtYi1jb250ZW50IHtcbiAgICAuYnJlYWRjcnVtYl9fbWV0YSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTM7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBsZXR0ZXItc3BhY2luZzogMC42cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgfVxuICAgIC5icmVhZGNydW1iX190aXRsZSB7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS00O1xuICAgICAgbGluZS1oZWlnaHQ6IDc1cHg7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgICBsaW5lLWhlaWdodDogNjVweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIH1cbiAgICAgIGJyIHtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5icmVhZGNydW1iX19idG4ge1xuICAgICAgbWFyZ2luLXRvcDogNDhweDtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIC52aWRlby1wbGF5LWJ0biB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktODtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDcwcHg7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICAgICBsZWZ0OiAtMjBweDtcbiAgICAgICAgICAgYm90dG9tOiAtMjBweDtcbiAgICAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LCAwLjIpO1xuICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBwbGF5LWJ1dHRvbi1wdWxzZSAxLjhzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgLW1vei1hbmltYXRpb246IHBsYXktYnV0dG9uLXB1bHNlIDEuOHMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgICBhbmltYXRpb246IHBsYXktYnV0dG9uLXB1bHNlIDEuOHMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgIH1cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuNnM7XG4gICAgICAgICAgICAtbW96LWFuaW1hdGlvbi1kZWxheTogLjZzO1xuICAgICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAuNnM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cbi8qPT09PT09PT09PT09PT0gcGxheS1idXR0b24tcHVsc2UgPT09PT09PT09PT09PT0qL1xuQC13ZWJraXQta2V5ZnJhbWVzIHBsYXktYnV0dG9uLXB1bHNlIHtcbiAgMCUge1xuICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuNSkpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjIpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgcGxheS1idXR0b24tcHVsc2Uge1xuICAwJSB7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuNSkpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjIpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBwbGF5LWJ1dHRvbi1wdWxzZSB7XG4gIDAlIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC41KSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEuMikpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgcGxheS1idXR0b24tcHVsc2Uge1xuICAwJSB7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuNSkpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjIpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHBsYXktYnV0dG9uLXB1bHNlIHtcbiAgMCUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjUpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4yKSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBicmVhZGNydW1iLWFyZWFcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5icmVhZGNydW1iLWFyZWEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNTtcbiAgaGVpZ2h0OiA0NTBweDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHotaW5kZXg6IDI7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9icmVhZGNydW1iLWJnLmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIGhlaWdodDogMzAwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgaGVpZ2h0OiAyMjBweDtcbiAgfVxuICAuYnJlYWRjcnVtYi1jb250ZW50IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMztcbiAgICAuYnJlYWRjcnVtYl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0zO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJyZWFkY3J1bWJfX2xpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTU7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjJweDtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLmFjdGl2ZV9fbGlzdC1pdGVtIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcuJztcbiAgICAgICAgICAgIHRvcDogLTZweDtcbiAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgcGFkZGluZzogMCA2cHg7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudGV4dC1vdXRsaW5lIHtcbiAgICAgIC13ZWJraXQtdGV4dC1zdHJva2Utd2lkdGg6IDFweDtcbiAgICAgIC13ZWJraXQtdGV4dC1zdHJva2UtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIC1tcy10ZXh0LXN0cm9rZS1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgLW8tdGV4dC1zdHJva2UtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIGZvbnQtc2l6ZTogMTQwcHg7XG4gICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDJlbTtcbiAgICAgIGJvdHRvbTogLTExNXB4O1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIG9wYWNpdHk6IDAuOTtcbiAgICB6LWluZGV4OiAtMTtcbiAgfVxufVxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgYnJlYWRjcnVtYi1hcmVhIDJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5icmVhZGNydW1iLWFyZWEyIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBoZWlnaHQ6IDQ1MHB4O1xuICB9XG4gIC5icmVhZGNydW1iLWNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDQwMHB4O1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICAuYnJlYWRjcnVtYl9fbWV0YSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAuc2VsbGVyLWJhZGdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDRweCAxMHB4IDRweCAxMnB4O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCA0cHggMCA0cHgpO1xuICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtNTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIGxlZnQ6IDZweDtcbiAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShza2V3KDEyZGVnLCAwZGVnKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgNHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYnJlYWRjcnVtYl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gICAgICBsaW5lLWhlaWdodDogNThweDtcbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS02O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJyZWFkY3J1bWJfX2xpc3Qge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIGxpIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGluaGVyaXQ7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgaS5sYSB7XG4gICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICB9XG4gICAgICAgIGkubGEtZ2xvYmUge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIGluc3RydWN0b3ItYnJlYWRjcnVtYlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmluc3RydWN0b3ItYnJlYWRjcnVtYiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIC5icmVhZGNydW1iLWNvbnRlbnQge1xuICAgIC5icmVhZGNydW1iX190aXRsZSB7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAubGEge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTg7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5icmVhZGNydW1iX19saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICBsaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEVSUk9SIEFSRUFcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5lcnJvci1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIC5lcnJvci1jb250ZW50IHtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5lcnJvcl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkcHJpbWFyeS1mb250O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBtYXJnaW4tdG9wOiAzM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmVycm9yX190ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgfVxuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENPVVJTRSBERVRBSUwgQVJFQVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmNvdXJzZS1kZXRhaWwge1xuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgLmNvdXJzZS1pdGVtLXdyYXAge1xuICAgIC5jb3Vyc2UtZGV0YWlsX190aXRsZSB7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktOTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxuICB9XG4gIC53aGF0LXlvdS1nZXQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci01O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4xKTtcbiAgICBwYWRkaW5nOiAyNXB4IDMwcHggMTVweCAzMHB4O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1M3B4O1xuICAgIC53aGF0LXlvdS1nZXRfX2l0ZW1zIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC53aGF0LXlvdS1nZXRfX2l0ZW0ge1xuICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB3aWR0aDogNDUlO1xuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgICAud2hhdC15b3UtZ2V0X19pY29uIHtcbiAgICAgICAgICBhbGlnbi1zZWxmOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDNweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnJlcXVpcmVtZW50LXdyYXAge1xuICAgIG1hcmdpbi1ib3R0b206IDUxcHg7XG4gICAgLnJlcXVpcmVtZW50c19fbGlzdCB7XG4gICAgICAucmVxdWlyZW1lbnRzX19pdGVtIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIC5yZXF1aXJlbWVudHNfX2ljb24ge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmRlc2NyaXB0aW9uLXdyYXAge1xuICAgIG1hcmdpbi1ib3R0b206IDQ2cHg7XG4gICAgLmRlc2NyaXB0aW9uX190ZXh0IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICB9XG4gIH1cbiAgLmF1ZGllbmNlLXdyYXAge1xuICAgIC5yZXF1aXJlbWVudHNfX2xpc3Qge1xuICAgICAgLnJlcXVpcmVtZW50c19faXRlbSB7XG4gICAgICAgIC5yZXF1aXJlbWVudHNfX2ljb24ge1xuICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmN1cnJpY3VsdW0td3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAuY3VycmljdWx1bS1oZWFkZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5jb3Vyc2UtZGV0YWlsX190aXRsZSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICAuY3VycmljdWx1bS1oZWFkZXItcmlnaHQge1xuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICB9XG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmN1cnJpY3VsdW0tY29udGVudCB7XG4gICAgICAuY291cnNlLWFjY29yZGlvbiB7XG4gICAgICAgIC5jYXJkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygycHgpO1xuICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjMpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygycHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOm5vdCg6Zmlyc3Qtb2YtdHlwZSk6bm90KDpsYXN0LW9mLXR5cGUpIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXJkLWhlYWRlciB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci01O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjMpO1xuICAgICAgICAgICAgLmJ0bi1saW5rIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDApO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCA1MHB4O1xuICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgaS5sYSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5idG4tdGV4dCB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idG4tbGlua1thcmlhLWV4cGFuZGVkPXRydWVdIGkubGEubGEtYW5nbGUtdXAge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idG4tbGlua1thcmlhLWV4cGFuZGVkPWZhbHNlXSBpLmxhLmxhLWFuZ2xlLWRvd24ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtYm9keSB7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgLmNhcmQtbGlzdCB7XG4gICAgICAgICAgICAgIC5jYXJkLWxpc3QtaXRlbSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAyMHB4IDEwcHggNTBweDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmNvdXJzZS1wbGF5X19pY29uIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY291cnNlLWR1cmF0aW9uIHtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5wcmV2aWV3LWxpbmsge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubW9kYWwge1xuICAgICAgICAgICAgICAgICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI2cHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA2NTBweDtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogNTAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY2FydC1kaXNhYmxlX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgIC5jYXJ0LXF1ZXN0aW9uX190ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAudmlldy1tb3JlLWNvdXJzZXMge1xuICAgIG1hcmdpbi1ib3R0b206IDU2cHg7XG4gICAgLm93bC1kb3RzIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGRpdiB7XG4gICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuNCk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjcpKTtcbiAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmluc3RydWN0b3Itd3JhcCB7XG4gICAgcGFkZGluZy10b3A6IDU2cHg7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIC5pbnN0cnVjdG9yLWNvbnRlbnQge1xuICAgICAgLmluc3RydWN0b3ItaW1nIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA0MHB4O1xuICAgICAgICB3aWR0aDogMjcwcHg7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgLmluc3RydWN0b3JfX2F2YXRhciB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDhweDtcbiAgICAgICAgICAgIGhlaWdodDogMTA4cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbnN0cnVjdG9yX19zdGF0cyB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgICAgICAubGEge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaW5zdHJ1Y3Rvci1kZXRhaWxzIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC5pbnN0cnVjdG9yLXRpdGxlcyB7XG4gICAgICAgICAgLmluc3RydWN0b3JfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5JbnN0cnVjdG9yX190aXRsZS1pY29uIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuaW5zdHJ1Y3Rvcl9fc3VidGl0bGUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pbnN0cnVjdG9yX19tZXRhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbnN0cnVjdG9yLWRlc2Mge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgLmluc3RydWN0b3JfX3RleHQge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbnN0cnVjdG9yLWNvbnRlbnQuZC1mbGV4IHtcbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnJldmlldy13cmFwIHtcbiAgICAucmV2aWV3LWNvbnRlbnQge1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgIC5yZXZpZXctcmF0aW5nLXN1bW1hcnkge1xuICAgICAgICAucmV2aWV3LXJhdGluZy1zdW1tYXJ5LWlubmVyIHtcbiAgICAgICAgICAuc3RhdHMtYXZlcmFnZV9fY291bnQge1xuICAgICAgICAgICAgLnN0YXRzLWF2ZXJhZ2VfX2NvdW50LWNvdW50IHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0zO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnN0YXRzLWF2ZXJhZ2VfX3JhdGluZyB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAubGEge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvdXJzZS1yYXRpbmctdGV4dCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jb3Vyc2UtcmF0aW5nLXRleHRfX3RleHQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnJldmlldy1yYXRpbmctd2lkZ2V0IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDUwcHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICB9XG4gICAgICAgIC5yZXZpZXctcmF0aW5nLXJhdGUge1xuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIC5yZXZpZXctcmF0aW5nLXJhdGVfX2l0ZW1zIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAucmV2aWV3LXJhdGluZy1pbm5lcl9faXRlbSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucmV2aWV3LXJhdGluZy1yYXRlX19pdGVtLXRleHQge1xuICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucmV2aWV3LXJhdGluZy1yYXRlX19pdGVtLWZpbGwge1xuICAgICAgICAgICAgICAgICAgd2lkdGg6IDMxMHB4O1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyOTBweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyNjBweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAucmV2aWV3LXJhdGluZy1yYXRlX19pdGVtLWZpbGxfX2ZpbGwge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0ZXItY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDc3JTtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLnJhdGluZy1maWxsLXdpZHRoMiB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1NCU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAucmF0aW5nLWZpbGwtd2lkdGgzIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDE0JTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5yYXRpbmctZmlsbC13aWR0aDQge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNSU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAucmF0aW5nLWZpbGwtd2lkdGg1IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAucmV2aWV3LXJhdGluZy1yYXRlX19pdGVtLXBlcmNlbnQtdGV4dCB7XG4gICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yZXZpZXctY29udGVudC5kLWZsZXgge1xuICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbW1lbnRzLXdyYXBwZXIge1xuICAgICAgbWFyZ2luLXRvcDogNTJweDtcbiAgICB9XG4gIH1cbiAgLnZpZXctbW9yZS1jb3Vyc2VzMiB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAudmlldy1tb3JlLWNhcm91c2VsIHtcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICB9XG4gICAgLm1vcmUtY291cnNlLWJ0biB7XG4gICAgICBtYXJnaW4tdG9wOiA1MHB4O1xuICAgICAgLnJlcG9ydC1tb2RhbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IC02cHg7XG4gICAgICAgIC5yZXBvcnQtYnRuIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpOztcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjQpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAucmVwb3J0LWJ0bl9faWNvbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm1vZGFsIHtcbiAgICAgICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAgICAgLm1vZGFsLXRpdGxlIHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLm1vZGFsLWJvZHkge1xuICAgICAgICAgICAgICAuY29udGFjdC1mb3JtLWFjdGlvbiB7XG4gICAgICAgICAgICAgICAgZm9ybSB7XG4gICAgICAgICAgICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICAgICAgICAgIC5sYWJlbC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAudGhlbWUtYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2lkZWJhci1jb21wb25lbnQge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAzO1xuICAgIG1hcmdpbi10b3A6IC05MHB4O1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICAuc2lkZWJhciB7XG4gICAgICAuc2lkZWJhci1wcmV2aWV3IHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIC5zaWRlYmFyLXByZXZpZXctdGl0bGVzIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDMwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgMCk7XG4gICAgICAgICAgLndpZGdldF9fdGl0bGUge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zZWN0aW9uX19kaXZpZGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByZXZpZXctdmlkZW8tYW5kLWRldGFpbHMge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgICAucHJldmlldy1jb3Vyc2UtdmlkZW8ge1xuICAgICAgICAgICAgcGFkZGluZzogNHB4O1xuICAgICAgICAgICAgaWZyYW1lIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAucHJldmlldy1jb3Vyc2UtY29udGVudCB7XG4gICAgICAgICAgICBwYWRkaW5nOiAzNHB4IDMwcHggMzBweCAzMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC01cHg7XG4gICAgICAgICAgICAucHJldmlldy1jb3Vyc2VfX3ByaWNlIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA3cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgICAgICAgICAgICAmLnByaWNlLWN1cnJlbnQge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLnByaWNlLWJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJi5wcmljZS1kaXNjb3VudCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJldmlldy1jb3Vyc2VfX3ByaWNlLmQtZmxleCB7XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnByZXZpZXctcHJpY2UtZGlzY291bnRfX3RleHQge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgICAuZGlzY291bnQtbGVmdF9fdGV4dC10ZXh0IHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXktY291cnNlLWJ0biB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJldmlldy1jb3Vyc2UtaW5jZW50aXZlcyB7XG4gICAgICAgICAgICAgIC5wcmV2aWV3LWNvdXJzZS1pbmNlbnRpdmVzX190ZXh0IHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLnByZXZpZXctY291cnNlLWluY2VudGl2ZXNfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTI7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5wcmV2aWV3LWNvdXJzZS1pbmNlbnRpdmVzX19saXN0IHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI3cHg7XG4gICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDFweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMjtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2lkZWJhci1mZWF0dXJlIHtcbiAgICAgICAgLndpZGdldF9fbGlzdCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4xKTtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgLmNvdXJzZS1mZWF0dXJlX19pY29uIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuY291cnNlLWZlYXR1cmVfX21ldGEge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PSBjb21tZW50cy13cmFwcGVyID09PT09PT09PT09PT09PSovXG4uY29tbWVudHMtd3JhcHBlciB7XG4gIC5jb21tZW50cy10aXRsZSxcbiAgLmNvbnRhY3QtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gIH1cbiAgLmNvbW1lbnRzLWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgIGxpIHtcbiAgICAgIC5jb21tZW50IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmF2YXRhcl9faW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb21tZW50LWJvZHkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMjBweDtcbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubWV0YS1kYXRhIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb21tZW50X19hdXRob3Ige1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbW1lbnRfX2RhdGUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJldmlldy1zdGFycyB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCksXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJldmlldy1zdGFyczIge1xuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJldmlldy1zdGFyczMge1xuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCksXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuY29tbWVudC1jb250ZW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3R3b30ge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuY29tbWVudC1yZXBseSB7XG4gICAgICAgICAgICAuY29tbWVudF9fYnRuIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMThweDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaGVscGZ1bF9fYWN0aW9uIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyOCwgMTM3LCAxNTAsIDAuNCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyOCwgMTM3LCAxNTAsIDAuMSk7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbW1lbnRzLXJlcGx5IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEzMHB4O1xuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VlLW1vcmUtcmV2aWV3LWJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAuYnV0dG9uLXNoYXJlZCB7XG4gICAgICAudGhlbWUtYnRuIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIGZhcS1hcmVhXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmZhcS1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgLmNvbC1sZy04IHtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLnNpZGViYXIgIHtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNTZweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNTZweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNTZweDtcbiAgICB9XG4gIH1cbn1cbi5mYXEtYm9keSB7XG4gIG1hcmdpbi10b3A6IC0yMHB4O1xuICAuZmFxLXBhbmVsIHtcbiAgICAuZmFxLWhlYWRpbmcge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIC5mYXFfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZzogMjBweCAzMHB4IDE4cHggMzBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3R3b30ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3R3b30ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmFxLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMjNweCAzMHB4IDIxcHggMzBweDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDFweCA3cHggNDFweCAtOHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCA1cHggNXB4KTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3R3b30ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICB9XG4gICAgICAuZmFxX19kZXNjIHtcbiAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAuZmFxLWhlYWRpbmcge1xuICAgICAgICAuZmFxX190aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtOTBkZWcpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZhcS1idG4tYm94IHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBBRE1JU1NJT05cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5hZG1pc3Npb24tYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIC5hZG1pc3Npb24tYm9keSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAuY29udGFjdC1mb3JtLWFjdGlvbiB7XG4gICAgICBmb3JtIHtcbiAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgR0FMTEVSWVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmdhbGxlcnktYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgfVxuICAucG9ydGZvbGlvLWZpbHRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDhweCAyNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNHMpO1xuICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgIH1cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAxMHB4IDMwcHggcmdiYSg4MSwgMTkwLCAxMjAsIDAuMikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucG9ydGZvbGlvLXdyYXAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIC5wb3J0Zm9saW8tbGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICAgLnNpbmdsZS1wb3J0Zm9saW8taXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICB9XG4gICAgICAgIC5wb3J0Zm9saW8taG92ZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICAucG9ydGZvbGlvLWxpbmsge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNSwgNjEsIDk5LCAwLjYpO1xuICAgICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTQ7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4xKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wb3J0Zm9saW8taG92ZXIge1xuICAgICAgICAgICAgLnBvcnRmb2xpby1saW5rIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zaW5nbGUtcG9ydGZvbGlvLWl0ZW0uY29sLWxnLTQge1xuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgYWJvdXQtYXJlYVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmFib3V0LWFyZWEge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMTVweDtcbiAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIHdpZHRoOiA4NTBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZpdmV9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hYm91dC10ZXh0IHtcbiAgICB3aWR0aDogNzYwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9maXZlfSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbiAgLmFib3V0LWltZy13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICB9XG4gIC5hYm91dC1pbWcge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgIH1cbiAgfVxuICAuYWJvdXQtZnVuLWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgLmNvbC1sZy0zIHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZnVuZmFjdC1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDQ1cHggMCAzOHB4IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJHRoZW1lLWNvbG9yLTI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgLmZ1bl9faWNvbiB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgIH1cbiAgICAgIC5mdW5mYWN0X190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICB9XG4gICAgICAuZnVuZmFjdF9fbWV0YSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmZ1bl9faWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZnVuZmFjdC1pdGVtMiB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYWx0ZXItY29sb3I7XG4gICAgICAuZnVuX19pY29uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjYsIDYwLCAyNDksIDAuMSk7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3I7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmZ1bl9faWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5mdW5mYWN0LWl0ZW0zIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgLmZ1bl9faWNvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ2LCAxMzgsIDQsIDAuMSk7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMjtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuZnVuX19pY29uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0ZXItY29sb3ItMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZnVuZmFjdC1pdGVtNCB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYWx0ZXItY29sb3ItMztcbiAgICAgIC5mdW5fX2ljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUzLCAxNDMsIDI0NywgMC4xKTtcbiAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0zO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5mdW5fX2ljb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRlci1jb2xvci0zO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBhYm91dC1hcmVhIDJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5hYm91dC1hcmVhMiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIC5zZWN0aW9uX19kZXNjIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC50aGVtZS1idG4ge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG4gIH1cbiAgLmFib3V0LWltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgIGJvdHRvbTogLTMzcHg7XG4gICAgICByaWdodDogLTMzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZG90cy5wbmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoLTUwJSkpO1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRkVBVFVSRSBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uZmVhdHVyZS1hcmVhIHtcbiAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgLmZlYXR1cmUtY29udGVudC13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICBAbWVkaWEgI3skZGV2aWNlLTQ4MX17XG4gICAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgfVxuICAgIC5jb2wtc20tNiB7XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmVhdHVyZS1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSgxNCwxNiw0OCwuMDUpKTtcbiAgICAgIHBhZGRpbmc6IDUwcHggNDBweCA0MnB4IDQwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNiwgNjAsIDI0OSwgMC4yKTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC40cyk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIC5mZWF0dXJlX19pY29uIHtcbiAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvcjtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA4MHB4O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTI2LCA2MCwgMjQ5LCAwLjEpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC40cyk7XG4gICAgICB9XG4gICAgICAuZmVhdHVyZV9fdGl0bGUge1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICB9XG4gICAgICAuZmVhdHVyZV9fdGV4dCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNHMpO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIH1cbiAgICAgIC5mZWF0dXJlX19idG4ge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC40cyk7XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDE5MXB4O1xuICAgICAgICBoZWlnaHQ6IDE5MXB4O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgb3BhY2l0eTogLjE7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzIGVhc2UpO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDYwJSwgLTYwJSkpO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNjAlLCA2MCUpKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgLmZlYXR1cmVfX3RpdGxlLFxuICAgICAgICAuZmVhdHVyZV9fdGV4dCxcbiAgICAgICAgLmZlYXR1cmVfX2J0biB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAuZmVhdHVyZV9faWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgzMCUsIC0zMCUpKTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC0zMCUsIDMwJSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5mZWF0dXJlLWl0ZW0yIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjQ2LCAxMzgsIDMsIDAuMik7XG4gICAgICAuZmVhdHVyZV9faWNvbiB7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNDYsIDEzOCwgMywgMC4xKTtcbiAgICAgIH1cbiAgICAgIC5mZWF0dXJlX19idG4ge1xuICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICB9XG4gICAgfVxuICAgIC5mZWF0dXJlLWl0ZW0zIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoNTMsIDE0MywgMjQ3LCAwLjIpO1xuICAgICAgLmZlYXR1cmVfX2ljb24ge1xuICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTM7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNTMsIDE0MywgMjQ3LCAwLjEpO1xuICAgICAgfVxuICAgICAgLmZlYXR1cmVfX2J0biB7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENBVEVHT1JZXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uY2F0ZWdvcnktYXJlYSB7XG4gIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5idXR0b24tc2hhcmVkIHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICB9XG4gIC5idXR0b24tc2hhcmVkLmp1c3RpZnktY29udGVudC1lbmQge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAtbXMtZmxleC1wYWNrOiBzdGFydCAhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAuY2F0ZWdvcnktd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMzZweDtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgfVxuICAgIC5jb2wtbGctNCB7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuY2F0ZWdvcnktaXRlbSB7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIH1cbiAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSk7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIC5jYXRfX3RpdGxlIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgLmNhdF9fbWV0YSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAuY2F0X19saW5rIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE0cHg7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoMTBweCkpO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIG9wYWNpdHk6IC44MDtcbiAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAuY2F0X190aXRsZSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2F0X19tZXRhIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXRfX2xpbmsge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNXB4KSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IC45OTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ0FURUdPUlkgMlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmNhdGVnb3J5LWFyZWEyIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgLmNhdGVnb3J5LXdyYXBwZXIge1xuICAgIC5jb2wtbGctMyB7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXRlZ29yeS1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIHBhZGRpbmc6IDQwcHggMCA0MHB4IDA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgLmNhdGVnb3J5LWNvbnRlbnQge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKDAsIDApKTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIC5sYSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNzBweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MSwgMTkwLCAxMjAsIDAuMSk7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS02O1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgLmNhdF9fdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2ltZzguanBnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjEpKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNnMpO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAubGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2F0X190aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuODA7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ09VUlNFIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5jb3Vyc2UtYXJlYSB7XG4gIC5jb3Vyc2UtY29udGVudC13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNTtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIH1cbiAgLmNvdXJzZS10YWItd3JhcCB7XG4gICAgLmNvdXJzZS10YWItbGlzdC5uYXYtdGFicyB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAzNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwIDFweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTdweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgQGV4dGVuZCAldGhlbWUtYnRuLWFmdGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MSwgMTkwLCAxMjAsIDAuMSk7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWItY29udGVudCB7XG4gICAgLmNvdXJzZS1ibG9jayB7XG4gICAgICAuY29sLWxnLTQsXG4gICAgICAuY29sLWxnLTYge1xuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1zaGFyZWQge1xuICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT0gY291cnNlLWJsb2NrID09PT09PT09PT09PSovXG4uY291cnNlLWJsb2NrIHtcbiAgLmNvdXJzZS1pdGVtIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgIC5jb3Vyc2UtaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC5jb3Vyc2VfX2ltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY291cnNlLXRvb2x0aXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIC50b29sdGlwLWxhYmVsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDRweCAxMHB4IDRweCAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCA0cHggMCk7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiA2cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNrZXcoMTJkZWcsMGRlZykpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggMCAwIDApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDEzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogMTNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMTNweCBzb2xpZCAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3Vyc2UtY29udGVudCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCA0cHggNHB4KTtcbiAgICAgIHBhZGRpbmc6IDI5cHggMzBweCAzMHB4IDMwcHg7XG4gICAgICBib3JkZXItdG9wOiB0cmFuc3BhcmVudDtcbiAgICAgIC5jb3Vyc2VfX2xhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC5jb3Vyc2VfX2xhYmVsLXRleHQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC0yO1xuICAgICAgICB9XG4gICAgICAgIC5jb3Vyc2VfX2NvbGxlY3Rpb24taWNvbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTE7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYyMzNcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkxpbmVBd2Vzb21lXCI7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb3Vyc2VfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDlweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb3Vyc2VfX2F1dGhvciB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnJhdGluZy13cmFwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgLnJldmlldy1zdGFycyB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3Rhci1yYXRpbmctd3JhcCB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAuc3Rhcl9fcmF0aW5nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxcHggMCAzcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY291cnNlLW1ldGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAuY291cnNlX19saXN0IHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAmLm1ldGFfX2RhdGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJi5tZXRhX190ZXh0IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvdXJzZS1wcmljZS13cmFwIHtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLmNvdXJzZV9fcHJpY2Uge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMjtcbiAgICAgICAgICAuY291cnNlX19iZWZvcmUtcHJpY2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvdXJzZV9fYnRuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgfVxuICB9XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBDT1VSU0UgQVJFQSAyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uY291cnNlLWFyZWEyIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbiAgLmNvdXJzZS1jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAzNnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIC5vd2wtbmF2IHtcbiAgICBkaXYge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDgyLCA4NSwgOTAsIDAuMSkpO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICBAbWVkaWEgI3skbGFwdG9wX219IHtcbiAgICAgICAgdG9wOiAzOCU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDApKTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IC01MHB4O1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgICAgJi5vd2wtcHJldiB7XG4gICAgICAgIGxlZnQ6IC0xMDBweDtcbiAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tfSB7XG4gICAgICAgICAgbGVmdDogLTI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIGxlZnQ6IDIwMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgIGxlZnQ6IDE2MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgbGVmdDogMTMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGRldmljZS0zODR9IHtcbiAgICAgICAgICBsZWZ0OiAxMTBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgbGVmdDogODVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5vd2wtbmV4dCB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAtMTAwcHg7XG4gICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbX0ge1xuICAgICAgICAgIHJpZ2h0OiAtMjVweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgcmlnaHQ6IDIwMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgIHJpZ2h0OiAxNjBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgIHJpZ2h0OiAxMzBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skZGV2aWNlLTM4NH0ge1xuICAgICAgICAgIHJpZ2h0OiAxMTBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICByaWdodDogODVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENPVVJTRSBBUkVBIDNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5jb3Vyc2UtYXJlYTMge1xuICAuY291cnNlLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci01O1xuICAgIC5jb3Vyc2UtdGFiLWxpc3QubmF2LXRhYnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4KTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvdXJzZS1jb250ZW50LXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ09VUlNFIEFSRUEgNFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLmNvdXJzZS1hcmVhNCB7XG4gIHBhZGRpbmctdG9wOiAxMTBweDtcbiAgLmNvdXJzZS10YWItd3JhcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgcGFkZGluZzogMjBweCAyMHB4O1xuICAgIC5jb3Vyc2UtdGFiLWxpc3QubmF2LXRhYnMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiA3cHggMTJweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3Vyc2UtZmlsdGVyIHtcbiAgICAgIC5jb3Vyc2VzLW9yZGVyaW5nIHtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvdXJzZS10YWItd3JhcC5kLWZsZXgge1xuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfZm91cn0ge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLmNvdXJzZS1pdGVtLXdyYXAge1xuICAgIC50YWItY29udGVudCB7XG4gICAgICAuY291cnNlLWxpc3QtYmxvY2sge1xuICAgICAgICAuY291cnNlLWl0ZW0ge1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNvdXJzZS1pbWcge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvdXJzZV9faW1nIHtcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwNHB4O1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDAgMCA0cHgpO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMzU1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCA0cHggMCAwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgICAgIHRvcDogMzVweDtcbiAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgcmlnaHQ6IC03cHg7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTkwZGVnKSk7XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMCkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jb3Vyc2UtY29udGVudCB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCA0cHggNHB4IDApO1xuICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgNHB4IDRweCk7XG4gICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvdXJzZS1ibG9jayB7XG4gICAgICAgIC5jb3Vyc2UtaXRlbSB7XG4gICAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvdXJzZS1jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG4vKi09PT09PT09PT0gY291cnNlLWZpbHRlciA9PT09PT09PT0tKi9cbi5jb3Vyc2UtZmlsdGVyIHtcbiAgLmNvdXJzZXMtb3JkZXJpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgLnRhcmdldC1jb3Vyc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7O1xuICAgICAgcGFkZGluZzogMTVweCAwIDE1cHggMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tcy1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgLW8tYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxpbmVBd2Vzb21lXCI7XG4gICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29udGVudDogXCJcXGYxMTBcIjtcbiAgICAgIHJpZ2h0OiAxM3B4O1xuICAgIH1cbiAgfVxufVxuXG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRlVORkFDVCBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uZnVuZmFjdC1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEwM3B4O1xuICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTRweDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDU0cHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1NHB4O1xuICB9XG4gIC5mdW5mYWN0LXJvdyB7XG4gICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgIGRpc3BsYXk6IC1vLWZsZXg7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxuICAuZnVuZmFjdC1pdGVtIHtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgICAuZnVuZmFjdC1pbm5lci1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAubGEge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTI1cHg7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTM7XG4gICAgICAgIGNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMSk7XG4gICAgICB9XG4gICAgICAuZnVuZmFjdF9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yO1xuICAgICAgfVxuICAgICAgLmZ1bmZhY3RfX21ldGEge1xuICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICB9XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIC5mdW5mYWN0LWlubmVyLWl0ZW0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjQ2LCAxMzgsIDMsIDAuOCk7XG4gICAgICAgIC5mdW5mYWN0X190aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIC5mdW5mYWN0LWlubmVyLWl0ZW0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTMsIDE0MywgMjQ3LCAwLjIpO1xuICAgICAgICAuZnVuZmFjdF9fdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAuZnVuZmFjdC1pbm5lci1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDU2LCAxODcsIDEyLCAwLjIpO1xuICAgICAgICAuZnVuZmFjdF9fdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZG90cy5wbmdcIik7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMTBkZWcpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICB0b3A6IC04MHB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgU1BFQUtFUiBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uc3BlYWtlci1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIHdpZHRoOiA2NTBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc3BlYWtlci1jb250ZW50LXdyYXAge1xuICAgIG1hcmdpbi10b3A6IDM2cHg7XG4gICAgLnNwZWFrZXItaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDE0LDE2LDQ4LC4wNSkpO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyBlYXNlLWluKTtcbiAgICAgIC5zcGVha2VyLWltZy1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDE0LDE2LDQ4LC4wNSkpO1xuICAgICAgICB9XG4gICAgICAgIC5zcGVha2VyX19wcm9maWxlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtNTAlKSk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC42KSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzIGVhc2UtaW4tb3V0KTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgIGxlZnQ6IDQwcHg7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMTNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxM3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnNwZWFrZXItZGV0YWlsIHtcbiAgICAgICAgcGFkZGluZzogMzJweCA0MHB4IDM4cHggNDBweDtcbiAgICAgICAgLnNwZWFrZXItdGl0bGUtYm94IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAuc3BlYWtlcl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS05O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnNwZWFrZXJfX21ldGEge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zcGVha2VyX190ZXh0IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnNwZWFrZXJfX2xpbmsge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDlweCAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLnNwZWFrZXItaW1nLWJveCB7XG4gICAgICAgICAgLnNwZWFrZXJfX3Byb2ZpbGUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBib3R0b206IDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zcGVha2VyLXRpdGxlLWJveCB7XG4gICAgICAgICAgLnNwZWFrZXJfX2xpbmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbC1sZy00IHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1zaGFyZWQge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBJTlNUUlVDVE9SLUFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5pbnN0cnVjdG9yLWFyZWEge1xuICAuc3BlYWtlci1jb250ZW50LXdyYXAge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFRFU1RJTU9OSUFMIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnRlc3RpbW9uaWFsLWFyZWEge1xuICBwYWRkaW5nLXRvcDogMTE5cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTU7XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgd2lkdGg6IDUwMHB4O1xuICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgd2lkdGg6IGF1dG87XG4gICAgIH1cbiAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICB9XG4gICB9XG4gIH1cbiAgLnRlc3RpbW9uaWFsLXdyYXAge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgLnRlc3RpbW9uaWFsLWl0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogNDBweCA0OHB4IDQwcHggNDhweDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMnB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSgwLDAsMCwuMDEpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAudGVzdGltb25pYWxfX2Rlc2Mge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAudGVzdGltb25pYWxfX2Rlc2MtZGVzYyB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogXCLigJ1cIjtcbiAgICAgICAgICBmb250LXNpemU6IDEwMHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogMjBweDtcbiAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgb3BhY2l0eTogMC4xO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAudGVzdGltb25pYWxfX25hbWUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctbGVmdDogNjRweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDE0cHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMThweDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgd2lkdGg6IDU0cHg7XG4gICAgICAgICAgaGVpZ2h0OiA1NHB4O1xuICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFsX19uYW1lLXRpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICAgICAgICB9XG4gICAgICAgIC50ZXN0aW1vbmlhbF9fbmFtZS1zcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIC50ZXN0aW1vbmlhbF9fZGVzYyAudGVzdGltb25pYWxfX2Rlc2MtZGVzYyxcbiAgICAgICAgLnRlc3RpbW9uaWFsX19uYW1lIC50ZXN0aW1vbmlhbF9fbmFtZS10aXRsZSxcbiAgICAgICAgLnRlc3RpbW9uaWFsX19uYW1lIC50ZXN0aW1vbmlhbF9fbmFtZS1zcGFuIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICAgIC50ZXN0aW1vbmlhbF9fbmFtZSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgICB9XG4gICAgICAgIC50ZXN0aW1vbmlhbF9fZGVzYyB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAub3dsLWRvdHMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICAgIGRpdiB7XG4gICAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuNCk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW46IDAgMnB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjcpKTtcbiAgICAgICAgJi5hY3RpdmUsXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyo9PT0gcm90YXRlbWUgPT09Ki9cbi5yb3RhdGVtZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZW1lO1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlbWU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAyMHM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjBzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cbkBrZXlmcmFtZXMgcm90YXRlbWUge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgcGVydGljbGVzLWpzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4jcGVydGljbGVzLWpzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgR0VULVNUQVJUIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5nZXQtc3RhcnQtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pbWc3LmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICB6LWluZGV4OiAyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAuc2VjdGlvbl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0zO1xuICAgICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS00O1xuICAgICAgICBsaW5lLWhlaWdodDogNzVweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5nZXQtc3RhcnQtYnRuIHtcbiAgICAgIG1hcmdpbi10b3A6IDM4cHg7XG4gICAgfVxuICB9XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIG9wYWNpdHk6IC45NTtcbiAgfVxuICAuYm94LWljb25zLFxuICAuYm94LWljb25zMiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEwMHB4O1xuICAgIGJvdHRvbTogNzVweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfdGhyZWV9IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGRpdiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMTApO1xuICAgICAgd2lkdGg6IDE5cHg7XG4gICAgICBoZWlnaHQ6IDE5cHg7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAmLmJveC1vbmUge1xuICAgICAgICBsZWZ0OiAtNDBweDtcbiAgICAgICAgYm90dG9tOiA1MHB4O1xuICAgICAgfVxuICAgICAgJi5ib3gtdHdvIHtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICB9XG4gICAgICAmLmJveC10aHJlZSB7XG4gICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgIHRvcDogLTE1MHB4O1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgfVxuICAgICAgJi5ib3gtZm91ciB7XG4gICAgICAgIGxlZnQ6IC04NXB4O1xuICAgICAgICB0b3A6IC0yNThweDtcbiAgICAgICAgd2lkdGg6IDk3cHg7XG4gICAgICAgIGhlaWdodDogOTdweDtcbiAgICAgIH1cbiAgICAgICYuYm94LWZpdmUge1xuICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib3gtaWNvbnMyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAyNDBweDtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxMDBweDtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDkwZGVnKSk7XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBHRVQtU1RBUlQgQVJFQSAyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uZ2V0LXN0YXJ0LWFyZWEyIHtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICB9XG4gIC5jb2wtbGctMTAge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgd2lkdGg6IDY5MHB4O1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS02O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJveC1pY29ucyB7XG4gICAgdG9wOiA3NXB4O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBkaXYge1xuICAgICAgJi5ib3gtdGhyZWUge1xuICAgICAgICB0b3A6IDE1MHB4O1xuICAgICAgfVxuICAgICAgJi5ib3gtZm91ciB7XG4gICAgICAgIHRvcDogMjU4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib3gtaWNvbnMyIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiA3NXB4O1xuICAgIGRpdiB7XG4gICAgICAmLmJveC1maXZlIHtcbiAgICAgICAgbGVmdDogLTEzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvbW8tYnRuIHtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG4gICAgLnZpZGVvLXBsYXktYnRuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMzBweDtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICBmb250LXNpemU6ICRkaXNwbGF5LTQ7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHRvcDogLTI1cHg7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICBib3R0b206IC0yNXB4O1xuICAgICAgICByaWdodDogLTI1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuMik7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHBsYXktYnV0dG9uLXB1bHNlIDEuOHMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAtbW96LWFuaW1hdGlvbjogcGxheS1idXR0b24tcHVsc2UgMS44cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIGFuaW1hdGlvbjogcGxheS1idXR0b24tcHVsc2UgMS44cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuNnM7XG4gICAgICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAuNnM7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLjZzO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvbW8tYnRuLmp1c3RpZnktY29udGVudC1lbmQge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQkVORUZJVCBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uYmVuZWZpdC1hcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC5iZW5lZml0LWhlYWRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgfVxuICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAuc2VjdGlvbl9fZGVzYyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgfVxuICAuYmVuZWZpdC1jb3Vyc2UtYm94IHtcbiAgICAuY29sLWxnLTQge1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAtbXMtZmxleDogMCAwIDMzJTtcbiAgICAgICAgZmxleDogMCAwIDMzJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMyU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5iZW5lZml0LWl0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLmJlbmVmaXRfX2ljb24ge1xuICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMnB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1NiwxODcsIDEyLCAwLjEpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC40cyk7XG4gICAgICB9XG4gICAgICAuYmVuZWZpdF9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMjtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuYmVuZWZpdF9faWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYmVuZWZpdC1pdGVtMiB7XG4gICAgICAuYmVuZWZpdF9faWNvbiB7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItNTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjEsNzMsIDYxLCAwLjEpO1xuICAgICAgfVxuICAgIH1cbiAgICAuYmVuZWZpdC1pdGVtMyB7XG4gICAgICAuYmVuZWZpdF9faWNvbiB7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItNjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2Miw5MSwgMTUzLCAwLjEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZ2V0LXN0YXJ0LWJ0biB7XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuICAuYmVuZWZpdC1pbWcge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zNTJweDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIzMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICAgICAgYm9yZGVyOiAyMHB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICByaWdodDogMjAwcHg7XG4gICAgYm90dG9tOiA0NXB4O1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBoZWlnaHQ6IDM0MXB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kb3RzLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjE7XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBCRU5FRklUIEFSRUEgMlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLmJlbmVmaXQtYXJlYTIge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIC5iZW5lZml0LWhlYWRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuYmVuZWZpdC1jb3Vyc2UtYm94IHtcbiAgICAgIC5iZW5lZml0LWl0ZW0ge1xuICAgICAgICAuYmVuZWZpdF9faWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5iZW5lZml0LWltZyB7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4yKSk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiA1OSU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDI0MXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGluaGVyaXQ7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBib3R0b206IDVweDtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOTBweDtcbiAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICBib3R0b206IDQ2cHg7XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMjkwcHg7XG4gICAgYm90dG9tOiA4M3B4O1xuICB9XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBSRUdJU1RFUiBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4ucmVnaXN0ZXItYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDExOXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIC5yZWdpc3Rlci1oZWFkaW5nIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIC5yZWdpc3Rlcl9fZGVzYyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIH1cbiAgfVxuICAucmVnaXN0ZXItd3JhcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSg4MiwgODUsIDkwLCAwLjEpKTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5jb250YWN0LXRpdGxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgcGFkZGluZzogMzBweCA0MHB4IDMwcHggNDBweDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEwO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIGJvdHRvbTogLTEycHg7XG4gICAgICAgIGxlZnQ6IDQwcHg7XG4gICAgICAgIHdpZHRoOiAwO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxMnB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICBib3JkZXItcmlnaHQ6IDEycHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci10b3A6IDEycHggc29saWQgJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgIGJvdHRvbTogLTEwcHg7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDEwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci10b3A6IDEwcHggc29saWQgJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgZm9ybSB7XG4gICAgICBwYWRkaW5nOiA0MHB4O1xuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMSk7XG4gICAgfVxuICB9XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgcmlnaHQ6IDU1cHg7XG4gICAgYm90dG9tOiA5MXB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kb3RzLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIH1cbiAgfVxuICAmOmFmdGVyIHtcbiAgICByaWdodDogYXV0bztcbiAgICBsZWZ0OiAyODBweDtcbiAgICBib3R0b206IDcxcHg7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBib3R0b206IDA7XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgUkVHSVNURVIgQVJFQSAyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4ucmVnaXN0ZXItYXJlYTIge1xuICAucmVnaXN0ZXItaGVhZGluZyB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDkwcHg7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIGxlZnQ6IDUwcHg7XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIHJpZ2h0OiAyODBweDtcbiAgfVxufVxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBjbGllbnRsb2dvLWFyZWFcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5jbGllbnRsb2dvLWFyZWEge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMDJweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC5jbGllbnQtbG9nbyB7XG4gICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAuY2xpZW50LWxvZ28taXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBpbWcge1xuICAgICAgICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgICAgZmlsdGVyOiBncmF5c2NhbGUoMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnN0cm9rZS1saW5lLFxuICAuc3Ryb2tlLWxpbmUyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxNzVweDtcbiAgICBsZWZ0OiA1MHB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtNTVkZWcpKTtcbiAgICBvcGFjaXR5OiAwLjE7XG4gICAgLnN0cm9rZV9fbGluZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgIGhlaWdodDogMnB4O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAmOm50aC1jaGlsZCgxKSxcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnN0cm9rZS1saW5lMiB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogNTBweDtcbiAgICBib3R0b206IDA7XG4gICAgdG9wOiBhdXRvO1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNTVkZWcpKTtcbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEJMT0cgQVJFQVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLmJsb2ctYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICAuYmxvZy1wb3N0LXdyYXBwZXIge1xuICAgIG1hcmdpbi10b3A6IDM3cHg7XG4gICAgLmJsb2ctcG9zdC1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgfVxuICAgICAgLmJsb2ctcG9zdC1pbWcge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIC5ibG9nX19pbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICB9XG4gICAgICAgIC5ibG9nX19kYXRlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIG9wYWNpdHk6IDAuMjtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBib3R0b206IC0xcHg7XG4gICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDEzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDEzcHggc29saWQgJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucG9zdC1ib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoMTQsIDE2LCA0OCwgMC4wNSkpO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgIGJvcmRlci10b3A6IHRyYW5zcGFyZW50O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCA0cHggNHB4KTtcbiAgICAgICAgcGFkZGluZzogMzBweCAzMHB4IDM1cHggMzBweDtcbiAgICAgICAgLmJsb2ctdGl0bGUge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgLmJsb2dfX3RpdGxlIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTE7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ibG9nX19wYW5lbCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgY29udGVudDogJy4nO1xuICAgICAgICAgICAgICBib3R0b206IDNweDtcbiAgICAgICAgICAgICAgcmlnaHQ6IC0xMHB4O1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmJsb2ctcG9zdC1pbWcge1xuICAgICAgICAgIC5ibG9nX19kYXRlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMC41O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOmJlZm9yZSxcbiAgJjphZnRlcntcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiA1MzZweDtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgaGVpZ2h0OiA0ODRweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIGhlaWdodDogNjExcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIGhlaWdodDogNjI5cHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICBoZWlnaHQ6IDU5NXB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgIGhlaWdodDogNTYxcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgIGhlaWdodDogNTI1cHg7XG4gICAgfVxuICB9XG4gICY6YmVmb3JlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaW1nOC5qcGdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIG9wYWNpdHk6IDAuOTA7XG4gIH1cbiAgLm93bC1kb3RzIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLXRvcDogMjZweDtcbiAgICBkaXYge1xuICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICBoZWlnaHQ6IDE0cHg7XG4gICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTI3LCAxMzYsIDE1MSwgMC40KTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuNykpO1xuICAgICAgJi5hY3RpdmUsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQkxPRyBBUkVBIDJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5ibG9nLWFyZWEyIHtcbiAgcGFkZGluZy1ib3R0b206IDExOHB4O1xuICAmOmJlZm9yZSxcbiAgJjphZnRlcntcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiAwO1xuICAgIGhlaWdodDogMzYwcHg7XG4gICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgIGhlaWdodDogNDEwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBoZWlnaHQ6IDM2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBoZWlnaHQ6IDM2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBoZWlnaHQ6IDM2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICBoZWlnaHQ6IDQxMHB4O1xuICAgIH1cbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEJMT0cgQVJFQSAzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uYmxvZy1hcmVhMyB7XG4gIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIC5ibG9nLXBvc3Qtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICAuY29sLWxnLTQge1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuYmxvZy1wb3N0LWl0ZW0ge1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6YmVmb3JlLFxuICAmOmFmdGVye1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBCTE9HIEFSRUEgNFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLmJsb2ctYXJlYTQge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgLmJsb2ctY29udGVudC13cmFwIHtcbiAgICAuYmxvZy1pdGVtIHtcbiAgICAgIC5ibG9nLWltZy1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICB9XG4gICAgICAgIC5ibG9nX19kYXRlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgIGxlZnQ6IDIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMjBweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ibG9nLWNvbnRlbnQge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwIDRweCA0cHgpO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzVweCAzMHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgICAuYmxvZ19fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS03O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ibG9nX19saXN0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubGEge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYmxvZ19fZGVzYyB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgfVxuICAgICAgICAuY29udGVudC1yZXF1aXJlbWVudCB7XG4gICAgICAgICAgLmJsb2dfX3RpdGxlIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jb250ZW50X19saXN0IHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiA2cHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiA2cHg7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnRhZ3MtaXRlbSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAzNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmLnRhZ19fbGlzdCB7XG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMnB4O1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuc29jaWFsX19saW5rcyB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMzVweDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MSwgMTkwLCAxMjAsIDAuMSk7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaW5zdHJ1Y3Rvci13cmFwIHtcbiAgICAgICAgLmluc3RydWN0b3Itd3JhcF9fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIH1cbiAgICAgICAgLmluc3RydWN0b3ItY29udGVudCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICAgIC5pbnN0cnVjdG9yLWltZyB7XG4gICAgICAgICAgICAuaW5zdHJ1Y3Rvcl9fYXZhdGFyIHtcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pbnN0cnVjdG9yLWRldGFpbHMge1xuICAgICAgICAgICAgLmluc3RydWN0b3ItdGl0bGVzIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgLmluc3RydWN0b3JfX3RpdGxlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaW5zdHJ1Y3Rvci1kZXNjIHtcbiAgICAgICAgICAgICAgLmluc3RydWN0b3JfX3RleHQge1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmluc3RydWN0b3JfX2xpbmtzIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5pbnN0cnVjdG9yLWNvbnRlbnQuZC1mbGV4IHtcbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbW1lbnRzLXdyYXBwZXIge1xuICAgICAgICAuY29udGFjdC10aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgfVxuICAgICAgICAuY29tbWVudHMtbGlzdCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgLmNvbW1lbnQge1xuICAgICAgICAgICAgICAuY29tbWVudC1ib2R5IHtcbiAgICAgICAgICAgICAgICAubWV0YS1kYXRhIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAuY29tbWVudF9fYXV0aG9yIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5jb21tZW50X19kYXRlIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBURUFNIERFVEFJTFMgQVJFQVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLnRlYW0tZGV0YWlsLWFyZWEge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICAudGVhbS1zaW5nbGUtaW1nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxNXB4IDAgMTVweCAxNXB4KTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogLTQ1cHg7XG4gICAgICBib3R0b206IC01MnB4O1xuICAgICAgei1pbmRleDogLTE7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZG90cy5wbmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgb3BhY2l0eTogMC4xO1xuICAgIH1cbiAgfVxuICAudGVhbS1zaW5nbGUtY29udGVudCB7XG4gICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIC50c2QtYm94IHtcbiAgICAgIC50c2QtaXRlbSB7XG4gICAgICAgIC50c2RpX190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS05O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRzZGlfX21ldGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIH1cbiAgICAgICAgLnRzZGlfX2xpc3Qge1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICB0b3A6IDZweDtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuNCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZWR1Y2F0aW9uLWRldGFpbCB7XG4gICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudHNkLWJveC0yIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMzcHg7XG4gICAgfVxuICAgIC50c2QtYm94LTMge1xuICAgICAgLmNvbC1sZy00IHtcbiAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICAtbXMtZmxleDogMCAwIDMzJTtcbiAgICAgICAgICBmbGV4OiAwIDAgMzMlO1xuICAgICAgICAgIG1heC13aWR0aDogMzMlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgIC50c2QtaXRlbSB7XG4gICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgfVxuICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgfVxuICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgfVxuICAgICAgIC50c2RpX190aXRsZSB7XG4gICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgIH1cbiAgICAgfVxuICAgIH1cbiAgICAudHNfX2NvbnRhY3Qge1xuICAgICAgbWFyZ2luLXRvcDogMzRweDtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDM0cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzRweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLDE5MCwxMjAsMC4xKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hYm91dC10YWItd3JhcCB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgLmNvdXJzZS10YWItbGlzdCB7XG4gICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMjBweDtcbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50YWItY29udGVudCB7XG4gICAgIC5wYW5lLWJvZHkge1xuICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICBwYWRkaW5nOiAzMHB4IDM1cHg7XG4gICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSg4MiwgODUsIDkwLCAwLjEpKTtcbiAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgfVxuICAgIH1cbiAgfVxuICAuaW5zdHJ1Y3Rvci1hbGwtY291cnNlIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIC5pbnN0cnVjdG9yLWFsbC1jb3Vyc2VfX3RpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgfVxuICAgIC5jb2wtbGctNCB7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgUEFDS0FHRSBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4ucGFja2FnZS1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICAucGFja2FnZS1jb250ZW50LXdyYXAge1xuICAgIC5jb2wtbGctNCB7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5wYWNrYWdlLWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDE0LCAxNiwgNDgsIDAuMDUpKTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIHBhZGRpbmc6IDQycHggNDBweCA0NXB4IDQwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgICAucGFja2FnZS10b29sdGlwIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCA0cHggMCAwKTtcbiAgICAgICAgLnBhY2thZ2VfX3Rvb2x0aXAge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICAgIHBhZGRpbmc6IDE1cHggMDtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICBAZXh0ZW5kICV0aGVtZS1idG4tYWZ0ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGFja2FnZS10aXRsZSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMSk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzM3B4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICAucGFja2FnZV9fcHJpY2Uge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgIC5wYWNrYWdlX190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wYWNrYWdlLWxpc3Qge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzNweDtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTQ7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgICAgICAgJi5sYS1jbG9zZSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItNTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGFja2FnZS1wcmljZSB7XG4gICAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5wYWNrYWdlX19tZXRhIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAycHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjNweDtcbiAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucGFja2FnZS1pdGVtMiB7XG4gICAgICBwYWRkaW5nLXRvcDogOTVweDtcbiAgICAgIG1hcmdpbi10b3A6IC0yNHB4O1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICAgIC5wYWNrYWdlLXByaWNlIHtcbiAgICAgICAgLnRoZW1lLWJ0biB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgUEFHSU5BVElPTi1XUkFQXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4ucGFnaW5hdGlvbi13cmFwIHtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgLnBhZ2luYXRpb24ge1xuICAgIC5wYWdlLWl0ZW0ge1xuICAgICAgLnBhZ2UtbGluayB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MSwgMTkwLCAxMjAsIDAuMSk7O1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzIDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzOXB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIC5wYWdlLWxpbmssXG4gICAgICAmLmFjdGl2ZSAucGFnZS1saW5rIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgU0lERUJBUlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLnNpZGViYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgbWFyZ2luLXRvcDogNjBweDtcbiAgfVxuICAuc2lkZWJhci13aWRnZXQge1xuICAgIC5jb250YWN0LWZvcm0tYWN0aW9uIHtcbiAgICAgIGZvcm0ge1xuICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zZWFyY2hfX2J0biB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkpO1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc3Vic2NyaWJlcl9fYnRuIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgIHJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTI7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG4gICAgLndpZGdldF9fdGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gICAgLnNlY3Rpb25fX2RpdmlkZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgaGVpZ2h0OiA0cHg7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDJweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgdG9wOiAtMS4xcHg7XG4gICAgICAgIGhlaWdodDogN3B4O1xuICAgICAgICB3aWR0aDogOHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgIC53aWRnZXRfX2xpc3Qge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuNSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucmVjZW50LWl0ZW0ge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MiwgMC4xKTtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgfVxuICAgICAgLnJlY2VudC1pbWcge1xuICAgICAgICB3aWR0aDogODVweDtcbiAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIH1cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucmVjZW50cG9zdC1ib2R5IHtcbiAgICAgICAgLnJlY2VudF9fbWV0YSB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnJlY2VudF9fbGluayB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yZWNlbnQtY291cnNlX19wcmljZSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDNweDtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b24tc2hhcmVkIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgLnRoZW1lLWJ0biB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUyLCAwLjIpO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNvY2lhbF9fbGlua3Mge1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucmF0aW5nX19saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICAgIC5yZXZpZXctbGFiZWwge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyOHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3Vyc2VzLW9yZGVyaW5nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC50YXJnZXQtY291cnNlIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTs7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMCAxNXB4IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1zLWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1vLWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICB9XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTGluZUF3ZXNvbWVcIjtcbiAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgY29udGVudDogXCJcXGYxMTBcIjtcbiAgICAgICAgcmlnaHQ6IDEzcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWctd2lkZ2V0IHtcbiAgICAud2lkZ2V0X19saXN0IHtcbiAgICAgIGxpIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUyLCAwLjIpO1xuICAgICAgICAgIHBhZGRpbmc6IDRweCAxNHB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5pbnN0cnVjdG9yLXdpZGdldCB7XG4gICAgLmJ1dHRvbi1zaGFyZWQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAudGhlbWUtYnRuIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MiwgMC4yKTtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG59XG5cbi8qPT0gcmF0aW5nX19saXN0ID09Ki9cbi5yYXRpbmdfX2xpc3Qge1xuICBtYXJnaW4tdG9wOiAyNXB4O1xuICBtYXJnaW4tYm90dG9tOiA0NXB4O1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90d299IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgIH1cbiAgICAubGEtc3RhciB7XG4gICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQ7XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgICAucmV2aWV3LWxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICBpbnB1dCB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAmOmNoZWNrZWQgfiAucmV2aWV3LW1hcmsge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucmV2aWV3LW1hcmsge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDE4cHg7XG4gICAgICAgIGhlaWdodDogMThweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBib3JkZXItd2lkdGg6IDJweDtcbiAgICAgICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3I7XG4gICAgICAgIGJvcmRlci1pbWFnZTogaW5pdGlhbDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgbGVmdDogMnB4O1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICBoZWlnaHQ6IDEwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC4xKSk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBDT05UQUNUXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uY29udGFjdC1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIC5jb250YWN0LWl0ZW0ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBwYWRkaW5nOiAzNXB4IDMwcHg7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDE0LCAxNiwgNDgsIDAuMDEpKTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjYsIDYwLCAyNDksIDAuMik7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAuY29udGFjdF9faWNvbiB7XG4gICAgICBjb2xvcjogJGFsdGVyLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBsaW5lLWhlaWdodDogODBweDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTI2LCA2MCwgMjQ5LCAwLjEpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICB9XG4gICAgLmNvbnRhY3RfX3RpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICB9XG4gICAgLmNvbnRhY3RfX2Rlc2Mge1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgIH1cbiAgICAuY29udGFjdF9fbGlzdCB7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6YmVmb3JlLFxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMTkxcHg7XG4gICAgICBoZWlnaHQ6IDE5MXB4O1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgb3BhY2l0eTogLjE7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MgZWFzZSk7XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSg2MCUsIC02MCUpKTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgtNjAlLCA2MCUpKTtcbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAuY29udGFjdF9fdGl0bGUsXG4gICAgICAuY29udGFjdF9fZGVzYyxcbiAgICAgIC5jb250YWN0X19saXN0IGxpIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgICAgLmNvbnRhY3RfX2ljb24ge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZSgzMCUsIC0zMCUpKTtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC0zMCUsIDMwJSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY29udGFjdC1pdGVtMiB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNDYsIDEzOCwgMywgMC4yKTtcbiAgICAuY29udGFjdF9faWNvbiB7XG4gICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NiwgMTM4LCAzLCAwLjIpO1xuICAgIH1cbiAgfVxuICAuY29udGFjdC1pdGVtMyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSg1MywgMTQzLCAyNDcsIDAuMik7XG4gICAgLmNvbnRhY3RfX2ljb24ge1xuICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0zO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MywgMTQzLCAyNDcsIDAuMik7XG4gICAgfVxuICB9XG4gIC5jb250YWN0LWZvcm0td3JhcCB7XG4gICAgbWFyZ2luLXRvcDogOTBweDtcbiAgICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG4gICAgICAuc2VjdGlvbl9fdGl0bGUge1xuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS03O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2VjdGlvbl9fbGlzdCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgTVBBIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5tYXAtY29udGFpbmVyICNtYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MDBweDtcbiAgQG1lZGlhICN7JGRldmljZS00ODF9IHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG59XG4ubWFwLWNvbnRhaW5lciAjbWFwIC5nbS1zdHlsZSAuZ21ub3ByaW50LFxuLm1hcC1jb250YWluZXIgI21hcCAuZ20tc3R5bGUgYnV0dG9uLmdtLWNvbnRyb2wtYWN0aXZlLmdtLWZ1bGxzY3JlZW4tY29udHJvbCxcbi5tYXAtY29udGFpbmVyICNtYXAgLmdtLXN0eWxlIC5nbS1zdHlsZS1jYyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTVUJTQ1JJQkVSIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5zdWJzY3JpYmVyLWFyZWEge1xuICBwYWRkaW5nLXRvcDogMTE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5zdWJzY3JpYmVyLWZvcm0td3JhcCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICAuc3Vic2NyaWJlci1mb3JtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDUwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoMTQsMTYsNDgsLjA2KSk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOnJnYmEoMTI3LCAxMzYsIDE1MSwgMC40KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxhLWVudmVsb3BlLW8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjJweDtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgIH1cbiAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgIHJpZ2h0OiA4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoMCkpO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6IC0xMDBweDtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZG90cy5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgei1pbmRleDogLTE7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMzBweDtcbiAgfVxufVxuXG4vKj09PT09PT09IGNvbnRhY3QtZm9ybS1hY3Rpb24gPT09PT09PT09Ki9cbi5jb250YWN0LWZvcm0tYWN0aW9uIHtcbiAgZm9ybSB7XG4gICAgLmZvcm0tZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIC5jb3Vyc2UtZmlsdGVyIHtcbiAgICAgICAgLmNvdXJzZXMtb3JkZXJpbmcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYmlydGhkYXktZmlsdGVyIHtcbiAgICAgICAgLmNvdXJzZXMtb3JkZXJpbmcge1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIHdpZHRoOiAxNTNweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkpO1xuICAgICAgICAgICAgICBmb250LWZhbWlseTogXCJMaW5lQXdlc29tZVwiO1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlxcZjExMFwiO1xuICAgICAgICAgICAgICByaWdodDogMTNweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAudGFyZ2V0LWNvdXJzZSB7XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZvcm0tbGFiZWwge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICB9XG4gICAgICAuZ2VuZGVyLWNvbnRyb2wge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgJjpudGgtb2YtdHlwZSgyKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDUwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEyNywxMzYsMTUxLDAuMik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICByZXNpemU6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDAgMCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEyNywxMzYsMTUxLDAuNSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbnB1dC1pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDE4cHg7XG4gICAgICAgIGxlZnQ6IDQwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgICB9XG4gICAgICAuc2VhcmNoLWljb24ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICByaWdodDogMTZweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKC05MGRlZykpO1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDE3cHg7XG4gICAgICB9XG4gICAgICAubWVzc2FnZS1jb250cm9sIHtcbiAgICAgICAgaGVpZ2h0OiAxNTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmdlbmRlci1ncm91cCB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgLmZvcm0tbGFiZWwge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDhweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRoZW1lLWJ0biB7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBmb3JtLXNoYXJlZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmZvcm0tc2hhcmVkIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgLmNvbnRhY3QtZm9ybS1hY3Rpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDgyLCA4NSwgOTAsIDAuMSkpO1xuICAgIHBhZGRpbmc6IDQ2cHggMzBweCA0MnB4IDMwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yO1xuICAgIC5mb3JtLWhlYWRpbmcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzNweDtcbiAgICAgIC5mb3JtX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZvcm1fX2Rlc2Mge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgfVxuICAgICAgLnJlc2V0X19kZXNjIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgLnNpZ24tYnRuIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBAbWVkaWEgI3skZGV2aWNlLTk5Mn0ge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGRldmljZS03Njd9IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG5fX2dvb2dsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdGVyLWNvbG9yLTU7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bl9fZmFjZWJvb2sge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRlci1jb2xvci02O1xuICAgICAgICB9XG4gICAgICAgIC5idG5fX3R3aXR0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRlci1jb2xvci03O1xuICAgICAgICB9XG4gICAgICAgIC5yZXNldF9fYnRuIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9ybS1jb25kaXRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgfVxuICAgICAgLmFjY291bnQtYXNzaXN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgLmFjY291bnRfX2Rlc2Mge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0zO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnRleHQtcmlnaHQge1xuICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFjY291bnRfX2Rlc2MyIHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLTI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLTI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgY3VzdG9tLWNoZWNrYm94XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGxhYmVsIHtcbiAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgIGEge1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucGFzc19fZGVzYyB7XG4gICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMztcbiAgICB9XG4gIH1cbiAgaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpjaGVja2VkKSxcbiAgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gIH1cbiAgaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuICBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAzcHg7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC40KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygycHgpO1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcbiAgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxmMDBjJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcHg7XG4gICAgbGVmdDogM3B4O1xuICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC00O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUsc2Fucy1zZXJpZjtcbiAgfVxuICBpbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gIH1cbn1cblxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEZPT1RFUiBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uZm9vdGVyLWFyZWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIHotaW5kZXg6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy10b3A6IDM0NXB4O1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICB9XG4gIC5vY2VhbiB7XG4gICAgaGVpZ2h0OiA2NyU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAud2F2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3dhdmUuc3ZnKSByZXBlYXQteDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTE5OHB4O1xuICAgICAgd2lkdGg6IDY0MDBweDtcbiAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogd2F2ZSA1NXMgY3ViaWMtYmV6aWVyKDAuMzYsIDAuNDUsIDAuNjMsIDAuOTMpIGluZmluaXRlO1xuICAgICAgYW5pbWF0aW9uOiB3YXZlIDU1cyBjdWJpYy1iZXppZXIoMC4zNiwgMC40NSwgMC42MywgMC45MykgaW5maW5pdGU7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgaGVpZ2h0OiAyMzBweDtcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICB0b3A6IC0xNzVweDtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHdhdmUgNTVzIGN1YmljLWJlemllcigwLjM2LCAwLjQ1LCAwLjYzLCAwLjkzKSAtMC4xMjVzIGluZmluaXRlLCBzd2VsbCA1NXMgZWFzZSAtMS4yNXMgaW5maW5pdGU7XG4gICAgICAgIGFuaW1hdGlvbjogd2F2ZSA1NXMgY3ViaWMtYmV6aWVyKDAuMzYsIDAuNDUsIDAuNjMsIDAuOTMpIC0wLjEyNXMgaW5maW5pdGUsIHN3ZWxsIDU1cyBlYXNlIC0xLjI1cyBpbmZpbml0ZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvb3Rlci13aWRnZXQge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICAuZm9vdGVyX19sb2dvIHtcbiAgICAgIHdpZHRoOiAxNTBweDtcbiAgICB9XG4gICAgLmZvb3Rlci10aXRsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAuc2VjdGlvbl9fZGl2aWRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDVweDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMzBweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNztcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAtMC4xcHg7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IE1PVkUtQkcyO1xuICAgICAgICBhbmltYXRpb24tbmFtZTogTU9WRS1CRzI7XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci03O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLWFkZHJlc3Mge1xuICAgICAgbWFyZ2luLXRvcDogMzhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5mb290ZXItc29jaWFsIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMHB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTY2LCAxODYsIDAuMSk7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5mb290ZXItbGluayB7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB0b3A6IDlweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNztcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjMsIDY1LCA5NywgMC4xKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNvY2lhbC1saW5rIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDYwcHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTgsIDE2NiwgMTg2LCAwLjEpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMjEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvcHlyaWdodC1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAuY29weV9fZGVzYyB7XG4gICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTc7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNztcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5sYW5ndWFnZS1zZWxlY3Qge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnRhcmdldC1sYW5nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgcGFkZGluZzogMTBweCAwIDEwcHggMzVweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTc7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW8tYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTGluZUF3ZXNvbWVcIjtcbiAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNztcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYxMTNcIjtcbiAgICAgICAgcmlnaHQ6IDEzcHg7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGYyMTlcIjtcbiAgICAgICAgbGVmdDogMTNweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyo9PT0gd2F2ZSA9PT0qL1xuQC13ZWJraXQta2V5ZnJhbWVzIHdhdmUge1xuICAwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNjAwcHg7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB3YXZlIHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTYwMHB4O1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2VsbCB7XG4gIDAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTI1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTI1cHgsIDApO1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3ZWxsIHtcbiAgMCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjVweCwgMCk7XG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIH1cbn1cblxuLyo9PT0gc2Nyb2xsLXRvcCA9PT0qL1xuI3Njcm9sbC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICBmb250LXNpemU6ICRkaXNwbGF5LTEwO1xuICB6LWluZGV4OiA5OTk5O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICBsaW5lLWhlaWdodDogNDNweDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4IDAgMCAzMHB4KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAxMHB4IDQwcHggcmdiYSgxNCwxNiw0OCwuMDYpKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsMTM2LDE1MSwwLjMpO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuXG4iLCIkdGhlbWUtY29sb3I6ICMyMzNkNjM7XG4kdGhlbWUtY29sb3ItMjogIzUxYmU3ODtcbiR0aGVtZS1jb2xvci0zOiAjNDJiZTZmO1xuJHRoZW1lLWNvbG9yLTQ6ICM3Zjg4OTc7XG4kdGhlbWUtY29sb3ItNTogI0Y3RkFGRDtcbiR0aGVtZS1jb2xvci02OiAjMGUwZTFlO1xuJHRoZW1lLWNvbG9yLTc6ICM5ZWE2YmE7XG4kd2hpdGU6ICNmZmY7XG4kYmxhY2s6ICMwMDA7XG4kY29sb3I6ICNlZWU7XG4kdGhlbWUtZm9udDogJ0xpYnJlIEZyYW5rbGluJywgc2Fucy1zZXJpZjtcbiR0aGVtZS1mb250LTI6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuJGRlZmF1bHQtZm9udDogMTZweDtcbiRkZWZhdWx0LWZvbnQtMjogMTVweDtcbiRkZWZhdWx0LWZvbnQtMzogMTRweDtcbiRkZWZhdWx0LWZvbnQtNDogMTNweDtcbiRkZWZhdWx0LWZvbnQtNTogMTJweDtcbiRwcmltYXJ5LWZvbnQ6IDQ1cHg7XG4kZGlzcGxheTogOTBweDtcbiRkaXNwbGF5LTI6IDgwcHg7XG4kZGlzcGxheS0zOiA3MHB4O1xuJGRpc3BsYXktNDogNjBweDtcbiRkaXNwbGF5LTU6IDUwcHg7XG4kZGlzcGxheS02OiA0MHB4O1xuJGRpc3BsYXktNzogMzBweDtcbiRkaXNwbGF5LTg6IDI4cHg7XG4kZGlzcGxheS05OiAyNnB4O1xuJGRpc3BsYXktMTA6IDI0cHg7XG4kZGlzcGxheS0xMTogMjJweDtcbiRkaXNwbGF5LTEyOiAyMHB4O1xuJGRpc3BsYXktMTM6IDE4cHg7XG4kZm9udC13ZWlnaHQtdGhpbjogMTAwO1xuJGZvbnQtd2VpZ2h0LWV4dHJhLWxpZ2h0OiAyMDA7XG4kZm9udC13ZWlnaHQtbGlnaHQ6IDMwMDtcbiRmb250LXdlaWdodC1yZWd1bGFyOiA0MDA7XG4kZm9udC13ZWlnaHQtbWVkaXVtOiA1MDA7XG4kZm9udC13ZWlnaHQtc2VtaS1ib2xkOiA2MDA7XG4kZm9udC13ZWlnaHQtYm9sZDogNzAwO1xuJGZvbnQtd2VpZ2h0LWJsYWNrOiA4MDA7XG4kYWx0ZXItY29sb3I6ICM3RTNDRjk7XG4kYWx0ZXItY29sb3ItMjogI0Y2OEEwMztcbiRhbHRlci1jb2xvci0zOiAjMzU4RkY3O1xuJGFsdGVyLWNvbG9yLTQ6ICMzOEJCMEM7XG4kYWx0ZXItY29sb3ItNTogI0RENDkzRDtcbiRhbHRlci1jb2xvci02OiAjM0U1Qjk5O1xuJGFsdGVyLWNvbG9yLTc6ICMzQUFBRTE7XG4kY29sb3I6ICNlZWU7XG4kY29sb3ItMjogI0JEQkJCQztcbi8qLS0tLSB0aGVtZS1idG4gLS0tLSovXG4ldGhlbWUtYnRuIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgY29sb3I6ICNmZmY7XG4gIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICBsZXR0ZXItc3BhY2luZzogMC4xcHg7XG4gIHBhZGRpbmc6IDAgMzBweCAwIDMwcHg7XG4gIGxpbmUtaGVpZ2h0OiA1NXB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgLW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluO1xuICAtbW96LXRyYW5zaXRpb246IDAuM3MgZWFzZS1pbjtcbiAgLW1zLXRyYW5zaXRpb246IDAuM3MgZWFzZS1pbjtcbiAgLW8tdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluO1xuICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW47XG4gIGJvcmRlcjogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cbi8qLS0tLSB0aGVtZS1idG4tYWZ0ZXIgLS0tLSovXG4ldGhlbWUtYnRuLWFmdGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtMTJweDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiA1NiU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgb3BhY2l0eTogLjE7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxNWRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiBza2V3WCgxNWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHNrZXdYKDE1ZGVnKTtcbiAgLW8tdHJhbnNmb3JtOiBza2V3WCgxNWRlZyk7XG4gIHRyYW5zZm9ybTogc2tld1goMTVkZWcpO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDAuM3MgZWFzZS1pbjtcbiAgLW1vei10cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW47XG4gIC1tcy10cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW47XG4gIC1vLXRyYW5zaXRpb246IDAuM3MgZWFzZS1pbjtcbiAgdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluO1xufVxuIiwiQG1peGluIHRyYW5zaXRpb24oJHRpbWUtc2V0KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsICR0aW1lLXNldDtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgJHRpbWUtc2V0O1xuICAtbXMtdHJhbnNpdGlvbjogYWxsICR0aW1lLXNldDtcbiAgLW8tdHJhbnNpdGlvbjogYWxsICR0aW1lLXNldDtcbiAgdHJhbnNpdGlvbjogYWxsICR0aW1lLXNldDtcbn1cbkBtaXhpbiBib3JkZXItcmFkaXVzKCRyYWRpdXMtcHJvcGVydHkpIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAkcmFkaXVzLXByb3BlcnR5O1xuICAtbW96LWJvcmRlci1yYWRpdXM6ICRyYWRpdXMtcHJvcGVydHk7XG4gIGJvcmRlci1yYWRpdXM6ICRyYWRpdXMtcHJvcGVydHk7XG59XG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93LXByb3BlcnR5KSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdy1wcm9wZXJ0eTtcbiAgLW1vei1ib3gtc2hhZG93OiAkc2hhZG93LXByb3BlcnR5O1xuICBib3gtc2hhZG93OiAkc2hhZG93LXByb3BlcnR5O1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwcm9wZXJ0eSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcHJvcGVydHk7XG4gIC1tb3otcGVyc3BlY3RpdmU6ICRwcm9wZXJ0eTtcbiAgLW1zLXBlcnNwZWN0aXZlOiAkcHJvcGVydHk7XG4gIHBlcnNwZWN0aXZlOiAkcHJvcGVydHk7XG59XG5AbWl4aW4gdHJhbnNmb3JtKCRwcm9wZXJ0eSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogJHByb3BlcnR5O1xuICAtbW96LXRyYW5zZm9ybTogJHByb3BlcnR5O1xuICAtbXMtdHJhbnNmb3JtOiAkcHJvcGVydHk7XG4gIC1vLXRyYW5zZm9ybTogJHByb3BlcnR5O1xuICB0cmFuc2Zvcm06ICRwcm9wZXJ0eTtcbn1cblxuIiwiJGxhcHRvcF9sczogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDE5MTlweCknO1xuJGxhcHRvcF9sOiAnKG1heC13aWR0aDogMTQ0MHB4KSc7XG4kbGFwdG9wX206ICcobWF4LXdpZHRoOiAxMzY2cHgpJztcbiRsYXB0b3BfbV90d286ICcobWF4LXdpZHRoOiAxMjgwcHgpJztcbiRsYXB0b3BfbV90aHJlZTogJyhtYXgtd2lkdGg6IDEyMDBweCknO1xuJGxhcHRvcF9tX2ZvdXI6ICcobWF4LXdpZHRoOiAxMTk5cHgpJztcbiRsYXB0b3BfbV9maXZlOiAnKG1heC13aWR0aDogMTAyNHB4KSc7XG4kbGFwdG9wX21fc2l4OiAnKG1pbi13aWR0aDogMTIwMHB4KSc7XG4kbWVkaXVtX2RldmljZTogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDEyMDBweCknO1xuJHRhYl9kZXZpY2U6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIGFuZCAobWF4LXdpZHRoOiA5OTFweCknO1xuJHRhYl9kZXZpY2UtYW5kLW1vYmlsZTogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDk5MHB4KSc7XG4kdGFiX2RldmljZV90d286ICcobWF4LXdpZHRoOiA3NjhweCknO1xuJHRhYl9kZXZpY2VfdGhyZWU6ICcobWF4LXdpZHRoOiA5OTFweCknO1xuJHRhYl9kZXZpY2VfZm91cjogJyhtaW4td2lkdGg6IDk5MXB4KSc7XG4kbGFyZ2VfbW9iaWxlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDQ4MHB4KSBhbmQgKG1heC13aWR0aDogNzY3cHgpJztcbiRsYXJnZV9tb2JpbGVfdHdvOiAnIChtYXgtd2lkdGg6IDYwMHB4KSc7XG4kbGFyZ2VfbW9iaWxlX3RocmVlOiAnIChtYXgtd2lkdGg6IDU3NXB4KSc7XG4kbGFyZ2VfbW9iaWxlX2ZvdXI6ICcgKG1heC13aWR0aDogNDgwcHgpJztcbiRzbWFsbF9tb2JpbGU6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIGFuZCAobWF4LXdpZHRoOiA0NzlweCknO1xuJHNtYWxsX21vYmlsZV9vbmU6ICcgKG1heC13aWR0aDogNDI1cHgpJztcbiRzbWFsbF9tb2JpbGVfdHdvOiAnKG1heC13aWR0aDogNDAwcHgpJztcbiRzbWFsbF9tb2JpbGVfdGhyZWU6ICcobWF4LXdpZHRoOiAzMjBweCknO1xuJHNtYWxsX21vYmlsZV9mb3VyOiAnKG1heC13aWR0aDogMzc1cHgpJztcbiRkZXZpY2UtMTYwMDogJyhtYXgtd2lkdGg6IDE2MDBweCknO1xuJGRldmljZS03Njc6ICcobWF4LXdpZHRoOiA3NjdweCknO1xuJGRldmljZS05OTI6ICcobWF4LXdpZHRoOiA5OTJweCknO1xuJGRldmljZS03Njc6ICcobWF4LXdpZHRoOiA3NjdweCknO1xuJGRldmljZS00ODE6ICcobWF4LXdpZHRoOiA0ODFweCknO1xuJGRldmljZS0zODQ6ICcobWF4LXdpZHRoOiAzODRweCknO1xuXG5cblxuXG5cbiJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7Ozs7Ozs7RUFPRTtBQUNGOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3FFQXFGcUU7QUFDckUsT0FBTyxDQUFDLHNHQUFJO0FDOUNaLHVCQUF1QjtBRHdRdkIsQUN2UUEsVUR1UVUsQ0N2UUM7RUFDVCxTQUFTLEVBQUUsSUFBSTtFQUNm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 */
