/*--------------------------------------------------------------------------
Template name: Foodor
Template URI: https://foodor.netlify.com
Author Name: Tortoiz
Author URI: 
Tag: Restaurants, Food, Hotel, Food Business
Verson: 1.0.0
Description: Foodor is a responsive html5 bootstrap5 Restaurants Template    

===========================
CSS Index
===========================

01. Header Area
02. Hero Banner Area 
03. Features Area
04. Order Step
05. Foods Tabs Area
06. Call To Action Area
07. Popular Items
08. Clients Reviews Carousel
09. Apps Features Area
10. Subscribe Area
11. Footer Area
12. About Us Page
13. Services Page
14. Menu Page
15. Product Details Page
16. Blog Details
17. Checkout 
18. Track Order
19. Account 
20. Login Page



------------------------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&amp;family=Playfair+Display:wght@700;900&amp;display=swap");
/*******************
Heading
********************/
body {
  font-family: "Inter", sans-serif;
  font-size: 15px;
  color: #5a5b67;
  line-height: 1.5rem;
  font-weight: 400; }

h1,
h2,
h3,
h4,
h5,
h6 {
  color: #0c0f2e; }

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

a {
  -webkit-transition: all 0.4s linear;
  -moz-transition: all 0.4s linear;
  -ms-transition: all 0.4s linear;
  -o-transition: all 0.4s linear;
  transition: all 0.4s linear; }

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

.heading-one {
  font-size: 4.5rem;
  font-weight: 800;
  color: #0c0f2e; }
  @media (min-width: 768px) and (max-width: 991px) {
    .heading-one {
      font-size: 3.5rem; } }
  @media (max-width: 768px) {
    .heading-one {
      font-size: 3rem; } }
  @media (max-width: 575px) {
    .heading-one {
      font-size: 2.5rem; } }

.heading-one-alt {
  font-size: 3.5rem;
  font-weight: 700;
  color: #0c0f2e; }
  @media (min-width: 768px) and (max-width: 991px) {
    .heading-one-alt {
      font-size: 3.5rem; } }
  @media (max-width: 768px) {
    .heading-one-alt {
      font-size: 2.6rem; } }
  @media (max-width: 575px) {
    .heading-one-alt {
      font-size: 2rem; } }
  .heading-one-alt span {
    color: #fe771c; }

.heading-6 {
  font-size: 1.375rem;
  font-weight: 600;
  transition: all .4s linear 0s;
  color: #0c0f2e; }
  .heading-6 a {
    color: #0c0f2e; }
    .heading-6 a:hover {
      text-decoration: none;
      color: #fe771c; }

.heading-5 {
  font-size: 1.3rem;
  font-weight: 600;
  transition: all .4s linear 0s;
  color: #0c0f2e; }
  @media (max-width: 768px) {
    .heading-5 {
      font-size: 1.2rem; } }
  @media (max-width: 575px) {
    .heading-5 {
      font-size: 1.1rem; } }
  .heading-5 a {
    color: #0c0f2e; }
    .heading-5 a:hover {
      text-decoration: none;
      color: #fe771c; }

.heading-4 {
  font-size: 1.5rem;
  font-weight: 600;
  transition: all .4s linear 0s;
  color: #0c0f2e; }
  @media (min-width: 768px) and (max-width: 991px) {
    .heading-4 {
      font-size: 1.3rem; } }
  @media (max-width: 768px) {
    .heading-4 {
      font-size: 1.2rem; } }
  @media (max-width: 575px) {
    .heading-4 {
      font-size: 1.1rem; } }
  .heading-4 a {
    color: #0c0f2e; }
    .heading-4 a:hover {
      text-decoration: none;
      color: #fe771c; }

.heading-2 {
  font-size: 1.9rem;
  font-family: "Playfair Display", serif;
  font-weight: 700; }
  @media (min-width: 768px) and (max-width: 991px) {
    .heading-2 {
      font-size: 1.6rem; } }
  @media (max-width: 768px) {
    .heading-2 {
      font-size: 1.5rem; } }
  @media (max-width: 575px) {
    .heading-2 {
      font-size: 1.3rem; } }

.heading-2-extra {
  font-size: 2.8rem;
  font-weight: 700;
  font-family: "Playfair Display", serif;
  color: #0c0f2e;
  padding-bottom: 10px;
  line-height: 55px; }
  @media (min-width: 992px) and (max-width: 1200px) {
    .heading-2-extra {
      font-size: 2.6rem; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .heading-2-extra {
      font-size: 2.4rem;
      line-height: 1.3; } }
  @media (max-width: 768px) {
    .heading-2-extra {
      font-size: 2.3rem; } }
  @media (max-width: 575px) {
    .heading-2-extra {
      font-size: 2.2rem; } }

.active-heading {
  font-size: 2rem;
  font-family: "Playfair Display", serif;
  color: #fe771c;
  font-weight: 600; }
  @media (min-width: 768px) and (max-width: 991px) {
    .active-heading {
      font-size: 1.2rem; } }
  @media (max-width: 768px) {
    .active-heading {
      font-size: 1.2rem; } }
  @media (max-width: 575px) {
    .active-heading {
      font-size: 1rem; } }

.special-heading {
  font-size: 1rem;
  font-family: "Playfair Display", serif;
  font-weight: 600; }
  @media (max-width: 768px) {
    .special-heading {
      font-size: .6rem; } }
  @media (max-width: 575px) {
    .special-heading {
      font-size: .6rem; } }

.heading-6-alt {
  font-size: 1.1rem;
  font-weight: 600;
  color: #0c0f2e;
  font-family: "Playfair Display", serif; }

.overly, .post-comments ol li, .footer-wrapper, .about .post-thumb, .services-area .single-service, .login-form-wrapper {
  position: relative;
  z-index: 1; }
  .overly::before, .post-comments ol li::before, .footer-wrapper::before, .about .post-thumb::before, .services-area .single-service::before, .login-form-wrapper::before {
    position: absolute;
    content: "";
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1; }

.widget-title {
  display: inline-block;
  position: relative;
  color: #fff;
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 35px; }
  .widget-title:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -5px;
    height: 3px;
    background-color: #fe771c;
    width: 25px;
    border-radius: 50px; }

.footer-logo {
  margin-bottom: 16px; }

/***********************
Padding
***********************/
.section-ptb {
  padding-top: 100px;
  padding-bottom: 100px; }
  @media (max-width: 768px) {
    .section-ptb {
      padding-top: 80px;
      padding-bottom: 80px; } }
  @media (max-width: 575px) {
    .section-ptb {
      padding-top: 50px;
      padding-bottom: 50px; } }

.section-ptb-2 {
  padding-top: 70px;
  padding-bottom: 70px; }

.section-pt {
  padding-top: 100px; }
  @media (max-width: 768px) {
    .section-pt {
      padding-top: 80px; } }
  @media (max-width: 575px) {
    .section-pt {
      padding-top: 80px; } }

.section-pb {
  padding-bottom: 100px; }
  @media (max-width: 768px) {
    .section-pb {
      padding-bottom: 80px; } }
  @media (max-width: 575px) {
    .section-pb {
      padding-bottom: 80px; } }

@media (max-width: 768px) {
  .pt-xs-0 {
    padding-top: 0 !important; } }

@media (max-width: 575px) {
  .pt-xs-0 {
    padding-top: 0 !important; } }

@media (max-width: 575px) {
  .p-xs-2 {
    padding: 1rem !important; } }

@media (max-width: 575px) {
  .p-xs-1 {
    padding: .5rem !important; } }

.shadow, .reviews-wrapper .single-review {
  box-shadow: 5px 5px 25px rgba(0, 0, 0, 0.1) !important; }

/********************
section
********************/
.section-title {
  display: inline-block;
  position: relative;
  margin: 0 auto;
  width: 100%; }
  .section-title:after {
    content: "";
    position: absolute;
    left: 50%;
    width: 120px;
    height: 5px;
    background-image: url(../images/border.png);
    background-repeat: no-repeat;
    transform: translateX(-50%); }

.section-title-2 {
  display: inline-block;
  position: relative;
  margin: 0 auto;
  width: 100%; }
  .section-title-2:after {
    content: "";
    position: absolute;
    left: 65px;
    width: 120px;
    height: 3px;
    background-color: #fe771c;
    transform: translateX(-50%);
    bottom: 0; }
  .section-title-2:before {
    content: "";
    position: absolute;
    left: 80px;
    width: 10px;
    height: 3px;
    background-color: #fff;
    transform: translateX(-90%);
    bottom: 0;
    z-index: 11; }
  .section-title-2 h2 {
    display: inline-block;
    position: relative;
    padding-bottom: 5px; }
    .section-title-2 h2:after {
      content: "";
      position: absolute;
      left: 18%;
      width: 8px;
      height: 3px;
      background-color: #fff;
      bottom: -8px;
      z-index: 10; }

.section-title-3 {
  display: block;
  position: relative;
  padding-bottom: 5px;
  margin-bottom: 15px; }
  .section-title-3::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 5px;
    height: 5px;
    width: 100%;
    background-image: url(../images/border.png);
    background-repeat: no-repeat; }

.widget-title-2 {
  position: relative;
  padding-left: 15px;
  border-bottom: 1px dashed #5a5b67; }
  .widget-title-2:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 80%;
    width: 3px;
    background-color: #fe771c; }
  .widget-title-2 h4 {
    font-family: "Playfair Display", serif;
    font-weight: 700; }

/*******************
background
********************/
.bg-semi-white {
  background-color: #fafafa; }

.bg-hover {
  background-color: #fe771c; }

.bg-dark-3 {
  background-color: #53545b; }

.bg-dark-4 {
  background-color: #e1e1e1; }

.bg-black-2 {
  background-color: #373844; }

.half-bg {
  background-size: 60%;
  background-repeat: no-repeat;
  background-position: left; }

.bg-hover-2 {
  background-color: #ffe2d1; }

.white-ovelay {
  display: inline-block;
  position: relative;
  width: 100%; }
  .white-ovelay:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background-color: rgba(255, 255, 255, 0.45);
    width: 100%;
    height: 100%; }

.gradient-bg, .download-links ul li.apple-store, .features-list ul li span {
  background: #fe771c;
  background: linear-gradient(0deg, #ff6d1a 50%, #fd831e 100%); }

/******************
Buttons
*******************/
.default-btn {
  display: inline-block;
  background: #fe771c;
  background: linear-gradient(0deg, #ff6d1a 50%, #fd831e 100%);
  color: #fff;
  padding: 15px 30px;
  border-radius: 30px;
  border: 0;
  font-weight: 500;
  font-size: 1rem; }
  .default-btn i {
    color: #fff; }
  @media (min-width: 768px) and (max-width: 991px) {
    .default-btn {
      padding: 12px 18px;
      font-size: .95rem; } }
  @media (max-width: 768px) {
    .default-btn {
      padding: 14px 20px;
      font-size: .95rem; } }
  @media (max-width: 575px) {
    .default-btn {
      padding: 10px 20px;
      font-size: .95rem; } }
  .default-btn:focus {
    outline: 0; }
  .default-btn:hover {
    color: #fff;
    text-decoration: none; }

.default-btn-alt {
  display: inline-block;
  background-color: #fff;
  color: #fe771c;
  padding: 15px 30px;
  border-radius: 30px;
  border: 1px solid #fe771c;
  font-weight: 600; }
  .default-btn-alt i {
    color: #fe771c; }
  @media (min-width: 768px) and (max-width: 991px) {
    .default-btn-alt {
      padding: 12px 18px;
      font-size: .85rem; } }
  @media (max-width: 768px) {
    .default-btn-alt {
      padding: 10px 20px;
      font-size: .65rem; } }
  @media (max-width: 575px) {
    .default-btn-alt {
      padding: 10px 20px;
      font-size: .65rem; } }
  .default-btn-alt:focus {
    outline: 0; }
  .default-btn-alt:hover {
    background-color: #fe771c;
    color: #fff;
    text-decoration: none; }
    .default-btn-alt:hover i {
      color: #fff; }

.default-btn-2 {
  display: inline-block;
  background-color: #0c0f2e;
  color: #fff;
  padding: 15px 30px;
  border-radius: 30px;
  border: 0; }
  @media (min-width: 768px) and (max-width: 991px) {
    .default-btn-2 {
      padding: 15px; } }
  .default-btn-2:focus {
    outline: 0; }
  .default-btn-2:hover {
    color: #fff;
    text-decoration: none; }

.default-btn-3 {
  display: inline-block;
  background-color: #e1e1e1;
  color: #0c0f2e;
  padding: 10px 20px;
  border-radius: 30px;
  border: 0;
  font-weight: 500;
  transition: all .4s linear 0s;
  font-family: "Playfair Display", serif; }
  @media (min-width: 768px) and (max-width: 991px) {
    .default-btn-3 {
      padding: 15px; } }
  .default-btn-3:focus {
    outline: 0; }
  .default-btn-3:hover {
    color: #fff;
    text-decoration: none;
    background-color: #fe771c; }

.default-btn-3-alt {
  display: inline-block;
  background-color: #fe771c;
  color: #fff;
  padding: 10px 20px;
  border-radius: 30px;
  border: 0;
  font-weight: 500;
  transition: all .4s linear 0s;
  font-family: "Playfair Display", serif; }
  @media (min-width: 768px) and (max-width: 991px) {
    .default-btn-3-alt {
      padding: 15px; } }
  .default-btn-3-alt:focus {
    outline: 0; }
  .default-btn-3-alt:hover {
    color: #fff;
    text-decoration: none;
    background-color: #0c0f2e; }

.sm-btn {
  display: inline-block;
  background-color: #fe771c;
  color: #fff;
  padding: 8px 20px;
  border-radius: 30px;
  transition: all .4s linear 0s;
  border: 1px solid transparent; }
  .sm-btn:hover {
    text-decoration: none;
    background-color: #fff;
    color: #fe771c;
    border: 1px solid #0c0f2e; }

.sm-btn-2 {
  color: #fe771c;
  background-color: #ffe2d1;
  padding: 10px 20px;
  border-radius: 30px;
  font-weight: 500;
  transition: all .4s linear 0s; }
  .sm-btn-2 i {
    padding-right: 5px; }
  .sm-btn-2:hover {
    color: #fff;
    background-color: #fe771c;
    text-decoration: none; }

.big-btn {
  width: 100%;
  margin: 0 auto; }
  .big-btn a {
    display: block;
    width: 100%;
    text-align: center;
    color: #fe771c;
    font-weight: 600;
    font-size: 1.1rem; }
    .big-btn a:hover {
      text-decoration: none; }
    .big-btn a i {
      font-size: 1.5rem;
      padding-right: 5px; }

.g-link {
  display: inline-block;
  background-color: #ea4335;
  padding: 10px 40px;
  border-radius: 30px;
  color: #fff;
  font-weight: 500;
  font-size: 1.1rem; }
  .g-link:hover {
    text-decoration: none;
    color: #fff; }
  @media (min-width: 768px) and (max-width: 991px) {
    .g-link {
      margin: 0 0 20px 0; } }

.f-link {
  display: inline-block;
  background-color: #3b5998;
  padding: 10px 40px;
  border-radius: 30px;
  color: #fff;
  font-weight: 500;
  font-size: 1.1rem; }
  .f-link:hover {
    text-decoration: none;
    color: #fff; }

/*************************
social-profiles
*************************/
.social-profiles ul {
  margin: 0;
  padding: 0; }
  .social-profiles ul li {
    display: inline-block;
    margin-right: 5px; }
    .social-profiles ul li a {
      display: inline-block;
      color: #fff;
      height: 30px;
      width: 30px;
      line-height: 30px;
      background: #53545b;
      text-align: center;
      border-radius: 50%;
      font-size: .9rem;
      transition: all .4s linear 0s;
      font-size: 12px; }
      .social-profiles ul li a:hover {
        background: #fe771c; }

.social-profiles-2 ul {
  margin: 0;
  padding: 0; }
  .social-profiles-2 ul li {
    display: inline-block; }
    .social-profiles-2 ul li a {
      display: inline-block;
      color: #fe771c;
      height: 45px;
      width: 45px;
      line-height: 45px;
      background-color: #ffe2d1;
      text-align: center;
      border-radius: 50%;
      font-size: .9rem;
      transition: all .4s linear 0s; }
      .social-profiles-2 ul li a:hover {
        color: #fff;
        background-color: #fe771c; }
        .social-profiles-2 ul li a:hover i {
          color: #fff; }

/**********************
Lists
***********************/
.general-nav ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .general-nav ul li a {
    display: inline-block;
    padding: 5px 0;
    color: #fff;
    transition: all .4s linear 0s; }
    .general-nav ul li a:hover {
      text-decoration: none;
      color: #fe771c; }
  .general-nav ul li:first-child a {
    padding-top: 0; }
  .general-nav ul li:last-child a {
    padding-bottom: 0; }

.general-nav-2 ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .general-nav-2 ul li {
    color: #fff;
    padding: 8px 0;
    display: flex; }
    .general-nav-2 ul li:first-child {
      padding-top: 0; }
    .general-nav-2 ul li:last-child {
      padding-bottom: 0; }
    .general-nav-2 ul li a {
      color: #fff; }
      .general-nav-2 ul li a:hover {
        color: #fe771c; }
    .general-nav-2 ul li i {
      padding-right: 5px;
      color: #fe771c;
      margin-right: 8px;
      padding-top: 7px; }

/* Sidebar Widget */
.widget-nav ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .widget-nav ul li a {
    display: inline-block;
    padding: 5px 0;
    color: #5a5b67;
    transition: all .4s linear 0s;
    font-weight: 500; }
    .widget-nav ul li a i {
      padding-right: 5px;
      color: #fe771c; }
    .widget-nav ul li a:hover {
      text-decoration: none;
      color: #fe771c;
      padding-left: 10px; }

.feature-products .single-feature {
  align-items: center;
  display: flex;
  margin-bottom: 15px; }
  .feature-products .single-feature .figure-thumb {
    margin-bottom: 0; }
    .feature-products .single-feature .figure-thumb img {
      border-radius: 15px;
      -webkit-transition: .3s ease-in-out;
      transition: .3s ease-in-out; }
  .feature-products .single-feature .sf-text {
    margin-left: 15px; }
    .feature-products .single-feature .sf-text h4 {
      margin-bottom: 5px;
      line-height: 20px;
      font-weight: 600;
      font-size: 15px; }
      .feature-products .single-feature .sf-text h4 a {
        color: #5a5b67; }
    .feature-products .single-feature .sf-text .sf-meta a {
      margin-right: 10px;
      font-size: 14px;
      color: #979797; }
      .feature-products .single-feature .sf-text .sf-meta a:hover {
        color: #fe771c; }
  .feature-products .single-feature:hover h4 a {
    color: #fe771c; }

.general-nav-3 ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .general-nav-3 ul li {
    padding: 15px;
    color: #fe771c;
    background-color: #f7f7f7;
    border-bottom: 1px solid #e9e9e9;
    font-size: 1.2rem; }
    .general-nav-3 ul li span {
      color: #0c0f2e;
      padding-right: 10px; }

.special-nav ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .special-nav ul li {
    padding: 5px 0;
    font-size: 1.2rem; }
    .special-nav ul li i {
      color: #fe771c; }

.bold-font {
  font-weight: 600;
  color: #0c0f2e;
  font-size: 1.1rem; }

/************************
Margin
***************************/
@media (min-width: 768px) and (max-width: 991px) {
  .mb-xs-5 {
    margin-bottom: 2rem; } }

@media (max-width: 768px) {
  .mb-xs-5 {
    margin-bottom: 2rem; } }

@media (max-width: 575px) {
  .mb-xs-5 {
    margin-bottom: 2rem; } }

@media (min-width: 768px) and (max-width: 991px) {
  .mt-xs-5 {
    margin-top: 3rem; } }

@media (max-width: 768px) {
  .mt-xs-5 {
    margin-top: 3rem; } }

@media (max-width: 575px) {
  .mt-xs-5 {
    margin-top: 3rem; } }

@media (max-width: 768px) {
  .mt-xs-4 {
    margin-top: 2rem; } }

@media (max-width: 575px) {
  .mt-xs-4 {
    margin-top: 2rem; } }

@media (max-width: 768px) {
  .mb-xs-4 {
    margin-bottom: 2rem; } }

@media (max-width: 575px) {
  .mb-xs-4 {
    margin-bottom: 2rem; } }

@media (max-width: 768px) {
  .mb-xs-0 {
    margin-bottom: 0 !important; } }

@media (max-width: 575px) {
  .mb-xs-0 {
    margin-bottom: 0 !important; } }

/*****************************
Colors
*****************************/
.text-hover {
  color: #fe771c; }

/***********************
rounded
*************************/
.custom-round {
  border-radius: 15px; }

.custom-round-2 {
  border-top-left-radius: 20px;
  border-left-color: transparent !important;
  border-top-color: transparent !important; }

.custom-round-3 {
  border-top-right-radius: 20px;
  border-right-color: transparent !important;
  border-top-color: transparent !important; }

/***********************
borders
***********************/
.custom-border {
  border: 1px dashed #959595;
  border-radius: 20px; }

.custom-border-2 {
  border: 1px dashed #fe771c; }

.thead-custom th {
  color: #fff;
  background-color: #fe771c;
  border-color: #dee2e6; }

.border-top-0 {
  border-top: 0 !important; }

.border-bottom-0 {
  border-bottom: 0 !important; }

.border-y-0 {
  border-top: 0 !important;
  border-bottom: 0 !important; }

.custom-botder-bottom {
  border-bottom: 1px dashed #5a5b67; }

/*******************
blockquote
**********************/
.blockquote {
  font-size: 1.25rem;
  font-weight: 700;
  position: relative;
  font-family: "Playfair Display", serif;
  line-height: 30px;
  padding: 45px;
  color: #0c0f2e;
  border-radius: 30px; }
  .blockquote:before {
    content: "\f10d";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    color: #fe771c;
    font-size: 60px;
    position: absolute;
    opacity: .2;
    left: 10%;
    top: 35px; }

/****************************
display
*******************************/
@media (min-width: 992px) and (max-width: 1200px) {
  .d-xs {
    display: block; } }

@media (min-width: 768px) and (max-width: 991px) {
  .d-xs {
    display: block; } }

@media (max-width: 768px) {
  .d-xs {
    display: block; } }

@media (max-width: 575px) {
  .d-xs {
    display: block; } }

@media (max-width: 768px) {
  .d-xs-none {
    display: none; } }

@media (max-width: 575px) {
  .d-xs-none {
    display: none; } }

/************************
Overlay
***************************/
.black-overlay, .single-gallery a {
  display: inline-block;
  position: relative; }
  .black-overlay:before, .single-gallery a:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background-color: rgba(34, 34, 34, 0.56);
    width: 100%;
    height: 100%;
    opacity: 0;
    visibility: hidden;
    transition: all .4s linear 0s; }
  .black-overlay:hover:before, .single-gallery a:hover:before {
    opacity: 1;
    visibility: visible; }

a#scrollUp {
  right: 50px;
  bottom: 50px;
  background: #fe771c;
  display: inline-block;
  width: 50px;
  height: 50px;
  text-align: center;
  line-height: 50px;
  border-radius: 50%;
  color: #fff;
  font-size: 22px; }

.post-comments ol {
  margin: 0;
  list-style: none;
  padding: 45px 0px 30px; }
  .post-comments ol li {
    margin-bottom: 65px; }
    .post-comments ol li::before {
      background: #ebebeb;
      height: 1px;
      top: 127%; }
    .post-comments ol li:first-child::before {
      top: 111%; }
      @media (max-width: 575px) {
        .post-comments ol li:first-child::before {
          top: 100%; } }
    .post-comments ol li article.comment-body {
      position: relative; }
      .post-comments ol li article.comment-body .comment-thumb {
        float: left; }
        @media (max-width: 575px) {
          .post-comments ol li article.comment-body .comment-thumb {
            float: none; } }
      .post-comments ol li article.comment-body .comment-details {
        margin-left: 135px; }
        .post-comments ol li article.comment-body .comment-details .comment-name {
          font-size: 18px;
          color: #0c0f2e;
          margin-bottom: 0px;
          font-weight: 600; }
        .post-comments ol li article.comment-body .comment-details span.date {
          color: #fe771c;
          font-family: "Inter", sans-serif; }
        .post-comments ol li article.comment-body .comment-details p {
          max-width: 90%;
          margin: 5px 0 0;
          line-height: 26px; }
        .post-comments ol li article.comment-body .comment-details .reply-btn {
          position: absolute;
          right: -30px;
          top: 0px;
          overflow: hidden;
          padding: 10px 30px; }
    .post-comments ol li .children {
      padding: 34px 0px 0 75px; }
      .post-comments ol li .children li::before {
        display: none; }
      .post-comments ol li .children .comment-body .comment-details {
        margin-left: 135px; }
    .post-comments ol li:last-child {
      margin: 0; }
    @media (max-width: 575px) {
      .post-comments ol li {
        margin-bottom: 45px; }
        .post-comments ol li::before {
          top: 115%; }
        .post-comments ol li article.comment-body .comment-details {
          margin: 20px 0 0; }
        .post-comments ol li .children {
          padding: 30px 30px 60px; }
          .post-comments ol li .children .comment-body .comment-details {
            margin: 20px 0 0; } }

#preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #f7f7f7;
  z-index: 999999; }

.preloader {
  width: 50px;
  height: 50px;
  display: inline-block;
  padding: 0px;
  text-align: left;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -25px;
  margin-top: -25px; }
  .preloader span {
    position: absolute;
    display: inline-block;
    width: 50px;
    height: 50px;
    border-radius: 100%;
    background: #fe771c;
    -webkit-animation: preloader 1.3s linear infinite;
    animation: preloader 1.3s linear infinite; }
    .preloader span:last-child {
      animation-delay: -0.8s;
      -webkit-animation-delay: -0.8s; }

@keyframes preloader {
  0% {
    transform: scale(0, 0);
    opacity: 0.5; }
  100% {
    transform: scale(1, 1);
    opacity: 0; } }

@-webkit-keyframes preloader {
  0% {
    -webkit-transform: scale(0, 0);
    opacity: 0.5; }
  100% {
    -webkit-transform: scale(1, 1);
    opacity: 0; } }

/* **************************************
01. Header Area
****************************************/
.header {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  z-index: 999; }
  @media (max-width: 575px) {
    .header {
      background: #ffe0c9;
      padding: 10px 0; }
      .header .navbar-nav.ms-auto {
        padding-top: 30px; } }

.primary-navigation {
  position: relative;
  width: 100%;
  margin: 0;
  z-index: 999;
  top: 0;
  transition: all 0.3s ease; }
  .primary-navigation .default-btn-alt {
    padding: 12px 45px; }

.navbar-toggler {
  float: right;
  border: none;
  padding-right: 0; }
  .navbar-toggler:active, .navbar-toggler:focus {
    outline: none;
    box-shadow: none; }

.navbar-light .navbar-toggler-icon {
  width: 24px;
  height: 17px;
  background-image: none;
  position: relative;
  border-bottom: 2px solid #222222;
  transition: all 300ms linear; }

.navbar-light .navbar-toggler-icon:after,
.navbar-light .navbar-toggler-icon:before {
  width: 24px;
  position: absolute;
  height: 2px;
  background-color: #222222;
  top: 0;
  left: 0;
  content: '';
  z-index: 2;
  transition: all 300ms linear; }

.navbar-light .navbar-toggler-icon:after {
  top: 8px; }

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:after {
  transform: rotate(45deg); }

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon:before {
  transform: translateY(8px) rotate(-45deg); }

.navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
  border-color: transparent; }

.navbar.navbar-light {
  padding: 0; }
  .navbar.navbar-light .nav-item {
    position: relative; }
    .navbar.navbar-light .nav-item .nav-link {
      position: relative;
      padding: 30px 20px;
      display: inline-block;
      font-family: "Inter", sans-serif;
      font-weight: 500;
      font-size: 15px;
      color: #0c0f2e; }
      @media (min-width: 768px) and (max-width: 991px) {
        .navbar.navbar-light .nav-item .nav-link {
          font-size: 14px;
          padding: 28px 12px; } }
      @media (max-width: 575px) {
        .navbar.navbar-light .nav-item .nav-link {
          padding: 12px 20px; } }
    .navbar.navbar-light .nav-item:hover a.nav-link,
    .navbar.navbar-light .nav-item:focus .nav-link {
      color: #0c0f2e; }
    .navbar.navbar-light .nav-item .dropdown-menu {
      position: absolute;
      left: 0;
      padding: 15px 5px;
      top: 120%;
      background: #fff;
      border: none;
      border-radius: 0px;
      box-shadow: 11px 10px 38px 0 rgba(46, 63, 99, 0.15);
      min-width: 200px;
      display: block;
      opacity: 0;
      border-radius: 5px;
      visibility: hidden;
      transition: all 300ms linear; }
      .navbar.navbar-light .nav-item .dropdown-menu .dropdown-item {
        padding: 7px 15px;
        color: #0c0f2e;
        font-size: 14px;
        transition: all 300ms linear;
        font-weight: 500; }
        .navbar.navbar-light .nav-item .dropdown-menu .dropdown-item:hover, .navbar.navbar-light .nav-item .dropdown-menu .dropdown-item:focus {
          color: #fe771c;
          padding-left: 25px;
          background: transparent; }
    .navbar.navbar-light .nav-item.login-item a {
      color: #fff; }
      .navbar.navbar-light .nav-item.login-item a i {
        margin-right: 2px; }
    .navbar.navbar-light .nav-item:hover > .dropdown-menu {
      opacity: 1;
      top: 100%;
      visibility: visible;
      max-height: 999px;
      transform: translate3d(0, 0px, 0); }
  .navbar.navbar-light .dropdown-toggle::after {
    border: none; }

li.nav-item ul.dropdown-menu li.dropdown .dropdown-menu {
  left: 100%;
  top: 100%; }
  @media (max-width: 575px) {
    li.nav-item ul.dropdown-menu li.dropdown .dropdown-menu {
      left: 55%; } }
  li.nav-item ul.dropdown-menu li.dropdown .dropdown-menu.dropdown-right {
    left: auto;
    right: 100%; }

li.nav-item ul.dropdown-menu li.dropdown:hover > .dropdown-menu {
  display: block;
  visibility: visible;
  max-height: 999px;
  top: 0;
  opacity: 1;
  transform: translate3d(0, 0px, 0); }

/* *******************************
MINI CART */
li.nav-item.mini-cart {
  position: relative; }
  li.nav-item.mini-cart a.nav-link i {
    font-size: 20px; }
  li.nav-item.mini-cart sup.cart-quantity {
    background: white;
    padding: 10px 6px;
    border-radius: 50%;
    display: inline-block;
    font-weight: 600;
    font-size: 12px;
    top: -10px; }
  li.nav-item.mini-cart .mini-cart-box {
    height: 350px;
    padding: 5px 20px 20px 20px;
    overflow-y: auto;
    width: 300px;
    position: absolute;
    right: 0;
    top: 120%;
    opacity: 0;
    visibility: hidden;
    z-index: 99;
    background-color: #fff;
    transition: all 0.3s ease-out;
    -webkit-transition: all 0.3s ease-out;
    -moz-transition: all 0.3s ease-out;
    -ms-transition: all 0.3s ease-out;
    -o-transition: all 0.3s ease-out; }
    li.nav-item.mini-cart .mini-cart-box .cart-item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      border-bottom: 1px solid #ededed;
      padding: 20px 0;
      text-align: left;
      width: 100%;
      overflow: hidden;
      position: relative; }
      li.nav-item.mini-cart .mini-cart-box .cart-item .thumb {
        float: left;
        width: 30%;
        margin-right: 20px;
        position: relative; }
      li.nav-item.mini-cart .mini-cart-box .cart-item .content {
        float: left;
        display: inline-table;
        width: 60%; }
        li.nav-item.mini-cart .mini-cart-box .cart-item .content .title {
          font-size: 15px;
          font-weight: 600;
          line-height: 20px;
          text-overflow: ellipsis;
          margin-bottom: 8px;
          word-wrap: break-word;
          white-space: nowrap;
          overflow: hidden;
          width: 123px; }
          li.nav-item.mini-cart .mini-cart-box .cart-item .content .title a {
            color: #222; }
            li.nav-item.mini-cart .mini-cart-box .cart-item .content .title a:hover {
              color: #fe771c; }
        li.nav-item.mini-cart .mini-cart-box .cart-item .content .product-quantity {
          color: #222;
          font-size: 16px;
          display: block;
          margin-bottom: 8px; }
        li.nav-item.mini-cart .mini-cart-box .cart-item .content .product-price {
          color: #fe771c;
          display: block;
          font-size: 16px; }
        li.nav-item.mini-cart .mini-cart-box .cart-item .content .cart-trash {
          position: absolute;
          color: #222;
          right: 2px;
          top: 18px;
          display: inline-block;
          left: auto;
          font-size: 15px; }
    li.nav-item.mini-cart .mini-cart-box .cart-total-money {
      border-bottom: 1px solid #ededed;
      text-align: left;
      padding: 20px 0;
      overflow: hidden; }
      li.nav-item.mini-cart .mini-cart-box .cart-total-money h4 {
        color: #3e3d43;
        font-size: 17px;
        font-weight: 600;
        margin-bottom: 0; }
        li.nav-item.mini-cart .mini-cart-box .cart-total-money h4 .money {
          float: right; }
    li.nav-item.mini-cart .mini-cart-box .cart-btn {
      margin-top: 20px; }
      li.nav-item.mini-cart .mini-cart-box .cart-btn a {
        background-color: #333;
        color: #fff;
        display: block;
        font-size: 16px;
        font-weight: 600;
        padding: 10px 18px;
        text-align: center; }
        li.nav-item.mini-cart .mini-cart-box .cart-btn a:hover {
          background-color: #fe771c;
          color: #fff; }
        li.nav-item.mini-cart .mini-cart-box .cart-btn a:last-child {
          margin-top: 10px; }
  li.nav-item.mini-cart:hover .mini-cart-box {
    top: 100%;
    opacity: 1;
    visibility: visible; }

/**************************
02. Hero Banner Area 
********************************/
.hero-area-wrapper {
  display: flex;
  padding: 120px 0 0;
  position: relative; }
  .hero-area-wrapper .hero-bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 73%;
    height: 100%;
    background-size: cover;
    z-index: -1; }
    @media (max-width: 575px) {
      .hero-area-wrapper .hero-bg {
        display: none; } }
  .hero-area-wrapper .heading-one {
    font-size: 4.8rem;
    font-family: "Playfair Display", serif;
    font-weight: 900;
    margin-bottom: 15px; }
    @media (max-width: 575px) {
      .hero-area-wrapper .heading-one {
        font-size: 30px; } }
    @media (min-width: 768px) and (max-width: 991px) {
      .hero-area-wrapper .heading-one {
        font-size: 2.8rem; } }
    @media (min-width: 992px) and (max-width: 1200px) {
      .hero-area-wrapper .heading-one {
        font-size: 3.8rem; } }
  .hero-area-wrapper p {
    font-weight: 500;
    margin: 10px 0 30px; }

.input-wrapper {
  position: relative; }
  .input-wrapper i {
    position: absolute;
    top: 35%;
    left: 5px;
    color: #fe771c; }

.location-form {
  border-radius: 30px;
  margin: 40px 28px 0 0;
  position: relative;
  box-shadow: 5px 5px 15px rgba(0, 0, 0, 0.1);
  max-width: 90%; }
  @media (min-width: 992px) and (max-width: 1200px) {
    .location-form {
      max-width: 100%;
      margin-right: 0; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .location-form {
      max-width: 100%;
      margin-right: 0; } }
  @media (max-width: 575px) {
    .location-form {
      max-width: 100%;
      margin-right: 0; } }
  .location-form .form-content > div:nth-child(1) {
    width: 120px; }
  .location-form .input-wrapper.input-btn {
    position: absolute;
    right: 0; }
    @media (min-width: 992px) and (max-width: 1200px) {
      .location-form .input-wrapper.input-btn {
        right: -5%; } }
    @media (min-width: 768px) and (max-width: 991px) {
      .location-form .input-wrapper.input-btn {
        right: -18%; } }
  @media (min-width: 992px) and (max-width: 1200px) {
    .location-form {
      margin-right: 0; } }
  .location-form .nice-select {
    border: none;
    background-color: transparent;
    width: 100%; }
    .location-form .nice-select span.current {
      color: #5a5b67; }
  .location-form .form-content {
    min-height: 45px;
    background-color: #fff;
    border-radius: 30px;
    align-items: center;
    display: flex; }
    .location-form .form-content .form-control {
      border-color: transparent;
      font-size: 14px;
      padding: 10px 25px; }
      @media (max-width: 768px) {
        .location-form .form-content .form-control {
          font-size: 12px; } }
      .location-form .form-content .form-control:focus {
        box-shadow: none; }
    .location-form .form-content .default-btn {
      font-size: 15px;
      padding: 13px 30px; }
      @media (max-width: 575px) {
        .location-form .form-content .default-btn {
          padding: 13px 20px; } }

/*************************
03. Features Area
****************************/
.single-feature {
  border-radius: 100px;
  cursor: pointer; }
  @media (max-width: 575px) {
    .single-feature {
      margin-bottom: 30px; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .single-feature {
      margin-bottom: 30px; } }
  @media (max-width: 768px) {
    .single-feature {
      margin-bottom: 30px; } }
  .single-feature .feature-icon {
    display: inline-block;
    margin-right: 12px;
    height: 60px;
    width: 60px;
    border: 1px solid #0c0f2e;
    border-radius: 100%;
    padding: 15px;
    text-align: center;
    line-height: 34px;
    -webkit-transition: all 0.4s linear;
    -moz-transition: all 0.4s linear;
    -ms-transition: all 0.4s linear;
    -o-transition: all 0.4s linear;
    transition: all 0.4s linear; }
  .single-feature .feature-text {
    display: inline-block; }
    .single-feature .feature-text h6 {
      font-size: 1.375rem; }
  .single-feature:hover .feature-icon {
    border: 1px solid #fe771c; }
  .single-feature:hover h6 {
    color: #fe771c; }

/***************************
04. Order Step
***************************/
@media (max-width: 575px) {
  .order-step-area .single-step {
    margin-bottom: 45px; } }

.order-step-area .single-step h6 {
  margin-bottom: 30px; }

@media (min-width: 768px) and (max-width: 991px) {
  .order-step-area .single-step img {
    max-width: 100%; } }

@media (max-width: 768px) {
  .order-step-area .single-step img {
    max-width: 100%; } }

@media (max-width: 575px) {
  .order-step-area .single-step img {
    max-width: 100%; } }

/**************************
05. Foods Tabs Area
***************************/
@media (min-width: 768px) and (max-width: 991px) {
  .menu-tab.nav-pills, .tabs-lists ul.nav {
    max-width: 50%; } }

.menu-tab.nav-pills a, .tabs-lists ul.nav a {
  display: flex;
  align-items: center;
  transition: all .2s linear 0s;
  border-radius: 50px !important;
  padding: 14px 20px;
  background-color: transparent;
  margin-bottom: 25px; }
  .menu-tab.nav-pills a .heading-6, .tabs-lists ul.nav a .heading-6 {
    -webkit-transition: all 0.4s linear;
    -moz-transition: all 0.4s linear;
    -ms-transition: all 0.4s linear;
    -o-transition: all 0.4s linear;
    transition: all 0.4s linear; }
  .menu-tab.nav-pills a.active, .tabs-lists ul.nav a.active, .menu-tab.nav-pills a:hover, .tabs-lists ul.nav a:hover {
    border-color: transparent !important;
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
    background-color: #fff; }
    .menu-tab.nav-pills a.active .heading-6, .tabs-lists ul.nav a.active .heading-6, .menu-tab.nav-pills a:hover .heading-6, .tabs-lists ul.nav a:hover .heading-6 {
      color: #fe771c; }
    .menu-tab.nav-pills a.active .tab-icon, .tabs-lists ul.nav a.active .tab-icon, .menu-tab.nav-pills a:hover .tab-icon, .tabs-lists ul.nav a:hover .tab-icon {
      border-color: #fe771c; }
  .menu-tab.nav-pills a .tab-icon, .tabs-lists ul.nav a .tab-icon {
    padding: 8px;
    display: inline-block;
    border-radius: 50%;
    width: 69px;
    height: 69px;
    border: 1px solid #0c0f2e;
    margin-right: 15px;
    text-align: center;
    -webkit-transition: all 0.4s linear;
    -moz-transition: all 0.4s linear;
    -ms-transition: all 0.4s linear;
    -o-transition: all 0.4s linear;
    transition: all 0.4s linear; }
    .menu-tab.nav-pills a .tab-icon img, .tabs-lists ul.nav a .tab-icon img {
      height: 40px;
      margin-top: 4px; }
  .menu-tab.nav-pills a:hover, .tabs-lists ul.nav a:hover {
    border-color: transparent !important; }

.food-tab-content .card-img-top {
  border-radius: 10px; }

.food-tab-content .product-card {
  transition: all .4s linear 0s; }
  .food-tab-content .product-card:hover {
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; }

.product-card {
  margin-bottom: 20px;
  -webkit-transition: all 0.4s linear;
  -moz-transition: all 0.4s linear;
  -ms-transition: all 0.4s linear;
  -o-transition: all 0.4s linear;
  transition: all 0.4s linear;
  border-radius: 15px; }
  .product-card .card-meta {
    color: #fe771c;
    font-weight: 600; }
    .product-card .card-meta .product-price {
      margin-left: 15px; }
      .product-card .card-meta .product-price span {
        font-size: 18px;
        font-weight: 600; }
  .product-card .rating-point {
    color: #0c0f2e;
    padding-left: 5px; }
  .product-card:hover {
    box-shadow: 0px 5px 25px rgba(0, 0, 0, 0.1);
    transform: translateY(-5px); }
    .product-card:hover .black-overlay:before, .product-card:hover .single-gallery a:before, .single-gallery .product-card:hover a:before {
      opacity: 1;
      visibility: visible; }
    .product-card:hover .sm-btn {
      opacity: 1;
      visibility: visible; }

.card-thumb {
  overflow: hidden;
  border-radius: 10px;
  position: relative;
  z-index: 1; }
  .card-thumb .sm-btn {
    position: absolute;
    text-align: center;
    left: 50%;
    top: 45%;
    transform: translate(-50%);
    transition: all .4s linear 0s;
    opacity: 0;
    visibility: hidden;
    border: none; }

.products-wrapper .product-card {
  box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.05); }
  .products-wrapper .product-card:hover {
    box-shadow: 0px 5px 25px rgba(0, 0, 0, 0.1); }

.popular-posts-wrapper-2 .popular-item {
  margin: 10px 0; }

.single-pricing .nice-select {
  height: 30px;
  padding-left: 18px;
  padding-right: 28px;
  line-height: 30px; }

.popular-item .card-thumb {
  line-height: .5; }
  .popular-item .card-thumb a.sm-btn {
    padding: 12px 20px; }

.about-section-area.section-ptb {
  padding-bottom: 160px; }
  .about-section-area.section-ptb .section-title-3::after {
    left: 0; }
  @media (max-width: 575px) {
    .about-section-area.section-ptb {
      padding-bottom: 75px; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .about-section-area.section-ptb .section-thumb {
      max-width: 60%;
      margin: 0 auto 10px; } }

.single-countdown {
  padding: 40px 15px 20px;
  border-radius: 25px; }
  @media (max-width: 575px) {
    .single-countdown {
      margin-bottom: 30px; }
      .single-countdown h3 {
        font-size: 27px; } }
  .single-countdown h3 {
    color: #fe771c;
    font-weight: 600; }
  .single-countdown p {
    font-weight: 500;
    font-size: 1.2rem; }

/***********************************
06. Call To Action Area
**************************/
.call-to-action-area {
  display: flex;
  align-items: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative; }
  .call-to-action-area h2 {
    line-height: 65px;
    font-weight: 700; }
    @media (max-width: 575px) {
      .call-to-action-area h2 {
        line-height: 1.4; } }
  .call-to-action-area .default-btn-2 {
    padding: 12px 42px; }
  .call-to-action-area .call-to-action-thumb {
    position: absolute;
    right: 0;
    top: -50px; }
    @media (min-width: 768px) and (max-width: 991px) {
      .call-to-action-area .call-to-action-thumb {
        right: 0px;
        top: 30%;
        width: 60%; } }
    @media (max-width: 575px) {
      .call-to-action-area .call-to-action-thumb {
        position: absolute;
        right: 0;
        top: 65%;
        width: 60%; } }

.call-to-action-content {
  padding: 60px 0; }

.popular-items-area.section-ptb {
  padding-top: 130px; }
  .popular-items-area.section-ptb .popular-item {
    margin: 10px 0; }

/**********************
07. Popular Items
*************************/
.carousel-style-one .owl-dots {
  text-align: center;
  margin-top: 15px; }
  .carousel-style-one .owl-dots button {
    border: 1px solid #fe771c;
    width: 10px;
    height: 10px;
    border-radius: 50%;
    margin: 5px; }
    .carousel-style-one .owl-dots button:focus {
      outline: 0; }
  .carousel-style-one .owl-dots .owl-dot {
    transition: all .4s linear 0s; }
    .carousel-style-one .owl-dots .owl-dot.active {
      background-color: #fe771c;
      width: 30px;
      border-radius: 35px; }

.carousel-style-one.reviews-wrapper .owl-dots {
  margin-top: 0; }

/**********************************
08. Clients Reviews Carousel
**************************/
.client-info {
  display: flex;
  align-items: center; }
  .client-info .heading-6-alt {
    font-family: "Inter", sans-serif;
    margin-bottom: 5px; }
  .client-info .client-thumb {
    overflow: hidden;
    margin-right: 10px;
    border-radius: 50%;
    border: 2px solid #fff;
    margin-bottom: 10px; }

.review-icons {
  display: flex;
  justify-content: space-between; }

.star-icons ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .star-icons ul li {
    display: inline-block; }

.star-icons i {
  color: #fba13a;
  font-size: 14px; }

.quote-icons i {
  font-size: 55px;
  color: #fe771c;
  opacity: 0.2; }

.reviews-wrapper .owl-item {
  padding: 15px; }

.reviews-wrapper .single-review {
  border-radius: 15px;
  padding: 30px;
  background-color: #fff; }

.reviews-wrapper .center .single-review {
  background-color: #fe771c !important;
  color: #fff; }
  .reviews-wrapper .center .single-review .star-icons i {
    color: #fff; }
  .reviews-wrapper .center .single-review .quote-icons i {
    color: #fff; }

.reviews-wrapper .center .client-bio p {
  color: #fff; }

.reviews-wrapper .center .heading-6-alt {
  color: #fff; }

.reviews-wrapper .client-bio p {
  color: #fe771c;
  transition: all .4s linear 0s; }

.single-blog h3 {
  font-size: 1.6rem;
  font-weight: 600;
  margin-bottom: 20px;
  line-height: 34px; }
  @media (max-width: 575px) {
    .single-blog h3 {
      font-size: 1.3rem;
      line-height: 28px; } }
  .single-blog h3 a {
    color: #0c0f2e;
    text-decoration: none; }
    .single-blog h3 a:hover {
      color: #fe771c; }

.single-blog .post-feedback div {
  display: inline-block; }

.single-blog .post-feedback .views-count {
  margin-left: 12px; }

.single-blog .post-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px dashed #cfcfcf; }
  .single-blog .post-footer p {
    margin-bottom: 0;
    font-size: 14px; }
  .single-blog .post-footer i {
    color: #fe771c;
    font-size: 1rem;
    margin-right: 2px; }

.single-blog .post-date {
  display: inherit; }

.blog-details-wrapper .single-blog .card > .post-footer {
  border: none; }

.blog-details-wrapper .general-nav li {
  margin-bottom: 10px; }
  .blog-details-wrapper .general-nav li i {
    color: #fe771c;
    font-size: 1.25rem;
    margin-right: 5px;
    top: 3px;
    position: relative; }

.blog-details-wrapper .social-profiles-2 ul li a {
  width: 35px;
  height: 35px;
  line-height: 35px;
  font-size: 13px; }
  .blog-details-wrapper .social-profiles-2 ul li a i {
    margin: 0;
    font-size: 13px; }

.post-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: "Playfair Display", serif; }
  .post-meta p {
    margin-bottom: 0; }
  .post-meta i {
    color: #fe771c;
    padding-right: 5px; }

@media (min-width: 768px) and (max-width: 991px) {
  .post-lists {
    margin-top: 20px; } }

.post-lists .single-blog {
  display: flex;
  margin-bottom: 6px; }
  @media (max-width: 575px) {
    .post-lists .single-blog {
      display: block;
      margin-bottom: 40px; } }
  .post-lists .single-blog .post-thumb {
    margin-right: 25px; }
    .post-lists .single-blog .post-thumb img {
      width: 170px; }
      @media (max-width: 575px) {
        .post-lists .single-blog .post-thumb img {
          width: 100%;
          height: 200px; } }
  .post-lists .single-blog .post-body {
    padding-top: 5px; }

.clients-reviews-area {
  background-size: cover;
  background-repeat: no-repeat; }
  @media (max-width: 575px) {
    .clients-reviews-area {
      background-position: 20% 0; } }

.blog-area .card-img-top {
  border-radius: 15px; }

/*****************************************
09. Apps Features Area
****************************/
.feature-thumb {
  padding-top: 46px;
  width: 107%;
  left: -28px;
  position: relative; }
  @media (max-width: 575px) {
    .feature-thumb {
      left: auto;
      width: auto; } }

.download-links {
  margin-top: 40px; }
  .download-links ul {
    margin: 0;
    padding: 0;
    list-style: none; }
    .download-links ul li {
      display: inline-block;
      position: relative;
      padding: 10px 50px 10px 50px;
      border-radius: 15px;
      box-shadow: 5px 5px 15px 0px rgba(255, 109, 26, 0.5); }
      @media (min-width: 768px) and (max-width: 991px) {
        .download-links ul li {
          padding: 10px 40px 10px 40px; } }
      @media (max-width: 575px) {
        .download-links ul li {
          padding: 10px 18px 10px 45px; } }
      .download-links ul li a {
        display: inline-block;
        padding-left: 10px;
        font-weight: 600; }
        .download-links ul li a i {
          position: absolute;
          left: 17px;
          top: 25%;
          font-size: 2.5rem; }
        .download-links ul li a span {
          display: block;
          font-size: 15px;
          font-weight: 400; }
        .download-links ul li a:hover {
          text-decoration: none; }
      .download-links ul li.apple-store {
        color: #fff;
        margin-right: 20px; }
        .download-links ul li.apple-store a {
          color: #fff; }
      .download-links ul li.play-store {
        background-color: #fff;
        border: 1px solid #fe771c; }
        .download-links ul li.play-store a {
          color: #fe771c; }

.features-list ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .features-list ul li {
    font-weight: 600;
    color: #0c0f2e;
    font-size: 20px;
    padding: 10px 0; }
    .features-list ul li:last-child {
      padding-bottom: 0; }
    .features-list ul li span {
      display: inline-block;
      width: 45px;
      height: 45px;
      line-height: 45px;
      border-radius: 50%;
      text-align: center;
      color: #fff;
      margin-right: 12px; }

/**********************************
10. Subscribe Area
************************/
.subscribe-area {
  background-size: cover;
  background-repeat: no-repeat; }
  .subscribe-area h2 {
    margin-left: 15px; }
    @media (min-width: 992px) and (max-width: 1200px) {
      .subscribe-area h2 {
        font-size: 32px; } }
    @media (min-width: 768px) and (max-width: 991px) {
      .subscribe-area h2 {
        font-size: 32px; } }
  .subscribe-area .subscribe-form {
    padding-left: 50px; }
    @media (min-width: 992px) and (max-width: 1200px) {
      .subscribe-area .subscribe-form {
        padding-left: 0; } }
    @media (min-width: 768px) and (max-width: 991px) {
      .subscribe-area .subscribe-form {
        padding-left: 0;
        max-width: 65%; } }
    @media (max-width: 575px) {
      .subscribe-area .subscribe-form {
        padding-left: 0; } }

.subscribe-title i {
  font-size: 45px; }
  @media (min-width: 768px) and (max-width: 991px) {
    .subscribe-title i {
      font-size: 35px; } }
  @media (max-width: 768px) {
    .subscribe-title i {
      font-size: 30px; } }
  @media (max-width: 575px) {
    .subscribe-title i {
      font-size: 30px; } }

.subscribe-form input[type="email"] {
  border-radius: 25px;
  height: 50px;
  border: 0;
  padding: 10px 20px; }
  .subscribe-form input[type="email"]:focus {
    box-shadow: none; }

.subscribe-form form {
  position: relative; }

.subscribe-form button[type="submit"] {
  position: absolute;
  right: 0;
  top: 0;
  border: 0;
  background-color: #0c0f2e;
  height: 100%;
  color: #fff;
  padding: 0 30px;
  border-radius: 30px;
  font-size: 14px; }
  .subscribe-form button[type="submit"]:focus {
    outline: 0; }

.single-gallery {
  display: inline-block;
  text-align: center;
  border-radius: 10px;
  overflow: hidden;
  margin: 5px 7px;
  z-index: 1; }
  .single-gallery a {
    display: block;
    position: relative;
    transition: all .4s linear 0s; }
    .single-gallery a::after {
      position: absolute;
      content: "\f16d";
      font-family: "Font Awesome 5 Brands";
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      color: white;
      font-size: 19px;
      z-index: 1;
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
      filter: alpha(opacity=0);
      transition: all .4s linear 0s; }
  .single-gallery:hover a::after {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    filter: alpha(opacity=100); }

/******************************
11. Footer Area
*************************/
.footer-wrapper {
  background: #282932; }
  .footer-wrapper::before {
    background: url("../images/f-loc-left.png") no-repeat bottom left;
    width: 303px; }
  .footer-wrapper::after {
    position: absolute;
    right: 0;
    top: -60px;
    content: "";
    background: url("../images/f-loc-right.png") no-repeat top right;
    width: 303px;
    height: 100%;
    z-index: -1; }

.footer-widget.link-widget {
  padding-left: 35px; }
  @media (min-width: 768px) and (max-width: 991px) {
    .footer-widget.link-widget {
      padding-left: 0; } }
  @media (max-width: 575px) {
    .footer-widget.link-widget {
      padding-left: 0; } }
  @media (max-width: 768px) {
    .footer-widget.link-widget {
      padding-left: 0; } }

.copyright-text {
  color: #fff; }
  .copyright-text a {
    color: #fe771c; }
  .copyright-text p {
    margin-bottom: 0; }

/********************************
12. About Us Page
********************************/
.page-header-wrapper {
  background-size: cover;
  position: relative;
  background-positon: center top; }
  .page-header-wrapper:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    background-color: rgba(255, 255, 255, 0.8);
    width: 100%;
    height: 100%; }

.page-header-2 {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 4;
  background-repeat: no-repeat;
  background-position-x: 350px; }
  @media (min-width: 992px) and (max-width: 1200px) {
    .page-header-2 {
      background-position-x: 240px;
      background-size: contain; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .page-header-2 {
      background-position-x: 170px;
      background-size: contain; } }
  @media (min-width: 1400px) {
    .page-header-2 {
      background-position-x: 590px; } }

.page-header-container {
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  height: 460px;
  padding-top: 90px; }
  @media (max-width: 575px) {
    .page-header-container {
      height: 300px;
      padding-top: 60px; } }
  @media (min-width: 768px) and (max-width: 991px) {
    .page-header-container {
      height: 350px;
      padding-top: 50px; } }
  .page-header-container .heading-one {
    font-family: "Playfair Display", serif; }

.page-nav ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .page-nav ul li {
    display: inline-block;
    color: #fd831e;
    font-weight: 500; }
    .page-nav ul li a {
      color: #fd831e; }

.about .post-thumb {
  padding-right: 40px; }
  @media (min-width: 768px) and (max-width: 991px) {
    .about .post-thumb {
      padding-right: 20px; } }
  @media (max-width: 575px) {
    .about .post-thumb {
      padding-right: 0;
      padding-left: 10px; } }
  .about .post-thumb::before {
    background: url("../images/ss.jpg") no-repeat left center; }
    @media (min-width: 992px) and (max-width: 1200px) {
      .about .post-thumb::before {
        left: -55px; } }
    @media (min-width: 768px) and (max-width: 991px) {
      .about .post-thumb::before {
        left: -55px; } }
    @media (max-width: 575px) {
      .about .post-thumb::before {
        left: -50px; } }
  .about .post-thumb img {
    border-radius: 20px; }

.post-content .section-title-3 {
  margin-bottom: 35px; }

@media (max-width: 575px) {
  .video-area-2 {
    overflow: hidden; } }

.video-area-2 .video-wrapper {
  position: relative;
  left: 6%;
  width: 112%;
  top: 0;
  height: 490px;
  margin-top: -90px;
  border-top-left-radius: 20px;
  border-bottom-left-radius: 20px;
  background-size: cover; }
  @media (min-width: 992px) and (max-width: 1200px) {
    .video-area-2 .video-wrapper {
      width: 110%; } }
  @media (max-width: 575px) {
    .video-area-2 .video-wrapper {
      width: auto;
      margin-top: 0px;
      height: 350px; } }
  .video-area-2 .video-wrapper img {
    height: 100%; }

.video-area-2 .post-text ul {
  list-style: none;
  padding: 0 0 0 10px; }
  .video-area-2 .post-text ul li {
    font-weight: 500;
    line-height: 1.3;
    padding-bottom: 18px; }
    .video-area-2 .post-text ul li i {
      color: #fe771c;
      margin-right: 7px;
      font-size: 18px;
      position: relative;
      top: 1px; }

.video-block {
  position: absolute;
  left: -35px;
  top: 50%;
  z-index: 1;
  width: 90px;
  height: 90px;
  transform: translateY(-50%); }
  .video-block .waves {
    position: absolute;
    width: 140px;
    height: 140px;
    right: -25px;
    bottom: -25px; }
  .video-block .video {
    height: 90px;
    width: 90px;
    text-align: center;
    border-radius: 100%;
    color: #fff;
    display: table;
    background: #fe771c;
    z-index: 999; }
    .video-block .video i {
      display: table-cell;
      vertical-align: middle;
      font-size: 35px; }

.waves {
  position: absolute;
  width: 200px;
  height: 200px;
  background: rgba(244, 70, 47, 0.4);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  border-radius: 100%;
  right: -50px;
  bottom: -50px;
  z-index: -1;
  -webkit-animation: waves 3s ease-in-out infinite;
  animation: waves 3s ease-in-out infinite; }

@keyframes waves {
  0% {
    -webkit-transform: scale(0.2, 0.2);
    transform: scale(0.2, 0.2);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  50% {
    opacity: 0.9;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)"; }
  100% {
    -webkit-transform: scale(0.9, 0.9);
    transform: scale(0.9, 0.9);
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }

.wave-1 {
  -webkit-animation-delay: 0s;
  animation-delay: 0s; }

.wave-2 {
  -webkit-animation-delay: 1s;
  animation-delay: 1s; }

.wave-3 {
  -webkit-animation-delay: 2s;
  animation-delay: 2s; }

.video-wrapper a {
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%); }

/*************************************
13. Services Page
*************************************/
.services-area .single-service {
  transition: all .4s linear 0s;
  min-height: 250px;
  overflow: hidden;
  border-radius: 20px;
  cursor: pointer;
  margin-bottom: 30px; }
  .services-area .single-service h5 {
    margin-bottom: 20px; }
  .services-area .single-service .service-icon {
    margin: 0 auto; }
  .services-area .single-service::before {
    background: url("../images/service-cbg.png") no-repeat bottom right;
    background-size: contain;
    top: 125px;
    left: 120px;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    filter: alpha(opacity=0);
    -webkit-transition: all 0.4s linear;
    -moz-transition: all 0.4s linear;
    -ms-transition: all 0.4s linear;
    -o-transition: all 0.4s linear;
    transition: all 0.4s linear; }
  .services-area .single-service:hover, .services-area .single-service.active {
    box-shadow: 0 5px 25px rgba(0, 0, 0, 0.15); }
    .services-area .single-service:hover::before, .services-area .single-service.active::before {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      filter: alpha(opacity=100); }
    .services-area .single-service:hover .heading-5 a, .services-area .single-service.active .heading-5 a {
      color: #fe771c; }
    .services-area .single-service:hover .service-icon, .services-area .single-service.active .service-icon {
      border-color: #fe771c; }

.single-service .service-icon {
  flex: 0 0 80px;
  max-width: 80px;
  height: 80px;
  line-height: 80px;
  margin-right: 25px;
  text-align: center;
  border: 1px solid #0c0f2e;
  border-radius: 50%;
  transition: all .4s linear 0s; }

.services-wrapper .single-service:hover .service-icon {
  border-color: #fe771c; }

.service-image .half-column-thumb {
  margin-top: -150px;
  margin-bottom: -50px; }
  @media (min-width: 768px) and (max-width: 991px) {
    .service-image .half-column-thumb {
      margin-bottom: 30px; } }
  @media (max-width: 575px) {
    .service-image .half-column-thumb {
      margin-bottom: 30px;
      margin-top: -80px; } }

/*************************
14. Menu Page
***************************/
.filter-form {
  margin-top: 15px; }
  .filter-form .snap-label {
    margin-top: 10px;
    font-weight: 600;
    color: #5a5b67; }
  .filter-form .form-group {
    margin-top: 35px; }
  .filter-form .noUi-horizontal {
    height: 8px !important;
    border: 0px !important;
    background: #d7d7d7 !important;
    border-radius: 15px; }
    .filter-form .noUi-horizontal .noUi-handle {
      height: 18px;
      width: 18px;
      border: 3px solid #000;
      background: #ffffff;
      border-radius: 50%; }

.filter-form .noUi-handle:after,
.noUi-handle:before {
  height: 0px;
  width: 0px;
  background: transparent; }

.filter-form .noUi-connect {
  background: #ff6e1a; }

.search-form {
  position: relative; }
  .search-form .input-group {
    border-radius: 50px;
    overflow: hidden; }
  .search-form input[type="email"] {
    height: 45px;
    padding-left: 20px;
    border: none; }
    .search-form input[type="email"]:focus {
      box-shadow: none; }
  .search-form button[type="submit"] {
    border: 0;
    color: #fff;
    background-color: #0c0f2e;
    border-radius: 50%;
    position: absolute;
    right: 0;
    height: 45px;
    width: 45px;
    z-index: 9; }

.pagination-container ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .pagination-container ul li {
    display: inline-table;
    width: 50px;
    height: 50px;
    font-weight: 600;
    margin: 0 5px;
    -webkit-transition: all 0.4s linear;
    -moz-transition: all 0.4s linear;
    -ms-transition: all 0.4s linear;
    -o-transition: all 0.4s linear;
    transition: all 0.4s linear; }
    .pagination-container ul li a {
      background-color: #e1e1e1;
      display: table-cell;
      vertical-align: middle;
      border-radius: 50%;
      font-size: 20px;
      color: #5a5b67;
      font-weight: 600; }
      .pagination-container ul li a i {
        color: #fe771c; }
    .pagination-container ul li.active a {
      background-color: #fe771c;
      color: #fff;
      box-shadow: 0px 5px 15px rgba(255, 109, 26, 0.5); }
    .pagination-container ul li:hover a {
      text-decoration: none;
      background-color: #fe771c;
      color: #fff;
      box-shadow: 0px 5px 15px rgba(255, 109, 26, 0.5); }
      .pagination-container ul li:hover a i {
        color: #fff; }

/**************************
15. Product Details Page
***************************/
.product-thumbs .tab-content img {
  border-radius: 1.25rem; }

.product-thumbs ul.nav {
  border: none;
  box-shadow: none; }
  .product-thumbs ul.nav .nav-item {
    max-width: 33%; }
  .product-thumbs ul.nav .nav-link {
    padding: 16px 4px;
    border: none; }
    .product-thumbs ul.nav .nav-link.active, .product-thumbs ul.nav .nav-link:hover, .product-thumbs ul.nav .nav-link:focus {
      border: none; }

.product-details h2 {
  font-size: 2.188rem; }

.product-action form input[type="number"] {
  height: 40px;
  width: 90px;
  border-radius: 50px;
  padding: 15px;
  font-weight: 600; }
  .product-action form input[type="number"]:focus {
    outline: 0; }

.product-content {
  padding-left: 25px; }
  .product-content .product-rating p {
    color: #fe771c;
    margin-bottom: 0; }
    .product-content .product-rating p span {
      color: #0c0f2e; }
  .product-content .product-price {
    margin: 20px 0; }
    .product-content .product-price p {
      margin-bottom: 0;
      font-size: 2.3rem;
      font-weight: 600;
      color: #fe771c;
      padding: 5px 0; }
  .product-content .product-action .default-btn {
    padding: 10px 25px; }
  .product-content .product-action input {
    border: 1px solid #e9e9e9; }

.nav-tabs li a {
  font-size: 1.5rem;
  color: #0c0f2e; }
  .nav-tabs li a:hover {
    border-top-color: transparent !important;
    border-right-color: transparent !important;
    border-left-color: transparent !important; }
  .nav-tabs li a.active {
    border-top-color: transparent !important;
    border-right-color: transparent !important;
    border-left-color: transparent !important;
    color: #0c0f2e !important;
    border-bottom-color: #fe771c !important; }

.reviews-info .nav-tabs li {
  margin-right: 1.25rem; }
  .reviews-info .nav-tabs li a {
    padding-left: 0;
    font-weight: 700;
    text-transform: capitalize;
    font-size: 1.563rem;
    font-family: "Playfair Display", serif; }
    .reviews-info .nav-tabs li a:hover, .reviews-info .nav-tabs li a.active {
      color: #fe771c;
      border-bottom: 2px solid #fe771c; }

.reviews-info .tab-content {
  padding-top: 1.25rem; }

/**********************************
16. Blog Details
***********************************/
.author-thumb {
  width: 30%;
  margin-right: 15px; }

.date {
  font-family: "Playfair Display", serif; }
  .date p {
    margin-bottom: 5px; }

.comment-text p {
  margin-bottom: 0; }

.comments-form input {
  height: 50px;
  border-radius: 30px;
  padding: 15px; }

.comments-form textarea {
  border-radius: 15px;
  padding: 20px; }

.comments-form .form-control {
  border: none;
  box-shadow: 0px 5px 25px rgba(0, 0, 0, 0.1);
  font-size: 15px;
  padding-left: 25px; }

.sample-icon {
  min-width: 70px;
  width: 70px;
  height: 70px;
  line-height: 70px;
  text-align: center;
  border: 1px solid #0c0f2e;
  border-radius: 50%; }
  .sample-icon i {
    font-size: 1.4rem;
    color: #fc0039; }

.contact-info p {
  margin-bottom: 0; }

.contact-wrapper .single-contact {
  min-height: 200px;
  padding: 30px;
  cursor: pointer;
  transition: .3s ease-in; }
  @media (min-width: 768px) and (max-width: 991px) {
    .contact-wrapper .single-contact {
      margin-bottom: 30px;
      max-width: 60%; } }
  @media (max-width: 575px) {
    .contact-wrapper .single-contact {
      margin-bottom: 30px; } }
  .contact-wrapper .single-contact:hover {
    transform: translateY(-10px); }
  .contact-wrapper .single-contact .sample-icon {
    min-width: 60px;
    width: 60px;
    height: 60px;
    line-height: 60px;
    margin-right: 15px; }
  .contact-wrapper .single-contact .default-btn {
    padding: 8px 30px; }

.widget-text {
  overflow-wrap: break-word; }

/**************************
17. Checkout Page
****************************/
.sidebar-wrapper-2 .widget-header {
  border-bottom: 1px dashed #5a5b67; }

.sidebar-wrapper-2 .pricing-info select {
  display: inline-block; }

.sidebar-wrapper-2 .pricing-info p {
  display: inline-block;
  margin-bottom: 0; }

.sidebar-wrapper-2 .pay-form .pay-list {
  background: #fafafa;
  padding: 20px;
  border-radius: 15px;
  margin-bottom: 30px; }

.sidebar-wrapper-2 .pay-form button {
  box-shadow: 0px 5px 25px rgba(255, 109, 26, 0.4); }

.sidebar-wrapper-2 .promo-widget p {
  font-size: 1.2rem; }

.sidebar-wrapper-2 .pricing-form .input-group.mt-3 input {
  padding: 9px; }

.sidebar-wrapper-2 .single-pricing i {
  color: #fe771c; }

.sidebar-wrapper-2 .single-pricing .price {
  color: #fe771c;
  padding: 0 5px; }

.sidebar-wrapper-2 .single-pricing select {
  width: 50px;
  border-radius: 30px;
  padding: 0 5px;
  border-color: #cbcbcf;
  color: #53545b; }
  .sidebar-wrapper-2 .single-pricing select:focus {
    box-shadow: none; }

.sidebar-wrapper-2 .delete-btn i {
  color: #cbcbcf; }

.sidebar-wrapper-2 .btn-default {
  border: 0;
  background-color: #fe771c;
  padding: 10px 0;
  border-radius: 30px;
  color: #fff;
  font-weight: 600; }

.pricing-widget .wid-title p {
  color: #5a5b67; }
  .pricing-widget .wid-title p i {
    color: #fe771c; }

.payment-card-form {
  margin-top: 35px; }

.pay-list ul {
  margin: 0;
  padding: 0;
  list-style: none; }
  .pay-list ul li {
    display: flex;
    justify-content: space-between;
    padding: 5px 0;
    font-weight: 600; }
    .pay-list ul li:last-child {
      border-top: 1px dashed #5a5b67;
      font-size: 1.3rem;
      padding: 10px 0; }

.pricing-form form {
  position: relative; }
  .pricing-form form .btn-default {
    position: absolute;
    right: 0;
    padding: 0 20px;
    z-index: 9;
    height: 100%;
    top: 0; }
  .pricing-form form input {
    border-radius: 30px !important; }

.supported-cards ul {
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
  align-items: center; }
  .supported-cards ul li {
    padding: 0 5px; }
    .supported-cards ul li:first-child {
      padding-left: 0; }
    .supported-cards ul li:last-child {
      padding-right: 0; }

.payment-card-form form input[type='text'] {
  border-radius: 30px;
  height: 45px; }

.tabs-lists ul.nav a .tab-icon {
  width: 52px;
  height: 52px; }
  .tabs-lists ul.nav a .tab-icon img {
    height: auto; }

.payment-card-form button {
  font-family: "Inter", sans-serif; }

.delivery-address .single-contact {
  max-width: 100%; }
  @media (min-width: 768px) and (max-width: 991px) {
    .delivery-address .single-contact {
      padding: 15px !important; } }

/********************************
18. Track Order
*********************************/
.delivery-position {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative; }
  .delivery-position:before {
    content: "";
    position: absolute;
    left: 0;
    top: 40%;
    width: 97.7%;
    height: 2px;
    border: 1px dashed #222222;
    z-index: 2; }
  .delivery-position .single-position {
    position: relative;
    z-index: 3;
    background-color: #fff; }
    .delivery-position .single-position.active .item-icon {
      border-color: #fe771c; }
    .delivery-position .single-position.active .heading-6 {
      color: #fe771c; }

.delivery-position .item-icon {
  width: 130px;
  height: 130px;
  line-height: 120px;
  text-align: center;
  border: 1px solid #0c0f2e;
  border-radius: 50%; }

.gmap-area iframe {
  width: 100%;
  height: 380px; }

/*******************************
19. Account Page
*******************************/
@media (max-width: 575px) {
  .single-order {
    display: block !important; }
    .single-order .order-thumb.me-3 {
      margin: 0 0 20px; } }

.single-order p {
  color: #5a5b67; }
  .single-order p i {
    color: #fe771c; }

.single-order .post-cn {
  color: #0c0f2e; }

.single-order .order-action {
  align-items: center;
  padding-top: 20px; }
  .single-order .order-action .action-btns a {
    padding: 7px 28px; }

.orders-history .order-action {
  padding-top: 15px;
  border-top: 1px dashed #5a5b67; }

.orders-history .order-info p {
  margin-bottom: 5px; }

.summery table tbody, .odser-details table tbody, .summery table td, .odser-details table td, .summery table tfoot, .odser-details table tfoot, .summery table th, .odser-details table th, .summery table thead, .odser-details table thead, .summery table tr, .odser-details table tr {
  border-style: dashed; }

thead.thead-custom {
  border-top: 1px solid white; }

/***********************************
20. Login Page
**************************************/
.login-form-wrapper {
  min-height: 100vh; }
  .login-form-wrapper::before {
    width: 50%;
    left: auto;
    right: 0;
    background-image: url(../images/half_column_bg.jpg);
    background-size: cover;
    background-position: center; }
    @media (max-width: 575px) {
      .login-form-wrapper::before {
        background-image: none;
        width: 0; } }
  @media (max-width: 575px) {
    .login-form-wrapper {
      overflow: hidden; }
      .login-form-wrapper .col-md-6.half-column {
        display: none !important; } }

.start-page {
  position: relative; }

.login-form .section-title-3 h2 {
  font-size: 45px; }

.login-form .section-title-3 p {
  font-weight: 600;
  font-size: 18px; }

.login-form .user-account-info {
  font-weight: 500; }

.half-column {
  display: flex;
  align-items: center;
  height: 100vh; }
  .half-column .half-full {
    max-width: 70%;
    margin: 0 auto; }
    @media (min-width: 768px) and (max-width: 991px) {
      .half-column .half-full {
        max-width: 90%; } }
    @media (max-width: 768px) {
      .half-column .half-full {
        max-width: 90%; } }
    @media (max-width: 575px) {
      .half-column .half-full {
        max-width: 95%; } }

.login-form-wrapper .half-column .half-full {
  max-width: 85%;
  margin-right: 0;
  text-align: center;
  margin-left: auto; }

.copyright-area-2 {
  position: absolute;
  bottom: 0; }

.login-form .form-control {
  border-top-color: transparent;
  border-left-color: transparent;
  border-right-color: transparent;
  border-bottom-color: #0c0f2e;
  padding-left: 0;
  border-radius: 0; }
  .login-form .form-control:focus {
    box-shadow: none;
    border-top-color: transparent;
    border-left-color: transparent;
    border-right-color: transparent; }

.login-form label {
  margin-bottom: 0;
  color: #8b8c99; }
  .login-form label.form-check-label {
    color: #0c0f2e;
    font-weight: 500; }

.login-form .form-check a {
  color: #8b8c99;
  font-weight: 500; }
  .login-form .form-check a:hover {
    text-decoration: none; }

.copyright-text-2 a {
  color: #fe771c; }

@media (max-width: 575px) {
  .error-content {
    padding-top: 50px; } }

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