html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block; }

body {
  line-height: 1; }

ol,
ul {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/*------------------------------------------------------------
	Media
------------------------------------------------------------*/
/*------------------------------------------------------------
	Flex Box
------------------------------------------------------------*/
:root {
  --height-hd: 18rem;
  --menu-aside: 8rem;
  --menu-aside-hover: 33rem;
  --font-pri: "Roboto", sans-serif; }

* {
  box-sizing: border-box; }

html {
  font-size: 8px; }
  html ::-webkit-scrollbar {
    width: 0.4rem;
    height: 0.4rem; }
  html ::-webkit-scrollbar-thumb {
    border-radius: 1rem;
    background: rgba(51, 51, 51, 0.8); }

body {
  color: #242424;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: normal;
  overflow: hidden auto;
  background-color: #f6f6f6;
  font-family: var(--font-pri); }
  body.admin-bar .header {
    top: 3.2rem; }
    @media screen and (max-width: 782px) {
      body.admin-bar .header {
        top: 4.6rem; } }
  body .mona-empty {
    color: #333;
    font-weight: 600; }

a {
  color: inherit;
  text-decoration: none; }

button,
select {
  border: none;
  outline: none;
  cursor: pointer;
  -webkit-appearance: none; }

button {
  padding: 0;
  cursor: pointer;
  background-color: transparent; }

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0; }

/* Firefox */
input[type="number"] {
  -moz-appearance: textfield; }

input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.container {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  padding: 0 1.6rem;
  max-width: 153.6rem; }

iframe {
  vertical-align: middle; }

img {
  height: auto;
  display: block;
  max-width: 100%; }

.tabBtn {
  cursor: pointer; }

.gItem {
  cursor: pointer; }

.hide-sitename {
  width: 0;
  height: 0;
  opacity: 0;
  visibility: visible; }

.no-scroll,
.no-scroll-cart,
.no-scroll-popup {
  overflow: hidden;
  touch-action: none;
  overscroll-behavior: none;
  -webkit-overflow-scrolling: none; }

.overlay,
.overlay-cart,
.overlay-menu {
  inset: 0;
  opacity: 0;
  width: 100%;
  position: fixed;
  visibility: hidden;
  transition: 0.4s ease-in-out;
  pointer-events: none;
  z-index: 100 !important;
  display: block !important;
  height: calc(100dvh + 3.3rem);
  background-color: rgba(36, 36, 36, 0.8); }
  .overlay.is-active,
  .overlay-cart.is-active,
  .overlay-menu.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto; }

.row {
  --rg: 3.2rem;
  --cg: 3.2rem;
  display: flex;
  flex-wrap: wrap;
  margin: 0 calc(var(--cg) / 2 * -1) calc(var(--rg) * -1); }
  @media screen and (max-width: 1200px) {
    .row {
      --rg: 2.4rem;
      --cg: 2.4rem; } }

.col {
  width: 100%;
  margin-bottom: var(--rg);
  padding: 0 calc(var(--cg) / 2); }
  .col-12 {
    width: 100%; }
  .col-11 {
    width: calc(11 / 12 * 100%); }
  .col-10 {
    width: calc(10 / 12 * 100%); }
  .col-9 {
    width: calc(9 / 12 * 100%); }
  .col-8 {
    width: calc(8 / 12 * 100%); }
  .col-7 {
    width: calc(7 / 12 * 100%); }
  .col-6 {
    width: 50%; }
  .col-5 {
    width: calc(5 / 12 * 100%); }
  .col-4 {
    width: calc(4 / 12 * 100%); }
  .col-3 {
    width: calc(3 / 12 * 100%); }
  .col-2 {
    width: calc(2 / 12 * 100%); }
  .col-1 {
    width: calc(1 / 12 * 100%); }

.flex {
  display: flex;
  flex-direction: column; }
  .flex-8 {
    gap: 0.8rem; }
  .flex-16 {
    gap: 1.6rem; }
  .flex-20 {
    gap: 2rem; }
  .flex-24 {
    gap: 2.4rem; }
  .flex-32 {
    gap: 3.2rem; }
  .flex-40 {
    gap: 4rem; }
  .flex-48 {
    gap: 4.8rem; }
  .flex-50 {
    gap: 5rem; }
  .flex-56 {
    gap: 5.6rem; }
  .flex-60 {
    gap: 6rem; }
  .flex-68 {
    gap: 6.8rem; }
  .flex-80 {
    gap: 8rem; }
  .flex-100 {
    gap: 10rem; }
  .flex-120 {
    gap: 12rem; }
  @media screen and (max-width: 992px) {
    .flex-60 {
      gap: 4rem; }
    .flex-68 {
      gap: 4rem; }
    .flex-80 {
      gap: 4rem; }
    .flex-100 {
      gap: 4rem; }
    .flex-120 {
      gap: 4rem; } }
  @media screen and (max-width: 576px) {
    .flex-8 {
      gap: 2.4rem; }
    .flex-16 {
      gap: 2.4rem; }
    .flex-20 {
      gap: 2.4rem; }
    .flex-24 {
      gap: 2.4rem; }
    .flex-32 {
      gap: 2.4rem; }
    .flex-40 {
      gap: 2.4rem; }
    .flex-48 {
      gap: 2.4rem; }
    .flex-50 {
      gap: 2.4rem; }
    .flex-56 {
      gap: 2.4rem; }
    .flex-60 {
      gap: 2.4rem; }
    .flex-68 {
      gap: 2.4rem; }
    .flex-80 {
      gap: 2.4rem; }
    .flex-100 {
      gap: 2.4rem; }
    .flex-120 {
      gap: 2.4rem; } }

.mona-content {
  line-height: 1.5;
  color: #242424; }
  .mona-content b,
  .mona-content strong {
    font-weight: 700; }
  .mona-content em,
  .mona-content i {
    font-style: italic; }
  .mona-content h1,
  .mona-content h2,
  .mona-content h3,
  .mona-content h4,
  .mona-content h5,
  .mona-content h6 {
    font-weight: 700;
    margin-bottom: 2.4rem; }
  .mona-content h1 {
    font-size: 2.8rem; }
    @media only screen and (max-width: 1200px) {
      .mona-content h1 {
        font-size: 2.4rem; } }
    @media only screen and (max-width: 800px) {
      .mona-content h1 {
        font-size: 2.1rem; } }
  .mona-content h2 {
    font-size: 2.4rem; }
    @media only screen and (max-width: 1200px) {
      .mona-content h2 {
        font-size: 2rem; } }
    @media only screen and (max-width: 800px) {
      .mona-content h2 {
        font-size: 1.7rem; } }
  .mona-content h3 {
    font-size: 2rem; }
    @media only screen and (max-width: 1200px) {
      .mona-content h3 {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .mona-content h3 {
        font-size: 1.6rem; } }
  .mona-content h4 {
    font-size: 2rem; }
    @media only screen and (max-width: 1200px) {
      .mona-content h4 {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .mona-content h4 {
        font-size: 1.6rem; } }
  .mona-content h5 {
    font-size: 1.4rem; }
  .mona-content h6 {
    font-size: 1.2rem; }
  .mona-content p {
    font-size: 2rem;
    margin-bottom: 4rem; }
    @media only screen and (max-width: 1200px) {
      .mona-content p {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .mona-content p {
        font-size: 1.6rem; } }
    @media screen and (max-width: 767px) {
      .mona-content p {
        margin-bottom: 2.4rem; } }
  .mona-content ul,
  .mona-content ol {
    margin: 1em 0;
    list-style-position: inside; }
  .mona-content ul ul,
  .mona-content ul ol,
  .mona-content ol ul,
  .mona-content ol ol {
    margin-left: 1em; }
  .mona-content ul {
    list-style-type: disc; }
  .mona-content ol {
    list-style-type: decimal; }
  .mona-content ul ul,
  .mona-content ol ul {
    list-style-type: circle; }
  .mona-content ol ol,
  .mona-content ul ol {
    list-style-type: lower-latin; }
  .mona-content img,
  .mona-content iframe {
    height: auto;
    margin: 4rem 0;
    user-select: none;
    max-width: 100% !important; }
    @media screen and (max-width: 1200px) {
      .mona-content img,
      .mona-content iframe {
        margin: 2.4rem 0; } }
  .mona-content blockquote {
    background: #f9f9f9;
    border-left: 1rem solid #ccc;
    margin: 1em 0;
    padding: 1em;
    quotes: "\201C" "\201D" "\2018" "\2019"; }
    .mona-content blockquote::before {
      color: #ccc;
      content: open-quote;
      font-size: 4em;
      line-height: 0.1em;
      margin-right: 0.25em;
      vertical-align: -0.4em; }
    .mona-content blockquote p {
      display: inline; }
  .mona-content table {
    max-width: 100%;
    margin: 3.2rem 0;
    border-collapse: collapse; }
    @media screen and (max-width: 1200px) {
      .mona-content table {
        margin: 2.4rem 0; } }
    .mona-content table th,
    .mona-content table td {
      padding: 1.2rem 0;
      vertical-align: middle;
      border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1); }
  .mona-content .mona-youtube-wrap {
    position: relative;
    height: 0;
    padding-top: 56.25%; }
    .mona-content .mona-youtube-wrap iframe {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }
  .mona-content .mona-table-wrap {
    overflow: auto; }
  .mona-content .wp-caption-text {
    font-size: 1.4rem;
    text-align: center; }
    @media screen and (max-width: 576px) {
      .mona-content .wp-caption-text {
        font-size: 1.2rem; } }
  .mona-content .wp-caption {
    border: 0;
    padding: 0;
    max-width: 100%;
    margin-bottom: 3.2rem; }
    @media screen and (max-width: 1200px) {
      .mona-content .wp-caption {
        margin-bottom: 2.4rem; } }
    .mona-content .wp-caption-text {
      padding: 1rem 0;
      line-height: 1.5;
      font-size: 1.4rem;
      text-align: center;
      font-style: italic;
      margin: 0 !important; }
      @media screen and (max-width: 576px) {
        .mona-content .wp-caption-text {
          font-size: 1.2rem; } }
    .mona-content .wp-caption.alignnone {
      margin: 3.2rem 0; }
      @media screen and (max-width: 576px) {
        .mona-content .wp-caption.alignnone {
          margin: 2.4rem 0; } }
    .mona-content .wp-caption.alignright {
      float: right;
      display: inline;
      margin-bottom: 0;
      margin-left: 1.5rem; }
    .mona-content .wp-caption.aligncenter {
      margin: 2.4rem auto; }
    .mona-content .wp-caption.alignleft {
      float: left;
      display: inline;
      margin-bottom: 0;
      margin-right: 1.5rem; }
    .mona-content .wp-caption img {
      margin: 0;
      width: 100%;
      max-width: 100%;
      overflow: hidden; }
  .mona-content a {
    font-weight: 700;
    color: #00a523;
    transition: all 0.5s ease; }
    .mona-content a:hover {
      text-decoration: underline;
      color: #db1f26; }
  .mona-content li {
    margin: 1rem 0;
    font-size: 2rem; }
  .mona-content figure {
    width: fit-content;
    margin-top: 1em;
    margin-bottom: 1em;
    margin-right: auto;
    margin-left: auto; }
    .mona-content figure img {
      margin: 0; }
  .mona-content figcaption {
    font-style: italic;
    font-size: 0.8em;
    text-align: center; }
  .mona-content .img-full img {
    width: 100%; }
  .mona-content table {
    width: 100%; }
    .mona-content table td {
      text-align: left;
      vertical-align: middle; }
    .mona-content table th,
    .mona-content table td {
      padding: 1.2rem 0; }
    .mona-content table td {
      background-color: transparent; }
    .mona-content table tbody {
      background-color: #fff; }
    .mona-content table th {
      color: #111;
      font-weight: 600;
      text-align: left; }
  .mona-content .table-resp {
    overflow-x: auto;
    margin-bottom: 3rem; }
  .mona-content img.size-full {
    width: 100%; }
  .mona-content img.alignnone {
    margin: 3.2rem 0; }
    @media screen and (max-width: 576px) {
      .mona-content img.alignnone {
        margin: 2.4rem 0; } }
  .mona-content img.aligncenter {
    margin: 3.2rem auto; }
    @media screen and (max-width: 576px) {
      .mona-content img.aligncenter {
        margin: 2.4rem auto; } }
  .mona-content img.alignright {
    margin-left: auto; }
  .mona-content img.alignleft {
    margin-right: auto; }
  .mona-content .gallery-columns-2 {
    display: flex;
    flex-wrap: wrap;
    gap: 1.6rem;
    margin: 3.2rem 0; }
    @media screen and (max-width: 576px) {
      .mona-content .gallery-columns-2 {
        margin: 2.4rem 0; } }
    .mona-content .gallery-columns-2 img {
      margin: 0; }
    .mona-content .gallery-columns-2 .gallery-item {
      width: calc(50% - 0.8rem) !important; }
    .mona-content .gallery-columns-2 .gallery-icon {
      width: 100%;
      height: 100%; }
      .mona-content .gallery-columns-2 .gallery-icon a img {
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        transform: translate(-50%, -50%); }
  .mona-content .list_parameters {
    margin: 0;
    flex-wrap: wrap;
    gap: 1.6rem 4.8rem;
    display: flex;
    align-items: center;
    padding-bottom: 2.4rem; }
    .mona-content .list_parameters li {
      margin: 0;
      gap: 0.4rem;
      font-size: 2rem;
      display: flex;
      align-items: center;
      padding-bottom: 1.2rem;
      width: calc(100% / 2 - 2.4rem);
      border-bottom: 0.1rem solid rgba(36, 36, 36, 0.2); }
      @media only screen and (max-width: 1200px) {
        .mona-content .list_parameters li {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .mona-content .list_parameters li {
          font-size: 1.6rem; } }
      @media screen and (max-width: 1200px) {
        .mona-content .list_parameters li {
          width: calc(100% / 2 - 2.5rem); } }
      @media screen and (max-width: 576px) {
        .mona-content .list_parameters li {
          width: 100%; } }
      .mona-content .list_parameters li span:first-child {
        flex-shrink: 0; }
      .mona-content .list_parameters li span:last-child {
        margin-left: auto;
        text-align: right;
        word-break: break-word; }
  .mona-content .view-more-params {
    text-align: center; }
    .mona-content .view-more-params button {
      color: white;
      margin: 0 auto;
      cursor: pointer;
      font-size: 2rem;
      width: fit-content;
      text-align: center;
      transition: 0.4s ease-in-out;
      border-radius: 0.8rem;
      padding: 1.2rem 3.2rem;
      font-family: var(--font-pri);
      background-color: #00a523;
      border: 0.1rem solid transparent; }
      @media screen and (min-width: 1201px) {
        .mona-content .view-more-params button:hover {
          border-color: #db1f26;
          background-color: #db1f26; } }

.post-detail-toc #ez-toc-container {
  border: 0;
  padding: 0;
  width: 100%;
  display: flex;
  row-gap: 2.4rem;
  border-radius: 0.8rem;
  background: #e4e7ec;
  flex-direction: column; }
  @media screen and (max-width: 1727.99px) {
    .post-detail-toc #ez-toc-container {
      row-gap: 1.6rem; } }
  .post-detail-toc #ez-toc-container a:visited {
    color: #db1f26; }
  .post-detail-toc #ez-toc-container .ez-toc-title {
    display: block;
    font-weight: 700;
    font-size: 3.2rem;
    padding: 1.6rem 1.6rem 2.4rem;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.2); }
    @media screen and (max-width: 1727.99px) {
      .post-detail-toc #ez-toc-container .ez-toc-title {
        padding: 1.6rem;
        font-size: 2.4rem; } }
  .post-detail-toc #ez-toc-container .ez-toc-title-toggle {
    display: none; }
  .post-detail-toc #ez-toc-container > nav {
    padding: 0 1.6rem 1.6rem; }
  .post-detail-toc #ez-toc-container .ez-toc-list-level-1 {
    display: flex;
    row-gap: 2.4rem;
    flex-direction: column; }
    @media screen and (max-width: 1727.99px) {
      .post-detail-toc #ez-toc-container .ez-toc-list-level-1 {
        row-gap: 1.6rem; } }
    .post-detail-toc #ez-toc-container .ez-toc-list-level-1 .ez-toc-link {
      font-size: 2rem; }
      @media only screen and (max-width: 1200px) {
        .post-detail-toc #ez-toc-container .ez-toc-list-level-1 .ez-toc-link {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .post-detail-toc #ez-toc-container .ez-toc-list-level-1 .ez-toc-link {
          font-size: 1.6rem; } }

.custom-logo-link {
  display: block;
  user-select: none; }
  .custom-logo-link img {
    width: 100%;
    object-fit: cover; }

.social {
  gap: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  user-select: none; }
  @media screen and (max-width: 576px) {
    .social {
      gap: 1.2rem; } }
  .social-img,
  .social a {
    display: block;
    transition: 0.4s ease-in-out;
    width: 3.2rem;
    height: 3.2rem; }
    @media screen and (min-width: 1201px) {
      .social-img:hover,
      .social a:hover {
        transform: translateY(-0.5rem); } }
    @media screen and (max-width: 576px) {
      .social-img,
      .social a {
        width: 2.4rem;
        height: 2.4rem; } }
    .social-img img,
    .social a img {
      width: 100%;
      object-fit: cover; }

