@charset "UTF-8";
/*
	Template Name: Aduca - Learning & Online Education HTML Template
	Version: 1.0
	Author: TechyDevs
	Author Email: contact@techydevs.com
	Description: This is a Learning & Online Education HTML Template

*/
/*------------------------------------------------------------------
[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)';
-------------------------------------------------------------------*/
/*---- 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); }

.new-page-badge {
  display: inline-block;
  padding: 1px 6px 0 6px;
  background-color: #51be78;
  color: #fff;
  font-size: 11px;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  float: right;
  font-weight: 600; }

/*====================================================
    input-number-group
 ====================================================*/
.input-number-group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center; }
  .input-number-group input[type=number]::-webkit-inner-spin-button,
  .input-number-group input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    appearance: none; }
  .input-number-group .input-group-button {
    line-height: 35px; }
  .input-number-group .input-number {
    padding: 0 12px;
    outline: none;
    display: block;
    text-align: center; }
  .input-number-group .input-number,
  .input-number-group .input-number-decrement,
  .input-number-group .input-number-increment {
    border: 1px solid rgba(127, 136, 151, 0.2);
    height: 35px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-weight: 600;
    font-size: 18px;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
    color: #233d63; }
  .input-number-group .input-number-decrement,
  .input-number-group .input-number-increment {
    display: inline-block;
    width: 35px;
    text-align: center;
    cursor: pointer;
    -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; }
    .input-number-group .input-number-decrement:hover,
    .input-number-group .input-number-increment:hover {
      background-color: #51be78;
      color: #fff;
      border-color: #51be78; }
  .input-number-group .input-number-decrement {
    margin-right: 0.5rem;
    margin-left: 1rem; }
  .input-number-group .input-number-increment {
    margin-left: 0.5rem; }

/*======== select-option =======*/
.select-option {
  position: relative; }
  .select-option .form-icon {
    position: absolute;
    top: 13px;
    left: 20px; }
  .select-option select {
    width: 100%;
    border: 1px solid rgba(127, 136, 151, 0.2);
    padding: 15px 20px 15px 50px;
    display: block;
    margin-bottom: 20px;
    color: rgba(127, 136, 151, 0.6);
    -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: #fff; }
    .select-option select:focus {
      border-color: rgba(127, 136, 151, 0.5); }
  .select-option:after {
    position: absolute;
    content: "\f110";
    top: 12px;
    right: 13px;
    font-family: "LineAwesome";
    color: #7f8897;
    pointer-events: none;
    display: inline-block; }

/*-===============================
    header-menu-area
===============================-*/
.header-menu-area {
  position: relative;
  z-index: 1023;
  background-color: #fff; }
  .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);
    padding-right: 185px;
    padding-left: 185px; }
    @media (max-width: 1600px) {
      .header-menu-area .header-top {
        padding-right: 0;
        padding-left: 0; } }
    @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 .shopping-cart-list {
              text-align: left !important;
              width: 315px !important;
              left: -259px !important; }
              .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list li {
                border-bottom: 1px solid #eee;
                padding-bottom: 20px;
                margin-bottom: 20px !important;
                display: block !important; }
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list li:last-child {
                  border-bottom: none;
                  padding-bottom: 0;
                  margin-bottom: 0 !important; }
              .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-item {
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: flex;
                -ms-flex-align: center;
                align-items: center; }
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-item img {
                  width: 65px;
                  height: 65px;
                  margin-right: 15px;
                  -webkit-border-radius: 4px;
                  -moz-border-radius: 4px;
                  border-radius: 4px; }
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-item .item__info a {
                  display: block;
                  color: #233d63;
                  font-weight: 500;
                  text-transform: capitalize;
                  line-height: 20px;
                  padding-bottom: 5px; }
                  .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-item .item__info a:hover {
                    color: #51be78; }
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-item .item__info .item__price {
                  font-size: 16px;
                  color: #233d63;
                  font-weight: 600; }
                  .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-item .item__info .item__price .item__before-price {
                    margin-left: 3px;
                    color: #7f8897;
                    text-decoration: line-through; }
              .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-info p {
                margin-bottom: 20px; }
              .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-info .item__price {
                font-size: 18px;
                color: #233d63;
                font-weight: 600; }
                .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-info .item__price .item__before-price {
                  margin-left: 3px;
                  color: #7f8897;
                  text-decoration: line-through; }
              .header-menu-area .header-top .header-widget2 .header-right-info ul.user-cart li .shopping-cart-list .cart-info .theme-btn {
                display: block;
                text-align: center !important; }
            .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 .header-menu-content {
    padding-right: 185px;
    padding-left: 185px;
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    background-color: #fff; }
    @media (max-width: 1600px) {
      .header-menu-area .header-menu-content {
        padding-right: 0;
        padding-left: 0; } }
  .header-menu-area .main-menu-content {
    height: 100px; }
    @media (max-width: 425px) {
      .header-menu-area .main-menu-content {
        height: auto;
        padding-top: 30px;
        padding-bottom: 30px; } }
    @media (max-width: 1199px) {
      .header-menu-area .main-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 .main-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 .main-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 .main-menu-content .col-lg-3 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; } }
    @media (max-width: 1199px) {
      .header-menu-area .main-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 .main-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 .main-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 .main-menu-content .col-lg-9 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; } }
    .header-menu-area .main-menu-content .logo-box {
      display: -webkit-flex;
      display: -ms-flex;
      display: flex;
      -ms-flex-align: center;
      align-items: center; }
      .header-menu-area .main-menu-content .logo-box img {
        width: 150px; }
        @media (max-width: 320px) {
          .header-menu-area .main-menu-content .logo-box img {
            width: 110px; } }
      @media only screen and (min-width: 768px) and (max-width: 991px) {
        .header-menu-area .main-menu-content .logo-box .logo {
          display: inline-block; } }
      @media only screen and (min-width: 480px) and (max-width: 767px) {
        .header-menu-area .main-menu-content .logo-box .logo {
          display: inline-block; } }
      @media only screen and (min-width: 320px) and (max-width: 479px) {
        .header-menu-area .main-menu-content .logo-box .logo {
          display: inline-block; } }
      .header-menu-area .main-menu-content .logo-box .header-category {
        margin-left: auto;
        margin-right: 4px; }
        @media (max-width: 425px) {
          .header-menu-area .main-menu-content .logo-box .header-category {
            margin-right: 0;
            margin-left: 40px; } }
        @media (max-width: 375px) {
          .header-menu-area .main-menu-content .logo-box .header-category {
            margin-left: 30px; } }
        @media (max-width: 320px) {
          .header-menu-area .main-menu-content .logo-box .header-category {
            margin-left: 15px; } }
        .header-menu-area .main-menu-content .logo-box .header-category ul li {
          position: relative; }
          .header-menu-area .main-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 .main-menu-content .logo-box .header-category ul li a .fa-th {
              font-size: 14px; }
            .header-menu-area .main-menu-content .logo-box .header-category ul li a:hover {
              color: #51be78; }
          .header-menu-area .main-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 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -210px;
                overflow-x: hidden;
                height: 392px; } }
            @media only screen and (min-width: 320px) and (max-width: 479px) {
              .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -210px;
                overflow-x: hidden;
                height: 392px; } }
            @media (max-width: 425px) {
              .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -150px; } }
            @media (max-width: 375px) {
              .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -165px; } }
            @media (max-width: 320px) {
              .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item {
                left: -130px;
                width: 300px; } }
            .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li {
              margin-bottom: 18px; }
              .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li:last-child {
                margin-bottom: 0; }
              .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li .menu-collapse {
                position: absolute;
                right: 20px;
                top: -5px;
                padding: 10px;
                background-color: transparent;
                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;
                -webkit-border-radius: 30px;
                -moz-border-radius: 30px;
                border-radius: 30px; }
                .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li .menu-collapse:hover {
                  background-color: rgba(81, 190, 120, 0.1);
                  color: #51be78; }
              .header-menu-area .main-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 .main-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;
                -moz-transition: all 0.3s;
                -ms-transition: all 0.3s;
                -o-transition: all 0.3s;
                transition: all 0.3s;
                -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 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu {
                    margin-top: 10px;
                    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 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu {
                    margin-top: 10px;
                    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 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li {
                  margin-bottom: 18px; }
                  .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li:last-child {
                    margin-bottom: 0; }
                  .header-menu-area .main-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 .main-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 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu li a:hover {
                      color: #51be78; }
                      .header-menu-area .main-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 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li .sub-menu.active {
                  display: block; }
              .header-menu-area .main-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); }
              .header-menu-area .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li.active .menu-collapse {
                -webkit-transform: rotate(90deg);
                -moz-transform: rotate(90deg);
                -ms-transform: rotate(90deg);
                -o-transform: rotate(90deg);
                transform: rotate(90deg);
                color: #fff;
                background-color: #51be78; }
              @media only screen and (min-width: 480px) and (max-width: 767px) {
                .header-menu-area .main-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 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li.active a {
                  color: #51be78; } }
            .header-menu-area .main-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 .main-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 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item:after {
                  left: auto;
                  right: 30px; } }
          .header-menu-area .main-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 .main-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 .main-menu-content .menu-wrapper .contact-form-action {
        width: 500px;
        margin-right: 35px; }
        @media (max-width: 1199px) {
          .header-menu-area .main-menu-content .menu-wrapper .contact-form-action {
            width: 100%; } }
        @media only screen and (min-width: 768px) and (max-width: 991px) {
          .header-menu-area .main-menu-content .menu-wrapper .contact-form-action {
            width: 380px; } }
        @media only screen and (min-width: 480px) and (max-width: 767px) {
          .header-menu-area .main-menu-content .menu-wrapper .contact-form-action {
            display: none; } }
        @media only screen and (min-width: 320px) and (max-width: 479px) {
          .header-menu-area .main-menu-content .menu-wrapper .contact-form-action {
            display: none; } }
        .header-menu-area .main-menu-content .menu-wrapper .contact-form-action form .form-group {
          margin: 0; }
          .header-menu-area .main-menu-content .menu-wrapper .contact-form-action form .form-group .form-control {
            padding-left: 20px; }
      .header-menu-area .main-menu-content .menu-wrapper .main-menu {
        margin-right: 35px; }
        @media (max-width: 1199px) {
          .header-menu-area .main-menu-content .menu-wrapper .main-menu {
            display: none; } }
        .header-menu-area .main-menu-content .menu-wrapper .main-menu ul {
          display: -webkit-flex;
          display: -ms-flex;
          display: flex; }
          .header-menu-area .main-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 .main-menu-content .menu-wrapper .main-menu ul li {
                margin-right: 20px; } }
            .header-menu-area .main-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 .main-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 .main-menu-content .menu-wrapper .main-menu ul li a:hover {
                color: #51be78; }
                .header-menu-area .main-menu-content .menu-wrapper .main-menu ul li a:hover:after {
                  width: 100%;
                  right: auto;
                  left: 0; }
            .header-menu-area .main-menu-content .menu-wrapper .main-menu ul li:last-child {
              margin-right: 0; }
            .header-menu-area .main-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 .main-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 .main-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item li:last-child {
                  margin-bottom: 0; }
                .header-menu-area .main-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 .main-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item li a:after {
                    bottom: -2px; }
                  .header-menu-area .main-menu-content .menu-wrapper .main-menu ul li .dropdown-menu-item li a:hover {
                    color: #51be78; }
              .header-menu-area .main-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 .main-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 .main-menu-content .menu-wrapper .logo-right-button ul {
          display: none; } }
      .header-menu-area .main-menu-content .menu-wrapper .logo-right-button ul li .theme-btn {
        background-color: #42be6f;
        line-height: 52px; }
      .header-menu-area .main-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 .main-menu-content .menu-wrapper .logo-right-button .side-menu-open {
            display: block; } }
        @media (max-width: 425px) {
          .header-menu-area .main-menu-content .menu-wrapper .logo-right-button .side-menu-open {
            margin-top: -36px; } }
        @media (max-width: 320px) {
          .header-menu-area .main-menu-content .menu-wrapper .logo-right-button .side-menu-open {
            margin-top: -28px; } }
        .header-menu-area .main-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 .main-menu-content .menu-wrapper .logo-right-button .side-menu-open .menu__bar:nth-child(1), .header-menu-area .main-menu-content .menu-wrapper .logo-right-button .side-menu-open .menu__bar:nth-child(2) {
            margin-bottom: 5px; }
          .header-menu-area .main-menu-content .menu-wrapper .logo-right-button .side-menu-open .menu__bar:nth-child(2) {
            margin-left: 5px; }
        .header-menu-area .main-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-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 .main-menu-content .logo-box .header-category {
    margin-right: 0;
    margin-left: 60px; }
    .header-menu-area2 .main-menu-content .logo-box .header-category ul li a {
      color: #fff;
      text-transform: capitalize; }
      .header-menu-area2 .main-menu-content .logo-box .header-category ul li a .fa-th {
        margin-right: 2px; }
    .header-menu-area2 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li a {
      color: #233d63; }
      .header-menu-area2 .main-menu-content .logo-box .header-category ul li .dropdown-menu-item li a:hover {
        color: #51be78; }
  .header-menu-area2 .main-menu-content .menu-wrapper .main-menu ul li {
    text-transform: capitalize; }
    .header-menu-area2 .main-menu-content .menu-wrapper .main-menu ul li a {
      color: #fff; }
  .header-menu-area2 .main-menu-content .menu-wrapper .logo-right-button .social-info li {
    margin-right: 5px; }
    .header-menu-area2 .main-menu-content .menu-wrapper .logo-right-button .social-info li:last-child {
      margin-right: 0; }
    .header-menu-area2 .main-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 .main-menu-content .menu-wrapper .logo-right-button .social-info li a:hover {
        color: #51be78;
        background-color: #fff; }

/*---------------- fixed-nav ----------------*/
.fixed-nav .header-top {
  height: 0;
  border: none;
  opacity: 0;
  visibility: hidden; }

.fixed-nav .header-menu-content {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  -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); }
  .fixed-nav .header-menu-content .main-menu-content {
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s; }
    .fixed-nav .header-menu-content .main-menu-content .logo-box .header-category ul li:hover .dropdown-menu-item {
      top: 50px; }
    .fixed-nav .header-menu-content .main-menu-content .menu-wrapper .main-menu ul li:hover .dropdown-menu-item {
      top: 50px; }

/*-===============================
    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;
  position: relative;
  z-index: 1; }
  @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; }
  .error-area:before, .error-area:after {
    position: absolute;
    content: '';
    top: 55px;
    left: 55px;
    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; }
  .error-area:after {
    bottom: 55px;
    right: 55px;
    left: auto;
    top: auto; }

/*====================================================
    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; }

/*=============== cart-area ===============*/
.cart-area {
  padding-top: 120px;
  padding-bottom: 80px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .cart-area {
      padding-bottom: 0; } }
  .cart-area .table thead > tr > td,
  .cart-area .table thead > tr > th {
    border-bottom-width: 1px; }
  .cart-area .table img {
    width: 100px; }
  .cart-area .table tr td {
    padding: 15px 20px;
    vertical-align: middle;
    line-height: inherit;
    position: relative; }
    .cart-area .table tr td.cart__title {
      font-size: 16px;
      text-transform: capitalize;
      color: #233d63;
      font-weight: 600; }
    .cart-area .table tr td .cartproduct__desc img {
      margin-right: 20px;
      border: 1px solid #eee;
      -webkit-border-radius: 2px;
      -moz-border-radius: 2px;
      border-radius: 2px; }
    .cart-area .table tr td .cartproduct__desc a {
      font-size: 16px;
      color: #233d63;
      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;
      display: inline-block;
      margin-bottom: 7px; }
      .cart-area .table tr td .cartproduct__desc a:hover {
        color: #51be78; }
    .cart-area .table tr td .cartproduct__desc p {
      font-size: 15px;
      color: #7f8897;
      font-weight: 500;
      width: calc(100% - 80px); }
    .cart-area .table tr td .item__price {
      color: #233d63;
      font-weight: 600; }
      .cart-area .table tr td .item__price .item__before-price {
        color: #7f8897;
        text-decoration: line-through; }
    .cart-area .table tr td .input-number-group .input-number-decrement {
      margin-left: 0; }
    .cart-area .table tr td .button-remove {
      background-color: transparent;
      border: 1px solid #eee;
      width: 35px;
      height: 35px;
      text-align: center;
      line-height: 0;
      -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;
      color: #7f8897;
      position: absolute;
      left: 50%;
      top: 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%); }
      .cart-area .table tr td .button-remove .fa-close {
        margin-top: -1px; }
      .cart-area .table tr td .button-remove:hover {
        background-color: #51be78;
        color: #fff;
        border-color: #51be78; }
  .cart-area .cart-detail-wrap {
    margin-top: 20px; }
    .cart-area .cart-detail-wrap .cart-detail-item {
      background-color: #F7FAFD;
      -webkit-border-radius: 4px;
      -moz-border-radius: 4px;
      border-radius: 4px;
      padding: 30px 30px 33px 30px;
      margin-bottom: 30px; }
      .cart-area .cart-detail-wrap .cart-detail-item .cartdetail__title {
        font-size: 18px;
        font-weight: 600;
        margin-bottom: 21px; }
      .cart-area .cart-detail-wrap .cart-detail-item .cartdetail__content .cart__detail-desc {
        line-height: 28px;
        margin-bottom: 26px; }
      .cart-area .cart-detail-wrap .cart-detail-item .cartdetail__content .cart-table {
        margin-top: -5px; }
        .cart-area .cart-detail-wrap .cart-detail-item .cartdetail__content .cart-table tr th {
          border-bottom: none;
          color: #233d63;
          line-height: inherit;
          padding: 15px 0;
          font-weight: 600; }
        .cart-area .cart-detail-wrap .cart-detail-item .cartdetail__content .cart-table tr td {
          color: #7f8897;
          font-weight: 500;
          text-align: right; }
  .cart-area .view-more-courses {
    margin-top: 40px; }
    .cart-area .view-more-courses .view-more-courses__title {
      font-weight: 600;
      font-size: 24px;
      margin-bottom: 35px;
      padding-bottom: 20px;
      border-bottom: 1px solid rgba(127, 136, 151, 0.2); }

/*=============== checkout-area ===============*/
.checkout-area {
  padding-top: 115px;
  padding-bottom: 80px; }
  @media only screen and (min-width: 768px) and (max-width: 991px) {
    .checkout-area {
      padding-bottom: 0; } }
  @media only screen and (min-width: 480px) and (max-width: 767px) {
    .checkout-area {
      padding-bottom: 50px; } }
  @media only screen and (min-width: 320px) and (max-width: 479px) {
    .checkout-area {
      padding-bottom: 50px; } }
  .checkout-area .billing-content {
    background-color: #F7FAFD;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    padding: 20px;
    margin-bottom: 30px; }
    .checkout-area .billing-content .checkout-table thead th {
      padding-top: 0;
      border-top: none;
      border-bottom: none; }
    .checkout-area .billing-content .checkout-table th {
      color: #233d63; }
    .checkout-area .billing-content .checkout-table td {
      color: #7f8897; }
    .checkout-area .billing-content .checkout-table th,
    .checkout-area .billing-content .checkout-table td {
      font-weight: 600;
      padding-right: 0;
      padding-left: 0; }
  .checkout-area .checkout-billing-secured .term-text a {
    color: #51be78; }
  .checkout-area .checkout-billing-secured .billing__secure-connection {
    margin-top: 15px;
    display: -ms-flex;
    display: -moz-flex;
    display: flex;
    -ms-flex-align: center;
    align-items: center; }
    .checkout-area .checkout-billing-secured .billing__secure-connection i {
      font-size: 30px;
      margin-right: 10px; }

.checkout-header .checkout__title {
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 25px; }

.payment-method-wrap {
  margin-top: 20px;
  padding-top: 25px;
  border-top: 1px solid rgba(127, 136, 151, 0.2); }
  .payment-method-wrap .payment-radio {
    display: block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 16px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-weight: 500;
    color: #7f8897; }
    .payment-method-wrap .payment-radio input {
      position: absolute;
      opacity: 0;
      cursor: pointer;
      height: 0;
      width: 0; }
      .payment-method-wrap .payment-radio input:checked ~ .checkmark {
        border-color: #51be78; }
      .payment-method-wrap .payment-radio input:checked ~ .checkmark:after {
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
        opacity: 1; }
    .payment-method-wrap .payment-radio .checkmark {
      position: absolute;
      top: 0;
      left: 0;
      width: 20px;
      height: 20px;
      margin: 3px 0 0 0;
      border: 2px solid #eee;
      -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; }
      .payment-method-wrap .payment-radio .checkmark:after {
        top: 2px;
        left: 2px;
        position: absolute;
        content: '';
        width: 12px;
        height: 12px;
        background-color: #51be78;
        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; }
    .payment-method-wrap .payment-radio:hover input ~ .checkmark:after {
      -webkit-transform: scale(1);
      -moz-transform: scale(1);
      -ms-transform: scale(1);
      -o-transform: scale(1);
      transform: scale(1);
      opacity: 1; }
    .payment-method-wrap .payment-radio:hover input ~ .checkmark {
      border-color: #51be78; }
  .payment-method-wrap .theme-button {
    border: none;
    margin-top: 25px;
    margin-bottom: 5px;
    padding: 12px 25px; }

/*=============== 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 {
            display: block; }
        .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;
      -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;
      z-index: 1; }
      .feature-area .feature-content-wrap .feature-item .hover-overlay:before, .feature-area .feature-content-wrap .feature-item .hover-overlay:after {
        position: absolute;
        content: '';
        top: 50%;
        left: -90px;
        width: 540px;
        height: 540px;
        z-index: -1;
        transition: all .5s ease;
        -webkit-transform: translateY(100%) rotate(10deg);
        -moz-transform: translateY(100%) rotate(10deg);
        -ms-transform: translateY(100%) rotate(10deg);
        -o-transform: translateY(100%) rotate(10deg);
        transform: translateY(100%) rotate(10deg);
        background-color: rgba(255, 255, 255, 0.2); }
      .feature-area .feature-content-wrap .feature-item .hover-overlay:after {
        top: 70%;
        background-color: rgba(255, 255, 255, 0.3); }
      .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 {
        position: absolute;
        content: '';
        top: 30%;
        left: -90px;
        width: 540px;
        height: 540px;
        background-color: rgba(255, 255, 255, 0.1);
        z-index: -1;
        transition: all .5s ease;
        -webkit-transform: translateY(100%) rotate(10deg);
        -moz-transform: translateY(100%) rotate(10deg);
        -ms-transform: translateY(100%) rotate(10deg);
        -o-transform: translateY(100%) rotate(10deg);
        transform: translateY(100%) rotate(10deg); }
      .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 {
          transition-delay: .2s;
          -webkit-transform: translateY(0) rotate(10deg);
          -moz-transform: translateY(0) rotate(10deg);
          -ms-transform: translateY(0) rotate(10deg);
          -o-transform: translateY(0) rotate(10deg);
          transform: translateY(0) rotate(10deg); }
        .feature-area .feature-content-wrap .feature-item:hover .hover-overlay:before, .feature-area .feature-content-wrap .feature-item:hover .hover-overlay:after {
          -webkit-transform: translateY(0) rotate(10deg);
          -moz-transform: translateY(0) rotate(10deg);
          -ms-transform: translateY(0) rotate(10deg);
          -o-transform: translateY(0) rotate(10deg);
          transform: translateY(0) rotate(10deg); }
        .feature-area .feature-content-wrap .feature-item:hover .hover-overlay:after {
          transition-delay: .1s; }
    .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 .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/img31.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); }
      @media (max-width: 375px) {
        .testimonial-area .testimonial-wrap .testimonial-item {
          padding: 30px; } }
      .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: 5px; }
        .testimonial-area .testimonial-wrap .testimonial-item .testimonial__name .testimonial__name-meta {
          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 .testimonial__name .testimonial__name-rating {
          color: #F68A03;
          font-size: 15px;
          margin-left: 6px; }
          .testimonial-area .testimonial-wrap .testimonial-item .testimonial__name .testimonial__name-rating .la {
            margin: 0 -1px; }
      .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-meta {
          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 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__desc {
      line-height: 30px;
      margin-top: 10px; }
    .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);
      font-weight: 600; }
    @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%; } }
  .team-detail-area .student-all-course {
    margin-top: 100px; }

/*-===============================
    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.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;
    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;
    z-index: 2; }
    .contact-area .contact-item .hover-overlay:before, .contact-area .contact-item .hover-overlay:after {
      position: absolute;
      content: '';
      top: 50%;
      left: -90px;
      width: 540px;
      height: 540px;
      z-index: -1;
      transition: all .5s ease;
      -webkit-transform: translateY(100%) rotate(10deg);
      -moz-transform: translateY(100%) rotate(10deg);
      -ms-transform: translateY(100%) rotate(10deg);
      -o-transform: translateY(100%) rotate(10deg);
      transform: translateY(100%) rotate(10deg);
      background-color: rgba(255, 255, 255, 0.2); }
    .contact-area .contact-item .hover-overlay:after {
      top: 70%;
      background-color: rgba(255, 255, 255, 0.3); }
    .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 {
      position: absolute;
      content: '';
      top: 30%;
      left: -90px;
      width: 540px;
      height: 540px;
      background-color: rgba(255, 255, 255, 0.1);
      z-index: -1;
      transition: all .5s ease;
      -webkit-transform: translateY(100%) rotate(10deg);
      -moz-transform: translateY(100%) rotate(10deg);
      -ms-transform: translateY(100%) rotate(10deg);
      -o-transform: translateY(100%) rotate(10deg);
      transform: translateY(100%) rotate(10deg); }
    .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 {
        transition-delay: .2s;
        -webkit-transform: translateY(0) rotate(10deg);
        -moz-transform: translateY(0) rotate(10deg);
        -ms-transform: translateY(0) rotate(10deg);
        -o-transform: translateY(0) rotate(10deg);
        transform: translateY(0) rotate(10deg); }
      .contact-area .contact-item:hover .hover-overlay:before, .contact-area .contact-item:hover .hover-overlay:after {
        -webkit-transform: translateY(0) rotate(10deg);
        -moz-transform: translateY(0) rotate(10deg);
        -ms-transform: translateY(0) rotate(10deg);
        -o-transform: translateY(0) rotate(10deg);
        transform: translateY(0) rotate(10deg); }
      .contact-area .contact-item:hover .hover-overlay:after {
        transition-delay: .1s; }
  .contact-area .contact-item2 .contact__icon {
    color: #F68A03;
    background-color: rgba(246, 138, 3, 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; }

/*-===============================
    SUBSCRIBER AREA 2
===============================-*/
.subscriber-area2 .section-heading {
  margin-bottom: 35px; }
  .subscriber-area2 .section-heading .section__title {
    width: 700px;
    margin: 0 auto; }
    @media only screen and (min-width: 768px) and (max-width: 991px) {
      .subscriber-area2 .section-heading .section__title {
        width: auto; } }
    @media only screen and (min-width: 480px) and (max-width: 767px) {
      .subscriber-area2 .section-heading .section__title {
        width: auto; } }
    @media only screen and (min-width: 320px) and (max-width: 479px) {
      .subscriber-area2 .section-heading .section__title {
        width: auto; } }

.subscriber-area2 .subscriber-form-wrap .subscriber-form .form-control {
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  border-radius: 30px; }

/*======== contact-form-action =========*/
.contact-form-action form .form-group {
  margin-bottom: 20px;
  position: relative; }
  .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: 20px;
    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;
  position: relative;
  z-index: 1; }
  @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%); }
  .form-shared:before, .form-shared:after {
    position: absolute;
    content: '';
    top: 55px;
    right: 55px;
    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; }
  .form-shared:after {
    bottom: 55px;
    left: 55px;
    right: auto;
    top: auto; }

/*-===============================
    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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlcyI6WyJzdHlsZS5zY3NzIiwiX3BsdWdpbi5zY3NzIiwiX21peGluLnNjc3MiLCJfcmVzcG9uc2l2ZS5zY3NzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5cdFRlbXBsYXRlIE5hbWU6IEFkdWNhIC0gTGVhcm5pbmcgJiBPbmxpbmUgRWR1Y2F0aW9uIEhUTUwgVGVtcGxhdGVcblx0VmVyc2lvbjogMS4wXG5cdEF1dGhvcjogVGVjaHlEZXZzXG5cdEF1dGhvciBFbWFpbDogY29udGFjdEB0ZWNoeWRldnMuY29tXG5cdERlc2NyaXB0aW9uOiBUaGlzIGlzIGEgTGVhcm5pbmcgJiBPbmxpbmUgRWR1Y2F0aW9uIEhUTUwgVGVtcGxhdGVcblxuKi9cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5bVGFibGUgb2YgY29udGVudHNdXG5cdCsgR2VuZXJhbFxuXHRcdC0gR2xvYmFsIFN0eWxlc1xuXHRcdC0gZ2VuZXJhbCBTdHlsZXNcblx0XHQtIFByZWxvYWRlclxuXHRcdC0gQmFjayBUbyBUb3Bcblx0XHQtIHRoZW1lLWJ0blxuXHRcdC0gc2VjdGlvbi1oZWFkaW5nXG5cdFx0LSBNb3ZlIGJnXG5cdFx0LSBNb3ZlIGJnIDJcblx0XHQtIHNlY3Rpb24gZGl2aWRlclxuXHQrIEhlYWRlclxuXHRcdC0gTG9nb1xuXHRcdC0gQ2F0ZWdvcnlcblx0XHQtIFNlYWNoIGZvcm1cblx0XHQtIE1haW4gTmF2aWdhdGlvblxuXHRcdC0gRHJvcGRvd25cblx0XHQtIE9mZmNhbnZhcyBtZW51XG5cdFx0LSBBZG1pc3Npb25cblx0KyBDb250ZW50XG5cdFx0KyBNYWluIEZpbGVzXG5cdFx0XHQtIGluZGV4Lmh0bWxcblx0XHRcdC0gaG9tZS0yLmh0bWxcblx0XHQrIEJhbm5lciBBcmVhXG5cdFx0XHQtIEJyZWFkY3J1bWJcblx0ICAgICsgQWJvdXRcblx0ICAgICAgICAtIEFib3V0IHVzXG5cdCAgICArIENvdXJzZXNcblx0ICAgICAgICAtIENvdXJzZSBHcmlkXG5cdCAgICAgICAgLSBDb3Vyc2UgRGV0YWlsXG5cdFx0KyBQYWdlc1xuXHRcdFx0LSBUZWFjaGVyXG5cdFx0XHQtIFRlYWNoZXIgRGV0YWlsXG5cdFx0XHQtIEZBUXNcblx0XHRcdC0gQWRtaXNzaW9uXG5cdFx0XHQtIEdhbGxlcnlcblx0XHRcdC0gUHJpY2luZyBUYWJsZVxuXHRcdFx0LSBTaW5nIHVwXG5cdFx0XHQtIExvZyBpblxuXHRcdFx0LSBFcnJvciA0MDQgcGFnZVxuXHRcdCsgQmxvZ1xuXHRcdCAgICAtIEJsb2cgR3JpZFxuXHRcdCAgICAtIEJsb2cgU2luZ2xlXG5cdFx0KyBDb250YWN0XG5cdFx0ICAgIC0gQ29udGFjdFxuXHQrIEZvb3RlclxuXHRcdCsgVG9wIEZvb3RlclxuXHRcdFx0LSBMb2dvXG5cdFx0XHQtIENvbXBhbnlcblx0XHRcdC0gQ291cnNlc1xuXHRcdFx0LSBNb2JpbGUgYXBwXG5cdFx0KyBCb3R0b20gRm9vdGVyXG5cdFx0ICAgIC0gQ29weXJpZ2h0XG5cdFx0ICAgIC0gTGFuZ3VhZ2UgU2VsZWN0XG5cdCsgUmVzcG9uc2l2ZSBEZXNpZ24gU3R5bGVzXG4gICAgICAgICAgICAtICRsYXB0b3BfbHM6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogMzIwcHgpIGFuZCAobWF4LXdpZHRoOiAxOTE5cHgpJztcbiAgICAgICAgICAgIC0gJGxhcHRvcF9sOiAnKG1heC13aWR0aDogMTQ0MHB4KSc7XG4gICAgICAgICAgICAtICRsYXB0b3BfbTogJyhtYXgtd2lkdGg6IDEzNjZweCknO1xuICAgICAgICAgICAgLSAkbGFwdG9wX21fdHdvOiAnKG1heC13aWR0aDogMTI4MHB4KSc7XG4gICAgICAgICAgICAtICRsYXB0b3BfbV90aHJlZTogJyhtYXgtd2lkdGg6IDEyMDBweCknO1xuICAgICAgICAgICAgLSAkbGFwdG9wX21fZm91cjogJyhtYXgtd2lkdGg6IDExOTlweCknO1xuICAgICAgICAgICAgLSAkbGFwdG9wX21fZml2ZTogJyhtYXgtd2lkdGg6IDEwMjRweCknO1xuICAgICAgICAgICAgLSAkbGFwdG9wX21fc2l4OiAnKG1pbi13aWR0aDogMTIwMHB4KSc7XG4gICAgICAgICAgICAtICRtZWRpdW1fZGV2aWNlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSc7XG4gICAgICAgICAgICAtICR0YWJfZGV2aWNlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpJztcbiAgICAgICAgICAgIC0gJHRhYl9kZXZpY2UtYW5kLW1vYmlsZTogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDk5MHB4KSc7XG4gICAgICAgICAgICAtICR0YWJfZGV2aWNlX3R3bzogJyhtYXgtd2lkdGg6IDc2OHB4KSc7XG4gICAgICAgICAgICAtICR0YWJfZGV2aWNlX3RocmVlOiAnKG1heC13aWR0aDogOTkxcHgpJztcbiAgICAgICAgICAgIC0gJHRhYl9kZXZpY2VfZm91cjogJyhtaW4td2lkdGg6IDk5MXB4KSc7XG4gICAgICAgICAgICAtICRsYXJnZV9tb2JpbGU6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCknO1xuICAgICAgICAgICAgLSAkbGFyZ2VfbW9iaWxlX3R3bzogJyAobWF4LXdpZHRoOiA2MDBweCknO1xuICAgICAgICAgICAgLSAkbGFyZ2VfbW9iaWxlX3RocmVlOiAnIChtYXgtd2lkdGg6IDU3NXB4KSc7XG4gICAgICAgICAgICAtICRsYXJnZV9tb2JpbGVfZm91cjogJyAobWF4LXdpZHRoOiA0ODBweCknO1xuICAgICAgICAgICAgLSAkc21hbGxfbW9iaWxlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSBhbmQgKG1heC13aWR0aDogNDc5cHgpJztcbiAgICAgICAgICAgIC0gJHNtYWxsX21vYmlsZV9vbmU6ICcgKG1heC13aWR0aDogNDI1cHgpJztcbiAgICAgICAgICAgIC0gJHNtYWxsX21vYmlsZV90d286ICcobWF4LXdpZHRoOiA0MDBweCknO1xuICAgICAgICAgICAgLSAkc21hbGxfbW9iaWxlX3RocmVlOiAnKG1heC13aWR0aDogMzIwcHgpJztcbiAgICAgICAgICAgIC0gJHNtYWxsX21vYmlsZV9mb3VyOiAnKG1heC13aWR0aDogMzc1cHgpJztcbiAgICAgICAgICAgIC0gJGRldmljZS0xNjAwOiAnKG1heC13aWR0aDogMTYwMHB4KSc7XG4gICAgICAgICAgICAtICRkZXZpY2UtNzY3OiAnKG1heC13aWR0aDogNzY3cHgpJztcbiAgICAgICAgICAgIC0gJGRldmljZS05OTI6ICcobWF4LXdpZHRoOiA5OTJweCknO1xuICAgICAgICAgICAgLSAkZGV2aWNlLTc2NzogJyhtYXgtd2lkdGg6IDc2N3B4KSc7XG4gICAgICAgICAgICAtICRkZXZpY2UtNDgxOiAnKG1heC13aWR0aDogNDgxcHgpJztcbiAgICAgICAgICAgIC0gJGRldmljZS0zODQ6ICcobWF4LXdpZHRoOiAzODRweCknO1xuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXG5AaW1wb3J0IFwicGx1Z2luXCI7XG5AaW1wb3J0IFwibWl4aW5cIjtcbkBpbXBvcnQgXCJyZXNwb25zaXZlXCI7XG5cbioge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG51bCB7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xufVxuYTpob3ZlcixcbmE6Zm9jdXN7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cbmlucHV0OmZvY3VzIHtcbiAgb3V0bGluZTogbm9uZTtcbn1cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBjb2xvcjogJHRoZW1lLWNvbG9yO1xufVxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG4gIG1hcmdpbjogMDtcbn1cbmJvZHkge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAyMnB4O1xuICBmb250LWZhbWlseTogJHRoZW1lLWZvbnQ7XG4gIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbn1cblxuLyotLS0tLS0tLS0tLS0tLS0tIGNvbnRhaW5lciAtLS0tLS0tLS0tLS0tLS0tKi9cbi5jb250YWluZXIge1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6NTc2cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA1NDBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6NzY4cHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA3MjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIHtcbiAgLmNvbnRhaW5lciB7XG4gICAgbWF4LXdpZHRoOiA5NjBweDtcbiAgfVxufVxuQG1lZGlhIChtaW4td2lkdGg6MTIwMHB4KSB7XG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTIwMHB4O1xuICB9XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PSBsb2FkaW5nLWFyZWEgPT09PT09PT09PT09PT0tKi9cbi5wcmVsb2FkZXIge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgLmNzc2xvYWQtbG9hZGVyIHtcbiAgICB3aWR0aDogOTdweDtcbiAgICBoZWlnaHQ6IDE5cHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIC01MCUpKTtcbiAgICA+IGRpdiB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDEwMCUpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYW5pbWF0aW9uOiBjc3Nsb2FkLXNoaWZ0IDIuM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW8tYW5pbWF0aW9uOiBjc3Nsb2FkLXNoaWZ0IDIuM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW1zLWFuaW1hdGlvbjogY3NzbG9hZC1zaGlmdCAyLjNzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgIC13ZWJraXQtYW5pbWF0aW9uOiBjc3Nsb2FkLXNoaWZ0IDIuM3MgbGluZWFyIGluZmluaXRlO1xuICAgICAgLW1vei1hbmltYXRpb246IGNzc2xvYWQtc2hpZnQgMi4zcyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICY6bnRoLW9mLXR5cGUoMSkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjQ2cztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMC40NnM7XG4gICAgICAgIC1tcy1hbmltYXRpb24tZGVsYXk6IC0wLjQ2cztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjQ2cztcbiAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0wLjQ2cztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0wLjkycztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMC45MnM7XG4gICAgICAgIC1tcy1hbmltYXRpb24tZGVsYXk6IC0wLjkycztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjkycztcbiAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0wLjkycztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMykge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjM4cztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMS4zOHM7XG4gICAgICAgIC1tcy1hbmltYXRpb24tZGVsYXk6IC0xLjM4cztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjM4cztcbiAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0xLjM4cztcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoNCkge1xuICAgICAgICBhbmltYXRpb24tZGVsYXk6IC0xLjg0cztcbiAgICAgICAgLW8tYW5pbWF0aW9uLWRlbGF5OiAtMS44NHM7XG4gICAgICAgIC1tcy1hbmltYXRpb24tZGVsYXk6IC0xLjg0cztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjg0cztcbiAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC0xLjg0cztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLSBjc3Nsb2FkLXNoaWZ0IC0tLS0tLS0tLS0tLS0tLS0qL1xuQGtleWZyYW1lcyBjc3Nsb2FkLXNoaWZ0IHtcbiAgMCUge1xuICAgIGxlZnQ6IC0zN3B4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAlIHtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgOTAlIHtcbiAgICBsZWZ0OiA2MnB4O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMTAwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5ALW8ta2V5ZnJhbWVzIGNzc2xvYWQtc2hpZnQge1xuICAwJSB7XG4gICAgbGVmdDogLTM3cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMCUge1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA5MCUge1xuICAgIGxlZnQ6IDYycHg7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAxMDBweDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtbXMta2V5ZnJhbWVzIGNzc2xvYWQtc2hpZnQge1xuICAwJSB7XG4gICAgbGVmdDogLTM3cHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICAxMCUge1xuICAgIGxlZnQ6IDA7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICA5MCUge1xuICAgIGxlZnQ6IDYycHg7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBsZWZ0OiAxMDBweDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBjc3Nsb2FkLXNoaWZ0IHtcbiAgMCUge1xuICAgIGxlZnQ6IC0zN3B4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgMTAlIHtcbiAgICBsZWZ0OiAwO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgOTAlIHtcbiAgICBsZWZ0OiA2MnB4O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgbGVmdDogMTAwcHg7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5ALW1vei1rZXlmcmFtZXMgY3NzbG9hZC1zaGlmdCB7XG4gIDAlIHtcbiAgICBsZWZ0OiAtMzdweDtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDEwJSB7XG4gICAgbGVmdDogMDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDkwJSB7XG4gICAgbGVmdDogNjJweDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIGxlZnQ6IDEwMHB4O1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLSB0aGVtZS1idG4gLS0tLS0tLS0tLS0tLS0tLSovXG4udGhlbWUtYnRuIHtcbiAgQGV4dGVuZCAldGhlbWUtYnRuO1xuICAmOmFmdGVyIHtcbiAgICBAZXh0ZW5kICV0aGVtZS1idG4tYWZ0ZXI7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICR3aGl0ZTtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShza2V3WCgwKSk7XG4gICAgICBvcGFjaXR5OiAuMjtcbiAgICB9XG4gIH1cbn1cbi50aGVtZS1idG4yIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4KTtcbn1cbi8qLS0tLS0tLS0tLS0tLS0tLSBzZWN0aW9uLWhlYWRpbmcgLS0tLS0tLS0tLS0tLS0tLSovXG4uc2VjdGlvbi1oZWFkaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICAuc2VjdGlvbl9fbWV0YSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTM7XG4gICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICBsZXR0ZXItc3BhY2luZzogMC42cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbiAgfVxuICAuc2VjdGlvbl9fdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJHByaW1hcnktZm9udDtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb25fX3RpdGxlMixcbiAgLnNlY3Rpb25fX21ldGEye1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbiAgLnNlY3Rpb25fX21ldGEyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gIH1cbiAgLnNlY3Rpb25fX21ldGEzIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgIHBhZGRpbmc6IDZweCAxNXB4O1xuICB9XG4gIC5zZWN0aW9uX19kZXNjIHtcbiAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICBtYXJnaW4tYm90dG9tOiAzNHB4O1xuICB9XG4gIC5zZWN0aW9uX19kZXNjMiB7XG4gICAgZm9udC1zaXplOiAkZGlzcGxheS0xMTtcbiAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgfVxuICAuc2VjdGlvbl9fZGl2aWRlciB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBoZWlnaHQ6IDVweDtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIHdpZHRoOiA5MHB4O1xuICAgIG1hcmdpbi10b3A6IDE4cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdG9wOiAtMS4xcHg7XG4gICAgICBoZWlnaHQ6IDdweDtcbiAgICAgIHdpZHRoOiA4cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogM3M7XG4gICAgICBhbmltYXRpb24tZHVyYXRpb246IDNzO1xuICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBNT1ZFLUJHO1xuICAgICAgYW5pbWF0aW9uLW5hbWU6IE1PVkUtQkc7XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uX19kaXZpZGVyMiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLS0tIE1PVkUtQkctLS0tLS0tLS0tLS0tLS0tKi9cbkAtd2Via2l0LWtleWZyYW1lcyBNT1ZFLUJHIHtcbiAgIGZyb20ge1xuICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgfVxuICAgdG8ge1xuICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg4OHB4KTtcbiAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDg4cHgpO1xuICAgfVxuIH1cbkAtd2Via2l0LWtleWZyYW1lcyBNT1ZFLUJHIHtcbiAgZnJvbSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbiAgdG8ge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODhweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDg4cHgpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgTU9WRS1CRyB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoODhweCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDg4cHgpO1xuICB9XG59XG4vKi0tLS0tLS0tLS0tLS0tLS0gTU9WRS1CRyAyIC0tLS0tLS0tLS0tLS0tLS0qL1xuQC13ZWJraXQta2V5ZnJhbWVzIE1PVkUtQkcyIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0OHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDhweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBNT1ZFLUJHMiB7XG4gIGZyb20ge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIHRvIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQ4cHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg0OHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIE1PVkUtQkcyIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0OHB4KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDhweCk7XG4gIH1cbn1cbi8qLS0tLS0tLS0tLS0tLS0tLSBzZWN0aW9uLWRpdmlkZXIgLS0tLS0tLS0tLS0tLS0tLSovXG4uc2VjdGlvbi1kaXZpZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDJweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xufVxuLm5ldy1wYWdlLWJhZGdlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAxcHggNnB4IDAgNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZm9udC1zaXplOiAxMXB4O1xuICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gIGZsb2F0OiByaWdodDtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBpbnB1dC1udW1iZXItZ3JvdXBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5pbnB1dC1udW1iZXItZ3JvdXAge1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICBpbnB1dFt0eXBlPW51bWJlcl06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG4gIGlucHV0W3R5cGU9bnVtYmVyXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gIH1cbiAgLmlucHV0LWdyb3VwLWJ1dHRvbiB7XG4gICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gIH1cbiAgLmlucHV0LW51bWJlciB7XG4gICAgcGFkZGluZzogMCAxMnB4O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5pbnB1dC1udW1iZXIsXG4gIC5pbnB1dC1udW1iZXItZGVjcmVtZW50LFxuICAuaW5wdXQtbnVtYmVyLWluY3JlbWVudCB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgIGhlaWdodDogMzVweDtcbiAgICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAgIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1zLXVzZXItc2VsZWN0OiBub25lO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4KTtcbiAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICB9XG4gIC5pbnB1dC1udW1iZXItZGVjcmVtZW50LFxuICAuaW5wdXQtbnVtYmVyLWluY3JlbWVudCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIH1cbiAgfVxuICAuaW5wdXQtbnVtYmVyLWRlY3JlbWVudCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwLjVyZW07XG4gICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gIH1cbiAgLmlucHV0LW51bWJlci1pbmNyZW1lbnQge1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVyZW07XG4gIH1cbn1cbi8qPT09PT09PT0gc2VsZWN0LW9wdGlvbiA9PT09PT09Ki9cbi5zZWxlY3Qtb3B0aW9uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAuZm9ybS1pY29uIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxM3B4O1xuICAgIGxlZnQ6IDIwcHg7XG4gIH1cbiAgc2VsZWN0IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7O1xuICAgIHBhZGRpbmc6IDE1cHggMjBweCAxNXB4IDUwcHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBjb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjYpO1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW1zLWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgLW8tYXBwZWFyYW5jZTogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICY6Zm9jdXMge1xuICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuNSk7XG4gICAgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiBcIlxcZjExMFwiO1xuICAgIHRvcDogMTJweDtcbiAgICByaWdodDogMTNweDtcbiAgICBmb250LWZhbWlseTogXCJMaW5lQXdlc29tZVwiO1xuICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBoZWFkZXItbWVudS1hcmVhXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uaGVhZGVyLW1lbnUtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTAyMztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAuY29udGFpbmVyLWZsdWlkIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBAbWVkaWEgI3skZGV2aWNlLTE2MDB9IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgfVxuICB9XG4gIC5oZWFkZXItdG9wIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4NXB4O1xuICAgIHBhZGRpbmctbGVmdDogMTg1cHg7XG4gICAgQG1lZGlhICN7JGRldmljZS0xNjAwfSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuY29sLWxnLTYge1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2VfdHdvfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlci13aWRnZXQge1xuICAgICAgdWwge1xuICAgICAgICBoZWlnaHQ6IDQ1cHg7XG4gICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlX3R3b30ge1xuICAgICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAubGEge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5jb250YWN0LWluZm8ge1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGhlaWdodDogNDVweDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4xKTtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlX3R3b30ge1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpmaXJzdC1jaGlsZCxcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlci13aWRnZXQxIHtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyLXdpZGdldDIge1xuICAgICAgaGVpZ2h0OiA0NXB4O1xuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICB9XG4gICAgICAuaGVhZGVyLXJpZ2h0LWluZm8ge1xuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4xKTtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZV90d299IHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYudXNlci1hY3Rpb24ge1xuICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYudXNlci1jYXJ0IHtcbiAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgLnVzZXItY2FydC1idG4ge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDdweCAxNXB4IDEzcHggMTVweDtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA0O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yMjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogNDVweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDgyLCA4NSwgOTAsIDAuMSkpO1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC44KSk7XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICAgICAgICBsZWZ0OiAtMTI1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICAgICAgICAgIGxlZnQ6IC0yNDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMztcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQycHg7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMTNweDtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coLTJweCAtMnB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yKSk7XG4gICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDEyMHB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgICAgICAgICAgICByaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLnNob3BwaW5nLWNhcnQtbGlzdCB7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMTVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0yNTlweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3I7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHggIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY2FydC1pdGVtIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC1tb3otZmxleDtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDY1cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogNjVweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAuaXRlbV9faW5mbyB7XG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLml0ZW1fX3ByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICAgICAgICAgICAgICAuaXRlbV9fYmVmb3JlLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLmNhcnQtaW5mbyB7XG4gICAgICAgICAgICAgICAgICBwIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5pdGVtX19wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgICAgICAgICAuaXRlbV9fYmVmb3JlLXByaWNlIHtcbiAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLnRoZW1lLWJ0biB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zb2NpYWwtaW5mbyB7XG4gICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmhlYWRlci1yaWdodC1pbmZvLmQtZmxleCB7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmhlYWRlci13aWRnZXQyLmQtZmxleCB7XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXItd2lkZ2V0Mi5qdXN0aWZ5LWNvbnRlbnQtZW5kIHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlX3R3b30ge1xuICAgICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmhlYWRlci1tZW51LWNvbnRlbnQge1xuICAgIHBhZGRpbmctcmlnaHQ6IDE4NXB4O1xuICAgIHBhZGRpbmctbGVmdDogMTg1cHg7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjVzKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgQG1lZGlhICN7JGRldmljZS0xNjAwfSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgfVxuICAubWFpbi1tZW51LWNvbnRlbnQge1xuICAgIGhlaWdodDogMTAwcHg7XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgfVxuICAgIC5jb2wtbGctMyB7XG4gICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDMwJTtcbiAgICAgICAgZmxleDogMCAwIDMwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMCU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDQwJTtcbiAgICAgICAgZmxleDogMCAwIDQwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA0MCU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgODUlO1xuICAgICAgICBmbGV4OiAwIDAgODUlO1xuICAgICAgICBtYXgtd2lkdGg6IDg1JTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29sLWxnLTkge1xuICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA3MCU7XG4gICAgICAgIGZsZXg6IDAgMCA3MCU7XG4gICAgICAgIG1heC13aWR0aDogNzAlO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA2MCU7XG4gICAgICAgIGZsZXg6IDAgMCA2MCU7XG4gICAgICAgIG1heC13aWR0aDogNjAlO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDE1JTtcbiAgICAgICAgZmxleDogMCAwIDE1JTtcbiAgICAgICAgbWF4LXdpZHRoOiAxNSU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmxvZ28tYm94IHtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgd2lkdGg6IDExMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubG9nbyB7XG4gICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmhlYWRlci1jYXRlZ29yeSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDQwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC0yO1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDQxcHg7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgIC5mYS10aCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTM7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHRvcDogNThweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDMyMHB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMjVweCAwO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxLjI3NSkpO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuOCkpO1xuICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTIxMHB4O1xuICAgICAgICAgICAgICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDM5MnB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjEwcHg7XG4gICAgICAgICAgICAgICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMzkycHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTUwcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICAgICAgbGVmdDogLTE2NXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMTMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMwMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAubWVudS1jb2xsYXBzZSB7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgIHRvcDogLTVweDtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5zdWItbWVudSB7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICB0b3A6IC0yNHB4O1xuICAgICAgICAgICAgICAgICAgbGVmdDogMzIwcHg7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMjgwcHg7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDAgMjVweCAwO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSg4MiwgODUsIDkwLCAwLjEpKTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjgpKTtcbiAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDBzKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgMCAwKTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMHMpO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAwIDApO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAubWVudS1jb2xsYXBzZSB7XG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoOTBkZWcpKTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIHRvcDogLTdweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTNweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEzcHg7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg0NWRlZykpO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coLTJweCAtMnB4IDEwcHggLTVweCByZ2JhKDAsMCwwLC4yKSk7XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgIHJpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgcmlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbnUtd3JhcHBlciB7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC1tcy1mbGV4LXBhY2s6IGVuZDtcbiAgICAgIGp1c3RpZnktY29udGVudDogZmxleC1lbmQ7XG4gICAgICAuY29udGFjdC1mb3JtLWFjdGlvbiB7XG4gICAgICAgIHdpZHRoOiA1MDBweDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xuICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgd2lkdGg6IDM4MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIGZvcm0ge1xuICAgICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWFpbi1tZW51IHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAzNXB4O1xuICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMzRweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDBweDtcbiAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgICAgIGJvdHRvbTogMzZweDtcbiAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgdG9wOiA1OHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMjEwcHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDI1cHggMzBweCAyNXB4IDMwcHg7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzIGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEuMjc1KSk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSg4MiwgODUsIDkwLCAwLjEpKTtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC44KSk7XG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgICBib3R0b206IC0ycHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICB0b3A6IC03cHg7XG4gICAgICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEzcHg7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxM3B4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoNDVkZWcpKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KC0ycHggLTJweCAxMHB4IC01cHggcmdiYSgwLDAsMCwuMikpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgLmRyb3Bkb3duLW1lbnUtaXRlbSB7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5sb2dvLXJpZ2h0LWJ1dHRvbiB7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgLnRoZW1lLWJ0biB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0zO1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnNpZGUtbWVudS1vcGVuIHtcbiAgICAgICAgICB3aWR0aDogMjdweDtcbiAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1cHgpO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgICBtYXJnaW4tdG9wOiAtMzZweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTI4cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5tZW51X19iYXIge1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSxcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIC5tZW51X19iYXIge1xuICAgICAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNpZGUtbmF2LWNvbnRhaW5lciB7XG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAzMjBweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgICB6LWluZGV4OiA5OTk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjRzIGN1YmljLWJlemllcigwLjcsIDAsIDAuMiwgMSkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSg4MiwgODUsIDkwLCAwLjEpKTtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtMTAwJSkpO1xuICAgIC5odW1idXJnZXItbWVudSB7XG4gICAgICAuaHVtYnVyZ2VyLW1lbnUtbGluZXMge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB3aWR0aDogMjJweDtcbiAgICAgICAgaGVpZ2h0OiAyMnB4O1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICByaWdodDogMThweDtcbiAgICAgICAgb3BhY2l0eTogLjU7XG4gICAgICAgICY6YmVmb3JlLFxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTQzZGVnKSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDQzZGVnKSk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDApKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNpZGUtbWVudS13cmFwIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgICAgLnNpZGUtbWVudS11bCB7XG4gICAgICAgIC5zaWRlbmF2X19pdGVtIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNHB4IDIwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgfVxuICAgICAgICAgIC5tZW51LXBsdXMtaWNvbiB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDI0cHg7XG4gICAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgd2lkdGg6IDExcHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTkwZGVnKSk7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgwKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEwKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnNpZGUtc3ViLW1lbnUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTIpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xMik7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgPiBhIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEyKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgLm1lbnUtcGx1cy1pY29uIHtcbiAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMGRlZykpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zaWRlLWJ0bi1ib3gge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICB9XG4gICAgJi5hY3RpdmUge1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoMCkpO1xuICAgIH1cbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIGhlYWRlci1tZW51LWFyZWEyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uaGVhZGVyLW1lbnUtYXJlYTIge1xuICBwYWRkaW5nLXJpZ2h0OiAwO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7O1xuICAuaGVhZGVyLXRvcCB7XG4gICAgYm9yZGVyLWJvdHRvbTogdHJhbnNwYXJlbnQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIC5oZWFkZXItd2lkZ2V0MiB7XG4gICAgICAuaGVhZGVyLXJpZ2h0LWluZm8ge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgJi51c2VyLWNhcnQge1xuICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAuZHJvcGRvd24tbWVudS1pdGVtIHtcbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAudGhlbWUtYnRuIHtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4KTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm1haW4tbWVudS1jb250ZW50IHtcbiAgICAubG9nby1ib3gge1xuICAgICAgLmhlYWRlci1jYXRlZ29yeSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDYwcHg7XG4gICAgICAgIHVsIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgIC5mYS10aCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbnUtd3JhcHBlciB7XG4gICAgICAubWFpbi1tZW51IHtcbiAgICAgICAgdWwge1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubG9nby1yaWdodC1idXR0b24ge1xuICAgICAgICAuc29jaWFsLWluZm8ge1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMzhweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzOHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzhweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyotLS0tLS0tLS0tLS0tLS0tIGZpeGVkLW5hdiAtLS0tLS0tLS0tLS0tLS0tKi9cbi5maXhlZC1uYXYgLmhlYWRlci10b3Age1xuICBoZWlnaHQ6IDA7XG4gIGJvcmRlcjogbm9uZTtcbiAgb3BhY2l0eTogMDtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLmZpeGVkLW5hdiAuaGVhZGVyLW1lbnUtY29udGVudCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDgyLCA4NSwgOTAsIDAuMSkpO1xuICAubWFpbi1tZW51LWNvbnRlbnQge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC41cyk7XG4gICAgLmxvZ28tYm94IHtcbiAgICAgIC5oZWFkZXItY2F0ZWdvcnkge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubWVudS13cmFwcGVyIHtcbiAgICAgIC5tYWluLW1lbnUge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIC5kcm9wZG93bi1tZW51LWl0ZW0ge1xuICAgICAgICAgICAgICAgIHRvcDogNTBweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgc2xpZGVyLWFyZWFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5zbGlkZXItYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLnNpbmdsZS1zbGlkZS1pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZy10b3A6IDI1MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAzMzBweDtcbiAgICB6LWluZGV4OiAyO1xuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIHBhZGRpbmctdG9wOiAyMDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzMDBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTQwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjUwcHg7XG4gICAgfVxuICAgIC5zbGlkZS1pdGVtLXRhYmxlIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAuc2xpZGUtaXRlbS10YWJsZWNlbGwge1xuICAgICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAuY29sLWxnLTkge1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNsaWRlci1oZWFkaW5nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICAuc2xpZGVyX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXk7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNHB4O1xuICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogODBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMztcbiAgICAgICAgICBsaW5lLWhlaWdodDogNzVweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS00O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA2NXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRkZXZpY2UtNDgxfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkcHJpbWFyeS1mb250O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2xpZGVyX190ZXh0IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI5cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgIGJyIHtcbiAgICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zbGlkZXItcHJvbW8tYnRuIHtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLnZpZGVvLXBsYXktYnRuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgICBjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB3aWR0aDogNDNweDtcbiAgICAgICAgICAgIGhlaWdodDogNDNweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0MXB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjcpO1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIG9wYWNpdHk6IC45MDtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2hhcGUucG5nXCIpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBvcGFjaXR5OiAwLjE7XG4gICAgfVxuICB9XG4gIC5zbGlkZS1iZzEge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9zbGlkZXItaW1nMS5qcGdcIik7XG4gIH1cbiAgLnNsaWRlLWJnMiB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL3NsaWRlci1pbWcyLmpwZ1wiKTtcbiAgfVxuICAuc2xpZGUtYmczIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2xpZGVyLWltZzMuanBnXCIpO1xuICAgIC5zbGlkZXItaGVhZGluZyB7XG4gICAgICAuc2xpZGVyLXByb21vLWJ0biB7XG4gICAgICAgIC52aWRlby1wbGF5LWJ0biB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm93bC1uYXYge1xuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGRpdiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgICAmLm93bC1wcmV2IHtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgIH1cbiAgICAgICYub3dsLW5leHQge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLm93bC1kb3RzIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAxNDBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgZGl2IHtcbiAgICAgIHdpZHRoOiAxNHB4O1xuICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkd2hpdGU7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBtYXJnaW46IDAgM3B4O1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzIGVhc2UtaW4pO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgJi5hY3RpdmUsXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6aG92ZXIge1xuICAgIC5vd2wtbmF2IHtcbiAgICAgIGRpdiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICYub3dsLXByZXYge1xuICAgICAgICAgIGxlZnQ6IDgwcHg7XG4gICAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX3R3b30ge1xuICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5vd2wtbmV4dCB7XG4gICAgICAgICAgcmlnaHQ6IDgwcHg7XG4gICAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX3R3b30ge1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgc2xpZGVyLWFyZWEgMlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLnNsaWRlci1hcmVhMiB7XG4gIC5zaW5nbGUtc2xpZGUtaXRlbSB7XG4gICAgcGFkZGluZy10b3A6IDE4MHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgIHBhZGRpbmctdG9wOiAxNTBweDtcbiAgICB9XG4gICAgLmNvbC1sZy02IHtcbiAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNjMlO1xuICAgICAgICBmbGV4OiAwIDAgNjMlO1xuICAgICAgICBtYXgtd2lkdGg6IDYzJTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgICNwZXJ0aWNsZXMtanMtMiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICAgIC5zbGlkZXItaGVhZGluZyB7XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICAuc2xpZGVyX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMztcbiAgICAgICAgbGluZS1oZWlnaHQ6IDc1cHg7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHByaW1hcnktZm9udDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbnRhY3QtZm9ybS1hY3Rpb24ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA0MHB4O1xuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBmb3JtIHtcbiAgICAgICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgICAgICAuZm9ybS1jb250cm9sIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnNlYXJjaC1pY29uIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJjphZnRlciB7XG4gICAgICBvcGFjaXR5OiAwLjc7XG4gICAgfVxuICAgIC5ob3ctd2Utd29yay1jb250ZW50IHtcbiAgICAgIGJhY2tncm91bmQ6ICM0MjliODU7XG4gICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgtNDVkZWcsICAjNDI5Yjg1IDAlLCAjNWY3YjhjIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoLTQ1ZGVnLCAgIzQyOWI4NSAwJSwjNWY3YjhjIDEwMCUpO1xuICAgICAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDEzNWRlZywgICM0MjliODUgMCUsIzVmN2I4YyAxMDAlKTtcbiAgICAgIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjNDI5Yjg1JywgZW5kQ29sb3JzdHI9JyM1ZjdiOGMnLEdyYWRpZW50VHlwZT0xICk7XG4gICAgICBtYXJnaW4tdG9wOiAxNTBweDtcbiAgICAgIHBhZGRpbmc6IDMwcHggMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgLmhvdy13ZS13b3JrLXdyYXAge1xuICAgICAgICAuY29sLWxnLTQge1xuICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmhvdy13ZS13b3JrLWl0ZW0ge1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAubGEge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS03O1xuICAgICAgICAgICAgd2lkdGg6IDU1cHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDU1cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNTVweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5ob3ctd29ya19fdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTRweDtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmh3d19fc3ViLXRpdGxlIHtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMTtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAubGEge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5ody1jaXJjbGUge1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm9yZGVyOiA4cHggc29saWQgJHdoaXRlO1xuICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICB0b3A6IC0yMHB4O1xuICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIHRvcDogNzMlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgcmlnaHQ6IDEwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2xpZGUtYmcxIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvc2xpZGVyLWltZzQuanBnXCIpO1xuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBhYm91dC1icmVhZGNydW1iXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uYWJvdXQtYnJlYWRjcnVtYiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci01O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiAxNjdweDtcbiAgcGFkZGluZy1ib3R0b206IDE2N3B4O1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYWJvdXQtYnJlYWRjcnVtYi5qcGdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTQwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctdG9wOiAxNDBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTQwcHg7XG4gIH1cbiAgLmJyZWFkY3J1bWItY29udGVudCB7XG4gICAgLmJyZWFkY3J1bWJfX21ldGEge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC0zO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IDAuNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIH1cbiAgICAuYnJlYWRjcnVtYl9fdGl0bGUge1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA3NXB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDY1cHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDYwcHg7XG4gICAgICB9XG4gICAgICBiciB7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYnJlYWRjcnVtYl9fYnRuIHtcbiAgICAgIG1hcmdpbi10b3A6IDQ4cHg7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAudmlkZW8tcGxheS1idG4ge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBzcGFuIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgICAgIGhlaWdodDogNzBweDtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgdG9wOiAtMjBweDtcbiAgICAgICAgICAgbGVmdDogLTIwcHg7XG4gICAgICAgICAgIGJvdHRvbTogLTIwcHg7XG4gICAgICAgICAgIHJpZ2h0OiAtMjBweDtcbiAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwgMC4yKTtcbiAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbjogcGxheS1idXR0b24tcHVsc2UgMS44cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgICAgIC1tb3otYW5pbWF0aW9uOiBwbGF5LWJ1dHRvbi1wdWxzZSAxLjhzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgYW5pbWF0aW9uOiBwbGF5LWJ1dHRvbi1wdWxzZSAxLjhzIGxpbmVhciBpbmZpbml0ZTtcbiAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLjZzO1xuICAgICAgICAgICAgLW1vei1hbmltYXRpb24tZGVsYXk6IC42cztcbiAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogLjZzO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIHotaW5kZXg6IC0xO1xuICB9XG59XG4vKj09PT09PT09PT09PT09IHBsYXktYnV0dG9uLXB1bHNlID09PT09PT09PT09PT09Ki9cbkAtd2Via2l0LWtleWZyYW1lcyBwbGF5LWJ1dHRvbi1wdWxzZSB7XG4gIDAlIHtcbiAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjUpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4yKSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHBsYXktYnV0dG9uLXB1bHNlIHtcbiAgMCUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjUpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4yKSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgcGxheS1idXR0b24tcHVsc2Uge1xuICAwJSB7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuNSkpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG4gIDEwMCUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjIpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIHBsYXktYnV0dG9uLXB1bHNlIHtcbiAgMCUge1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgwLjUpKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAxMDAlIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4yKSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBwbGF5LWJ1dHRvbi1wdWxzZSB7XG4gIDAlIHtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC41KSk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbiAgMTAwJSB7XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEuMikpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgYnJlYWRjcnVtYi1hcmVhXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uYnJlYWRjcnVtYi1hcmVhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTU7XG4gIGhlaWdodDogNDUwcHg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogLW1zLWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB6LWluZGV4OiAyO1xuICBjb2xvcjogJHdoaXRlO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvYnJlYWRjcnVtYi1iZy5qcGdcIik7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBoZWlnaHQ6IDMwMHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgIGhlaWdodDogMjIwcHg7XG4gIH1cbiAgLmJyZWFkY3J1bWItY29udGVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgLmJyZWFkY3J1bWJfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMztcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTY7XG4gICAgICB9XG4gICAgfVxuICAgIC5icmVhZGNydW1iX19saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci01O1xuICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIycHg7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTU7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJi5hY3RpdmVfX2xpc3QtaXRlbSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBjb250ZW50OiAnLic7XG4gICAgICAgICAgICB0b3A6IC02cHg7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNnB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRleHQtb3V0bGluZSB7XG4gICAgICAtd2Via2l0LXRleHQtc3Ryb2tlLXdpZHRoOiAxcHg7XG4gICAgICAtd2Via2l0LXRleHQtc3Ryb2tlLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICAtbXMtdGV4dC1zdHJva2UtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgIC1vLXRleHQtc3Ryb2tlLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICBmb250LXNpemU6IDE0MHB4O1xuICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC0wLjAyZW07XG4gICAgICBib3R0b206IC0xMTVweDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBvcGFjaXR5OiAwLjk7XG4gICAgei1pbmRleDogLTE7XG4gIH1cbn1cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIGJyZWFkY3J1bWItYXJlYSAyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uYnJlYWRjcnVtYi1hcmVhMiB7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgaGVpZ2h0OiA0NTBweDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgaGVpZ2h0OiA0NTBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgaGVpZ2h0OiA0NTBweDtcbiAgfVxuICAuYnJlYWRjcnVtYi1jb250ZW50IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiA0MDBweDtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgLmJyZWFkY3J1bWJfX21ldGEge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgLnNlbGxlci1iYWRnZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBwYWRkaW5nOiA0cHggMTBweCA0cHggMTJweDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgNHB4KTtcbiAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiA2cHg7XG4gICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2tldygxMmRlZywgMGRlZykpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDRweCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmJyZWFkY3J1bWJfX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgICAgbGluZS1oZWlnaHQ6IDU4cHg7XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5icmVhZGNydW1iX19saXN0IHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICBsaSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNXB4O1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIGkubGEge1xuICAgICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMjtcbiAgICAgICAgfVxuICAgICAgICBpLmxhLWdsb2JlIHtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBpbnN0cnVjdG9yLWJyZWFkY3J1bWJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5pbnN0cnVjdG9yLWJyZWFkY3J1bWIge1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAuYnJlYWRjcnVtYi1jb250ZW50IHtcbiAgICAuYnJlYWRjcnVtYl9fdGl0bGUge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgLmxhIHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS04O1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuYnJlYWRjcnVtYl9fbGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgbGkge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBFUlJPUiBBUkVBXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uZXJyb3ItYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIC5lcnJvci1jb250ZW50IHtcbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC5lcnJvcl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkcHJpbWFyeS1mb250O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBtYXJnaW4tdG9wOiAzM3B4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmVycm9yX190ZXh0IHtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgfVxuICB9XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiA1NXB4O1xuICAgIGxlZnQ6IDU1cHg7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKC4uL2ltYWdlcy9kb3RzLnBuZyk7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgei1pbmRleDogLTE7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgIG9wYWNpdHk6IDAuMztcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBib3R0b206IDU1cHg7XG4gICAgcmlnaHQ6IDU1cHg7XG4gICAgbGVmdDogYXV0bztcbiAgICB0b3A6IGF1dG87XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ09VUlNFIERFVEFJTCBBUkVBXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uY291cnNlLWRldGFpbCB7XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICAuY291cnNlLWl0ZW0td3JhcCB7XG4gICAgLmNvdXJzZS1kZXRhaWxfX3RpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS05O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICB9XG4gIH1cbiAgLndoYXQteW91LWdldCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgIHBhZGRpbmc6IDI1cHggMzBweCAxNXB4IDMwcHg7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgIG1hcmdpbi10b3A6IDEwMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDUzcHg7XG4gICAgLndoYXQteW91LWdldF9faXRlbXMge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLndoYXQteW91LWdldF9faXRlbSB7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIHdpZHRoOiA0NSU7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICAgIC53aGF0LXlvdS1nZXRfX2ljb24ge1xuICAgICAgICAgIGFsaWduLXNlbGY6IGZsZXgtc3RhcnQ7XG4gICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAucmVxdWlyZW1lbnQtd3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTFweDtcbiAgICAucmVxdWlyZW1lbnRzX19saXN0IHtcbiAgICAgIC5yZXF1aXJlbWVudHNfX2l0ZW0ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnJlcXVpcmVtZW50c19faWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZGVzY3JpcHRpb24td3JhcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogNDZweDtcbiAgICAuZGVzY3JpcHRpb25fX3RleHQge1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIH1cbiAgfVxuICAuYXVkaWVuY2Utd3JhcCB7XG4gICAgLnJlcXVpcmVtZW50c19fbGlzdCB7XG4gICAgICAucmVxdWlyZW1lbnRzX19pdGVtIHtcbiAgICAgICAgLnJlcXVpcmVtZW50c19faWNvbiB7XG4gICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY3VycmljdWx1bS13cmFwIHtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4O1xuICAgIC5jdXJyaWN1bHVtLWhlYWRlciB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLmNvdXJzZS1kZXRhaWxfX3RpdGxlIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICAgIC5jdXJyaWN1bHVtLWhlYWRlci1yaWdodCB7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgIG1hcmdpbi10b3A6IDhweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG4gICAgICAgIH1cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY3VycmljdWx1bS1jb250ZW50IHtcbiAgICAgIC5jb3Vyc2UtYWNjb3JkaW9uIHtcbiAgICAgICAgLmNhcmQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4zKTtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDJweCk7XG4gICAgICAgICAgJjpmaXJzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMyk7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDJweCk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bm90KDpmaXJzdC1vZi10eXBlKTpub3QoOmxhc3Qtb2YtdHlwZSkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4zKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhcmQtaGVhZGVyIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTU7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMyk7XG4gICAgICAgICAgICAuYnRuLWxpbmsge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCk7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAxMHB4IDUwcHg7XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgICBpLmxhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmJ0bi10ZXh0IHtcbiAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ0bi1saW5rW2FyaWEtZXhwYW5kZWQ9dHJ1ZV0gaS5sYS5sYS1hbmdsZS11cCB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ0bi1saW5rW2FyaWEtZXhwYW5kZWQ9ZmFsc2VdIGkubGEubGEtYW5nbGUtZG93biB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuY2FyZC1ib2R5IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAuY2FyZC1saXN0IHtcbiAgICAgICAgICAgICAgLmNhcmQtbGlzdC1pdGVtIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggMTBweCA1MHB4O1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAuY291cnNlLXBsYXlfX2ljb24ge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jb3Vyc2UtZHVyYXRpb24ge1xuICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnByZXZpZXctbGluayB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5tb2RhbCB7XG4gICAgICAgICAgICAgICAgICAubW9kYWwtdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5tb2RhbC1kaWFsb2cge1xuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDY1MHB4O1xuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiA1MDBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5jYXJ0LWRpc2FibGVfX3RleHQge1xuICAgICAgICAgICAgICAgICAgLmNhcnQtcXVlc3Rpb25fX3RleHQge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC52aWV3LW1vcmUtY291cnNlcyB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTZweDtcbiAgICAub3dsLWRvdHMge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGl2IHtcbiAgICAgICAgd2lkdGg6IDE0cHg7XG4gICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE0cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTI3LCAxMzYsIDE1MSwgMC40KTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMCAycHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuNykpO1xuICAgICAgICAmLmFjdGl2ZSxcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaW5zdHJ1Y3Rvci13cmFwIHtcbiAgICBwYWRkaW5nLXRvcDogNTZweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgLmluc3RydWN0b3ItY29udGVudCB7XG4gICAgICAuaW5zdHJ1Y3Rvci1pbWcge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICAgIHdpZHRoOiAyNzBweDtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgICAgfVxuICAgICAgICAuaW5zdHJ1Y3Rvcl9fYXZhdGFyIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwOHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxMDhweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmluc3RydWN0b3JfX3N0YXRzIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDZweDtcbiAgICAgICAgICAgIC5sYSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbnN0cnVjdG9yLWRldGFpbHMge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgLmluc3RydWN0b3ItdGl0bGVzIHtcbiAgICAgICAgICAuaW5zdHJ1Y3Rvcl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLkluc3RydWN0b3JfX3RpdGxlLWljb24ge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTE7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5pbnN0cnVjdG9yX19zdWJ0aXRsZSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmluc3RydWN0b3JfX21ldGEge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmluc3RydWN0b3ItZGVzYyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAuaW5zdHJ1Y3Rvcl9fdGV4dCB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmluc3RydWN0b3ItY29udGVudC5kLWZsZXgge1xuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucmV2aWV3LXdyYXAge1xuICAgIC5yZXZpZXctY29udGVudCB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgLnJldmlldy1yYXRpbmctc3VtbWFyeSB7XG4gICAgICAgIC5yZXZpZXctcmF0aW5nLXN1bW1hcnktaW5uZXIge1xuICAgICAgICAgIC5zdGF0cy1hdmVyYWdlX19jb3VudCB7XG4gICAgICAgICAgICAuc3RhdHMtYXZlcmFnZV9fY291bnQtY291bnQge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTM7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuc3RhdHMtYXZlcmFnZV9fcmF0aW5nIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgICAgICAgdWwge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIC5sYSB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY291cnNlLXJhdGluZy10ZXh0IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNvdXJzZS1yYXRpbmctdGV4dF9fdGV4dCB7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucmV2aWV3LXJhdGluZy13aWRnZXQge1xuICAgICAgICBtYXJnaW4tbGVmdDogNTBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLnJldmlldy1yYXRpbmctcmF0ZSB7XG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgLnJldmlldy1yYXRpbmctcmF0ZV9faXRlbXMge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5yZXZpZXctcmF0aW5nLWlubmVyX19pdGVtIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5yZXZpZXctcmF0aW5nLXJhdGVfX2l0ZW0tdGV4dCB7XG4gICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5yZXZpZXctcmF0aW5nLXJhdGVfX2l0ZW0tZmlsbCB7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogMzEwcHg7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMSk7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI5MHB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDI2MHB4O1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5yZXZpZXctcmF0aW5nLXJhdGVfX2l0ZW0tZmlsbF9fZmlsbCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzclO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAucmF0aW5nLWZpbGwtd2lkdGgyIHtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDU0JTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5yYXRpbmctZmlsbC13aWR0aDMge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTQlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLnJhdGluZy1maWxsLXdpZHRoNCB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA1JTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5yYXRpbmctZmlsbC13aWR0aDUge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMiU7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC5yZXZpZXctcmF0aW5nLXJhdGVfX2l0ZW0tcGVyY2VudC10ZXh0IHtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnJldmlldy1jb250ZW50LmQtZmxleCB7XG4gICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAuY29tbWVudHMtd3JhcHBlciB7XG4gICAgICBtYXJnaW4tdG9wOiA1MnB4O1xuICAgIH1cbiAgfVxuICAudmlldy1tb3JlLWNvdXJzZXMyIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIC52aWV3LW1vcmUtY2Fyb3VzZWwge1xuICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgIH1cbiAgICAubW9yZS1jb3Vyc2UtYnRuIHtcbiAgICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gICAgICAucmVwb3J0LW1vZGFsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTZweDtcbiAgICAgICAgLnJlcG9ydC1idG4ge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMSk7O1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuNCk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5yZXBvcnQtYnRuX19pY29uIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubW9kYWwge1xuICAgICAgICAgIC5tb2RhbC1jb250ZW50IHtcbiAgICAgICAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICAgICAgICAubW9kYWwtdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAubW9kYWwtYm9keSB7XG4gICAgICAgICAgICAgIC5jb250YWN0LWZvcm0tYWN0aW9uIHtcbiAgICAgICAgICAgICAgICBmb3JtIHtcbiAgICAgICAgICAgICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgICAgICAgICAgLmxhYmVsLXRleHQge1xuICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zaWRlYmFyLWNvbXBvbmVudCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDM7XG4gICAgbWFyZ2luLXRvcDogLTkwcHg7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIC5zaWRlYmFyIHtcbiAgICAgIC5zaWRlYmFyLXByZXZpZXcge1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgLnNpZGViYXItcHJldmlldy10aXRsZXMge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMzBweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCA0cHggMCAwKTtcbiAgICAgICAgICAud2lkZ2V0X190aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnNlY3Rpb25fX2RpdmlkZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucHJldmlldy12aWRlby1hbmQtZGV0YWlscyB7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgICAgICAgIC5wcmV2aWV3LWNvdXJzZS12aWRlbyB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0cHg7XG4gICAgICAgICAgICBpZnJhbWUge1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wcmV2aWV3LWNvdXJzZS1jb250ZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDM0cHggMzBweCAzMHB4IDMwcHg7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICAgIC5wcmV2aWV3LWNvdXJzZV9fcHJpY2Uge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDdweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgICAgICAgICAgICYucHJpY2UtY3VycmVudCB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS02O1xuICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICYucHJpY2UtYmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAmLnByaWNlLWRpc2NvdW50IHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcmV2aWV3LWNvdXJzZV9fcHJpY2UuZC1mbGV4IHtcbiAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJldmlldy1wcmljZS1kaXNjb3VudF9fdGV4dCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgICAgICAgIC5kaXNjb3VudC1sZWZ0X190ZXh0LXRleHQge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJ1eS1jb3Vyc2UtYnRuIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgLnRoZW1lLWJ0biB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5wcmV2aWV3LWNvdXJzZS1pbmNlbnRpdmVzIHtcbiAgICAgICAgICAgICAgLnByZXZpZXctY291cnNlLWluY2VudGl2ZXNfX3RleHQge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAucHJldmlldy1jb3Vyc2UtaW5jZW50aXZlc19fdGl0bGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMjtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLnByZXZpZXctY291cnNlLWluY2VudGl2ZXNfX2xpc3Qge1xuICAgICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjdweDtcbiAgICAgICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIHRvcDogMXB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zaWRlYmFyLWZlYXR1cmUge1xuICAgICAgICAud2lkZ2V0X19saXN0IHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAuY291cnNlLWZlYXR1cmVfX2ljb24ge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb3Vyc2UtZmVhdHVyZV9fbWV0YSB7XG4gICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09IGNhcnQtYXJlYSA9PT09PT09PT09PT09PT0qL1xuLmNhcnQtYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLnRhYmxlIHtcbiAgICB0aGVhZD50cj50ZCxcbiAgICB0aGVhZD50cj50aCB7XG4gICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAxcHg7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgfVxuICAgIHRyICB7XG4gICAgICB0ZCB7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgJi5jYXJ0X190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIH1cbiAgICAgICAgLmNhcnRwcm9kdWN0X19kZXNjIHtcbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygycHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogN3B4O1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgcCB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDgwcHgpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuaXRlbV9fcHJpY2Uge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgLml0ZW1fX2JlZm9yZS1wcmljZSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmlucHV0LW51bWJlci1ncm91cCB7XG4gICAgICAgICAgLmlucHV0LW51bWJlci1kZWNyZW1lbnQge1xuICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idXR0b24tcmVtb3ZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkY29sb3I7XG4gICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIC01MCUpKTtcbiAgICAgICAgICAuZmEtY2xvc2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTFweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2FydC1kZXRhaWwtd3JhcCB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAuY2FydC1kZXRhaWwtaXRlbSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAzM3B4IDMwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgLmNhcnRkZXRhaWxfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIxcHg7XG4gICAgICB9XG4gICAgICAuY2FydGRldGFpbF9fY29udGVudCB7XG4gICAgICAgIC5jYXJ0X19kZXRhaWwtZGVzYyB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjZweDtcbiAgICAgICAgfVxuICAgICAgICAuY2FydC10YWJsZSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcbiAgICAgICAgICB0ciB7XG4gICAgICAgICAgICB0aCB7XG4gICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZpZXctbW9yZS1jb3Vyc2VzIHtcbiAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgIC52aWV3LW1vcmUtY291cnNlc19fdGl0bGUge1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICB9XG4gIH1cbn1cbi8qPT09PT09PT09PT09PT09IGNoZWNrb3V0LWFyZWEgPT09PT09PT09PT09PT09Ki9cbi5jaGVja291dC1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDExNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogODBweDtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICB9XG4gIC5iaWxsaW5nLWNvbnRlbnQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci01O1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgLmNoZWNrb3V0LXRhYmxlIHtcbiAgICAgIHRoZWFkIHtcbiAgICAgICAgdGgge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGgge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgfVxuICAgICAgdGQge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICB9XG4gICAgICB0aCxcbiAgICAgIHRke1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2hlY2tvdXQtYmlsbGluZy1zZWN1cmVkIHtcbiAgICAudGVybS10ZXh0IGEge1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIH1cbiAgICAuYmlsbGluZ19fc2VjdXJlLWNvbm5lY3Rpb24ge1xuICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgaSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmNoZWNrb3V0LWhlYWRlciAuY2hlY2tvdXRfX3RpdGxlIHtcbiAgZm9udC1zaXplOiRkaXNwbGF5LTEwO1xuICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgbWFyZ2luLWJvdHRvbTogMjVweDtcbn1cblxuLnBheW1lbnQtbWV0aG9kLXdyYXAge1xuICBtYXJnaW4tdG9wOiAyMHB4O1xuICBwYWRkaW5nLXRvcDogMjVweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgLnBheW1lbnQtcmFkaW8ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDM1cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLW1vei11c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgIGlucHV0IHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICB3aWR0aDogMDtcbiAgICAgICY6Y2hlY2tlZCB+IC5jaGVja21hcmsge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgfVxuICAgICAgJjpjaGVja2VkIH4gLmNoZWNrbWFyazphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICAgIC5jaGVja21hcmsge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgbWFyZ2luOiAzcHggMCAwIDA7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCAkY29sb3I7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIHRvcDogMnB4O1xuICAgICAgICBsZWZ0OiAycHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHdpZHRoOiAxMnB4O1xuICAgICAgICBoZWlnaHQ6IDEycHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC4xKSk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciBpbnB1dCB+IC5jaGVja21hcms6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICY6aG92ZXIgaW5wdXQgfiAuY2hlY2ttYXJrIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgfVxuICB9XG4gIC50aGVtZS1idXR0b24ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICBwYWRkaW5nOiAxMnB4IDI1cHg7XG4gIH1cbn1cblxuXG5cblxuXG5cblxuXG5cblxuXG5cblxuXG4vKj09PT09PT09PT09PT09PSBjb21tZW50cy13cmFwcGVyID09PT09PT09PT09PT09PSovXG4uY29tbWVudHMtd3JhcHBlciB7XG4gIC5jb21tZW50cy10aXRsZSxcbiAgLmNvbnRhY3QtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gIH1cbiAgLmNvbW1lbnRzLWxpc3Qge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgIGxpIHtcbiAgICAgIC5jb21tZW50IHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDUwcHg7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIH1cbiAgICAgICAgLmF2YXRhcl9faW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5jb21tZW50LWJvZHkge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMjBweDtcbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAubWV0YS1kYXRhIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5jb21tZW50X19hdXRob3Ige1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvbW1lbnRfX2RhdGUge1xuICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJldmlldy1zdGFycyB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgIHRvcDogMTBweDtcbiAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIHRvcDogYXV0bztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCksXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJldmlldy1zdGFyczIge1xuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnJldmlldy1zdGFyczMge1xuICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNCksXG4gICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoNSkge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuY29tbWVudC1jb250ZW50IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3R3b30ge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuY29tbWVudC1yZXBseSB7XG4gICAgICAgICAgICAuY29tbWVudF9fYnRuIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICBwYWRkaW5nOiA3cHggMThweDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuaGVscGZ1bF9fYWN0aW9uIHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyOCwgMTM3LCAxNTAsIDAuNCk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDRweCAxMnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogM3B4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogM3B4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyOCwgMTM3LCAxNTAsIDAuMSk7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbW1lbnRzLXJlcGx5IHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEzMHB4O1xuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VlLW1vcmUtcmV2aWV3LWJ0biB7XG4gICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAuYnV0dG9uLXNoYXJlZCB7XG4gICAgICAudGhlbWUtYnRuIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAgIGZhcS1hcmVhXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmZhcS1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgLmNvbC1sZy04IHtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgIGZsZXg6IDAgMCAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLnNpZGViYXIgIHtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNTZweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNTZweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNTZweDtcbiAgICB9XG4gIH1cbn1cbi5mYXEtYm9keSB7XG4gIG1hcmdpbi10b3A6IC0yMHB4O1xuICAuZmFxLXBhbmVsIHtcbiAgICAuZmFxLWhlYWRpbmcge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIC5mYXFfX3RpdGxlIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgcGFkZGluZzogMjBweCAzMHB4IDE4cHggMzBweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3R3b30ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3R3b30ge1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZmFxLWNvbnRlbnQge1xuICAgICAgcGFkZGluZzogMjNweCAzMHB4IDIxcHggMzBweDtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDFweCA3cHggNDFweCAtOHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCA1cHggNXB4KTtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3R3b30ge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG4gICAgICB9XG4gICAgICAuZmFxX19kZXNjIHtcbiAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAmLmFjdGl2ZSB7XG4gICAgICAuZmFxLWhlYWRpbmcge1xuICAgICAgICAuZmFxX190aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICAgIGkge1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSgtOTBkZWcpKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZhcS1idG4tYm94IHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBBRE1JU1NJT05cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5hZG1pc3Npb24tYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIC5hZG1pc3Npb24tYm9keSB7XG4gICAgbWFyZ2luLXRvcDogNDBweDtcbiAgICAuY29udGFjdC1mb3JtLWFjdGlvbiB7XG4gICAgICBmb3JtIHtcbiAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgR0FMTEVSWVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmdhbGxlcnktYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMTJweDtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA5MHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogOTBweDtcbiAgfVxuICAucG9ydGZvbGlvLWZpbHRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBhZGRpbmc6IDhweCAyNXB4O1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNHMpO1xuICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgIH1cbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAxMHB4IDMwcHggcmdiYSg4MSwgMTkwLCAxMjAsIDAuMikpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucG9ydGZvbGlvLXdyYXAge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIC5wb3J0Zm9saW8tbGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgICAgLnNpbmdsZS1wb3J0Zm9saW8taXRlbSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICB9XG4gICAgICAgIC5wb3J0Zm9saW8taG92ZXIge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICAucG9ydGZvbGlvLWxpbmsge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMS4xKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5wb3J0Zm9saW8taG92ZXIge1xuICAgICAgICAgICAgLnBvcnRmb2xpby1saW5rIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5zaW5nbGUtcG9ydGZvbGlvLWl0ZW0uY29sLWxnLTQge1xuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgYWJvdXQtYXJlYVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmFib3V0LWFyZWEge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMTVweDtcbiAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIHdpZHRoOiA4NTBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZpdmV9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5hYm91dC10ZXh0IHtcbiAgICB3aWR0aDogNzYwcHg7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9maXZlfSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gIH1cbiAgLmFib3V0LWltZy13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICB9XG4gIC5hYm91dC1pbWcge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgIH1cbiAgfVxuICAuYWJvdXQtZnVuLWl0ZW0ge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICB9XG4gICAgLmNvbC1sZy0zIHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZnVuZmFjdC1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHBhZGRpbmc6IDQ1cHggMCAzOHB4IDA7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgICBib3JkZXItdG9wOiAzcHggc29saWQgJHRoZW1lLWNvbG9yLTI7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgLmZ1bl9faWNvbiB7XG4gICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgIH1cbiAgICAgIC5mdW5mYWN0X190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gICAgICB9XG4gICAgICAuZnVuZmFjdF9fbWV0YSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBtYXJnaW4tdG9wOiAzcHg7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmZ1bl9faWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZnVuZmFjdC1pdGVtMiB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYWx0ZXItY29sb3I7XG4gICAgICAuZnVuX19pY29uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjYsIDYwLCAyNDksIDAuMSk7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3I7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmZ1bl9faWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdGVyLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5mdW5mYWN0LWl0ZW0zIHtcbiAgICAgIGJvcmRlci10b3AtY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgLmZ1bl9faWNvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ2LCAxMzgsIDQsIDAuMSk7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMjtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuZnVuX19pY29uIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYWx0ZXItY29sb3ItMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuZnVuZmFjdC1pdGVtNCB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYWx0ZXItY29sb3ItMztcbiAgICAgIC5mdW5fX2ljb24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDUzLCAxNDMsIDI0NywgMC4xKTtcbiAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0zO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5mdW5fX2ljb24ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRlci1jb2xvci0zO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBhYm91dC1hcmVhIDJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5hYm91dC1hcmVhMiB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIC5zZWN0aW9uX19kZXNjIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC50aGVtZS1idG4ge1xuICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG4gIH1cbiAgLmFib3V0LWltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDE7XG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiAnJztcbiAgICB9XG4gICAgJjpiZWZvcmUge1xuICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgaGVpZ2h0OiAyMDBweDtcbiAgICAgIGJvdHRvbTogLTMzcHg7XG4gICAgICByaWdodDogLTMzcHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZG90cy5wbmdcIik7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogNTAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVgoLTUwJSkpO1xuICAgICAgd2lkdGg6IDEycHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRkVBVFVSRSBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uZmVhdHVyZS1hcmVhIHtcbiAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMjtcbiAgLmZlYXR1cmUtY29udGVudC13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiAtNjBweDtcbiAgICBAbWVkaWEgI3skZGV2aWNlLTQ4MX17XG4gICAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICBtYXJnaW4tdG9wOiAxMjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgIG1hcmdpbi10b3A6IDgwcHg7XG4gICAgfVxuICAgIC5jb2wtc20tNiB7XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgZmxleDogMCAwIDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCAxMDAlO1xuICAgICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmVhdHVyZS1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSgxNCwxNiw0OCwuMDUpKTtcbiAgICAgIHBhZGRpbmc6IDUwcHggNDBweCA0MnB4IDQwcHg7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNHMpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB6LWluZGV4OiAxO1xuICAgICAgLmhvdmVyLW92ZXJsYXkge1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgIGxlZnQ6IC05MHB4O1xuICAgICAgICAgIHdpZHRoOiA1NDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDU0MHB4O1xuICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgxMDAlKSByb3RhdGUoMTBkZWcpKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMik7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgdG9wOiA3MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZmVhdHVyZV9faWNvbiB7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogODBweDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDEyNiwgNjAsIDI0OSwgMC4xKTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNHMpO1xuICAgICAgfVxuICAgICAgLmZlYXR1cmVfX3RpdGxlIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEwO1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgfVxuICAgICAgLmZlYXR1cmVfX3RleHQge1xuICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjRzKTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICB9XG4gICAgICAuZmVhdHVyZV9fYnRuIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNHMpO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0b3A6IDMwJTtcbiAgICAgICAgbGVmdDogLTkwcHg7XG4gICAgICAgIHdpZHRoOiA1NDBweDtcbiAgICAgICAgaGVpZ2h0OiA1NDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjEpO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgxMDAlKSByb3RhdGUoMTBkZWcpKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgLmZlYXR1cmVfX3RpdGxlLFxuICAgICAgICAuZmVhdHVyZV9fdGV4dCxcbiAgICAgICAgLmZlYXR1cmVfX2J0biB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAuZmVhdHVyZV9faWNvbiB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjJzO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDApIHJvdGF0ZSgxMGRlZykpO1xuICAgICAgICB9XG4gICAgICAgIC5ob3Zlci1vdmVybGF5IHtcbiAgICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDApIHJvdGF0ZSgxMGRlZykpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb24tZGVsYXk6IC4xcztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZlYXR1cmUtaXRlbTIge1xuICAgICAgLmZlYXR1cmVfX2ljb24ge1xuICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjQ2LCAxMzgsIDMsIDAuMSk7XG4gICAgICB9XG4gICAgICAuZmVhdHVyZV9fYnRuIHtcbiAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmVhdHVyZS1pdGVtMyB7XG4gICAgICAuZmVhdHVyZV9faWNvbiB7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MywgMTQzLCAyNDcsIDAuMSk7XG4gICAgICB9XG4gICAgICAuZmVhdHVyZV9fYnRuIHtcbiAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0zO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ0FURUdPUllcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5jYXRlZ29yeS1hcmVhIHtcbiAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1zaGFyZWQge1xuICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gIH1cbiAgLmJ1dHRvbi1zaGFyZWQuanVzdGlmeS1jb250ZW50LWVuZCB7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIC1tcy1mbGV4LXBhY2s6IHN0YXJ0ICFpbXBvcnRhbnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQgIWltcG9ydGFudDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5jYXRlZ29yeS13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAzNnB4O1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG4gICAgLmNvbC1sZy00IHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXRlZ29yeS1pdGVtIHtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgfVxuICAgICAgLmNhdGVnb3J5LWNvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlKC01MCUsIC01MCUpKTtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgLmNhdF9fdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAuY2F0X19tZXRhIHtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICB9XG4gICAgICAgIC5jYXRfX2xpbmsge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTRweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgxMHB4KSk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogLjgwO1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLmNhdGVnb3J5LWNvbnRlbnQge1xuICAgICAgICAgIC5jYXRfX3RpdGxlIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jYXRfX21ldGEge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNhdF9fbGluayB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01cHgpKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgb3BhY2l0eTogLjk5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBDQVRFR09SWSAyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG4uY2F0ZWdvcnktYXJlYTIge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xuICAuY2F0ZWdvcnktd3JhcHBlciB7XG4gICAgLmNvbC1sZy0zIHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNhdGVnb3J5LWl0ZW0ge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgcGFkZGluZzogNDBweCAwIDQwcHggMDtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAuY2F0ZWdvcnktY29udGVudCB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGUoMCwgMCkpO1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgLmxhIHtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgd2lkdGg6IDcwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA3MHB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTY7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAuY2F0X190aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvaW1nMzEuanBnXCIpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxLjEpKTtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuNnMpO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIC5jYXRlZ29yeS1jb250ZW50IHtcbiAgICAgICAgICAubGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAuY2F0X190aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBvcGFjaXR5OiAuODA7XG4gICAgICAgIH1cbiAgICAgICAgJjpiZWZvcmUsXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG4gICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ09VUlNFIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5jb3Vyc2UtYXJlYSB7XG4gIC5jb3Vyc2UtY29udGVudC13cmFwcGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNTtcbiAgICBwYWRkaW5nLXRvcDogODBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIH1cbiAgLmNvdXJzZS10YWItd3JhcCB7XG4gICAgLmNvdXJzZS10YWItbGlzdC5uYXYtdGFicyB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAzNnB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luOiAwIDFweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTdweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgQGV4dGVuZCAldGhlbWUtYnRuLWFmdGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MSwgMTkwLCAxMjAsIDAuMSk7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWItY29udGVudCB7XG4gICAgLmNvdXJzZS1ibG9jayB7XG4gICAgICAuY29sLWxnLTQsXG4gICAgICAuY29sLWxnLTYge1xuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1zaGFyZWQge1xuICAgIG1hcmdpbi10b3A6IDI4cHg7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT0gY291cnNlLWJsb2NrID09PT09PT09PT09PSovXG4uY291cnNlLWJsb2NrIHtcbiAgLmNvdXJzZS1pdGVtIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgIC5jb3Vyc2UtaW1nIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIC5jb3Vyc2VfX2ltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY291cnNlLXRvb2x0aXAge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIC50b29sdGlwLWxhYmVsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDRweCAxMHB4IDRweCAxMnB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCA0cHggMCk7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTU7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiA2cHg7XG4gICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBib3R0b20gbGVmdDtcbiAgICAgICAgICAgIHRyYW5zZm9ybS1vcmlnaW46IGJvdHRvbSBsZWZ0O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNrZXcoMTJkZWcsMGRlZykpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggMCAwIDApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgYm9yZGVyLWxlZnQ6IDEzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlci1yaWdodDogMTNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMTNweCBzb2xpZCAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3Vyc2UtY29udGVudCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDAgMCA0cHggNHB4KTtcbiAgICAgIHBhZGRpbmc6IDI5cHggMzBweCAzMHB4IDMwcHg7XG4gICAgICBib3JkZXItdG9wOiB0cmFuc3BhcmVudDtcbiAgICAgIC5jb3Vyc2VfX2xhYmVsIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgIC5jb3Vyc2VfX2xhYmVsLXRleHQge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIHBhZGRpbmc6IDNweCAxMHB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC0yO1xuICAgICAgICB9XG4gICAgICAgIC5jb3Vyc2VfX2NvbGxlY3Rpb24taWNvbiB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTE7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgY29udGVudDogXCJcXGYyMzNcIjtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcIkxpbmVBd2Vzb21lXCI7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb3Vyc2VfX3RpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDlweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5jb3Vyc2VfX2F1dGhvciB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnJhdGluZy13cmFwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogOHB4O1xuICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgLnJldmlldy1zdGFycyB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc3Rhci1yYXRpbmctd3JhcCB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAuc3Rhcl9fcmF0aW5nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxcHggMCAzcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY291cnNlLW1ldGEge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgICAuY291cnNlX19saXN0IHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IG5vbmU7XG4gICAgICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAmLm1ldGFfX2RhdGUge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJi5tZXRhX190ZXh0IHtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvdXJzZS1wcmljZS13cmFwIHtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgICAgLmNvdXJzZV9fcHJpY2Uge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMjtcbiAgICAgICAgICAuY291cnNlX19iZWZvcmUtcHJpY2Uge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAzcHg7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvdXJzZV9fYnRuIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJjpob3ZlciB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4xKSk7XG4gICAgfVxuICB9XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBDT1VSU0UgQVJFQSAyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uY291cnNlLWFyZWEyIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDgwcHg7XG4gIH1cbiAgLmNvdXJzZS1jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAzNnB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gIC5vd2wtbmF2IHtcbiAgICBkaXYge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIGhlaWdodDogNTBweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDgyLCA4NSwgOTAsIDAuMSkpO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICBAbWVkaWEgI3skbGFwdG9wX219IHtcbiAgICAgICAgdG9wOiAzOCU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDApKTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICBib3R0b206IC01MHB4O1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgICAgJi5vd2wtcHJldiB7XG4gICAgICAgIGxlZnQ6IC0xMDBweDtcbiAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tfSB7XG4gICAgICAgICAgbGVmdDogLTI1cHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIGxlZnQ6IDIwMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgIGxlZnQ6IDE2MHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgbGVmdDogMTMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGRldmljZS0zODR9IHtcbiAgICAgICAgICBsZWZ0OiAxMTBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgbGVmdDogODVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5vd2wtbmV4dCB7XG4gICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgIHJpZ2h0OiAtMTAwcHg7XG4gICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbX0ge1xuICAgICAgICAgIHJpZ2h0OiAtMjVweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgcmlnaHQ6IDIwMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgIHJpZ2h0OiAxNjBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgIHJpZ2h0OiAxMzBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skZGV2aWNlLTM4NH0ge1xuICAgICAgICAgIHJpZ2h0OiAxMTBweDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICByaWdodDogODVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIENPVVJTRSBBUkVBIDNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5jb3Vyc2UtYXJlYTMge1xuICAuY291cnNlLXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci01O1xuICAgIC5jb3Vyc2UtdGFiLWxpc3QubmF2LXRhYnMge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIGxpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4KTtcbiAgICAgICAgICBwYWRkaW5nLXRvcDogNnB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvdXJzZS1jb250ZW50LXdyYXBwZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ09VUlNFIEFSRUEgNFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLmNvdXJzZS1hcmVhNCB7XG4gIHBhZGRpbmctdG9wOiAxMTBweDtcbiAgLmNvdXJzZS10YWItd3JhcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgcGFkZGluZzogMjBweCAyMHB4O1xuICAgIC5jb3Vyc2UtdGFiLWxpc3QubmF2LXRhYnMge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBwYWRkaW5nOiA3cHggMTJweDtcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3Vyc2UtZmlsdGVyIHtcbiAgICAgIC5jb3Vyc2VzLW9yZGVyaW5nIHtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvdXJzZS10YWItd3JhcC5kLWZsZXgge1xuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfZm91cn0ge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLmNvdXJzZS1pdGVtLXdyYXAge1xuICAgIC50YWItY29udGVudCB7XG4gICAgICAuY291cnNlLWxpc3QtYmxvY2sge1xuICAgICAgICAuY291cnNlLWl0ZW0ge1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNvdXJzZS1pbWcge1xuICAgICAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmNvdXJzZV9faW1nIHtcbiAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDMwNHB4O1xuICAgICAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDAgMCA0cHgpO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogMzU1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCA0cHggMCAwKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgICAgIHRvcDogMzVweDtcbiAgICAgICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgcmlnaHQ6IC03cHg7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoLTkwZGVnKSk7XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMCkpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5jb3Vyc2UtY29udGVudCB7XG4gICAgICAgICAgICB3aWR0aDogNjAlO1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCA0cHggNHB4IDApO1xuICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgNHB4IDRweCk7XG4gICAgICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvdXJzZS1ibG9jayB7XG4gICAgICAgIC5jb3Vyc2UtaXRlbSB7XG4gICAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvdXJzZS1jb250ZW50LXdyYXBwZXIge1xuICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG59XG4vKi09PT09PT09PT0gY291cnNlLWZpbHRlciA9PT09PT09PT0tKi9cbi5jb3Vyc2UtZmlsdGVyIHtcbiAgLmNvdXJzZXMtb3JkZXJpbmcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgLnRhcmdldC1jb3Vyc2Uge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7O1xuICAgICAgcGFkZGluZzogMTVweCAwIDE1cHggMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tcy1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgLW8tYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgIH1cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIkxpbmVBd2Vzb21lXCI7XG4gICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgY29udGVudDogXCJcXGYxMTBcIjtcbiAgICAgIHJpZ2h0OiAxM3B4O1xuICAgIH1cbiAgfVxufVxuXG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgRlVORkFDVCBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uZnVuZmFjdC1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEwM3B4O1xuICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTRweDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDU0cHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1NHB4O1xuICB9XG4gIC5mdW5mYWN0LXJvdyB7XG4gICAgZGlzcGxheTogLW1vei1mbGV4O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgIGRpc3BsYXk6IC1vLWZsZXg7XG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICAtd2Via2l0LWJveC1wYWNrOiBqdXN0aWZ5O1xuICAgIC1tcy1mbGV4LXBhY2s6IGp1c3RpZnk7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxuICAuZnVuZmFjdC1pdGVtIHtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgIH1cbiAgICAuZnVuZmFjdC1pbm5lci1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgLXdlYmtpdC1ib3gtb3JpZW50OiB2ZXJ0aWNhbDtcbiAgICAgIC13ZWJraXQtYm94LWRpcmVjdGlvbjogbm9ybWFsO1xuICAgICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLXdlYmtpdC1ib3gtcGFjazogY2VudGVyO1xuICAgICAgLW1zLWZsZXgtcGFjazogY2VudGVyO1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogY2VudGVyO1xuICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAubGEge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLTI1cHg7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTM7XG4gICAgICAgIGNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMSk7XG4gICAgICB9XG4gICAgICAuZnVuZmFjdF9fdGl0bGUge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yO1xuICAgICAgfVxuICAgICAgLmZ1bmZhY3RfX21ldGEge1xuICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gICAgICB9XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIC5mdW5mYWN0LWlubmVyLWl0ZW0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMjQ2LCAxMzgsIDMsIDAuOCk7XG4gICAgICAgIC5mdW5mYWN0X190aXRsZSB7XG4gICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDMpIHtcbiAgICAgIC5mdW5mYWN0LWlubmVyLWl0ZW0ge1xuICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoNTMsIDE0MywgMjQ3LCAwLjIpO1xuICAgICAgICAuZnVuZmFjdF9fdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItMztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOm50aC1jaGlsZCg0KSB7XG4gICAgICAuZnVuZmFjdC1pbm5lci1pdGVtIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDU2LCAxODcsIDEyLCAwLjIpO1xuICAgICAgICAuZnVuZmFjdF9fdGl0bGUge1xuICAgICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAmOmJlZm9yZSxcbiAgJjphZnRlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZG90cy5wbmdcIik7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgIEBpbmNsdWRlIHRyYW5zZm9ybShyb3RhdGUoMTBkZWcpKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIG9wYWNpdHk6IDAuMjtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICB0b3A6IC04MHB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgYm90dG9tOiBhdXRvO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgU1BFQUtFUiBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uc3BlYWtlci1hcmVhIHtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIHdpZHRoOiA2NTBweDtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc3BlYWtlci1jb250ZW50LXdyYXAge1xuICAgIG1hcmdpbi10b3A6IDM2cHg7XG4gICAgLnNwZWFrZXItaXRlbSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDE0LDE2LDQ4LC4wNSkpO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyBlYXNlLWluKTtcbiAgICAgIC5zcGVha2VyLWltZy1ib3gge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgMCk7XG4gICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDE0LDE2LDQ4LC4wNSkpO1xuICAgICAgICB9XG4gICAgICAgIC5zcGVha2VyX19wcm9maWxlIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWCgtNTAlKSk7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC42KSk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzIGVhc2UtaW4tb3V0KTtcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTtcbiAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgIGxlZnQ6IDQwcHg7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxM3B4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMTNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxM3B4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnNwZWFrZXItZGV0YWlsIHtcbiAgICAgICAgcGFkZGluZzogMzJweCA0MHB4IDM4cHggNDBweDtcbiAgICAgICAgLnNwZWFrZXItdGl0bGUtYm94IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAuc3BlYWtlcl9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS05O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnNwZWFrZXJfX21ldGEge1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zcGVha2VyX190ZXh0IHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnNwZWFrZXJfX2xpbmsge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDlweCAyMHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4KTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLnNwZWFrZXItaW1nLWJveCB7XG4gICAgICAgICAgLnNwZWFrZXJfX3Byb2ZpbGUge1xuICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgICAgICAgICBib3R0b206IDMwcHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zcGVha2VyLXRpdGxlLWJveCB7XG4gICAgICAgICAgLnNwZWFrZXJfX2xpbmsge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbC1sZy00IHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICBmbGV4OiAwIDAgNTAlO1xuICAgICAgICBtYXgtd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1zaGFyZWQge1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBJTlNUUlVDVE9SLUFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5pbnN0cnVjdG9yLWFyZWEge1xuICAuc3BlYWtlci1jb250ZW50LXdyYXAge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFRFU1RJTU9OSUFMIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLnRlc3RpbW9uaWFsLWFyZWEge1xuICBwYWRkaW5nLXRvcDogMTE5cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMTRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTU7XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgd2lkdGg6IDUwMHB4O1xuICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgd2lkdGg6IGF1dG87XG4gICAgIH1cbiAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICB9XG4gICB9XG4gIH1cbiAgLnRlc3RpbW9uaWFsLXdyYXAge1xuICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgLnRlc3RpbW9uaWFsLWl0ZW0ge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogNDBweCA0OHB4IDQwcHggNDhweDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMnB4KTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSgwLDAsMCwuMDEpKTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgIH1cbiAgICAgIC50ZXN0aW1vbmlhbF9fZGVzYyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIC50ZXN0aW1vbmlhbF9fZGVzYy1kZXNjIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICB9XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBjb250ZW50OiBcIuKAnVwiO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTAwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiAyMHB4O1xuICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICBvcGFjaXR5OiAwLjE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50ZXN0aW1vbmlhbF9fbmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiA2NHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMTRweDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgICAgICBpbWcge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB3aWR0aDogNTRweDtcbiAgICAgICAgICBoZWlnaHQ6IDU0cHg7XG4gICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHRvcDogOHB4O1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgfVxuICAgICAgICAudGVzdGltb25pYWxfX25hbWUtdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTI7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFsX19uYW1lLW1ldGEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC0yO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgLnRlc3RpbW9uaWFsX19uYW1lLXJhdGluZyB7XG4gICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC0yO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiA2cHg7XG4gICAgICAgICAgLmxhIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAtMXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAudGVzdGltb25pYWxfX2Rlc2MgLnRlc3RpbW9uaWFsX19kZXNjLWRlc2MsXG4gICAgICAgIC50ZXN0aW1vbmlhbF9fbmFtZSAudGVzdGltb25pYWxfX25hbWUtdGl0bGUsXG4gICAgICAgIC50ZXN0aW1vbmlhbF9fbmFtZSAudGVzdGltb25pYWxfX25hbWUtbWV0YSB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgICAudGVzdGltb25pYWxfX25hbWUge1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4xKTtcbiAgICAgICAgfVxuICAgICAgICAudGVzdGltb25pYWxfX2Rlc2Mge1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm93bC1kb3RzIHtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICBkaXYge1xuICAgICAgICB3aWR0aDogMTRweDtcbiAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTRweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjQpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC43KSk7XG4gICAgICAgICYuYWN0aXZlLFxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLyo9PT0gcm90YXRlbWUgPT09Ki9cbi5yb3RhdGVtZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZW1lO1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlbWU7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAyMHM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMjBzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbn1cbkBrZXlmcmFtZXMgcm90YXRlbWUge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgcGVydGljbGVzLWpzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4jcGVydGljbGVzLWpzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgR0VULVNUQVJUIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5nZXQtc3RhcnQtYXJlYSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcGFkZGluZy10b3A6IDEyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pbWc3LmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xuICB6LWluZGV4OiAyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAuc2VjdGlvbl9fdGl0bGUge1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0zO1xuICAgICAgbGluZS1oZWlnaHQ6IDgwcHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS00O1xuICAgICAgICBsaW5lLWhlaWdodDogNzVweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgICBsaW5lLWhlaWdodDogNjBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5nZXQtc3RhcnQtYnRuIHtcbiAgICAgIG1hcmdpbi10b3A6IDM4cHg7XG4gICAgfVxuICB9XG4gICY6YmVmb3JlIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgbGVmdDogMDtcbiAgICB0b3A6IDA7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgIG9wYWNpdHk6IC45NTtcbiAgfVxuICAuYm94LWljb25zLFxuICAuYm94LWljb25zMiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDEwMHB4O1xuICAgIGJvdHRvbTogNzVweDtcbiAgICB6LWluZGV4OiAxO1xuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGVfdGhyZWV9IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIGRpdiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBib3JkZXI6IDJweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LDAuMTApO1xuICAgICAgd2lkdGg6IDE5cHg7XG4gICAgICBoZWlnaHQ6IDE5cHg7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAmLmJveC1vbmUge1xuICAgICAgICBsZWZ0OiAtNDBweDtcbiAgICAgICAgYm90dG9tOiA1MHB4O1xuICAgICAgfVxuICAgICAgJi5ib3gtdHdvIHtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHdpZHRoOiA0NnB4O1xuICAgICAgICBoZWlnaHQ6IDQ2cHg7XG4gICAgICB9XG4gICAgICAmLmJveC10aHJlZSB7XG4gICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgICAgIHRvcDogLTE1MHB4O1xuICAgICAgICB3aWR0aDogODBweDtcbiAgICAgICAgaGVpZ2h0OiA4MHB4O1xuICAgICAgfVxuICAgICAgJi5ib3gtZm91ciB7XG4gICAgICAgIGxlZnQ6IC04NXB4O1xuICAgICAgICB0b3A6IC0yNThweDtcbiAgICAgICAgd2lkdGg6IDk3cHg7XG4gICAgICAgIGhlaWdodDogOTdweDtcbiAgICAgIH1cbiAgICAgICYuYm94LWZpdmUge1xuICAgICAgICBsZWZ0OiAxMDBweDtcbiAgICAgICAgdG9wOiAycHg7XG4gICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib3gtaWNvbnMyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAyNDBweDtcbiAgICBib3R0b206IGF1dG87XG4gICAgdG9wOiAxMDBweDtcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKDkwZGVnKSk7XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBHRVQtU1RBUlQgQVJFQSAyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uZ2V0LXN0YXJ0LWFyZWEyIHtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IDE1MHB4O1xuICB9XG4gIC5jb2wtbGctMTAge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAtbXMtZmxleDogMCAwIDEwMCU7XG4gICAgICBmbGV4OiAwIDAgMTAwJTtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24taGVhZGluZyB7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgIGxpbmUtaGVpZ2h0OiA2MHB4O1xuICAgICAgd2lkdGg6IDY5MHB4O1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS02O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJveC1pY29ucyB7XG4gICAgdG9wOiA3NXB4O1xuICAgIGJvdHRvbTogYXV0bztcbiAgICBkaXYge1xuICAgICAgJi5ib3gtdGhyZWUge1xuICAgICAgICB0b3A6IDE1MHB4O1xuICAgICAgfVxuICAgICAgJi5ib3gtZm91ciB7XG4gICAgICAgIHRvcDogMjU4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5ib3gtaWNvbnMyIHtcbiAgICB0b3A6IGF1dG87XG4gICAgYm90dG9tOiA3NXB4O1xuICAgIGRpdiB7XG4gICAgICAmLmJveC1maXZlIHtcbiAgICAgICAgbGVmdDogLTEzMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvbW8tYnRuIHtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogNjBweDtcbiAgICB9XG4gICAgLnZpZGVvLXBsYXktYnRuIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEzMHB4O1xuICAgICAgaGVpZ2h0OiAxMzBweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxMzBweDtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICBmb250LXNpemU6ICRkaXNwbGF5LTQ7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgei1pbmRleDogMTtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMTAwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNTtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHRvcDogLTI1cHg7XG4gICAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgICBib3R0b206IC0yNXB4O1xuICAgICAgICByaWdodDogLTI1cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LDI1NSwyNTUsIDAuMik7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHBsYXktYnV0dG9uLXB1bHNlIDEuOHMgbGluZWFyIGluZmluaXRlO1xuICAgICAgICAtbW96LWFuaW1hdGlvbjogcGxheS1idXR0b24tcHVsc2UgMS44cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIGFuaW1hdGlvbjogcGxheS1idXR0b24tcHVsc2UgMS44cyBsaW5lYXIgaW5maW5pdGU7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuICAgICAgJjphZnRlciB7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAuNnM7XG4gICAgICAgIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAuNnM7XG4gICAgICAgIGFuaW1hdGlvbi1kZWxheTogLjZzO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucHJvbW8tYnRuLmp1c3RpZnktY29udGVudC1lbmQge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAtbXMtZmxleC1wYWNrOiBjZW50ZXIhaW1wb3J0YW50O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXIhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQkVORUZJVCBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uYmVuZWZpdC1hcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nLWJvdHRvbTogMTE1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC5iZW5lZml0LWhlYWRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgfVxuICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAuc2VjdGlvbl9fZGVzYyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgfVxuICAuYmVuZWZpdC1jb3Vyc2UtYm94IHtcbiAgICAuY29sLWxnLTQge1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAtbXMtZmxleDogMCAwIDMzJTtcbiAgICAgICAgZmxleDogMCAwIDMzJTtcbiAgICAgICAgbWF4LXdpZHRoOiAzMyU7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5iZW5lZml0LWl0ZW0ge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDhweDtcbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLmJlbmVmaXRfX2ljb24ge1xuICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTQ7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgaGVpZ2h0OiA1MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMnB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1NiwxODcsIDEyLCAwLjEpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC40cyk7XG4gICAgICB9XG4gICAgICAuYmVuZWZpdF9fdGl0bGUge1xuICAgICAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMjtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuYmVuZWZpdF9faWNvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYmVuZWZpdC1pdGVtMiB7XG4gICAgICAuYmVuZWZpdF9faWNvbiB7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItNTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyMjEsNzMsIDYxLCAwLjEpO1xuICAgICAgfVxuICAgIH1cbiAgICAuYmVuZWZpdC1pdGVtMyB7XG4gICAgICAuYmVuZWZpdF9faWNvbiB7XG4gICAgICAgIGNvbG9yOiAkYWx0ZXItY29sb3ItNjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg2Miw5MSwgMTUzLCAwLjEpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZ2V0LXN0YXJ0LWJ0biB7XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuICAuYmVuZWZpdC1pbWcge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA1NXB4O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgcG9zaXRpb246IGluaGVyaXQ7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIHBvc2l0aW9uOiBpbmhlcml0O1xuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IC0zNTJweDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgdG9wOiBhdXRvO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIzMHB4O1xuICAgICAgICBtYXJnaW4tbGVmdDogNjBweDtcbiAgICAgICAgYm9yZGVyOiAyMHB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICByaWdodDogMjAwcHg7XG4gICAgYm90dG9tOiA0NXB4O1xuICAgIHdpZHRoOiAyMjBweDtcbiAgICBoZWlnaHQ6IDM0MXB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kb3RzLnBuZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB6LWluZGV4OiAtMTtcbiAgICBvcGFjaXR5OiAwLjE7XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBCRU5FRklUIEFSRUEgMlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLmJlbmVmaXQtYXJlYTIge1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIC5iZW5lZml0LWhlYWRpbmcge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICAuYmVuZWZpdC1jb3Vyc2UtYm94IHtcbiAgICAgIC5iZW5lZml0LWl0ZW0ge1xuICAgICAgICAuYmVuZWZpdF9faWNvbiB7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5iZW5lZml0LWltZyB7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoODIsIDg1LCA5MCwgMC4yKSk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgbGVmdDogMTVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiA1OSU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDI0MXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICB3aWR0aDogNDAlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGluaGVyaXQ7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoMykge1xuICAgICAgICBib3R0b206IDVweDtcbiAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiA2MCU7XG4gICAgICAgIG1hcmdpbi1yaWdodDogOTBweDtcbiAgICAgICAgQG1lZGlhICN7JGxhcHRvcF9tX2ZvdXJ9IHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgICByaWdodDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICBib3R0b206IDQ2cHg7XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgIGJvdHRvbTogYXV0bztcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICBib3R0b206IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjphZnRlciB7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgbGVmdDogMjkwcHg7XG4gICAgYm90dG9tOiA4M3B4O1xuICB9XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBSRUdJU1RFUiBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4ucmVnaXN0ZXItYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDExOXB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIC5yZWdpc3Rlci1oZWFkaW5nIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDkwcHg7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIC5yZWdpc3Rlcl9fZGVzYyB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIH1cbiAgfVxuICAucmVnaXN0ZXItd3JhcCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSg4MiwgODUsIDkwLCAwLjEpKTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC5jb250YWN0LXRpdGxlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgcGFkZGluZzogMzBweCA0MHB4IDMwcHggNDBweDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4IDRweCAwIDApO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEwO1xuICAgICAgfVxuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgIHBhZGRpbmc6IDQwcHg7XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICB9XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICBoZWlnaHQ6IDJweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4xKTtcbiAgICB9XG4gIH1cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICByaWdodDogNTVweDtcbiAgICBib3R0b206IDkxcHg7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1hZ2VzL2RvdHMucG5nXCIpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICBvcGFjaXR5OiAwLjM7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgfVxuICB9XG4gICY6YWZ0ZXIge1xuICAgIHJpZ2h0OiBhdXRvO1xuICAgIGxlZnQ6IDI4MHB4O1xuICAgIGJvdHRvbTogNzFweDtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICB9XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBSRUdJU1RFUiBBUkVBIDJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5yZWdpc3Rlci1hcmVhMiB7XG4gIC5yZWdpc3Rlci1oZWFkaW5nIHtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgcGFkZGluZy1yaWdodDogOTBweDtcbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gIH1cbiAgJjphZnRlciB7XG4gICAgbGVmdDogNTBweDtcbiAgfVxuICAmOmJlZm9yZSB7XG4gICAgcmlnaHQ6IDI4MHB4O1xuICB9XG59XG4vKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIGNsaWVudGxvZ28tYXJlYVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLmNsaWVudGxvZ28tYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwMnB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLmNsaWVudC1sb2dvIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIC5jbGllbnQtbG9nby1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGltZyB7XG4gICAgICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgICAgIGZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgfVxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgLXdlYmtpdC1maWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc3Ryb2tlLWxpbmUsXG4gIC5zdHJva2UtbGluZTIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDE3NXB4O1xuICAgIGxlZnQ6IDUwcHg7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBAaW5jbHVkZSB0cmFuc2Zvcm0ocm90YXRlKC01NWRlZykpO1xuICAgIG9wYWNpdHk6IDAuMTtcbiAgICAuc3Ryb2tlX19saW5lIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICY6bnRoLWNoaWxkKDEpLFxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc3Ryb2tlLWxpbmUyIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiA1MHB4O1xuICAgIGJvdHRvbTogMDtcbiAgICB0b3A6IGF1dG87XG4gICAgQGluY2x1ZGUgdHJhbnNmb3JtKHJvdGF0ZSg1NWRlZykpO1xuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQkxPRyBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uYmxvZy1hcmVhIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gIC5ibG9nLXBvc3Qtd3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMzdweDtcbiAgICAuYmxvZy1wb3N0LWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIHdpZHRoOiA3MCU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgICAuYmxvZy1wb3N0LWltZyB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgLmJsb2dfX2ltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgMCk7XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2dfX2RhdGUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgb3BhY2l0eTogMC4yO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgMCk7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIGJvdHRvbTogLTFweDtcbiAgICAgICAgICBsZWZ0OiAzMHB4O1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBib3JkZXItbGVmdDogMTNweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDEzcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMTNweCBzb2xpZCAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wb3N0LWJvZHkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSgxNCwgMTYsIDQ4LCAwLjA1KSk7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgYm9yZGVyLXRvcDogdHJhbnNwYXJlbnQ7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMCAwIDRweCA0cHgpO1xuICAgICAgICBwYWRkaW5nOiAzMHB4IDMwcHggMzVweCAzMHB4O1xuICAgICAgICAuYmxvZy10aXRsZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAuYmxvZ19fdGl0bGUge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2dfX3BhbmVsIHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDE0cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBjb250ZW50OiAnLic7XG4gICAgICAgICAgICAgIGJvdHRvbTogM3B4O1xuICAgICAgICAgICAgICByaWdodDogLTEwcHg7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICAuYmxvZy1wb3N0LWltZyB7XG4gICAgICAgICAgLmJsb2dfX2RhdGUge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBvcGFjaXR5OiAwLjU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6YmVmb3JlLFxuICAmOmFmdGVye1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDUzNnB4O1xuICAgIHotaW5kZXg6IC0xO1xuICAgIEBtZWRpYSAjeyRsYXB0b3BfbV9mb3VyfSB7XG4gICAgICBoZWlnaHQ6IDQ4NHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgaGVpZ2h0OiA2MTFweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgaGVpZ2h0OiA2MjlweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9vbmV9IHtcbiAgICAgIGhlaWdodDogNTk1cHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgaGVpZ2h0OiA1NjFweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgaGVpZ2h0OiA1MjVweDtcbiAgICB9XG4gIH1cbiAgJjpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9pbWc4LmpwZ1wiKTtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgb3BhY2l0eTogMC45MDtcbiAgfVxuICAub3dsLWRvdHMge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tdG9wOiAyNnB4O1xuICAgIGRpdiB7XG4gICAgICB3aWR0aDogMTRweDtcbiAgICAgIGhlaWdodDogMTRweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNHB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjQpO1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMC43KSk7XG4gICAgICAmLmFjdGl2ZSxcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBCTE9HIEFSRUEgMlxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLmJsb2ctYXJlYTIge1xuICBwYWRkaW5nLWJvdHRvbTogMTE4cHg7XG4gICY6YmVmb3JlLFxuICAmOmFmdGVye1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7XG4gICAgaGVpZ2h0OiAzNjBweDtcbiAgICBAbWVkaWEgI3skbGFwdG9wX21fZm91cn0ge1xuICAgICAgaGVpZ2h0OiA0MTBweDtcbiAgICB9XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgIGhlaWdodDogMzYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgIGhlaWdodDogMzYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIGhlaWdodDogMzYwcHg7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgIGhlaWdodDogNDEwcHg7XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQkxPRyBBUkVBIDNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5ibG9nLWFyZWEzIHtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLmJsb2ctcG9zdC13cmFwcGVyIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIC5jb2wtbGctNCB7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAtbXMtZmxleDogMCAwIDUwJTtcbiAgICAgICAgZmxleDogMCAwIDUwJTtcbiAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5ibG9nLXBvc3QtaXRlbSB7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXJ7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEJMT0cgQVJFQSA0XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uYmxvZy1hcmVhNCB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICAuYmxvZy1jb250ZW50LXdyYXAge1xuICAgIC5ibG9nLWl0ZW0ge1xuICAgICAgLmJsb2ctaW1nLWJveCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgMCk7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgMCk7XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2dfX2RhdGUge1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDIwcHg7XG4gICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDEycHg7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgYm90dG9tOiAtMXB4O1xuICAgICAgICAgIGxlZnQ6IDMwcHg7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAyMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAyMHB4IHNvbGlkICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJsb2ctY29udGVudCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwIDAgNHB4IDRweCk7XG4gICAgICAgIHBhZGRpbmc6IDMwcHggMzBweCAzNXB4IDMwcHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICAgIC5ibG9nX190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS02O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZV9mb3VyfSB7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTc7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmJsb2dfX2xpc3Qge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjIpO1xuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5sYSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5ibG9nX19kZXNjIHtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjhweDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb250ZW50LXJlcXVpcmVtZW50IHtcbiAgICAgICAgICAuYmxvZ19fdGl0bGUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLmNvbnRlbnRfX2xpc3Qge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDZweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAudGFncy1pdGVtIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDM1cHg7XG4gICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgdWwge1xuICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX29uZX0ge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYudGFnX19saXN0IHtcbiAgICAgICAgICAgICAgbGkge1xuICAgICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfb25lfSB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgICAgICAgICAgcGFkZGluZzogNXB4IDEycHg7XG4gICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5zb2NpYWxfX2xpbmtzIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbnN0cnVjdG9yLXdyYXAge1xuICAgICAgICAuaW5zdHJ1Y3Rvci13cmFwX190aXRsZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgfVxuICAgICAgICAuaW5zdHJ1Y3Rvci1jb250ZW50IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICAgICAgLmluc3RydWN0b3ItaW1nIHtcbiAgICAgICAgICAgIC5pbnN0cnVjdG9yX19hdmF0YXIge1xuICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDE1MHB4O1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmluc3RydWN0b3ItZGV0YWlscyB7XG4gICAgICAgICAgICAuaW5zdHJ1Y3Rvci10aXRsZXMge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgICAgICAuaW5zdHJ1Y3Rvcl9fdGl0bGUge1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTE7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5pbnN0cnVjdG9yLWRlc2Mge1xuICAgICAgICAgICAgICAuaW5zdHJ1Y3Rvcl9fdGV4dCB7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuaW5zdHJ1Y3Rvcl9fbGlua3Mge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmluc3RydWN0b3ItY29udGVudC5kLWZsZXgge1xuICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuY29tbWVudHMtd3JhcHBlciB7XG4gICAgICAgIC5jb250YWN0LXRpdGxlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzNXB4O1xuICAgICAgICB9XG4gICAgICAgIC5jb21tZW50cy1saXN0IHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAuY29tbWVudCB7XG4gICAgICAgICAgICAgIC5jb21tZW50LWJvZHkge1xuICAgICAgICAgICAgICAgIC5tZXRhLWRhdGEge1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgICAgICAgLW1zLWZsZXgtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgIC5jb21tZW50X19hdXRob3Ige1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgLmNvbW1lbnRfX2RhdGUge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFRFQU0gREVUQUlMUyBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4udGVhbS1kZXRhaWwtYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIC50ZWFtLXNpbmdsZS1pbWcge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiAxO1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDE1cHggMCAxNXB4IDE1cHgpO1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBsZWZ0OiAtNDVweDtcbiAgICAgIGJvdHRvbTogLTUycHg7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9kb3RzLnBuZ1wiKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICBvcGFjaXR5OiAwLjE7XG4gICAgfVxuICB9XG4gIC50ZWFtLXNpbmdsZS1jb250ZW50IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDMwcHg7XG4gICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICB9XG4gICAgLnRzZC1ib3gge1xuICAgICAgLnRzZC1pdGVtIHtcbiAgICAgICAgLnRzZGlfX3RpdGxlIHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgfVxuICAgICAgICAudHNkaV9fbWV0YSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgfVxuICAgICAgICAudHNkaV9fZGVzYyB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAudHNkaV9fbGlzdCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTI3LCAxMzYsIDE1MSwgMC40KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5lZHVjYXRpb24tZGV0YWlsIHtcbiAgICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50c2QtYm94LTIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzNweDtcbiAgICB9XG4gICAgLnRzZC1ib3gtMyB7XG4gICAgICAuY29sLWxnLTQge1xuICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgMzMlO1xuICAgICAgICAgIGZsZXg6IDAgMCAzMyU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAzMyU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgIC1tcy1mbGV4OiAwIDAgNTAlO1xuICAgICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgLnRzZC1pdGVtIHtcbiAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICB9XG4gICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICB9XG4gICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICB9XG4gICAgICAgLnRzZGlfX3RpdGxlIHtcbiAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgfVxuICAgICB9XG4gICAgfVxuICAgIC50c19fY29udGFjdCB7XG4gICAgICBtYXJnaW4tdG9wOiAzNHB4O1xuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMzRweDtcbiAgICAgICAgICAgIGhlaWdodDogMzRweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzNHB4O1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsMTkwLDEyMCwwLjEpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmFib3V0LXRhYi13cmFwIHtcbiAgICBtYXJnaW4tdG9wOiA2MHB4O1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgICAuY291cnNlLXRhYi1saXN0IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpO1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAyMHB4O1xuICAgICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYi1jb250ZW50IHtcbiAgICAgLnBhbmUtYm9keSB7XG4gICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgIHBhZGRpbmc6IDMwcHggMzVweDtcbiAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDgyLCA4NSwgOTAsIDAuMSkpO1xuICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICB9XG4gICAgfVxuICB9XG4gIC5pbnN0cnVjdG9yLWFsbC1jb3Vyc2Uge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gICAgLmluc3RydWN0b3ItYWxsLWNvdXJzZV9fdGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC4yKTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIH1cbiAgICAuY29sLWxnLTQge1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc3R1ZGVudC1hbGwtY291cnNlIHtcbiAgICBtYXJnaW4tdG9wOiAxMDBweDtcbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFBBQ0tBR0UgQVJFQVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLnBhY2thZ2UtYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgLnBhY2thZ2UtY29udGVudC13cmFwIHtcbiAgICAuY29sLWxnLTQge1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgLW1zLWZsZXg6IDAgMCA1MCU7XG4gICAgICAgIGZsZXg6IDAgMCA1MCU7XG4gICAgICAgIG1heC13aWR0aDogNTAlO1xuICAgICAgfVxuICAgIH1cbiAgICAucGFja2FnZS1pdGVtIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSgxNCwgMTYsIDQ4LCAwLjA1KSk7XG4gICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICBwYWRkaW5nOiA0MnB4IDQwcHggNDVweCA0MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHotaW5kZXg6IDE7XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgLnBhY2thZ2UtdG9vbHRpcCB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHggNHB4IDAgMCk7XG4gICAgICAgIC5wYWNrYWdlX190b29sdGlwIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCA0cHggMCAwKTtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgQGV4dGVuZCAldGhlbWUtYnRuLWFmdGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBhY2thZ2UtdGl0bGUge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjEpO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMzNweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgLnBhY2thZ2VfX3ByaWNlIHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAucGFja2FnZV9fdGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucGFja2FnZS1saXN0IHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDMzcHg7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRhbHRlci1jb2xvci00O1xuICAgICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDJweDtcbiAgICAgICAgICAgICYubGEtY2xvc2Uge1xuICAgICAgICAgICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBhY2thZ2UtcHJpY2Uge1xuICAgICAgICAudGhlbWUtYnRuIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucGFja2FnZV9fbWV0YSB7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnBhY2thZ2UtaXRlbTIge1xuICAgICAgcGFkZGluZy10b3A6IDk1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAtMjRweDtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgICAucGFja2FnZS1wcmljZSB7XG4gICAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFBBR0lOQVRJT04tV1JBUFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLnBhZ2luYXRpb24td3JhcCB7XG4gIG1hcmdpbi10b3A6IDI1cHg7XG4gIC5wYWdpbmF0aW9uIHtcbiAgICAucGFnZS1pdGVtIHtcbiAgICAgIC5wYWdlLWxpbmsge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoODEsIDE5MCwgMTIwLCAwLjEpOztcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMyA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMzlweDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgJjpob3ZlciAucGFnZS1saW5rLFxuICAgICAgJi5hY3RpdmUgLnBhZ2UtbGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFNJREVCQVJcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5zaWRlYmFyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbiAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIG1hcmdpbi10b3A6IDYwcHg7XG4gIH1cbiAgLnNpZGViYXItd2lkZ2V0IHtcbiAgICAuY29udGFjdC1mb3JtLWFjdGlvbiB7XG4gICAgICBmb3JtIHtcbiAgICAgICAgLmZvcm0tZ3JvdXAge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAuc2VhcmNoX19idG4ge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICByaWdodDogMjBweDtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTM7XG4gICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnN1YnNjcmliZXJfX2J0biB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgICByaWdodDogMTVweDtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgIHBhZGRpbmc6IDMwcHg7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIC53aWRnZXRfX3RpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICAgIC5zZWN0aW9uX19kaXZpZGVyIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGhlaWdodDogNHB4O1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygycHgpO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICB3aWR0aDogNTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDE1cHg7XG4gICAgICAgIHRvcDogLTEuMXB4O1xuICAgICAgICBoZWlnaHQ6IDdweDtcbiAgICAgICAgd2lkdGg6IDhweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgICAud2lkZ2V0X19saXN0IHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICB0b3A6IDZweDtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHdpZHRoOiAxMHB4O1xuICAgICAgICAgIGhlaWdodDogMTBweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsIDEzNiwgMTUxLCAwLjUpO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnJlY2VudC1pdGVtIHtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjVweDtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTIsIDAuMSk7XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5yZWNlbnQtaW1nIHtcbiAgICAgICAgd2lkdGg6IDg1cHg7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfZm91cn0ge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICB9XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnJlY2VudHBvc3QtYm9keSB7XG4gICAgICAgIC5yZWNlbnRfX21ldGEge1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5yZWNlbnRfX2xpbmsge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXNlbWktYm9sZDtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgIGEge1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucmVjZW50LWNvdXJzZV9fcHJpY2Uge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzcHg7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uLXNoYXJlZCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MiwgMC4yKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zb2NpYWxfX2xpbmtzIHtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBhIHtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogNDBweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDUwJSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg4MSwgMTkwLCAxMjAsIDAuMSk7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnJhdGluZ19fbGlzdCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIGxpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgICAgICAucmV2aWV3LWxhYmVsIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNHB4O1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMjhweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY291cnNlcy1vcmRlcmluZyB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAudGFyZ2V0LWNvdXJzZSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDAgMTVweCAyMHB4O1xuICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQ7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIC1tcy1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtby1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBcIkxpbmVBd2Vzb21lXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC0yO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMTEwXCI7XG4gICAgICAgIHJpZ2h0OiAxM3B4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGFnLXdpZGdldCB7XG4gICAgLndpZGdldF9fbGlzdCB7XG4gICAgICBsaSB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MiwgMC4yKTtcbiAgICAgICAgICBwYWRkaW5nOiA0cHggMTRweDtcbiAgICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaW5zdHJ1Y3Rvci13aWRnZXQge1xuICAgIC5idXR0b24tc2hhcmVkIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgLnRoZW1lLWJ0biB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDEyNywgMTM2LCAxNTIsIDAuMik7XG4gICAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdGhyZWV9IHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vKj09IHJhdGluZ19fbGlzdCA9PSovXG4ucmF0aW5nX19saXN0IHtcbiAgbWFyZ2luLXRvcDogMjVweDtcbiAgbWFyZ2luLWJvdHRvbTogNDVweDtcbiAgbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGVfdHdvfSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMzBweDtcbiAgICB9XG4gICAgLmxhLXN0YXIge1xuICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgLnJldmlldy1sYWJlbCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgaW5wdXQge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgJjpjaGVja2VkIH4gLnJldmlldy1tYXJrIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0oc2NhbGUoMSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnJldmlldy1tYXJrIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxOHB4O1xuICAgICAgICBoZWlnaHQ6IDE4cHg7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgYm9yZGVyLXdpZHRoOiAycHg7XG4gICAgICAgIGJvcmRlci1zdHlsZTogc29saWQ7XG4gICAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgICAgICBib3JkZXItaW1hZ2U6IGluaXRpYWw7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIHRvcDogMnB4O1xuICAgICAgICAgIGxlZnQ6IDJweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICAgICAgaGVpZ2h0OiAxMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRlci1jb2xvci0yO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDAuMSkpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgQ09OVEFDVFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PS0qL1xuLmNvbnRhY3QtYXJlYSB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMjBweDtcbiAgfVxuICAuY29udGFjdC1pdGVtIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgcGFkZGluZzogMzVweCAzMHB4O1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coMCAwIDQwcHggcmdiYSgxNCwgMTYsIDQ4LCAwLjA1KSk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg0cHgpO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgei1pbmRleDogMjtcbiAgICAuaG92ZXItb3ZlcmxheSB7XG4gICAgICAmOmJlZm9yZSxcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogLTkwcHg7XG4gICAgICAgIHdpZHRoOiA1NDBweDtcbiAgICAgICAgaGVpZ2h0OiA1NDBweDtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoMTAwJSkgcm90YXRlKDEwZGVnKSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICB0b3A6IDcwJTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAwLjMpO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29udGFjdF9faWNvbiB7XG4gICAgICBjb2xvcjogJGFsdGVyLWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS01O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICBsaW5lLWhlaWdodDogODBweDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMTI2LCA2MCwgMjQ5LCAwLjEpO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICB9XG4gICAgLmNvbnRhY3RfX3RpdGxlIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi10b3A6IDIzcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICB9XG4gICAgLmNvbnRhY3RfX2Rlc2Mge1xuICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgIH1cbiAgICAuY29udGFjdF9fbGlzdCB7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6YmVmb3JlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgdG9wOiAzMCU7XG4gICAgICBsZWZ0OiAtOTBweDtcbiAgICAgIHdpZHRoOiA1NDBweDtcbiAgICAgIGhlaWdodDogNTQwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgICB6LWluZGV4OiAtMTtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDEwMCUpIHJvdGF0ZSgxMGRlZykpO1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgIC5jb250YWN0X190aXRsZSxcbiAgICAgIC5jb250YWN0X19kZXNjLFxuICAgICAgLmNvbnRhY3RfX2xpc3QgbGkgYSB7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgICAuY29udGFjdF9faWNvbiB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAuMnM7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKDApIHJvdGF0ZSgxMGRlZykpO1xuICAgICAgfVxuICAgICAgLmhvdmVyLW92ZXJsYXkge1xuICAgICAgICAmOmJlZm9yZSxcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoMCkgcm90YXRlKDEwZGVnKSk7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogLjFzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jb250YWN0LWl0ZW0yIHtcbiAgICAuY29udGFjdF9faWNvbiB7XG4gICAgICBjb2xvcjogJGFsdGVyLWNvbG9yLTI7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI0NiwgMTM4LCAzLCAwLjIpO1xuICAgIH1cbiAgfVxuICAuY29udGFjdC1pdGVtMyB7XG4gICAgLmNvbnRhY3RfX2ljb24ge1xuICAgICAgY29sb3I6ICRhbHRlci1jb2xvci0zO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg1MywgMTQzLCAyNDcsIDAuMik7XG4gICAgfVxuICB9XG4gIC5jb250YWN0LWZvcm0td3JhcCB7XG4gICAgbWFyZ2luLXRvcDogOTBweDtcbiAgICAuc2VjdGlvbi1oZWFkaW5nIHtcbiAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgICB9XG4gICAgICAuc2VjdGlvbl9fdGl0bGUge1xuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS03O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2VjdGlvbl9fbGlzdCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDM1cHg7XG4gICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDgxLCAxOTAsIDEyMCwgMC4xKTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgTVBBIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5tYXAtY29udGFpbmVyICNtYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MDBweDtcbiAgQG1lZGlhICN7JGRldmljZS00ODF9IHtcbiAgICBoZWlnaHQ6IDQwMHB4O1xuICB9XG59XG4ubWFwLWNvbnRhaW5lciAjbWFwIC5nbS1zdHlsZSAuZ21ub3ByaW50LFxuLm1hcC1jb250YWluZXIgI21hcCAuZ20tc3R5bGUgYnV0dG9uLmdtLWNvbnRyb2wtYWN0aXZlLmdtLWZ1bGxzY3JlZW4tY29udHJvbCxcbi5tYXAtY29udGFpbmVyICNtYXAgLmdtLXN0eWxlIC5nbS1zdHlsZS1jYyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qLT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBTVUJTQ1JJQkVSIEFSRUFcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0tKi9cbi5zdWJzY3JpYmVyLWFyZWEge1xuICBwYWRkaW5nLXRvcDogMTE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxMDBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG4gIC5zdWJzY3JpYmVyLWZvcm0td3JhcCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiAtbXMtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC1tcy1mbGV4LWFsaWduOiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMTtcbiAgICAuc3Vic2NyaWJlci1mb3JtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV9mb3VyfSB7XG4gICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDUwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKDEyNywgMTM2LCAxNTEsIDAuMik7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtcmVndWxhcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCA0MHB4IHJnYmEoMTQsMTYsNDgsLjA2KSk7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOnJnYmEoMTI3LCAxMzYsIDE1MSwgMC40KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmxhLWVudmVsb3BlLW8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMjJweDtcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgIH1cbiAgICAgIC50aGVtZS1idG4ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgIHJpZ2h0OiA4cHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHRyYW5zbGF0ZVkoMCkpO1xuICAgICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBjb250ZW50OiAnJztcbiAgICB0b3A6IC0xMDBweDtcbiAgICBsZWZ0OiAzMHB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWFnZXMvZG90cy5wbmdcIik7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBvcGFjaXR5OiAwLjI7XG4gICAgei1pbmRleDogLTE7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cyg1MCUpO1xuICB9XG4gICY6YWZ0ZXIge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICAgIGJvdHRvbTogMDtcbiAgICByaWdodDogMzBweDtcbiAgfVxufVxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIFNVQlNDUklCRVIgQVJFQSAyXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uc3Vic2NyaWJlci1hcmVhMiB7XG4gIC5zZWN0aW9uLWhlYWRpbmcge1xuICAgIG1hcmdpbi1ib3R0b206IDM1cHg7XG4gICAgLnNlY3Rpb25fX3RpdGxlIHtcbiAgICAgIHdpZHRoOiA3MDBweDtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnN1YnNjcmliZXItZm9ybS13cmFwIHtcbiAgICAuc3Vic2NyaWJlci1mb3JtIHtcbiAgICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDMwcHgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLyo9PT09PT09PSBjb250YWN0LWZvcm0tYWN0aW9uID09PT09PT09PSovXG4uY29udGFjdC1mb3JtLWFjdGlvbiB7XG4gIGZvcm0ge1xuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAuY291cnNlLWZpbHRlciB7XG4gICAgICAgIC5jb3Vyc2VzLW9yZGVyaW5nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJpcnRoZGF5LWZpbHRlciB7XG4gICAgICAgIC5jb3Vyc2VzLW9yZGVyaW5nIHtcbiAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgICAgZGlzcGxheTogLW1zLWZsZXg7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICB3aWR0aDogMTUzcHg7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgICAgICAgICAgZm9udC1mYW1pbHk6IFwiTGluZUF3ZXNvbWVcIjtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNDtcbiAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgY29udGVudDogXCJcXGYxMTBcIjtcbiAgICAgICAgICAgICAgcmlnaHQ6IDEzcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDMpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLnRhcmdldC1jb3Vyc2Uge1xuICAgICAgICAgICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZX0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgfVxuICAgICAgLmdlbmRlci1jb250cm9sIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgICBwYWRkaW5nOiAxNXB4IDIwcHggMTVweCA1MHB4O1xuICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQ7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3I7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgxMjcsMTM2LDE1MSwwLjIpO1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LXJlZ3VsYXI7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgcmVzaXplOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMCAwIDApO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgxMjcsMTM2LDE1MSwwLjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuaW5wdXQtaWNvbiB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxOHB4O1xuICAgICAgICBsZWZ0OiAyMHB4O1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgfVxuICAgICAgLnNlYXJjaC1pY29uIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpIHJvdGF0ZSgtOTBkZWcpKTtcbiAgICAgICAgZm9udC1zaXplOiAkZGlzcGxheS0xMztcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBwYWRkaW5nOiAxN3B4O1xuICAgICAgfVxuICAgICAgLm1lc3NhZ2UtY29udHJvbCB7XG4gICAgICAgIGhlaWdodDogMTUwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5nZW5kZXItZ3JvdXAge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC50aGVtZS1idG4ge1xuICAgICAgb3V0bGluZTogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgZm9ybS1zaGFyZWRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbi5mb3JtLXNoYXJlZCB7XG4gIHBhZGRpbmctdG9wOiAxMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDkwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEyMHB4O1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTIwcHg7XG4gIH1cbiAgLmNvbnRhY3QtZm9ybS1hY3Rpb24ge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDAgNDBweCByZ2JhKDgyLCA4NSwgOTAsIDAuMSkpO1xuICAgIHBhZGRpbmc6IDQ2cHggMzBweCA0MnB4IDMwcHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNvbG9yO1xuICAgIC5mb3JtLWhlYWRpbmcge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzNweDtcbiAgICAgIC5mb3JtX190aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNjtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1zZW1pLWJvbGQ7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDhweDtcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsX21vYmlsZV90aHJlZX0ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmZvcm1fX2Rlc2Mge1xuICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEzO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgICAgfVxuICAgICAgLnJlc2V0X19kZXNjIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDMwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IDE1cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBmb3JtIHtcbiAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgLnNpZ24tYnRuIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBAbWVkaWEgI3skZGV2aWNlLTk5Mn0ge1xuICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgQG1lZGlhICN7JGRldmljZS03Njd9IHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG5fX2dvb2dsZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGFsdGVyLWNvbG9yLTU7XG4gICAgICAgIH1cbiAgICAgICAgLmJ0bl9fZmFjZWJvb2sge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRlci1jb2xvci02O1xuICAgICAgICB9XG4gICAgICAgIC5idG5fX3R3aXR0ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhbHRlci1jb2xvci03O1xuICAgICAgICB9XG4gICAgICAgIC5yZXNldF9fYnRuIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9ybS1jb25kaXRpb24ge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgfVxuICAgICAgLmFjY291bnQtYXNzaXN0IHtcbiAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcbiAgICAgICAgLmFjY291bnRfX2Rlc2Mge1xuICAgICAgICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udDtcbiAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0zO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnRleHQtcmlnaHQge1xuICAgICAgICAgICAgQG1lZGlhICN7JGxhcmdlX21vYmlsZX0ge1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmFjY291bnRfX2Rlc2MyIHtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTEyO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzMnB4O1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLTI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLTI7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2Zvcm0odHJhbnNsYXRlWSgtNTAlKSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gICY6YmVmb3JlLFxuICAmOmFmdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgY29udGVudDogJyc7XG4gICAgdG9wOiA1NXB4O1xuICAgIHJpZ2h0OiA1NXB4O1xuICAgIHdpZHRoOiAyMDBweDtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCguLi9pbWFnZXMvZG90cy5wbmcpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHotaW5kZXg6IC0xO1xuICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICBvcGFjaXR5OiAwLjM7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgYm90dG9tOiA1NXB4O1xuICAgIGxlZnQ6IDU1cHg7XG4gICAgcmlnaHQ6IGF1dG87XG4gICAgdG9wOiBhdXRvO1xuICB9XG59XG4vKi09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgY3VzdG9tLWNoZWNrYm94XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uY3VzdG9tLWNoZWNrYm94IHtcbiAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG4gIGxhYmVsIHtcbiAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTQ7XG4gICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250O1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbWVkaXVtO1xuICAgIGEge1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTM7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucGFzc19fZGVzYyB7XG4gICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlX2ZvdXJ9IHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItMztcbiAgICB9XG4gIH1cbiAgaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpjaGVja2VkKSxcbiAgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IC05OTk5cHg7XG4gIH1cbiAgaW5wdXRbdHlwZT1jaGVja2JveF06bm90KDpjaGVja2VkKSArIGxhYmVsLFxuICBpbnB1dFt0eXBlPWNoZWNrYm94XTpjaGVja2VkICsgbGFiZWwge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWxlZnQ6IDI2cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDpiZWZvcmUsXG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAzcHg7XG4gICAgd2lkdGg6IDE4cHg7XG4gICAgaGVpZ2h0OiAxOHB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMTI3LCAxMzYsIDE1MSwgMC40KTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygycHgpO1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOm5vdCg6Y2hlY2tlZCkgKyBsYWJlbDphZnRlcixcbiAgaW5wdXRbdHlwZT1jaGVja2JveF06Y2hlY2tlZCArIGxhYmVsOmFmdGVyIHtcbiAgICBjb250ZW50OiAnXFxmMDBjJztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcHg7XG4gICAgbGVmdDogM3B4O1xuICAgIGZvbnQtc2l6ZTogJGRlZmF1bHQtZm9udC00O1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWUsc2Fucy1zZXJpZjtcbiAgfVxuICBpbnB1dFt0eXBlPWNoZWNrYm94XTpub3QoOmNoZWNrZWQpICsgbGFiZWw6YWZ0ZXIge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDphZnRlciB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG4gIGlucHV0W3R5cGU9Y2hlY2tib3hdOmNoZWNrZWQgKyBsYWJlbDpiZWZvcmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIGJvcmRlci1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gIH1cbn1cblxuLyotPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIEZPT1RFUiBBUkVBXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09LSovXG4uZm9vdGVyLWFyZWEge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA0MHB4O1xuICBwYWRkaW5nLXRvcDogMTYwcHg7XG4gIHotaW5kZXg6IDE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgcGFkZGluZy10b3A6IDM0NXB4O1xuICB9XG4gIEBtZWRpYSAjeyRsYXJnZV9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICB9XG4gIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICBwYWRkaW5nLXRvcDogMTIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yO1xuICB9XG4gIC5vY2VhbiB7XG4gICAgaGVpZ2h0OiA2NyU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvcjtcbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAud2F2ZSB7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3dhdmUuc3ZnKSByZXBlYXQteDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogLTE5OHB4O1xuICAgICAgd2lkdGg6IDY0MDBweDtcbiAgICAgIGhlaWdodDogMzUwcHg7XG4gICAgICAtd2Via2l0LWFuaW1hdGlvbjogd2F2ZSA1NXMgY3ViaWMtYmV6aWVyKDAuMzYsIDAuNDUsIDAuNjMsIDAuOTMpIGluZmluaXRlO1xuICAgICAgYW5pbWF0aW9uOiB3YXZlIDU1cyBjdWJpYy1iZXppZXIoMC4zNiwgMC40NSwgMC42MywgMC45MykgaW5maW5pdGU7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgICAgQG1lZGlhICN7JHRhYl9kZXZpY2V9IHtcbiAgICAgICAgaGVpZ2h0OiAyMzBweDtcbiAgICAgIH1cbiAgICAgICY6bnRoLW9mLXR5cGUoMikge1xuICAgICAgICB0b3A6IC0xNzVweDtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb246IHdhdmUgNTVzIGN1YmljLWJlemllcigwLjM2LCAwLjQ1LCAwLjYzLCAwLjkzKSAtMC4xMjVzIGluZmluaXRlLCBzd2VsbCA1NXMgZWFzZSAtMS4yNXMgaW5maW5pdGU7XG4gICAgICAgIGFuaW1hdGlvbjogd2F2ZSA1NXMgY3ViaWMtYmV6aWVyKDAuMzYsIDAuNDUsIDAuNjMsIDAuOTMpIC0wLjEyNXMgaW5maW5pdGUsIHN3ZWxsIDU1cyBlYXNlIC0xLjI1cyBpbmZpbml0ZTtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvb3Rlci13aWRnZXQge1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICAgIH1cbiAgICAuZm9vdGVyX19sb2dvIHtcbiAgICAgIHdpZHRoOiAxNTBweDtcbiAgICB9XG4gICAgLmZvb3Rlci10aXRsZSB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtc2VtaS1ib2xkO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktMTA7XG4gICAgICBjb2xvcjogJHdoaXRlO1xuICAgIH1cbiAgICAuc2VjdGlvbl9fZGl2aWRlciB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBoZWlnaHQ6IDVweDtcbiAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoMzBweCk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNztcbiAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMzJweDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgdG9wOiAtMC4xcHg7XG4gICAgICAgIGhlaWdodDogNXB4O1xuICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiAzcztcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXI7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IE1PVkUtQkcyO1xuICAgICAgICBhbmltYXRpb24tbmFtZTogTU9WRS1CRzI7XG4gICAgICB9XG4gICAgfVxuICAgIGEge1xuICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci03O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9vdGVyLWFkZHJlc3Mge1xuICAgICAgbWFyZ2luLXRvcDogMzhweDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTc7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA3cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5mb290ZXItc29jaWFsIHtcbiAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygxMHB4KTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDE1OCwgMTY2LCAxODYsIDAuMSk7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5mb290ZXItbGluayB7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDEycHg7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgICBhIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAxNXB4O1xuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICB0b3A6IDlweDtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAycHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItNztcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgd2lkdGg6IDMycHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzJweDtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNTAlKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoNjMsIDY1LCA5NywgMC4xKTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oMC4zcyk7XG4gICAgICAgICAgICBmb250LXNpemU6ICRkZWZhdWx0LWZvbnQtMjtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgICB3aWR0aDogMTBweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNvY2lhbC1saW5rIHtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgIGEge1xuICAgICAgICAgIHBhZGRpbmc6IDIwcHggMjBweCAyMHB4IDYwcHg7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgxNTgsIDE2NiwgMTg2LCAwLjEpO1xuICAgICAgICAgIEBpbmNsdWRlIGJvcmRlci1yYWRpdXMoNHB4KTtcbiAgICAgICAgICBmb250LXNpemU6ICRkaXNwbGF5LTExO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlX3RocmVlfSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMjEwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgbGVmdDogMjBweDtcbiAgICAgICAgICAgIHRvcDogMTVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJGRpc3BsYXktNztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygwKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvcHlyaWdodC1jb250ZW50IHtcbiAgICBtYXJnaW4tdG9wOiA5MHB4O1xuICAgIHBhZGRpbmctdG9wOiA0MHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMSk7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIEBtZWRpYSAjeyR0YWJfZGV2aWNlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICBAbWVkaWEgI3skc21hbGxfbW9iaWxlfSB7XG4gICAgICBtYXJnaW4tdG9wOiA0MHB4O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgICAuY29weV9fZGVzYyB7XG4gICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTc7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNztcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjNzKTtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5sYW5ndWFnZS1zZWxlY3Qge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAbWVkaWEgI3skdGFiX2RldmljZX0ge1xuICAgICAgICB3aWR0aDogMzAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBAbWVkaWEgI3skbGFyZ2VfbW9iaWxlfSB7XG4gICAgICAgIHdpZHRoOiAzMyU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAjeyRzbWFsbF9tb2JpbGV9IHtcbiAgICAgICAgd2lkdGg6IDQ1JTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gICAgICAgIG1hcmdpbi1yaWdodDogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgLnRhcmdldC1sYW5nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMjU1LCAyNTUsIDI1NSwgMC4yKTtcbiAgICAgICAgcGFkZGluZzogMTBweCAwIDEwcHggMzVweDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBjb2xvcjogJHRoZW1lLWNvbG9yLTc7XG4gICAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xuICAgICAgICAtbXMtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgLW8tYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmFkaXVzKDRweCk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBmb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW1lZGl1bTtcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybSh0cmFuc2xhdGVZKC01MCUpKTtcbiAgICAgICAgZm9udC1mYW1pbHk6IFwiTGluZUF3ZXNvbWVcIjtcbiAgICAgICAgZm9udC1zaXplOiAkZGVmYXVsdC1mb250LTI7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtY29sb3ItNztcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGYxMTNcIjtcbiAgICAgICAgcmlnaHQ6IDEzcHg7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGYyMTlcIjtcbiAgICAgICAgbGVmdDogMTNweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyo9PT0gd2F2ZSA9PT0qL1xuQC13ZWJraXQta2V5ZnJhbWVzIHdhdmUge1xuICAwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbiAgMTAwJSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0xNjAwcHg7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB3YXZlIHtcbiAgMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIDEwMCUge1xuICAgIG1hcmdpbi1sZWZ0OiAtMTYwMHB4O1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzd2VsbCB7XG4gIDAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTI1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTI1cHgsIDApO1xuICB9XG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3ZWxsIHtcbiAgMCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjVweCwgMCk7XG4gIH1cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIH1cbn1cblxuLyo9PT0gc2Nyb2xsLXRvcCA9PT0qL1xuI3Njcm9sbC10b3Age1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDUwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgY29sb3I6ICR0aGVtZS1jb2xvci00O1xuICBmb250LXNpemU6ICRkaXNwbGF5LTEwO1xuICB6LWluZGV4OiA5OTk5O1xuICB3aWR0aDogNTBweDtcbiAgaGVpZ2h0OiA0NXB4O1xuICBsaW5lLWhlaWdodDogNDNweDtcbiAgQGluY2x1ZGUgYm9yZGVyLXJhZGl1cygzMHB4IDAgMCAzMHB4KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAxMHB4IDQwcHggcmdiYSgxNCwxNiw0OCwuMDYpKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgxMjcsMTM2LDE1MSwwLjMpO1xuICBib3JkZXItcmlnaHQ6IDA7XG4gIHBhZGRpbmctbGVmdDogNHB4O1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uKDAuM3MpO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtY29sb3ItMjtcbiAgICBib3JkZXItY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuIiwiJHRoZW1lLWNvbG9yOiAjMjMzZDYzO1xuJHRoZW1lLWNvbG9yLTI6ICM1MWJlNzg7XG4kdGhlbWUtY29sb3ItMzogIzQyYmU2ZjtcbiR0aGVtZS1jb2xvci00OiAjN2Y4ODk3O1xuJHRoZW1lLWNvbG9yLTU6ICNGN0ZBRkQ7XG4kdGhlbWUtY29sb3ItNjogIzBlMGUxZTtcbiR0aGVtZS1jb2xvci03OiAjOWVhNmJhO1xuJHdoaXRlOiAjZmZmO1xuJGJsYWNrOiAjMDAwO1xuJGNvbG9yOiAjZWVlO1xuJHRoZW1lLWZvbnQ6ICdMaWJyZSBGcmFua2xpbicsIHNhbnMtc2VyaWY7XG4kZGVmYXVsdC1mb250OiAxNnB4O1xuJGRlZmF1bHQtZm9udC0yOiAxNXB4O1xuJGRlZmF1bHQtZm9udC0zOiAxNHB4O1xuJGRlZmF1bHQtZm9udC00OiAxM3B4O1xuJGRlZmF1bHQtZm9udC01OiAxMnB4O1xuJHByaW1hcnktZm9udDogNDVweDtcbiRkaXNwbGF5OiA5MHB4O1xuJGRpc3BsYXktMjogODBweDtcbiRkaXNwbGF5LTM6IDcwcHg7XG4kZGlzcGxheS00OiA2MHB4O1xuJGRpc3BsYXktNTogNTBweDtcbiRkaXNwbGF5LTY6IDQwcHg7XG4kZGlzcGxheS03OiAzMHB4O1xuJGRpc3BsYXktODogMjhweDtcbiRkaXNwbGF5LTk6IDI2cHg7XG4kZGlzcGxheS0xMDogMjRweDtcbiRkaXNwbGF5LTExOiAyMnB4O1xuJGRpc3BsYXktMTI6IDIwcHg7XG4kZGlzcGxheS0xMzogMThweDtcbiRmb250LXdlaWdodC10aGluOiAxMDA7XG4kZm9udC13ZWlnaHQtZXh0cmEtbGlnaHQ6IDIwMDtcbiRmb250LXdlaWdodC1saWdodDogMzAwO1xuJGZvbnQtd2VpZ2h0LXJlZ3VsYXI6IDQwMDtcbiRmb250LXdlaWdodC1tZWRpdW06IDUwMDtcbiRmb250LXdlaWdodC1zZW1pLWJvbGQ6IDYwMDtcbiRmb250LXdlaWdodC1ib2xkOiA3MDA7XG4kZm9udC13ZWlnaHQtYmxhY2s6IDgwMDtcbiRhbHRlci1jb2xvcjogIzdFM0NGOTtcbiRhbHRlci1jb2xvci0yOiAjRjY4QTAzO1xuJGFsdGVyLWNvbG9yLTM6ICMzNThGRjc7XG4kYWx0ZXItY29sb3ItNDogIzM4QkIwQztcbiRhbHRlci1jb2xvci01OiAjREQ0OTNEO1xuJGFsdGVyLWNvbG9yLTY6ICMzRTVCOTk7XG4kYWx0ZXItY29sb3ItNzogIzNBQUFFMTtcbiRjb2xvcjogI2VlZTtcbiRjb2xvci0yOiAjQkRCQkJDO1xuLyotLS0tIHRoZW1lLWJ0biAtLS0tKi9cbiV0aGVtZS1idG4ge1xuICBmb250LXNpemU6IDE1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1jb2xvci0yO1xuICBjb2xvcjogI2ZmZjtcbiAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1tZWRpdW07XG4gIGxldHRlci1zcGFjaW5nOiAwLjFweDtcbiAgcGFkZGluZzogMCAzMHB4IDAgMzBweDtcbiAgbGluZS1oZWlnaHQ6IDU1cHg7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDRweDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW47XG4gIC1tb3otdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluO1xuICAtbXMtdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluO1xuICAtby10cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW47XG4gIHRyYW5zaXRpb246IDAuM3MgZWFzZS1pbjtcbiAgYm9yZGVyOiBub25lO1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuLyotLS0tIHRoZW1lLWJ0bi1hZnRlciAtLS0tKi9cbiV0aGVtZS1idG4tYWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IC0xMnB4O1xuICB0b3A6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgd2lkdGg6IDU2JTtcbiAgY29udGVudDogXCJcIjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBvcGFjaXR5OiAuMTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDE1ZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06IHNrZXdYKDE1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogc2tld1goMTVkZWcpO1xuICAtby10cmFuc2Zvcm06IHNrZXdYKDE1ZGVnKTtcbiAgdHJhbnNmb3JtOiBza2V3WCgxNWRlZyk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluO1xuICAtbW96LXRyYW5zaXRpb246IDAuM3MgZWFzZS1pbjtcbiAgLW1zLXRyYW5zaXRpb246IDAuM3MgZWFzZS1pbjtcbiAgLW8tdHJhbnNpdGlvbjogMC4zcyBlYXNlLWluO1xuICB0cmFuc2l0aW9uOiAwLjNzIGVhc2UtaW47XG59XG4iLCJAbWl4aW4gdHJhbnNpdGlvbigkdGltZS1zZXQpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgJHRpbWUtc2V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAkdGltZS1zZXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBhbGwgJHRpbWUtc2V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgJHRpbWUtc2V0O1xuICB0cmFuc2l0aW9uOiBhbGwgJHRpbWUtc2V0O1xufVxuQG1peGluIGJvcmRlci1yYWRpdXMoJHJhZGl1cy1wcm9wZXJ0eSkge1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6ICRyYWRpdXMtcHJvcGVydHk7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogJHJhZGl1cy1wcm9wZXJ0eTtcbiAgYm9yZGVyLXJhZGl1czogJHJhZGl1cy1wcm9wZXJ0eTtcbn1cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3ctcHJvcGVydHkpIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93LXByb3BlcnR5O1xuICAtbW96LWJveC1zaGFkb3c6ICRzaGFkb3ctcHJvcGVydHk7XG4gIGJveC1zaGFkb3c6ICRzaGFkb3ctcHJvcGVydHk7XG59XG5AbWl4aW4gcGVyc3BlY3RpdmUoJHByb3BlcnR5KSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmU6ICRwcm9wZXJ0eTtcbiAgLW1vei1wZXJzcGVjdGl2ZTogJHByb3BlcnR5O1xuICAtbXMtcGVyc3BlY3RpdmU6ICRwcm9wZXJ0eTtcbiAgcGVyc3BlY3RpdmU6ICRwcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0oJHByb3BlcnR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiAkcHJvcGVydHk7XG4gIC1tb3otdHJhbnNmb3JtOiAkcHJvcGVydHk7XG4gIC1tcy10cmFuc2Zvcm06ICRwcm9wZXJ0eTtcbiAgLW8tdHJhbnNmb3JtOiAkcHJvcGVydHk7XG4gIHRyYW5zZm9ybTogJHByb3BlcnR5O1xufVxuXG4iLCIkbGFwdG9wX2xzOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSBhbmQgKG1heC13aWR0aDogMTkxOXB4KSc7XG4kbGFwdG9wX2w6ICcobWF4LXdpZHRoOiAxNDQwcHgpJztcbiRsYXB0b3BfbTogJyhtYXgtd2lkdGg6IDEzNjZweCknO1xuJGxhcHRvcF9tX3R3bzogJyhtYXgtd2lkdGg6IDEyODBweCknO1xuJGxhcHRvcF9tX3RocmVlOiAnKG1heC13aWR0aDogMTIwMHB4KSc7XG4kbGFwdG9wX21fZm91cjogJyhtYXgtd2lkdGg6IDExOTlweCknO1xuJGxhcHRvcF9tX2ZpdmU6ICcobWF4LXdpZHRoOiAxMDI0cHgpJztcbiRsYXB0b3BfbV9zaXg6ICcobWluLXdpZHRoOiAxMjAwcHgpJztcbiRtZWRpdW1fZGV2aWNlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk5MnB4KSBhbmQgKG1heC13aWR0aDogMTIwMHB4KSc7XG4kdGFiX2RldmljZTogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkgYW5kIChtYXgtd2lkdGg6IDk5MXB4KSc7XG4kdGFiX2RldmljZS1hbmQtbW9iaWxlOiAnb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSBhbmQgKG1heC13aWR0aDogOTkwcHgpJztcbiR0YWJfZGV2aWNlX3R3bzogJyhtYXgtd2lkdGg6IDc2OHB4KSc7XG4kdGFiX2RldmljZV90aHJlZTogJyhtYXgtd2lkdGg6IDk5MXB4KSc7XG4kdGFiX2RldmljZV9mb3VyOiAnKG1pbi13aWR0aDogOTkxcHgpJztcbiRsYXJnZV9tb2JpbGU6ICdvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDgwcHgpIGFuZCAobWF4LXdpZHRoOiA3NjdweCknO1xuJGxhcmdlX21vYmlsZV90d286ICcgKG1heC13aWR0aDogNjAwcHgpJztcbiRsYXJnZV9tb2JpbGVfdGhyZWU6ICcgKG1heC13aWR0aDogNTc1cHgpJztcbiRsYXJnZV9tb2JpbGVfZm91cjogJyAobWF4LXdpZHRoOiA0ODBweCknO1xuJHNtYWxsX21vYmlsZTogJ29ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAzMjBweCkgYW5kIChtYXgtd2lkdGg6IDQ3OXB4KSc7XG4kc21hbGxfbW9iaWxlX29uZTogJyAobWF4LXdpZHRoOiA0MjVweCknO1xuJHNtYWxsX21vYmlsZV90d286ICcobWF4LXdpZHRoOiA0MDBweCknO1xuJHNtYWxsX21vYmlsZV90aHJlZTogJyhtYXgtd2lkdGg6IDMyMHB4KSc7XG4kc21hbGxfbW9iaWxlX2ZvdXI6ICcobWF4LXdpZHRoOiAzNzVweCknO1xuJGRldmljZS0xNjAwOiAnKG1heC13aWR0aDogMTYwMHB4KSc7XG4kZGV2aWNlLTc2NzogJyhtYXgtd2lkdGg6IDc2N3B4KSc7XG4kZGV2aWNlLTk5MjogJyhtYXgtd2lkdGg6IDk5MnB4KSc7XG4kZGV2aWNlLTc2NzogJyhtYXgtd2lkdGg6IDc2N3B4KSc7XG4kZGV2aWNlLTQ4MTogJyhtYXgtd2lkdGg6IDQ4MXB4KSc7XG4kZGV2aWNlLTM4NDogJyhtYXgtd2lkdGg6IDM4NHB4KSc7XG5cblxuXG5cblxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7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 */