.carts-counter {
  user-select: none;
  column-gap: 1.2rem;
  display: flex;
  align-items: center;
  border-radius: 0.8rem;
  padding: 0.6rem 0.8rem;
  border: 0.1rem solid #bfbfbf; }
  .carts-counter input {
    border: 0;
    outline: 0;
    padding: 0;
    height: auto;
    font-size: 1.6rem;
    text-align: center;
    width: 3.8rem !important;
    font-family: var(--font-pri);
    background-color: transparent; }
  .carts-counter button {
    padding: 0;
    flex-shrink: 0;
    font-size: 2rem;
    width: 2rem;
    height: 2rem;
    background: transparent; }
  .carts-counter .quantity:has(.screen-reader-text) {
    height: auto; }

.icon-play {
  color: white;
  font-size: 2rem;
  width: fit-content;
  top: 50%;
  left: 50%;
  position: absolute;
  transform: translate(-50%, -50%);
  column-gap: 1.6rem;
  line-height: normal;
  transition: 0.4s ease-in-out;
  border-radius: 10rem;
  display: flex;
  align-items: center;
  padding: 1.4rem 2.4rem;
  background-color: #c8c8c8; }
  @media only screen and (max-width: 1200px) {
    .icon-play {
      font-size: 1.8rem; } }
  @media only screen and (max-width: 800px) {
    .icon-play {
      font-size: 1.6rem; } }
  @media screen and (min-width: 1201px) {
    .icon-play:hover {
      background-color: #db1f26; } }
  .icon-play img {
    height: 2rem;
    width: 1.2rem;
    flex-shrink: 0;
    object-fit: cover; }

.star {
  gap: 0.4rem;
  user-select: none;
  display: flex;
  align-items: center; }
  .star-list {
    position: relative; }
  .star-flex {
    display: flex;
    column-gap: 0.4rem; }
    .star-flex img {
      object-fit: cover;
      width: 1.6rem;
      height: 1.6rem; }
  .star-info {
    flex-wrap: wrap;
    display: flex;
    align-items: center; }
    .star-info .text-16 {
      color: rgba(36, 36, 36, 0.5); }
      .star-info .text-16:last-child::before {
        content: "|";
        margin: 0 0.4rem; }
  .star-filter {
    left: 0;
    width: 0;
    top: 50%;
    height: 100%;
    overflow: hidden;
    position: absolute;
    transform: translateY(-50%); }

.price {
  gap: 0.8rem;
  font-size: 2rem;
  flex-wrap: wrap;
  font-weight: 700;
  display: flex;
  align-items: center;
  color: #db1f26 !important; }
  @media only screen and (max-width: 1200px) {
    .price {
      font-size: 1.8rem; } }
  @media only screen and (max-width: 800px) {
    .price {
      font-size: 1.6rem; } }
  .price ins {
    font-size: 2rem;
    font-weight: 700;
    color: #db1f26;
    text-decoration: unset; }
    @media only screen and (max-width: 1200px) {
      .price ins {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .price ins {
        font-size: 1.6rem; } }
  .price del {
    font-size: 1.6rem;
    font-weight: 600;
    color: rgba(0, 0, 0, 0.3); }
    @media screen and (max-width: 576px) {
      .price del {
        font-size: 1.4rem; } }
  .price > .title-24 {
    margin-top: 1.2rem;
    color: #242424; }

.no-price {
  font-size: 4.8rem;
  font-weight: 700;
  color: #db1f26; }
  @media only screen and (max-width: 1200px) {
    .no-price {
      font-size: 4.3rem; } }
  @media only screen and (max-width: 800px) {
    .no-price {
      font-size: 3.3rem; } }

.form-cf {
  gap: 1rem;
  justify-content: space-between;
  display: flex;
  align-items: center; }
  .form-cf .checkbox {
    padding-left: 2.4rem; }

.text-s,
.forget-txt {
  line-height: 150%;
  color: #242424;
  font-size: 1.6rem;
  font-weight: 400; }

.reg-btn {
  margin: 0 auto;
  margin-top: 2.4rem; }

.checkbox {
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0; }
    .checkbox input:checked ~ .checkmark {
      background-color: #2e2b24; }
      .checkbox input:checked ~ .checkmark::after {
        display: block; }

.checkmark {
  position: absolute;
  top: 0.2rem;
  left: 0;
  height: 1.6rem;
  border: 1px solid #000;
  width: 1.6rem;
  background-color: transparent;
  border-radius: 0.2rem;
  overflow: hidden; }
  .checkmark::after {
    content: "";
    position: absolute;
    display: none;
    left: 0.4rem;
    top: 0.1rem;
    width: 0.4rem;
    height: 0.8rem;
    border: solid #fff;
    border-width: 0 0.28rem 0.28rem 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg); }

@media screen and (min-width: 1201px) {
  .p-brand-detail .m-contact-content > .btn,
  .p-service .m-contact-content > .btn,
  .p-home .m-contact-content > .btn {
    margin-left: auto; } }

.mn-cart {
  top: 0;
  right: 0;
  z-index: 101;
  width: 64rem;
  height: 100dvh;
  position: fixed;
  transition: 0.4s ease-in-out;
  background-color: white;
  transform: translateX(100%); }
  @media screen and (min-width: 1201px) {
    .mn-cart {
      box-shadow: 0 0.8rem 2rem 0 rgba(0, 0, 0, 0.45); } }
  @media screen and (max-width: 576px) {
    .mn-cart {
      width: 100%; } }
  .mn-cart-nav {
    height: 100dvh; }
  .mn-cart-heading {
    gap: 1.6rem;
    padding: 2.4rem;
    display: flex;
    align-items: center;
    border-bottom: 0.1rem solid rgba(152, 162, 179, 0.4); }
    @media screen and (max-width: 576px) {
      .mn-cart-heading {
        padding: 1.6rem 1.2rem; } }
  .mn-cart-title > img {
    width: 2.7rem;
    user-select: none;
    object-fit: cover; }
  .mn-cart-title_desc span {
    color: white;
    user-select: none;
    line-height: 150%;
    border-radius: 50%;
    width: 2.8rem;
    height: 2.8rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    background-color: #006bce; }
  .mn-cart-title, .mn-cart-title_desc {
    column-gap: 0.8rem;
    display: flex;
    align-items: center; }
  .mn-cart-close {
    cursor: pointer;
    user-select: none;
    width: 2rem;
    height: 2rem; }
    .mn-cart-close img {
      width: 100%;
      object-fit: cover; }
  .mn-cart-action {
    gap: 2.4rem;
    padding: 2.4rem;
    margin-top: auto;
    display: flex;
    align-items: center;
    border-top: 0.1rem solid #006bce;
    box-shadow: 0 -0.2rem 0.6rem 0 rgba(0, 0, 0, 0.3); }
    @media screen and (max-width: 576px) {
      .mn-cart-action {
        gap: 1.2rem;
        padding: 1.2rem; } }
  .mn-cart-product {
    row-gap: 0.6rem;
    min-width: 15.8rem; }
    @media screen and (max-width: 1200px) {
      .mn-cart-product {
        row-gap: 0.8rem; } }
    .mn-cart-product .text-14 {
      line-height: 120%; }
    .mn-cart-product .amount {
      line-height: 150%;
      color: #006bce; }
  .mn-cart-button {
    gap: 1.6rem;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center; }
    .mn-cart-button .btn {
      font-size: 1.6rem !important;
      width: calc(100% / 2 - 0.8rem);
      padding: 1.2rem 1.6rem !important;
      box-shadow: 0 0.4rem 0.4rem 0 rgba(0, 0, 0, 0.25); }
      @media screen and (max-width: 576px) {
        .mn-cart-button .btn {
          padding: 0.8rem !important; } }
  .mn-cart-delete {
    margin-left: auto; }
    .mn-cart-delete .btn {
      font-size: 1.8rem; }
  .mn-cart-list {
    width: 100%;
    display: flex;
    overflow: hidden auto;
    flex-direction: column; }
    .mn-cart-list:has(.mn-cart-item > p) {
      height: 100%; }
  .mn-cart-item {
    height: inherit;
    padding: 0 !important; }
    .mn-cart-item > p {
      height: 100%;
      font-size: 2rem;
      font-weight: 700;
      text-align: center;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center; }
      @media only screen and (max-width: 1200px) {
        .mn-cart-item > p {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .mn-cart-item > p {
          font-size: 1.6rem; } }
  .mn-cart-box {
    gap: 2.4rem;
    padding: 2.4rem;
    position: relative;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 1200px) {
      .mn-cart-box {
        gap: 1.6rem; } }
    .mn-cart-box .inner-close {
      top: 0.8rem;
      right: 0.8rem;
      width: 2rem;
      height: 2rem;
      position: absolute;
      border-radius: 50%;
      transition: 0.4s ease-in-out; }
      @media screen and (min-width: 1201px) {
        .mn-cart-box .inner-close:hover {
          background-color: #a00; }
          .mn-cart-box .inner-close:hover img {
            filter: brightness(0) invert(1); } }
      @media screen and (max-width: 767px) {
        .mn-cart-box .inner-close {
          top: 0.8rem;
          right: 0.8rem; } }
  .mn-cart-img {
    flex-shrink: 0;
    overflow: hidden;
    user-select: none;
    width: 10rem;
    height: 10rem;
    border-radius: 0.8rem; }
    @media screen and (min-width: 1201px) {
      .mn-cart-img:hover img {
        transform: scale(1.05); } }
    .mn-cart-img img {
      object-fit: cover;
      transition: 0.4s ease-in-out;
      margin: 0 !important;
      width: 100% !important;
      height: 100% !important; }
  .mn-cart-content {
    width: 100%;
    row-gap: 1.6rem; }
    .mn-cart-content .text-16 {
      transition: 0.4s ease-in-out;
      line-height: normal; }
      @media screen and (min-width: 1201px) {
        .mn-cart-content .text-16:hover {
          color: #006bce; } }
    .mn-cart-content .text-14 {
      line-height: 140%; }
  .mn-cart-value {
    column-gap: 1.2rem;
    display: flex;
    align-items: center;
    justify-content: space-between; }
  .mn-cart-price .price {
    display: flex;
    text-align: right;
    flex-direction: column; }
    .mn-cart-price .price ins {
      font-weight: 700;
      line-height: 150%;
      text-decoration: unset; }
    .mn-cart-price .price del {
      font-size: 1.4rem; }

.cartmn {
  display: flex;
  flex-direction: column;
  height: calc(100dvh - 7.7rem); }
  .cartmn .cart-empty {
    font-size: 2rem;
    height: inherit;
    font-weight: 600;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; }
    @media only screen and (max-width: 1200px) {
      .cartmn .cart-empty {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .cartmn .cart-empty {
        font-size: 1.6rem; } }
  .cartmn ul.product_list_widget li a.remove {
    transition: 0.4s ease-in-out; }
    .cartmn ul.product_list_widget li a.remove:hover img {
      filter: brightness(0) invert(1); }
  .cartmn ul.product_list_widget li img {
    margin: 0;
    background-color: transparent !important; }

.cart-box .mn-cart {
  height: auto;
  width: 100%;
  box-shadow: unset;
  transform: unset;
  position: relative;
  background: transparent;
  z-index: 1; }
  .cart-box .mn-cart input[type="number"]::-webkit-inner-spin-button,
  .cart-box .mn-cart input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0; }
  .cart-box .mn-cart input[type="number"] {
    -moz-appearance: textfield; }

.cart-box .mn-cart-nav {
  height: auto; }
  .cart-box .mn-cart-nav .mn-cart-list {
    height: auto; }

.cart-box .mn-cart-action {
  display: none; }

.cart-box .mn-cart-heading {
  display: none; }

.cart-box .mn-cart-list {
  margin-bottom: 2.4rem; }

.pop-success .popup-main {
  max-width: 152rem;
  width: 90%; }

.menu-search-box {
  width: 100%;
  row-gap: 0;
  padding: 2.4rem;
  box-shadow: 0 0.8rem 1.2rem 0 rgba(48, 48, 48, 0.1);
  -webkit-box-shadow: 0 0.8rem 1.2rem 0 rgba(48, 48, 48, 0.1);
  margin-left: auto;
  background: white;
  border-radius: 0 0 1.2rem 1.2rem; }
  .menu-search-box .form {
    margin-bottom: 0; }
    .menu-search-box .form > .form-group {
      padding: 0 calc(var(--cg) / 2); }

.popup-search .menu-search-list {
  max-height: 45rem;
  overflow: hidden auto; }
  .popup-search .menu-search-list:has(.menu-search-item) {
    margin-top: 2.4rem; }

.menu-search-item:not(:last-child) {
  margin-bottom: 1.2rem;
  padding-bottom: 1.2rem;
  border-bottom: 0.1rem solid #f0f0f0; }

.menu-search-block {
  column-gap: 1.2rem;
  display: flex;
  align-items: center; }

.menu-search-img {
  flex-shrink: 0;
  overflow: hidden;
  width: 8rem;
  height: 8rem;
  border-radius: 0.4rem;
  background-color: white; }

.menu-search-content {
  row-gap: 1.6rem; }
  .menu-search-content .tt {
    color: #232323;
    transition: 0.4s ease-in-out; }
  .menu-search-content > * {
    font-size: 1.8rem !important; }

.title-64 {
  font-size: 6.4rem; }
  @media only screen and (max-width: 1200px) {
    .title-64 {
      font-size: 3.9rem; } }
  @media only screen and (max-width: 800px) {
    .title-64 {
      font-size: 2.9rem; } }

.title-48 {
  font-size: 4.8rem; }
  @media only screen and (max-width: 1200px) {
    .title-48 {
      font-size: 4.3rem; } }
  @media only screen and (max-width: 800px) {
    .title-48 {
      font-size: 3.3rem; } }

.title-40 {
  font-size: 4rem; }
  @media only screen and (max-width: 1200px) {
    .title-40 {
      font-size: 3.5rem; } }
  @media only screen and (max-width: 800px) {
    .title-40 {
      font-size: 2.7rem; } }

.title-36 {
  font-size: 3.6rem; }
  @media only screen and (max-width: 1200px) {
    .title-36 {
      font-size: 3.1rem; } }
  @media only screen and (max-width: 800px) {
    .title-36 {
      font-size: 2.6rem; } }

.title-32 {
  font-size: 3.2rem; }
  @media only screen and (max-width: 1200px) {
    .title-32 {
      font-size: 2.7rem; } }
  @media only screen and (max-width: 800px) {
    .title-32 {
      font-size: 2.2rem; } }

.title-28 {
  font-size: 2.8rem; }
  @media only screen and (max-width: 1200px) {
    .title-28 {
      font-size: 2.4rem; } }
  @media only screen and (max-width: 800px) {
    .title-28 {
      font-size: 2.1rem; } }

.title-26 {
  font-size: 2.6rem; }
  @media only screen and (max-width: 1200px) {
    .title-26 {
      font-size: 2.2rem; } }
  @media only screen and (max-width: 800px) {
    .title-26 {
      font-size: 1.9rem; } }

.title-24 {
  font-size: 2.4rem; }
  @media only screen and (max-width: 1200px) {
    .title-24 {
      font-size: 2rem; } }
  @media only screen and (max-width: 800px) {
    .title-24 {
      font-size: 1.7rem; } }

.text-20 {
  font-size: 2rem; }
  @media only screen and (max-width: 1200px) {
    .text-20 {
      font-size: 1.8rem; } }
  @media only screen and (max-width: 800px) {
    .text-20 {
      font-size: 1.6rem; } }

.text-18 {
  font-size: 1.8rem; }
  @media only screen and (max-width: 1200px) {
    .text-18 {
      font-size: 1.6rem; } }
  @media only screen and (max-width: 800px) {
    .text-18 {
      font-size: 1.5rem; } }

.text-16 {
  font-size: 2rem; }
  @media only screen and (max-width: 1200px) {
    .text-16 {
      font-size: 1.8rem; } }
  @media only screen and (max-width: 800px) {
    .text-16 {
      font-size: 1.6rem; } }

.text-14 {
  font-size: 1.6rem; }

.f-pri {
  font-family: var(--font-pri); }

.f-tt {
  font-family: var(--font-title); }

.f-desc {
  font-family: var(--font-desc); }

.fs-i {
  font-style: italic; }

.t-cap {
  text-transform: capitalize; }

.t-up {
  text-transform: uppercase; }

.t-center {
  text-align: center; }

.fw-900 {
  font-weight: 900; }

.fw-b {
  font-weight: bold; }

.fw-sb {
  font-weight: 600; }

.fw-m {
  font-weight: 500; }

.fw-n {
  font-weight: 400; }

.fw-t {
  font-weight: 300; }

.cl-white {
  color: white; }

.cl-text {
  color: #242424; }

.t-center {
  text-align: center; }

.swiper-pagination {
  margin: 3.2rem auto 0;
  transform: unset !important;
  position: static !important; }
  .swiper-pagination-bullet-active {
    background-color: #00a523; }

.swiper-button {
  user-select: none; }
  .swiper-button-prev {
    left: -6.8rem;
    transform: translateY(-50%) rotate(90deg); }
    @media screen and (max-width: 1650px) {
      .swiper-button-prev {
        left: -1.2rem; } }
  .swiper-button-next {
    right: -6.8rem;
    transform: translateY(-50%) rotate(-90deg); }
    @media screen and (max-width: 1650px) {
      .swiper-button-next {
        right: -1.2rem; } }
  .swiper-button-prev, .swiper-button-next {
    margin-top: 0;
    border-radius: 50%;
    position: absolute;
    width: 2.4rem;
    height: 2.4rem;
    background-color: white; }
    @media screen and (max-width: 1200px) {
      .swiper-button-prev, .swiper-button-next {
        display: none; } }
    .swiper-button-prev:after, .swiper-button-next:after {
      content: "";
      width: 1.2rem;
      height: 0.6rem;
      display: inline-block;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: top;
      background-image: url("../../assets/img/icons/icon-chevron.svg"); }

.c-compare {
  bottom: 0;
  left: 50%;
  width: 100%;
  z-index: 105;
  position: fixed;
  transition: 0.4s ease-in-out;
  transform: translate(-50%, 100%); }
  .c-compare.is-active {
    transform: translate(-50%, 0); }
  .c-compare-wrap {
    filter: drop-shadow(0 0.8rem 2.4rem rgba(0, 0, 0, 0.05)); }
  .c-compare-row {
    margin: 0;
    overflow: hidden;
    background-color: white;
    border: 0.1rem solid #00a523; }
  .c-compare-col:first-child {
    padding: 2.4rem; }
  @media screen and (min-width: 577px) {
    .c-compare-col:has(.c-compare-img)#item-1 {
      padding: 0 1.2rem 0 2.4rem; }
    .c-compare-col:has(.c-compare-img)#item-2 {
      padding: 0 1.2rem; }
    .c-compare-col:has(.c-compare-img)#item-3 {
      padding: 0 2.4rem 0 1.2rem; } }
  .c-compare-col:last-child {
    margin-top: 2.4rem; }
    @media screen and (max-width: 767px) {
      .c-compare-col:last-child {
        margin-top: 1.2rem; } }
  .c-compare-box {
    position: relative;
    gap: 0.8rem 1.2rem;
    display: flex;
    align-items: center;
    border-radius: 0.5rem;
    justify-content: center; }
    @media screen and (max-width: 1024px) {
      .c-compare-box {
        text-align: center;
        flex-direction: column; } }
    @media screen and (min-width: 577px) {
      .c-compare-box:has(.c-compare-img) {
        border: 0.1rem solid #dadada; } }
  .c-compare-img {
    display: block;
    max-width: 20rem;
    user-select: none; }
    .c-compare-img img {
      width: 100%;
      object-fit: cover; }
  .c-compare-content .text-20 {
    transition: 0.4s ease-in-out; }
    @media screen and (min-width: 1201px) {
      .c-compare-content .text-20:hover {
        color: #db1f26; } }
    @media screen and (max-width: 576px) {
      .c-compare-content .text-20 {
        font-size: 1.2rem; } }
  .c-compare-empty {
    cursor: pointer; }
    @media screen and (max-width: 576px) {
      .c-compare-empty {
        row-gap: 0.8rem; } }
    .c-compare-empty .inner {
      margin: 0 auto;
      width: 8rem;
      height: 8rem;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      border-radius: 0.8rem;
      border: 0.2rem dashed #7b7b7b; }
      @media screen and (max-width: 1024px) {
        .c-compare-empty .inner {
          width: 4.8rem;
          height: 4.8rem; } }
    .c-compare-empty .plusminus {
      flex-shrink: 0;
      display: block;
      user-select: none;
      position: relative;
      width: 3.2rem;
      height: 3.2rem; }
      @media screen and (max-width: 1200px) {
        .c-compare-empty .plusminus {
          width: 2rem;
          height: 2rem; } }
      .c-compare-empty .plusminus:before, .c-compare-empty .plusminus:after {
        content: "";
        top: 50%;
        left: 0;
        width: 100%;
        height: 0.3rem;
        display: block;
        position: absolute;
        border-radius: 1rem;
        transition: 0.4s ease-in-out;
        background-color: #131313; }
      .c-compare-empty .plusminus::before {
        transform: translateY(-50%); }
      .c-compare-empty .plusminus::after {
        transform: translateY(-50%) rotate(90deg); }
    .c-compare-empty .text-16 {
      color: #7b7b7b; }
      @media screen and (max-width: 576px) {
        .c-compare-empty .text-16 {
          font-size: 1.2rem; } }
  .c-compare-close {
    top: 0;
    right: 0;
    z-index: 3;
    cursor: pointer;
    position: absolute;
    width: 4rem;
    height: 4rem; }
    @media screen and (max-width: 576px) {
      .c-compare-close {
        width: 3.2rem;
        height: 3.2rem; } }
    .c-compare-close img {
      width: 100%;
      object-fit: cover; }
  .c-compare-action {
    width: 100%;
    gap: 1.2rem 2.4rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    border-top: 0.1rem solid #dadada; }
    @media screen and (max-width: 1200px) {
      .c-compare-action {
        gap: 1.2rem; } }
    @media screen and (max-width: 576px) {
      .c-compare-action > * {
        width: calc(100% / 2 - 0.6rem) !important; } }
    .c-compare-action .link {
      text-align: center;
      transition: 0.4s ease-in-out; }
      @media screen and (min-width: 1201px) {
        .c-compare-action .link:hover {
          color: #db1f26; } }
  .c-compare-box, .c-compare-action {
    height: 100%;
    padding: 2.4rem; }
    @media screen and (max-width: 1200px) {
      .c-compare-box, .c-compare-action {
        padding: 1.6rem; } }
    @media screen and (max-width: 576px) {
      .c-compare-box, .c-compare-action {
        padding: 0.8rem; } }
  .c-compare .icon-less {
    font-size: 1.8rem;
    padding: 1.2rem;
    cursor: pointer;
    color: #01752f;
    font-weight: 700;
    margin-left: auto;
    user-select: none;
    column-gap: 0.8rem;
    width: fit-content;
    transition: 0.4s ease-in-out;
    display: flex;
    align-items: center;
    background-color: white;
    border-radius: 0.8rem 0.8rem 0 0; }
    @media only screen and (max-width: 1200px) {
      .c-compare .icon-less {
        font-size: 1.6rem; } }
    @media only screen and (max-width: 800px) {
      .c-compare .icon-less {
        font-size: 1.5rem; } }
    @media screen and (min-width: 1201px) {
      .c-compare .icon-less:hover {
        color: #db1f26; } }
    @media screen and (max-width: 576px) {
      .c-compare .icon-less {
        padding: 0.8rem; } }

.p-compare .menu-search-box .form {
  margin: 0;
  row-gap: 1.6rem;
  flex-direction: column; }
  .p-compare .menu-search-box .form > .form-group {
    padding: 0;
    width: 100%; }

@keyframes opacityAni {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes spin {
  100% {
    transform: translate(-50%, -50%) rotate(360deg); } }

ul.page-numbers {
  gap: 1.6rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center; }
  ul.page-numbers li {
    border-radius: 50%;
    transition: 0.4s ease-in-out;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 3.2rem;
    height: 3.2rem; }
    ul.page-numbers li:not(:has(.prev)):not(:has(.next)) {
      border: 0.1rem solid rgba(36, 36, 36, 0.2); }
      @media screen and (min-width: 1201px) {
        ul.page-numbers li:not(:has(.prev)):not(:has(.next)):hover {
          background-color: #00a523; }
          ul.page-numbers li:not(:has(.prev)):not(:has(.next)):hover a {
            color: white; } }
    ul.page-numbers li:has(.current) {
      background-color: #00a523; }
      ul.page-numbers li:has(.current) span {
        color: white; }
    ul.page-numbers li a,
    ul.page-numbers li span {
      width: 100%;
      height: 100%;
      user-select: none;
      font-size: 1.4rem;
      transition: 0.4s ease-in-out;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center; }
  ul.page-numbers .prev {
    transform: rotate(90deg); }
  ul.page-numbers .next {
    transform: rotate(-90deg); }
  ul.page-numbers .prev,
  ul.page-numbers .next {
    user-select: none; }
    ul.page-numbers .prev img,
    ul.page-numbers .next img {
      width: 1.6rem;
      height: 0.8rem; }

.breadcrumb {
  padding: 4rem 0;
  background-color: white; }
  @media screen and (max-width: 1200px) {
    .breadcrumb {
      padding: 2.4rem 0; } }
  .breadcrumb-list {
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
  .breadcrumb-item {
    font-size: 2rem; }
    @media only screen and (max-width: 1200px) {
      .breadcrumb-item {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .breadcrumb-item {
        font-size: 1.6rem; } }
    .breadcrumb-item:not(:last-child)::after {
      content: ">";
      margin: 0 0.4rem;
      user-select: none;
      color: #242424; }
    @media screen and (min-width: 1201px) {
      .breadcrumb-item a:hover {
        color: #db1f26; } }
    .breadcrumb-item .text-14 {
      transition: 0.4s ease-in-out; }

.menu-aside {
  top: 0;
  bottom: 0;
  z-index: 101;
  display: flex;
  height: 100dvh;
  position: fixed;
  transition: 0.4s ease-in-out;
  flex-direction: column;
  background-color: white;
  border-right: 0.1rem solid rgba(118, 118, 118, 0.12); }
  @media screen and (min-width: 1201px) {
    .menu-aside {
      left: 0;
      width: 8rem;
      box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15); } }
  @media screen and (max-width: 1365.98px) {
    .menu-aside {
      transform: translateX(-100%); }
      .menu-aside.is-active {
        width: 33rem;
        transform: translateX(0); } }
  @media screen and (max-width: 1200px) {
    .menu-aside {
      right: 0;
      transform: translateX(100%); } }
  .menu-aside.is-active, .menu-aside:hover {
    width: 33rem; }
    .menu-aside.is-active .menu-aside-item > img, .menu-aside:hover .menu-aside-item > img {
      opacity: 1; }
    .menu-aside.is-active .menu-aside-cate, .menu-aside:hover .menu-aside-cate {
      border-radius: 0.5rem; }
      .menu-aside.is-active .menu-aside-cate span, .menu-aside:hover .menu-aside-cate span {
        opacity: 1;
        width: auto;
        max-width: unset;
        max-height: 3rem; }
        @media screen and (min-width: 1201px) {
          .menu-aside.is-active .menu-aside-cate span, .menu-aside:hover .menu-aside-cate span {
            transition: 0.4s ease-in-out 0.4s; } }
    .menu-aside.is-active .menu-aside-link span, .menu-aside:hover .menu-aside-link span {
      opacity: 1;
      width: auto;
      max-width: unset;
      max-height: 5rem; }
      @media screen and (min-width: 1201px) {
        .menu-aside.is-active .menu-aside-link span, .menu-aside:hover .menu-aside-link span {
          transition: 0.4s ease-in-out 0.4s; } }
    @media screen and (min-width: 1201px) {
      .menu-aside.is-active .menu-aside-info, .menu-aside:hover .menu-aside-info {
        padding: 1.6rem; } }
    @media screen and (min-width: 1201px) {
      .menu-aside.is-active .menu-aside-info_phone .desc, .menu-aside:hover .menu-aside-info_phone .desc {
        opacity: 1;
        width: auto;
        max-width: unset;
        max-height: 6.4rem;
        pointer-events: auto;
        transition: 0.4s ease-in-out 0.4s; } }
    .menu-aside.is-active .menu-aside-info_chat, .menu-aside:hover .menu-aside-info_chat {
      width: 100%;
      margin-left: 0;
      padding: 1.6rem;
      border-radius: 1.6rem; }
      .menu-aside.is-active .menu-aside-info_chat .box, .menu-aside:hover .menu-aside-info_chat .box {
        margin-left: 0;
        pointer-events: auto; }
        .menu-aside.is-active .menu-aside-info_chat .box .text-20, .menu-aside:hover .menu-aside-info_chat .box .text-20 {
          opacity: 1;
          width: auto;
          max-width: unset;
          max-height: 4rem; }
          @media screen and (min-width: 1201px) {
            .menu-aside.is-active .menu-aside-info_chat .box .text-20, .menu-aside:hover .menu-aside-info_chat .box .text-20 {
              transition: 0.4s ease-in-out 0.4s; } }
        .menu-aside.is-active .menu-aside-info_chat .box img, .menu-aside:hover .menu-aside-info_chat .box img {
          margin: 0;
          width: 5.8rem; }
      .menu-aside.is-active .menu-aside-info_chat .list, .menu-aside:hover .menu-aside-info_chat .list {
        width: auto;
        opacity: 1;
        max-width: unset;
        position: static;
        max-height: 30rem; }
        @media screen and (min-width: 1201px) {
          .menu-aside.is-active .menu-aside-info_chat .list, .menu-aside:hover .menu-aside-info_chat .list {
            pointer-events: auto;
            transition: 0.4s ease-in-out 0.4s; } }
  .menu-aside-icon {
    padding: 1rem 1.6rem 0; }
  .menu-aside-cate {
    height: 4.8rem;
    color: white;
    font-size: 2rem;
    margin: 0 auto;
    cursor: pointer;
    font-weight: 600;
    user-select: none;
    border-radius: 50%;
    transition: 0.4s ease-in-out;
    display: flex;
    align-items: center;
    padding: 0.8rem 1.6rem;
    text-transform: uppercase;
    background-color: #006bce; }
    @media only screen and (max-width: 1200px) {
      .menu-aside-cate {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .menu-aside-cate {
        font-size: 1.6rem; } }
    .menu-aside-cate img {
      width: 2.4rem;
      flex-shrink: 0;
      height: 1.6rem;
      user-select: none; }
    .menu-aside-cate span {
      width: 0;
      opacity: 0;
      max-width: 0;
      max-height: 2.4rem;
      margin-left: 0.8rem; }
  .menu-aside-list {
    height: 100%;
    display: flex;
    row-gap: 2.4rem;
    margin-top: 2.4rem;
    flex-direction: column; }
  .menu-aside-item {
    padding: 0 2.8rem;
    display: flex;
    align-items: center;
    justify-content: space-between; }
    @media screen and (min-width: 1201px) {
      .menu-aside-item:hover > img {
        transform: rotate(-90deg); }
      .menu-aside-item:hover > .child {
        opacity: 1;
        transform: unset;
        pointer-events: auto; } }
    .menu-aside-item > img {
      transition: 0.4s ease-in-out; }
    .menu-aside-item.is-active > .child {
      opacity: 1;
      transform: unset;
      left: 0 !important;
      pointer-events: auto; }
  .menu-aside-back {
    column-gap: 1.2rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    justify-content: stretch;
    padding: 1.2rem !important;
    border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1); }
    @media screen and (min-width: 1201px) {
      .menu-aside-back {
        display: none; } }
    .menu-aside-back span {
      font-weight: 700;
      font-size: 1.6rem; }
  .menu-aside-bg {
    padding: 1.2rem; }
    .menu-aside-bg .img {
      display: block;
      position: relative;
      padding-top: calc(172 / 264 * 100%); }
      .menu-aside-bg .img img {
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        transform: translate(-50%, -50%); }
  @media screen and (min-width: 1201px) {
    .menu-aside-back {
      display: none; } }
  .menu-aside-link {
    font-size: 2rem;
    font-weight: 600;
    column-gap: 1.6rem;
    line-height: normal;
    transition: 0.4s ease-in-out;
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 1200px) {
      .menu-aside-link {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .menu-aside-link {
        font-size: 1.6rem; } }
    @media screen and (min-width: 1201px) {
      .menu-aside-link:hover {
        color: #db1f26; } }
    @media screen and (min-width: 1201px) {
      .menu-aside-link span {
        width: 0;
        opacity: 0;
        max-width: 0;
        max-height: 2.4rem; } }
    .menu-aside-link img {
      flex-shrink: 0;
      user-select: none;
      width: 2rem;
      height: 2rem; }
  .menu-aside-info {
    margin-top: auto; }
    @media screen and (min-width: 1201px) {
      .menu-aside-info {
        padding: 0.4rem;
        transition: 0.4s ease-in-out; } }
    @media screen and (max-width: 1200px) {
      .menu-aside-info {
        padding: 1.6rem; } }
    .menu-aside-info_phone {
      display: flex;
      align-items: center; }
      .menu-aside-info_phone img {
        z-index: 1;
        width: 7.2rem;
        height: 6.4rem;
        user-select: none;
        object-fit: cover;
        position: relative; }
      .menu-aside-info_phone .desc {
        margin-left: -2.4rem; }
        @media screen and (min-width: 1201px) {
          .menu-aside-info_phone .desc {
            width: 0;
            opacity: 0;
            max-width: 0;
            max-height: 4.8rem;
            pointer-events: none; } }
        @media screen and (max-width: 1200px) {
          .menu-aside-info_phone .desc {
            opacity: 1;
            width: auto;
            max-width: unset;
            max-height: 6.4rem; } }
        .menu-aside-info_phone .desc > * {
          position: relative; }
        .menu-aside-info_phone .desc .text-14 {
          padding: 0.4rem 1rem 0.4rem 2.4rem; }
          .menu-aside-info_phone .desc .text-14::before {
            content: "";
            top: 0;
            left: 0;
            z-index: -1;
            width: 100%;
            height: 100%;
            position: absolute; }
          .menu-aside-info_phone .desc .text-14:first-child {
            color: #db1f26;
            transition: 0.4s ease-in-out; }
            @media screen and (min-width: 1201px) {
              .menu-aside-info_phone .desc .text-14:first-child:hover {
                color: #006bce; } }
            .menu-aside-info_phone .desc .text-14:first-child::before {
              transform: skew(20deg);
              border: 0.1rem solid #db1f26; }
          .menu-aside-info_phone .desc .text-14:last-child {
            color: white;
            width: fit-content; }
            .menu-aside-info_phone .desc .text-14:last-child::before {
              transform: skew(-20deg);
              background-color: #db1f26; }
    .menu-aside-info_chat {
      display: flex;
      margin: 0 auto;
      row-gap: 1.6rem;
      flex-direction: column;
      border: 0.1rem solid #006bce; }
      @media screen and (min-width: 1201px) {
        .menu-aside-info_chat {
          width: 6.2rem;
          border-radius: 50%;
          transition: 0.4s ease-in-out;
          padding: 1.8rem 0.4rem; } }
      @media screen and (max-width: 1200px) {
        .menu-aside-info_chat {
          width: 100%;
          margin-left: 0;
          padding: 1.6rem;
          border-radius: 1.6rem; } }
      .menu-aside-info_chat .box {
        column-gap: 2.4rem;
        margin-left: 0.6rem;
        pointer-events: none;
        display: flex;
        align-items: center; }
        .menu-aside-info_chat .box img {
          width: 4.2rem;
          flex-shrink: 0;
          margin: 0 auto;
          object-fit: cover;
          user-select: none;
          transition: 0.4s ease-in-out; }
        @media screen and (min-width: 1201px) {
          .menu-aside-info_chat .box .text-20 {
            width: 0;
            opacity: 0;
            max-width: 0;
            max-height: 2.4rem; } }
      .menu-aside-info_chat .list {
        display: flex;
        row-gap: 1.6rem;
        flex-direction: column; }
        @media screen and (min-width: 1201px) {
          .menu-aside-info_chat .list {
            width: 0;
            opacity: 0;
            max-width: 0;
            max-height: 0;
            position: absolute;
            pointer-events: none; } }
        .menu-aside-info_chat .list-box {
          column-gap: 2.4rem;
          display: flex;
          align-items: center; }
        .menu-aside-info_chat .list-img {
          min-width: 5.8rem; }
          .menu-aside-info_chat .list-img img {
            margin: 0 auto;
            user-select: none;
            object-fit: cover;
            width: 3.2rem;
            height: 3.2rem; }
        @media screen and (min-width: 1201px) {
          .menu-aside-info_chat .list .text-20 {
            transition: 0.4s ease-in-out; }
            .menu-aside-info_chat .list .text-20:hover {
              color: #db1f26; } }
  .menu-aside .menu-aside-item > img {
    opacity: 0; }
  .menu-aside .child {
    top: 0;
    opacity: 0;
    z-index: 5;
    display: flex;
    height: 100dvh;
    row-gap: 2.4rem;
    max-width: 33rem;
    min-width: 33rem;
    width: max-content;
    position: absolute;
    transition: 0.4s ease-in-out;
    flex-direction: column;
    background-color: white;
    left: calc(100% + 0.1rem);
    border-right: 0.1rem solid rgba(118, 118, 118, 0.12); }
    @media screen and (min-width: 1201px) {
      .menu-aside .child {
        padding: 3.2rem 0;
        pointer-events: none;
        transform: translateX(-1rem); }
        .menu-aside .child .child-1 {
          left: calc(100% + 0.2rem); } }
    @media screen and (max-width: 1200px) {
      .menu-aside .child .menu-aside-item {
        padding: 0 1.2rem; } }
    .menu-aside .child .menu-aside-item:not(.menu-aside-back) > img {
      transform: rotate(-90deg); }

@media screen and (min-width: 1201px) {
  .overlay-menu:has(+ .menu-aside:hover) {
    opacity: 1;
    visibility: visible;
    pointer-events: auto; } }

.header {
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
  height: auto;
  position: fixed;
  transition: 0.4s ease-in-out;
  background-color: white; }
  @media screen and (min-width: 1201px) {
    .header.is-fixed {
      box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15);
      transform: translateY(-10rem); }
      .header.is-fixed .header-main {
        padding: 1.1rem 0; } }
  @media screen and (min-width: 1201px) {
    .header.is-fixed .mn-cart,
    .header.is-fixed .overlay,
    .header.is-fixed .overlay-cart,
    .header.is-fixed .header-nav {
      top: calc(var(--height-hd) - 8rem); } }
  .header-top {
    gap: 6.4rem;
    padding: 2rem 0;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 1200px) {
      .header-top {
        gap: 1.2rem;
        padding: 2.133rem 0;
        justify-content: space-between; } }
    @media screen and (max-width: 767px) {
      .header-top {
        gap: 0.8rem; } }
    .header-top-action {
      gap: 1.6rem;
      user-select: none;
      display: flex;
      align-items: center; }
      @media screen and (max-width: 767px) {
        .header-top-action {
          gap: 1.2rem; } }
      @media screen and (min-width: 1201px) {
        .header-top-action .header-main-compare,
        .header-top-action .header-main-doc,
        .header-top-action .header-main-cart {
          display: none; } }
      .header-top-action .header-main-compare .menu-item,
      .header-top-action .header-main-doc .menu-item,
      .header-top-action .header-main-cart .menu-item {
        display: block;
        width: 2rem;
        height: 2rem;
        position: relative; }
        @media screen and (max-width: 1200px) {
          .header-top-action .header-main-compare .menu-item,
          .header-top-action .header-main-doc .menu-item,
          .header-top-action .header-main-cart .menu-item {
            width: 2.4rem;
            height: 2.4rem; } }
    .header-top-phone {
      max-width: 6.3rem; }
      @media screen and (max-width: 1200px) {
        .header-top-phone {
          display: none; } }
    .header-top-sign {
      position: relative;
      width: 4.5rem;
      height: 4.5rem; }
      @media screen and (max-width: 1200px) {
        .header-top-sign {
          width: 2.4rem;
          height: 2.4rem; } }
      .header-top-sign:hover .user-info {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translate(-50%, 0); }
      .header-top-sign .user {
        cursor: pointer; }
        .header-top-sign .user-info {
          top: 100%;
          left: 50%;
          opacity: 0;
          z-index: 10;
          width: 28rem;
          padding: 1.2rem;
          visibility: hidden;
          position: absolute;
          transition: 0.4s ease-in-out;
          pointer-events: none;
          border-radius: 0.5rem;
          background-color: white;
          transform: translate(-50%, 2rem);
          box-shadow: 0 0.8rem 2.4rem 0 rgba(149, 157, 165, 0.2); }
        .header-top-sign .user-action {
          display: flex;
          row-gap: 1.2rem;
          flex-direction: column; }
          .header-top-sign .user-action .text-m {
            font-size: 1.8rem;
            transition: 0.4s ease-in-out; }
            @media only screen and (max-width: 1200px) {
              .header-top-sign .user-action .text-m {
                font-size: 1.6rem; } }
            @media only screen and (max-width: 800px) {
              .header-top-sign .user-action .text-m {
                font-size: 1.5rem; } }
            @media screen and (min-width: 1201px) {
              .header-top-sign .user-action .text-m:hover {
                color: #db1f26; } }
    .header-top-search {
      width: 100%; }
      @media screen and (max-width: 1200px) {
        .header-top-search {
          display: none; } }
      .header-top-search form .form-label {
        padding: 0.9rem;
        column-gap: 1rem;
        transition: 0.4s ease-in-out;
        border-radius: 10rem;
        display: flex;
        align-items: center;
        flex-direction: unset;
        background-color: white;
        border: 0.1rem solid rgba(0, 0, 0, 0.2); }
        .header-top-search form .form-label:has(input:hover), .header-top-search form .form-label:has(input:focus) {
          border-color: #00a523; }
      .header-top-search form input {
        border: 0;
        padding: 0;
        height: 4rem;
        border-radius: 0;
        background-color: transparent; }
      .header-top-search form button {
        flex-shrink: 0;
        user-select: none;
        width: 4rem;
        height: 4rem;
        border-radius: 50%;
        transition: 0.4s ease-in-out;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        background-color: #006bce; }
        @media screen and (min-width: 1201px) {
          .header-top-search form button:hover {
            background-color: #00a523; } }
        .header-top-search form button img {
          object-fit: cover;
          width: 1.6rem;
          height: 1.6rem; }
    .header-top-fixed {
      left: 0;
      bottom: 0;
      gap: 2.4rem;
      width: 100%;
      z-index: 101;
      position: fixed;
      box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15);
      padding: 1.926rem;
      display: flex;
      align-items: center;
      background-color: white; }
      @media screen and (min-width: 1201px) {
        .header-top-fixed {
          display: none; } }
      .header-top-fixed > * {
        flex: 1; }
        .header-top-fixed > * .menu-item {
          margin: 0 auto; }
    .header-top-logo, .header-top-action {
      flex-shrink: 0; }
    .header-top-phone img, .header-top-sign img {
      width: 100%;
      object-fit: cover; }
  .header-main {
    position: relative;
    transition: 0.4s ease-in-out;
    display: flex;
    align-items: center; }
    @media screen and (min-width: 1201px) {
      .header-main {
        gap: 6.4rem;
        padding: 1.6rem 0; } }
  @media screen and (min-width: 1201px) and (max-width: 1550px) {
    .header-main {
      gap: 2.4rem; } }
    @media screen and (min-width: 1201px) {
        .header-main::before {
          content: "";
          top: 0;
          left: 50%;
          z-index: -1;
          height: 100%;
          position: absolute;
          width: calc(100vw + 3rem);
          transform: translateX(-50%);
          background-color: #006bce; } }
    @media screen and (max-width: 1200px) {
      .header-main {
        top: 0;
        right: 0;
        bottom: 0;
        z-index: 101;
        width: 32rem;
        height: 100dvh;
        position: fixed;
        flex-direction: column;
        background-color: white;
        transition: 0.6s ease-in-out;
        transform: translateX(100%); }
        .header-main.is-active {
          transform: translateX(0); } }
    @media screen and (max-width: 1200px) {
      .header-main-cate {
        width: 100%;
        padding: 1.5rem;
        border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1); } }
    .header-main-cate .cate-btn {
      cursor: pointer;
      user-select: none;
      column-gap: 1.6rem;
      display: flex;
      align-items: center;
      border-radius: 0.8rem;
      padding: 0.8rem 1.6rem;
      background-color: white; }
      @media screen and (max-width: 1200px) {
        .header-main-cate .cate-btn {
          background-color: #006bce; } }
      .header-main-cate .cate-btn-bar {
        flex-shrink: 0;
        border-radius: 50%;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        width: 3.2rem;
        height: 3.2rem;
        background-color: #006bce; }
        @media screen and (max-width: 1200px) {
          .header-main-cate .cate-btn-bar {
            background-color: white; } }
        .header-main-cate .cate-btn-bar img {
          width: 1.6rem;
          height: 1.1rem;
          object-fit: cover; }
          @media screen and (max-width: 1200px) {
            .header-main-cate .cate-btn-bar img {
              filter: brightness(0) saturate(100%) invert(17%) sepia(64%) saturate(6726%) hue-rotate(199deg) brightness(102%) contrast(100%); } }
      .header-main-cate .cate-btn span {
        font-size: 2rem;
        font-weight: 600;
        text-transform: uppercase; }
        @media screen and (max-width: 1550px) {
          .header-main-cate .cate-btn span {
            font-size: 1.6rem; } }
        @media screen and (max-width: 1200px) {
          .header-main-cate .cate-btn span {
            color: white; } }
    .header-main-btn {
      width: 100%;
      padding: 1.2rem;
      column-gap: 1.2rem;
      display: flex;
      align-items: center;
      border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1); }
      @media screen and (min-width: 1201px) {
        .header-main-btn {
          display: none; } }
      .header-main-btn .btn {
        width: calc(100% / 2 - 0.6rem); }
    .header-main-action {
      gap: 1.6rem;
      display: flex;
      align-items: center; }
      @media screen and (max-width: 1200px) {
        .header-main-action {
          display: none; } }
      .header-main-action .menu-item {
        cursor: pointer;
        user-select: none;
        border-radius: 50%;
        width: 4.5rem;
        height: 4.5rem;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        background-color: white; }
        @media screen and (min-width: 1201px) {
          .header-main-action .menu-item:hover img {
            transform: scale(1.2); } }
        .header-main-action .menu-item img {
          width: 2.5rem;
          flex-shrink: 0;
          object-fit: cover;
          transition: 0.4s ease-in-out; }
    .header-main-doc .mn-cart-button {
      width: 100%; }
      .header-main-doc .mn-cart-button .btn {
        width: 100%; }
    .header-main-doc .carts-counter {
      column-gap: 0.71rem; }
      .header-main-doc .carts-counter input {
        width: 1.8rem !important; }
    .header-main-doc.is-active .mn-cart, .header-main-cart.is-active .mn-cart {
      transform: translateX(0); }
  @media screen and (min-width: 1201px) {
    .header-nav {
      margin: 0 auto; } }
  @media screen and (max-width: 1200px) {
    .header-nav {
      width: 100%; } }
  .header-nav .menu {
    display: flex;
    align-items: center; }
    @media screen and (min-width: 1201px) {
      .header-nav .menu {
        margin: 0 -1.2rem; } }
    @media screen and (max-width: 1200px) {
      .header-nav .menu {
        width: 100%;
        flex-direction: column; } }
    .header-nav .menu-item {
      padding: 0 1.2rem; }
      @media screen and (max-width: 1200px) {
        .header-nav .menu-item {
          width: 100%;
          padding: 1.5rem;
          border-bottom: 0.1rem solid rgba(0, 0, 0, 0.1); } }
      .header-nav .menu-item.current-menu-item .menu-link::before {
        width: 100%; }
    .header-nav .menu-link {
      font-size: 2rem;
      font-weight: 600;
      line-height: normal;
      transition: 0.4s ease-in-out;
      position: relative;
      text-transform: uppercase; }
      @media screen and (min-width: 1201px) {
        .header-nav .menu-link {
          color: white; }
          .header-nav .menu-link:hover::before {
            left: 0;
            width: 100%; } }
      @media screen and (max-width: 1366px) {
        .header-nav .menu-link {
          font-size: 1.6rem; } }
      .header-nav .menu-link::before {
        content: "";
        right: 0;
        width: 0;
        height: 0.2rem;
        bottom: -0.5rem;
        position: absolute;
        border-radius: 1rem;
        transition: 0.4s ease-in-out;
        background-color: white; }
  .header .custom-logo-link {
    max-width: 41.8rem; }
    @media screen and (max-width: 1200px) {
      .header .custom-logo-link {
        max-width: 30rem; } }
    @media screen and (max-width: 767px) {
      .header .custom-logo-link {
        max-width: 24rem; } }
    @media screen and (max-width: 576px) {
      .header .custom-logo-link {
        max-width: 20rem; } }

.header-main-doc,
.header-main-cart {
  position: relative; }

.header-cart_number,
.header-quote_number {
  top: -1rem;
  right: -1rem;
  color: white;
  font-weight: 700;
  border-radius: 50%;
  position: absolute;
  width: 2.4rem;
  height: 2.4rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-color: #db1f26; }
  @media screen and (max-width: 1200px) {
    .header-cart_number,
    .header-quote_number {
      top: -1.2rem;
      right: -1.2rem;
      font-size: 1.4rem;
      width: 2rem;
      height: 2rem; } }

.lang {
  cursor: pointer;
  user-select: none;
  position: relative; }
  .lang:hover .lang-head > img {
    transform: rotate(180deg); }
  .lang:hover .lang-child {
    opacity: 1;
    pointer-events: auto; }
  @media screen and (min-width: 1201px) {
    .lang-head {
      border-radius: 10rem;
      padding: 0.8rem 1.2rem;
      background-color: rgba(9, 37, 62, 0.1); } }
  .lang-head-icon > img {
    width: 2.4rem;
    height: 2.4rem; }
    @media screen and (max-width: 767px) {
      .lang-head-icon > img {
        width: 2rem;
        height: 2rem; } }
  .lang-head-icon > * {
    font-weight: 600;
    font-size: 1.4rem; }
  .lang-head > img {
    width: 0.8rem;
    height: 0.4rem; }
  .lang-head img {
    object-fit: cover;
    transition: 0.4s ease-in-out; }
  .lang-head, .lang-head-icon {
    column-gap: 0.4rem;
    display: flex;
    align-items: center; }
  .lang-child {
    left: 0;
    top: 100%;
    opacity: 0;
    z-index: 3;
    box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15);
    overflow: hidden;
    width: max-content;
    position: absolute;
    transition: 0.4s ease-in-out;
    pointer-events: none;
    border-radius: 0.5rem;
    background-color: white; }
    .lang-child-item {
      gap: 0.4rem;
      padding: 0.8rem;
      transition: 0.4s ease-in-out;
      display: flex;
      align-items: center; }
      @media screen and (min-width: 1201px) {
        .lang-child-item:hover {
          background-color: rgba(9, 37, 62, 0.1); } }
    .lang-child-link {
      font-weight: 600;
      font-size: 1.4rem; }

@media screen and (min-width: 1201px) {
  .menu-bar {
    display: none; } }

.menu-bar .menu-span span {
  width: 2.4rem;
  height: 0.2rem;
  display: block;
  user-select: none;
  margin-top: 0.4rem;
  transition: 0.4s ease-in-out;
  border-radius: 0.5rem;
  background-color: #242424; }
  .menu-bar .menu-span span:nth-child(1) {
    margin-top: 0; }

.menu-close-icon {
  width: 100%;
  padding: 1.2rem;
  border-bottom: 0.1rem solid #f0f0f0; }
  @media screen and (min-width: 1201px) {
    .menu-close-icon {
      display: none; } }
  .menu-close-icon img {
    margin-left: auto;
    width: 3.2rem;
    height: 3.2rem;
    filter: brightness(0) saturate(100%) invert(9%) sepia(3%) saturate(0%) hue-rotate(240deg) brightness(96%) contrast(99%); }

.footer {
  padding: 8rem 0;
  overflow: hidden;
  position: relative;
  background: linear-gradient(180deg, #009c3e 0%, #01752f 100%); }
  @media screen and (min-width: 1025px) {
    .footer-row {
      --rg: 15rem;
      --cg: 15rem; } }
  @media screen and (min-width: 1025px) and (max-width: 1366px) {
    .footer-row {
      --rg: 10rem;
      --cg: 10rem; } }
  @media screen and (max-width: 1024px) {
    .footer-col {
      width: 100%; } }
  .footer-left {
    max-width: 61.4rem; }
    @media screen and (max-width: 1024px) {
      .footer-left {
        max-width: 100%; } }
    @media screen and (max-width: 1200px) {
      .footer-left-block {
        row-gap: 3.2rem; } }
    @media screen and (max-width: 767px) {
      .footer-left-block {
        row-gap: 2.4rem; } }
    .footer-left-list {
      max-width: 42.5rem; }
      @media screen and (max-width: 1024px) {
        .footer-left-list {
          max-width: 100%; } }
      @media screen and (max-width: 576px) {
        .footer-left-list {
          row-gap: 1.6rem; } }
    @media screen and (max-width: 767px) {
      .footer-left-box {
        row-gap: 2.4rem; } }
    .footer-left-box:not(:last-child) {
      padding-bottom: 4rem;
      border-bottom: 0.1rem solid rgba(255, 255, 255, 0.4); }
      @media screen and (max-width: 1200px) {
        .footer-left-box:not(:last-child) {
          padding-bottom: 3.2rem; } }
      @media screen and (max-width: 767px) {
        .footer-left-box:not(:last-child) {
          padding-bottom: 2.4rem; } }
    .footer-left-box .title-24 {
      line-height: normal; }
    .footer-left-box .desc {
      line-height: 150%; }
      @media screen and (max-width: 576px) {
        .footer-left-box .desc {
          font-size: 1.4rem; } }
    .footer-left-info {
      gap: 1.6rem;
      display: flex; }
      @media screen and (max-width: 576px) {
        .footer-left-info {
          gap: 0.8rem; } }
      .footer-left-info .text-16 {
        width: 100%;
        line-height: 200%; }
        @media screen and (max-width: 576px) {
          .footer-left-info .text-16 {
            line-height: 150%;
            font-size: 1.4rem; } }
        .footer-left-info .text-16 a {
          transition: 0.4s ease-in-out; }
          @media screen and (min-width: 1201px) {
            .footer-left-info .text-16 a:hover {
              color: #fae803; } }
      .footer-left-info img {
        flex-shrink: 0;
        user-select: none;
        width: 2.4rem;
        height: 2.4rem; }
        @media screen and (min-width: 577px) {
          .footer-left-info img {
            margin-top: 0.4rem; } }
    .footer-left form {
      width: 100%; }
      .footer-left form .form-wrap {
        gap: 2.4rem;
        flex-direction: unset;
        display: flex;
        align-items: center; }
        @media screen and (max-width: 576px) {
          .footer-left form .form-wrap {
            gap: 1.2rem; } }
      .footer-left form .form-group {
        width: 100%; }
      .footer-left form .form-action {
        flex-shrink: 0; }
        @media screen and (min-width: 1201px) {
          .footer-left form .form-action .btn {
            min-width: 16.8rem; } }
  @media screen and (max-width: 1200px) {
    .footer-right-box {
      row-gap: 3.2rem; } }
  @media screen and (max-width: 767px) {
    .footer-right-box {
      row-gap: 2.4rem;
      width: calc(100% / 2); } }
  .footer-right-box .text-20 {
    line-height: normal; }
    @media screen and (max-width: 576px) {
      .footer-right-box .text-20 {
        font-size: 1.4rem; } }
  .footer-right-img .img {
    display: block;
    user-select: none;
    max-width: 21.2rem; }
    .footer-right-img .img img {
      width: 100%;
      object-fit: cover; }
  .footer .menu {
    display: flex;
    row-gap: 4rem;
    flex-direction: column; }
    @media screen and (max-width: 1200px) {
      .footer .menu {
        row-gap: 3.2rem; } }
    @media screen and (max-width: 767px) {
      .footer .menu {
        row-gap: 2.4rem; } }
    @media screen and (max-width: 576px) {
      .footer .menu {
        row-gap: 1.6rem; } }
    .footer .menu-link {
      color: white;
      font-size: 2rem;
      transition: 0.4s ease-in-out;
      line-height: normal; }
      @media only screen and (max-width: 1200px) {
        .footer .menu-link {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .footer .menu-link {
          font-size: 1.6rem; } }
      @media screen and (min-width: 1201px) {
        .footer .menu-link:hover {
          color: #fae803; } }
      @media screen and (max-width: 576px) {
        .footer .menu-link {
          font-size: 1.4rem; } }
  .footer .custom-logo-link {
    max-width: 61.4rem; }
    @media screen and (max-width: 767px) {
      .footer .custom-logo-link {
        max-width: 40rem; } }
    @media screen and (max-width: 576px) {
      .footer .custom-logo-link {
        max-width: 28rem; } }

.btn {
  z-index: 3;
  display: flex;
  color: white;
  cursor: pointer;
  font-weight: 600;
  line-height: 1.2;
  column-gap: 1rem;
  user-select: none;
  text-align: center;
  position: relative;
  width: fit-content;
  align-items: center;
  transition: 0.4s ease-in-out;
  justify-content: center;
  font-size: 2rem !important;
  overflow: hidden !important;
  font-family: var(--font-pri);
  background-color: #00a523;
  border-radius: 0.8rem !important;
  border: 0.1rem solid transparent;
  padding: 1.2rem 3.2rem !important; }
  @media screen and (min-width: 1201px) {
    .btn:hover {
      color: white;
      border-color: #db1f26; }
      .btn:hover::before {
        left: 0;
        width: 100%; } }
  @media screen and (max-width: 1200px) {
    .btn {
      font-size: 1.6rem !important;
      padding: 1.3rem 2.4rem !important; } }
  .btn::before {
    content: "";
    top: 0;
    right: 0;
    width: 0;
    z-index: -1;
    height: 100%;
    position: absolute;
    transition: 0.4s ease-in-out;
    background-color: #db1f26; }
  .btn:after {
    top: 50% !important;
    left: 50% !important;
    right: unset !important;
    transform: translate(-50%, -50%); }
  .btn.loading:after {
    animation: spin 2s linear infinite; }
  .btn-center {
    margin: 0 auto; }
  .btn-pri {
    background-color: #006bce !important; }
  .btn-sec {
    color: #006bce;
    background-color: white;
    border-color: #006bce; }
  .btn-third {
    color: #00a523;
    border-radius: 0.4rem;
    border-color: #00a523;
    background-color: transparent; }
    @media screen and (min-width: 1201px) {
      .btn-third:hover {
        color: white; } }
  .btn-delete {
    color: #242424;
    padding: 0.8rem !important;
    font-size: 1.8rem !important;
    border: 0.1rem solid #bfbfbf; }
    @media screen and (min-width: 1201px) {
      .btn-delete:hover img {
        filter: brightness(0) invert(1); } }
  .btn span {
    line-height: normal; }
  .btn img {
    flex-shrink: 0;
    transition: 0.4s ease-in-out;
    width: 2.4rem;
    height: 2.4rem; }
  .btn .wpcf7-spinner {
    top: 50%;
    left: 50%;
    margin: 0 auto;
    position: absolute;
    transform: translate(-50%, -50%); }

.processing::before {
  margin: 0 !important; }

form .form-wrap {
  row-gap: 2.4rem; }

form .form-label {
  row-gap: 0.8rem; }

form .form-text {
  font-size: 2rem;
  font-weight: 600;
  line-height: 150%; }
  @media only screen and (max-width: 1200px) {
    form .form-text {
      font-size: 1.8rem; } }
  @media only screen and (max-width: 800px) {
    form .form-text {
      font-size: 1.6rem; } }
  form .form-text sup {
    color: #ef4444; }

form .form-group:has(.custom-input-file) {
  display: flex;
  row-gap: 1.2rem;
  flex-direction: column; }

form .form-wrap,
form .form-label {
  display: flex;
  flex-direction: column; }

@media screen and (min-width: 1201px) {
  form .form-action .btn {
    min-width: 25rem; } }

form input {
  height: 5rem;
  padding: 0.8rem 1.6rem; }
  @media screen and (max-width: 576px) {
    form input {
      height: 4.5rem; } }

form textarea {
  resize: none;
  height: 20rem;
  padding: 1.6rem; }

form input,
form textarea {
  border: 0;
  outline: 0;
  width: 100%;
  font-size: 2rem;
  font-weight: 400;
  color: #242424;
  transition: 0.4s ease-in-out;
  border-radius: 0.8rem;
  background-color: #f9fafb;
  font-family: var(--font-pri);
  border: 0.1rem solid #e5e5e5; }
  form input:hover, form input:focus,
  form textarea:hover,
  form textarea:focus {
    border-color: #242424; }
  form input::placeholder,
  form textarea::placeholder {
    color: #a3a3a3; }

.custom-input-file {
  height: 10rem;
  cursor: pointer;
  user-select: none;
  border-radius: 0.8rem;
  padding: 0.8rem 1.6rem;
  background-color: #f9fafb;
  border: 0.2rem dashed #e5e5e5; }
  .custom-input-file input {
    display: none; }
  .custom-input-file label {
    height: 100%;
    font-size: 2rem;
    display: block;
    cursor: pointer;
    font-weight: 600;
    text-align: center;
    align-content: center;
    text-transform: uppercase; }
    @media only screen and (max-width: 1200px) {
      .custom-input-file label {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .custom-input-file label {
        font-size: 1.6rem; } }

.g-recaptcha-wrap {
  padding: 0 !important; }

.wpcf7-form-control-wrap {
  width: 100%;
  display: block; }

.wpcf7-not-valid-tip {
  right: 0;
  z-index: 4;
  color: white;
  bottom: -2.2rem;
  padding: 0.4rem;
  font-size: 1.2rem;
  width: fit-content;
  position: absolute;
  border-radius: 0.5rem;
  background-color: red; }
  .wpcf7-not-valid-tip::before {
    content: "";
    width: 0;
    height: 0;
    bottom: 100%;
    right: 1.6rem;
    position: absolute;
    border-left: 0.5rem solid transparent;
    border-right: 0.5rem solid transparent;
    border-bottom: 0.5rem solid #ec1f26; }

.wpcf7-response-output {
  text-align: center;
  margin: 2rem 0 0 0 !important; }
  @media screen and (max-width: 1200px) {
    .wpcf7-response-output {
      font-size: 1.4rem !important;
      margin: 1.2rem 0 0 0 !important; } }

.select2-results {
  box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15);
  overflow: hidden;
  background-color: white;
  border-radius: 0 !important;
  border: 0.1rem solid white; }

.select2-container .select2-dropdown {
  border: 0;
  background-color: transparent; }

.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background-color: #db1f26; }

.form-group select {
  width: 100% !important;
  border-radius: 0.6rem;
  border: 0.1rem solid #d9d9d9;
  outline: none;
  background-color: #f9fafb;
  text-align: left;
  overflow: hidden;
  transition: 0.5s ease;
  font-size: 1.6rem;
  color: #2e2b24;
  font-weight: 400;
  line-height: 150%;
  cursor: pointer;
  height: 5rem;
  padding: 0.8rem 2.8rem 0.8rem 1.6rem; }
  .form-group select:focus {
    border-color: #2e2b24; }

.form-box {
  position: relative; }
  .form-box:has(select)::before {
    content: "";
    width: 1.2rem;
    height: 1.2rem;
    position: absolute;
    top: 70%;
    right: 2.4rem;
    transform: translateY(-50%);
    background: url(../img/icons/ic-down.svg);
    background-size: contain;
    background-repeat: no-repeat; }

.carts {
  padding: 8rem 0; }
  @media screen and (max-width: 768px) {
    .carts {
      padding: 4rem 0; } }
  .carts .title-w-desc {
    text-align: center; }
  .carts .carts-box {
    position: relative;
    gap: 0.8rem 1.6rem;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 1200px) {
      .carts .carts-box {
        column-gap: 1rem; } }
    @media screen and (max-width: 850px) {
      .carts .carts-box {
        align-items: baseline;
        flex-direction: column; } }
  .carts .carts-img {
    flex-shrink: 0;
    max-width: 9rem;
    user-select: none;
    border-radius: 0.4rem;
    background-color: white; }
    @media screen and (max-width: 850px) {
      .carts .carts-img {
        margin-left: auto; } }
  .carts .carts-content {
    display: flex;
    row-gap: 1.2rem;
    flex-direction: column-reverse; }
  .carts .quantity {
    display: flex;
    margin: 0 auto;
    user-select: none;
    width: fit-content;
    border-radius: 0.4rem; }
  .carts .carts-quantity_minus,
  .carts .carts-quantity_plus {
    padding: 0;
    cursor: pointer;
    border-radius: 0.4rem;
    width: 2.4rem;
    height: 2.4rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; }
  .carts .screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  .carts .carts-action {
    display: flex;
    gap: 2.4rem;
    justify-content: center;
    flex-wrap: wrap;
    row-gap: 0.8rem; }
    @media screen and (max-width: 480px) {
      .carts .carts-action {
        flex-direction: column; }
        .carts .carts-action .btn {
          width: 100%; } }
  .carts .total-cart {
    padding: 0.8rem 0;
    gap: 0.8rem 2.4rem;
    justify-content: flex-end;
    display: flex;
    align-items: center;
    flex-wrap: wrap; }
  .carts .count-total {
    font-size: 2rem;
    font-weight: 600;
    column-gap: 0.8rem;
    display: flex;
    align-items: center;
    justify-content: end; }
    .carts .count-total:first-child {
      min-width: 16rem; }
    .carts .count-total span {
      font-weight: 700;
      font-size: 2.4rem;
      color: #f23322; }
    .carts .count-total.total span {
      color: #1a7514; }

.carts-block {
  width: 100%;
  padding: 2.4rem;
  border-radius: 1.2rem;
  background-color: white;
  box-shadow: 0 0.8rem 1.2rem 0 rgba(48, 48, 48, 0.1);
  -webkit-box-shadow: 0 0.8rem 1.2rem 0 rgba(48, 48, 48, 0.1); }
  .carts-block .remove {
    transition: 0.3s;
    margin-left: auto; }
    .carts-block .remove > img {
      width: 100%;
      height: 100%;
      object-fit: contain; }
  .carts-block .carts-content {
    text-align: left;
    flex-direction: column; }
    @media screen and (max-width: 850px) {
      .carts-block .carts-content {
        gap: 2.4rem;
        flex-direction: row-reverse; } }
  .carts-block table {
    width: 100%; }
    .carts-block table td:not(:last-child) {
      padding-right: 2.4rem; }
      @media screen and (max-width: 1200px) {
        .carts-block table td:not(:last-child) {
          padding-right: 1.2rem; } }
    .carts-block table td {
      line-height: 1.5;
      vertical-align: middle; }
    @media screen and (max-width: 850px) {
      .carts-block table thead tr {
        display: none; } }
    .carts-block table thead tr td {
      font-size: 2rem;
      font-weight: 700;
      color: #242424;
      text-align: center; }
    @media screen and (max-width: 850px) {
      .carts-block table tbody tr {
        border-bottom: 0.1rem solid #d9d9d9; } }
    .carts-block table tbody tr td {
      color: #303030;
      padding: 1.2rem 0;
      text-align: center;
      border-bottom: 0.1rem solid #f0f0f0; }
      @media screen and (max-width: 850px) {
        .carts-block table tbody tr td {
          width: 100%;
          padding: 1.2rem;
          border-bottom: 0;
          column-gap: 1.6rem;
          align-items: center;
          display: flex !important;
          background-color: white;
          justify-content: space-between; }
          .carts-block table tbody tr td::before {
            content: attr(data-text) !important;
            text-align: left;
            font-size: 1.4rem;
            width: fit-content;
            white-space: nowrap;
            font-weight: 600 !important; }
          .carts-block table tbody tr td:nth-child(even) {
            background-color: #fafafa; } }
      .carts-block table tbody tr td:not(:first-child) {
        font-weight: 700; }

.mona_checkout_form {
  padding: 8rem 0; }
  .mona_checkout_form .cart-title {
    color: #242424;
    font-size: 4rem;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    margin-bottom: 4rem;
    text-transform: uppercase; }
    @media only screen and (max-width: 1200px) {
      .mona_checkout_form .cart-title {
        font-size: 3.5rem; } }
    @media only screen and (max-width: 800px) {
      .mona_checkout_form .cart-title {
        font-size: 2.7rem; } }
  .mona_checkout_form .woocommerce-checkout .blockOverlay::before {
    content: unset; }
  .mona_checkout_form .order-total th,
  .mona_checkout_form .order-total td {
    font-size: 2.4rem; }
    @media only screen and (max-width: 1200px) {
      .mona_checkout_form .order-total th,
      .mona_checkout_form .order-total td {
        font-size: 2rem; } }
    @media only screen and (max-width: 800px) {
      .mona_checkout_form .order-total th,
      .mona_checkout_form .order-total td {
        font-size: 1.7rem; } }
    @media screen and (max-width: 800px) {
      .mona_checkout_form .order-total th,
      .mona_checkout_form .order-total td {
        font-size: 1.8rem; } }
  .mona_checkout_form .verify > h3 {
    color: #242424;
    font-size: 3.2rem;
    font-weight: 600; }
    @media only screen and (max-width: 1200px) {
      .mona_checkout_form .verify > h3 {
        font-size: 2.7rem; } }
    @media only screen and (max-width: 800px) {
      .mona_checkout_form .verify > h3 {
        font-size: 2.2rem; } }
  .mona_checkout_form .result {
    background: #fff;
    padding: 2.4rem;
    display: flex;
    flex-direction: column;
    gap: 1.6rem; }
    .mona_checkout_form .result p {
      display: flex;
      gap: 2.4rem;
      justify-content: space-between;
      color: #242424;
      font-size: 1.6rem;
      font-style: normal;
      font-weight: 600; }
      @media screen and (max-width: 480px) {
        .mona_checkout_form .result p {
          flex-direction: column;
          gap: 0.8rem; } }
      .mona_checkout_form .result p span:last-child {
        max-width: 50rem;
        text-align: right; }
        @media screen and (max-width: 768px) {
          .mona_checkout_form .result p span:last-child {
            max-width: 45.6rem; } }
        @media screen and (max-width: 480px) {
          .mona_checkout_form .result p span:last-child {
            max-width: 100%;
            text-align: left; } }
  .mona_checkout_form .information_same {
    margin: 2.4rem 0; }
    .mona_checkout_form .information_same .billing_info > p {
      padding: 2.4rem;
      background: #e4e7ec;
      display: block;
      width: 100%;
      color: #242424;
      font-size: 2rem;
      font-weight: 500;
      line-height: 1.3;
      border-radius: 0.8rem 0.8rem 0 0; }
  .mona_checkout_form .mona_actions {
    display: flex;
    flex-direction: column;
    gap: 1.6rem; }
    .mona_checkout_form .mona_actions button {
      cursor: pointer;
      width: 100%;
      color: #fff;
      text-align: center;
      font-size: 2rem;
      font-weight: 600;
      padding: 2rem;
      border-radius: 0.4rem;
      background: #006bce;
      box-shadow: 0rem 0.4rem 0.4rem 0rem rgba(0, 0, 0, 0.25);
      border: 0.1rem solid #006bce;
      transition: 0.3s; }
      @media only screen and (max-width: 1200px) {
        .mona_checkout_form .mona_actions button {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .mona_checkout_form .mona_actions button {
          font-size: 1.6rem; } }
      .mona_checkout_form .mona_actions button:hover {
        background: #fff;
        color: #006bce;
        border-color: #006bce; }
      .mona_checkout_form .mona_actions button:last-child {
        background: #fff;
        border-color: #006bce;
        color: #006bce; }
        .mona_checkout_form .mona_actions button:last-child:hover {
          background: #006bce;
          color: #fff; }
  @media screen and (max-width: 768px) {
    .mona_checkout_form .mn-cart-img {
      width: 6rem;
      height: 6rem; } }
  .mona_checkout_form .remove:hover {
    background: transparent !important; }
  .mona_checkout_form .col2-set {
    display: flex;
    gap: 2.4rem; }
    @media screen and (max-width: 980px) {
      .mona_checkout_form .col2-set {
        flex-direction: column; } }
    .mona_checkout_form .col2-set::before, .mona_checkout_form .col2-set::after {
      display: none; }
  .mona_checkout_form .col-1,
  .mona_checkout_form .col-2 {
    width: calc(50% - 1.2rem) !important;
    float: unset !important; }
    @media screen and (max-width: 980px) {
      .mona_checkout_form .col-1,
      .mona_checkout_form .col-2 {
        width: 100% !important; } }
    .mona_checkout_form .col-1 > .title,
    .mona_checkout_form .col-2 > .title {
      color: #242424;
      font-size: 3.2rem;
      font-weight: 600;
      margin-bottom: 4rem; }
      @media only screen and (max-width: 1200px) {
        .mona_checkout_form .col-1 > .title,
        .mona_checkout_form .col-2 > .title {
          font-size: 2.7rem; } }
      @media only screen and (max-width: 800px) {
        .mona_checkout_form .col-1 > .title,
        .mona_checkout_form .col-2 > .title {
          font-size: 2.2rem; } }
      @media screen and (max-width: 768px) {
        .mona_checkout_form .col-1 > .title,
        .mona_checkout_form .col-2 > .title {
          margin-bottom: 2rem; } }
  .mona_checkout_form #order_review_heading {
    padding: 2.4rem;
    background: #e4e7ec;
    display: block;
    width: 100%;
    color: #242424;
    font-size: 2rem;
    font-weight: 500;
    line-height: 1.3;
    border-radius: 0.8rem 0.8rem 0 0; }
    @media only screen and (max-width: 1200px) {
      .mona_checkout_form #order_review_heading {
        font-size: 1.8rem; } }
    @media only screen and (max-width: 800px) {
      .mona_checkout_form #order_review_heading {
        font-size: 1.6rem; } }
  .mona_checkout_form .information {
    border-radius: 0.8rem; }
    .mona_checkout_form .information label {
      background: #fff;
      border-radius: 0.8rem;
      display: flex;
      gap: 0.8rem; }
      .mona_checkout_form .information label span {
        line-height: 1; }
      .mona_checkout_form .information label:has(#xuat_hoa_don[type="checkbox"]) {
        padding: 2.4rem; }
        .mona_checkout_form .information label:has(#xuat_hoa_don[type="checkbox"])::before {
          content: "";
          width: 1.7rem;
          height: 1.7rem;
          display: block;
          background: url(../img/cart/non-active.svg);
          background-size: contain;
          background-repeat: no-repeat;
          transition: 0.3s; }
      .mona_checkout_form .information label:has(#xuat_hoa_don[type="checkbox"]:checked)::before {
        background: url(../img/cart/active.svg);
        background-size: contain;
        background-repeat: no-repeat; }
      .mona_checkout_form .information label #xuat_hoa_don {
        display: none; }
    .mona_checkout_form .information h3 {
      padding: 2.4rem;
      background: #e4e7ec;
      display: block;
      width: 100%;
      color: #242424;
      font-size: 2rem;
      font-weight: 500;
      line-height: 1.3;
      border-radius: 0.8rem 0.8rem 0 0; }
      @media only screen and (max-width: 1200px) {
        .mona_checkout_form .information h3 {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .mona_checkout_form .information h3 {
          font-size: 1.6rem; } }
  .mona_checkout_form .woocommerce-billing-fields {
    border-radius: 0.8rem 0.8rem 0 0; }
  .mona_checkout_form .woocommerce-additional-fields {
    padding: 0 2.4rem 2.4rem 2.4rem;
    background: #fff;
    border-radius: 0 0 0.8rem 0.8rem; }
    .mona_checkout_form .woocommerce-additional-fields .form-row {
      width: 100% !important; }
  .mona_checkout_form form label {
    display: block;
    color: #242424;
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 1.5 !important; }
    .mona_checkout_form form label:has(input[type="radio"]) {
      cursor: pointer;
      display: flex;
      gap: 0.8rem;
      align-items: center; }
      .mona_checkout_form form label:has(input[type="radio"])::before {
        content: "";
        width: 1.7rem;
        height: 1.7rem;
        display: block;
        background: url(../img/cart/non-active.svg);
        background-size: contain;
        background-repeat: no-repeat;
        transition: 0.3s; }
    .mona_checkout_form form label:has(input[type="radio"]:checked)::before {
      background: url(../img/cart/active.svg);
      background-size: contain;
      background-repeat: no-repeat; }
  .mona_checkout_form form .woocommerce-checkout-payment .wc_payment_methods .payment_method_cod label {
    column-gap: 1.2rem;
    display: flex;
    align-items: center; }
    .mona_checkout_form form .woocommerce-checkout-payment .wc_payment_methods .payment_method_cod label::before {
      content: "";
      flex-shrink: 0;
      display: block;
      cursor: pointer;
      user-select: none;
      position: relative;
      text-align: center;
      width: 2rem;
      height: 2rem;
      vertical-align: top;
      border-radius: 100%;
      transition: 0.4s ease-in-out;
      border: 0.1rem solid #242424; }
  .mona_checkout_form form .woocommerce-checkout-payment .wc_payment_methods .payment_method_cod .payment_box {
    display: none !important; }
  .mona_checkout_form form .woocommerce-checkout-payment .wc_payment_methods:has(input[type="radio"]:checked) label::before {
    border-color: #242424;
    background-color: #242424;
    box-shadow: inset 0 0 0 0.5rem white; }
  .mona_checkout_form form input[type="radio"] {
    display: none; }
  .mona_checkout_form form .form-row {
    display: block;
    margin: 0;
    padding: 0; }
    .mona_checkout_form form .form-row:nth-child(1), .mona_checkout_form form .form-row:nth-child(2) {
      width: calc(50% - 1.2rem); }
    .mona_checkout_form form .form-row:nth-child(8) {
      width: 100%; }
    .mona_checkout_form form .form-row > label {
      margin-bottom: 0.6rem; }
      .mona_checkout_form form .form-row > label span {
        color: #cb1c22; }
    .mona_checkout_form form .form-row input,
    .mona_checkout_form form .form-row textarea {
      padding: 0.8rem 1.6rem;
      border: 0.1rem solid #cbd5e1;
      background: #fff;
      box-shadow: 0rem 0.1rem 0.2rem 0rem rgba(16, 24, 40, 0.05);
      height: unset;
      font-size: 1.6rem;
      font-weight: 600;
      line-height: 1;
      border-radius: 0; }
      .mona_checkout_form form .form-row input[type="radio"],
      .mona_checkout_form form .form-row textarea[type="radio"] {
        display: none; }
      .mona_checkout_form form .form-row input::placeholder,
      .mona_checkout_form form .form-row textarea::placeholder {
        color: #98a2b3; }
      .mona_checkout_form form .form-row input:focus,
      .mona_checkout_form form .form-row textarea:focus {
        border-color: #242424; }
  .mona_checkout_form form textarea {
    min-height: 10rem; }
  .mona_checkout_form form .form-row-wide {
    width: 100%; }
  .mona_checkout_form form .form-row-first,
  .mona_checkout_form form .form-row-last {
    width: calc(50% - 1.2rem); }
  .mona_checkout_form form #billing_city_field {
    width: 100%; }
  .mona_checkout_form form .woocommerce-billing-fields__field-wrapper,
  .mona_checkout_form form .woocommerce-shipping-fields__field-wrapper {
    display: flex;
    gap: 2.4rem;
    flex-wrap: wrap;
    row-gap: 2.4rem;
    padding: 2.4rem;
    background: #fff; }
  .mona_checkout_form form .select2-container {
    width: 100% !important; }
  .mona_checkout_form form .select2-container .select2-selection--single {
    border-color: #cbd5e1;
    border-radius: 0;
    height: 100%;
    padding: 0.8rem 1.6rem; }
    .mona_checkout_form form .select2-container .select2-selection--single .select2-selection__rendered {
      color: #242424;
      line-height: normal;
      font-size: 1.6rem;
      font-weight: 600;
      padding: 0; }
  .mona_checkout_form .mn-cart-price .price {
    align-items: end; }
    @media screen and (max-width: 480px) {
      .mona_checkout_form .mn-cart-price .price {
        flex-direction: row; } }
    .mona_checkout_form .mn-cart-price .price ins {
      color: #242424;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.5; }
    .mona_checkout_form .mn-cart-price .price .woocommerce-Price-currencySymbol {
      margin-left: 0.2rem; }

#ship-to-different-address {
  margin: 2rem 0;
  background: transparent;
  padding: 0; }
  #ship-to-different-address > label {
    background: #fff;
    border-radius: 0;
    border-radius: 0.8rem;
    display: flex;
    gap: 0.8rem;
    padding: 2.4rem; }
    #ship-to-different-address > label span {
      line-height: 1; }
    #ship-to-different-address > label:has(input[type="checkbox"])::before {
      content: "";
      width: 1.7rem;
      height: 1.7rem;
      display: block;
      background: url(../img/cart/non-active.svg);
      background-size: contain;
      background-repeat: no-repeat;
      transition: 0.3s; }
    #ship-to-different-address > label:has(input[type="checkbox"]:checked)::before {
      background: url(../img/cart/active.svg);
      background-size: contain;
      background-repeat: no-repeat; }
    #ship-to-different-address > label > input {
      display: none; }

.shipping_address .form-row:nth-child(3) {
  width: 100%; }

.shop_table {
  overflow: hidden;
  border: 0 !important;
  background: transparent;
  border-radius: 0.8rem !important; }
  .shop_table ul li {
    margin: 0 !important; }
  .shop_table .woocommerce ul#shipping_method li {
    margin: 0; }
  .shop_table .cart_item {
    position: relative;
    background: #fff; }
    @media screen and (max-width: 480px) {
      .shop_table .cart_item {
        display: flex;
        flex-direction: column; }
        .shop_table .cart_item td {
          width: 100% !important; }
          .shop_table .cart_item td:first-child {
            padding-bottom: 0.6rem !important; }
          .shop_table .cart_item td:last-child {
            padding-top: 0.6rem !important;
            border-top: 0 !important; } }
    .shop_table .cart_item td:last-child .mn-cart-content {
      align-items: end; }
      @media screen and (max-width: 480px) {
        .shop_table .cart_item td:last-child .mn-cart-content {
          padding-right: 0 !important; } }
    @media screen and (max-width: 480px) {
      .shop_table .cart_item .remove_from_cart_button {
        position: absolute;
        top: 1rem;
        right: 1rem; } }
    .shop_table .cart_item .remove_from_cart_button img {
      width: 100%;
      height: 100%;
      margin: 0; }
  .shop_table .mn-cart-box {
    padding: 0; }
  .shop_table .mn-cart-content {
    padding: 0; }
    @media screen and (max-width: 480px) {
      .shop_table .mn-cart-content {
        padding-right: 1.6rem; } }
    .shop_table .mn-cart-content .text-16 {
      max-width: 100%;
      margin: 0; }
  .shop_table .product-meta {
    display: none !important; }
  .shop_table tbody td {
    padding: 2rem 1.6rem !important; }
    .shop_table tbody td:last-child {
      width: 25%; }
  .shop_table tfoot tr:not(:last-child) {
    background: #fff; }
  .shop_table tfoot tr:last-child th,
  .shop_table tfoot tr:last-child td {
    border: 0; }
  @media screen and (max-width: 480px) {
    .shop_table tfoot tr {
      display: flex;
      justify-content: space-between; }
      .shop_table tfoot tr td {
        text-align: end;
        flex: 1; }
        .shop_table tfoot tr td li {
          margin: 0 !important; } }

.form-box-inner label {
  display: block;
  color: #242424;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5; }
  .form-box-inner label:has(input[type="radio"]) {
    cursor: pointer;
    display: flex;
    gap: 0.8rem;
    align-items: center; }
    .form-box-inner label:has(input[type="radio"])::before {
      content: "";
      width: 1.7rem;
      height: 1.7rem;
      display: block;
      background: url(../img/cart/non-active.svg);
      background-size: contain;
      background-repeat: no-repeat;
      transition: 0.3s; }
  .form-box-inner label:has(input[type="radio"]:checked)::before {
    background: url(../img/cart/active.svg);
    background-size: contain;
    background-repeat: no-repeat; }

.form-box-inner input[type="radio"] {
  display: none; }

.form-box-inner .form-row {
  display: block; }
  .form-box-inner .form-row .note {
    margin-top: 1.2rem; }
    @media screen and (max-width: 480px) {
      .form-box-inner .form-row .note {
        text-align: center; } }
  .form-box-inner .form-row > label {
    margin-bottom: 0.6rem; }
    .form-box-inner .form-row > label span {
      color: #cb1c22; }
  .form-box-inner .form-row input,
  .form-box-inner .form-row textarea {
    padding: 0.8rem 1.6rem;
    border: 0.1rem solid #cbd5e1;
    background: #fff;
    box-shadow: 0rem 0.1rem 0.2rem 0rem rgba(16, 24, 40, 0.05);
    height: unset;
    font-size: 1.6rem;
    font-weight: 600;
    line-height: 1;
    border-radius: 0; }
    .form-box-inner .form-row input[type="radio"],
    .form-box-inner .form-row textarea[type="radio"] {
      display: none; }
    .form-box-inner .form-row input::placeholder,
    .form-box-inner .form-row textarea::placeholder {
      color: #98a2b3; }
    .form-box-inner .form-row input:focus,
    .form-box-inner .form-row textarea:focus {
      border-color: #242424; }

.form-box-inner textarea {
  min-height: 10rem; }

.form-box-inner .form-row-wide {
  width: 100%; }

.form-box-inner .form-row-first,
.form-box-inner .form-row-last {
  width: calc(50% - 1.2rem); }

.form-box-inner .woocommerce-billing-fields__field-wrapper,
.form-box-inner .woocommerce-shipping-fields__field-wrapper {
  display: flex;
  gap: 2.4rem;
  flex-wrap: wrap;
  row-gap: 2.4rem; }

.form-box-inner .select2-container {
  width: 100% !important; }

.form-box-inner .select2-container .select2-selection--single {
  border-color: #cbd5e1;
  border-radius: 0;
  height: 100%;
  padding: 0.8rem 1.6rem; }
  .form-box-inner .select2-container .select2-selection--single .select2-selection__rendered {
    color: #242424;
    line-height: normal;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 0; }

.quantity img {
  margin: 0; }

.quantity input {
  padding: 0;
  background: transparent;
  height: auto;
  border: 0;
  border-radius: 0;
  width: 3rem !important; }

.quantity input[type="number"]::-webkit-inner-spin-button,
.quantity input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0; }

.quantity input[type="number"] {
  -moz-appearance: textfield; }

.carts-quantity {
  display: flex;
  align-items: center;
  border-radius: 0.8rem;
  border: 0.1rem solid #bfbfbf;
  padding: 0.8rem;
  gap: 1.2rem; }

.carts-quantity_plus {
  filter: invert(1) brightness(0); }

.woocommerce-checkout-payment {
  background: #fff !important; }
  .woocommerce-checkout-payment .form-row {
    width: 100% !important; }
  .woocommerce-checkout-payment .woocommerce-privacy-policy-text {
    display: none; }
  .woocommerce-checkout-payment button.alt {
    display: none; }
  .woocommerce-checkout-payment .woocommerce-form__label-for-checkbox {
    padding-left: 2.4rem; }
    .woocommerce-checkout-payment .woocommerce-form__label-for-checkbox a {
      color: #006bce !important; }
    .woocommerce-checkout-payment .woocommerce-form__label-for-checkbox::before {
      content: "";
      width: 1.7rem;
      height: 1.7rem;
      display: block;
      background: url(../img/cart/non-active.svg);
      background-size: contain;
      background-repeat: no-repeat;
      transition: 0.3s;
      position: absolute;
      top: 50%;
      left: 0;
      transform: translateY(-50%); }
    .woocommerce-checkout-payment .woocommerce-form__label-for-checkbox:has(input:checked)::before {
      background: url(../img/cart/active.svg);
      background-size: contain;
      background-repeat: no-repeat; }
    .woocommerce-checkout-payment .woocommerce-form__label-for-checkbox input {
      display: none !important; }
    .woocommerce-checkout-payment .woocommerce-form__label-for-checkbox .woocommerce-terms-and-conditions-checkbox-text {
      color: #242424 !important;
      font-size: 1.6rem;
      font-weight: 400;
      line-height: 1.5; }

.woocommerce-address-fields .form-row .select2-container.select2-container--default .select2-selection--single {
  border-radius: 0.8rem;
  background-color: #f9fafb;
  border: 0.1rem solid #e5e5e5;
  height: auto;
  padding: 0 !important; }

.woocommerce-address-fields .form-row .select2-container.select2-container--default .select2-selection__rendered {
  display: flex;
  align-items: center;
  height: 5rem;
  padding: 0.8rem 1.6rem; }

#customer_details .information_different,
#customer_details .verify,
#customer_details .billing_info,
#customer_details .shipping_info {
  display: flex;
  row-gap: 2.4rem;
  flex-direction: column; }

#customer_details .billing_info > p,
#customer_details .shipping_info > p {
  font-weight: 700;
  font-size: 1.8rem; }

.woocommerce-checkout-review-order .shop_table {
  display: flex;
  row-gap: 2.4rem;
  flex-direction: column; }
  @media screen and (max-width: 767px) {
    .woocommerce-checkout-review-order .shop_table {
      row-gap: 1.2rem; } }
  .woocommerce-checkout-review-order .shop_table tbody {
    display: flex;
    row-gap: 2.4rem;
    flex-direction: column; }
    @media screen and (max-width: 767px) {
      .woocommerce-checkout-review-order .shop_table tbody {
        row-gap: 1.2rem; } }
    .woocommerce-checkout-review-order .shop_table tbody tr {
      border-radius: 0.8rem;
      border: 0.1rem solid rgba(11, 24, 29, 0.1); }
      .woocommerce-checkout-review-order .shop_table tbody tr td {
        border: 0; }
        .woocommerce-checkout-review-order .shop_table tbody tr td:first-child {
          width: 100%; }
  .woocommerce-checkout-review-order .shop_table tfoot {
    display: flex;
    border-radius: 0.8rem;
    flex-direction: column; }
    .woocommerce-checkout-review-order .shop_table tfoot tr {
      display: flex; }
      .woocommerce-checkout-review-order .shop_table tfoot tr:not(:last-child) {
        border: 0; }
      .woocommerce-checkout-review-order .shop_table tfoot tr:last-child {
        margin-top: 4rem; }
        @media screen and (max-width: 1200px) {
          .woocommerce-checkout-review-order .shop_table tfoot tr:last-child {
            margin-top: 2.4rem; } }
        @media screen and (max-width: 767px) {
          .woocommerce-checkout-review-order .shop_table tfoot tr:last-child {
            margin-top: 1.6rem; } }
      .woocommerce-checkout-review-order .shop_table tfoot tr.order-total td .amount {
        color: #f00; }
      .woocommerce-checkout-review-order .shop_table tfoot tr th {
        width: 100%; }
      .woocommerce-checkout-review-order .shop_table tfoot tr td {
        flex-shrink: 0; }
        .woocommerce-checkout-review-order .shop_table tfoot tr td .woocommerce-shipping-methods li label {
          position: relative;
          padding-right: 2.8rem; }
          .woocommerce-checkout-review-order .shop_table tfoot tr td .woocommerce-shipping-methods li label::before {
            content: "";
            right: 0;
            top: -0.1rem;
            position: absolute;
            width: 2.4rem;
            height: 2.4rem;
            background-size: cover;
            background-repeat: no-repeat;
            background-position: top;
            background-image: url("../../assets/img/icons/ico_show.svg"); }
      .woocommerce-checkout-review-order .shop_table tfoot tr th,
      .woocommerce-checkout-review-order .shop_table tfoot tr td {
        border: 0; }

.payment-heading {
  padding: 1.2rem 2rem;
  background-color: white;
  justify-content: space-between;
  border-bottom: 0.1rem solid #cfc8d8; }
  .payment-heading img {
    flex-shrink: 0; }
  .payment-heading .inner-box {
    display: flex;
    row-gap: 1.2rem;
    flex-direction: column; }
  .payment-heading .inner img {
    user-select: none;
    filter: brightness(0) saturate(100%) invert(47%) sepia(0%) saturate(39%) hue-rotate(352deg) brightness(97%) contrast(94%);
    width: 4rem;
    height: 4rem; }
    @media screen and (max-width: 1200px) {
      .payment-heading .inner img {
        width: 3.2rem;
        height: 3.2rem; } }
  .payment-heading .inner .text-16 {
    color: #98a2b3; }

.payment-heading,
.payment-heading .inner {
  column-gap: 1.2rem;
  display: flex;
  align-items: center; }

.woocommerce-message {
  outline: 0 !important; }

.popup {
  inset: 0;
  z-index: 105;
  position: fixed;
  visibility: hidden; }
  .popup.open .popup-overlay {
    opacity: 1;
    visibility: visible; }
  .popup.open .popup-main {
    opacity: 1;
    visibility: visible; }
  .popup .wpcf7-response-output {
    text-align: center; }
  .popup #quick-view-details > p {
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center; }
    @media only screen and (max-width: 1200px) {
      .popup #quick-view-details > p {
        font-size: 2rem; } }
    @media only screen and (max-width: 800px) {
      .popup #quick-view-details > p {
        font-size: 1.7rem; } }

.popup-close {
  z-index: 5;
  top: 1.2rem;
  right: 1.2rem;
  cursor: pointer;
  user-select: none;
  border-radius: 50%;
  position: absolute;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  background-color: #242424; }
  @media screen and (max-width: 1200px) {
    .popup-close {
      top: 0.8rem;
      right: 0.8rem;
      width: 2.8rem;
      height: 2.8rem; } }
  .popup-close img {
    width: 2.4rem;
    height: 2.4rem;
    filter: brightness(0) invert(1); }

.popup-overlay {
  inset: 0;
  z-index: 1;
  opacity: 0;
  position: absolute;
  visibility: hidden;
  transition: 0.4s ease-in-out;
  background-color: rgba(0, 0, 0, 0.5); }

.popup-main {
  top: 50%;
  left: 50%;
  z-index: 2;
  opacity: 0;
  width: 100%;
  display: flex;
  height: 100dvh;
  max-width: 150rem;
  position: absolute;
  visibility: hidden;
  transition: 0.4s ease-in-out;
  overflow: hidden auto;
  flex-direction: column;
  justify-content: center;
  transform: translate(-50%, -50%); }
  .popup-main:has(.popup-contact) {
    max-width: 100rem; }

.popup-wrap {
  padding: 8rem;
  max-height: 90rem;
  position: relative;
  overflow: hidden auto;
  background-color: white; }
  @media screen and (max-width: 1200px) {
    .popup-wrap {
      padding: 4rem; } }
  @media screen and (max-width: 767px) {
    .popup-wrap {
      padding: 4rem 2.4rem; } }

.postbox-header .hndle {
  font-size: 3.2rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 2.4rem; }
  @media only screen and (max-width: 1200px) {
    .postbox-header .hndle {
      font-size: 2.7rem; } }
  @media only screen and (max-width: 800px) {
    .postbox-header .hndle {
      font-size: 2.2rem; } }
  @media screen and (max-width: 1200px) {
    .postbox-header .hndle {
      margin-bottom: 1.6rem; } }

.quote-product-list {
  display: flex;
  row-gap: 1.2rem;
  flex-direction: column; }
  .quote-product-list ul {
    display: flex;
    flex-wrap: wrap;
    row-gap: 2.4rem;
    margin: 0 -1.2rem !important; }
    @media screen and (max-width: 767px) {
      .quote-product-list ul {
        row-gap: 1.6rem;
        margin: 0 -0.8rem !important; } }
    .quote-product-list ul li {
      padding: 0 1.2rem;
      margin: 0 !important;
      width: calc(100% / 3); }
      @media screen and (max-width: 767px) {
        .quote-product-list ul li {
          padding: 0 0.8rem;
          width: calc(100% / 2); } }
      .quote-product-list ul li a {
        width: 100%;
        padding: 1.2rem;
        border-radius: 0.8rem;
        border: 0.1rem solid rgba(0, 0, 0, 0.2); }
        .quote-product-list ul li a > div > strong {
          font-size: 2.4rem;
          font-weight: 700;
          line-height: 1.5; }
          @media only screen and (max-width: 1200px) {
            .quote-product-list ul li a > div > strong {
              font-size: 2rem; } }
          @media only screen and (max-width: 800px) {
            .quote-product-list ul li a > div > strong {
              font-size: 1.7rem; } }

.quote-customer-info,
.quote-attachment {
  display: flex;
  row-gap: 1.2rem;
  flex-direction: column; }
  .quote-customer-info ul,
  .quote-attachment ul {
    display: flex;
    row-gap: 1.2rem;
    flex-direction: column; }

.banner-recruit {
  margin: 4rem 0rem 8rem; }
  @media screen and (max-width: 992px) {
    .banner-recruit {
      margin: 6rem 0rem; } }
  @media screen and (max-width: 576px) {
    .banner-recruit {
      margin: 4rem 0rem; } }
  .banner-recruit-bg {
    inset: 0;
    z-index: -1;
    overflow: hidden;
    position: absolute; }
    @media screen and (min-width: 1201px) {
      .banner-recruit-bg {
        border-radius: 0.8rem; } }
    .banner-recruit-bg::before {
      content: "";
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      position: absolute;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0.4) 100%); }
    .banner-recruit-bg img {
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .banner-recruit-position {
    z-index: 3;
    position: relative; }
  .banner-recruit-block {
    padding-block: 20rem; }
    @media screen and (max-width: 767px) {
      .banner-recruit-block {
        padding-block: 10rem; } }
  .banner-recruit-content {
    color: white;
    font-size: 7.2rem;
    text-align: center; }
    @media screen and (max-width: 1200px) {
      .banner-recruit-content {
        font-size: 4.8rem; } }
    @media screen and (max-width: 576px) {
      .banner-recruit-content {
        font-size: 3.2rem; } }
  .banner-recruit .container {
    position: relative; }

.article-box {
  height: 100%;
  position: relative; }
  @media screen and (min-width: 1201px) {
    .article-box:hover img {
      transform: translate(-50%, -50%) scale(1.05); } }
  @media screen and (max-width: 767px) {
    .article-box {
      row-gap: 1.6rem; } }

.article-heading {
  user-select: none; }
  .article-heading-img {
    display: block;
    overflow: hidden;
    user-select: none;
    position: relative;
    border-radius: 0.8rem;
    padding-top: calc(390 / 485 * 100%); }
    .article-heading-img img {
      top: 50%;
      left: 50%;
      width: 100%;
      height: 100%;
      object-fit: cover;
      position: absolute;
      transform: translate(-50%, -50%);
      transition: 0.4s ease-in-out; }
  .article-heading-cate {
    z-index: 3;
    position: relative;
    text-align: center;
    transition: 0.4s ease-in-out;
    border-radius: 0.4rem;
    margin: -2.45rem auto 0;
    width: calc(100% - 4.8rem);
    background-color: #006bce; }
    @media screen and (min-width: 1201px) {
      .article-heading-cate:hover {
        background-color: #db1f26; } }
    @media screen and (max-width: 767px) {
      .article-heading-cate {
        width: calc(100% - 2.4rem); } }
    .article-heading-cate .title-24 {
      display: block;
      overflow: hidden;
      line-height: normal;
      white-space: nowrap;
      text-overflow: ellipsis;
      padding: 1.05rem 1.6rem; }

.article-content {
  height: 100%;
  row-gap: 1.5rem; }
  .article-content-cate {
    display: flex;
    align-items: center; }
    .article-content-cate > * {
      line-height: normal; }
      .article-content-cate > *:last-child::before {
        content: "-";
        color: inherit;
        margin: 0 0.4rem;
        user-select: none; }
    .article-content-cate .text-16 {
      font-size: 2rem; }
      @media only screen and (max-width: 1200px) {
        .article-content-cate .text-16 {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .article-content-cate .text-16 {
          font-size: 1.6rem; } }
  .article-content .title-24 {
    line-height: normal;
    transition: 0.4s ease-in-out; }
    @media screen and (min-width: 1201px) {
      .article-content .title-24:hover {
        color: #db1f26 !important; } }

.catalogue-box {
  height: 100%;
  overflow: hidden;
  border-radius: 0.8rem;
  background-color: white;
  box-shadow: 0.2rem 0.2rem 0.3rem 0 rgba(0, 0, 0, 0.25); }
  @media screen and (min-width: 1201px) {
    .catalogue-box:hover img {
      transform: translate(-50%, -50%) scale(1.05); } }

.catalogue-img {
  overflow: hidden;
  position: relative;
  padding-top: calc(284 / 358 * 100%); }
  .catalogue-img img {
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    transform: translate(-50%, -50%);
    transition: 0.4s ease-in-out; }

.catalogue-content {
  height: 100%;
  padding: 2.4rem; }
  @media screen and (max-width: 1200px) {
    .catalogue-content {
      padding: 1.6rem; } }
  .catalogue-content .text-16 {
    transition: 0.4s ease-in-out; }
    @media screen and (min-width: 1201px) {
      .catalogue-content .text-16:hover {
        color: #db1f26; } }

.product-box {
  height: 100%;
  row-gap: 1.6rem;
  position: relative;
  transition: 0.4s ease-in-out;
  border-radius: 0.8rem;
  padding: 1.2rem 1.6rem;
  background-color: white; }
  @media screen and (min-width: 1201px) {
    .product-box:hover {
      box-shadow: 0 0.2rem 2rem 0 rgba(0, 0, 0, 0.15); }
      .product-box:hover .img img {
        transform: translate(-50%, -50%) scale(1.05); }
      .product-box:hover .view {
        opacity: 1;
        pointer-events: auto; } }
  @media screen and (max-width: 1200px) {
    .product-box {
      padding: 1.2rem; } }
  @media screen and (max-width: 576px) {
    .product-box {
      padding: 0.8rem; } }
  .product-box-heading {
    position: relative; }
    .product-box-heading .img {
      overflow: hidden;
      user-select: none;
      position: relative;
      border-radius: 0.8rem;
      padding-top: calc(1 / 1 * 100%); }
      .product-box-heading .img img {
        top: 50%;
        left: 50%;
        width: 100%;
        height: 100%;
        object-fit: cover;
        position: absolute;
        transform: translate(-50%, -50%);
        transition: 0.4s ease-in-out; }
    .product-box-heading .number {
      top: 0;
      left: 0;
      z-index: 3;
      color: white;
      font-size: 2rem;
      font-weight: 600;
      border-radius: 50%;
      user-select: none;
      position: absolute;
      width: 3.5rem;
      height: 3.5rem;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: center;
      pointer-events: none;
      background-color: #00a523; }
      @media screen and (max-width: 767px) {
        .product-box-heading .number {
          font-size: 1.6rem;
          width: 3.2rem;
          height: 3.2rem; } }
    .product-box-heading .view {
      top: 0;
      right: 0;
      display: flex;
      row-gap: 1.6rem;
      width: fit-content;
      position: absolute;
      transition: 0.4s ease-in-out;
      pointer-events: auto;
      border-radius: 0.4rem;
      flex-direction: column;
      padding: 0.8rem 0.4rem;
      background-color: white;
      border: 0.1rem solid #e4e4e4;
      box-shadow: 0 0 1rem 0 rgba(0, 0, 0, 0.2); }
      @media screen and (min-width: 1201px) {
        .product-box-heading .view {
          opacity: 0; } }
      @media screen and (max-width: 1200px) {
        .product-box-heading .view {
          row-gap: 1rem; } }
      .product-box-heading .view-item {
        flex-shrink: 0; }
        .product-box-heading .view-item > * {
          padding: 0 !important;
          background: transparent !important; }
        .product-box-heading .view-item .added_to_cart {
          display: none; }
      .product-box-heading .view-icon {
        display: block;
        position: relative; }
        @media screen and (min-width: 1201px) {
          .product-box-heading .view-icon:hover .text-12 {
            opacity: 1;
            pointer-events: auto; } }
        .product-box-heading .view-icon:after {
          content: unset !important; }
        .product-box-heading .view-icon img {
          object-fit: contain;
          width: 2.4rem;
          height: 2.4rem; }
        .product-box-heading .view-icon .text-12 {
          top: 50%;
          opacity: 0;
          isolation: isolate;
          padding: 1rem 2rem;
          width: max-content;
          position: absolute;
          transition: 0.4s ease-in-out;
          border-radius: 1rem;
          pointer-events: none;
          right: calc(100% + 2rem);
          transform: translateY(-50%); }
          @media screen and (min-width: 1201px) {
            .product-box-heading .view-icon .text-12:hover {
              color: #db1f26; } }
          .product-box-heading .view-icon .text-12::before {
            content: "";
            top: 0;
            left: 0;
            z-index: -1;
            height: 100%;
            position: absolute;
            border-radius: 0.6rem;
            width: calc(100% + 0.8rem);
            background-color: #f7f7f7;
            background-size: cover;
            background-repeat: no-repeat;
            background-position: center;
            background-image: url("../../assets/img/cataloguedt/view-bg.svg"); }
    .product-box-heading .sale {
      top: 0;
      left: 0;
      display: flex;
      row-gap: 0.8rem;
      position: absolute;
      pointer-events: none;
      flex-direction: column; }
      .product-box-heading .sale-box {
        gap: 0.4rem;
        min-width: 7.5rem;
        width: fit-content;
        padding: 0.8rem 1rem;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        border-radius: 10rem; }
        .product-box-heading .sale-box:first-child {
          background-color: #db1f26; }
          .product-box-heading .sale-box:first-child .text-12 {
            color: white; }
        .product-box-heading .sale-box:last-child {
          background-color: #fae803; }
        .product-box-heading .sale-box .text-12 {
          font-size: 1.2rem;
          font-family: var(--font-pri); }
        .product-box-heading .sale-box img {
          flex-shrink: 0;
          width: 1.6rem;
          height: 1.6rem; }
  .product-box-content {
    row-gap: 0.8rem; }
    .product-box-content > .text-16 {
      font-size: 2rem;
      transition: 0.4s ease-in-out; }
      @media only screen and (max-width: 1200px) {
        .product-box-content > .text-16 {
          font-size: 1.8rem; } }
      @media only screen and (max-width: 800px) {
        .product-box-content > .text-16 {
          font-size: 1.6rem; } }
      @media screen and (min-width: 1201px) {
        .product-box-content > .text-16:hover {
          color: #db1f26; } }
    .product-box-content .stock {
      column-gap: 0.8rem;
      display: flex;
      align-items: center; }
      .product-box-content .stock img {
        flex-shrink: 0;
        user-select: none;
        width: 1.5rem;
        height: 1.5rem; }
      .product-box-content .stock .text-16 {
        color: #999;
        font-size: 2rem; }
        @media only screen and (max-width: 1200px) {
          .product-box-content .stock .text-16 {
            font-size: 1.8rem; } }
        @media only screen and (max-width: 800px) {
          .product-box-content .stock .text-16 {
            font-size: 1.6rem; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbW9uLmNzcyIsInNvdXJjZXMiOlsiY29tbW9uLnNjc3MiLCJfY29yZS9fcmVzZXQuc2NzcyIsIl9jb3JlL19taXhpbi5zY3NzIiwiX2NvcmUvX3ZhcmlhYmxlLnNjc3MiLCJfY29yZS9fZm9udC5zY3NzIiwiX2NvcmUvX2Jhc2Uuc2NzcyIsIl9jb3JlL19mbGV4LnNjc3MiLCJfY29yZS9fbW9uYS5zY3NzIiwiX21vZHVsZXMvX2FsbC5zY3NzIiwiX21vZHVsZXMvX2NhcnQuc2NzcyIsIl9tb2R1bGVzL190aXRsZS5zY3NzIiwiX21vZHVsZXMvX3N3aXBlci5zY3NzIiwiX21vZHVsZXMvX2NvbXBhcmUuc2NzcyIsIl9tb2R1bGVzL19hbmltYXRpb24uc2NzcyIsIl9tb2R1bGVzL19wYWdpbmF0aW9uLnNjc3MiLCJfbW9kdWxlcy9fYnJlYWRjcnVtYi5zY3NzIiwiX21vZHVsZXMvX21lbnUtYXNpZGUuc2NzcyIsIl9jb21wb25lbnRzL19oZWFkZXIuc2NzcyIsIl9jb21wb25lbnRzL19mb290ZXIuc2NzcyIsIl9sYXlvdXRzL19idG4uc2NzcyIsIl9sYXlvdXRzL19mb3JtLnNjc3MiLCJfbGF5b3V0cy9fcG9wdXAuc2NzcyIsIl9sYXlvdXRzL19iYW5uZXIuc2NzcyIsIl9sYXlvdXRzL19hcnRpY2xlLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29yZVxuQGltcG9ydCBcIl9jb3JlL3Jlc2V0XCI7XG5AaW1wb3J0IFwiX2NvcmUvbWl4aW5cIjtcbkBpbXBvcnQgXCJfY29yZS92YXJpYWJsZVwiO1xuQGltcG9ydCBcIl9jb3JlL2ZvbnRcIjtcbkBpbXBvcnQgXCJfY29yZS9iYXNlXCI7XG5AaW1wb3J0IFwiX2NvcmUvZmxleFwiO1xuQGltcG9ydCBcIl9jb3JlL21vbmFcIjtcblxuLy8gTW9kdWxlc1xuQGltcG9ydCBcIl9tb2R1bGVzL2FsbFwiO1xuQGltcG9ydCBcIl9tb2R1bGVzL2NhcnRcIjtcbkBpbXBvcnQgXCJfbW9kdWxlcy90aXRsZVwiO1xuQGltcG9ydCBcIl9tb2R1bGVzL3N3aXBlclwiO1xuQGltcG9ydCBcIl9tb2R1bGVzL2NvbXBhcmVcIjtcbkBpbXBvcnQgXCJfbW9kdWxlcy9hbmltYXRpb25cIjtcbkBpbXBvcnQgXCJfbW9kdWxlcy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiX21vZHVsZXMvYnJlYWRjcnVtYlwiO1xuQGltcG9ydCBcIl9tb2R1bGVzL21lbnUtYXNpZGVcIjtcblxuLy8gQ29tcG9uZW50XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvaGVhZGVyXCI7XG5AaW1wb3J0IFwiX2NvbXBvbmVudHMvZm9vdGVyXCI7XG5cbi8vIExheW91dFxuQGltcG9ydCBcIl9sYXlvdXRzL2J0blwiO1xuQGltcG9ydCBcIl9sYXlvdXRzL2Zvcm1cIjtcbkBpbXBvcnQgXCJfbGF5b3V0cy9wb3B1cFwiO1xuQGltcG9ydCBcIl9sYXlvdXRzL2Jhbm5lclwiO1xuQGltcG9ydCBcIl9sYXlvdXRzL2FydGljbGVcIjsiLCJodG1sLFxyXG5ib2R5LFxyXG5kaXYsXHJcbnNwYW4sXHJcbmFwcGxldCxcclxub2JqZWN0LFxyXG5pZnJhbWUsXHJcbmgxLFxyXG5oMixcclxuaDMsXHJcbmg0LFxyXG5oNSxcclxuaDYsXHJcbnAsXHJcbmJsb2NrcXVvdGUsXHJcbnByZSxcclxuYSxcclxuYWJicixcclxuYWNyb255bSxcclxuYWRkcmVzcyxcclxuYmlnLFxyXG5jaXRlLFxyXG5jb2RlLFxyXG5kZWwsXHJcbmRmbixcclxuZW0sXHJcbmltZyxcclxuaW5zLFxyXG5rYmQsXHJcbnEsXHJcbnMsXHJcbnNhbXAsXHJcbnNtYWxsLFxyXG5zdHJpa2UsXHJcbnN0cm9uZyxcclxuc3ViLFxyXG5zdXAsXHJcbnR0LFxyXG52YXIsXHJcbmIsXHJcbnUsXHJcbmksXHJcbmNlbnRlcixcclxuZGwsXHJcbmR0LFxyXG5kZCxcclxub2wsXHJcbnVsLFxyXG5saSxcclxuZmllbGRzZXQsXHJcbmZvcm0sXHJcbmxhYmVsLFxyXG5sZWdlbmQsXHJcbnRhYmxlLFxyXG5jYXB0aW9uLFxyXG50Ym9keSxcclxudGZvb3QsXHJcbnRoZWFkLFxyXG50cixcclxudGgsXHJcbnRkLFxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuY2FudmFzLFxyXG5kZXRhaWxzLFxyXG5lbWJlZCxcclxuZmlndXJlLFxyXG5maWdjYXB0aW9uLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tZW51LFxyXG5uYXYsXHJcbm91dHB1dCxcclxucnVieSxcclxuc2VjdGlvbixcclxuc3VtbWFyeSxcclxudGltZSxcclxubWFyayxcclxuYXVkaW8sXHJcbnZpZGVvIHtcclxuICAgIG1hcmdpbjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBib3JkZXI6IDA7XHJcbiAgICBmb250LXNpemU6IDEwMCU7XHJcbiAgICBmb250OiBpbmhlcml0O1xyXG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xyXG59XHJcblxyXG5hcnRpY2xlLFxyXG5hc2lkZSxcclxuZGV0YWlscyxcclxuZmlnY2FwdGlvbixcclxuZmlndXJlLFxyXG5mb290ZXIsXHJcbmhlYWRlcixcclxuaGdyb3VwLFxyXG5tZW51LFxyXG5uYXYsXHJcbnNlY3Rpb24ge1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbn1cclxuXHJcbmJvZHkge1xyXG4gICAgbGluZS1oZWlnaHQ6IDE7XHJcbn1cclxuXHJcbm9sLFxyXG51bCB7XHJcbiAgICBsaXN0LXN0eWxlOiBub25lO1xyXG59XHJcblxyXG5ibG9ja3F1b3RlLFxyXG5xIHtcclxuICAgIHF1b3Rlczogbm9uZTtcclxufVxyXG5cclxuYmxvY2txdW90ZTpiZWZvcmUsXHJcbmJsb2NrcXVvdGU6YWZ0ZXIsXHJcbnE6YmVmb3JlLFxyXG5xOmFmdGVyIHtcclxuICAgIGNvbnRlbnQ6IFwiXCI7XHJcbiAgICBjb250ZW50OiBub25lO1xyXG59XHJcblxyXG50YWJsZSB7XHJcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xyXG4gICAgYm9yZGVyLXNwYWNpbmc6IDA7XHJcbn0iLCIvKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxyXG5cdE1lZGlhXHJcbi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovXHJcbkBtaXhpbiBtYXgoJHBvaW50KSB7XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHBvaW50KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbkBtaXhpbiBtaW4oJHBvaW50KSB7XHJcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHBvaW50KSB7XHJcbiAgICBAY29udGVudDtcclxuICB9XHJcbn1cclxuXHJcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXHJcblx0RmxleCBCb3hcclxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cclxuQG1peGluIGZsZXgge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG59XHJcblxyXG5AbWl4aW4gZmxleC1jZW50ZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgZmxleC13cmFwOiB3cmFwO1xyXG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbn1cclxuXHJcbkBtaXhpbiBmbGV4LWljZW50ZXIge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxufVxyXG5cclxuQG1peGluIGZsZXgtamNlbnRlciB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcclxufVxyXG5cclxuQG1peGluIGZsZXgtamJldHdlZW4ge1xyXG4gIGRpc3BsYXk6IGZsZXg7XHJcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xyXG59XHJcblxyXG5AbWl4aW4gYmdJbWFnZSgkcG9zaXRpb246IGNlbnRlciwgJHNpemU6IGNvdmVyLCAkcmVwZWF0OiBuby1yZXBlYXQpIHtcclxuICBiYWNrZ3JvdW5kLXNpemU6ICRzaXplO1xyXG4gIGJhY2tncm91bmQtcmVwZWF0OiAkcmVwZWF0O1xyXG4gIGJhY2tncm91bmQtcG9zaXRpb246ICRwb3NpdGlvbjtcclxufVxyXG5cclxuQG1peGluIHRyYW5zaXRpb24oJHM6IDAuNHMpIHtcclxuICB0cmFuc2l0aW9uOiAkcyBlYXNlLWluLW91dDtcclxufVxyXG5cclxuQG1peGluIGJveCgkd2lkdGgsICRoZWlnaHQ6ICR3aWR0aCkge1xyXG4gIHdpZHRoOiAkd2lkdGg7XHJcbiAgaGVpZ2h0OiAkaGVpZ2h0O1xyXG59XHJcblxyXG5AbWl4aW4gaW1nQ292ZXIge1xyXG4gIHRvcDogNTAlO1xyXG4gIGxlZnQ6IDUwJTtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG59XHJcblxyXG5AbWl4aW4gaW1nQ29udGFpbiB7XHJcbiAgdG9wOiA1MCU7XHJcbiAgbGVmdDogNTAlO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIGhlaWdodDogMTAwJTtcclxuICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgb2JqZWN0LWZpdDogY29udGFpbjtcclxuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcclxufVxyXG5cclxuQG1peGluIGxpbmVDbGFtcCgkbGluZTogMiwgJGRpc3BsYXk6IHRydWUpIHtcclxuICBAaWYgJGRpc3BsYXkge1xyXG4gICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XHJcbiAgICAtd2Via2l0LWJveC1vcmllbnQ6IHZlcnRpY2FsO1xyXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICB9XHJcblxyXG4gIGxpbmUtY2xhbXA6ICRsaW5lO1xyXG4gIC13ZWJraXQtbGluZS1jbGFtcDogJGxpbmU7XHJcbn1cclxuXHJcbkBtaXhpbiBzaGFkb3cge1xyXG4gIGJveC1zaGFkb3c6IDAgMC4ycmVtIDJyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMTUpO1xyXG59XHJcblxyXG5AbWl4aW4gcG9zQ2VudGVyIHtcclxuICB0b3A6IDUwJTtcclxuICBsZWZ0OiA1MCU7XHJcbiAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xyXG59XHJcblxyXG5AbWl4aW4gbWFyZ2luKCRtYXJnaW4xLCAkbWFyZ2luMjogJG1hcmdpbjEpIHtcclxuICBtYXJnaW46ICRtYXJnaW4xIDByZW0gJG1hcmdpbjI7XHJcblxyXG4gIEBpbmNsdWRlIG1heCg5OTJweCkge1xyXG4gICAgbWFyZ2luOiA2cmVtIDByZW07XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcclxuICAgIG1hcmdpbjogNHJlbSAwcmVtO1xyXG4gIH1cclxufVxyXG5cclxuQG1peGluIHBhZGRpbmcoJHBhZGRpbmcxLCAkcGFkZGluZzI6ICRwYWRkaW5nMSkge1xyXG4gIHBhZGRpbmc6ICRwYWRkaW5nMSAwcmVtICRwYWRkaW5nMjtcclxuXHJcbiAgQGluY2x1ZGUgbWF4KDk5MnB4KSB7XHJcbiAgICBwYWRkaW5nOiA2cmVtIDByZW07XHJcbiAgfVxyXG5cclxuICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcclxuICAgIHBhZGRpbmc6IDRyZW0gMHJlbTtcclxuICB9XHJcbn1cclxuIiwiOnJvb3Qge1xyXG4gIC0taGVpZ2h0LWhkOiAxOHJlbTtcclxuICAtLW1lbnUtYXNpZGU6IDhyZW07XHJcbiAgLS1tZW51LWFzaWRlLWhvdmVyOiAzM3JlbTtcclxuICAtLWZvbnQtcHJpOiBcIlJvYm90b1wiLCBzYW5zLXNlcmlmO1xyXG59XHJcblxyXG4kY29sb3ItcHJpOiAjZGIxZjI2O1xyXG4kY29sb3Itc2VjOiAjMDBhNTIzO1xyXG4kY29sb3ItdGhpcmQ6ICMwMDZiY2U7XHJcbiRjb2xvci1mb3VyOiAjZmFlODAzO1xyXG4kY29sb3ItdGV4dDogIzI0MjQyNDtcclxuJGNvbG9yLWJnOiAjZjBmMGYwO1xyXG4iLCJAbWl4aW4gZnotMjAwIHtcbiAgZm9udC1zaXplOiAyMHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMTVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxMHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotOTAge1xuICBmb250LXNpemU6IDlyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDZyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0LjVyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTcyIHtcbiAgZm9udC1zaXplOiA3LjJyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei02NSB7XG4gIGZvbnQtc2l6ZTogNi41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotNjQge1xuICBmb250LXNpemU6IDYuNHJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy45cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei02MCB7XG4gIGZvbnQtc2l6ZTogNnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy41cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01NiB7XG4gIGZvbnQtc2l6ZTogNS42cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA1LjFyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01NSB7XG4gIGZvbnQtc2l6ZTogNS41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA1cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei01MCB7XG4gIGZvbnQtc2l6ZTogNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogNC41cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy40cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei00OCB7XG4gIGZvbnQtc2l6ZTogNC44cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiA0LjNyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjNyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTQ1IHtcbiAgZm9udC1zaXplOiA0LjVyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDRyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei00MiB7XG4gIGZvbnQtc2l6ZTogNC4ycmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTQwIHtcbiAgZm9udC1zaXplOiA0cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzLjVyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjdyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTM4IHtcbiAgZm9udC1zaXplOiAzLjhyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDMuNHJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNnJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMzYge1xuICBmb250LXNpemU6IDMuNnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMy4xcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0zNSB7XG4gIGZvbnQtc2l6ZTogMy41cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAzcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi41cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0zNCB7XG4gIGZvbnQtc2l6ZTogMy40cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjlyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTMyIHtcbiAgZm9udC1zaXplOiAzLjJyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMzAge1xuICBmb250LXNpemU6IDNyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuN3JlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuNHJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjkge1xuICBmb250LXNpemU6IDIuOXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi42cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi4zcmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yOCB7XG4gIGZvbnQtc2l6ZTogMi44cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjRyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAyLjFyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTI2IHtcbiAgZm9udC1zaXplOiAyLjZyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDIuMnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuOXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMjUge1xuICBmb250LXNpemU6IDIuNXJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMi4xcmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yNCB7XG4gIGZvbnQtc2l6ZTogMi40cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS43cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yMiB7XG4gIGZvbnQtc2l6ZTogMi4ycmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS45cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0yMCB7XG4gIGZvbnQtc2l6ZTogMnJlbTtcblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA4MDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICB9XG59XG5cbkBtaXhpbiBmei0xOSB7XG4gIGZvbnQtc2l6ZTogMS45cmVtO1xuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTIwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjdyZW07XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDgwMHB4KSB7XG4gICAgZm9udC1zaXplOiAxLjZyZW07XG4gIH1cbn1cblxuQG1peGluIGZ6LTE4IHtcbiAgZm9udC1zaXplOiAxLjhyZW07XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgfVxufVxuXG5AbWl4aW4gZnotMTcge1xuICBmb250LXNpemU6IDEuN3JlbTtcbn1cblxuQG1peGluIGZ6LTE2IHtcbiAgZm9udC1zaXplOiAxLjZyZW07XG59XG5cbkBtaXhpbiBmei0xNSB7XG4gIGZvbnQtc2l6ZTogMS41cmVtO1xufVxuXG5AbWl4aW4gZnotMTQge1xuICBmb250LXNpemU6IDEuNHJlbTtcbn1cblxuQG1peGluIGZ6LTEzIHtcbiAgZm9udC1zaXplOiAxLjNyZW07XG59XG5cbkBtaXhpbiBmei0xMiB7XG4gIGZvbnQtc2l6ZTogMS4ycmVtO1xufVxuXG5AbWl4aW4gZnotMTEge1xuICBmb250LXNpemU6IDEuMXJlbTtcbn1cblxuQG1peGluIGZ6LTEwIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuXG5AbWl4aW4gZnotOSB7XG4gIGZvbnQtc2l6ZTogMC45cmVtO1xufVxuIiwiKiB7XHJcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcclxufVxyXG5cclxuaHRtbCB7XHJcbiAgZm9udC1zaXplOiA4cHg7XHJcbiAgLy8gc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XHJcblxyXG4gIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xyXG4gICAgd2lkdGg6IDAuNHJlbTtcclxuICAgIGhlaWdodDogMC40cmVtO1xyXG4gIH1cclxuXHJcbiAgOjotd2Via2l0LXNjcm9sbGJhci10aHVtYiB7XHJcbiAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xyXG4gICAgYmFja2dyb3VuZDogcmdiYSgjMzMzLCAwLjgpO1xyXG4gIH1cclxufVxyXG5cclxuYm9keSB7XHJcbiAgY29sb3I6ICMyNDI0MjQ7XHJcbiAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICBmb250LXNpemU6IDEuNnJlbTtcclxuICBsaW5lLWhlaWdodDogbm9ybWFsO1xyXG4gIG92ZXJmbG93OiBoaWRkZW4gYXV0bztcclxuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjZmNmY2O1xyXG4gIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaSk7XHJcblxyXG4gICYuYWRtaW4tYmFyIHtcclxuICAgIC5oZWFkZXIge1xyXG4gICAgICB0b3A6IDMuMnJlbTtcclxuXHJcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc4MnB4KSB7XHJcbiAgICAgICAgdG9wOiA0LjZyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIC5tb25hLWVtcHR5IHtcclxuICAgIGNvbG9yOiAjMzMzO1xyXG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcclxuICB9XHJcbn1cclxuXHJcbmEge1xyXG4gIGNvbG9yOiBpbmhlcml0O1xyXG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxufVxyXG5cclxuYnV0dG9uLFxyXG5zZWxlY3Qge1xyXG4gIGJvcmRlcjogbm9uZTtcclxuICBvdXRsaW5lOiBub25lO1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbmJ1dHRvbiB7XHJcbiAgcGFkZGluZzogMDtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XHJcbn1cclxuXHJcbi8qIENocm9tZSwgU2FmYXJpLCBFZGdlLCBPcGVyYSAqL1xyXG5pbnB1dDo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbixcclxuaW5wdXQ6Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24ge1xyXG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcclxuICBtYXJnaW46IDA7XHJcbn1cclxuXHJcbi8qIEZpcmVmb3ggKi9cclxuaW5wdXRbdHlwZT1cIm51bWJlclwiXSB7XHJcbiAgLW1vei1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7XHJcbn1cclxuXHJcbmlucHV0LFxyXG50ZXh0YXJlYSB7XHJcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xyXG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcclxuICBhcHBlYXJhbmNlOiBub25lO1xyXG59XHJcblxyXG4uY29udGFpbmVyIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBoZWlnaHQ6IDEwMCU7XHJcbiAgbWFyZ2luOiAwIGF1dG87XHJcbiAgcGFkZGluZzogMCAxLjZyZW07XHJcbiAgbWF4LXdpZHRoOiAxNTMuNnJlbTtcclxufVxyXG5cclxuaWZyYW1lIHtcclxuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG59XHJcblxyXG5pbWcge1xyXG4gIGhlaWdodDogYXV0bztcclxuICBkaXNwbGF5OiBibG9jaztcclxuICBtYXgtd2lkdGg6IDEwMCU7XHJcbn1cclxuXHJcbi50YWJCdG4ge1xyXG4gIGN1cnNvcjogcG9pbnRlcjtcclxufVxyXG5cclxuLmdJdGVtIHtcclxuICBjdXJzb3I6IHBvaW50ZXI7XHJcbn1cclxuXHJcbi5oaWRlLXNpdGVuYW1lIHtcclxuICB3aWR0aDogMDtcclxuICBoZWlnaHQ6IDA7XHJcbiAgb3BhY2l0eTogMDtcclxuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xyXG59XHJcblxyXG4ubm8tc2Nyb2xsLFxyXG4ubm8tc2Nyb2xsLWNhcnQsXHJcbi5uby1zY3JvbGwtcG9wdXAge1xyXG4gIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgdG91Y2gtYWN0aW9uOiBub25lO1xyXG4gIG92ZXJzY3JvbGwtYmVoYXZpb3I6IG5vbmU7XHJcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IG5vbmU7XHJcbn1cclxuXHJcbi5vdmVybGF5LFxyXG4ub3ZlcmxheS1jYXJ0LFxyXG4ub3ZlcmxheS1tZW51IHtcclxuICBpbnNldDogMDtcclxuICBvcGFjaXR5OiAwO1xyXG4gIHdpZHRoOiAxMDAlO1xyXG4gIHBvc2l0aW9uOiBmaXhlZDtcclxuICB2aXNpYmlsaXR5OiBoaWRkZW47XHJcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcclxuICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICB6LWluZGV4OiAxMDAgIWltcG9ydGFudDtcclxuICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gIGhlaWdodDogY2FsYygxMDBkdmggKyAzLjNyZW0pO1xyXG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMzYsIDM2LCAzNiwgMC44KTtcclxuXHJcbiAgJi5pcy1hY3RpdmUge1xyXG4gICAgb3BhY2l0eTogMTtcclxuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XHJcbiAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICB9XHJcbn1cclxuIiwiLnJvdyB7XHJcbiAgLS1yZzogMy4ycmVtO1xyXG4gIC0tY2c6IDMuMnJlbTtcclxuICBkaXNwbGF5OiBmbGV4O1xyXG4gIGZsZXgtd3JhcDogd3JhcDtcclxuICBtYXJnaW46IDAgY2FsYyh2YXIoLS1jZykgLyAyICogLTEpIGNhbGModmFyKC0tcmcpICogLTEpO1xyXG5cclxuICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAtLXJnOiAyLjRyZW07XHJcbiAgICAtLWNnOiAyLjRyZW07XHJcbiAgfVxyXG59XHJcblxyXG4uY29sIHtcclxuICB3aWR0aDogMTAwJTtcclxuICBtYXJnaW4tYm90dG9tOiB2YXIoLS1yZyk7XHJcbiAgcGFkZGluZzogMCBjYWxjKHZhcigtLWNnKSAvIDIpO1xyXG5cclxuICAmLTEyIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gIH1cclxuXHJcbiAgJi0xMSB7XHJcbiAgICB3aWR0aDogY2FsYygxMSAvIDEyICogMTAwJSk7XHJcbiAgfVxyXG5cclxuICAmLTEwIHtcclxuICAgIHdpZHRoOiBjYWxjKDEwIC8gMTIgKiAxMDAlKTtcclxuICB9XHJcblxyXG4gICYtOSB7XHJcbiAgICB3aWR0aDogY2FsYyg5IC8gMTIgKiAxMDAlKTtcclxuICB9XHJcblxyXG4gICYtOCB7XHJcbiAgICB3aWR0aDogY2FsYyg4IC8gMTIgKiAxMDAlKTtcclxuICB9XHJcblxyXG4gICYtNyB7XHJcbiAgICB3aWR0aDogY2FsYyg3IC8gMTIgKiAxMDAlKTtcclxuICB9XHJcblxyXG4gICYtNiB7XHJcbiAgICB3aWR0aDogNTAlO1xyXG4gIH1cclxuXHJcbiAgJi01IHtcclxuICAgIHdpZHRoOiBjYWxjKDUgLyAxMiAqIDEwMCUpO1xyXG4gIH1cclxuXHJcbiAgJi00IHtcclxuICAgIHdpZHRoOiBjYWxjKDQgLyAxMiAqIDEwMCUpO1xyXG4gIH1cclxuXHJcbiAgJi0zIHtcclxuICAgIHdpZHRoOiBjYWxjKDMgLyAxMiAqIDEwMCUpO1xyXG4gIH1cclxuXHJcbiAgJi0yIHtcclxuICAgIHdpZHRoOiBjYWxjKDIgLyAxMiAqIDEwMCUpO1xyXG4gIH1cclxuXHJcbiAgJi0xIHtcclxuICAgIHdpZHRoOiBjYWxjKDEgLyAxMiAqIDEwMCUpO1xyXG4gIH1cclxufVxyXG5cclxuLy8tIEZMRVhcclxuJGZsZXgtZGVmYXVsdHM6IChcclxuICA4OiAwLjhyZW0sXHJcbiAgMTY6IDEuNnJlbSxcclxuICAyMDogMnJlbSxcclxuICAyNDogMi40cmVtLFxyXG4gIDMyOiAzLjJyZW0sXHJcbiAgNDA6IDRyZW0sXHJcbiAgNDg6IDQuOHJlbSxcclxuICA1MDogNXJlbSxcclxuICA1NjogNS42cmVtLFxyXG4gIDYwOiA2cmVtLFxyXG4gIDY4OiA2LjhyZW0sXHJcbiAgODA6IDhyZW0sXHJcbiAgMTAwOiAxMHJlbSxcclxuICAxMjA6IDEycmVtXHJcbik7XHJcblxyXG4vLy0gRkxFWCBCUkVBS1BPSU5UIDw9OTkycHhcclxuJHRhYmxldEJyZWFrcG9pbnRzOiAoKTtcclxuXHJcbkBlYWNoICRmbGV4TnVtYmVyLCAkZ2FwIGluICRmbGV4LWRlZmF1bHRzIHtcclxuICBAaWYgJGZsZXhOdW1iZXIgPj02MCB7XHJcbiAgICAvLy0gQXBwZW5kICRmbGV4TnVtYmVyIHRvICR0YWJsZXRCcmVha3BvaW50cyBhbmQgc2VwYXJhdG9yIGlzIGNvbW1hXHJcbiAgICAkdGFibGV0QnJlYWtwb2ludHM6IGFwcGVuZCgkdGFibGV0QnJlYWtwb2ludHMsICRmbGV4TnVtYmVyLCBjb21tYSk7XHJcbiAgfVxyXG59XHJcblxyXG4vLy0gRkxFWCBCUkVBS1BPSU5UIDw9NTc2cHhcclxuJG1vYmlsZUJyZWFrcG9pbnRzOiBtYXAta2V5cygkZmxleC1kZWZhdWx0cyk7XHJcblxyXG4uZmxleCB7XHJcbiAgZGlzcGxheTogZmxleDtcclxuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xyXG5cclxuICBAZWFjaCAkZmxleE51bWJlciwgJGdhcCBpbiAkZmxleC1kZWZhdWx0cyB7XHJcbiAgICAmLSN7JGZsZXhOdW1iZXJ9IHtcclxuICAgICAgZ2FwOiAkZ2FwO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgQGluY2x1ZGUgbWF4KDk5MnB4KSB7XHJcbiAgICBAZWFjaCAkZmxleE51bWJlciBpbiAkdGFibGV0QnJlYWtwb2ludHMge1xyXG4gICAgICAmLSN7JGZsZXhOdW1iZXJ9IHtcclxuICAgICAgICBnYXA6IDRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcblxyXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgQGVhY2ggJGZsZXhOdW1iZXIgaW4gJG1vYmlsZUJyZWFrcG9pbnRzIHtcclxuICAgICAgJi0jeyRmbGV4TnVtYmVyfSB7XHJcbiAgICAgICAgZ2FwOiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuIiwiLm1vbmEtY29udGVudCB7XHJcbiAgbGluZS1oZWlnaHQ6IDEuNTtcclxuICBjb2xvcjogJGNvbG9yLXRleHQ7XHJcblxyXG4gIGIsXHJcbiAgc3Ryb25nIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgfVxyXG5cclxuICBlbSxcclxuICBpIHtcclxuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcclxuICB9XHJcbiAgaDEsXHJcbiAgaDIsXHJcbiAgaDMsXHJcbiAgaDQsXHJcbiAgaDUsXHJcbiAgaDYge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICB9XHJcbiAgaDEge1xyXG4gICAgQGluY2x1ZGUgZnotMjg7XHJcbiAgfVxyXG4gIGgyIHtcclxuICAgIEBpbmNsdWRlIGZ6LTI0O1xyXG4gIH1cclxuICBoMyB7XHJcbiAgICBAaW5jbHVkZSBmei0yMDtcclxuICB9XHJcbiAgaDQge1xyXG4gICAgQGluY2x1ZGUgZnotMjA7XHJcbiAgfVxyXG4gIGg1IHtcclxuICAgIEBpbmNsdWRlIGZ6LTE0O1xyXG4gIH1cclxuICBoNiB7XHJcbiAgICBAaW5jbHVkZSBmei0xMjtcclxuICB9XHJcbiAgcCB7XHJcbiAgICBAaW5jbHVkZSBmei0yMDtcclxuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XHJcblxyXG4gICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcclxuICAgIH1cclxuICB9XHJcbiAgdWwsXHJcbiAgb2wge1xyXG4gICAgbWFyZ2luOiAxZW0gMDtcclxuICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcclxuICB9XHJcbiAgdWwgdWwsXHJcbiAgdWwgb2wsXHJcbiAgb2wgdWwsXHJcbiAgb2wgb2wge1xyXG4gICAgbWFyZ2luLWxlZnQ6IDFlbTtcclxuICB9XHJcbiAgdWwge1xyXG4gICAgbGlzdC1zdHlsZS10eXBlOiBkaXNjO1xyXG4gIH1cclxuICBvbCB7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGRlY2ltYWw7XHJcbiAgfVxyXG4gIHVsIHVsLFxyXG4gIG9sIHVsIHtcclxuICAgIGxpc3Qtc3R5bGUtdHlwZTogY2lyY2xlO1xyXG4gIH1cclxuICBvbCBvbCxcclxuICB1bCBvbCB7XHJcbiAgICBsaXN0LXN0eWxlLXR5cGU6IGxvd2VyLWxhdGluO1xyXG4gIH1cclxuICBpbWcsXHJcbiAgaWZyYW1lIHtcclxuICAgIGhlaWdodDogYXV0bztcclxuICAgIG1hcmdpbjogNHJlbSAwO1xyXG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuXHJcbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XHJcbiAgICAgIG1hcmdpbjogMi40cmVtIDA7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGJsb2NrcXVvdGUge1xyXG4gICAgYmFja2dyb3VuZDogI2Y5ZjlmOTtcclxuICAgIGJvcmRlci1sZWZ0OiAxcmVtIHNvbGlkICNjY2M7XHJcbiAgICBtYXJnaW46IDFlbSAwO1xyXG4gICAgcGFkZGluZzogMWVtO1xyXG4gICAgcXVvdGVzOiBcIlxcMjAxQ1wiIFwiXFwyMDFEXCIgXCJcXDIwMThcIiBcIlxcMjAxOVwiO1xyXG4gICAgJjo6YmVmb3JlIHtcclxuICAgICAgY29sb3I6ICNjY2M7XHJcbiAgICAgIGNvbnRlbnQ6IG9wZW4tcXVvdGU7XHJcbiAgICAgIGZvbnQtc2l6ZTogNGVtO1xyXG4gICAgICBsaW5lLWhlaWdodDogMC4xZW07XHJcbiAgICAgIG1hcmdpbi1yaWdodDogMC4yNWVtO1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogLTAuNGVtO1xyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgIGRpc3BsYXk6IGlubGluZTtcclxuICAgIH1cclxuICB9XHJcbiAgdGFibGUge1xyXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xyXG4gICAgbWFyZ2luOiAzLjJyZW0gMDtcclxuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XHJcblxyXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICBtYXJnaW46IDIuNHJlbSAwO1xyXG4gICAgfVxyXG5cclxuICAgIHRoLFxyXG4gICAgdGQge1xyXG4gICAgICBwYWRkaW5nOiAxLjJyZW0gMDtcclxuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcclxuICAgIH1cclxuICB9XHJcbiAgLm1vbmEteW91dHViZS13cmFwIHtcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGhlaWdodDogMDtcclxuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XHJcbiAgICBpZnJhbWUge1xyXG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgIHRvcDogMDtcclxuICAgICAgbGVmdDogMDtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIGhlaWdodDogMTAwJTtcclxuICAgIH1cclxuICB9XHJcbiAgLm1vbmEtdGFibGUtd3JhcCB7XHJcbiAgICBvdmVyZmxvdzogYXV0bztcclxuICB9XHJcbiAgLndwLWNhcHRpb24tdGV4dCB7XHJcbiAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHJcbiAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcclxuICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICB9XHJcbiAgfVxyXG4gIC53cC1jYXB0aW9uIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzLjJyZW07XHJcblxyXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAyLjRyZW07XHJcbiAgICB9XHJcblxyXG4gICAgJi10ZXh0IHtcclxuICAgICAgcGFkZGluZzogMXJlbSAwO1xyXG4gICAgICBsaW5lLWhlaWdodDogMS41O1xyXG4gICAgICBmb250LXNpemU6IDEuNHJlbTtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAmLmFsaWdubm9uZSB7XHJcbiAgICAgIG1hcmdpbjogMy4ycmVtIDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcclxuICAgICAgICBtYXJnaW46IDIuNHJlbSAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hbGlnbnJpZ2h0IHtcclxuICAgICAgZmxvYXQ6IHJpZ2h0O1xyXG4gICAgICBkaXNwbGF5OiBpbmxpbmU7XHJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XHJcbiAgICAgIG1hcmdpbi1sZWZ0OiAxLjVyZW07XHJcbiAgICB9XHJcblxyXG4gICAgJi5hbGlnbmNlbnRlciB7XHJcbiAgICAgIG1hcmdpbjogMi40cmVtIGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgJi5hbGlnbmxlZnQge1xyXG4gICAgICBmbG9hdDogbGVmdDtcclxuICAgICAgZGlzcGxheTogaW5saW5lO1xyXG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IDEuNXJlbTtcclxuICAgIH1cclxuXHJcbiAgICBpbWcge1xyXG4gICAgICBtYXJnaW46IDA7XHJcbiAgICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XHJcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICB9XHJcbiAgfVxyXG4gIGEge1xyXG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcclxuICAgIGNvbG9yOiAkY29sb3Itc2VjO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XHJcbiAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgfVxyXG4gIH1cclxuICBsaSB7XHJcbiAgICBtYXJnaW46IDFyZW0gMDtcclxuICAgIGZvbnQtc2l6ZTogMnJlbTtcclxuICB9XHJcbiAgZmlndXJlIHtcclxuICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgIG1hcmdpbi10b3A6IDFlbTtcclxuICAgIG1hcmdpbi1ib3R0b206IDFlbTtcclxuICAgIG1hcmdpbi1yaWdodDogYXV0bztcclxuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuICB9XHJcbiAgZmlnY2FwdGlvbiB7XHJcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XHJcbiAgICBmb250LXNpemU6IDAuOGVtO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gIH1cclxuICAuaW1nLWZ1bGwge1xyXG4gICAgaW1nIHtcclxuICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICB9XHJcbiAgfVxyXG4gIHRhYmxlIHtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdGQge1xyXG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgfVxyXG4gICAgdGgsXHJcbiAgICB0ZCB7XHJcbiAgICAgIHBhZGRpbmc6IDEuMnJlbSAwO1xyXG4gICAgfVxyXG4gICAgdGQge1xyXG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcclxuICAgIH1cclxuICAgIHRib2R5IHtcclxuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcclxuICAgIH1cclxuICAgIHRoIHtcclxuICAgICAgY29sb3I6ICMxMTE7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XHJcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICB9XHJcbiAgfVxyXG4gIC50YWJsZS1yZXNwIHtcclxuICAgIG92ZXJmbG93LXg6IGF1dG87XHJcbiAgICBtYXJnaW4tYm90dG9tOiAzcmVtO1xyXG4gIH1cclxuICBpbWcge1xyXG4gICAgJi5zaXplLWZ1bGwge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgIH1cclxuXHJcbiAgICAmLmFsaWdubm9uZSB7XHJcbiAgICAgIG1hcmdpbjogMy4ycmVtIDA7XHJcblxyXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcclxuICAgICAgICBtYXJnaW46IDIuNHJlbSAwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hbGlnbmNlbnRlciB7XHJcbiAgICAgIG1hcmdpbjogMy4ycmVtIGF1dG87XHJcblxyXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcclxuICAgICAgICBtYXJnaW46IDIuNHJlbSBhdXRvO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgJi5hbGlnbnJpZ2h0IHtcclxuICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICB9XHJcblxyXG4gICAgJi5hbGlnbmxlZnQge1xyXG4gICAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XHJcbiAgICB9XHJcbiAgfVxyXG4gIC5nYWxsZXJ5LWNvbHVtbnMtMiB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgZmxleC13cmFwOiB3cmFwO1xyXG4gICAgZ2FwOiAxLjZyZW07XHJcbiAgICBtYXJnaW46IDMuMnJlbSAwO1xyXG5cclxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xyXG4gICAgICBtYXJnaW46IDIuNHJlbSAwO1xyXG4gICAgfVxyXG5cclxuICAgIGltZyB7XHJcbiAgICAgIG1hcmdpbjogMDtcclxuICAgIH1cclxuXHJcbiAgICAuZ2FsbGVyeS1pdGVtIHtcclxuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMC44cmVtKSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG5cclxuICAgIC5nYWxsZXJ5LWljb24ge1xyXG4gICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgaGVpZ2h0OiAxMDAlO1xyXG5cclxuICAgICAgYSB7XHJcbiAgICAgICAgaW1nIHtcclxuICAgICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLmxpc3RfcGFyYW1ldGVycyB7XHJcbiAgICBtYXJnaW46IDA7XHJcbiAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICBnYXA6IDEuNnJlbSA0LjhyZW07XHJcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XHJcbiAgICBwYWRkaW5nLWJvdHRvbTogMi40cmVtO1xyXG5cclxuICAgIGxpIHtcclxuICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICBnYXA6IDAuNHJlbTtcclxuICAgICAgQGluY2x1ZGUgZnotMjA7XHJcbiAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcclxuICAgICAgcGFkZGluZy1ib3R0b206IDEuMnJlbTtcclxuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDIgLSAyLjRyZW0pO1xyXG4gICAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgcmdiYSgzNiwgMzYsIDM2LCAwLjIpO1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xyXG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMi41cmVtKTtcclxuICAgICAgfVxyXG5cclxuICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIHNwYW4ge1xyXG4gICAgICAgICY6Zmlyc3QtY2hpbGQge1xyXG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICAmOmxhc3QtY2hpbGQge1xyXG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XHJcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAudmlldy1tb3JlLXBhcmFtcyB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcblxyXG4gICAgYnV0dG9uIHtcclxuICAgICAgY29sb3I6IHdoaXRlO1xyXG4gICAgICBtYXJnaW46IDAgYXV0bztcclxuICAgICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgICBmb250LXNpemU6IDJyZW07XHJcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcclxuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xyXG4gICAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XHJcbiAgICAgIHBhZGRpbmc6IDEuMnJlbSAzLjJyZW07XHJcbiAgICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1mb250LXByaSk7XHJcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWM7XHJcbiAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHRyYW5zcGFyZW50O1xyXG5cclxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xyXG4gICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItcHJpO1xyXG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn1cclxuXHJcbi5wb3N0LWRldGFpbC10b2Mge1xyXG4gICNlei10b2MtY29udGFpbmVyIHtcclxuICAgIGJvcmRlcjogMDtcclxuICAgIHBhZGRpbmc6IDA7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICByb3ctZ2FwOiAyLjRyZW07XHJcbiAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XHJcbiAgICBiYWNrZ3JvdW5kOiAjZTRlN2VjO1xyXG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcclxuXHJcbiAgICBAaW5jbHVkZSBtYXgoMTcyNy45OXB4KSB7XHJcbiAgICAgIHJvdy1nYXA6IDEuNnJlbTtcclxuICAgIH1cclxuXHJcbiAgICBhOnZpc2l0ZWQge1xyXG4gICAgICBjb2xvcjogJGNvbG9yLXByaTtcclxuICAgIH1cclxuXHJcbiAgICAuZXotdG9jLXRpdGxlIHtcclxuICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICAgIGZvbnQtc2l6ZTogMy4ycmVtO1xyXG4gICAgICBwYWRkaW5nOiAxLjZyZW0gMS42cmVtIDIuNHJlbTtcclxuICAgICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4yKTtcclxuXHJcbiAgICAgIEBpbmNsdWRlIG1heCgxNzI3Ljk5cHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAxLjZyZW07XHJcbiAgICAgICAgZm9udC1zaXplOiAyLjRyZW07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICAuZXotdG9jLXRpdGxlLXRvZ2dsZSB7XHJcbiAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcblxyXG4gICAgPiBuYXYge1xyXG4gICAgICBwYWRkaW5nOiAwIDEuNnJlbSAxLjZyZW07XHJcbiAgICB9XHJcblxyXG4gICAgLmV6LXRvYy1saXN0LWxldmVsLTEge1xyXG4gICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICByb3ctZ2FwOiAyLjRyZW07XHJcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XHJcblxyXG4gICAgICBAaW5jbHVkZSBtYXgoMTcyNy45OXB4KSB7XHJcbiAgICAgICAgcm93LWdhcDogMS42cmVtO1xyXG4gICAgICB9XHJcblxyXG4gICAgICAuZXotdG9jLWxpbmsge1xyXG4gICAgICAgIEBpbmNsdWRlIGZ6LTIwO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY3VzdG9tLWxvZ28tbGluayB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcblxuICBpbWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uc29jaWFsIHtcbiAgZ2FwOiAxLjZyZW07XG4gIEBpbmNsdWRlIGZsZXg7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgIGdhcDogMS4ycmVtO1xuICB9XG5cbiAgJi1pbWcsXG4gIGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgQGluY2x1ZGUgYm94KDMuMnJlbSk7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0wLjVyZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgQGluY2x1ZGUgYm94KDIuNHJlbSk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY2FydHMtY291bnRlciB7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBjb2x1bW4tZ2FwOiAxLjJyZW07XG4gIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICBwYWRkaW5nOiAwLjZyZW0gMC44cmVtO1xuICBib3JkZXI6IDAuMXJlbSBzb2xpZCNiZmJmYmY7XG5cbiAgaW5wdXQge1xuICAgIGJvcmRlcjogMDtcbiAgICBvdXRsaW5lOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB3aWR0aDogMy44cmVtICFpbXBvcnRhbnQ7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpKTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBmb250LXNpemU6IDJyZW07XG4gICAgQGluY2x1ZGUgYm94KDJyZW0pO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG5cbiAgLnF1YW50aXR5IHtcbiAgICAmOmhhcyguc2NyZWVuLXJlYWRlci10ZXh0KSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaWNvbi1wbGF5IHtcbiAgY29sb3I6IHdoaXRlO1xuICBAaW5jbHVkZSBmei0yMDtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBAaW5jbHVkZSBwb3NDZW50ZXI7XG4gIGNvbHVtbi1nYXA6IDEuNnJlbTtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgYm9yZGVyLXJhZGl1czogMTByZW07XG4gIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgcGFkZGluZzogMS40cmVtIDIuNHJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2M4YzhjODtcblxuICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuICAgIH1cbiAgfVxuXG4gIGltZyB7XG4gICAgaGVpZ2h0OiAycmVtO1xuICAgIHdpZHRoOiAxLjJyZW07XG4gICAgZmxleC1zaHJpbms6IDA7XG4gICAgb2JqZWN0LWZpdDogY292ZXI7XG4gIH1cbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5zdGFyIHtcbiAgZ2FwOiAwLjRyZW07XG4gIHVzZXItc2VsZWN0OiBub25lO1xuICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgJi1saXN0IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAmLWZsZXgge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgY29sdW1uLWdhcDogMC40cmVtO1xuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgQGluY2x1ZGUgYm94KDEuNnJlbSk7XG4gICAgfVxuICB9XG5cbiAgJi1pbmZvIHtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gICAgLnRleHQtMTYge1xuICAgICAgY29sb3I6IHJnYmEoMzYsIDM2LCAzNiwgMC41KTtcblxuICAgICAgJjpsYXN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcInxcIjtcbiAgICAgICAgbWFyZ2luOiAwIDAuNHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWZpbHRlciB7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMDtcbiAgICB0b3A6IDUwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucHJpY2Uge1xuICBnYXA6IDAuOHJlbTtcbiAgQGluY2x1ZGUgZnotMjA7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICBjb2xvcjogJGNvbG9yLXByaSAhaW1wb3J0YW50O1xuXG4gIGlucyB7XG4gICAgQGluY2x1ZGUgZnotMjA7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuc2V0O1xuICB9XG5cbiAgZGVsIHtcbiAgICBAaW5jbHVkZSBmei0xNjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiByZ2JhKDAsIDAsIDAsIDAuMyk7XG5cbiAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIH1cbiAgfVxuXG4gID4gLnRpdGxlLTI0IHtcbiAgICBtYXJnaW4tdG9wOiAxLjJyZW07XG4gICAgY29sb3I6ICRjb2xvci10ZXh0O1xuICB9XG59XG5cbi5uby1wcmljZSB7XG4gIEBpbmNsdWRlIGZ6LTQ4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBjb2xvcjogJGNvbG9yLXByaTtcbn1cblxuLy8tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5mb3JtLWNmIHtcbiAgZ2FwOiAxcmVtO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgLmNoZWNrYm94IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNHJlbTtcbiAgfVxufVxuXG4udGV4dC1zLFxuLmZvcmdldC10eHQge1xuICBsaW5lLWhlaWdodDogMTUwJTtcbiAgY29sb3I6ICMyNDI0MjQ7XG4gIEBpbmNsdWRlIGZ6LTE2O1xuICBmb250LXdlaWdodDogNDAwO1xufVxuXG4ucmVnLWJ0biB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXJnaW4tdG9wOiAyLjRyZW07XG59XG5cbi5jaGVja2JveCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xuXG4gIGlucHV0IHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgb3BhY2l0eTogMDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgaGVpZ2h0OiAwO1xuICAgIHdpZHRoOiAwO1xuXG4gICAgJjpjaGVja2VkIHtcbiAgICAgIH4gLmNoZWNrbWFyayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyZTJiMjQ7XG5cbiAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5jaGVja21hcmsge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC4ycmVtO1xuICBsZWZ0OiAwO1xuICBoZWlnaHQ6IDEuNnJlbTtcbiAgYm9yZGVyOiAxcHggc29saWQgIzAwMDtcbiAgd2lkdGg6IDEuNnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuMnJlbTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAmOjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBsZWZ0OiAwLjRyZW07XG4gICAgdG9wOiAwLjFyZW07XG4gICAgd2lkdGg6IDAuNHJlbTtcbiAgICBoZWlnaHQ6IDAuOHJlbTtcbiAgICBib3JkZXI6IHNvbGlkICNmZmY7XG4gICAgYm9yZGVyLXdpZHRoOiAwIDAuMjhyZW0gMC4yOHJlbSAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucC1icmFuZC1kZXRhaWwsXG4ucC1zZXJ2aWNlLFxuLnAtaG9tZSB7XG4gIC5tLWNvbnRhY3QtY29udGVudCA+IC5idG4ge1xuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLm1uLWNhcnQge1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiAxMDE7XG4gIHdpZHRoOiA2NHJlbTtcbiAgaGVpZ2h0OiAxMDBkdmg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcblxuICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgYm94LXNoYWRvdzogMCAwLjhyZW0gMnJlbSAwIHJnYmEoMCwgMCwgMCwgMC40NSk7XG4gIH1cblxuICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICYtbmF2IHtcbiAgICBoZWlnaHQ6IDEwMGR2aDtcbiAgfVxuXG4gICYtaGVhZGluZyB7XG4gICAgZ2FwOiAxLjZyZW07XG4gICAgcGFkZGluZzogMi40cmVtO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgcmdiYSgxNTIsIDE2MiwgMTc5LCAwLjQpO1xuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBwYWRkaW5nOiAxLjZyZW0gMS4ycmVtO1xuICAgIH1cbiAgfVxuXG4gICYtdGl0bGUge1xuICAgID4gaW1nIHtcbiAgICAgIHdpZHRoOiAyLjdyZW07XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cblxuICAgICZfZGVzYyB7XG4gICAgICBzcGFuIHtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgQGluY2x1ZGUgYm94KDIuOHJlbSk7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhpcmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi10aXRsZSxcbiAgJi10aXRsZV9kZXNjIHtcbiAgICBjb2x1bW4tZ2FwOiAwLjhyZW07XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICB9XG5cbiAgJi1jbG9zZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIEBpbmNsdWRlIGJveCgycmVtKTtcblxuICAgIGltZyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgIH1cbiAgfVxuXG4gICYtYWN0aW9uIHtcbiAgICBnYXA6IDIuNHJlbTtcbiAgICBwYWRkaW5nOiAyLjRyZW07XG4gICAgbWFyZ2luLXRvcDogYXV0bztcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgYm9yZGVyLXRvcDogMC4xcmVtIHNvbGlkICRjb2xvci10aGlyZDtcbiAgICBib3gtc2hhZG93OiAwIC0wLjJyZW0gMC42cmVtIDAgcmdiYSgwLCAwLCAwLCAwLjMpO1xuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBnYXA6IDEuMnJlbTtcbiAgICAgIHBhZGRpbmc6IDEuMnJlbTtcbiAgICB9XG4gIH1cblxuICAmLXByb2R1Y3Qge1xuICAgIHJvdy1nYXA6IDAuNnJlbTtcbiAgICBtaW4td2lkdGg6IDE1LjhyZW07XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICByb3ctZ2FwOiAwLjhyZW07XG4gICAgfVxuXG4gICAgLnRleHQtMTQge1xuICAgICAgbGluZS1oZWlnaHQ6IDEyMCU7XG4gICAgfVxuXG4gICAgLmFtb3VudCB7XG4gICAgICBsaW5lLWhlaWdodDogMTUwJTtcbiAgICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XG4gICAgfVxuICB9XG5cbiAgJi1idXR0b24ge1xuICAgIGdhcDogMS42cmVtO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcblxuICAgIC5idG4ge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW0gIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyIC0gMC44cmVtKTtcbiAgICAgIHBhZGRpbmc6IDEuMnJlbSAxLjZyZW0gIWltcG9ydGFudDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMC40cmVtIDAuNHJlbSAwIHJnYmEoMCwgMCwgMCwgMC4yNSk7XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICBwYWRkaW5nOiAwLjhyZW0gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWRlbGV0ZSB7XG4gICAgbWFyZ2luLWxlZnQ6IGF1dG87XG5cbiAgICAuYnRuIHtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIH1cbiAgfVxuXG4gICYtbGlzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBvdmVyZmxvdzogaGlkZGVuIGF1dG87XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICY6aGFzKC5tbi1jYXJ0LWl0ZW0gPiBwKSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgfVxuICB9XG5cbiAgJi1pdGVtIHtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIC8vIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCByZ2JhKDE1MiwgMTYyLCAxNzksIDAuNCk7XG5cbiAgICA+IHAge1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgQGluY2x1ZGUgZnotMjA7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgZmxleC1jZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgJi1ib3gge1xuICAgIGdhcDogMi40cmVtO1xuICAgIHBhZGRpbmc6IDIuNHJlbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgZ2FwOiAxLjZyZW07XG4gICAgfVxuXG4gICAgLmlubmVyLWNsb3NlIHtcbiAgICAgIHRvcDogMC44cmVtO1xuICAgICAgcmlnaHQ6IDAuOHJlbTtcbiAgICAgIEBpbmNsdWRlIGJveCgycmVtKTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2EwMDtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgaW52ZXJ0KDEpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgdG9wOiAwLjhyZW07XG4gICAgICAgIHJpZ2h0OiAwLjhyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pbWcge1xuICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgQGluY2x1ZGUgYm94KDEwcmVtKTtcbiAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuXG4gICYtY29udGVudCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcm93LWdhcDogMS42cmVtO1xuXG4gICAgLnRleHQtMTYge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LTE0IHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxNDAlO1xuICAgIH1cbiAgfVxuXG4gICYtdmFsdWUge1xuICAgIGNvbHVtbi1nYXA6IDEuMnJlbTtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG5cbiAgJi1wcmljZSB7XG4gICAgLnByaWNlIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIGlucyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuc2V0O1xuICAgICAgfVxuXG4gICAgICBkZWwge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNhcnRtbiB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGhlaWdodDogY2FsYygxMDBkdmggLSA3LjdyZW0pO1xuXG4gIC5jYXJ0LWVtcHR5IHtcbiAgICBAaW5jbHVkZSBmei0yMDtcbiAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBAaW5jbHVkZSBmbGV4LWNlbnRlcjtcbiAgfVxuXG4gIHVsLnByb2R1Y3RfbGlzdF93aWRnZXQgbGkge1xuICAgIGEucmVtb3ZlIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cblxuLmNhcnQtYm94IHtcbiAgLm1uLWNhcnQge1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3gtc2hhZG93OiB1bnNldDtcbiAgICB0cmFuc2Zvcm06IHVuc2V0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICB6LWluZGV4OiAxO1xuXG4gICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG5cbiAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdIHtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgIH1cbiAgfVxuXG4gIC5tbi1jYXJ0LW5hdiB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuXG4gICAgLm1uLWNhcnQtbGlzdCB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICB9XG5cbiAgLm1uLWNhcnQtYWN0aW9uIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLm1uLWNhcnQtaGVhZGluZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5tbi1jYXJ0LWxpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcbiAgfVxufVxuXG4ucG9wLXN1Y2Nlc3Mge1xuICAucG9wdXAtbWFpbiB7XG4gICAgbWF4LXdpZHRoOiAxNTJyZW07XG4gICAgd2lkdGg6IDkwJTtcbiAgfVxufVxuXG4ubWVudS1zZWFyY2gtYm94IHtcbiAgLy8gbWF4LWhlaWdodDogMzVyZW07XG4gIHdpZHRoOiAxMDAlO1xuICByb3ctZ2FwOiAwO1xuICBwYWRkaW5nOiAyLjRyZW07XG4gIGJveC1zaGFkb3c6IDAgMC44cmVtIDEuMnJlbSAwIHJnYmEoNDgsIDQ4LCA0OCwgMC4xKTtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAwIDAuOHJlbSAxLjJyZW0gMCByZ2JhKDQ4LCA0OCwgNDgsIDAuMSk7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogMCAwIDEuMnJlbSAxLjJyZW07XG5cbiAgLmZvcm0ge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICA+IC5mb3JtLWdyb3VwIHtcbiAgICAgIHBhZGRpbmc6IDAgY2FsYyh2YXIoLS1jZykgLyAyKTtcbiAgICB9XG4gIH1cbn1cblxuLnBvcHVwLXNlYXJjaCB7XG4gIC5tZW51LXNlYXJjaC1saXN0IHtcbiAgICBtYXgtaGVpZ2h0OiA0NXJlbTtcbiAgICBvdmVyZmxvdzogaGlkZGVuIGF1dG87XG5cbiAgICAmOmhhcygubWVudS1zZWFyY2gtaXRlbSkge1xuICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ubWVudS1zZWFyY2gtaXRlbSB7XG4gICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4ycmVtO1xuICAgIHBhZGRpbmctYm90dG9tOiAxLjJyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkICNmMGYwZjA7XG4gIH1cbn1cblxuLm1lbnUtc2VhcmNoLWJsb2NrIHtcbiAgY29sdW1uLWdhcDogMS4ycmVtO1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4ubWVudS1zZWFyY2gtaW1nIHtcbiAgZmxleC1zaHJpbms6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIGJveCg4cmVtKTtcbiAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cblxuLm1lbnUtc2VhcmNoLWNvbnRlbnQge1xuICByb3ctZ2FwOiAxLjZyZW07XG5cbiAgLnR0IHtcbiAgICBjb2xvcjogIzIzMjMyMztcbiAgICB0cmFuc2l0aW9uOiAwLjRzIGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgPiAqIHtcbiAgICBmb250LXNpemU6IDEuOHJlbSAhaW1wb3J0YW50O1xuICB9XG59XG4iLCIudGl0bGUge1xuICAmLTY0IHtcbiAgICBAaW5jbHVkZSBmei02NDtcbiAgfVxuXG4gICYtNDgge1xuICAgIEBpbmNsdWRlIGZ6LTQ4O1xuICB9XG5cbiAgJi00MCB7XG4gICAgQGluY2x1ZGUgZnotNDA7XG4gIH1cblxuICAmLTM2IHtcbiAgICBAaW5jbHVkZSBmei0zNjtcbiAgfVxuXG4gICYtMzIge1xuICAgIEBpbmNsdWRlIGZ6LTMyO1xuICB9XG5cbiAgJi0yOCB7XG4gICAgQGluY2x1ZGUgZnotMjg7XG4gIH1cblxuICAmLTI2IHtcbiAgICBAaW5jbHVkZSBmei0yNjtcbiAgfVxuXG4gICYtMjQge1xuICAgIEBpbmNsdWRlIGZ6LTI0O1xuICB9XG59XG5cbi50ZXh0IHtcbiAgJi0yMCB7XG4gICAgQGluY2x1ZGUgZnotMjA7XG4gIH1cblxuICAmLTE4IHtcbiAgICBAaW5jbHVkZSBmei0xODtcbiAgfVxuXG4gICYtMTYge1xuICAgIC8vIEBpbmNsdWRlIGZ6LTE2O1xuICAgIEBpbmNsdWRlIGZ6LTIwO1xuICB9XG5cbiAgJi0xNCB7XG4gICAgLy8gQGluY2x1ZGUgZnotMTQ7XG4gICAgQGluY2x1ZGUgZnotMTY7XG4gIH1cbn1cblxuLy8tIE90aGVyXG4uZiB7XG4gICYtcHJpIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmkpO1xuICB9XG5cbiAgJi10dCB7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtdGl0bGUpO1xuICB9XG5cbiAgJi1kZXNjIHtcbiAgICBmb250LWZhbWlseTogdmFyKC0tZm9udC1kZXNjKTtcbiAgfVxufVxuXG4uZnMtaSB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnQge1xuICAmLWNhcCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gIH1cblxuICAmLXVwIHtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB9XG5cbiAgJi1jZW50ZXIge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuXG4uZncge1xuICAmLTkwMCB7XG4gICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgfVxuXG4gICYtYiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cblxuICAmLXNiIHtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG5cbiAgJi1tIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgJi1uIHtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG5cbiAgJi10IHtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICB9XG59XG5cbi5jbC13aGl0ZSB7XG4gIGNvbG9yOiB3aGl0ZTtcbn1cblxuLmNsLXRleHQge1xuICBjb2xvcjogJGNvbG9yLXRleHQ7XG59XG5cblxuLnQtY2VudGVyIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufSIsIi5zd2lwZXItcGFnaW5hdGlvbiB7XG4gIG1hcmdpbjogMy4ycmVtIGF1dG8gMDtcbiAgdHJhbnNmb3JtOiB1bnNldCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG5cbiAgJi1idWxsZXQge1xuICAgICYtYWN0aXZlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWM7XG4gICAgfVxuICB9XG59XG5cbi5zd2lwZXItYnV0dG9uIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgJi1wcmV2IHtcbiAgICBsZWZ0OiAtNi44cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoOTBkZWcpO1xuXG4gICAgQGluY2x1ZGUgbWF4KDE2NTBweCkge1xuICAgICAgbGVmdDogLTEuMnJlbTtcbiAgICB9XG4gIH1cblxuICAmLW5leHQge1xuICAgIHJpZ2h0OiAtNi44cmVtO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKSByb3RhdGUoLTkwZGVnKTtcblxuICAgIEBpbmNsdWRlIG1heCgxNjUwcHgpIHtcbiAgICAgIHJpZ2h0OiAtMS4ycmVtO1xuICAgIH1cbiAgfVxuXG4gICYtcHJldixcbiAgJi1uZXh0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgYm94KDIuNHJlbSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxLjJyZW07XG4gICAgICBoZWlnaHQ6IDAuNnJlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIEBpbmNsdWRlIGJnSW1hZ2UodG9wLCBjb3Zlcik7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi8uLi9hc3NldHMvaW1nL2ljb25zL2ljb24tY2hldnJvbi5zdmdcIik7XG4gICAgfVxuICB9XG59XG4iLCIuYy1jb21wYXJlIHtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiA1MCU7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiAxMDU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgMTAwJSk7XG5cbiAgJi5pcy1hY3RpdmUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICB9XG5cbiAgJi13cmFwIHtcbiAgICBmaWx0ZXI6IGRyb3Atc2hhZG93KDAgMC44cmVtIDIuNHJlbSByZ2JhKDAsIDAsIDAsIDAuMDUpKTtcbiAgfVxuXG4gICYtcm93IHtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjMDBhNTIzO1xuICB9XG5cbiAgJi1jb2wge1xuICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgcGFkZGluZzogMi40cmVtO1xuICAgIH1cblxuICAgICY6aGFzKC5jLWNvbXBhcmUtaW1nKSB7XG4gICAgICBAaW5jbHVkZSBtaW4oNTc3cHgpIHtcbiAgICAgICAgJiNpdGVtLTEge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMS4ycmVtIDAgMi40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiNpdGVtLTIge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMS4ycmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgJiNpdGVtLTMge1xuICAgICAgICAgIHBhZGRpbmc6IDAgMi40cmVtIDAgMS4ycmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi10b3A6IDIuNHJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWJveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGdhcDogMC44cmVtIDEuMnJlbTtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmOmhhcyguYy1jb21wYXJlLWltZykge1xuICAgICAgQGluY2x1ZGUgbWluKDU3N3B4KSB7XG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNkYWRhZGE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1heC13aWR0aDogMjByZW07XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cblxuICAmLWNvbnRlbnQge1xuICAgIC50ZXh0LTIwIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtZW1wdHkge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgcm93LWdhcDogMC44cmVtO1xuICAgIH1cblxuICAgIC5pbm5lciB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIEBpbmNsdWRlIGJveCg4cmVtKTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgICAgYm9yZGVyOiAwLjJyZW0gZGFzaGVkICM3YjdiN2I7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMDI0cHgpIHtcbiAgICAgICAgQGluY2x1ZGUgYm94KDQuOHJlbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnBsdXNtaW51cyB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBAaW5jbHVkZSBib3goMy4ycmVtKTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICBAaW5jbHVkZSBib3goMnJlbSk7XG4gICAgICB9XG5cbiAgICAgICY6YmVmb3JlLFxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwLjNyZW07XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDFyZW07XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMxMzEzMTM7XG4gICAgICB9XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIH1cblxuICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSkgcm90YXRlKDkwZGVnKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dC0xNiB7XG4gICAgICBjb2xvcjogIzdiN2I3YjtcblxuICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4ycmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICYtY2xvc2Uge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAzO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgQGluY2x1ZGUgYm94KDRyZW0pO1xuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBAaW5jbHVkZSBib3goMy4ycmVtKTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICB9XG4gIH1cblxuICAmLWFjdGlvbiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZ2FwOiAxLjJyZW0gMi40cmVtO1xuICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgIGJvcmRlci10b3A6IDAuMXJlbSBzb2xpZCAjZGFkYWRhO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgZ2FwOiAxLjJyZW07XG4gICAgfVxuXG4gICAgPiAqIHtcbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDAuNnJlbSkgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubGluayB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1ib3gsXG4gICYtYWN0aW9uIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgcGFkZGluZzogMi40cmVtO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgcGFkZGluZzogMC44cmVtO1xuICAgIH1cbiAgfVxuXG4gIC5pY29uLWxlc3Mge1xuICAgIEBpbmNsdWRlIGZ6LTE4O1xuICAgIHBhZGRpbmc6IDEuMnJlbTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgY29sb3I6ICMwMTc1MmY7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICBjb2x1bW4tZ2FwOiAwLjhyZW07XG4gICAgd2lkdGg6IGZpdC1jb250ZW50O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbSAwLjhyZW0gMCAwO1xuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgcGFkZGluZzogMC44cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ucC1jb21wYXJlIHtcbiAgLm1lbnUtc2VhcmNoLWJveCAuZm9ybSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHJvdy1nYXA6IDEuNnJlbTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgPiAuZm9ybS1ncm91cCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG59XG4iLCJAa2V5ZnJhbWVzIG9wYWNpdHlBbmkge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzcGluIHtcbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSkgcm90YXRlKDM2MGRlZyk7XG4gIH1cbn0iLCJ1bC5wYWdlLW51bWJlcnMge1xuICBnYXA6IDEuNnJlbTtcbiAgQGluY2x1ZGUgZmxleC1jZW50ZXI7XG5cbiAgbGkge1xuICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgIEBpbmNsdWRlIGJveCgzLjJyZW0pO1xuXG4gICAgJjpub3QoOmhhcygucHJldikpOm5vdCg6aGFzKC5uZXh0KSkge1xuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgcmdiYSgzNiwgMzYsIDM2LCAwLjIpO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWM7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyguY3VycmVudCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlYztcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBhLFxuICAgIHNwYW4ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgIH1cbiAgfVxuXG4gIC5wcmV2IHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gIH1cblxuICAubmV4dCB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgfVxuXG4gIC5wcmV2LFxuICAubmV4dCB7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDEuNnJlbTtcbiAgICAgIGhlaWdodDogMC44cmVtO1xuICAgIH1cbiAgfVxufVxuIiwiLmJyZWFkY3J1bWIge1xuICBwYWRkaW5nOiA0cmVtIDA7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICBwYWRkaW5nOiAyLjRyZW0gMDtcbiAgfVxuXG4gICYtbGlzdCB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICB9XG5cbiAgJi1pdGVtIHtcbiAgICBAaW5jbHVkZSBmei0yMDtcblxuICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAmOjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiPlwiO1xuICAgICAgICBtYXJnaW46IDAgMC40cmVtO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0O1xuICAgICAgfVxuICAgIH1cblxuICAgIGEge1xuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LTE0IHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuICB9XG59XG4iLCIubWVudS1hc2lkZSB7XG4gIHRvcDogMDtcbiAgYm90dG9tOiAwO1xuICB6LWluZGV4OiAxMDE7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGhlaWdodDogMTAwZHZoO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXItcmlnaHQ6IDAuMXJlbSBzb2xpZCByZ2JhKDExOCwgMTE4LCAxMTgsIDAuMTIpO1xuXG4gIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiA4cmVtO1xuICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgfVxuXG4gIEBpbmNsdWRlIG1heCgxMzY1Ljk4cHgpIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgd2lkdGg6IDMzcmVtO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICByaWdodDogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gIH1cblxuICAmLmlzLWFjdGl2ZSxcbiAgJjpob3ZlciB7XG4gICAgd2lkdGg6IDMzcmVtO1xuXG4gICAgLm1lbnUtYXNpZGUtaXRlbSA+IGltZyB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cblxuICAgIC5tZW51LWFzaWRlLWNhdGUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgIG1heC1oZWlnaHQ6IDNyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgIHRyYW5zaXRpb246IDAuNHMgZWFzZS1pbi1vdXQgMC40cztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51LWFzaWRlLWxpbmsge1xuICAgICAgc3BhbiB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICBtYXgtaGVpZ2h0OiA1cmVtO1xuXG4gICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIGVhc2UtaW4tb3V0IDAuNHM7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubWVudS1hc2lkZS1pbmZvIHtcbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgfVxuXG4gICAgICAmX3Bob25lIC5kZXNjIHtcbiAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICBtYXgtaGVpZ2h0OiA2LjRyZW07XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgdHJhbnNpdGlvbjogMC40cyBlYXNlLWluLW91dCAwLjRzO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICZfY2hhdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxLjZyZW07XG5cbiAgICAgICAgLmJveCB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG5cbiAgICAgICAgICAudGV4dC0yMCB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgICBtYXgtd2lkdGg6IHVuc2V0O1xuICAgICAgICAgICAgbWF4LWhlaWdodDogNHJlbTtcblxuICAgICAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIGVhc2UtaW4tb3V0IDAuNHM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgIHdpZHRoOiA1LjhyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmxpc3Qge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgbWF4LXdpZHRoOiB1bnNldDtcbiAgICAgICAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDMwcmVtO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjRzIGVhc2UtaW4tb3V0IDAuNHM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1pY29uIHtcbiAgICBwYWRkaW5nOiAxcmVtIDEuNnJlbSAwO1xuICB9XG5cbiAgJi1jYXRlIHtcbiAgICBoZWlnaHQ6IDQuOHJlbTtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgQGluY2x1ZGUgZnotMjA7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgIHBhZGRpbmc6IDAuOHJlbSAxLjZyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItdGhpcmQ7XG5cbiAgICBpbWcge1xuICAgICAgd2lkdGg6IDIuNHJlbTtcbiAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIHdpZHRoOiAwO1xuICAgICAgb3BhY2l0eTogMDtcbiAgICAgIG1heC13aWR0aDogMDtcbiAgICAgIG1heC1oZWlnaHQ6IDIuNHJlbTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwLjhyZW07XG4gICAgfVxuICB9XG5cbiAgJi1saXN0IHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICByb3ctZ2FwOiAyLjRyZW07XG4gICAgbWFyZ2luLXRvcDogMi40cmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAmLWl0ZW0ge1xuICAgIHBhZGRpbmc6IDAgMi44cmVtO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgPiBpbWcge1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgICAgIH1cblxuICAgICAgICA+IC5jaGlsZCB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHVuc2V0O1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBpbWcge1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICB9XG5cbiAgICAmLmlzLWFjdGl2ZSB7XG4gICAgICA+IC5jaGlsZCB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdW5zZXQ7XG4gICAgICAgIGxlZnQ6IDAgIWltcG9ydGFudDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1iYWNrIHtcbiAgICBjb2x1bW4tZ2FwOiAxLjJyZW07XG4gICAgQGluY2x1ZGUgZmxleC1jZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBzdHJldGNoO1xuICAgIHBhZGRpbmc6IDEuMnJlbSAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCByZ2JhKDAsIDAsIDAsIDAuMSk7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIHNwYW4ge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS42cmVtO1xuICAgIH1cbiAgfVxuXG4gICYtYmcge1xuICAgIHBhZGRpbmc6IDEuMnJlbTtcblxuICAgIC5pbWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLXRvcDogY2FsYygxNzIgLyAyNjQgKiAxMDAlKTtcblxuICAgICAgaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgaW1nQ292ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1iYWNrIHtcbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuXG4gICYtbGluayB7XG4gICAgQGluY2x1ZGUgZnotMjA7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICBjb2x1bW4tZ2FwOiAxLjZyZW07XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBzcGFuIHtcbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIG1heC13aWR0aDogMDtcbiAgICAgICAgbWF4LWhlaWdodDogMi40cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIGltZyB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgQGluY2x1ZGUgYm94KDJyZW0pO1xuICAgIH1cbiAgfVxuXG4gICYtaW5mbyB7XG4gICAgbWFyZ2luLXRvcDogYXV0bztcblxuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIHBhZGRpbmc6IDAuNHJlbTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgcGFkZGluZzogMS42cmVtO1xuICAgIH1cblxuICAgICZfcGhvbmUge1xuICAgICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gICAgICBpbWcge1xuICAgICAgICB6LWluZGV4OiAxO1xuICAgICAgICB3aWR0aDogNy4ycmVtO1xuICAgICAgICBoZWlnaHQ6IDYuNHJlbTtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgIC5kZXNjIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0yLjRyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgbWF4LXdpZHRoOiAwO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDQuOHJlbTtcbiAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgIG1heC13aWR0aDogdW5zZXQ7XG4gICAgICAgICAgbWF4LWhlaWdodDogNi40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgPiAqIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC0xNCB7XG4gICAgICAgICAgcGFkZGluZzogMC40cmVtIDFyZW0gMC40cmVtIDIuNHJlbTtcblxuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci10aGlyZDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXcoMjBkZWcpO1xuICAgICAgICAgICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAkY29sb3ItcHJpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogc2tldygtMjBkZWcpO1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICZfY2hhdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICByb3ctZ2FwOiAxLjZyZW07XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgJGNvbG9yLXRoaXJkO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgIHdpZHRoOiA2LjJyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgcGFkZGluZzogMS44cmVtIDAuNHJlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMS42cmVtO1xuICAgICAgfVxuXG4gICAgICAuYm94IHtcbiAgICAgICAgY29sdW1uLWdhcDogMi40cmVtO1xuICAgICAgICBtYXJnaW4tbGVmdDogMC42cmVtO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDQuMnJlbTtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtMjAge1xuICAgICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgIG1heC13aWR0aDogMDtcbiAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIuNHJlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmxpc3Qge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICByb3ctZ2FwOiAxLjZyZW07XG4gICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgIHdpZHRoOiAwO1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgbWF4LXdpZHRoOiAwO1xuICAgICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICB9XG5cbiAgICAgICAgJi1ib3gge1xuICAgICAgICAgIGNvbHVtbi1nYXA6IDIuNHJlbTtcbiAgICAgICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmLWltZyB7XG4gICAgICAgICAgbWluLXdpZHRoOiA1LjhyZW07XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94KDMuMnJlbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnRleHQtMjAge1xuICAgICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLXByaTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVudS1hc2lkZS1pdGVtID4gaW1nIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgLmNoaWxkIHtcbiAgICB0b3A6IDA7XG4gICAgb3BhY2l0eTogMDtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgaGVpZ2h0OiAxMDBkdmg7XG4gICAgcm93LWdhcDogMi40cmVtO1xuICAgIG1heC13aWR0aDogMzNyZW07XG4gICAgbWluLXdpZHRoOiAzM3JlbTtcbiAgICB3aWR0aDogbWF4LWNvbnRlbnQ7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICBsZWZ0OiBjYWxjKDEwMCUgKyAwLjFyZW0pO1xuICAgIGJvcmRlci1yaWdodDogMC4xcmVtIHNvbGlkIHJnYmEoMTE4LCAxMTgsIDExOCwgMC4xMik7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBwYWRkaW5nOiAzLjJyZW0gMDtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xcmVtKTtcblxuICAgICAgLmNoaWxkLTEge1xuICAgICAgICBsZWZ0OiBjYWxjKDEwMCUgKyAwLjJyZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tZW51LWFzaWRlLWl0ZW0ge1xuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICBwYWRkaW5nOiAwIDEuMnJlbTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoLm1lbnUtYXNpZGUtYmFjaykge1xuICAgICAgICA+IGltZyB7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gIC5vdmVybGF5LW1lbnU6aGFzKCsgLm1lbnUtYXNpZGU6aG92ZXIpIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgcG9pbnRlci1ldmVudHM6IGF1dG87XG4gIH1cbn1cbiIsIi5oZWFkZXIge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB6LWluZGV4OiA5OTtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICYuaXMtZml4ZWQge1xuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTByZW0pO1xuXG4gICAgICAuaGVhZGVyLW1haW4ge1xuICAgICAgICBwYWRkaW5nOiAxLjFyZW0gMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW4tY2FydCxcbiAgICAub3ZlcmxheSxcbiAgICAub3ZlcmxheS1jYXJ0LFxuICAgIC5oZWFkZXItbmF2IHtcbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgdG9wOiBjYWxjKHZhcigtLWhlaWdodC1oZCkgLSA4cmVtKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLXRvcCB7XG4gICAgZ2FwOiA2LjRyZW07XG4gICAgcGFkZGluZzogMnJlbSAwO1xuICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIGdhcDogMS4ycmVtO1xuICAgICAgcGFkZGluZzogMi4xMzNyZW0gMDtcbiAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIGdhcDogMC44cmVtO1xuICAgIH1cblxuICAgICYtYWN0aW9uIHtcbiAgICAgIGdhcDogMS42cmVtO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICBnYXA6IDEuMnJlbTtcbiAgICAgIH1cblxuICAgICAgLmhlYWRlci1tYWluLWNvbXBhcmUsXG4gICAgICAuaGVhZGVyLW1haW4tZG9jLFxuICAgICAgLmhlYWRlci1tYWluLWNhcnQge1xuICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZW51LWl0ZW0ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIEBpbmNsdWRlIGJveCgycmVtKTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3goMi40cmVtKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLXBob25lIHtcbiAgICAgIG1heC13aWR0aDogNi4zcmVtO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1zaWduIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIEBpbmNsdWRlIGJveCg0LjVyZW0pO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIEBpbmNsdWRlIGJveCgyLjRyZW0pO1xuICAgICAgfVxuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgLnVzZXItaW5mbyB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIDApO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC51c2VyIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICYtaW5mbyB7XG4gICAgICAgICAgdG9wOiAxMDAlO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICAgIHdpZHRoOiAyOHJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAycmVtKTtcbiAgICAgICAgICBib3gtc2hhZG93OiAwIDAuOHJlbSAyLjRyZW0gMCByZ2JhKDE0OSwgMTU3LCAxNjUsIDAuMik7XG4gICAgICAgIH1cblxuICAgICAgICAmLWFjdGlvbiB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICByb3ctZ2FwOiAxLjJyZW07XG4gICAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICAgIC50ZXh0LW0ge1xuICAgICAgICAgICAgQGluY2x1ZGUgZnotMTg7XG4gICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1zZWFyY2gge1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgZm9ybSB7XG4gICAgICAgIC5mb3JtLWxhYmVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAwLjlyZW07XG4gICAgICAgICAgY29sdW1uLWdhcDogMXJlbTtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwcmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogdW5zZXQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gICAgICAgICAgJjpoYXMoaW5wdXQ6aG92ZXIpLFxuICAgICAgICAgICY6aGFzKGlucHV0OmZvY3VzKSB7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6ICRjb2xvci1zZWM7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGhlaWdodDogNHJlbTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICBAaW5jbHVkZSBib3goNHJlbSk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1jZW50ZXI7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoaXJkO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1zZWM7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgQGluY2x1ZGUgYm94KDEuNnJlbSk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1maXhlZCB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgZ2FwOiAyLjRyZW07XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDEwMTtcbiAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgIEBpbmNsdWRlIHNoYWRvdztcbiAgICAgIHBhZGRpbmc6IDEuOTI2cmVtO1xuICAgICAgQGluY2x1ZGUgZmxleC1pY2VudGVyO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgPiAqIHtcbiAgICAgICAgZmxleDogMTtcblxuICAgICAgICAubWVudS1pdGVtIHtcbiAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICYtbG9nbyxcbiAgICAmLWFjdGlvbiB7XG4gICAgICBmbGV4LXNocmluazogMDtcbiAgICB9XG5cbiAgICAmLXBob25lLFxuICAgICYtc2lnbiB7XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1tYWluIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBnYXA6IDYuNHJlbTtcbiAgICAgIHBhZGRpbmc6IDEuNnJlbSAwO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoMTU1MHB4KSB7XG4gICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgfVxuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogY2FsYygxMDB2dyArIDNyZW0pO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGlyZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICB0b3A6IDA7XG4gICAgICByaWdodDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIHotaW5kZXg6IDEwMTtcbiAgICAgIHdpZHRoOiAzMnJlbTtcbiAgICAgIGhlaWdodDogMTAwZHZoO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbigwLjZzKTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcblxuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1jYXRlIHtcbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkIHJnYmEoMCwgMCwgMCwgMC4xKTtcbiAgICAgIH1cblxuICAgICAgLmNhdGUtYnRuIHtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgY29sdW1uLWdhcDogMS42cmVtO1xuICAgICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICAgICAgcGFkZGluZzogMC44cmVtIDEuNnJlbTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGlyZDtcbiAgICAgICAgfVxuXG4gICAgICAgICYtYmFyIHtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgQGluY2x1ZGUgZmxleC1jZW50ZXI7XG4gICAgICAgICAgQGluY2x1ZGUgYm94KDMuMnJlbSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoaXJkO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHdpZHRoOiAxLjZyZW07XG4gICAgICAgICAgICBoZWlnaHQ6IDEuMXJlbTtcbiAgICAgICAgICAgIG9iamVjdC1maXQ6IGNvdmVyO1xuXG4gICAgICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBzYXR1cmF0ZSgxMDAlKSBpbnZlcnQoMTclKSBzZXBpYSg2NCUpIHNhdHVyYXRlKDY3MjYlKSBodWUtcm90YXRlKDE5OWRlZylcbiAgICAgICAgICAgICAgICBicmlnaHRuZXNzKDEwMiUpIGNvbnRyYXN0KDEwMCUpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtYXgoMTU1MHB4KSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1idG4ge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgICBjb2x1bW4tZ2FwOiAxLjJyZW07XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gICAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIC5idG4ge1xuICAgICAgICB3aWR0aDogY2FsYygxMDAlIC8gMiAtIDAuNnJlbSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1hY3Rpb24ge1xuICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLm1lbnUtaXRlbSB7XG4gICAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgQGluY2x1ZGUgYm94KDQuNXJlbSk7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgJjpob3ZlciBpbWcge1xuICAgICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjIpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDIuNXJlbTtcbiAgICAgICAgICBmbGV4LXNocmluazogMDtcbiAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1kb2Mge1xuICAgICAgLm1uLWNhcnQtYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNhcnRzLWNvdW50ZXIge1xuICAgICAgICBjb2x1bW4tZ2FwOiAwLjcxcmVtO1xuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICB3aWR0aDogMS44cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWRvYyxcbiAgICAmLWNhcnQge1xuICAgICAgJi5pcy1hY3RpdmUge1xuICAgICAgICAubW4tY2FydCB7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1uYXYge1xuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5tZW51IHtcbiAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgICBtYXJnaW46IDAgLTEuMnJlbTtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIH1cblxuICAgICAgJi1pdGVtIHtcbiAgICAgICAgcGFkZGluZzogMCAxLjJyZW07XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDEuNXJlbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwLjFyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjEpO1xuICAgICAgICB9XG5cbiAgICAgICAgJi5jdXJyZW50LW1lbnUtaXRlbSB7XG4gICAgICAgICAgLm1lbnUtbGluazo6YmVmb3JlIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLWxpbmsge1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuXG4gICAgICAgICAgJjpob3Zlcjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtYXgoMTM2NnB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIH1cblxuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwLjJyZW07XG4gICAgICAgICAgYm90dG9tOiAtMC41cmVtO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWxvZ28tbGluayB7XG4gICAgbWF4LXdpZHRoOiA0MS44cmVtO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgbWF4LXdpZHRoOiAzMHJlbTtcbiAgICB9XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIG1heC13aWR0aDogMjRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBtYXgtd2lkdGg6IDIwcmVtO1xuICAgIH1cbiAgfVxufVxuXG4uaGVhZGVyLW1haW4tZG9jLFxuLmhlYWRlci1tYWluLWNhcnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi5oZWFkZXItY2FydF9udW1iZXIsXG4uaGVhZGVyLXF1b3RlX251bWJlciB7XG4gIHRvcDogLTFyZW07XG4gIHJpZ2h0OiAtMXJlbTtcbiAgY29sb3I6IHdoaXRlO1xuICBmb250LXdlaWdodDogNzAwO1xuICBib3JkZXItcmFkaXVzOiA1MCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgQGluY2x1ZGUgYm94KDIuNHJlbSk7XG4gIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuXG4gIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICB0b3A6IC0xLjJyZW07XG4gICAgcmlnaHQ6IC0xLjJyZW07XG4gICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgQGluY2x1ZGUgYm94KDJyZW0pO1xuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubGFuZyB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmhvdmVyIHtcbiAgICAubGFuZy1oZWFkID4gaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuXG4gICAgLmxhbmctY2hpbGQge1xuICAgICAgb3BhY2l0eTogMTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYtaGVhZCB7XG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgYm9yZGVyLXJhZGl1czogMTByZW07XG4gICAgICBwYWRkaW5nOiAwLjhyZW0gMS4ycmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5LCAzNywgNjIsIDAuMSk7XG4gICAgfVxuXG4gICAgJi1pY29uIHtcbiAgICAgID4gaW1nIHtcbiAgICAgICAgQGluY2x1ZGUgYm94KDIuNHJlbSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgICAgQGluY2x1ZGUgYm94KDJyZW0pO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgID4gKiB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgfVxuICAgIH1cblxuICAgID4gaW1nIHtcbiAgICAgIHdpZHRoOiAwLjhyZW07XG4gICAgICBoZWlnaHQ6IDAuNHJlbTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuXG4gICYtaGVhZCxcbiAgJi1oZWFkLWljb24ge1xuICAgIGNvbHVtbi1nYXA6IDAuNHJlbTtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG4gIH1cblxuICAmLWNoaWxkIHtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMTAwJTtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDM7XG4gICAgQGluY2x1ZGUgc2hhZG93O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgd2lkdGg6IG1heC1jb250ZW50O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcblxuICAgICYtaXRlbSB7XG4gICAgICBnYXA6IDAuNHJlbTtcbiAgICAgIHBhZGRpbmc6IDAuOHJlbTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSg5LCAzNywgNjIsIDAuMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWxpbmsge1xuICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgIH1cbiAgfVxufVxuXG4vLy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLm1lbnUtYmFyIHtcbiAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAubWVudS1zcGFuIHtcbiAgICBzcGFuIHtcbiAgICAgIHdpZHRoOiAyLjRyZW07XG4gICAgICBoZWlnaHQ6IDAuMnJlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBtYXJnaW4tdG9wOiAwLjRyZW07XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC41cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRleHQ7XG5cbiAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm1lbnUtY2xvc2UtaWNvbiB7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxLjJyZW07XG4gIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjZjBmMGYwO1xuXG4gIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgaW1nIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBAaW5jbHVkZSBib3goMy4ycmVtKTtcbiAgICBmaWx0ZXI6IGJyaWdodG5lc3MoMCkgc2F0dXJhdGUoMTAwJSkgaW52ZXJ0KDklKSBzZXBpYSgzJSkgc2F0dXJhdGUoMCUpIGh1ZS1yb3RhdGUoMjQwZGVnKSBicmlnaHRuZXNzKDk2JSlcbiAgICAgIGNvbnRyYXN0KDk5JSk7XG4gIH1cbn1cbiIsIi5mb290ZXIge1xuICBwYWRkaW5nOiA4cmVtIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KDE4MGRlZywgIzAwOWMzZSAwJSwgIzAxNzUyZiAxMDAlKTtcblxuICAmLXJvdyB7XG4gICAgQGluY2x1ZGUgbWluKDEwMjVweCkge1xuICAgICAgLS1yZzogMTVyZW07XG4gICAgICAtLWNnOiAxNXJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEzNjZweCkge1xuICAgICAgICAtLXJnOiAxMHJlbTtcbiAgICAgICAgLS1jZzogMTByZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1jb2wge1xuICAgIEBpbmNsdWRlIG1heCgxMDI0cHgpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxuXG4gICYtbGVmdCB7XG4gICAgbWF4LXdpZHRoOiA2MS40cmVtO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgICYtYmxvY2sge1xuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICByb3ctZ2FwOiAzLjJyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICByb3ctZ2FwOiAyLjRyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1saXN0IHtcbiAgICAgIG1heC13aWR0aDogNDIuNXJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEwMjRweCkge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICByb3ctZ2FwOiAxLjZyZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1ib3gge1xuICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgIHJvdy1nYXA6IDIuNHJlbTtcbiAgICAgIH1cblxuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDRyZW07XG4gICAgICAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuNCk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzLjJyZW07XG4gICAgICAgIH1cblxuICAgICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMi40cmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC50aXRsZS0yNCB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gICAgICB9XG5cbiAgICAgIC5kZXNjIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE1MCU7XG5cbiAgICAgICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLWluZm8ge1xuICAgICAgZ2FwOiAxLjZyZW07XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICB9XG5cbiAgICAgIC50ZXh0LTE2IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyMDAlO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB9XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcblxuICAgICAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBjb2xvcjogJGNvbG9yLWZvdXI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgYm94KDIuNHJlbSk7XG5cbiAgICAgICAgQGluY2x1ZGUgbWluKDU3N3B4KSB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMC40cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9ybSB7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmZvcm0td3JhcCB7XG4gICAgICAgIGdhcDogMi40cmVtO1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogdW5zZXQ7XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgICAgICBAaW5jbHVkZSBtYXgoNTc2cHgpIHtcbiAgICAgICAgICBnYXA6IDEuMnJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuZm9ybS1ncm91cCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICAuZm9ybS1hY3Rpb24ge1xuICAgICAgICBmbGV4LXNocmluazogMDtcblxuICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDE2LjhyZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi1yaWdodCB7XG4gICAgJi1ib3gge1xuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICByb3ctZ2FwOiAzLjJyZW07XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICByb3ctZ2FwOiAyLjRyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICAgIH1cblxuICAgICAgLnRleHQtMjAge1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuXG4gICAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi1pbWcge1xuICAgICAgLmltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgbWF4LXdpZHRoOiAyMS4ycmVtO1xuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWVudSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICByb3ctZ2FwOiA0cmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICByb3ctZ2FwOiAzLjJyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICByb3ctZ2FwOiAyLjRyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICByb3ctZ2FwOiAxLjZyZW07XG4gICAgfVxuXG4gICAgJi1saW5rIHtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIEBpbmNsdWRlIGZ6LTIwO1xuICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci1mb3VyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgICBmb250LXNpemU6IDEuNHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY3VzdG9tLWxvZ28tbGluayB7XG4gICAgbWF4LXdpZHRoOiA2MS40cmVtO1xuXG4gICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICBtYXgtd2lkdGg6IDQwcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgbWF4LXdpZHRoOiAyOHJlbTtcbiAgICB9XG4gIH1cbn1cbiIsIi5idG4ge1xuICB6LWluZGV4OiAzO1xuICBkaXNwbGF5OiBmbGV4O1xuICBjb2xvcjogd2hpdGU7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgY29sdW1uLWdhcDogMXJlbTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xuICBmb250LWZhbWlseTogdmFyKC0tZm9udC1wcmkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VjO1xuICBib3JkZXItcmFkaXVzOiAwLjhyZW0gIWltcG9ydGFudDtcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gIHBhZGRpbmc6IDEuMnJlbSAzLjJyZW0gIWltcG9ydGFudDtcblxuICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXItY29sb3I6ICRjb2xvci1wcmk7XG5cbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICBmb250LXNpemU6IDEuNnJlbSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDEuM3JlbSAyLjRyZW0gIWltcG9ydGFudDtcbiAgfVxuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgd2lkdGg6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmk7XG4gIH1cblxuICAmOmFmdGVyIHtcbiAgICB0b3A6IDUwJSAhaW1wb3J0YW50O1xuICAgIGxlZnQ6IDUwJSAhaW1wb3J0YW50O1xuICAgIHJpZ2h0OiB1bnNldCAhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICB9XG5cbiAgJi5sb2FkaW5nIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGFuaW1hdGlvbjogc3BpbiAycyBsaW5lYXIgaW5maW5pdGU7XG4gICAgfVxuICB9XG5cbiAgJi1jZW50ZXIge1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICB9XG5cbiAgJi1wcmkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci10aGlyZCAhaW1wb3J0YW50O1xuICB9XG5cbiAgJi1zZWMge1xuICAgIGNvbG9yOiAkY29sb3ItdGhpcmQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3ItdGhpcmQ7XG4gIH1cblxuICAmLXRoaXJkIHtcbiAgICBjb2xvcjogJGNvbG9yLXNlYztcbiAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG4gICAgYm9yZGVyLWNvbG9yOiAkY29sb3Itc2VjO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWRlbGV0ZSB7XG4gICAgY29sb3I6ICRjb2xvci10ZXh0O1xuICAgIHBhZGRpbmc6IDAuOHJlbSAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogMS44cmVtICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2JmYmZiZjtcblxuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICBpbWcge1xuICAgICAgICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBzcGFuIHtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICB9XG5cbiAgaW1nIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgIEBpbmNsdWRlIGJveCgyLjRyZW0pO1xuICB9XG5cbiAgLndwY2Y3LXNwaW5uZXIge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIH1cbn1cblxuLnByb2Nlc3Npbmc6OmJlZm9yZSB7XG4gIC8vIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpICFpbXBvcnRhbnQ7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuIiwiZm9ybSB7XG4gIC5mb3JtLXdyYXAge1xuICAgIHJvdy1nYXA6IDIuNHJlbTtcbiAgfVxuXG4gIC5mb3JtLWxhYmVsIHtcbiAgICByb3ctZ2FwOiAwLjhyZW07XG4gIH1cblxuICAuZm9ybS10ZXh0IHtcbiAgICBAaW5jbHVkZSBmei0yMDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuXG4gICAgc3VwIHtcbiAgICAgIGNvbG9yOiAjZWY0NDQ0O1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLWdyb3VwIHtcbiAgICAmOmhhcyguY3VzdG9tLWlucHV0LWZpbGUpIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICByb3ctZ2FwOiAxLjJyZW07XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIH1cbiAgfVxuXG4gIC5mb3JtLXdyYXAsXG4gIC5mb3JtLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIH1cblxuICAuZm9ybS1hY3Rpb24ge1xuICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgIC5idG4ge1xuICAgICAgICBtaW4td2lkdGg6IDI1cmVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGlucHV0IHtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgcGFkZGluZzogMC44cmVtIDEuNnJlbTtcblxuICAgIEBpbmNsdWRlIG1heCg1NzZweCkge1xuICAgICAgaGVpZ2h0OiA0LjVyZW07XG4gICAgfVxuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICBoZWlnaHQ6IDIwcmVtO1xuICAgIHBhZGRpbmc6IDEuNnJlbTtcbiAgfVxuXG4gIGlucHV0LFxuICB0ZXh0YXJlYSB7XG4gICAgYm9yZGVyOiAwO1xuICAgIG91dGxpbmU6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgZm9udC1zaXplOiAycmVtO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY29sb3I6ICRjb2xvci10ZXh0O1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWZhZmI7XG4gICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpKTtcbiAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZTVlNWU1O1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXRleHQ7XG4gICAgfVxuXG4gICAgJjo6cGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6ICNhM2EzYTM7XG4gICAgfVxuICB9XG59XG5cbi5jdXN0b20taW5wdXQtZmlsZSB7XG4gIGhlaWdodDogMTByZW07XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgcGFkZGluZzogMC44cmVtIDEuNnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcbiAgYm9yZGVyOiAwLjJyZW0gZGFzaGVkICNlNWU1ZTU7XG5cbiAgaW5wdXQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICBsYWJlbCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIEBpbmNsdWRlIGZ6LTIwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxufVxuXG4uZy1yZWNhcHRjaGEtd3JhcCB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLndwY2Y3LWZvcm0tY29udHJvbC13cmFwIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4ud3BjZjctbm90LXZhbGlkLXRpcCB7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA0O1xuICBjb2xvcjogd2hpdGU7XG4gIGJvdHRvbTogLTIuMnJlbTtcbiAgcGFkZGluZzogMC40cmVtO1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgd2lkdGg6IGZpdC1jb250ZW50O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvcmRlci1yYWRpdXM6IDAuNXJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuXG4gICY6OmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICB3aWR0aDogMDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgYm90dG9tOiAxMDAlO1xuICAgIHJpZ2h0OiAxLjZyZW07XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvcmRlci1sZWZ0OiAwLjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXJpZ2h0OiAwLjVyZW0gc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogMC41cmVtIHNvbGlkICNlYzFmMjY7XG4gIH1cbn1cblxuLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luOiAycmVtIDAgMCAwICFpbXBvcnRhbnQ7XG5cbiAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luOiAxLjJyZW0gMCAwIDAgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uc2VsZWN0Mi1yZXN1bHRzIHtcbiAgQGluY2x1ZGUgc2hhZG93O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogMCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDAuMXJlbSBzb2xpZCB3aGl0ZTtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyIC5zZWxlY3QyLWRyb3Bkb3duIHtcbiAgYm9yZGVyOiAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLnNlbGVjdDItY29udGFpbmVyLS1kZWZhdWx0IC5zZWxlY3QyLXJlc3VsdHNfX29wdGlvbi0taGlnaGxpZ2h0ZWQuc2VsZWN0Mi1yZXN1bHRzX19vcHRpb24tLXNlbGVjdGFibGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xufVxuXG4uZm9ybS1ncm91cCB7XG4gIHNlbGVjdCB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiAwLjZyZW07XG4gICAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2Q5ZDlkOTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWZhZmI7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICBmb250LXNpemU6IDEuNnJlbTtcbiAgICBjb2xvcjogIzJlMmIyNDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxNTAlO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IDVyZW07XG4gICAgcGFkZGluZzogMC44cmVtIDIuOHJlbSAwLjhyZW0gMS42cmVtO1xuXG4gICAgJjpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMyZTJiMjQ7XG4gICAgfVxuICB9XG59XG5cbi5mb3JtLWJveCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmOmhhcyhzZWxlY3QpIHtcbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxLjJyZW07XG4gICAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogNzAlO1xuICAgICAgcmlnaHQ6IDIuNHJlbTtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvaWNvbnMvaWMtZG93bi5zdmcpO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICB9XG4gIH1cbn1cblxuLy8vLy0tLSBjYXJ0IC0tLS8vL1xuXG4uY2FydHMge1xuICBwYWRkaW5nOiA4cmVtIDA7XG5cbiAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XG4gICAgcGFkZGluZzogNHJlbSAwO1xuICB9XG5cbiAgLnRpdGxlLXctZGVzYyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLmNhcnRzLWJveCB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGdhcDogMC44cmVtIDEuNnJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cbiAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICBjb2x1bW4tZ2FwOiAxcmVtO1xuICAgIH1cblxuICAgIEBpbmNsdWRlIG1heCg4NTBweCkge1xuICAgICAgYWxpZ24taXRlbXM6IGJhc2VsaW5lO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG4gIH1cblxuICAuY2FydHMtaW1nIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgICBtYXgtd2lkdGg6IDlyZW07XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gICAgQGluY2x1ZGUgbWF4KDg1MHB4KSB7XG4gICAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICB9XG4gIH1cblxuICAuY2FydHMtY29udGVudCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICByb3ctZ2FwOiAxLjJyZW07XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICB9XG5cbiAgLnF1YW50aXR5IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIC8vIHBhZGRpbmc6IDAuOHJlbTtcbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICB3aWR0aDogZml0LWNvbnRlbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMC40cmVtO1xuICAgIC8vIGJvcmRlcjogMC4xcmVtIHNvbGlkICNmMGYwZjA7XG4gIH1cblxuICAuY2FydHMtcXVhbnRpdHlfbWludXMsXG4gIC5jYXJ0cy1xdWFudGl0eV9wbHVzIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG4gICAgd2lkdGg6IDIuNHJlbTtcbiAgICBoZWlnaHQ6IDIuNHJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICB9XG5cbiAgLmNhcnRzLXF1YW50aXR5X21pbnVzIHtcbiAgICAvLyBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmNGYyO1xuICB9XG5cbiAgLmNhcnRzLXF1YW50aXR5X3BsdXMge1xuICAgIC8vIGJhY2tncm91bmQtY29sb3I6ICNmMjMzMjI7XG4gIH1cblxuICAuc2NyZWVuLXJlYWRlci10ZXh0IHtcbiAgICBjbGlwOiByZWN0KDFweCwgMXB4LCAxcHgsIDFweCk7XG4gICAgaGVpZ2h0OiAxcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMXB4O1xuICB9XG5cbiAgLmNhcnRzLWFjdGlvbiB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDIuNHJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcm93LWdhcDogMC44cmVtO1xuXG4gICAgQGluY2x1ZGUgbWF4KDQ4MHB4KSB7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAuYnRuIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRvdGFsLWNhcnQge1xuICAgIHBhZGRpbmc6IDAuOHJlbSAwO1xuICAgIGdhcDogMC44cmVtIDIuNHJlbTtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICAuY291bnQtdG90YWwge1xuICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbHVtbi1nYXA6IDAuOHJlbTtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBlbmQ7XG5cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgIG1pbi13aWR0aDogMTZyZW07XG4gICAgfVxuXG4gICAgc3BhbiB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgZm9udC1zaXplOiAyLjRyZW07XG4gICAgICBjb2xvcjogI2YyMzMyMjtcbiAgICB9XG5cbiAgICAmLnRvdGFsIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBjb2xvcjogIzFhNzUxNDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmNhcnRzLWJsb2NrIHtcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDIuNHJlbTtcbiAgYm9yZGVyLXJhZGl1czogMS4ycmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMCAwLjhyZW0gMS4ycmVtIDAgcmdiYSg0OCwgNDgsIDQ4LCAwLjEpO1xuICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMC44cmVtIDEuMnJlbSAwIHJnYmEoNDgsIDQ4LCA0OCwgMC4xKTtcblxuICAucmVtb3ZlIHtcbiAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuXG4gICAgPiBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBvYmplY3QtZml0OiBjb250YWluO1xuICAgIH1cbiAgfVxuXG4gIC5jYXJ0cy1jb250ZW50IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBtYXgoODUwcHgpIHtcbiAgICAgIGdhcDogMi40cmVtO1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIHRkOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMi40cmVtO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6IDEuMnJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICB9XG5cbiAgICB0aGVhZCB7XG4gICAgICB0ciB7XG4gICAgICAgIEBpbmNsdWRlIG1heCg4NTBweCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAycmVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgY29sb3I6ICRjb2xvci10ZXh0O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRib2R5IHtcbiAgICAgIHRyIHtcbiAgICAgICAgQGluY2x1ZGUgbWF4KDg1MHB4KSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkICNkOWQ5ZDk7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgY29sb3I6ICMzMDMwMzA7XG4gICAgICAgICAgcGFkZGluZzogMS4ycmVtIDA7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDAuMXJlbSBzb2xpZCAjZjBmMGYwO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDg1MHB4KSB7XG4gICAgICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtdGV4dCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjRyZW07XG4gICAgICAgICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm50aC1jaGlsZChldmVuKSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmYWZhZmE7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgcGFkZGluZzogMS4ycmVtO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGNvbHVtbi1nYXA6IDEuNnJlbTtcbiAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm5vdCg6Zmlyc3QtY2hpbGQpIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5tb25hX2NoZWNrb3V0X2Zvcm0ge1xuICBwYWRkaW5nOiA4cmVtIDA7XG5cbiAgLmNhcnQtdGl0bGUge1xuICAgIGNvbG9yOiAjMjQyNDI0O1xuICAgIEBpbmNsdWRlIGZ6LTQwO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDRyZW07XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIC53b29jb21tZXJjZS1jaGVja291dCB7XG4gICAgLmJsb2NrT3ZlcmxheTo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IHVuc2V0O1xuICAgIH1cbiAgfVxuXG4gIC5vcmRlci10b3RhbCB7XG4gICAgdGgsXG4gICAgdGQge1xuICAgICAgQGluY2x1ZGUgZnotMjQ7XG5cbiAgICAgIEBpbmNsdWRlIG1heCg4MDBweCkge1xuICAgICAgICBmb250LXNpemU6IDEuOHJlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudmVyaWZ5IHtcbiAgICA+IGgzIHtcbiAgICAgIGNvbG9yOiAjMjQyNDI0O1xuICAgICAgQGluY2x1ZGUgZnotMzI7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgfVxuXG4gIC5yZXN1bHQge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgcGFkZGluZzogMi40cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEuNnJlbTtcblxuICAgIHAge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMi40cmVtO1xuICAgICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgICAgY29sb3I6ICMyNDI0MjQ7XG4gICAgICBAaW5jbHVkZSBmei0xNjtcbiAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgICAgIEBpbmNsdWRlIG1heCg0ODBweCkge1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBnYXA6IDAuOHJlbTtcbiAgICAgIH1cblxuICAgICAgc3BhbiB7XG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgbWF4LXdpZHRoOiA1MHJlbTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiA0NS42cmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1heCg0ODBweCkge1xuICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuaW5mb3JtYXRpb25fc2FtZSB7XG4gICAgbWFyZ2luOiAyLjRyZW0gMDtcblxuICAgIC5iaWxsaW5nX2luZm8ge1xuICAgICAgPiBwIHtcbiAgICAgICAgcGFkZGluZzogMi40cmVtO1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZTRlN2VjO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAjMjQyNDI0O1xuICAgICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbSAwLjhyZW0gMCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tb25hX2FjdGlvbnMge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBnYXA6IDEuNnJlbTtcblxuICAgIGJ1dHRvbiB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgQGluY2x1ZGUgZnotMjA7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgcGFkZGluZzogMnJlbTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICMwMDZiY2U7XG4gICAgICBib3gtc2hhZG93OiAwcmVtIDAuNHJlbSAwLjRyZW0gMHJlbSByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgIzAwNmJjZTtcbiAgICAgIHRyYW5zaXRpb246IDAuM3M7XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBjb2xvcjogIzAwNmJjZTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAjMDA2YmNlO1xuICAgICAgfVxuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgICAgICBib3JkZXItY29sb3I6ICMwMDZiY2U7XG4gICAgICAgIGNvbG9yOiAjMDA2YmNlO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwMDZiY2U7XG4gICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubW4tY2FydC1pbWcge1xuICAgIEBpbmNsdWRlIG1heCg3NjhweCkge1xuICAgICAgd2lkdGg6IDZyZW07XG4gICAgICBoZWlnaHQ6IDZyZW07XG4gICAgfVxuICB9XG5cbiAgLnJlbW92ZTpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxuXG4gIC5jb2wyLXNldCB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDIuNHJlbTtcblxuICAgIEBpbmNsdWRlIG1heCg5ODBweCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUsXG4gICAgJjo6YWZ0ZXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAuY29sLTEsXG4gIC5jb2wtMiB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4ycmVtKSAhaW1wb3J0YW50O1xuICAgIGZsb2F0OiB1bnNldCAhaW1wb3J0YW50O1xuXG4gICAgQGluY2x1ZGUgbWF4KDk4MHB4KSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgID4gLnRpdGxlIHtcbiAgICAgIGNvbG9yOiAjMjQyNDI0O1xuICAgICAgQGluY2x1ZGUgZnotMzI7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDc2OHB4KSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJyZW07XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI29yZGVyX3Jldmlld19oZWFkaW5nIHtcbiAgICBwYWRkaW5nOiAyLjRyZW07XG4gICAgLy8gcGFkZGluZy1ib3R0b206IDIuNHJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjZTRlN2VjO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGNvbG9yOiAjMjQyNDI0O1xuICAgIEBpbmNsdWRlIGZ6LTIwO1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuMztcbiAgICBib3JkZXItcmFkaXVzOiAwLjhyZW0gMC44cmVtIDAgMDtcbiAgfVxuXG4gIC5pbmZvcm1hdGlvbiB7XG4gICAgLy8gYmFja2dyb3VuZDogI2ZmZjtcbiAgICAvLyBwYWRkaW5nOiAyLjRyZW07XG4gICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuXG4gICAgbGFiZWwge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBnYXA6IDAuOHJlbTtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgfVxuXG4gICAgICAmOmhhcygjeHVhdF9ob2FfZG9uW3R5cGU9XCJjaGVja2JveFwiXSkge1xuICAgICAgICBwYWRkaW5nOiAyLjRyZW07XG4gICAgICAgIC8vIG1hcmdpbi10b3A6IDJyZW07XG5cbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICAgIHdpZHRoOiAxLjdyZW07XG4gICAgICAgICAgaGVpZ2h0OiAxLjdyZW07XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9jYXJ0L25vbi1hY3RpdmUuc3ZnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICY6aGFzKCN4dWF0X2hvYV9kb25bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQpIHtcbiAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2NhcnQvYWN0aXZlLnN2Zyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgI3h1YXRfaG9hX2RvbiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgcGFkZGluZzogMi40cmVtO1xuICAgICAgLy8gcGFkZGluZy1ib3R0b206IDIuNHJlbTtcbiAgICAgIGJhY2tncm91bmQ6ICNlNGU3ZWM7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgY29sb3I6ICMyNDI0MjQ7XG4gICAgICBAaW5jbHVkZSBmei0yMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtIDAuOHJlbSAwIDA7XG4gICAgfVxuICB9XG5cbiAgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzIHtcbiAgICBib3JkZXItcmFkaXVzOiAwLjhyZW0gMC44cmVtIDAgMDtcbiAgfVxuXG4gIC53b29jb21tZXJjZS1hZGRpdGlvbmFsLWZpZWxkcyB7XG4gICAgcGFkZGluZzogMCAyLjRyZW0gMi40cmVtIDIuNHJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDAgMCAwLjhyZW0gMC44cmVtO1xuXG4gICAgLmZvcm0tcm93IHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgZm9ybSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjb2xvcjogIzI0MjQyNDtcbiAgICAgIEBpbmNsdWRlIGZ6LTE2O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjUgIWltcG9ydGFudDtcblxuICAgICAgJjpoYXMoaW5wdXRbdHlwZT1cInJhZGlvXCJdKSB7XG4gICAgICAgIC8vIHBhZGRpbmctbGVmdDogMi40cmVtO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGdhcDogMC44cmVtO1xuICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogXCJcIjtcbiAgICAgICAgICB3aWR0aDogMS43cmVtO1xuICAgICAgICAgIGhlaWdodDogMS43cmVtO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY2FydC9ub24tYWN0aXZlLnN2Zyk7XG4gICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmOmhhcyhpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCkge1xuICAgICAgICAmOjpiZWZvcmUge1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY2FydC9hY3RpdmUuc3ZnKTtcbiAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHtcbiAgICAgIC53Y19wYXltZW50X21ldGhvZHMge1xuICAgICAgICAucGF5bWVudF9tZXRob2RfY29kIHtcbiAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICBjb2x1bW4tZ2FwOiAxLjJyZW07XG4gICAgICAgICAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgIGZsZXgtc2hyaW5rOiAwO1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGJveCgycmVtKTtcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgcmdiYSgzNiwgMzYsIDM2LCAxKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucGF5bWVudF9ib3gge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6aGFzKGlucHV0W3R5cGU9XCJyYWRpb1wiXTpjaGVja2VkKSBsYWJlbDo6YmVmb3JlIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHJnYmEoMzYsIDM2LCAzNiwgMSk7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgzNiwgMzYsIDM2LCAxKTtcbiAgICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDAgMCAwLjVyZW0gd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpbnB1dCB7XG4gICAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmZvcm0tcm93IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpudGgtY2hpbGQoMSksXG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDEuMnJlbSk7XG4gICAgICB9XG5cbiAgICAgICY6bnRoLWNoaWxkKDgpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgID4gbGFiZWwge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwLjZyZW07XG5cbiAgICAgICAgc3BhbiB7XG4gICAgICAgICAgY29sb3I6ICNjYjFjMjI7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW5wdXQsXG4gICAgICB0ZXh0YXJlYSB7XG4gICAgICAgIHBhZGRpbmc6IDAuOHJlbSAxLjZyZW07XG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkICNjYmQ1ZTE7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJveC1zaGFkb3c6IDByZW0gMC4xcmVtIDAuMnJlbSAwcmVtIHJnYmEoMTYsIDI0LCA0MCwgMC4wNSk7XG4gICAgICAgIGhlaWdodDogdW5zZXQ7XG4gICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcblxuICAgICAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuXG4gICAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgICBjb2xvcjogIzk4YTJiMztcbiAgICAgICAgfVxuXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogIzI0MjQyNDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHRleHRhcmVhIHtcbiAgICAgIG1pbi1oZWlnaHQ6IDEwcmVtO1xuICAgIH1cblxuICAgIC5mb3JtLXJvdy13aWRlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5mb3JtLXJvdy1maXJzdCxcbiAgICAuZm9ybS1yb3ctbGFzdCB7XG4gICAgICB3aWR0aDogY2FsYyg1MCUgLSAxLjJyZW0pO1xuICAgIH1cblxuICAgICNiaWxsaW5nX2NpdHlfZmllbGQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLWJpbGxpbmctZmllbGRzX19maWVsZC13cmFwcGVyLFxuICAgIC53b29jb21tZXJjZS1zaGlwcGluZy1maWVsZHNfX2ZpZWxkLXdyYXBwZXIge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGdhcDogMi40cmVtO1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgcm93LWdhcDogMi40cmVtO1xuICAgICAgcGFkZGluZzogMi40cmVtO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgLnNlbGVjdDItc2VsZWN0aW9uLS1zaW5nbGUge1xuICAgICAgICBib3JkZXItY29sb3I6ICNjYmQ1ZTE7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMC44cmVtIDEuNnJlbTtcblxuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgICBjb2xvcjogIzI0MjQyNDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAgIC8vIGhlaWdodDogMy41cmVtO1xuICAgICAgICAgIEBpbmNsdWRlIGZ6LTE2O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5tbi1jYXJ0LXByaWNlIC5wcmljZSB7XG4gICAgYWxpZ24taXRlbXM6IGVuZDtcblxuICAgIEBpbmNsdWRlIG1heCg0ODBweCkge1xuICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICB9XG5cbiAgICBpbnMge1xuICAgICAgY29sb3I6ICMyNDI0MjQ7XG4gICAgICBAaW5jbHVkZSBmei0xNjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCB7XG4gICAgICBtYXJnaW4tbGVmdDogMC4ycmVtO1xuICAgIH1cbiAgfVxufVxuXG4jc2hpcC10by1kaWZmZXJlbnQtYWRkcmVzcyB7XG4gIG1hcmdpbjogMnJlbSAwO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgcGFkZGluZzogMDtcblxuICA+IGxhYmVsIHtcbiAgICBiYWNrZ3JvdW5kOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZ2FwOiAwLjhyZW07XG4gICAgcGFkZGluZzogMi40cmVtO1xuXG4gICAgc3BhbiB7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG5cbiAgICAmOmhhcyhpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0pIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIHdpZHRoOiAxLjdyZW07XG4gICAgICAgIGhlaWdodDogMS43cmVtO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9jYXJ0L25vbi1hY3RpdmUuc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgfVxuICAgIH1cblxuICAgICY6aGFzKGlucHV0W3R5cGU9XCJjaGVja2JveFwiXTpjaGVja2VkKSB7XG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1nL2NhcnQvYWN0aXZlLnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGlucHV0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5zaGlwcGluZ19hZGRyZXNzIHtcbiAgLmZvcm0tcm93IHtcbiAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG4gIH1cbn1cblxuLnNob3BfdGFibGUge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6IDAuOHJlbSAhaW1wb3J0YW50O1xuXG4gIHVsIHtcbiAgICBsaSB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cblxuICAud29vY29tbWVyY2UgdWwjc2hpcHBpbmdfbWV0aG9kIGxpIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAuY2FydF9pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcblxuICAgIEBpbmNsdWRlIG1heCg0ODBweCkge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICAgIHRkIHtcbiAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMC42cmVtICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAwLjZyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItdG9wOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZCB7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAubW4tY2FydC1jb250ZW50IHtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZW5kO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDQ4MHB4KSB7XG4gICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnJlbW92ZV9mcm9tX2NhcnRfYnV0dG9uIHtcbiAgICAgIC8vIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIC8vIHRvcDogMnJlbTtcbiAgICAgIC8vIHJpZ2h0OiAxLjZyZW07XG5cbiAgICAgIEBpbmNsdWRlIG1heCg0ODBweCkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMXJlbTtcbiAgICAgICAgcmlnaHQ6IDFyZW07XG4gICAgICB9XG5cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAubW9uYS1jb250ZW50IGltZyB7XG4gICAgfVxuICB9XG5cbiAgLm1uLWNhcnQtYm94IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLm1uLWNhcnQtY29udGVudCB7XG4gICAgcGFkZGluZzogMDtcblxuICAgIEBpbmNsdWRlIG1heCg0ODBweCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMS42cmVtO1xuICAgIH1cblxuICAgIC50ZXh0LTE2IHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMDtcbiAgICB9XG4gIH1cblxuICAucHJvZHVjdC1tZXRhIHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICB0Ym9keSB7XG4gICAgdGQge1xuICAgICAgcGFkZGluZzogMnJlbSAxLjZyZW0gIWltcG9ydGFudDtcblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB0Zm9vdCB7XG4gICAgdHIge1xuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIH1cblxuICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgdGgsXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDQ4MHB4KSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgICAgICAgLy8gZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogZW5kO1xuICAgICAgICAgIGZsZXg6IDE7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmZvcm0tYm94LWlubmVyIHtcbiAgbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjMjQyNDI0O1xuICAgIEBpbmNsdWRlIGZ6LTE2O1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTtcblxuICAgICY6aGFzKGlucHV0W3R5cGU9XCJyYWRpb1wiXSkge1xuICAgICAgLy8gcGFkZGluZy1sZWZ0OiAyLjRyZW07XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZ2FwOiAwLjhyZW07XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuXG4gICAgICAmOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgICB3aWR0aDogMS43cmVtO1xuICAgICAgICBoZWlnaHQ6IDEuN3JlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY2FydC9ub24tYWN0aXZlLnN2Zyk7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgdHJhbnNpdGlvbjogMC4zcztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmOmhhcyhpbnB1dFt0eXBlPVwicmFkaW9cIl06Y2hlY2tlZCkge1xuICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9jYXJ0L2FjdGl2ZS5zdmcpO1xuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgaW5wdXQge1xuICAgICZbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG5cbiAgLmZvcm0tcm93IHtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC5ub3RlIHtcbiAgICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDQ4MHB4KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICA+IGxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDAuNnJlbTtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAjY2IxYzIyO1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0LFxuICAgIHRleHRhcmVhIHtcbiAgICAgIHBhZGRpbmc6IDAuOHJlbSAxLjZyZW07XG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjY2JkNWUxO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgIGJveC1zaGFkb3c6IDByZW0gMC4xcmVtIDAuMnJlbSAwcmVtIHJnYmEoMTYsIDI0LCA0MCwgMC4wNSk7XG4gICAgICBoZWlnaHQ6IHVuc2V0O1xuICAgICAgQGluY2x1ZGUgZnotMTY7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICAgICAmW3R5cGU9XCJyYWRpb1wiXSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgICY6OnBsYWNlaG9sZGVyIHtcbiAgICAgICAgY29sb3I6ICM5OGEyYjM7XG4gICAgICB9XG5cbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICMyNDI0MjQ7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGV4dGFyZWEge1xuICAgIG1pbi1oZWlnaHQ6IDEwcmVtO1xuICB9XG5cbiAgLmZvcm0tcm93LXdpZGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmZvcm0tcm93LWZpcnN0LFxuICAuZm9ybS1yb3ctbGFzdCB7XG4gICAgd2lkdGg6IGNhbGMoNTAlIC0gMS4ycmVtKTtcbiAgfVxuXG4gIC53b29jb21tZXJjZS1iaWxsaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlcixcbiAgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkc19fZmllbGQtd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBnYXA6IDIuNHJlbTtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgcm93LWdhcDogMi40cmVtO1xuICB9XG5cbiAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICBib3JkZXItY29sb3I6ICNjYmQ1ZTE7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgcGFkZGluZzogMC44cmVtIDEuNnJlbTtcblxuICAgICAgLnNlbGVjdDItc2VsZWN0aW9uX19yZW5kZXJlZCB7XG4gICAgICAgIGNvbG9yOiAjMjQyNDI0O1xuICAgICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgICAvLyBoZWlnaHQ6IDMuNXJlbTtcbiAgICAgICAgQGluY2x1ZGUgZnotMTY7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLy0tIHF1YW50aXR5IC0tLy8vXG5cbi5xdWFudGl0eSB7XG4gIGltZyB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgaW5wdXQge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlcjogMDtcbiAgICAvLyBiYWNrZ3JvdW5kOiByZWQ7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICB3aWR0aDogM3JlbSAhaW1wb3J0YW50O1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbiAgaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICB9XG59XG5cbi5jYXJ0cy1xdWFudGl0eSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgYm9yZGVyOiAwLjFyZW0gc29saWQgI2JmYmZiZjtcbiAgcGFkZGluZzogMC44cmVtO1xuICBnYXA6IDEuMnJlbTtcbn1cblxuLmNhcnRzLXF1YW50aXR5X3BsdXMge1xuICBmaWx0ZXI6IGludmVydCgxKSBicmlnaHRuZXNzKDApO1xufVxuXG4vLy8tLSBFTkQgUXVhbnRpdHkgLS0vL1xuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQtcGF5bWVudCB7XG4gIGJhY2tncm91bmQ6ICNmZmYgIWltcG9ydGFudDtcblxuICAuZm9ybS1yb3cge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICAud29vY29tbWVyY2UtcHJpdmFjeS1wb2xpY3ktdGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIGJ1dHRvbiB7XG4gICAgJi5hbHQge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICAud29vY29tbWVyY2UtZm9ybV9fbGFiZWwtZm9yLWNoZWNrYm94IHtcbiAgICBwYWRkaW5nLWxlZnQ6IDIuNHJlbTtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICMwMDZiY2UgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAmOjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIHdpZHRoOiAxLjdyZW07XG4gICAgICBoZWlnaHQ6IDEuN3JlbTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZDogdXJsKC4uL2ltZy9jYXJ0L25vbi1hY3RpdmUuc3ZnKTtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICB0cmFuc2l0aW9uOiAwLjNzO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIH1cblxuICAgICY6aGFzKGlucHV0OmNoZWNrZWQpIHtcbiAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWcvY2FydC9hY3RpdmUuc3ZnKTtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgfVxuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtdGVybXMtYW5kLWNvbmRpdGlvbnMtY2hlY2tib3gtdGV4dCB7XG4gICAgICBjb2xvcjogIzI0MjQyNCAhaW1wb3J0YW50O1xuICAgICAgQGluY2x1ZGUgZnotMTY7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNTtcbiAgICB9XG4gIH1cbn1cblxuLy8vIGFkZHJlc3MgZm9ybSAvLy9cbi8vL1xuLndvb2NvbW1lcmNlLWFkZHJlc3MtZmllbGRzIHtcbiAgLmZvcm0tcm93IHtcbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgJi5zZWxlY3QyLWNvbnRhaW5lci0tZGVmYXVsdCB7XG4gICAgICAgIC5zZWxlY3QyLXNlbGVjdGlvbi0tc2luZ2xlIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2Y5ZmFmYjtcbiAgICAgICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZTVlNWU1O1xuICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAgICAgICAgaGVpZ2h0OiA1cmVtO1xuICAgICAgICAgIHBhZGRpbmc6IDAuOHJlbSAxLjZyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuI2N1c3RvbWVyX2RldGFpbHMge1xuICAuaW5mb3JtYXRpb25fZGlmZmVyZW50LFxuICAudmVyaWZ5LFxuICAuYmlsbGluZ19pbmZvLFxuICAuc2hpcHBpbmdfaW5mbyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICByb3ctZ2FwOiAyLjRyZW07XG4gICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgfVxuXG4gIC5iaWxsaW5nX2luZm8sXG4gIC5zaGlwcGluZ19pbmZvIHtcbiAgICA+IHAge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS44cmVtO1xuICAgIH1cbiAgfVxufVxuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyIHtcbiAgLnNob3BfdGFibGUge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgcm93LWdhcDogMi40cmVtO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cbiAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgIHJvdy1nYXA6IDEuMnJlbTtcbiAgICB9XG5cbiAgICB0Ym9keSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcm93LWdhcDogMi40cmVtO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICAgIHJvdy1nYXA6IDEuMnJlbTtcbiAgICAgIH1cblxuICAgICAgdHIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG4gICAgICAgIGJvcmRlcjogMC4xcmVtIHNvbGlkIHJnYmEoMTEsIDI0LCAyOSwgMC4xKTtcblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0Zm9vdCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgdHIge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuXG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG5cbiAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA0cmVtO1xuXG4gICAgICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMi40cmVtO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMS42cmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYub3JkZXItdG90YWwge1xuICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgIC5hbW91bnQge1xuICAgICAgICAgICAgICBjb2xvcjogI2YwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICB0aCB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICB0ZCB7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG5cbiAgICAgICAgICAud29vY29tbWVyY2Utc2hpcHBpbmctbWV0aG9kcyB7XG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogMi44cmVtO1xuXG4gICAgICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgICAgIHRvcDogLTAuMXJlbTtcbiAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIGJveCgyLjRyZW0pO1xuICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgYmdJbWFnZSh0b3AsIGNvdmVyKTtcbiAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uLy4uL2Fzc2V0cy9pbWcvaWNvbnMvaWNvX3Nob3cuc3ZnXCIpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHRoLFxuICAgICAgICB0ZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5wYXltZW50LWhlYWRpbmcge1xuICBwYWRkaW5nOiAxLjJyZW0gMnJlbTtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgYm9yZGVyLWJvdHRvbTogMC4xcmVtIHNvbGlkICNjZmM4ZDg7XG5cbiAgaW1nIHtcbiAgICBmbGV4LXNocmluazogMDtcbiAgfVxuXG4gIC5pbm5lciB7XG4gICAgJi1ib3gge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHJvdy1nYXA6IDEuMnJlbTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgZmlsdGVyOiBicmlnaHRuZXNzKDApIHNhdHVyYXRlKDEwMCUpIGludmVydCg0NyUpIHNlcGlhKDAlKSBzYXR1cmF0ZSgzOSUpIGh1ZS1yb3RhdGUoMzUyZGVnKSBicmlnaHRuZXNzKDk3JSlcbiAgICAgICAgY29udHJhc3QoOTQlKTtcbiAgICAgIEBpbmNsdWRlIGJveCg0cmVtKTtcblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICBAaW5jbHVkZSBib3goMy4ycmVtKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGV4dC0xNiB7XG4gICAgICBjb2xvcjogIzk4YTJiMztcbiAgICB9XG4gIH1cbn1cblxuLnBheW1lbnQtaGVhZGluZyxcbi5wYXltZW50LWhlYWRpbmcgLmlubmVyIHtcbiAgY29sdW1uLWdhcDogMS4ycmVtO1xuICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG59XG5cbi53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xufVxuIiwiLnBvcHVwIHtcbiAgaW5zZXQ6IDA7XG4gIHotaW5kZXg6IDEwNTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG5cbiAgJi5vcGVuIHtcbiAgICAucG9wdXAtb3ZlcmxheSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG5cbiAgICAucG9wdXAtbWFpbiB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICB9XG4gIH1cblxuICAud3BjZjctcmVzcG9uc2Utb3V0cHV0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAjcXVpY2stdmlldy1kZXRhaWxzIHtcbiAgICA+IHAge1xuICAgICAgQGluY2x1ZGUgZnotMjQ7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxufVxuXG4ucG9wdXAtY2xvc2Uge1xuICB6LWluZGV4OiA1O1xuICB0b3A6IDEuMnJlbTtcbiAgcmlnaHQ6IDEuMnJlbTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICBAaW5jbHVkZSBib3goMy4ycmVtKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRleHQ7XG5cbiAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgIHRvcDogMC44cmVtO1xuICAgIHJpZ2h0OiAwLjhyZW07XG4gICAgQGluY2x1ZGUgYm94KDIuOHJlbSk7XG4gIH1cblxuICBpbWcge1xuICAgIEBpbmNsdWRlIGJveCgyLjRyZW0pO1xuICAgIGZpbHRlcjogYnJpZ2h0bmVzcygwKSBpbnZlcnQoMSk7XG4gIH1cbn1cblxuLnBvcHVwLW92ZXJsYXkge1xuICBpbnNldDogMDtcbiAgei1pbmRleDogMTtcbiAgb3BhY2l0eTogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC41KTtcbn1cblxuLnBvcHVwLW1haW4ge1xuICB0b3A6IDUwJTtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAyO1xuICBvcGFjaXR5OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgZGlzcGxheTogZmxleDtcbiAgaGVpZ2h0OiAxMDBkdmg7XG4gIG1heC13aWR0aDogMTUwcmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgb3ZlcmZsb3c6IGhpZGRlbiBhdXRvO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG5cbiAgJjpoYXMoLnBvcHVwLWNvbnRhY3QpIHtcbiAgICBtYXgtd2lkdGg6IDEwMHJlbTtcbiAgfVxufVxuXG4ucG9wdXAtd3JhcCB7XG4gIHBhZGRpbmc6IDhyZW07XG4gIG1heC1oZWlnaHQ6IDkwcmVtO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW4gYXV0bztcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cbiAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgIHBhZGRpbmc6IDRyZW07XG4gIH1cblxuICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICBwYWRkaW5nOiA0cmVtIDIuNHJlbTtcbiAgfVxufVxuXG4ucG9zdGJveC1oZWFkZXIge1xuICAuaG5kbGUge1xuICAgIEBpbmNsdWRlIGZ6LTMyO1xuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNHJlbTtcblxuICAgIEBpbmNsdWRlIG1heCgxMjAwcHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEuNnJlbTtcbiAgICB9XG4gIH1cbn1cblxuLnF1b3RlLXByb2R1Y3QtbGlzdCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIHJvdy1nYXA6IDEuMnJlbTtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICB1bCB7XG4gICAgQGluY2x1ZGUgZmxleDtcbiAgICByb3ctZ2FwOiAyLjRyZW07XG4gICAgbWFyZ2luOiAwIC0xLjJyZW0gIWltcG9ydGFudDtcblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgcm93LWdhcDogMS42cmVtO1xuICAgICAgbWFyZ2luOiAwIC0wLjhyZW0gIWltcG9ydGFudDtcbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBwYWRkaW5nOiAwIDEuMnJlbTtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgcGFkZGluZzogMCAwLjhyZW07XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgLyAyKTtcbiAgICAgIH1cblxuICAgICAgYSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAxLjJyZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICAgICAgYm9yZGVyOiAwLjFyZW0gc29saWQgcmdiYSgwLCAwLCAwLCAwLjIpO1xuXG4gICAgICAgID4gZGl2IHtcbiAgICAgICAgICA+IHN0cm9uZyB7XG4gICAgICAgICAgICBAaW5jbHVkZSBmei0yNDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucXVvdGUtY3VzdG9tZXItaW5mbyxcbi5xdW90ZS1hdHRhY2htZW50IHtcbiAgZGlzcGxheTogZmxleDtcbiAgcm93LWdhcDogMS4ycmVtO1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gIHVsIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHJvdy1nYXA6IDEuMnJlbTtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICB9XG59XG4iLCIuYmFubmVyLXJlY3J1aXQge1xuICBAaW5jbHVkZSBtYXJnaW4oNHJlbSwgOHJlbSk7XG5cbiAgJi1iZyB7XG4gICAgaW5zZXQ6IDA7XG4gICAgei1pbmRleDogLTE7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG4gICAgfVxuXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMGRlZywgcmdiYSgwLCAwLCAwLCAwLjQpIDAlLCByZ2JhKDAsIDAsIDAsIDAuNCkgMTAwJSk7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgb2JqZWN0LWZpdDogY292ZXI7XG4gICAgfVxuICB9XG5cbiAgJi1wb3NpdGlvbiB7XG4gICAgei1pbmRleDogMztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAmLWJsb2NrIHtcbiAgICBwYWRkaW5nLWJsb2NrOiAyMHJlbTtcblxuICAgIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgICAgcGFkZGluZy1ibG9jazogMTByZW07XG4gICAgfVxuICB9XG5cbiAgJi1jb250ZW50IHtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1zaXplOiA3LjJyZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgZm9udC1zaXplOiA0LjhyZW07XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgICBmb250LXNpemU6IDMuMnJlbTtcbiAgICB9XG4gIH1cblxuICAuY29udGFpbmVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cbiIsIi5hcnRpY2xlLWJveCB7XG4gIGhlaWdodDogMTAwJTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGltZyB7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpIHNjYWxlKDEuMDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBpbmNsdWRlIG1heCg3NjdweCkge1xuICAgIHJvdy1nYXA6IDEuNnJlbTtcbiAgfVxufVxuXG4uYXJ0aWNsZS1oZWFkaW5nIHtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG5cbiAgJi1pbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICBwYWRkaW5nLXRvcDogY2FsYygzOTAgLyA0ODUgKiAxMDAlKTtcblxuICAgIGltZyB7XG4gICAgICBAaW5jbHVkZSBpbWdDb3ZlcjtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgfVxuICB9XG5cbiAgJi1jYXRlIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICBib3JkZXItcmFkaXVzOiAwLjRyZW07XG4gICAgbWFyZ2luOiAtMi40NXJlbSBhdXRvIDA7XG4gICAgd2lkdGg6IGNhbGMoMTAwJSAtIDQuOHJlbSk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXRoaXJkO1xuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQGluY2x1ZGUgbWF4KDc2N3B4KSB7XG4gICAgICB3aWR0aDogY2FsYygxMDAlIC0gMi40cmVtKTtcbiAgICB9XG5cbiAgICAudGl0bGUtMjQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICAgIHBhZGRpbmc6IDEuMDVyZW0gMS42cmVtO1xuICAgIH1cbiAgfVxufVxuXG4uYXJ0aWNsZS1jb250ZW50IHtcbiAgaGVpZ2h0OiAxMDAlO1xuICByb3ctZ2FwOiAxLjVyZW07XG5cbiAgJi1jYXRlIHtcbiAgICBAaW5jbHVkZSBmbGV4LWljZW50ZXI7XG5cbiAgICA+ICoge1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgJjpsYXN0LWNoaWxkOjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBcIi1cIjtcbiAgICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAgIG1hcmdpbjogMCAwLjRyZW07XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50ZXh0LTE2IHtcbiAgICAgIEBpbmNsdWRlIGZ6LTIwO1xuICAgIH1cbiAgfVxuXG4gIC50aXRsZS0yNCB7XG4gICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgQGluY2x1ZGUgbWluKDEyMDFweCkge1xuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29sb3ItcHJpICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uY2F0YWxvZ3VlLWJveCB7XG4gIGhlaWdodDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYm9yZGVyLXJhZGl1czogMC44cmVtO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgYm94LXNoYWRvdzogMC4ycmVtIDAuMnJlbSAwLjNyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMjUpO1xuXG4gIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAmOmhvdmVyIGltZyB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjA1KTtcbiAgICB9XG4gIH1cbn1cblxuLmNhdGFsb2d1ZS1pbWcge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiBjYWxjKDI4NCAvIDM1OCAqIDEwMCUpO1xuXG4gIGltZyB7XG4gICAgQGluY2x1ZGUgaW1nQ292ZXI7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgfVxufVxuXG4uY2F0YWxvZ3VlLWNvbnRlbnQge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBhZGRpbmc6IDIuNHJlbTtcblxuICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgcGFkZGluZzogMS42cmVtO1xuICB9XG5cbiAgLnRleHQtMTYge1xuICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG5cbiAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucHJvZHVjdC1ib3gge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHJvdy1nYXA6IDEuNnJlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICBib3JkZXItcmFkaXVzOiAwLjhyZW07XG4gIHBhZGRpbmc6IDEuMnJlbSAxLjZyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuXG4gIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIEBpbmNsdWRlIHNoYWRvdztcblxuICAgICAgLmltZyBpbWcge1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKSBzY2FsZSgxLjA1KTtcbiAgICAgIH1cblxuICAgICAgLnZpZXcge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaW5jbHVkZSBtYXgoMTIwMHB4KSB7XG4gICAgcGFkZGluZzogMS4ycmVtO1xuICB9XG5cbiAgQGluY2x1ZGUgbWF4KDU3NnB4KSB7XG4gICAgcGFkZGluZzogMC44cmVtO1xuICB9XG5cbiAgJi1oZWFkaW5nIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAuaW1nIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuOHJlbTtcbiAgICAgIHBhZGRpbmctdG9wOiBjYWxjKDEgLyAxICogMTAwJSk7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIEBpbmNsdWRlIGltZ0NvdmVyO1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5udW1iZXIge1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHotaW5kZXg6IDM7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBmb250LXNpemU6IDJyZW07XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBAaW5jbHVkZSBib3goMy41cmVtKTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2VjO1xuXG4gICAgICBAaW5jbHVkZSBtYXgoNzY3cHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICAgIEBpbmNsdWRlIGJveCgzLjJyZW0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52aWV3IHtcbiAgICAgIHRvcDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHJvdy1nYXA6IDEuNnJlbTtcbiAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb247XG4gICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuNHJlbTtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBwYWRkaW5nOiAwLjhyZW0gMC40cmVtO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICBib3JkZXI6IDAuMXJlbSBzb2xpZCAjZTRlNGU0O1xuICAgICAgYm94LXNoYWRvdzogMCAwIDFyZW0gMCByZ2JhKDAsIDAsIDAsIDAuMik7XG5cbiAgICAgIEBpbmNsdWRlIG1pbigxMjAxcHgpIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgIH1cblxuICAgICAgQGluY2x1ZGUgbWF4KDEyMDBweCkge1xuICAgICAgICByb3ctZ2FwOiAxcmVtO1xuICAgICAgfVxuXG4gICAgICAmLWl0ZW0ge1xuICAgICAgICBmbGV4LXNocmluazogMDtcblxuICAgICAgICA+ICoge1xuICAgICAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICB9XG5cbiAgICAgICAgLmFkZGVkX3RvX2NhcnQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi1pY29uIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAudGV4dC0xMiB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IHVuc2V0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgIG9iamVjdC1maXQ6IGNvbnRhaW47XG4gICAgICAgICAgQGluY2x1ZGUgYm94KDIuNHJlbSk7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC0xMiB7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBpc29sYXRpb246IGlzb2xhdGU7XG4gICAgICAgICAgcGFkZGluZzogMXJlbSAycmVtO1xuICAgICAgICAgIHdpZHRoOiBtYXgtY29udGVudDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbjtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAxcmVtO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIHJpZ2h0OiBjYWxjKDEwMCUgKyAycmVtKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG5cbiAgICAgICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgY29sb3I6ICRjb2xvci1wcmk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgei1pbmRleDogLTE7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAwLjZyZW07XG4gICAgICAgICAgICB3aWR0aDogY2FsYygxMDAlICsgMC44cmVtKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgICAgICAgICBAaW5jbHVkZSBiZ0ltYWdlKGNlbnRlciwgY292ZXIpO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vLi4vYXNzZXRzL2ltZy9jYXRhbG9ndWVkdC92aWV3LWJnLnN2Z1wiKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2FsZSB7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIHJvdy1nYXA6IDAuOHJlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcblxuICAgICAgJi1ib3gge1xuICAgICAgICBnYXA6IDAuNHJlbTtcbiAgICAgICAgbWluLXdpZHRoOiA3LjVyZW07XG4gICAgICAgIHdpZHRoOiBmaXQtY29udGVudDtcbiAgICAgICAgcGFkZGluZzogMC44cmVtIDFyZW07XG4gICAgICAgIEBpbmNsdWRlIGZsZXgtY2VudGVyO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAxMHJlbTtcblxuICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpO1xuXG4gICAgICAgICAgLnRleHQtMTIge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWZvdXI7XG4gICAgICAgIH1cblxuICAgICAgICAudGV4dC0xMiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjJyZW07XG4gICAgICAgICAgZm9udC1mYW1pbHk6IHZhcigtLWZvbnQtcHJpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGltZyB7XG4gICAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgICAgQGluY2x1ZGUgYm94KDEuNnJlbSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAmLWNvbnRlbnQge1xuICAgIHJvdy1nYXA6IDAuOHJlbTtcblxuICAgID4gLnRleHQtMTYge1xuICAgICAgQGluY2x1ZGUgZnotMjA7XG4gICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uO1xuXG4gICAgICBAaW5jbHVkZSBtaW4oMTIwMXB4KSB7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiAkY29sb3ItcHJpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnN0b2NrIHtcbiAgICAgIGNvbHVtbi1nYXA6IDAuOHJlbTtcbiAgICAgIEBpbmNsdWRlIGZsZXgtaWNlbnRlcjtcblxuICAgICAgaW1nIHtcbiAgICAgICAgZmxleC1zaHJpbms6IDA7XG4gICAgICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgICAgICBAaW5jbHVkZSBib3goMS41cmVtKTtcbiAgICAgIH1cblxuICAgICAgLnRleHQtMTYge1xuICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgQGluY2x1ZGUgZnotMjA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFDQUEsQUFBQSxJQUFJO0FBQ0osSUFBSTtBQUNKLEdBQUc7QUFDSCxJQUFJO0FBQ0osTUFBTTtBQUNOLE1BQU07QUFDTixNQUFNO0FBQ04sRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsRUFBRTtBQUNGLEVBQUU7QUFDRixFQUFFO0FBQ0YsQ0FBQztBQUNELFVBQVU7QUFDVixHQUFHO0FBQ0gsQ0FBQztBQUNELElBQUk7QUFDSixPQUFPO0FBQ1AsT0FBTztBQUNQLEdBQUc7QUFDSCxJQUFJO0FBQ0osSUFBSTtBQUNKLEdBQUc7QUFDSCxHQUFHO0FBQ0gsRUFBRTtBQUNGLEdBQUc7QUFDSCxH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QU0sU0FBUyxFQUFFLE1BQU07SU05SnhDLEFBQUQsU0FBSSxDQUFDO01OK0pILFNBQVMsRUFBRSxNQUFNLEdNN0psQjtFTmdLRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lNbEt2QyxBQUFELFNBQUksQ0FBQztNTm1LSCxTQUFTLEVBQUUsTUFBTSxHTWpLbEI7O0FBRUEsQUFBRCxTQUFJLENBQUM7RU40TEwsU0FBUyxFQUFFLE1BQU0sR00xTGhCO0VONExELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SU05THhDLEFBQUQsU0FBSSxDQUFDO01OK0xILFNBQVMsRUFBRSxNQUFNLEdNN0xsQjtFTmdNRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lNbE12QyxBQUFELFNBQUksQ0FBQztNTm1NSCxTQUFTLEVBQUUsTUFBTSxHTWpNbEI7O0FBRUEsQUFBRCxTQUFJLENBQUM7RU40TkwsU0FBUyxFQUFFLE1BQU0sR00xTmhCO0VONE5ELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SU05TnhDLEFBQUQsU0FBSSxDQUFDO01OK05ILFNBQVMsRUFBRSxNQUFNLEdNN05sQjtFTmdPRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lNbE92QyxBQUFELFNBQUksQ0FBQztNTm1PSCxTQUFTLEVBQUUsTUFBTSxHTWpPbEI7O0FBRUEsQUFBRCxTQUFJLENBQUM7RU5vT0wsU0FBUyxFQUFFLE1BQU0sR01sT2hCO0VOb09ELE1BQU0sTUFBTSxNQUFNLE1BQU0sU0FBUyxFQUFFLE1BQU07SU10T3hDLEFBQUQsU0FBSSxDQUFDO01OdU9ILFNBQVMsRUFBRSxNQUFNLEdNck9sQjtFTndPRCxNQUFNLE1BQU0sTUFBTSxNQUFNLFNBQVMsRUFBRSxLQUFLO0lNMU92QyxBQUFELFNBQUksQ0FBQztNTjJPSCxTQUFTLEVBQUUsTUFBTSxHTXpPbEI7O0FBRUEsQUFBRCxTQUFJLENBQUM7RU53UEwsU0FBUyxFQUFFLE1BQU0sR010UGhC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 */
