/*
Theme Name: SOGO Child
Theme URI: http://sogo.co.il/
Template:   sogo
Author: Oren Havshush
Author URI: https://sogo.co.il/
Description: SOGO child theme
Version: 1.2
License: Commercial Use only
License URI: Commercial Use only
Text Domain: sogo
*/
/* reset.less */
/*
html5doctor.com Reset Stylesheet
v1.4
2009-07-27
Author: Richard Clark - http://richclarkdesign.com
*/
html,
body,
div,
span,
object,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
abbr,
address,
cite,
code,
del,
em,
img,
ins,
small,
strong,
sub,
sup,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  background: transparent;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
body {
  line-height: 1;
}
a:hover {
  text-decoration: none;
}
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}
blockquote {
  quotes: none;
}
blockquote:before,
blockquote:after {
  content: '';
  content: none;
}
a {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}
del {
  text-decoration: line-through;
}
abbr[title],
dfn[title] {
  border-bottom: 1px dotted #000;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
input,
select {
  vertical-align: middle;
  max-width: 100%;
}
/* file name fonts.less */
@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-weight: 100;
  src: local('Heebo Thin'), local('Heebo-Thin'), url(https://fonts.gstatic.com/s/heebo/v4/NGS0v5_NC0k9P9mVfbFrsA.ttf) format('truetype');
}
@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-weight: 300;
  src: local('Heebo Light'), local('Heebo-Light'), url(https://fonts.gstatic.com/s/heebo/v4/NGS3v5_NC0k9P9ldb6ROkKs.ttf) format('truetype');
}
@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-weight: 400;
  src: local('Heebo'), local('Heebo-Regular'), url(https://fonts.gstatic.com/s/heebo/v4/NGS6v5_NC0k9P9H0TbQ.ttf) format('truetype');
}
@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-weight: 500;
  src: local('Heebo Medium'), local('Heebo-Medium'), url(https://fonts.gstatic.com/s/heebo/v4/NGS3v5_NC0k9P9kFbqROkKs.ttf) format('truetype');
}
@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-weight: 700;
  src: local('Heebo Bold'), local('Heebo-Bold'), url(https://fonts.gstatic.com/s/heebo/v4/NGS3v5_NC0k9P9lNaKROkKs.ttf) format('truetype');
}
@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-weight: 800;
  src: local('Heebo ExtraBold'), local('Heebo-ExtraBold'), url(https://fonts.gstatic.com/s/heebo/v4/NGS3v5_NC0k9P9lRa6ROkKs.ttf) format('truetype');
}
@font-face {
  font-family: 'Heebo';
  font-style: normal;
  font-weight: 900;
  src: local('Heebo Black'), local('Heebo-Black'), url(https://fonts.gstatic.com/s/heebo/v4/NGS3v5_NC0k9P9l1aqROkKs.ttf) format('truetype');
}
@font-face {
  font-family: 'Mastik Regular';
  font-style: normal;
  font-weight: normal;
  src: local('mastik regular'), local('mastikregular'), url(fonts/mastikregularwebfont.woff) format('woff');
}
@font-face {
  font-family: 'icomoon';
  src: url('fonts/icomoon.eot?ki4hsy');
  src: url('fonts/icomoon.eot?ki4hsy#iefix') format('embedded-opentype'), url('fonts/icomoon.ttf?ki4hsy') format('truetype'), url('fonts/icomoon.woff?ki4hsy') format('woff'), url('fonts/icomoon.svg?ki4hsy#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}
[class^="icon-"],
[class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-facebook:before {
  content: "e900";
}
.icon-youtube:before {
  content: "e901";
}
.icon-avatar:before {
  content: "e902";
}
.icon-agala:before {
  content: "e903";
}
.icon-search:before {
  content: "e904";
}
.icon-hazaat_mehir:before {
  content: "e905";
}
.icon-google_plus:before {
  content: "e906";
}
.icon-close:before {
  content: "e907";
}
.icon-arrow_down:before {
  content: "e908";
}
.icon-arrow_up:before {
  content: "e909";
}
.icon-arrow_left:before {
  content: "e90a";
}
.icon-check:before {
  content: "e90b";
}
.icon-telephone:before {
  content: "e90c";
}
.icon-clock:before {
  content: "e90d";
}
.icon-location:before {
  content: "e90e";
}
.icon-manager:before {
  content: "e90f";
}
.icon-minus:before {
  content: "e910";
}
.icon-plus:before {
  content: "e911";
}
.icon-play:before {
  content: "e912";
}
.icon-circle:before {
  content: "e913";
}
.icon-erase:before {
  content: "e914";
}
.icon-lock:before {
  content: "e915";
}
.icon-azmanot_kodmot:before {
  content: "e916";
}
.icon-social_media:before {
  content: "e917";
}
.icon-mail:before {
  content: "e918";
}
.icon-sidur_ishi:before {
  content: "e919";
}
.icon-dojot:before {
  content: "e91a";
}
.icon-catalogue:before {
  content: "e91b";
}
/* mixin.less */
/* end mixin.less */
/* =WordPress Core
-------------------------------------------------------------- */
.alignnone {
  margin: 5px 20px 20px 0;
}
.aligncenter,
div.aligncenter {
  display: block;
  margin: 0 auto 0 auto;
}
.alignright {
  float: right;
  margin: 25px 0 20px 30px;
}
.alignleft {
  float: none;
  margin: 25px 30px 20px 0;
}
@media (min-width: 992px) {
  .alignleft {
    float: left;
  }
}
a img.alignright {
  float: right;
  margin: 5px 0 20px 20px;
}
a img.alignnone {
  margin: 5px 20px 20px 0;
}
a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0;
}
a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption {
  background: #fff;
  max-width: 100%;
  /* Image does not overflow the content area */
  padding: 5px 3px 23px;
  text-align: center;
}
.wp-caption-text {
  padding-top: 15px;
  font-size: 18px;
  color: #111111;
}
.wp-caption.alignnone {
  margin: 5px 20px 20px 0;
}
.wp-caption.alignleft {
  margin: 5px 20px 20px 0;
}
.wp-caption.alignright {
  margin: 5px 0 20px 20px;
}
.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 100%;
  padding: 0;
  width: auto;
}
.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px;
}
/* Text meant only for screen readers. */
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #21759b;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: bold;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}
/*  variables.less  */
/* classes.less */
.w100 {
  width: 100%;
}
.h100 {
  height: 100%;
}
.d-none {
  display: none !important;
}
.text-left {
  text-align: left;
}
.worker-loader {
  content: '';
  background-image: url("images/worker-loader.gif");
  width: 100px;
  height: 100px;
  position: fixed;
  background-repeat: no-repeat;
  background-position: center;
  display: none;
}
/************************** Margins **************************************/
.margin-x-auto {
  margin: 0 auto;
}
.margin-x-xs {
  margin-right: 5px;
  margin-left: 5px;
}
.margin-y-xs {
  margin-top: 5px;
  margin-bottom: 5px;
}
.margin-x-sm {
  margin-right: 10px;
  margin-left: 10px;
}
.margin-y-sm {
  margin-top: 10px;
  margin-bottom: 10px;
}
.margin-x-md {
  margin-right: 15px;
  margin-left: 15px;
}
.margin-y-md {
  margin-top: 15px;
  margin-bottom: 15px;
}
.margin-x-md2 {
  margin-right: 20px;
  margin-left: 20px;
}
.margin-y-md2 {
  margin-top: 20px;
  margin-bottom: 20px;
}
.margin-x-md3 {
  margin-right: 25px;
  margin-left: 25px;
}
.margin-y-md3 {
  margin-top: 25px;
  margin-bottom: 25px;
}
.margin-x-lg {
  margin-right: 35px;
  margin-left: 35px;
}
.margin-y-lg {
  margin-top: 35px;
  margin-bottom: 35px;
}
.margin-x-lg2 {
  margin-right: 35px;
  margin-left: 35px;
}
.margin-y-lg2 {
  margin-top: 40px;
  margin-bottom: 40px;
}
.margin-x-xl {
  margin-right: 45px;
  margin-left: 45px;
}
@media (min-width: 992px) {
  .margin-x-xl {
    margin-right: 45px;
    margin-left: 45px;
  }
}
.margin-y-xl {
  margin-top: 45px;
  margin-bottom: 45px;
}
@media (min-width: 992px) {
  .margin-y-xl {
    margin-top: 45px;
    margin-bottom: 45px;
  }
}
.margin-all-0 {
  margin: 0 !important;
}
.margin-top-0 {
  margin-top: 0 !important;
}
.margin-right-0 {
  margin-right: 0 !important;
}
.margin-bottom-0 {
  margin-bottom: 0 !important;
}
.margin-left-0 {
  margin-left: 0 !important;
}
.margin-all-xs {
  margin: 5px !important;
}
.margin-top-xs {
  margin-top: 5px !important;
}
.margin-right-xs {
  margin-right: 5px !important;
}
.margin-bottom-xs {
  margin-bottom: 5px !important;
}
.margin-left-xs {
  margin-left: 5px !important;
}
.margin-all-sm {
  margin: 10px !important;
}
.margin-top-sm {
  margin-top: 10px !important;
}
.margin-right-sm {
  margin-right: 10px !important;
}
.margin-bottom-sm {
  margin-bottom: 10px !important;
}
.margin-left-sm {
  margin-left: 10px !important;
}
.margin-all-md {
  margin: 15px !important;
}
.margin-top-md {
  margin-top: 15px !important;
}
.margin-right-md {
  margin-right: 15px !important;
}
.margin-bottom-md {
  margin-bottom: 15px !important;
}
.margin-left-md {
  margin-bottom: 15px !important;
}
.margin-all-md2 {
  margin: 20px !important;
}
.margin-top-md2 {
  margin-top: 20px !important;
}
.margin-right-md2 {
  margin-right: 20px !important;
}
.margin-bottom-md2 {
  margin-bottom: 20px !important;
}
.margin-left-md2 {
  margin-bottom: 20px !important;
}
.margin-all-md3 {
  margin: 25px !important;
}
.margin-top-md3 {
  margin-top: 25px !important;
}
.margin-right-md3 {
  margin-right: 25px !important;
}
.margin-bottom-md3 {
  margin-bottom: 25px !important;
}
.margin-left-md3 {
  margin-left: 25px !important;
}
.margin-all-lg {
  margin: 35px !important;
}
.margin-top-lg {
  margin-top: 35px !important;
}
.margin-right-lg {
  margin-right: 35px !important;
}
.margin-bottom-lg {
  margin-bottom: 35px !important;
}
.margin-left-lg {
  margin-left: 35px !important;
}
.margin-all-lg2 {
  margin: 40px !important;
}
.margin-top-lg2 {
  margin-top: 40px !important;
}
.margin-right-lg2 {
  margin-right: 40px !important;
}
.margin-bottom-lg2 {
  margin-bottom: 40px !important;
}
.margin-left-lg2 {
  margin-left: 40px !important;
}
.margin-all-xl {
  margin: 45px !important;
}
.margin-top-xl {
  margin-top: 45px !important;
}
.margin-right-xl {
  margin-right: 45px !important;
}
.margin-bottom-xl {
  margin-bottom: 45px !important;
}
.margin-left-xl {
  margin-left: 45px !important;
}
/* Paddings */
.padding-all-xl {
  padding: 45px;
}
.padding-x-xs {
  padding-right: 5px;
  padding-left: 5px;
}
.padding-y-xs {
  padding-top: 5px;
  padding-bottom: 5px;
}
.padding-x-sm {
  padding-right: 10px;
  padding-left: 10px;
}
.padding-y-sm {
  padding-top: 10px;
  padding-bottom: 10px;
}
.padding-x-md {
  padding-right: 15px;
  padding-left: 15px;
}
.padding-y-md {
  padding-top: 15px;
  padding-bottom: 15px;
}
.padding-x-md2 {
  padding-right: 20px;
  padding-left: 20px;
}
.padding-y-md2 {
  padding-top: 20px;
  padding-bottom: 20px;
}
.padding-x-md3 {
  padding-right: 10px;
  padding-left: 10px;
}
@media (min-width: 992px) {
  .padding-x-md3 {
    padding-right: 25px;
    padding-left: 25px;
  }
}
.padding-y-md3 {
  padding-top: 10px;
  padding-bottom: 10px;
}
@media (min-width: 992px) {
  .padding-y-md3 {
    padding-top: 25px;
    padding-bottom: 25px;
  }
}
.padding-x-lg {
  padding-right: 35px;
  padding-left: 35px;
}
.padding-y-lg {
  padding-top: 35px;
  padding-bottom: 35px;
}
.padding-x-xl {
  padding-right: 45px;
  padding-left: 45px;
}
.padding-y-xl {
  padding-top: 45px;
  padding-bottom: 45px;
}
.padding-x-xxl {
  padding-right: 50px;
  padding-left: 50px;
}
.padding-y-xxl {
  padding-top: 50px;
  padding-bottom: 50px;
}
.nopad {
  padding-right: 0 !important;
  padding-left: 0 !important;
}
.padding-all-0 {
  padding: 0 !important;
}
.padding-top-0 {
  padding-top: 0 !important;
}
.padding-right-0 {
  padding-right: 0 !important;
}
.padding-bottom-0 {
  padding-bottom: 0 !important;
}
.padding-left-0 {
  padding-left: 0 !important;
}
.padding-all-xs {
  padding: 5px !important;
}
.padding-top-xs {
  padding-top: 5px !important;
}
.padding-right-xs {
  padding-right: 5px !important;
}
.padding-bottom-xs {
  padding-bottom: 5px !important;
}
.padding-left-xs {
  padding-left: 5px !important;
}
.padding-all-sm {
  padding: 10px !important;
}
.padding-top-sm {
  padding-top: 10px !important;
}
.padding-right-sm {
  padding-right: 10px !important;
}
.padding-bottom-sm {
  padding-bottom: 10px !important;
}
.padding-left-sm {
  padding-left: 10px !important;
}
.padding-all-md {
  padding-right: 0 !important;
  padding-left: 0 !important;
  padding-top: 15px !important;
  padding-bottom: 15px !important;
}
@media (min-width: 992px) {
  .padding-all-md {
    padding: 15px !important;
  }
}
.padding-top-md {
  padding-top: 15px !important;
}
.padding-right-md {
  padding-right: 15px !important;
}
.padding-bottom-md {
  padding-bottom: 15px !important;
}
.padding-left-md {
  padding-left: 15px !important;
}
.padding-all-md2 {
  padding: 20px !important;
}
.padding-top-md2 {
  padding-top: 20px !important;
}
.padding-right-md2 {
  padding-right: 20px !important;
}
.padding-bottom-md2 {
  padding-bottom: 20px !important;
}
.padding-left-md2 {
  padding-left: 20px !important;
}
.padding-all-md3 {
  padding: 10px !important;
}
@media (min-width: 992px) {
  .padding-all-md3 {
    padding: 25px !important;
  }
}
.padding-top-md3 {
  padding-top: 10px !important;
}
@media (min-width: 992px) {
  .padding-top-md3 {
    padding-top: 25px !important;
  }
}
.padding-right-md3 {
  padding-right: 10px !important;
}
@media (min-width: 992px) {
  .padding-right-md3 {
    padding-right: 25px !important;
  }
}
.padding-bottom-md3 {
  padding-bottom: 10px !important;
}
@media (min-width: 992px) {
  .padding-bottom-md3 {
    padding-bottom: 25px !important;
  }
}
.padding-left-md3 {
  padding-left: 10px !important;
}
@media (min-width: 992px) {
  .padding-left-md3 {
    padding-left: 25px !important;
  }
}
.padding-all-lg {
  padding-right: 0 !important;
  padding-left: 0 !important;
  padding-top: 35px !important;
  padding-bottom: 35px !important;
}
@media (min-width: 992px) {
  .padding-all-lg {
    padding: 35px !important;
  }
}
.padding-top-lg {
  padding-top: 35px !important;
}
.padding-right-lg {
  padding-right: 35px !important;
}
.padding-bottom-lg {
  padding-bottom: 35px !important;
}
.padding-left-lg {
  padding-left: 35px !important;
}
.padding-all-xl {
  padding: 45px !important;
}
.padding-top-xl {
  padding-top: 10px !important;
}
@media (min-width: 992px) {
  .padding-top-xl {
    padding-top: 45px !important;
  }
}
.padding-right-xl {
  padding-right: 45px !important;
}
.padding-bottom-xl {
  padding-bottom: 45px !important;
}
.padding-left-xl {
  padding-left: 45px !important;
}
.padding-from-header {
  padding-top: 2.8em;
}
@media (min-width: 992px) {
  .padding-from-header {
    padding-top: 0;
  }
}
/********************************************  Fonts ************************************/
.font-size-base {
  font-size: 1vw;
}
.font-size-3em {
  font-size: 38px;
}
@media (min-width: 992px) {
  .font-size-3em {
    font-size: 3em;
  }
}
.font-size-8 {
  font-size: 0.85em;
}
.font-size-1-3 {
  font-size: 24px;
}
@media (min-width: 992px) {
  .font-size-1-3 {
    font-size: 1.3em;
  }
}
.font-size-1-45 {
  font-size: 1.45em;
}
/*********************************************** General **********************************/
.line-height-1-3 {
  line-height: 1.3;
}
.line-height-1-4 {
  line-height: 1.4;
}
.text-stroke-gray {
  -webkit-text-stroke: 0.4px #e5e5e5;
}
.bold {
  font-weight: bold;
}
.font-500 {
  font-weight: 500;
}
.font-600 {
  font-weight: 600;
}
.font-normal {
  font-weight: normal;
}
.uppercase {
  text-transform: uppercase;
}
.capitalize {
  text-transform: capitalize;
}
.white-space {
  white-space: nowrap;
}
.vertical-middle {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -o-transform: translateY(-50%);
}
.vertical-align-middle {
  vertical-align: middle;
}
.vertical-align-top {
  vertical-align: top;
}
.vertical-align-bottom {
  vertical-align: bottom;
}
.text-center {
  text-align: center;
}
.float-right {
  float: right;
}
.float-left {
  float: left;
}
.rotate-mirror {
  transform: rotateY(200deg);
}
.transition {
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.transition2 {
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
}
.text-main {
  font-size: 0.85em;
  font-weight: 500;
}
/****************************************** Titles *********************************/
.text-underline {
  display: inline-block;
  font-size: 1.1em;
  font-weight: 600;
}
.text-underline:after {
  margin: 0 auto;
  content: "";
  display: block;
  width: 80%;
  height: 2px;
  margin-top: 5px;
  background-color: #ce2b30;
  position: relative;
}
.text-underline-block {
  display: block;
  margin-top: 0.8em;
  text-align: center;
}
@media (min-width: 992px) {
  .text-underline-block {
    text-align: right;
    margin-top: 1.5vw;
  }
}
.text-underline-block:after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  margin-top: 0.7vw;
  background-color: #ce2b30;
  position: relative;
}
/******************************************* Buttons *************************************/
.top-buttons-white {
  font-weight: 500;
  background-color: #fff;
  color: #111111;
  font-size: 0.7em;
}
@media (min-width: 992px) {
  .top-buttons-white {
    padding: 0.6vw 1.5vw;
  }
}
.top-buttons-white i {
  color: #ce2b30;
}
.top-buttons-white:hover {
  background-color: #ce2b30;
  color: #fff;
}
.top-buttons-white:hover i {
  color: #fff !important;
}
.mobile-shoping-cart.top-buttons-white:hover {
  background-color: transparent;
  color: #ce2b30;
}
.mobile-shoping-cart.top-buttons-white:hover i {
  color: #ce2b30 !important;
}
.mobile-shoping-cart.top-buttons-white:hover {
  background-color: transparent;
  color: #ce2b30;
}
.top-button {
  font-weight: 500;
  background-color: #fff;
  color: #111111;
  font-size: 0.7em;
}
@media (min-width: 992px) {
  .top-button {
    padding: 0.6vw 1.5vw;
  }
}
.top-button i {
  color: #111111;
}
.top-buttons-red {
  font-weight: 500;
  background-color: #ce2b30;
  color: #fff;
  font-size: 0.7em;
  padding: 0.6vw 0.5vw;
}
.top-buttons-red:hover {
  background-color: #ce2b30;
  color: #fff;
}
.top-buttons-red {
  background-color: #fff;
  color: #111111;
}
.top-buttons-red:hover {
  background-color: #ce2b30;
  color: #fff;
}
.btn-white {
  background-color: #fff;
  color: #111111;
}
.btn-white:hover {
  background-color: #ce2b30;
  color: #fff;
}
.btn-plus-minus {
  background-color: white;
  border: 1px solid lightgray;
  border-radius: 100%;
  font-size: 0.8em;
  padding: 4px 8px;
}
.btn-red-forms {
  border-radius: 5px;
  background-color: #ce2b30 !important;
  color: #fff !important;
  font-size: 0.8em;
  font-weight: 400;
  display: inline-block;
  float: left;
  clear: both;
  padding: 0.7em 2em;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-red-forms:hover {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
.btn-red-pay {
  border-radius: 5px;
  background-color: #ce2b30 !important;
  color: #fff !important;
  font-size: 1.2em;
  font-weight: 500;
  display: inline-block;
  float: left;
  clear: both;
  padding: 0.4em 2em;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-red-pay:hover {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
.btn-red-before-checkout {
  border-radius: 5px;
  background-color: #ce2b30 !important;
  color: #fff !important;
  font-size: 0.8em;
  font-weight: 400;
  display: inline-block;
  float: left;
  clear: both;
  padding: 7px 45px;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-red-before-checkout:hover {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
.btn-red-personal {
  border-radius: 5px;
  background-color: #ce2b30 !important;
  color: #fff !important;
  font-size: 1em;
  font-weight: 400;
  display: inline-block;
  float: left;
  clear: both;
  padding: 5px 45px;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-red-personal:hover {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
.btn-border-red-store {
  color: #ce2b30;
  border: 1px solid #ce2b30;
  background-color: transparent;
  border-radius: 5px;
  font-size: 1.55em;
  font-weight: 300;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding: 2px 5px;
}
@media (min-width: 992px) {
  .btn-border-red-store {
    padding: 0.1em 3.3em;
  }
}
.btn-border-red-store:hover {
  background-color: #ce2b30;
  color: #fff;
}
.btn-blue-before-checkout {
  border-radius: 5px;
  background-color: #3c589e !important;
  color: #fff !important;
  font-size: 0.8em;
  font-weight: 400 !important;
  float: left;
  display: inline-block;
  padding: 7px 45px !important;
  border: 1px solid #3c589e !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-blue-before-checkout:hover {
  background-color: #fff !important;
  color: #3c589e !important;
}
.btn-redborder-before-checkout {
  border-radius: 5px;
  background-color: #f7f7f7 !important;
  color: #ce2b30 !important;
  font-size: 0.8em;
  font-weight: 400 !important;
  float: left;
  display: inline-block;
  padding: 7px 45px !important;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-redborder-before-checkout:hover {
  background-color: #ce2b30 !important;
  color: #fff !important;
}
/********************************* borders ******************************/
.border-bottom {
  border-bottom: 1px solid #e5e5e5;
}
.border-top {
  border-top: 1px solid #e5e5e5;
}
.border-top-none {
  border-top: none;
}
.border-right {
  border-right: 1px solid #e5e5e5;
}
.border-left {
  border-left: 1px solid #e5e5e5;
}
.border-box {
  border: 2px solid #e5e5e5;
}
/********************************* Backgrounds ******************************/
.bg-gray {
  background: #e5e5e5;
}
.bg-gray-light {
  background: #f7f7f7 !important;
}
.bg-gray-dark {
  background: #8d8d8d;
}
.bg-white {
  background-color: #fff;
}
.bg-black {
  background-color: #000;
}
.bg-red {
  background-color: #ce2b30;
}
/************************************ Colors **************************************/
.color-text {
  color: #111111;
}
.color-white {
  color: #fff;
}
.color-black {
  color: #111111 !important;
}
.color-gray {
  color: #e5e5e5;
}
.color-gray-light {
  color: #f7f7f7;
}
.color-gray-dark {
  color: #8d8d8d;
}
.color-red {
  color: #ce2b30;
}
/************************************  Height ************************************/
/************************************  positions ************************************/
.position-relative {
  position: relative;
}
.position-absolute {
  position: absolute;
}
.display-block {
  display: block;
}
.inline-block {
  display: inline-block;
}
.display-flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.inline {
  display: inline;
}
.custom-flex {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  flex-direction: row-reverse;
  -webkit-flex-direction: row-reverse;
}
.custom-flex-social {
  display: flex;
  display: -webkit-flex;
  flex-direction: row-reverse;
  -webkit-flex-direction: row-reverse;
  justify-content: flex-start;
  -webkit-justify-content: flex-start;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}
@media (min-width: 992px) {
  .custom-flex-social {
    justify-content: center;
    -webkit-justify-content: center;
  }
}
/************************** worker ***************************/
.btn-red {
  background-color: #ce2b30;
  color: #fff;
  border-radius: 5px;
  font-size: 0.9em;
  font-weight: bold;
  border: 1px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-red:hover {
  background-color: #fff;
  color: #ce2b30 !important;
  border: 1px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-red-send {
  background-color: #ce2b30;
  color: #fff;
  border-radius: 5px;
  font-size: 0.9em;
  padding: 7px 55px;
  font-weight: bold;
  border: 1px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-red-send:hover {
  background-color: #fff;
  color: #ce2b30 !important;
  border: 1px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-white {
  background-color: #fff;
  color: #ce2b30;
  border-radius: 4px;
  font-size: 0.9em;
  padding: 7px 65px;
  font-weight: bold;
  border: 1px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-white:hover {
  background-color: #ce2b30;
  color: #fff;
  border: 1px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-filter {
  border-bottom: 2px solid #ce2b30;
  background: none;
  border-top: 0;
  border-left: 0;
  border-right: 0;
  width: 100%;
  color: #ce2b30;
  font-size: 1.3em;
  padding-bottom: 10px;
}
@media (min-width: 992px) {
  .btn-filter {
    color: #000;
    font-size: 1em;
  }
}
.btn-small {
  font-size: 1.2em;
  padding: 0.27em 1.5em;
  margin-bottom: 10px;
  display: inline-block;
  margin-left: 15px;
  outline: none;
}
@media (min-width: 992px) {
  .btn-small {
    margin-bottom: 0;
    padding: 0.27em 3.5em;
  }
}
.btn-small:hover {
  outline: none;
}
.btn-small:focus {
  outline: none;
}
@media (min-width: 992px) {
  .custom-p-height {
    height: 85px;
    overflow: hidden;
  }
}
/** 04snifim **/
.title-underline {
  font-size: 1.7em;
  display: inline-block;
  white-space: normal;
  margin-top: 0.8em;
  max-width: 100%;
  font-weight: 300;
}
@media (min-width: 992px) {
  .title-underline {
    white-space: nowrap;
    margin-top: auto;
  }
}
@media (min-width: 992px) {
  .title-underline {
    font-size: 2.55em;
  }
}
.title-underline:after {
  content: '';
  display: block;
  height: 2px;
  width: 80%;
  background-color: #d1373b;
  margin: 0 auto;
  position: relative;
  z-index: 9;
  margin-top: 16px;
}
.title-underline-full {
  font-size: 1.1em;
  font-weight: 400;
  border-bottom: 2px solid #ce2b30;
  padding-right: 3em;
}
.sub-title-underline {
  font-size: 25px;
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  padding: 0 10px;
  font-weight: 300;
}
@media (min-width: 992px) {
  .sub-title-underline {
    font-size: 2.1em;
  }
}
.sub-title-underline:after {
  content: '';
  display: block;
  height: 2px;
  width: 80%;
  background-color: #d1373b;
  margin: 0 auto;
  position: relative;
  z-index: 9;
  margin-top: 16px;
}
.sub-title-underline2 {
  font-size: 25px;
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  padding: 0 10px;
  font-weight: 300;
}
@media (min-width: 992px) {
  .sub-title-underline2 {
    font-size: 1.6em;
  }
}
.sub-title-underline2:after {
  content: '';
  display: block;
  height: 2px;
  width: 80%;
  background-color: #d1373b;
  margin: 0 auto;
  position: relative;
  z-index: 9;
  margin-top: 16px;
}
.sub-title-underline-modal {
  font-size: 25px;
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  padding: 0 10px;
  font-weight: 300;
}
@media (min-width: 992px) {
  .sub-title-underline-modal {
    font-size: 1.45em;
  }
}
.sub-title-underline-modal:after {
  content: '';
  display: block;
  height: 2px;
  width: 80%;
  background-color: #d1373b;
  margin: 0 auto;
  position: relative;
  z-index: 9;
  margin-top: 16px;
}
.title-underline-white {
  font-size: 26px;
  display: inline-block;
  color: #fff;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  padding: 0 10px;
  font-weight: 300;
}
@media (min-width: 992px) {
  .title-underline-white {
    font-size: 2.4em;
  }
}
.title-underline-white:after {
  content: '';
  display: block;
  height: 2px;
  width: 80%;
  background-color: #fff;
  margin: 0 auto;
  position: relative;
  z-index: 9;
  margin-top: 16px;
}
.side-title-underline {
  font-size: 25px;
  display: inline-block;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 100%;
  padding: 0 10px;
  font-weight: 300;
}
@media (min-width: 992px) {
  .side-title-underline {
    font-size: 1.45em;
  }
}
.side-title-underline:after {
  content: '';
  display: block;
  height: 2px;
  width: 80%;
  background-color: #d1373b;
  margin: 0 auto;
  position: relative;
  z-index: 9;
  margin-top: 16px;
}
.branch-icon {
  color: #ce2b2f;
  font-size: 45px !important;
  display: inline-block;
  transition: 0.5s;
}
@media (min-width: 992px) {
  .branch-icon {
    font-size: 2.8em !important;
  }
}
.custom-link {
  display: inline-block;
  margin-bottom: 20px;
  color: #d1373b;
  transition: 0.5s;
  font-size: 15px;
}
@media (min-width: 992px) {
  .custom-link {
    font-size: 1em;
    font-weight: 600;
    color: #d1373b;
    transition: 0.5s;
  }
}
.custom-link:hover {
  color: #9f0a0e;
}
.custom-link-store {
  border: 2px solid #111111;
  color: #111111;
  border-radius: 5px;
  width: 53%;
  padding: 3px 0;
  transition: 0.5s;
  font-weight: 600;
  display: inline-block;
  font-size: 40px;
}
@media (min-width: 992px) {
  .custom-link-store {
    font-size: 1em;
  }
}
.custom-link-store:hover {
  background-color: #ce2b30;
  border: 2px solid #ce2b30;
  color: #fff !important;
}
.custom-link-store-white {
  border: 2px solid #fff;
  color: #fff;
  border-radius: 5px;
  padding: 0.3em 2.1em;
  transition: 0.5s;
  font-weight: 600;
  display: inline-block;
  font-size: 25px;
  outline: none;
}
@media (min-width: 992px) {
  .custom-link-store-white {
    font-size: 1em;
  }
}
.custom-link-store-white:hover {
  background-color: #ce2b30;
  border: 2px solid #ce2b30;
  color: #fff !important;
  outline: none;
}
.custom-link-store-white:focus {
  outline: none;
}
.link-icon {
  font-size: 0.85em;
  position: relative;
  top: 2px;
}
@media (min-width: 992px) {
  .link-icon {
    top: 1px;
  }
}
.store-btn:hover {
  background-color: #ce2b30;
}
.font-heebo {
  font-family: 'HEEBO', sans-serif !important;
}
.line-height-1-25 {
  line-height: 1.25;
}
.font-normal {
  font-weight: normal !important;
}
.color-gray-text {
  color: #949494;
}
/************************  modal  ***********************************/
.close-modal {
  color: white;
  font-weight: 100;
  opacity: 1;
  font-size: 2em;
  background-color: #111111 !important;
  border-radius: 50px;
  height: 32px;
  width: 32px;
}
.close-icon-modal {
  position: relative;
  bottom: 9px;
}
/************************  arrows  ***********************************/
.left-arrow {
  font-size: 1.5em;
  vertical-align: text-top;
}
.reset-password-form {
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  align-items: center;
  -webkit-align-items: center;
  text-align: center;
}
/***************************************************/
.p-strip-custom {
  display: block;
  align-items: center;
  -webkit-align-items: center;
  justify-content: center;
  -webkit-justify-content: center;
}
@media (min-width: 992px) {
  .p-strip-custom {
    display: flex;
    display: -webkit-flex;
  }
}
.p-strip-custom > .col-md-2 {
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  align-items: center;
  -webkit-align-items: center;
}
.more-prod {
  color: #ce2b30;
  font-size: 1.1em;
  font-weight: 600;
}
.more-prod .icon {
  margin-right: 5px;
}
.reverse-custom {
  display: flex;
  display: -webkit-flex;
  flex-direction: column-reverse;
  -webkit-flex-direction: column-reverse;
}
.one-line-text {
  white-space: nowrap;
  text-overflow: ellipsis;
}
.term-description {
  font-size: 1.2rem;
  margin-top: 40px;
}
.select-wrapper {
  display: inline-block;
  position: relative;
}
.w-100 {
  width: 100%;
}
.display-inline-block {
  display: inline-block;
}
.slick-arrow.slick-disabled {
  opacity: 0;
}
.big-sale {
  left: 0;
  right: auto;
  top: 0;
  display: table;
  z-index: 20;
  pointer-events: none;
  height: 2.8em !important;
  width: 2.8em !important;
  min-height: 2.8em;
  min-width: 2.8em;
  line-height: 2.4em;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  font-size: 1.2em;
  margin: 0;
  position: absolute;
}
/*====================================
=            base.less         =
====================================*/
body {
  font-size: 18px;
  font-family: 'Heebo', sans-serif;
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
}
@media (min-width: 992px) {
  body {
    font-size: 1vw;
    line-height: 1.3;
    overflow-x: hidden;
  }
}
h1 {
  font-size: 2.3em;
  font-weight: 300;
  margin-bottom: 15px;
}
@media (min-width: 992px) {
  h1 {
    margin-bottom: 1vw;
  }
}
h2 {
  font-size: 2em;
  font-weight: 300;
  margin-bottom: 20px;
}
@media (min-width: 992px) {
  h2 {
    margin-bottom: 1vw;
  }
}
p {
  font-size: 1em;
}
@media (min-width: 992px) {
  p {
    font-size: 1em;
  }
}
img {
  max-width: 100%;
  height: auto;
}
a {
  color: #111111;
  font-style: normal;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
a:hover,
a:focus,
a:active {
  color: #df666a;
  text-decoration: none;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
select {
  border-color: #e5e5e5;
  border-radius: 4px;
  outline: none;
}
select:hover {
  outline: none;
}
select:focus {
  outline: none;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers {
  border: none;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li {
  margin: 0 5px;
  border-radius: 6px;
  border: none;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li a {
  background: #f7f7f7;
  padding: 0.25em 0.5em;
  color: gray;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li a i {
  font-size: 0.8em;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li span.current,
.woocommerce nav.woocommerce-pagination ul.page-numbers li a:focus,
.woocommerce nav.woocommerce-pagination ul.page-numbers li a:hover {
  background: #ce2b30;
  color: #fff;
  padding: 0.25em 0.5em;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li .prev {
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -moz-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
}
/* animate.less */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  animation-delay: 2s;
}
.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}
.animated.flipOutX,
.animated.flipOutY {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}
@-webkit-keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
@keyframes bounce {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
@-webkit-keyframes bounce_small {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
@keyframes bounce_small {
  from,
  20%,
  53%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%,
  43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
}
@-webkit-keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
@keyframes flash {
  from,
  50%,
  to {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}
.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
    transform: scale3d(1.05, 1.05, 1.05);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}
@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
    transform: scale3d(1.25, 0.75, 1);
  }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
    transform: scale3d(0.75, 1.25, 1);
  }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
    transform: scale3d(1.15, 0.85, 1);
  }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
    transform: scale3d(0.95, 1.05, 1);
  }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
    transform: scale3d(1.05, 0.95, 1);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.rubberBand {
  -webkit-animation-name: rubberBand;
  animation-name: rubberBand;
}
@-webkit-keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
@keyframes shake {
  from,
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  10%,
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  20%,
  40%,
  60%,
  80% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
}
.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}
@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
    transform: rotate3d(0, 0, 1, 15deg);
  }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
    transform: rotate3d(0, 0, 1, -10deg);
  }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
    transform: rotate3d(0, 0, 1, 5deg);
  }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
    transform: rotate3d(0, 0, 1, -5deg);
  }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
    transform: rotate3d(0, 0, 1, 0deg);
  }
}
.swing {
  -webkit-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}
@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  to {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes wobble {
  from {
    -webkit-transform: none;
    transform: none;
  }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
  }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
  }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
  }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
  }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}
@-webkit-keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: none;
    transform: none;
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
@keyframes jello {
  from,
  11.1%,
  to {
    -webkit-transform: none;
    transform: none;
  }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
    transform: skewX(-12.5deg) skewY(-12.5deg);
  }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
    transform: skewX(6.25deg) skewY(6.25deg);
  }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
    transform: skewX(-3.125deg) skewY(-3.125deg);
  }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
    transform: skewX(1.5625deg) skewY(1.5625deg);
  }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
    transform: skewX(-0.78125deg) skewY(-0.78125deg);
  }
  77.7% {
    -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
    transform: skewX(0.390625deg) skewY(0.390625deg);
  }
  88.8% {
    -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
    transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
  }
}
.jello {
  -webkit-animation-name: jello;
  animation-name: jello;
  -webkit-transform-origin: center;
  transform-origin: center;
}
@-webkit-keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes bounceIn {
  from,
  20%,
  40%,
  60%,
  80%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}
@-webkit-keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInDown {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
    transform: translate3d(0, -3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
    transform: translate3d(0, 25px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
    transform: translate3d(0, 5px, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}
@-webkit-keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInLeft {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
    transform: translate3d(25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
    transform: translate3d(-10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}
@-webkit-keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes bounceInRight {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
    transform: translate3d(-25px, 0, 0);
  }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
    transform: translate3d(10px, 0, 0);
  }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
    transform: translate3d(-5px, 0, 0);
  }
  to {
    -webkit-transform: none;
    transform: none;
  }
}
.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}
@-webkit-keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes bounceInUp {
  from,
  60%,
  75%,
  90%,
  to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
    transform: translate3d(0, 3000px, 0);
  }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
    transform: translate3d(0, -5px, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}
@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  50%,
  55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
}
.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}
@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
  }
  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
    transform: translate3d(0, -20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}
@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
    transform: translate3d(20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}
@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
    transform: translate3d(-20px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}
@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
  }
  40%,
  45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}
@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}
@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}
@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}
@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}
@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}
@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}
@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}
@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}
@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}
@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}
@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}
@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}
@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}
@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}
@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}
@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}
@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}
@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
  }
  to {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
}
.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}
@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0;
  }
}
.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
}
@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
  }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1;
  }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0;
  }
}
.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}
@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    opacity: 1;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}
@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOut {
  from {
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}
@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}
@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}
@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}
@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}
@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}
.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}
@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
    transform-origin: center;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: center;
    transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0;
  }
}
.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}
@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}
@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}
@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}
@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    opacity: 1;
  }
  to {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}
@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%,
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
    transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40%,
  80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
    transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    opacity: 1;
  }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
    transform: translate3d(0, 700px, 0);
    opacity: 0;
  }
}
.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}
/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
@keyframes rollOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
  }
}
.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}
@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  50% {
    opacity: 1;
  }
}
.zoomIn {
  -webkit-animation-name: zoomIn;
  animation-name: zoomIn;
}
@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInDown {
  -webkit-animation-name: zoomInDown;
  animation-name: zoomInDown;
}
@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
  animation-name: zoomInLeft;
}
@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInRight {
  -webkit-animation-name: zoomInRight;
  animation-name: zoomInRight;
}
@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomInUp {
  -webkit-animation-name: zoomInUp;
  animation-name: zoomInUp;
}
@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
    transform: scale3d(0.3, 0.3, 0.3);
  }
  to {
    opacity: 0;
  }
}
.zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}
@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
  animation-name: zoomOutDown;
}
@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}
@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
    transform-origin: left center;
  }
}
.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
  animation-name: zoomOutLeft;
}
@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}
@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
    transform-origin: right center;
  }
}
.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
  animation-name: zoomOutRight;
}
@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
    transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
  }
}
.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
  animation-name: zoomOutUp;
}
@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}
@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}
@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}
@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}
@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}
@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-500%, 0, 0);
    transform: translate3d(-500%, 0, 0);
  }
}
@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-500%, 0, 0);
  }
}
.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}
@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}
@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}
@keyframes cloudsAnimate {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-2500px, 0, 0);
    -ms-transform: translate3d(-2500px, 0, 0);
    transform: translate3d(-2500px, 0, 0);
    -moz-transform: translate3d(-2500px, 0, 0);
    -o-transform: translate3d(-2500px, 0, 0);
  }
}
.cloudsAnimate {
  -webkit-animation-name: cloudsAnimate;
  animation-name: cloudsAnimate;
  -ms-animation-name: cloudsAnimate;
  -moz-animation-name: cloudsAnimate;
  -o-animation-name: cloudsAnimate;
}
@keyframes cloudsAnimate-left {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-700px, 0, 0);
    -ms-transform: translate3d(-700px, 0, 0);
    transform: translate3d(-700px, 0, 0);
    -moz-transform: translate3d(-700px, 0, 0);
    -o-transform: translate3d(-700px, 0, 0);
  }
}
.cloudsAnimate-left {
  -webkit-animation-name: cloudsAnimate-left;
  animation-name: cloudsAnimate-left;
  -ms-animation-name: cloudsAnimate-left;
  -moz-animation-name: cloudsAnimate-left;
  -o-animation-name: cloudsAnimate-left;
}
@keyframes carsAnimate {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(3000px, 0, 0);
    -ms-transform: translate3d(3000px, 0, 0);
    -moz-transform: translate3d(3000px, 0, 0);
    -o-transform: translate3d(3000px, 0, 0);
    transform: translate3d(3000px, 0, 0);
  }
}
.carsAnimate {
  -webkit-animation-name: carsAnimate;
  animation-name: carsAnimate;
  -ms-animation-name: carsAnimate;
  -moz-animation-name: carsAnimate;
  -o-animation-name: carsAnimate;
}
@keyframes carsAnimate-right {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-3000px, 0, 0);
    -ms-transform: translate3d(-3000px, 0, 0);
    transform: translate3d(-3000px, 0, 0);
    -moz-transform: translate3d(-3000px, 0, 0);
    -o-transform: translate3d(-3000px, 0, 0);
  }
}
.carsAnimate-right {
  -webkit-animation-name: carsAnimate-right;
  animation-name: carsAnimate-right;
  -ms-animation-name: carsAnimate-right;
  -moz-animation-name: carsAnimate-right;
  -o-animation-name: carsAnimate-right;
}
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}
.infinite {
  animation-iteration-count: infinite;
  -webkit-animation-iteration-count: infinite;
}
@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-1000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-1000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.active .fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}
@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(1000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(1000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.active .fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}
@-webkit-keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    -webkit-transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
  }
}
@keyframes bounce {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
@-webkit-keyframes bounce_small {
  0%,
  20%,
  50%,
  80%,
  100% {
    -webkit-transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-10px);
  }
  60% {
    -webkit-transform: translateY(-5px);
  }
}
@keyframes bounce_small {
  0%,
  20%,
  50%,
  80%,
  100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-10px);
  }
  60% {
    transform: translateY(-5px);
  }
}
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
}
.active .grow {
  -webkit-animation-name: grow;
  animation-name: grow;
}
@-webkit-keyframes grow {
  0% {
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}
@keyframes grow {
  0% {
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
    transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.active .fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}
@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}
@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
  }
  80% {
    -webkit-transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.active .fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
}
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
}
@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.active .slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.active .fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}
@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
.active .fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}
.hvr-icon-forward {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  position: relative;
  padding-right: 2.2em;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
}
.hvr-icon-forward:before {
  content: "f138";
  position: absolute;
  right: 1em;
  padding: 0 1px;
  font-family: FontAwesome;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
  -webkit-transition-property: transform;
  transition-property: transform;
  -webkit-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
}
.hvr-icon-forward:hover:before,
.hvr-icon-forward:focus:before,
.hvr-icon-forward:active:before {
  -webkit-transform: translateX(4px);
  -moz-transform: translateX(4px);
  -ms-transform: translateX(4px);
  -o-transform: translateX(4px);
  transform: translateX(4px);
}
.hvr-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}
.hvr-grow:hover,
.hvr-grow:focus,
.hvr-grow:active {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
  text-decoration: none;
}
[class^="hvr-"] {
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
  text-decoration: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
@media (min-width: 768px) {
  [class^="hvr-"] {
    padding: 1em;
  }
}
/* end animate.less */
/* social-menu.less */
/* entry-content.less */
.entry-content {
  padding-top: 15px;
}
.entry-content h2 {
  font-size: 26px;
  line-height: 1.2;
  padding-bottom: 20px;
  color: #ce2b30;
}
@media (min-width: 992px) {
  .entry-content h2 {
    font-size: 1.35em;
  }
}
.entry-content h3 {
  font-size: 26px;
  line-height: 1.2;
  padding-bottom: 20px;
  color: #111111;
}
@media (min-width: 992px) {
  .entry-content h3 {
    font-size: 1.35em;
    font-weight: 400;
  }
}
.entry-content h4 {
  font-size: 20px;
  line-height: 1.2;
  padding-bottom: 30px;
  color: #ce2b30;
}
@media (min-width: 992px) {
  .entry-content h4 {
    font-size: 1.15em;
  }
}
.entry-content h5 {
  font-size: 1.1em;
  line-height: 1.2;
  padding-bottom: 15px;
  color: #ce2b30;
  font-weight: normal;
}
.entry-content h6 {
  font-size: 0.8em;
  line-height: 1.2;
  font-weight: normal;
  padding-bottom: 15px;
}
.entry-content p {
  line-height: 1.5;
  padding-bottom: 25px;
  font-size: 1em;
}
.entry-content a:hover {
  color: #111111;
}
.entry-content a:active {
  text-decoration: underline;
}
.entry-content ul {
  padding-bottom: 12px;
  list-style: none;
}
@media (min-width: 992px) {
  .entry-content ul {
    padding-right: 40px;
  }
}
.entry-content ul li {
  font-size: 0.9em;
  line-height: 1.3;
  padding-bottom: 15px;
  position: relative;
  color: #111111;
  padding-right: 35px;
}
@media (min-width: 992px) {
  .entry-content ul li {
    padding-right: 50px;
    line-height: 1.8;
  }
}
.entry-content ul li:before {
  content: "f00c";
  font-family: FontAwesome;
  color: #ce2b30;
  position: absolute;
  right: 0;
  width: 20px;
  height: 20px;
  line-height: 1.4;
  font-size: 1em;
  text-align: center;
  top: 3px;
}
@media (min-width: 992px) {
  .entry-content ul li:before {
    width: 25px;
    height: 25px;
    top: 5px;
  }
}
.entry-content ol {
  padding-bottom: 12px;
  list-style: none;
}
@media (min-width: 992px) {
  .entry-content ol {
    padding-right: 40px;
  }
}
.entry-content ol li {
  counter-increment: step-counter;
  font-size: 0.9em;
  line-height: 1.8;
  padding-bottom: 6px;
  position: relative;
  color: #111111;
  padding-right: 30px;
}
.entry-content ol li:before {
  color: #ce2b30;
  content: counter(step-counter);
  position: absolute;
  right: 0;
  top: 0;
  font-weight: 500;
  font-size: 1em;
}
.entry-content ol li:after {
  color: #ce2b30;
  content: '.';
  font-weight: normal;
  position: absolute;
  right: 11px;
}
.entry-content blockquote {
  font-weight: 500;
  background-color: #f7f7f7;
  color: #ce2b30;
  text-align: center;
  margin-bottom: 37px;
  padding-bottom: 14px;
  padding-right: 10px;
  padding-left: 10px;
  padding-top: 14px;
  display: block;
  width: 100%;
}
.entry-content blockquote p {
  font-size: 1.25em;
  position: relative;
  padding: 5px;
  line-height: 1.44;
  text-align: center;
}
.entry-content blockquote p:before {
  content: "e907";
  font-family: icomoon;
  right: -10px;
  position: relative;
  top: -6px;
}
.entry-content blockquote p:after {
  content: "e907";
  font-family: icomoon;
  position: relative;
  top: 10px;
  left: -10px;
}
input[type="file"]:focus {
  outline: none;
}
input[type="radio"]:focus {
  outline: none;
}
input[type="checkbox"]:focus {
  outline: none;
}
/* section.less */
.page-banner {
  /*min-height: 60px;*/
}
@media (min-width: 992px) {
  .page-banner {
    /*min-height: 260px;*/
  }
}
.page-header {
  padding-top: 15px;
  padding-bottom: 15px;
}
@media (min-width: 992px) {
  .page-header {
    padding-top: 1.8vw;
    padding-bottom: 1.8vw;
  }
}
.woocommerce-account .page-header {
  display: none;
}
.woocommerce-account.logged-in .page-header {
  display: block;
}
.sub-text p {
  font-size: 1.4em;
  font-weight: 300;
  line-height: 1.6;
}
#breadcrumbs {
  font-size: 14px;
  text-align: right;
  padding-top: 5px;
  padding-right: 15px;
}
@media (min-width: 992px) {
  #breadcrumbs {
    padding-right: 35px;
    font-size: 0.8em;
  }
}
#breadcrumbs span {
  color: #ce2b30;
}
#breadcrumbs a {
  color: #ce2b30;
}
#breadcrumbs .breadcrumb_last {
  font-weight: normal;
}
/* END section.less */
/*====================================
=           fixfirefox.less       =
====================================*/
/* Media query to target Firefox only */
@-moz-document url-prefix() {
  /* Firefox hack to hide the arrow */
  .woocommerce select {
    text-indent: 0.01px;
    text-overflow: '';
    padding-right: 1rem;
  }
  /* elements inherit styles from, so reset them. */
  .woocommerce select option {
    background-color: white;
  }
  select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
  }
}
/***************
fixforie.less

****************/
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  /* IE10+ specific styles go here */
  select::-ms-expand {
    display: none;
  }
  #page .woocommerce ul.products li.product .button::after {
    margin-right: 18px !important;
  }
}
/* file name contact-form.less */
.contact-form-main form input[type="text"],
.contact-form-bid form input[type="text"],
.contact-form-join form input[type="text"],
.contact-form-fixed form input[type="text"],
.contact-form-main form input[type="tel"],
.contact-form-bid form input[type="tel"],
.contact-form-join form input[type="tel"],
.contact-form-fixed form input[type="tel"],
.contact-form-main form input[type="email"],
.contact-form-bid form input[type="email"],
.contact-form-join form input[type="email"],
.contact-form-fixed form input[type="email"],
.contact-form-main form select,
.contact-form-bid form select,
.contact-form-join form select,
.contact-form-fixed form select {
  background-color: #fff;
  width: 100%;
  height: 40px;
  font-size: 1em;
  padding: 0 10px;
  outline: none;
  border-radius: 5px;
  border: 1px solid #e5e5e5;
  font-weight: 300;
}
@media (min-width: 992px) {
  .contact-form-main form input[type="text"],
  .contact-form-bid form input[type="text"],
  .contact-form-join form input[type="text"],
  .contact-form-fixed form input[type="text"],
  .contact-form-main form input[type="tel"],
  .contact-form-bid form input[type="tel"],
  .contact-form-join form input[type="tel"],
  .contact-form-fixed form input[type="tel"],
  .contact-form-main form input[type="email"],
  .contact-form-bid form input[type="email"],
  .contact-form-join form input[type="email"],
  .contact-form-fixed form input[type="email"],
  .contact-form-main form select,
  .contact-form-bid form select,
  .contact-form-join form select,
  .contact-form-fixed form select {
    font-size: 0.8em;
  }
}
.contact-form-main form textarea,
.contact-form-bid form textarea,
.contact-form-join form textarea,
.contact-form-fixed form textarea {
  background-color: #fff;
  color: #111111;
  width: 100%;
  height: 180px;
  padding: 10px;
  font-size: 1em;
  border-radius: 5px;
  border: 1px solid #e5e5e5;
  font-weight: 300;
  resize: none;
}
@media (min-width: 992px) {
  .contact-form-main form textarea,
  .contact-form-bid form textarea,
  .contact-form-join form textarea,
  .contact-form-fixed form textarea {
    font-size: 0.8em;
  }
}
.contact-form-main form input[type="submit"],
.contact-form-bid form input[type="submit"],
.contact-form-join form input[type="submit"],
.contact-form-fixed form input[type="submit"] {
  font-size: 1.2em;
}
@media (min-width: 992px) {
  .contact-form-main form input[type="submit"],
  .contact-form-bid form input[type="submit"],
  .contact-form-join form input[type="submit"],
  .contact-form-fixed form input[type="submit"] {
    font-size: 1em;
  }
}
.contact-form-main form input[type="submit"]:focus,
.contact-form-bid form input[type="submit"]:focus,
.contact-form-join form input[type="submit"]:focus,
.contact-form-fixed form input[type="submit"]:focus,
.contact-form-main form input[type="submit"] :active,
.contact-form-bid form input[type="submit"] :active,
.contact-form-join form input[type="submit"] :active,
.contact-form-fixed form input[type="submit"] :active {
  outline: none !important;
}
.contact-form-main form ::-webkit-input-placeholder,
.contact-form-bid form ::-webkit-input-placeholder,
.contact-form-join form ::-webkit-input-placeholder,
.contact-form-fixed form ::-webkit-input-placeholder {
  color: #111111 !important;
}
.contact-form-main form :-moz-placeholder,
.contact-form-bid form :-moz-placeholder,
.contact-form-join form :-moz-placeholder,
.contact-form-fixed form :-moz-placeholder {
  color: #111111 !important;
}
.contact-form-main form ::-moz-placeholder,
.contact-form-bid form ::-moz-placeholder,
.contact-form-join form ::-moz-placeholder,
.contact-form-fixed form ::-moz-placeholder {
  color: #111111 !important;
}
.contact-form-main form :-ms-input-placeholder,
.contact-form-bid form :-ms-input-placeholder,
.contact-form-join form :-ms-input-placeholder,
.contact-form-fixed form :-ms-input-placeholder {
  color: #111111 !important;
}
.contact-form-main form select,
.contact-form-bid form select,
.contact-form-join form select,
.contact-form-fixed form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.contact-form-main .form-group,
.contact-form-bid .form-group,
.contact-form-join .form-group,
.contact-form-fixed .form-group {
  position: relative;
  margin-bottom: 3px;
}
.contact-form-main select,
.contact-form-bid select,
.contact-form-join select,
.contact-form-fixed select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input[type="checkbox"] {
  height: 25px;
  width: 25px;
  background-color: white;
  border: 1px solid lightgray;
  outline: 0;
  color: #111111;
  border-radius: 4px;
}
.select-group {
  position: relative;
}
::-webkit-input-placeholder {
  color: #000;
}
:-moz-placeholder {
  color: #000;
}
::-moz-placeholder {
  color: #000;
}
:-ms-input-placeholder {
  color: #000;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type=date]::-webkit-inner-spin-button,
input[type=date]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
span.wpcf7-not-valid-tip {
  font-size: 0.9em !important;
  position: absolute;
  top: 38px;
  right: 0;
}
@media (min-width: 992px) {
  span.wpcf7-not-valid-tip {
    top: 35px;
  }
}
div.wpcf7-validation-errors {
  border: none !important;
  color: red !important;
}
div.wpcf7-response-output {
  margin-top: 15px !important;
  display: inline-block;
}
div.wpcf7-mail-sent-ng {
  border: none !important;
  text-align: center;
}
.wpcf7-response-output.wpcf7-display-none.wpcf7-validation-errors {
  text-align: center;
  font-size: 1em;
}
@media (min-width: 992px) {
  .wpcf7-response-output.wpcf7-display-none.wpcf7-validation-errors {
    font-size: 1em;
  }
}
span.wpcf7-not-valid-tip {
  color: red !important;
}
div.wpcf7-mail-sent-ok {
  border: none !important;
  color: green;
}
.wpcf7-response-output.wpcf7-display-none.wpcf7-mail-sent-ng {
  color: red !important;
}
div.wpcf7 .ajax-loader {
  visibility: hidden;
  display: inline-block;
 /* background-image: url(../../images/ajax-loader.gif);*/
  width: 16px;
  height: 16px;
  border: none;
  padding: 0;
  margin: 0 0 0 4px;
  vertical-align: middle;
}
.invalid input.wpcf7-not-valid {
  border: 1px solid red !important;
}
.invalid ::-webkit-input-placeholder {
  color: red !important;
}
.invalid :-moz-placeholder {
  color: red !important;
}
.invalid ::-moz-placeholder {
  color: red !important;
}
.invalid :-ms-input-placeholder {
  color: red !important;
}
.grecaptcha-badge {
  visibility: collapse !important;
}
/* primary_nav.less */
.main-menu {
  text-align: center;
}
.main-menu ul {
  list-style-type: none;
}
.main-menu ul.primary-menu {
  list-style-type: none;
}
@media (min-width: 992px) {
  .main-menu ul.primary-menu {
    position: relative;
    display: -webkit-inline-flex;
    display: -moz-inline-flex;
    display: -ms-inline-flexbox;
    display: -ms-inline-flex;
    display: inline-flex;
    -webkit-justify-content: center;
    justify-content: center;
  }
}
@media (max-width: 992px) {
  .main-menu ul.primary-menu {
    margin-top: 30px;
  }
}
.main-menu ul.primary-menu > li {
  position: static;
  display: block;
  vertical-align: top;
}
@media (min-width: 992px) {
  .main-menu ul.primary-menu > li {
    display: inline-block;
  }
}
.main-menu ul.primary-menu > li > a {
  font-weight: normal;
  line-height: 2.2em;
  display: block;
  padding: 0 5px;
  font-size: 1.1em;
  color: #111111;
  background-color: transparent;
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
}
@media (min-width: 992px) {
  .main-menu ul.primary-menu > li > a {
    font-weight: bold;
    line-height: 50px;
    padding: 0 25px;
    font-size: 0.95em;
  }
}
.main-menu ul.primary-menu > li > a :active,
.main-menu ul.primary-menu > li > a :focus {
  color: #ce2b30;
}
@media (min-width: 992px) {
  .main-menu ul.primary-menu > li > a :active,
  .main-menu ul.primary-menu > li > a :focus {
    background-color: #ce2b30;
    color: #fff;
    -webkit-transition: 0.5s ease;
    -moz-transition: 0.5s ease;
    -ms-transition: 0.5s ease;
    -o-transition: 0.5s ease;
    transition: 0.5s ease;
  }
}
.main-menu ul.primary-menu > li .sub-menu {
  width: 100%;
  display: none;
  background-color: #fff;
  position: relative;
  top: 0;
  padding-right: 0;
}
@media (min-width: 992px) {
  .main-menu ul.primary-menu > li .sub-menu {
    text-align: right;
    position: absolute;
    top: 100%;
    right: 0;
    padding: 15px;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .main-menu ul.primary-menu > li .sub-menu:before {
    content: '';
    width: 200%;
    right: -50%;
    position: absolute;
    top: 0;
    height: 100%;
    background: #fff;
  }
  .main-menu ul.primary-menu > li .sub-menu li {
    width: 48%;
    display: inline-block;
  }
  .main-menu ul.primary-menu > li .sub-menu li a {
    color: #949494;
  }
}
.main-menu ul.primary-menu > li .sub-menu li a {
  display: block;
  line-height: 1.2;
  margin-bottom: 15px;
  height: auto;
}
.main-menu ul.primary-menu > li:hover > a,
.main-menu ul.primary-menu > li.hover > a {
  color: #ce2b30;
}
@media (min-width: 992px) {
  .main-menu ul.primary-menu > li:hover > a,
  .main-menu ul.primary-menu > li.hover > a {
    background-color: #ce2b30;
    color: #fff;
    -webkit-transition: 0.5s ease;
    -moz-transition: 0.5s ease;
    -ms-transition: 0.5s ease;
    -o-transition: 0.5s ease;
    transition: 0.5s ease;
  }
}
.main-menu ul.primary-menu > li:hover .sub-menu,
.main-menu ul.primary-menu > li.hover .sub-menu {
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (min-width: 992px) {
  .main-menu ul.primary-menu > li:hover .sub-menu,
  .main-menu ul.primary-menu > li.hover .sub-menu {
    pointer-events: auto;
    z-index: 1;
    display: block;
  }
}
@media (max-width: 991px) {
  .main-menu ul.primary-menu > li:hover .sub-menu,
  .main-menu ul.primary-menu > li.hover .sub-menu {
    display: none;
  }
}
@media (max-width: 991px) {
  .main-menu ul.primary-menu > li:active .sub-menu {
    display: none;
  }
}
.main-menu .menu-item-has-children {
  position: relative;
}
.current-menu-item > a {
  color: #ce2b30;
}
@media (min-width: 992px) {
  .current-menu-item > a {
    background-color: #ce2b30 !important;
    color: #fff !important;
    -webkit-transition: 0.5s ease;
    -moz-transition: 0.5s ease;
    -ms-transition: 0.5s ease;
    -o-transition: 0.5s ease;
    transition: 0.5s ease;
  }
}
@media (max-width: 991px) {
  .main-menu ul.primary-menu > li.has-sub {
    text-align: right;
    position: relative;
  }
}
@media (max-width: 991px) {
  .main-menu ul.primary-menu > li.has-sub > a {
    display: inline-block;
    text-align: right;
  }
}
@media (max-width: 991px) {
  .main-menu ul.primary-menu > li.has-sub:after {
    content: "f0fe";
    font-family: fontawesome;
    position: absolute;
    left: 0.6em;
    top: 0;
  }
}
.main-menu ul.primary-menu > li.has-sub.menu-open > .sub-menu {
  display: block;
}
@media (max-width: 991px) {
  .main-menu ul.primary-menu > li.has-sub.menu-open:after {
    content: "f146";
  }
}
@media (max-width: 991px) {
  .main-menu .navbar-offcanvas ul.primary-menu > li.menu-item-has-children > a {
    pointer-events: none;
  }
}
/* custom-checkbox.less */
p {
  position: relative;
}
p #bbp_topic_subscription {
  display: none !important;
}
p #bbp_topic_subscription + label {
  color: #111111 !important;
  position: relative;
  cursor: pointer;
  font-weight: bold;
  float: right;
  padding-right: 30px;
}
p #bbp_topic_subscription + label:before {
  font-family: 'fontAwesome';
  content: '';
  position: absolute;
  right: 0;
  padding-top: 6px;
  text-align: center;
  font-size: 15px;
  line-height: 0.8;
  width: 25px;
  height: 25px;
  background: #e5e5e5;
  transition: all 0.2s;
}
p #bbp_topic_subscription:checked + label:before {
  content: "f00c";
  color: #111111;
}
.s-checkbox-group span.wpcf7-list-item {
  margin: 15px 0;
}
.s-checkbox-group input[type="checkbox"] {
  opacity: 0;
  position: absolute;
  width: 0;
}
.s-checkbox-group input[type="checkbox"][disabled="disabled"] + label::before,
.s-checkbox-group input[type="checkbox"][disabled="disabled"] + span::before {
  cursor: no-drop;
}
.s-checkbox-group input[type="checkbox"] + label,
.s-checkbox-group input[type="checkbox"] + span {
  font-size: 15px;
  line-height: 1.3;
  display: inline-block;
  position: relative;
  padding-right: 25px;
}
.s-checkbox-group input[type="checkbox"] + label:hover,
.s-checkbox-group input[type="checkbox"] + span:hover {
  cursor: pointer;
}
.s-checkbox-group input[type="checkbox"] + label:before,
.s-checkbox-group input[type="checkbox"] + span:before {
  content: '';
  position: absolute;
  right: 0;
  height: 1.6rem;
  width: 1.6rem;
  border: 1px solid #e5e5e5;
  background-color: #fff;
  border-radius: 0px;
}
.s-checkbox-group input[type="checkbox"]:checked + label:after,
.s-checkbox-group input[type="checkbox"]:checked + span:after {
  font-family: icomoon;
  content: "e90b";
  font-size: 0.75rem;
  position: absolute;
  height: 1.2rem;
  width: 1.2rem;
  color: #ce2b30;
  border-radius: 0px;
  right: 2px;
  top: 5px;
}
/** cart.less **/
.woocommerce-cart .woocommerce-message a {
  border: 0 solid #111111;
  background-color: #ce2b30;
  color: #fff;
  border-radius: 5px;
  padding: 0 6px;
}
@media (max-width: 767px) {
  .woocommerce-cart .woocommerce-message a {
    margin-top: 1em;
    display: inline-block;
  }
}
.woocommerce-cart .woocommerce .woocommerce-message {
  padding-bottom: 3em;
}
@media (min-width: 992px) {
  .woocommerce-cart .woocommerce .woocommerce-message {
    padding-bottom: 1em;
  }
}
.woocommerce-cart .woocommerce .woocommerce-message .button {
  float: none;
  position: absolute;
  bottom: 0.5em;
  left: 0.5em;
  margin-top: 2em;
}
@media (min-width: 992px) {
  .woocommerce-cart .woocommerce .woocommerce-message .button {
    float: left;
    position: relative;
    bottom: auto;
    left: auto;
    margin-top: 0;
  }
}
.woocommerce-cart .woocommerce .cart_totals h2 {
  display: none;
}
.woocommerce-cart .woocommerce .shop_table {
  border-collapse: collapse;
}
.woocommerce-cart .woocommerce .shop_table td {
  padding-top: 12px;
  padding-bottom: 12px;
}
.woocommerce-cart .woocommerce .shop_table thead th {
  background: #e5e5e5;
  font-weight: 900;
}
.woocommerce-cart .woocommerce .shop_table tbody .cart_item {
  border-bottom: 1px solid #8d8d8d;
}
@media (min-width: 992px) {
  .woocommerce-cart .woocommerce .shop_table tbody .cart_item {
    border-bottom: 1px solid #111111;
  }
}
.woocommerce-cart .woocommerce .shop_table tbody .cart_item td {
  padding: 20px 15px;
}
@media (min-width: 992px) {
  .woocommerce-cart .woocommerce .shop_table tbody .cart_item td {
    padding: 40px 15px;
  }
}
.woocommerce-cart .woocommerce .shop_table tbody .cart_item .product-name {
  text-align: right !important;
}
.woocommerce-cart .woocommerce .shop_table tbody td.actions {
  padding: 40px 15px;
}
.woocommerce-cart .woocommerce .shop_table tbody td dl.variation dt {
  color: #949494;
  font-weight: 400;
}
.woocommerce-cart .woocommerce table.cart td.actions .coupon {
  display: flex;
  display: -webkit-flex;
  align-items: flex-start;
  -webkit-align-items: flex-start;
}
.woocommerce-cart .woocommerce table.cart td.actions .coupon .input-text {
  font-size: 0.7em;
  border-radius: 5px;
  width: auto;
  padding: 5px;
  margin: 0 4px 0 15px;
}
@media (min-width: 992px) {
  .woocommerce-cart .woocommerce table.cart td.actions .coupon .input-text {
    width: 7.5vw;
  }
}
.woocommerce-cart .woocommerce table.cart img {
  width: auto;
}
.woocommerce-cart .woocommerce table.shop_table {
  border: none;
  margin: 0 -1px 0 0;
  background-color: #fff;
}
.woocommerce-cart .woocommerce table.shop_table .product-thumbnail {
  text-align: center;
}
.woocommerce-cart .woocommerce table.shop_table th {
  text-align: right;
  border-top: none;
  font-weight: 500;
}
.woocommerce-cart .woocommerce table.shop_table td {
  border-top: none;
}
.woocommerce-cart .woocommerce table.shop_table td.product-name dl.variation dd {
  float: none;
}
.woocommerce-cart .woocommerce table.shop_table td.product-name dl.variation dt {
  float: none;
}
.woocommerce-cart .woocommerce table.shop_table a.remove {
  font-size: 1em;
  height: 1.4em;
  width: 1.4em;
  color: #111111 !important;
  font-weight: 900;
  border: 1px solid lightgray;
  padding: 4px;
}
.woocommerce-cart .woocommerce table.shop_table a.remove:hover {
  background-color: #111111;
  color: #fff !important;
}
.woocommerce-cart .woocommerce table.shop_table .quantity-label {
  display: none;
}
.woocommerce-cart .woocommerce table.shop_table div.quantity {
  float: none;
  display: inline-block;
}
.woocommerce-cart .woocommerce table.shop_table div.quantity .qty {
  border: none;
  width: 2.5em;
}
.woocommerce-cart .woocommerce .cart .button {
  color: #ce2b30;
  background-color: #fff;
  border: 2px solid #ce2b30;
  border-radius: 5px;
  font-size: 0.7em;
  font-weight: 500;
  padding: 8px 32px;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.woocommerce-cart .woocommerce .cart .button:hover {
  color: #fff;
  background-color: #ce2b30;
  border: 1px solid #ce2b30;
}
.woocommerce-cart .woocommerce .cart .apply_coupon {
  border: 1px solid #ce2b30;
  color: #ce2b30;
}
.woocommerce-cart .woocommerce .cart-collaterals {
  padding: 30px 15px 0 15px;
  background-color: #fff;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals {
  float: left;
  width: 100%;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .order-total th {
  font-weight: bold !important;
}
@media (min-width: 992px) {
  .woocommerce-cart .woocommerce .cart-collaterals .cart_totals {
    width: auto;
  }
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table {
  text-align: right;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table th {
  border-bottom: 1px solid #8d8d8d;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table td {
  border-bottom: 1px solid #8d8d8d;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button {
  border-radius: 5px;
  background-color: #ce2b30 !important;
  color: #fff !important;
  font-size: 1.2em;
  font-weight: 500;
  display: inline-block;
  float: left;
  clear: both;
  padding: 0.4em 2em;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout .checkout-button:hover {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
.woocommerce-cart .woocommerce .quantity .qty {
  width: 1.5em;
  border: none;
}
@media (max-width: 768px) {
  .woocommerce #content table.cart .product-thumbnail {
    display: inline-block !important;
  }
}
@media (max-width: 768px) {
  .woocommerce table.cart .product-thumbnail {
    display: inline-block !important;
  }
}
@media (max-width: 768px) {
  .woocommerce-page #content table.cart .product-thumbnail {
    display: inline-block !important;
  }
}
@media (max-width: 768px) {
  .woocommerce-page table.cart .product-thumbnail {
    display: inline-block !important;
  }

}
.woocommerce-error::before {
  right: 0.6em;
}
.woocommerce-info::before {
  right: 0.6em;
}
.woocommerce-message::before {
  right: 0.6em;
}
/*====================================
=            shop.less         =
====================================*/
.woocommerce-page {
  background: #fff;
}
#page #order_review_heading {
  font-size: 1.55em;
  font-weight: 300;
  margin-bottom: 25px;
}
#page #order_review .shop_table {
  border-radius: 0;
}
#page #order_review .shop_table thead th {
  text-align: right;
  background: #e5e5e5;
}
#page #order_review #payment .pay-wrapper:hover .pay {
  color: #ce2b30;
}
#page #order_review #payment .pay {
  position: absolute;
  top: 1.9vh;
  left: 23vw;
  z-index: 1;
  color: white;
  font-size: 1em;
}
@media (min-width: 992px) {
  #page #order_review #payment .pay {
    left: 1vw;
    top: 1.5vh;
  }
}
#page #order_review #payment input[type="submit"] {
  border-radius: 5px;
  background-color: #ce2b30 !important;
  color: #fff !important;
  font-size: 1.2em;
  font-weight: 500;
  display: inline-block;
  float: left;
  clear: both;
  padding: 0.4em 2em;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
#page #order_review #payment input[type="submit"]:hover {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
#page .woocommerce-message {
  border: 2px solid #ce2b30;
}
#page .woocommerce-message:before {
  color: #ce2b30;
}
#page .woocommerce-message .button.wc-forward {
  border: none;
  background: transparent;
  color: #ce2b30;
  font-size: 1.1em;
}
#page .woocommerce-message .button.wc-forward:hover {
  text-decoration: underline;
}
#page .woocommerce-message .button.wc-forward:after {
  content: "e90a";
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  margin-right: 5px;
  display: inline-block;
  vertical-align: middle;
  font-size: 0.7em;
}
#page .woocommerce .woocommerce-ordering select:active {
  outline: none;
}
#page .woocommerce .woocommerce-ordering select:hover {
  outline: none;
}
#page .woocommerce .woocommerce-ordering select:focus {
  outline: none;
}
#page .woocommerce .woocommerce-ordering select option {
  color: #111111;
  font-size: 0.8em;
  border-top: 1px solid #e5e5e5;
  font-weight: normal;
}
@media (min-width: 992px) {
  #page ul.products {
    display: block;
  }
}
#page ul.products li.product {
  text-align: center;
}
#page ul.products li.product .woocommerce-LoopProduct-link:hover {
  color: #111111;
}
#page ul.products li.product .woocommerce-LoopProduct-link h3,
#page ul.products li.product .woocommerce-LoopProduct-link .woocommerce-loop-product__title {
  font-weight: 400;
  font-size: 1.3em;
  height: auto !important;
}
@media (min-width: 992px) {
  #page ul.products li.product .woocommerce-LoopProduct-link h3,
  #page ul.products li.product .woocommerce-LoopProduct-link .woocommerce-loop-product__title {
    font-size: 1em;
    height: 35px;
  }
}
#page ul.products li.product .woocommerce-LoopProduct-link .price {
  color: #111111;
  display: flex;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  font-size: 1.3em;
  margin-bottom: 1em;
  padding-top: 10px;
}
@media (min-width: 992px) {
  #page ul.products li.product .woocommerce-LoopProduct-link .price {
    font-size: 1em;
  }
}
#page ul.products li.product .woocommerce-LoopProduct-link .price ins {
  font-weight: 500;
  text-decoration: none;
}
#page ul.products li.product .woocommerce-LoopProduct-link .price del {
  margin: 0 5px;
}
#page ul.products li.product .button {
  margin-top: 0 !important;
  border: 2px solid #111111;
  background-color: white;
  border-radius: 5px;
  color: #111111;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding: 0.45em 2.1em;
  position: relative;
  font-size: 1.1em;
}
#page ul.products li.product .button:hover {
  color: #fff;
  background-color: #ce2b30;
  border: 2px solid #ce2b30;
}
#page ul.products li.product .button:after {
  font-family: icomoon;
  content: 'e90a';
  position: absolute;
  margin-right: 5px;
  font-size: 0.7em;
  line-height: 1.45;
}
#page .woocommerce-ordering,
#page .woocommerce-result-count {
  margin: 1em 0 2em;
  font-size: 0.85em;
}
#page .woocommerce-result-count {
  padding-top: 0.4em;
  font-size: 1em;
}
@media (min-width: 992px) {
  #page .woocommerce-result-count {
    padding-top: 0.1em;
  }
}
.checkout-extra-info {
  font-size: 1em;
}
.select2-container .select2-selection--single {
  height: auto;
}
.select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 2.2 !important;
}
#ship-to-different-address span {
  padding: 0 35px;
}
.woocommerce-checkout-review-order-table {
  background-color: #fff;
}
.woocommerce-checkout-review-order-table thead th {
  text-align: right;
  background: #e5e5e5;
}
.woocommerce-checkout-review-order-table tfoot .order-total {
  background: #fff;
}
.woocommerce-checkout-review-order-table tfoot th {
  text-align: right;
}
a.woof_front_toggle {
  float: left;
  padding-left: 5px;
}
.woocommerce form .form-row label .required {
  text-decoration: none;
}
.woocommerce-page .woocommerce ul.products li.product {
  width: 100%;
  float: none;
  margin: 0 0 3em 0;
}
@media (min-width: 768px) {
  .woocommerce-page .woocommerce ul.products li.product {
    width: 48%;
    height: 24em;
    float: right;
    margin: 0 1% 6.5em 1%;
  }
}
@media (min-width: 992px) {
  .woocommerce-page .woocommerce ul.products li.product {
    width: 22.6%;
    height: 24em;
    float: right;
    margin: 0 1% 4.5em 1%;
  }
}
.page-template-default .woocommerce ul.products li.product {
  width: 100%;
  float: none;
  margin: 0 0 3em 0;
}
@media (min-width: 768px) {
  .page-template-default .woocommerce ul.products li.product {
    width: 48%;
    height: 24em;
    float: right;
    margin: 0 1% 6.5em 1%;
  }
}
@media (min-width: 992px) {
  .page-template-default .woocommerce ul.products li.product {
    width: 22.6%;
    height: 24em;
    float: right;
    margin: 0 1% 4.5em 1%;
  }
}
.p-strip-custom .woocommerce ul.products li.product {
  width: 100%;
  float: right;
  margin: 0 0 3em 0;
  height: auto;
}
@media (min-width: 768px) {
  .p-strip-custom .woocommerce ul.products li.product {
    width: 48%;
    height: 24em;
    float: right;
    margin: 0 1% 6.5em 1%;
  }
}
@media (min-width: 992px) {
  .p-strip-custom .woocommerce ul.products li.product {
    width: 22.6%;
    height: 15em;
    float: right;
    margin: 0 1% 4.5em 1%;
  }
}
.quantity-btn {
  border: 1px solid #e5e5e5;
  border-radius: 50%;
  width: 2em;
  height: 2em;
  display: inline-block;
  vertical-align: top;
  font-size: 0.8em;
  text-align: center;
  line-height: 2em;
}
.product-quantity {
  text-align: right;
}
.wc-proceed-to-checkout .icon-arrow_left:before {
  content: "";
}
.quantity-wrapper {
  direction: ltr;
  text-align: right;
}
@media (min-width: 992px) {
  .quantity-wrapper {
    text-align: right;
  }
}
.woocommerce-checkout #page {
  background-color: #f7f7f7;
}
.woocommerce-cart #page {
  background-color: #f7f7f7;
}
.woocommerce-account #page {
  background-color: #f7f7f7;
}
.woocommerce ul.products li.product .onsale {
  background-color: #ce2b30;
  font-weight: normal;
}
.woocommerce ul.products li.product span.onsale {
  left: auto;
  right: 0;
  display: table;
  z-index: 20;
  pointer-events: none;
  height: 2.8em;
  width: 2.8em;
  min-height: 2.8em;
  min-width: 2.8em;
  line-height: 2.4em;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  font-size: 1.2em;
  margin: 0;
}
.search-results ul.products li.product span.onsale {
  left: auto;
  right: 0;
  display: table;
  z-index: 20;
  pointer-events: none;
  height: 2.8em;
  width: 2.8em;
  min-height: 2.8em;
  min-width: 2.8em;
  line-height: 2.4em;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  font-size: 1.2em;
  margin: 0;
  background-color: #ce2b30;
  font-weight: normal;
  padding: 0.202em;
  position: absolute;
  text-align: center;
  top: -0.5em;
  border-radius: 100%;
  color: #fff;
  -webkit-font-smoothing: antialiased;
}
.woocommerce-account .entry-contnet .navbar-default li > a {
  padding: 4.5px 1em;
}
@media (min-width: 992px) {
  .woocommerce-account .entry-contnet .navbar-default li > a {
    padding: 4.5px 1.2em;
  }
}
.woocommerce form .form-row-first {
  float: none !important;
  width: 100% !important;
}
@media (min-width: 992px) {
  .woocommerce form .form-row-first {
    float: right !important;
    width: 47% !important;
  }
}
.woocommerce form .form-row-last {
  float: none !important;
  width: 100% !important;
}
@media (min-width: 992px) {
  .woocommerce form .form-row-last {
    float: left !important;
    width: 47% !important;
  }
}
.woocommerce-page form .form-row-first {
  float: none !important;
  width: 100%;
}
@media (min-width: 992px) {
  .woocommerce-page form .form-row-first {
    float: right !important;
    width: 47% !important;
  }
}
.woocommerce-page form .form-row-last {
  float: none!important ;
  width: 100%!important;
}
@media (min-width: 992px) {
  .woocommerce-page form .form-row-last {
    float: left !important;
    width: 47% !important;
  }
}
.single-product.woocommerce .text-underline:after {
  width: 100%;
}
.single-product.woocommerce table.shop_attributes {
  border: 0 dotted rgba(0, 0, 0, 0.1);
}
.single-product.woocommerce table.shop_attributes td {
  border: 0 dotted rgba(0, 0, 0, 0.1);
  text-align: right;
}
.single-product.woocommerce table.shop_attributes tr:nth-child(even) td {
  background: transparent;
}
.single-product.woocommerce table.shop_attributes tr:nth-child(even) th {
  background: transparent;
}
.single-product.woocommerce table.shop_attributes th {
  border: 0 dotted rgba(0, 0, 0, 0.1);
  text-align: right;
  width: 80px;
}
#billing_address_1_field {
  clear: right;
}
#shipping_address_1_field {
  clear: right;
}
.woocommerce-cart .quantity-wrapper {
  text-align: left;
}
@media (min-width: 992px) {
  .woocommerce-cart .quantity-wrapper {
    text-align: right;
  }
}
.woocommerce form .form-row.woocommerce-validated .select2-container {
  border-color: #ce2b30 !important;
}
.woocommerce form .form-row.woocommerce-validated input.input-text {
  border: 1px solid #111111 !important;
}
.woocommerce form .form-row.woocommerce-validated select {
  border-color: #ce2b30 !important;
}
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}
select {
  border-radius: 5px;
  padding: 0.5em 0.5em 0.5em 2em;
  border: 1px solid #e5e5e5;
  font-size: 1.2em;
}
.arrow-wrapper {
  position: absolute;
  bottom: 0.5em;
  left: 10px;
  padding-left: 0;
  font-size: 0.8em;
  color: #111111;
  height: 20px;
  pointer-events: none;
  background: transparent;
}
@media (min-width: 992px) {
  .arrow-wrapper {
    bottom: 0.85em;
  }
}
.filter-open {
  display: block;
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  z-index: 9999;
  background: #fff;
  padding: 1em;
  overflow: auto;
}
.woocommerce input[type="number"] {
  -moz-appearance: textfield;
}
.woocommerce select.orderby {
  padding: 0.5em 0.5em 0.5em 2em;
  font-size: 0.9em;
}
@media (max-width: 767px) {
  .woocommerce table.shop_table_responsive tr td.product-thumbnail::before {
    color: transparent;
  }
  .woocommerce-page table.shop_table_responsive tr td.product-thumbnail::before {
    color: transparent;
  }
}
.woocommerce form .form-row.woocommerce-invalid .select2-container {
  border: 2px solid #ce2b30;
}
.woocommerce form .form-row.woocommerce-invalid input.input-text {
  border: 2px solid #ce2b30;
}
.woocommerce form .form-row.woocommerce-invalid select {
  border: 2px solid #ce2b30;
}
.woocommerce-checkout .woocommerce-notice {
  margin: 0 0 1.2em;
  text-align: center;
  color: #ce2b30;
  font-size: 1.5em;
}
li.product:after {
  content: '';
  background-image: url(images/Sale-PNG.png);
  background-size: contain;
  position: absolute;
  width: 80px;
  height: 80px;
  top: 0;
  left: 10px;
  right: auto;
  z-index: 2;
  display: none;
}
.woocommerce-product-gallery:after {
  content: '';
  background-image: url(images/Sale-PNG.png);
  position: absolute;
  background-size: contain;
  width: 80px;
  height: 80px;
  top: 0;
  left: 10px;
  right: auto;
  z-index: 2;
  display: none;
}
/********* single-product.less***********/
.woocommerce span.onsale {
  right: 0.5em;
  left: auto !important;
  display: table;
  z-index: 20;
  pointer-events: none;
  height: 2.8em;
  width: 2.8em;
  min-height: 2.8em;
  min-width: 2.8em;
  line-height: 2.4em;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  margin: 0;
}
.woocommerce #content .product .woocommerce-product-details__short-description {
  padding-bottom: 15px;
}
.woocommerce #content .product .product_title {
  font-size: 2em;
  margin-bottom: 12px;
}
.woocommerce #content .product .summary {
  float: none !important;
  max-width: none;
  width: auto !important;
  display: inline-block;
  margin-right: 0;
  margin-bottom: 0;
}
@media (min-width: 992px) {
  .woocommerce #content .product .summary {
    max-width: 48%;
    margin-right: 25px;
    margin-bottom: 2em;
  }
}
.woocommerce #content .product .images {
  float: right !important;
  display: flex;
  display: -webkit-flex;
  flex-direction: row-reverse;
  -webkit-flex-direction: row-reverse;
  justify-content: space-around;
  -webkit-justify-content: space-around;
}
.woocommerce #content .product .images .thumbnails {
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
}
.woocommerce #content .product .images img {
  max-width: 100%;
  width: auto;
}
.woocommerce #content .product .images .woocommerce-product-gallery__trigger {
  left: 0;
  top: 0;
  width: 80%;
  height: 100%;
  background: transparent;
}
@media (min-width: 992px) {
  .woocommerce #content .product .images .woocommerce-product-gallery__trigger {
    left: auto;
    right: 4.5em;
    width: auto;
    height: auto;
  }
}
.woocommerce #content .product .images .flex-viewport {
  width: 75%;
}
.woocommerce #content .product .images .flex-control-thumbs {
  width: 15%;
}
.woocommerce #content .product .images .flex-control-thumbs li {
  display: block;
  float: none;
  width: 100%;
  margin: 0 0 20px;
  border: 1px solid #e5e5e5;
  padding: 5px;
}
.woocommerce #content .product .quantity-btn {
  width: 2em;
  height: 2em;
  line-height: 2.1em;
}
.woocommerce #content .product .price {
  color: #111111;
  font-size: 1.3em;
  margin: 0.4em 0;
}
@media (min-width: 992px) {
  .woocommerce #content .product .price {
    font-size: 1.5em;
    margin: 0.1em 0;
  }
}
.woocommerce #content .product .price ins {
  text-decoration: none;
  font-weight: 300;
}
.woocommerce #content .product .price ins .woocommerce-Price-currencySymbol {
  margin-right: 5px;
}
.woocommerce #content .product .summary .product_meta {
  color: #8d8d8d;
  margin: 6px 0;
  font-size: 1.2em;
}
@media (min-width: 992px) {
  .woocommerce #content .product .summary .product_meta {
    margin: 6px 0;
  }
}
.woocommerce #content .product .cart .button {
  border-radius: 5px;
  padding: 8px 15px;
  background-color: #ce2b30;
  border: 1px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.woocommerce #content .product .cart .button:hover {
  background-color: #fff;
  color: #ce2b30;
}
.woocommerce #content .product .cart .quantity {
  float: none;
  display: inline-block;
  background: transparent;
  margin: 0;
}
.woocommerce #content .product .cart .quantity .qty {
  border: none;
  width: 2em;
  font-size: 1.4em;
  line-height: 1.45em;
  padding: 0;
}
@media (min-width: 992px) {
  .woocommerce #content .product .cart .quantity .qty {
    width: 2.5em;
    font-size: 1.25em;
    line-height: 1.3em;
  }
}
.woocommerce #content .product .cart .quantity-label {
  color: #949494;
  font-size: 1.3em;
  padding-bottom: 6px;
}
.woocommerce #content .product .cart .show-size {
  cursor: pointer;
  text-decoration: underline;
  font-weight: 400;
  font-size: 0.9em;
  display: block;
  width: 75%;
  text-align: left;
  padding: 8px 8px 0 0;
}
.woocommerce #content .product .cart td {
  display: block;
  text-align: right;
  max-width: 300px;
  line-height: 1em;
}
.woocommerce #content .product .cart td.label {
  color: #949494;
  font-size: 1em;
}
.woocommerce #content .product .cart td.label > label {
  font-weight: 400;
  font-size: 1em;
}
.woocommerce #content .product .cart td.value {
  padding-bottom: 15px;
}
.woocommerce #content .product .cart .button {
  float: left;
  margin: 30px 0 0;
  padding: 10px 50px;
}
.woocommerce #content .product .thumbnails a {
  width: auto !important;
  border: 1px solid #e5e5e5;
}
.woocommerce .variations .value {
  position: relative;
}
.woocommerce .variations .value select {
  min-width: 100% !important;
}
.woocommerce .variations .value .arrow-wrapper {
  position: relative;
  bottom: 1.6em;
  right: 90%;
}
.single-product .modal-size .close {
  font-size: 1.8em;
  color: #111111;
  text-shadow: none;
  opacity: 0.8;
  filter: alpha(opacity=100);
  background: #ffffff;
  border-radius: 100%;
  padding: 0 0.4em;
  line-height: 1.3em;
  top: -28px;
  right: -39px;
}
/**  check out.less  **/
.woocommerce .before-checkout {
  display: flex;
  display: -webkit-flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
}
.woocommerce form.login {
  text-align: right !important;
  margin: 0 !important;
  border: none !important;
}
.woocommerce form.login p.no-over {
  overflow: hidden;
}
.woocommerce form.login input[type=submit] {
  border-radius: 5px;
  background-color: #ce2b30 !important;
  color: #fff !important;
  font-size: 0.8em;
  font-weight: 400;
  display: inline-block;
  float: left;
  clear: both;
  padding: 7px 45px;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  font-size: 1em;
}
.woocommerce form.login input[type=submit]:hover {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
.woocommerce form.login .lost_password {
  text-decoration: underline;
}
.woocommerce form.checkout_coupon {
  border: none !important;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea.input-text {
  border-radius: 5px;
  border: 1px solid #e5e5e5;
  line-height: 2.2 !important;
  padding: 0 5px;
}
.woocommerce form .form-row label {
  font-size: 1.15em;
  font-weight: 500;
}
.woocommerce form .form-row label .required {
  color: #111111;
}
.woocommerce .woocommerce-checkout-payment .button {
  border-radius: 5px;
  background-color: #ce2b30 !important;
  color: #fff !important;
  font-size: 0.8em;
  font-weight: 400;
  display: inline-block;
  float: left;
  clear: both;
  padding: 0.7em 2em;
  border: 1px solid #ce2b30 !important;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  float: left !important;
}
.woocommerce .woocommerce-checkout-payment .button:hover {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
.woocommerce table.shop_table td {
  text-align: right;
}
.woocommerce table.shop_table td.product-name {
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
}
.woocommerce .woocommerce-info {
  border: none;
  margin: 0 0 1em !important;
}
.woocommerce .woocommerce-info:before {
  content: '';
}
.woocommerce .woocommerce-info .showlogin {
  color: #ce2b30;
  border: 1px solid #ce2b30;
  background-color: transparent;
  border-radius: 5px;
  font-size: 1.55em;
  font-weight: 300;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding: 2px 5px;
}
@media (min-width: 992px) {
  .woocommerce .woocommerce-info .showlogin {
    padding: 0.1em 3.3em;
  }
}
.woocommerce .woocommerce-info .showlogin:hover {
  background-color: #ce2b30;
  color: #fff;
}
.woocommerce .woocommerce-info .showcoupon {
  color: #ce2b30;
  border: 1px solid #ce2b30;
  background-color: transparent;
  border-radius: 5px;
  font-size: 1.55em;
  font-weight: 300;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  padding: 2px 5px;
}
@media (min-width: 992px) {
  .woocommerce .woocommerce-info .showcoupon {
    padding: 0.1em 3.3em;
  }
}
.woocommerce .woocommerce-info .showcoupon:hover {
  background-color: #ce2b30;
  color: #fff;
}
.woocommerce .woocommerce-form-login label {
  font-size: 1.1em !important;
  font-weight: 400 !important;
}
.woocommerce .woocommerce-form-login .input-text {
  height: 38px !important;
}
.woocommerce .woocommerce-form-login .woocommerce-form__label-for-checkbox {
  font-size: 0.7em;
  font-weight: 500;
}
.woocommerce .woocommerce-form-login .woocommerce-form__label-for-checkbox .woocommerce-form__input-checkbox {
  height: 23px;
  width: 23px;
  margin-left: 5px;
}
.woocommerce .woocommerce-form-login .woocommerce-form__label-for-checkbox .woocommerce-form__input-checkbox:after {
  content: '';
}
.woocommerce .woocommerce-checkout #customer_details label {
  font-size: 1.1em;
}
.woocommerce .woocommerce-checkout #customer_details input[type="text"] {
  height: 38px;
}
.woocommerce .woocommerce-checkout .woocommerce-shipping-fields #ship-to-different-address label span {
  font-size: 1em;
  font-weight: 400;
}
.woocommerce-shipping-fields {
  margin-bottom: 30px;
}
@media (min-width: 992px) {
  .woocommerce-shipping-fields {
    margin-bottom: 0;
  }
}
.woocommerce .woocommerce-checkout #customer_details label {
  font-weight: 400;
}
.socials-list img {
  border-radius: 8px;
  padding: 0 4px;
  width: 38px;
}
.ywsl-social img {
  border-radius: 8px;
  padding: 0 4px;
  width: 38px;
}
.wc-social-login .ywsl-label {
  display: inline-block;
}
.wc-social-login .socials-list {
  display: inline-block;
}
.woocommerce-checkout .woocommerce-info {
  padding: 0;
}
.woocommerce-checkout .woocommerce .login {
  padding-right: 0;
}
.woocommerce-checkout .woocommerce .login {
  padding-right: 0;
}
.woocommerce .col-md-7 .woocommerce-form-login p {
  font-size: 1em;
}
.woocommerce .col-md-7 .woocommerce-form-login {
  margin: 15px 0 25px !important;
}
.woocommerce .col-md-7 .woocommerce-form-login .form-row-first {
  font-size: 1em;
  padding: 10px 0;
}
.woocommerce .col-md-7 .woocommerce-form-login .form-row-last {
  font-size: 1em;
  padding: 10px 0;
}
.woocommerce .col-md-7 .woocommerce-form-login .woocommerce-form__label {
  font-size: 0.8em !important;
}
.woocommerce .col-md-7 .woocommerce-form-login .lost_password {
  font-size: 0.8em !important;
}
.woocommerce .col-md-7 .woocommerce-form-login .lst-psw {
  text-align: left;
}
.show-ywsl-box {
  display: none;
}
.woocommerce-checkout p.woocommerce-info {
  display: none;
}
@media (max-width: 992px) {
  .woocommerce ul.order_details li {
    float: none;
    margin-left: 0;
    font-size: 1em;
    border-left: 0 dashed #d3ced2;
    list-style-type: none;
    padding: 10px 0;
  }
}
/*====================================
=            my account.less         =
====================================*/
#page .woocommerce table .product-name {
  font-weight: 700;
}
#page .woocommerce table.my_account_orders th {
  font-size: 1.25em;
  font-weight: 400;
}
#page .woocommerce table.my_account_orders tr {
  margin-bottom: 30px;
}
@media (min-width: 992px) {
  #page .woocommerce table.my_account_orders tr {
    margin-bottom: 0;
  }
}
#page .woocommerce table.my_account_orders td,
#page .woocommerce table.my_account_orders th {
  padding: 8px;
  text-align: right;
}
#page .woocommerce table.shop_table th {
  text-align: right;
  font-size: 1.2em;
  font-weight: 600;
  white-space: nowrap;
}
#page .woocommerce table.shop_table td {
  vertical-align: top !important;
  font-size: 1em;
  font-weight: 400;
}
#page .woocommerce .woocommerce-login .register {
  border: none;
  text-align: right;
  margin-top: 0;
}
#page .woocommerce .woocommerce-login .register input[type="text"],
#page .woocommerce .woocommerce-login .register input[type="email"] {
  height: 40px;
}
#page .woocommerce .woocommerce-login .register input[type="submit"] {
  padding: 7px 45px;
  font-size: 1em;
  font-weight: 400;
}
#page .woocommerce .woocommerce-login .register label {
  font-weight: 400;
  font-size: 1.1em;
}
#page .woocommerce .woocommerce-login .login label {
  font-weight: 400;
  font-size: 1.1em;
}
#page .woocommerce .woocommerce-login .login input[type="text"],
#page .woocommerce .woocommerce-login .login input[type="password"] {
  height: 40px;
}
#page .woocommerce .woocommerce-login .login input[type="password"] {
  margin-bottom: 22px;
}
#page .woocommerce .woocommerce-login .login .remember-me {
  font-size: 0.7em;
}
#page .woocommerce .woocommerce-login .login .remember-me .woocommerce-Input--checkbox {
  margin-top: 0;
}
#page .woocommerce .woocommerce-login .login .lost_password {
  font-size: 0.85em;
}
#page .woocommerce .woocommerce-customer-details h2 {
  background-color: transparent;
  margin-bottom: 0;
  padding-bottom: 15px;
  font-size: 1.1em;
  font-weight: 400;
  border-bottom: 2px solid #ce2b30;
  padding-right: 3em;
}
#page .woocommerce .woocommerce-customer-details h3 {
  padding: 0 15px;
}
#page .woocommerce .woocommerce-customer-details address {
  padding: 15px;
}
#page .woocommerce .woocommerce-customer-details table td,
#page .woocommerce .woocommerce-customer-details table th {
  text-align: right;
}
#page .woocommerce .products-catalog .product {
  margin-bottom: 2.2em;
}
#page .woocommerce .products-catalog .woocommerce-loop-product__title {
  font-weight: 400;
  overflow: hidden;
  padding: 0.5em 0 0 0;
  margin: 0;
  font-size: 1em;
  height: 4em;
}
#page .woocommerce .products-catalog .thumbnail {
  margin-bottom: 0;
  border: 0 solid #dddddd;
  border-radius: 0;
}
#page .woocommerce .products-catalog .price {
  color: #111111;
  font-size: 1em;
}
#page .woocommerce .products-catalog .price ins {
  background: inherit;
  font-weight: 400;
  text-decoration: none;
}
#page .woocommerce .products-catalog .btn-white {
  color: #111111;
  border-radius: 4px;
  font-weight: 600;
  border: 2px solid #111111;
  margin-top: 1em;
  padding: 7px 35px;
}
#page .woocommerce .products-catalog .btn-white:hover {
  color: #fff;
  border: 2px solid #ce2b30;
}
#page .woocommerce .products-catalog .modal .modal-header .close {
  margin-top: 3px;
  color: #fff;
  font-size: 1.4em;
  background: #111111;
  border-radius: 100%;
  padding: 0.3em 0.45em;
  opacity: 1;
  font-weight: normal;
}
#page .woocommerce .products-catalog .modal h1 {
  font-size: 1.6em;
  margin-bottom: 0.1em;
}
#page .woocommerce .products-catalog .modal .price {
  font-size: 1.4em;
  margin-bottom: 0.1em;
}
#page .woocommerce .products-catalog .modal .price span {
  font-weight: 300;
}
#page .woocommerce .products-catalog .modal .price ins {
  text-decoration: none;
}
#page .woocommerce .products-catalog .modal .product-description {
  color: #111111;
  font-weight: 500;
  font-size: 1.125em;
  text-decoration: underline;
  -moz-text-decoration-color: red;
  /* Code for Firefox */
  text-decoration-color: red;
}
#page .woocommerce .products-catalog .modal p {
  font-size: 1em;
}
#page .woocommerce .products-catalog .modal .product-sku {
  font-weight: 300;
  color: #8d8d8d;
}
#page .woocommerce .products-catalog .modal h2 {
  margin-top: 0.3em;
  color: #111111;
  font-weight: 500;
  font-size: 1.125em;
  text-decoration: underline;
  -moz-text-decoration-color: #ce2b30;
  /* Code for Firefox */
  text-decoration-color: #ce2b30;
}
#page .woocommerce .products-catalog .modal table.shop_attributes {
  border: 0;
  border-top: none;
  margin-bottom: 0.3em;
  width: 100%;
}
#page .woocommerce .products-catalog .modal table.shop_attributes th {
  width: 150px;
  font-weight: 300;
  padding: 0;
  color: #8d8d8d;
  text-align: right;
  display: block;
  border-bottom: none;
  background: transparent !important;
}
#page .woocommerce .products-catalog .modal table.shop_attributes td {
  display: block;
  color: #8d8d8d;
  font-style: normal;
  border: none;
  background: transparent !important;
}
#page .woocommerce .products-catalog .modal table.shop_attributes p {
  margin-bottom: 10px;
}
#page .woocommerce .products-catalog .modal table.shop_attributes p a {
  color: #8d8d8d;
}
#page .woocommerce .personal-arrangement {
  padding: 0 1.5em;
  margin-bottom: 1.5em;
}
#page .woocommerce .personal-arrangement .thumbnail {
  float: right;
  width: 50%;
  padding: 5px;
  margin-left: 2%;
  border: none;
}
#page .woocommerce .personal-arrangement .slick-arrow {
  top: 1.3vw;
  font-size: 1em;
}
#page .woocommerce .personal-arrangement .slick-prev {
  right: -1em;
}
#page .woocommerce .personal-arrangement .slick-next {
  left: -1em;
}
#page .woocommerce .personal-arrangement .product-details {
  float: right;
  width: 47%;
  padding: 5px;
  margin: 0;
}
#page .woocommerce .personal-arrangement .product-details h2 {
  font-size: 0.9em;
  margin-bottom: 0.2em;
  height: 3.8em;
  font-weight: normal;
}
#page .woocommerce .personal-arrangement .product-details .price {
  color: #111111;
  font-size: 0.9em;
  font-weight: normal;
}
#page .woocommerce .personal-arrangement .product-details .price ins {
  background: inherit;
  font-weight: normal;
  text-decoration: none;
}
#page .woocommerce .personal-arrangement .product-details .btn-white {
  color: #111111;
  border-radius: 4px;
  font-weight: 600;
  border: 2px solid #111111;
  margin-top: 0.9em;
  padding: 5px 20px;
}
#page .woocommerce .personal-arrangement .product-details .btn-white:hover {
  color: #fff;
  border: 2px solid #ce2b30;
  outline: none;
}
#page .woocommerce .my-account-content .temp-order .product-cart {
  margin: 2em 0;
}
@media (min-width: 992px) {
  #page .woocommerce .my-account-content .temp-order .product-cart {
    margin: 0.5em 0;
  }
}
#page .woocommerce .my-account-content .temp-order .product-cart table.shop_table {
  table-layout: fixed;
  border: none;
}
#page .woocommerce .my-account-content .temp-order .product-cart table.shop_table .product-thumbnail img {
  width: 100px;
  height: 100px;
  margin-top: -2em;
}
#page .woocommerce .my-account-content .temp-order .product-cart table.shop_table thead td {
  font-size: 1em;
  vertical-align: middle;
  text-align: right !important;
}
#page .woocommerce .my-account-content .temp-order .product-cart table.shop_table td {
  font-size: 0.8em;
  border: none;
  vertical-align: middle;
  text-align: right !important;
}
#page .woocommerce .my-account-content .temp-order .product-cart table.shop_table button {
  border-radius: 100%;
  background: transparent;
  color: #333333;
  font-size: 0.8em;
  padding: 0.8em 0.7em 0.5em;
  border: 1px solid #d4cccc;
  font-weight: bold;
}
#page .woocommerce .my-account-content .temp-order .product-cart table.shop_table button .icon-close:before {
  content: "e907";
}
#page .woocommerce .my-account-content .temp-order .product-cart .sizes {
  /* OLD - iOS 6-, Safari 3.1-6 */
  /* OLD - Firefox 19- (buggy but mostly works) */
  /* TWEENER - IE 10 */
  /* NEW - Chrome */
  /* NEW, Spec - Opera 12.1, Firefox 20+ */
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  margin: 0 auto;
  margin-bottom: 1em;
}
#page .woocommerce .my-account-content .temp-order .product-cart .sizes .size-wrapper {
  border-left: 1px solid #000000;
  border-top: 1px solid #000000;
  border-bottom: 1px solid #000000;
  text-align: center;
}
@media (max-width: 991px) {
  #page .woocommerce .my-account-content .temp-order .product-cart .sizes .size-wrapper {
    border-right: 1px solid #8d8d8d;
  }
}
#page .woocommerce .my-account-content .temp-order .product-cart .sizes .size-wrapper:first-child {
  border-right: 1px solid #000000;
}
#page .woocommerce .my-account-content .temp-order .product-cart .sizes .size-wrapper .quantity {
  display: inline-block;
}
#page .woocommerce .my-account-content .temp-order .product-cart .sizes .size-wrapper input {
  width: 2em;
}
#page .woocommerce .my-account-content .temp-order .product-cart .sizes .size-wrapper .quantity .qty {
  border: none;
}
#page .woocommerce .my-account-content .temp-order .product-cart .sizes .size-wrapper .size-header {
  border-bottom: 1px solid #000000;
  background-color: #e5e5e5;
  padding: 0.5em 0;
  border-right: 0 solid #000000;
  border-left: 0 solid #000000;
  border-top: 0 solid #000000;
}
#page .woocommerce .my-account-content .temp-order .product-cart .sizes .size-wrapper .quantity-wrapper {
  text-align: center;
  padding: 0.2em 1.2em;
}
#page .woocommerce .my-account-content .temp-order .product-cart .arrow-wrapper {
  bottom: 0.2em;
}
#page .woocommerce .my-account-content .temp-order .product-cart select {
  font-size: 1.1em;
}
@media (max-width: 767px) {
  #page .woocommerce .my-account-content .top-select .arrow-wrapper {
    left: 40px;
  }
}
#page .woocommerce .my-account-content label.checkbox span {
  line-height: 1.1;
}
@media (max-width: 767px) {
  #page .woocommerce .my-account-content select.branch {
    width: 90%;
    padding: 0.27em 1em 0.27em 1em;
  }
}
.navbar-default {
  background-color: transparent;
  border-color: transparent;
}
.navbar-default .nav-tabs {
  border-bottom: none;
}
.navbar-default li {
  border: 1px solid #e5e5e5;
  background: #f7f7f7;
  margin: 0;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  width: 100%;
}
@media (min-width: 992px) {
  .navbar-default li {
    width: auto;
  }
}
.navbar-default li > a {
  padding: 4.5px 3.8em;
  font-size: 1.8em;
}
@media (min-width: 992px) {
  .navbar-default li > a {
    font-size: 1.1em;
  }
}
.navbar-default li.is-active {
  background: #fff;
}
.navbar-default li.is-active > a {
  color: #ce2b30;
}
.my-account-content {
  background: #fff;
  border: 1px solid #e5e5e5;
  padding: 20px;
}
@media (min-width: 992px) {
  .my-account-content {
    padding: 50px;
  }
}
.my-account-content p {
  margin-bottom: 30px;
}
.my-account-content .woocommerce-order-details .woocommerce-order-details__title {
  padding-bottom: 15px;
  font-size: 1.1em;
  font-weight: 400;
  border-bottom: 2px solid #ce2b30;
  padding-right: 3em;
}
.my-account-content .edit-account label {
  font-size: 1.1em;
  font-weight: 400;
}
.woocommerce-edit-address .woocommerce-Address {
  border: 1px solid #e5e5e5;
}
.woocommerce-edit-address .woocommerce-Address-title {
  padding: 8px 15px;
}
.woocommerce-edit-address .woocommerce-Address-title h3 {
  float: right;
  font-size: 1em;
  line-height: 1.5em;
}
.woocommerce-edit-address .woocommerce-Address-title .btn-red {
  font-size: 0.7em;
}
.woocommerce-edit-address address {
  min-height: 250px;
  border-top: none;
  padding: 15px;
}
.woocommerce-account-fields .create-account {
  display: none;
}
label.checkbox span {
  padding-right: 30px;
  line-height: 1;
}
.woocommerce-login.padding-x-lg {
  padding-right: 0;
  padding-left: 0;
}
@media (min-width: 1400px) {
  .woocommerce-login.padding-x-lg {
    padding-right: 100px;
    padding-left: 125px;
  }
}
.woocommerce-login .padding-x-lg {
  padding-right: 0;
  padding-left: 0;
}
@media (min-width: 1400px) {
  .woocommerce-login .padding-x-lg {
    padding-right: 100px;
    padding-left: 125px;
  }
}
.woocommerce-login form .form-row-first {
  float: none !important;
  width: 100% !important;
}
.woocommerce-login form .form-row-last {
  float: none !important;
  width: 100% !important;
}
#allocation-form-modal .allocation-form label {
  font-weight: 400;
}
#allocation-form-modal h2 {
  font-size: 2em;
}
#allocation-form-modal .required-fields {
  font-size: 0.8em;
}
#allocation-form-modal .newsletter-checkbox {
  font-size: 0.8em;
}
#allocation-form-modal .form-control {
  display: block;
  width: 100%;
  height: 40px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857143;
  color: #555555;
  background-color: #ffffff;
  background-image: none;
  border: 1px solid #cccccc;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.woocommerce-EditAccountForm fieldset {
  padding: 0 1em 3.35em !important;
}
.woocommerce-EditAccountForm fieldset legend {
  font-size: 1.5em;
  color: #333333;
  padding: 0 0.5em;
}
@media (min-width: 992px) {
  .woocommerce-EditAccountForm fieldset legend {
    padding: 0 6.5em;
  }
}
label.checkbox input {
  opacity: 0;
}
label.checkbox span {
  display: inline-block;
  position: relative;
  padding-right: 2em;
  line-height: 1.5;
}
label.checkbox span:before,
label.checkbox span:after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 20px;
  height: 20px;
  right: 0;
  margin-right: 0;
  border: 1px solid #cccccc;
  border-radius: 3px;
  background-color: #fff;
  -webkit-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  -o-transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  transition: border 0.15s ease-in-out, color 0.15s ease-in-out;
  line-height: 1;
  top: 0;
}
label.checkbox span.large {
  line-height: 1;
}
label.checkbox span.large:before,
label.checkbox span.large:after {
  width: 30px;
  height: 30px;
  line-height: 1;
}
label.checkbox input[type="checkbox"]:checked + span.large:after {
  font-size: 20px;
}
label.checkbox input[type="checkbox"]:checked + span:after {
  font-family: 'FontAwesome';
  content: "f00c";
  text-align: center;
  padding-top: 3px;
  font-size: 14px;
}
.woocommerce-order-details__title {
  margin-bottom: 0;
  font-size: 1.6em;
}
.woocommerce-order-details .woocommerce-table__product-name a {
  font-weight: 600;
}
.woocommerce-order-details .woocommerce-table--order-details .totals-orders tr {
  background-color: #f7f7f7 !important;
}
.woocommerce-order-details .woocommerce-table--order-details .totals-orders tr .woocommerce-Price-amount {
  font-weight: 600;
}
.woocommerce-order-details .woocommerce-table--order-details .totals-orders tr .shipped_via {
  color: #b3b3b3;
}
.woocommerce-order-details .woocommerce-table--order-details .totals-orders tr .includes_tax {
  color: #b3b3b3;
}
.woocommerce-order-details .woocommerce-table--order-details .totals-orders th {
  font-size: 1.15em;
  text-align: left;
}
.woocommerce-order-details .woocommerce-table--order-details tfoot.totals-orders tr:last-child {
  background-color: #e5e5e5 !important;
}
.woocommerce-order-details .woocommerce-customer-details h2 {
  font-size: 1.6em;
  padding-right: 0;
  font-weight: 300;
  border-bottom: none;
  margin: 1.5em 0 0 0;
}
.woocommerce-order-details .woocommerce-customer-details table.shop_table {
  margin: 0 0 0 -1px;
  border-radius: 0;
}
.woocommerce-order-details .woocommerce-customer-details table tr th {
  font-size: 1.15em;
  text-align: left;
}
.woocommerce-order-details .woocommerce-customer-details .woocommerce-columns--addresses {
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-top: none;
}
.woocommerce-order-details .woocommerce-customer-details .woocommerce-columns--addresses .woocommerce-column--billing-address {
  padding: 9px 12px;
}
.woocommerce-order-details .woocommerce-customer-details .woocommerce-columns--addresses .woocommerce-column--shipping-address {
  padding: 9px 12px;
}
.woocommerce-order-details .woocommerce-customer-details .woocommerce-columns--addresses h3 {
  font-size: 1.25em;
}
.my-account-content .woocommerce-Address-title {
  padding: 9px 12px;
}
.my-account-content .woocommerce-Address-title h3 {
  font-size: 1.15em;
  line-height: 1.5em;
}
.my-account-content .woocommerce-Address-title .btn-red-personal {
  color: #ce2b30 !important;
  background-color: #fff !important;
  clear: none;
}
.my-account-content .woocommerce-Address-title .btn-red-personal:focus {
  outline: none;
}
.my-account-content .woocommerce-Address-title .btn-red-personal:hover {
  color: #fff !important;
  background-color: #ce2b30 !important;
  outline: none;
}
.my-account-content .woocommerce-Address {
  border: 1px solid rgba(0, 0, 0, 0.1);
}
.my-account-content address {
  padding: 9px 12px;
}
.woocommerce .my-account-content .shop_table_responsive tr td {
  text-align: center !important;
  padding: 8px 0;
}
.woocommerce .my-account-content .shop_table_responsive tr td::before {
  display: none;
}
#page .woocommerce .products-catalog .modal .business-catalog table.shop_attributes th {
  text-align: center;
  width: auto;
}
@media (min-width: 992px) {
  #page .woocommerce .products-catalog .modal .business-catalog table.shop_attributes th {
    text-align: right;
  }
}
#page .woocommerce .products-catalog .modal .business-catalog h1 {
  margin: 0.4em 0;
  font-weight: 500;
}
#page .woocommerce .products-catalog .modal .business-catalog .price {
  margin: 0.4em 0;
  font-weight: 500;
}
#page .woocommerce .products-catalog .modal .business-catalog .product-sku {
  margin: 0.4em 0;
}
#page .woocommerce .products-catalog .modal .business-catalog .product-description {
  margin-bottom: 15px;
}
@media (min-width: 992px) {
  .business-catalog h1 {
    margin: 0.2em 0;
  }
  .business-catalog .price {
    margin: 0.2em 0;
  }
  .business-catalog .product-sku {
    margin: 0.2em 0;
  }
}
@media (max-width: 767px) {
  #page .woocommerce .my_account_orders td:not(.woocommerce-orders-table__cell-order-actions) {
    text-align: right !important;
  }
}
.products-catalog .modal .modal-header {
  padding: 8px;
  border-bottom: 0 solid #e5e5e5;
}
.products-catalog .modal .close {
  position: absolute;
  top: 3px;
  right: 5px;
  z-index: 10;
}
.tlj {
  font-size: 14px;
}
.socials-list {
  margin: 0.8em 0;
}
.socials-list img {
  display: none;
}
.socials-list a.ywsl-social {
  margin-right: 8px;
}
.socials-list a.ywsl-social.ywsl-google:after {
  content: 'Google';
  display: block;
  background-color: #fff;
  padding: 5px 12px;
  border-radius: 5px;
  color: #ce2b30;
  border: 1px solid #ce2b30;
  width: 110px;
  text-align: center;
}
@media (min-width: 1430px) and (max-width: 1450px) {
  .socials-list a.ywsl-social.ywsl-google:after {
    margin-top: 20px;
  }
}
.socials-list a.ywsl-social.ywsl-facebook:after {
  content: 'Facebook';
  display: block;
  background-color: #3B5998;
  padding: 6px 12px;
  border-radius: 5px;
  color: #fff;
}
@media (max-width: 767px) {
  #customer_login .border-left {
    border: 0;
  }
}
.emp-order-wrapper {
  width: 100%;
  display: inline-block;
  margin: 2em 0;
}
.employee-order-temp .toggle-emp,
.all-order-temp .toggle-emp {
  display: inline-block;
}
.employee-order-temp .btn:focus,
.all-order-temp .btn:focus {
  color: #fff;
  text-decoration: none;
  outline: none;
}
.employee-order-temp .btn.focus,
.all-order-temp .btn.focus {
  color: #fff;
  text-decoration: none;
  outline: none;
}
.set-order {
  outline: none;
  margin-top: 0;
  float: none;
}
@media (min-width: 992px) {
  .set-order {
    margin-top: 25px;
    float: left;
  }
}
.set-order:focus {
  outline: none;
  color: #fff;
}
.btn-white.set-employee-order {
  padding: 7px 12px;
  vertical-align: bottom;
}
@media (max-width: 991px) {
  .btn-white.set-employee-order {
    margin: 1em;
  }
}
.btn-white.save-employee-order {
  vertical-align: bottom;
}
@media (max-width: 991px) {
  .btn-white.save-employee-order {
    margin: 1em;
  }
}
.order-current-employee .open-employee-order {
  padding: 7px 12px;
  vertical-align: bottom;
}
@media (max-width: 991px) {
  .order-current-employee .open-employee-order {
    margin: 1em;
  }
}
.order-current-employee .close-employee-order {
  vertical-align: bottom;
}
@media (max-width: 991px) {
  .order-current-employee .close-employee-order {
    margin: 1em;
  }
}
.employee-order-temp,
.emp-items {
  margin-top: 60px;
}
@media (max-width: 991px) {
  .employee-order-temp,
  .emp-items {
    margin-right: 0 !important;
  }
}
.order-current-employee {
  display: inline-block;
}
@media (max-width: 767px) {
  .order-current-employee {
    width: 100%;
  }
}
.order-current-employee .form-control {
  border: 0 solid #cccccc;
  -webkit-box-shadow: none;
  box-shadow: none;
  margin-bottom: 12px;
}
.order-current-employee input[type="text"],
.order-current-employee input[type="tel"],
.order-current-employee input[type="email"],
.order-current-employee select {
  background-color: #fff;
  width: 100%;
  height: 40px;
  font-size: 1.3em;
  padding: 10px;
  margin-bottom: 14px;
  outline: none;
  border-radius: 5px;
  border: 1px solid #e5e5e5;
  font-weight: 300;
}
@media (min-width: 992px) {
  .order-current-employee input[type="text"],
  .order-current-employee input[type="tel"],
  .order-current-employee input[type="email"],
  .order-current-employee select {
    font-size: 1.3em;
  }
}
.order-current-employee textarea {
  background-color: #fff;
  color: #111111;
  height: 80px;
  padding: 2px 10px;
  margin-bottom: 14px;
  font-size: 1em;
  border-radius: 5px;
  border: 1px solid #e5e5e5;
  font-weight: 300;
  resize: none;
  overflow: auto;
  outline: none;
  width: 100%;
}
@media (min-width: 992px) {
  .order-current-employee textarea {
    font-size: 1.3em;
  }
}
.order-current-employee input[type="submit"] {
  font-size: 1.2em;
}
@media (min-width: 992px) {
  .order-current-employee input[type="submit"] {
    font-size: 1em;
  }
}
.order-current-employee input[type="submit"]:focus,
.order-current-employee input[type="submit"] :active {
  outline: none !important;
}
.woocommerce .emp-order-wrapper .sizes {
  display: flex;
  display: -webkit-flex;
}
.woocommerce .emp-order-wrapper .sizes .size-wrapper {
  margin: 0 0 1.2em;
}
.woocommerce .emp-order-wrapper .sizes .size-wrapper .size-header {
  text-align: center;
  background: #e5e5e5;
  width: 100%;
  padding: 2px 12px;
  border-top: 1px solid #8d8d8d;
  border-right: 1px solid #8d8d8d;
  border-left: 1px solid #8d8d8d;
}
.woocommerce .emp-order-wrapper .sizes .size-wrapper .quantity-wrapper .qty {
  width: 5.5em;
  padding: 2px 12px;
  border: 1px solid #8d8d8d;
}
#page .woocommerce table.shop_table th.woocommerce-orders-table__header {
  text-align: center;
}
#page .woocommerce .woocommerce-customer-details h2 {
  font-size: 1.5em;
  font-weight: 400;
  border-bottom: 0 solid #ce2b30;
  padding-right: 0;
}
#page .woocommerce .woocommerce-customer-details .woocommerce-table--customer-details td {
  text-align: right;
  padding: 11px 12px;
}
#page .woocommerce .woocommerce-customer-details .woocommerce-table--customer-details th {
  text-align: left;
}
#page .woocommerce .woocommerce-order-details .woocommerce-table--order-details td {
  text-align: right;
  padding: 11px 12px;
}
#page .woocommerce .woocommerce-order-details .woocommerce-table--order-details th {
  text-align: left;
}
#page .woocommerce .woocommerce-order-details .woocommerce-table--order-details th.woocommerce-table__product-name {
  text-align: right;
}
#page .woocommerce .woocommerce-order-details .woocommerce-table--order-details th.woocommerce-table__product-table {
  text-align: right;
}
.woocommerce-order-received .woocommerce-order-details .woocommerce-table--order-details tbody {
  background-color: #fff;
}
.btn-red-personal {
  outline: none;
}
.btn-red-personal:focus {
  outline: none;
}
.btn-red-personal:hover {
  outline: none;
}
@media (max-width: 767px) {
  .woocommerce-page .woocommerce-info {
    padding: 1em 2em 1em 2em;
  }
  .woocommerce-page .woocommerce-info .button {
    float: none;
    display: block;
    text-align: center;
    margin-bottom: 10px;
  }
  .woocommerce-page .woocommerce-message {
    padding: 1em 2em 1em 2em;
  }
  .woocommerce-page .woocommerce-message .button {
    float: none;
    display: block;
    text-align: center;
    margin-bottom: 10px;
  }
}
@media (max-width: 767px) {
  .woocommerce-view-order table.woocommerce-table--order-details tr td {
    display: block;
    text-align: right !important;
  }
  .woocommerce-view-order table.woocommerce-table--order-details tr th {
    display: block;
    text-align: right !important;
  }
}
.add-employee-order {
  border: none;
  color: #ce2b30;
  font-size: 1.2em;
  outline: none;
  display: inline-block;
  vertical-align: top;
  margin-top: 0.8em;
}
.add-employee-order i {
  background: #ce2b30;
  color: white;
  border-radius: 100%;
  font-size: 0.8em;
  height: 2.2em;
  width: 2.2em;
  line-height: 2.3em;
}
.employee-order-items-error {
  margin: 30px;
  color: #ce2b30;
}
.order-current-employee {
  position: relative;
}
.order-current-employee .error {
  position: absolute;
  left: 20px;
  color: #ce2b30;
  display: inline-block;
}
@media (min-width: 992px) {
  .order-current-employee .error {
    position: absolute;
    left: auto;
    right: auto;
    padding-right: 6px;
  }
}
.sidur-lables {
  padding-left: 0.5em;
  font-size: 1.2em;
}
.woocommerce .my-account-content select {
  font-size: 1.2em;
}
.woocommerce .my-account-content .arrow-wrapper {
  bottom: 0.65em;
}
.upload-order-file .input-group {
  display: block;
}
.upload-order-file .btn-danger {
  width: 100% !important;
}
.upload-order-file .btn-info {
  color: #ffffff;
  background-color: #ce2b30;
  border-color: #ce2b30;
  border-radius: 0;
}
.upload-order-file .btn-info:hover {
  background-color: #ce2b30;
  outline: 0;
}
.upload-order-file .btn-info:focus {
  background-color: #ce2b30;
  outline: 0;
}
.upload-order-file .btn-red-send:hover {
  background-color: #ce2b30;
  outline: 0;
  color: #ffffff !important;
}
.upload-order-file .btn-red-send:focus {
  background-color: #ce2b30;
  outline: 0;
  color: #ffffff !important;
}
.upload-order-file .form-control {
  border-radius: 0 5px 5px 0;
  background: transparent;
  border: 1px solid #ededed;
  width: 150px;
}
.upload-order-file .group-span-filestyle label span {
  border-radius: 5px 0 0 5px;
}
.upload-order-file .filename {
  display: inline-block;
  word-break: break-all;
  width: 80px;
  text-align: left;
}
/* contact-page.less */
.page-template-page-contact #breadcrumbs {
  background-color: #f7f7f7;
}
.contact-section .contact-form-main {
  margin-bottom: 30px;
}
@media (min-width: 992px) {
  .contact-section .contact-form-main {
    margin-bottom: 0;
  }
}
.contact-section .contact-info .contact-text {
  display: flex;
  display: -webkit-flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  margin-bottom: 6.3vh;
}
.contact-section .contact-info .contact-text .font-600 {
  font-size: 1.1em;
}
.contact-section .contact-info .contact-text .color-gray-dark {
  font-size: 1.1em;
}
.contact-section .contact-info .contact-icon {
  font-size: 40px;
  color: #ce2b30;
  margin-bottom: 20px;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media (min-width: 992px) {
  .contact-section .contact-info .contact-icon {
    font-size: 2.8em;
  }
}
.contact-section .contact-info .contact-icon:hover {
  transform: rotate(20deg);
}
.contact-section .social-title {
  display: block;
}
.contact-section .social-icon {
  padding: 10px;
  display: inline-block;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.contact-section .social-icon:hover {
  transform: translateY(-10px);
}
.contact-section .arrow-wrapper {
  position: absolute;
  bottom: 0.5em;
  left: 12px;
  padding-left: 0;
  font-size: 0.8em;
  color: #8d8d8d;
  height: 20px;
  pointer-events: none;
  background: transparent;
}
.map-wrapper {
  height: 200px;
}
@media (min-width: 992px) {
  .map-wrapper {
    height: 34.5vw;
  }
}
.map-wrapper #map {
  height: 100%;
}
.contact-info a.facebook {
  border-radius: 5px;
  font-size: 1.2em;
  color: #8d8d8d;
}
.contact-info a.google-plus {
  margin: 0 1.5em;
  font-size: 1em;
  color: #8d8d8d;
}
.contact-info a.youtube {
  font-size: 1.1em;
  color: #8d8d8d;
}
/* END contact-page.less */
/* about.less */
.benefits-wrapper {
  padding-top: 3.3vw;
  padding-bottom: 4.3vw;
}
.benefit-content {
  padding-right: 0.6vw;
  padding-left: 0.6vw;
}
.benefit {
  text-align: center;
  margin-bottom: 15px;
}
@media (min-width: 992px) {
  .benefit {
    margin: 0;
  }
}
.benefit-title {
  font-size: 1.5em;
  font-weight: 300;
}
.benefit-img {
  padding-bottom: 1.5em;
}
@media (min-width: 992px) {
  .benefit-img {
    padding-bottom: 1.5em;
  }
}
.about-sections {
  padding-top: 2.6vw;
  padding-bottom: 2.6vw;
}
.about-sections .about-title {
  font-size: 2em;
  font-weight: 300;
}
.about-sections .about-sub-text {
  font-size: 1em;
  line-height: 1.4;
  text-align: center;
  padding-right: 1vw;
  padding-left: 1vw;
}
.row-title {
  min-height: 19.8vw;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  justify-content: center;
  -webkit-justify-content: center;
}
.team-member {
  background-repeat: no-repeat !important;
  background-position: center top !important;
  background-size: contain !important;
  height: 300px !important;
  overflow: hidden;
}
.team-member .team-member-text {
  text-align: center;
  height: inherit;
  position: relative;
  bottom: 0;
  background-color: transparent;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  justify-content: flex-end;
  -webkit-justify-content: flex-end;
  width: 50%;
  margin: 0 auto;
  color: #fff;
}
.team-member .team-member-text .member-title {
  display: inline-block;
  font-weight: 300;
  font-size: 1.5em;
  padding-bottom: 0.8vw;
  background-color: rgba(206, 43, 48, 0.68);
}
.team-member .team-member-text .member-text {
  display: block;
  background-color: rgba(206, 43, 48, 0.68);
}
.team-member .team-member-text .text-underline:after {
  background-color: #fff !important;
  margin-top: 0.8vw;
  width: 40%;
}
@media (min-width: 992px) {
  .team-member {
    height: 19.8vw !important;
  }
  .team-member .team-member-text {
    text-align: center;
    height: inherit;
    position: relative;
    bottom: -100%;
    background-color: rgba(206, 43, 48, 0.68);
    color: #fff;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    justify-content: center;
    -webkit-justify-content: center;
    width: 100%;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .team-member .team-member-text .member-title {
    display: inline-block;
    font-weight: 300;
    font-size: 1.5em;
    margin-bottom: 0.8vw;
    background-color: transparent;
  }
  .team-member .team-member-text .text-underline:after {
    background-color: #fff !important;
    margin-top: 0.8vw;
    width: 40%;
  }
  .team-member .team-member-text .member-text {
    display: block;
    background-color: transparent;
  }
  .team-member:hover .team-member-text {
    bottom: 0;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
    -ms-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
}
.slick-next {
  border: none;
  background-color: transparent;
  position: absolute;
  left: 0;
  top: 40%;
  outline: none;
  font-size: 0.5em;
}
.slick-next i {
  font-size: 5.2em;
  color: #ce2b30;
}
.slick-prev {
  border: none;
  background-color: transparent;
  position: absolute;
  right: 0;
  top: 40%;
  outline: none;
  z-index: 99;
  font-size: 0.5em;
}
.slick-prev i {
  font-size: 5.2em;
  color: #ce2b30;
}
.slick-dots {
  list-style-type: none;
  text-align: center;
  margin-top: 30px;
  margin-bottom: 30px;
}
.slick-dots li {
  vertical-align: middle;
  display: inline-block;
}
.slick-dots li:before {
  cursor: pointer;
  content: "";
  width: 15px;
  height: 15px;
  display: block;
  border-radius: 100%;
  margin: 0 5px;
  border: 1px solid #ce2b30;
}
.slick-dots li button {
  display: none;
}
.slick-dots li.slick-active:before {
  background-color: #ce2b30;
}
.about-services-slider .slick-dots {
  margin-top: 10px;
  margin-bottom: 10px;
}
.about-services-slider .slick-slide img {
  display: inline-block;
  vertical-align: top;
}
.about-team .title-underline {
  margin-top: 0;
}
.about-team .team-members-slider .slick-prev {
  right: 0;
}
@media (min-width: 992px) {
  .about-team .team-members-slider .slick-prev {
    right: -15px;
  }
}
.about-team .team-members-slider .slick-next {
  left: 0;
}
@media (min-width: 992px) {
  .about-team .team-members-slider .slick-next {
    left: -20px;
  }
}
/* end about.less */
/* file name thank-you.less */
.thank-you {
  min-height: 84vh;
  background-color: transparent;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}
@media (max-width: 767px) {
  .thank-you {
    background-image: none;
    top: auto;
  }
}
.thank-you-content {
  position: absolute;
  margin: 0 auto;
  top: 45vw;
  width: 100%;
}
@media (min-width: 992px) {
  .thank-you-content {
    top: 17vw;
  }
}
@media (max-width: 767px) {
  .thank-you-content {
    top: 10vw;
    width: 85vw;
  }
}
/* frontpage.less */
.categories-section {
  position: relative;
}
.categories-section .category-slider-wrapper {
  overflow: hidden;
  position: relative;
  margin-bottom: 15px;
}
.categories-section .category-slider-wrapper img {
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width: 100%;
}
.categories-section .category-slider-wrapper:hover img {
  transform: scale(1.1);
}
@media (min-width: 992px) {
  .categories-section .category-slider-wrapper {
    margin-bottom: 0;
  }
}
.categories-section .category-slider-wrapper .category-title-wrapper {
  position: absolute;
  top: 9.9em;
  right: 0;
  width: 100%;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.2);
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  align-items: center;
  -webkit-align-items: center;
  padding: 25px 0;
}
.our-clients .our-clients-slider .client-image-wrapper {
  padding-top: 30px;
}
.our-clients .our-clients-slider .slick-prev {
  border: none;
  background-color: transparent;
  position: absolute;
  right: 0;
  top: 40%;
  outline: none;
  z-index: 99;
  font-size: 0.5em;
}
@media (min-width: 992px) {
  .our-clients .our-clients-slider .slick-prev {
    top: 40%;
  }
}
.our-clients .our-clients-slider .slick-next {
  border: none;
  background-color: transparent;
  position: absolute;
  left: 0;
  top: 40%;
  outline: none;
  font-size: 0.5em;
}
@media (min-width: 992px) {
  .our-clients .our-clients-slider .slick-next {
    top: 40%;
  }
}
.price-offer-stripe {
  border-top: 1px solid #ce2b30;
  border-bottom: 1px solid #ce2b30;
  height: auto;
}
@media (min-width: 992px) {
  .price-offer-stripe {
    border: 2px solid #ce2b30;
  }
}
.join-club-stripe {
  height: auto;
  display: block;
}
@media (min-width: 992px) {
  .join-club-stripe {
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    -webkit-justify-content: center;
    justify-content: center;
    align-items: center;
    -webkit-align-items: center;
  }
}
.p-strip-custom {
  height: auto;
}
.p-strip-custom p {
  text-align: center;
  margin-bottom: 1.2em;
}
@media (min-width: 992px) {
  .p-strip-custom {
    height: 22.5em;
    text-align: inherit;
  }
}
.p-strip-custom .title-underline {
  font-size: 1.7em;
}
@media (min-width: 992px) {
  .p-strip-custom .title-underline {
    font-size: 2.55em;
  }
}
.cat-art-section .border-box .display-block {
  padding: 0 2.6em;
}
.video-wrapper {
  position: absolute;
  max-width: 100%;
  width: 100%;
  height: 600px;
  display: inline-block;
  z-index: 10001;
  top: 0;
}
.video-wrapper .video-close {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 10002;
  background-color: transparent;
  color: #fff;
  border: none;
}
.video-wrapper .video-close .fa-times {
  background-color: red;
  color: #fff;
  border-radius: 100%;
  font-size: 1.2em;
  height: 1.7em;
  width: 1.7em;
  line-height: 1.7em;
}
.video-wrapper video {
  width: 100% !important;
  height: 100% !important;
}
.related.products h2 {
  white-space: normal;
  text-align: center;
}
.categories-slider .slick-dots {
  margin-top: 10px;
  margin-bottom: 10px;
}
.mobile-product-slider .products li {
  margin: 0 0 3em 0 !important;
  height: auto !important;
  clear: none !important;
}
.quote-form-open:before {
  content: '';
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: 1049;
}
/* END frontpage.less */
/* 404.less */
.btn-back-home {
  position: relative;
  bottom: 25vh;
  background-color: transparent;
  color: #fff;
  font-size: 0.9em;
  padding: 5px 25px;
  font-weight: bold;
  border: 2px solid #fff;
  border-radius: 5px;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-back-home:hover {
  background-color: #fff;
  color: #ce2b30;
  border: 2px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
/* end 404.less */
/** content-excerpt.less**/
.articles-home .meta {
  display: flex;
  display: -webkit-flex;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  padding: 0 4vh;
  font-size: 0.8em;
  font-weight: 500;
}
.categories-nav ul {
  list-style: none;
}
.categories-nav ul .current-cat {
  background-color: #ce2b30;
}
.categories-nav ul .current-cat a {
  color: #fff;
}
.categories-nav ul li {
  display: inline-block;
  border: 1px solid lightgray;
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
  padding: 12px 60px;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.categories-nav ul li:hover {
  background-color: #ce2b30;
}
.categories-nav ul li:hover a {
  color: #fff;
}
.image-wrapper img {
  width: 100%;
}
.article-text-wrapper p {
  padding: 0 20px;
  max-height: 9.6vh;
  overflow: hidden;
}
/** single.less **/
.excerpt p {
  font-size: 20px;
  line-height: 2;
  font-weight: 300;
  margin-bottom: 15px;
}
@media (min-width: 992px) {
  .excerpt p {
    font-size: 1.3em;
  }
}
.single-section .social-share ul {
  list-style: none;
}
.single-section .social-share ul li {
  display: inline;
}
.single-section .social-share ul li i {
  padding: 8px;
}
.sidebar {
  padding-top: 18px;
}
.sidebar .sidebar-content {
  float: right;
  margin-left: 2%;
  text-align: right;
  width: 68%;
}
@media (min-width: 992px) {
  .sidebar .sidebar-content {
    float: right;
    margin-left: 2%;
    text-align: right;
    width: 68%;
  }
}
.sidebar .sidebar-thumb {
  float: left;
  width: 30%;
}
@media (min-width: 992px) {
  .sidebar .sidebar-thumb {
    float: left;
    width: 30%;
  }
}
.sidebar .sidebar-thumb img {
  max-width: 100%;
  height: auto;
}
.sidebar .widget {
  text-align: center;
  padding: 35px 20px;
  margin-bottom: 30px;
  background-color: #f7f7f7;
}
.sidebar .widget ul {
  list-style: none;
}
.sidebar .widget ul li {
  margin-bottom: 25px;
}
.sidebar .recent-posts-2 ul li {
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  align-items: flex-start;
  -webkit-align-items: flex-start;
}
.sidebar .recent-posts-2 ul li a {
  font-weight: 600;
}
.article .meta {
  padding-top: 30px;
}
.single-post #breadcrumbs {
  background-color: #f7f7f7;
}
.addtoany_shortcode .a2a_button_facebook .a2a_svg {
  background-color: #ce2b30 !important;
  color: #fff !important;
}
.addtoany_shortcode .a2a_button_email .a2a_svg {
  background-color: #ce2b30 !important;
  color: #fff !important;
}
.addtoany_shortcode .a2a_button_twitter .a2a_svg {
  background-color: #ce2b30 !important;
  color: #fff !important;
}
.addtoany_shortcode .a2a_button_linkedin .a2a_svg {
  background-color: #ce2b30 !important;
  color: #fff !important;
}
.addtoany_shortcode svg path {
  fill: #fff;
}
/**  qanda.les  **/
.collapse-btn {
  background-color: #ce2b30;
  border: none;
  color: white;
  padding: 6px 6px;
  border-radius: 5px;
  vertical-align: middle;
  margin-left: 25px;
  outline: none;
}
.collapse-btn:before {
  font-family: icomoon;
  content: 'e910';
  display: block;
  font-size: 2px;
  font-weight: 600;
}
.collapsed:before {
  font-family: icomoon;
  content: 'e911';
  display: block;
  font-size: 8px;
  font-weight: 600;
}
@media (max-width: 767px) {
  .qanda-wrapper.padding-y-md3 {
    padding-top: 10px;
    padding-bottom: 20px;
  }
}
.qanda-wrapper p {
  font-size: 1em;
}
@media (min-width: 992px) {
  .qanda-wrapper p {
    font-size: 1em;
  }
}
@media (max-width: 767px) {
  .qanda-wrapper p {
    padding-top: 10px;
  }
}
.qanda-wrapper span.bold {
  position: absolute;
  top: 10px;
  font-size: 1em;
}
@media (min-width: 992px) {
  .qanda-wrapper span.bold {
    position: relative;
    font-size: 1em;
    top: 0;
  }
}
/** standard.less **/
.standard-section .standard-bottom p {
  height: 9vh;
  overflow: hidden;
}
.page-template-page-standard #breadcrumbs {
  background-color: #f7f7f7;
}
/** articles-category.less **/
.category .categories-nav ul li a {
  padding: 0;
}
.category #breadcrumbs {
  background-color: #f7f7f7;
}
.blog .categories-nav ul li a {
  padding: 0;
}
.blog #breadcrumbs {
  background-color: #f7f7f7;
}
/* search.less */
.top-search {
  position: relative;
  margin-left: 19px;
  display: inline-block;
}
.top-search a {
  font-size: 1.4em;
  color: #111111;
  position: absolute;
  top: 1px;
  right: 20px;
}
.top-search input {
  margin-bottom: 4px;
}
.top-search #search-form {
  transition: all 0.5s;
  position: relative;
  width: 150px;
}
.top-search #search-form.open-search {
  opacity: 0;
  width: 10px;
  border: 1px solid transparent !important;
}
.search-results #page ul.products {
  display: inline-block;
  text-align: right;
}
.search-results #page ul.products li.product .button:after {
  position: relative;
}
.search-results #page .entry-content ul li:before {
  content: "";
}
/* end search.less */
.woocommerce #content .product .summary {
  width: 100% !important;
}
.matrix_table input {
  width: 50px;
}
.matrix_table .disabled_order {
  background: #A4A4A4;
}
/*====================================
=           page-landing.less        =
====================================*/
.landing-page-form {
  margin-top: 1em;
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
  flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: center;
  -webkit-align-items: center;
}
@media (min-width: 992px) {
  .landing-page-form {
    flex-direction: row;
    -webkit-flex-direction: row;
  }
}
.landing-page-form .form-group {
  margin-bottom: 15px;
}
@media (min-width: 992px) {
  .landing-page-form .form-group {
    margin-bottom: 0;
  }
}
div.wpcf7-response-output {
  border: 2px solid transparent !important;
}
/* page-branches.less  */
.img-wrapper {
  padding: 10px 0;
}
@media (min-width: 992px) {
  .img-wrapper {
    padding: 5vh 0;
  }
}
.branch-wrapper {
  margin-top: 2.5vw;
  font-size: 38px;
}
@media (min-width: 992px) {
  .branch-wrapper {
    font-size: 1em;
  }
}
.branch-wrapper .slick-dots {
  margin-top: 10px;
  margin-bottom: 10px;
}
@media (min-width: 992px) {
  .branch-wrapper .slick-dots {
    margin-top: 30px;
    margin-bottom: 30px;
  }
}
.branch-wrapper h2 {
  margin-bottom: 30px;
}
@media (min-width: 992px) {
  .branch-wrapper h2 {
    margin-bottom: 2.8vw;
  }
}
.branch-wrapper .icons-wrapper {
  display: block;
}
@media (min-width: 992px) {
  .branch-wrapper .icons-wrapper {
    display: flex;
    display: -webkit-flex;
  }
}
.branch-wrapper .icons-wrapper .icon-wrapper-single {
  width: auto;
  font-size: 20px;
  display: flex;
  display: -webkit-flex;
  flex-direction: column;
  -webkit-flex-direction: column;
}
@media (min-width: 992px) {
  .branch-wrapper .icons-wrapper .icon-wrapper-single {
    font-size: 1em;
    display: flex;
    display: -webkit-flex;
    flex-direction: column;
    -webkit-flex-direction: column;
    width: 12em;
  }
}
.branch-wrapper .icons-wrapper .icon-wrapper-single span:nth-child(2) {
  font-size: 13px;
  font-weight: bold;
  min-height: 20px;
  margin-bottom: 8px;
}
@media (min-width: 992px) {
  .branch-wrapper .icons-wrapper .icon-wrapper-single span:nth-child(2) {
    font-size: 1em;
    margin-bottom: 20px;
  }
}
.branch-wrapper .icons-wrapper .icon-wrapper-single .branch-info-entry {
  font-size: 15px;
}
@media (min-width: 992px) {
  .branch-wrapper .icons-wrapper .icon-wrapper-single .branch-info-entry {
    font-size: 1em;
  }
}
.branch-wrapper .branches-slider .slick-next {
  font-size: 0.3em;
}
.branch-wrapper .branches-slider .slick-prev {
  font-size: 0.3em;
}
/** videos.less**/
.youtube iframe {
  width: 100%;
}
.video-title-wrapper {
  padding: 30px 0;
}
.page-template-page-videos #breadcrumbs {
  background-color: #f7f7f7;
}
/* page-popup.less */
.popup-section {
  height: 90vh;
}
/* file name header.less */
@media (max-width: 992px) {
  #main-header .middle-header {
    margin-top: 35px;
  }
}
.top-header-mobile {
  border-top: 0 solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  position: fixed;
  top: 0;
  left: 0;
  right: auto;
  z-index: 99999;
  display: block;
  height: auto;
  width: 100%;
  padding: 0;
  margin: 0;
  line-height: 45px;
  background-color: #fff;
}
.top-header-mobile #mobile-header-list {
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: block;
  clear: both;
}
.top-header-mobile #mobile-header-list > li {
  border-left: 1px solid #f7f7f7;
  padding: 0;
  width: 17%;
  float: right;
  text-align: center;
}
.top-header-mobile #mobile-header-list > li:last-child {
  border-left: 0px solid #f7f7f7;
}
.top-header-mobile #mobile-header-list > li.size1 {
  width: 14%;
  height: 47px;
}
.top-header-mobile #mobile-header-list > li.size1 .main-search-button {
  background: transparent;
  border: 0;
}
.top-header-mobile #mobile-header-list > li.size1 .main-search-button .icon-search {
  vertical-align: middle;
}
.top-header-mobile #mobile-header-list > li.size1 .navbar-toggle {
  right: 16px;
  top: 6px;
}
.top-header-mobile #mobile-header-list > li.logo-mobile {
  width: 38%;
}
.top-header-mobile #mobile-header-list > li.logo-mobile a {
  max-width: 120px;
  display: block;
  margin: 0 auto;
}
.top-header-mobile #mobile-header-list > li span.strip {
  width: 22px;
  height: 2px;
  background-color: #000;
  display: block;
  margin-bottom: 6px;
}
.top-header-mobile #mobile-header-list > li .icon-avatar {
  vertical-align: text-bottom;
}
.top-header-mobile #mobile-header-list > li .icon-avatar:before {
  font-size: 1.5em;
}
.top-header-mobile #mobile-header-list > li.header-shopping-cart {
  direction: ltr;
}
.top-header-mobile #mobile-header-list > li.header-shopping-cart .icon-agala {
  vertical-align: text-bottom;
}
.top-header-mobile #mobile-header-list > li.header-shopping-cart .icon-agala:before {
  font-size: 1.5em;
}
.top-header-mobile .top-buttons-red {
  padding: 0;
}
.top-header-mobile .user-menu > nav {
  display: none;
  position: absolute;
  top: 100%;
}
.top-header-mobile .user-menu a {
  font-size: 0.85em;
  text-align: left;
}
.top-header-mobile .user-menu a :hover {
  background-color: #ce2b30;
}
.top-header-mobile .user-menu > nav {
  display: none;
  position: absolute;
  top: 100%;
}
.top-header-mobile .user-menu > nav li {
  float: none;
  border: none;
  background-color: transparent;
}
.top-header-mobile .user-menu > nav a {
  padding: 4px 8px;
  font-weight: normal;
  line-height: 28px;
  display: block;
  color: #fff;
  border: none;
  background-color: #ce2b30;
  border-radius: 0;
  margin-right: 0;
}
.top-header-mobile .user-menu > nav a .fa {
  display: none;
}
.top-header-mobile .user-menu:hover > nav {
  display: inline-block;
  background-color: transparent;
  margin: 0;
  width: 120px;
  position: absolute;
  left: 0;
  margin-top: -2px;
}
.top-header-mobile form.header-search {
  width: 0;
  overflow: hidden;
  position: fixed;
  transition: all 0.5s;
  top: 0;
  height: auto;
  background: white;
}
.top-header-mobile form.header-search.open {
  width: 87%;
  padding-top: 0;
  height: 47px;
}
.top-header-mobile form .form-control {
  display: inline-block;
  height: 40px;
  padding: 4px 8px;
  font-size: 14px;
  color: #111111;
  background-color: #f7f7f7;
  border: none;
  border-radius: 4px;
  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  -webkit-transition: border-color ease-in-out 0.15s, -webkit-box-shadow ease-in-out 0.15s;
  -o-transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}
.top-header-mobile form .search-input {
  float: right;
  margin-left: 5px;
  width: calc(100% - 99px);
  max-width: 400px;
}
.top-header-mobile form .main-search-button-inside {
  float: right;
  background-color: transparent;
  border: 0;
  padding-left: 14px;
}
.top-header-mobile form .close-search-button-inside {
  float: right;
  background-color: transparent;
  border: 0;
  border-right: 1px solid #f7f7f7;
  padding: 0 16px 0 0;
}
.top-header-mobile form .close-search-button-inside .fa-angle-left {
  margin-top: 6px;
}
.top-header-mobile form .close-search-button-inside .fa-angle-left:before {
  font-size: 1.6em;
  color: #ce2b30;
}
.top-header-mobile .form-group {
  margin-bottom: 0;
  padding-top: 0;
}
.top-header {
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99999;
  background-color: #fff;
  height: auto;
}
@media (min-width: 992px) {
  .top-header {
    height: 4.7vh;
    z-index: 9999999;
  }
}
.top-header .top-right {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  text-align: right;
  justify-content: space-around;
  -webkit-justify-content: space-around;
}
@media (max-width: 992px) {
  .top-header .top-right {
    margin-right: -15px;
    align-items: center;
    -webkit-align-items: center;
    min-height: 30px;
  }
}
.top-header .top-right .user-menu .top-buttons-red {
  padding: 2.1vw 1vw;
}
@media (min-width: 992px) {
  .top-header .top-right .user-menu .top-buttons-red {
    padding: 0.6vw 1.28vw;
  }
}
.top-header .top-right .user-menu a {
  padding: 7px 5px 5px !important;
  margin: 0;
  font-size: 0.7em;
}
@media (min-width: 992px) {
  .top-header .top-right .user-menu a {
    padding: 2px 12px 2px !important;
    font-size: 0.8em;
  }
}
@media (min-width: 992px) {
  .top-header .top-right {
    justify-content: inherit;
    -webkit-justify-content: inherit;
  }
}
.top-header .top-right a {
  text-align: right;
}
@media (max-width: 992px) {
  .top-header .top-right a {
    padding: 8px 0 !important;
    margin: 0 2px;
  }
}
@media (min-width: 992px) {
  .top-header .top-right a {
    margin-left: 2px;
    width: auto;
  }
}
@media (min-width: 992px) {
  .top-header .top-right .connect {
    border-left: 1px solid #e5e5e5;
  }
}
.top-header .top-left {
  text-align: left;
}
@media (max-width: 992px) {
  .top-header .top-left {
    min-height: 30px;
  }
  .top-header .top-left a {
    font-size: 1em;
  }
}
.top-header .user-menu {
  padding: 0 0.2vw;
}
@media (min-width: 992px) {
  .top-header .user-menu {
    padding: 0 1.5vw;
  }
}
.top-header .user-menu a {
  font-size: 0.7em;
}
@media (min-width: 992px) {
  .top-header .user-menu a {
    font-size: 0.7em;
  }
}
.top-header .user-menu a :hover {
  background-color: #ce2b30;
}
.top-header .user-menu > nav {
  display: none;
  position: absolute;
  top: 100%;
}
.top-header .user-menu > nav li {
  float: none;
  border: none;
  background-color: transparent;
}
.top-header .user-menu > nav a {
  padding: 4px 8px;
  font-weight: normal;
  line-height: 28px;
  display: block;
  color: #fff;
  border: none;
  background-color: #ce2b30;
  border-radius: 0;
  margin-right: 0;
}
.top-header .user-menu > nav a .fa {
  display: none;
}
.top-header .user-menu:hover > nav {
  display: block;
  background-color: transparent;
}
.top-header .user-menu:hover > .my-account {
  background: #ce2b30;
  width: 100%;
  display: block;
  color: #fff;
}
.user-menu:hover > .my-account {
  background: #ce2b30;
  width: 100%;
  display: block;
}
.social-navigation-header a {
  padding: 0.5vw 1.5vw;
  border-right: 1px solid #e5e5e5;
  text-align: center;
  color: #8d8d8d;
  background-color: #fff;
  font-size: 0.8em;
}
.social-navigation-header a:hover {
  background-color: #8d8d8d;
  color: #fff;
}
.social-navigation-header a span {
  /*padding: 0.6em 0;*/
  line-height: 2.3em;
}
.logo-fix {
  display: none;
}
@media (min-width: 992px) {
  .scrollActive .logo-contain {
    position: fixed;
    top: 0;
    z-index: 9999999;
    width: 130px;
    left: 10vw;
  }
  .scrollActive .logo-normal {
    display: none;
  }
  .scrollActive .logo-fix {
    display: block;
    margin: 5px 0;
  }
}
.ui-autocomplete-loading {
  /*background: url('images/ajax-loader.gif') no-repeat left center;*/
}
@media (min-width: 992px) {
  .middle-header {
    margin-top: 42px;
  }
}
.middle-header .header-search {
  padding-top: 1.2vw;
}
@media (min-width: 992px) {
  .middle-header .header-search {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
}
.middle-header .header-search .search-input {
  margin-left: 10px;
  width: 100%;
}
@media (min-width: 992px) {
  .middle-header .header-search .search-input {
    width: 70%;
  }
}
.middle-header .header-search .search-input input {
  height: 40px;
}
.middle-header .header-search .search-select {
  margin-left: 10px;
  width: 70%;
  display: inline-block;
}
@media (min-width: 992px) {
  .middle-header .header-search .search-select {
    display: block;
    width: 20%;
  }
}
.middle-header .header-search .search-select select {
  height: 40px;
  cursor: pointer;
}
.middle-header .header-search .search-button {
  width: 40px;
  height: 40px;
  border-radius: 5px;
  border: none;
  font-size: 0.9em;
  line-height: 2.2vw;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.middle-header .header-search .search-button:hover {
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  border: 1px solid #ce2b30 !important;
}
.middle-header .logo-contain {
  display: inline-block;
}
.bottom-header.affix {
  top: 4.4vh;
  z-index: 99999;
  left: 0;
  right: 0;
}
/* footer.less */
.site-footer {
  padding-top: 20px;
  padding-bottom: 20px;
  background-color: #f7f7f7;
  text-align: center;
}
.site-footer .border-top {
  border-top: 2px solid #111111;
}
@media (min-width: 992px) {
  .site-footer {
    padding-top: 2.4vw;
    padding-bottom: 2.4vw;
    text-align: right;
  }
}
.site-footer .footer-link-list {
  line-height: 1.3;
  list-style-type: none;
  margin-bottom: 15px;
}
.site-footer .footer-link-list .link-label {
  font-size: 0.7em;
  font-weight: 500;
}
.site-footer .footer-link-list .link {
  font-size: 0.8em;
  font-weight: 500;
  color: #ce2b30;
}
.site-footer .footer-menu ul {
  list-style-type: none;
  line-height: 1.3;
}
.site-footer .footer-menu ul li {
  vertical-align: top;
  display: block;
  width: 100%;
  margin-bottom: 5px;
}
@media (min-width: 992px) {
  .site-footer .footer-menu ul li {
    display: inline-block;
    width: 32%;
    margin-bottom: 0;
  }
}
.site-footer .footer-menu ul li a {
  font-size: 1.2em;
  padding: 0;
}
@media (min-width: 992px) {
  .site-footer .footer-menu ul li a {
    font-size: 1em;
  }
}
.site-footer .footer-menu ul li a:hover {
  color: #ce2b30;
  background-color: transparent;
}
.site-footer .footer-menu ul li .sub-menu li {
  width: 100%;
  display: block;
}
.site-footer .footer-menu ul li .sub-menu li a {
  font-size: 1em;
}
@media (min-width: 992px) {
  .site-footer .footer-menu ul li .sub-menu li a {
    font-size: 0.8em;
  }
}
.site-footer .footer-menu .current-menu-item > a {
  color: #ce2b30;
}
.copyrights {
  padding-top: 15px;
  padding-bottom: 15px;
  text-align: center;
}
.copyrights .rights {
  font-size: 0.6em !important;
  color: #111111;
  font-weight: 500;
}
/* footer bottom */
.sogo-logo {
  position: relative;
}
@media (min-width: 992px) {
  .sogo-logo {
    left: 20px;
  }
}
.sogo-logo img {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  height: auto;
  width: auto;
}
.sogo-logo span {
  font-size: 0.6em;
  padding-left: 5px;
  font-weight: 500;
  color: #8d8d8d;
}
@media (max-width: 768px) {
  .sogo-logo {
    text-align: center;
  }
}
.scrollup {
  background-color: #fff;
  display: none;
  position: fixed;
  right: 1vw;
  bottom: 2vw;
  z-index: 100;
  border: 1px solid;
  border-radius: 100%;
  width: 40px;
  height: 40px;
}
.scrollup:hover {
  background-color: #ce2b30;
  color: #fff;
}
@media (min-width: 992px) {
  .scrollup {
    width: 1.8vw;
    height: 1.8vw;
  }
}
.scrollup i {
  position: absolute;
  font-size: 0.9em;
  right: 14px;
  top: 9px;
}
@media (min-width: 992px) {
  .scrollup i {
    right: 0.55vw;
    top: 0.3vw;
  }
}
.floating-btn {
  position: fixed;
  bottom: 2.8vw;
  left: 0;
  z-index: 1050;
}
.float-hidden-wrapper {
  position: fixed;
  bottom: 2.8vw;
  height: 206px;
  left: 3.5vw;
  width: 0;
  z-index: 1050;
  border-radius: 5px;
  border: none;
  background-color: #ce2b30;
  text-align: center;
  overflow: hidden;
  padding: 10px 0;
}
.float-hidden-wrapper .wpcf7-validation-errors {
  color: #fff !important;
}
.float-hidden-wrapper .wpcf7-not-valid-tip {
  color: #fff !important;
}
.float-hidden-wrapper .wpcf7-mail-sent-ok {
  color: #fff !important;
}
.float-hidden-wrapper .arrow-wrapper {
  position: absolute;
  bottom: 0.5em;
  left: 12px;
  padding-left: 0;
  font-size: 0.8em;
  color: #8d8d8d;
  height: 20px;
  pointer-events: none;
  background: transparent;
}
.float-hidden-wrapper .color-white {
  font-weight: 300;
}
.float-hidden-wrapper .close:hover {
  color: #fff;
  background-color: #ce2b30;
}
.float-hidden-wrapper .close:focus {
  color: #fff;
  background-color: #ce2b30;
}
.float-hidden-wrapper select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.show {
  width: 93%;
  overflow: visible;
  transition: 0.5s;
}
.image-text {
  position: absolute;
}
.open .image-text {
  display: none;
}
.close {
  position: absolute;
  top: -30px;
  right: -30px;
}
.close .image-text {
  display: block;
}
.btn-white-form {
  background-color: #fff;
  color: #ce2b30;
  border-radius: 5px;
  font-size: 0.9em;
  padding: 6px 40px;
  font-weight: bold;
  border: 2px solid #ce2b30;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.btn-white-form:hover {
  background-color: #ce2b30;
  color: #fff;
  border: 2px solid #fff;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
button.close-floating {
  color: white;
  font-weight: 100;
  opacity: 1;
  font-size: 1.5em;
  background-color: #111111;
  border-radius: 100%;
  outline: none;
  padding: 0.1em 0.4em 0.3em;
}
@media (min-width: 992px) {
  button.close-floating {
    padding: 0.1em 0.4em 0.3em;
  }
}
@media (min-width: 992px) {
  .modal-dialog {
    width: 55vw;
  }
}
.modal {
  top: 5vh;
}
.footer-social-navigation {
  margin-top: 1em;
}
.footer-social-navigation .col-md-5 {
  padding: 0;
}
.footer-social-navigation .socials-icons-title {
  margin-bottom: 20px;
  border-bottom: 2px solid #ce2b30;
  padding-bottom: 5px;
  display: inline-block;
}
@media (min-width: 992px) {
  .footer-social-navigation .socials-icons-title {
    border-bottom: 0 solid #ce2b30;
  }
}
.footer-social-navigation a.facebook {
  background: transparent;
  padding: 0.1em 0.7em 0.02em 0.6em;
  border-radius: 5px;
  font-size: 1em;
  color: #ce2b30;
}
@media (min-width: 992px) {
  .footer-social-navigation a.facebook {
    background: #ce2b30;
    color: #fff;
  }
}
.footer-social-navigation a.google-plus {
  margin: 0 4px;
  background: transparent;
  padding: 0.9em 0.6em 0.3em;
  border-radius: 5px;
  font-size: 0.8em;
  color: #ce2b30;
}
@media (min-width: 992px) {
  .footer-social-navigation a.google-plus {
    background: #ce2b30;
    color: #fff;
    font-size: 0.6em;
  }
}
.footer-social-navigation a.Youtube {
  background: transparent;
  padding: 0.1em 0.5em 0.02em 0.3em;
  border-radius: 5px;
  font-size: 1em;
  color: #ce2b30;
}
@media (min-width: 992px) {
  .footer-social-navigation a.Youtube {
    background: #ce2b30;
    color: #fff;
  }
}
#site-footer iframe {
  display: none;
}
@media (min-width: 992px) {
  #site-footer iframe {
    display: block;
  }
}
#site-footer #menu-footer-navigation {
  margin-top: 12px;
}
#site-footer #menu-footer-navigation .sub-menu {
  display: none;
}
@media (min-width: 992px) {
  #site-footer #menu-footer-navigation .sub-menu {
    display: block;
  }
}
#site-footer #menu-footer-navigation > li:hover .sub-menu {
  display: block;
}
.navbar-toggle {
  z-index: 3;
  position: relative;
  display: block;
  border: none;
  background: none;
  margin-left: 15px;
  margin-right: 0;
}
.navbar-toggle:focus {
  outline: none;
}
.navbar-toggle .strip1 {
  width: 32px;
  position: absolute;
  height: 3px;
  background-color: #000;
  display: block;
  margin-bottom: 5px;
  top: 27px;
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
}
.navbar-toggle .strip2 {
  width: 32px;
  position: absolute;
  height: 3px;
  background-color: #000;
  display: block;
  margin-bottom: 5px;
  top: 35px;
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
}
.navbar-toggle .strip3 {
  width: 32px;
  position: absolute;
  height: 3px;
  background-color: #000;
  display: block;
  margin-bottom: 5px;
  top: 43px;
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
}
.navbar-header {
  float: right;
}
.offcanvas-stop-scrolling .navbar-toggle {
  position: absolute;
  z-index: 9999;
  right: 200px;
  left: auto;
  top: -10px;
}
.offcanvas-stop-scrolling .logo {
  visibility: hidden;
}
@media (min-width: 768px) {
  .offcanvas-stop-scrolling .logo {
    visibility: visible;
  }
}
.offcanvas-stop-scrolling {
  height: 100%;
  overflow: hidden;
}
.navbar-default .navbar-offcanvas {
  background-color: #fff;
}
.navbar-inverse .navbar-offcanvas {
  background-color: #222;
}
.navbar-offcanvas {
  position: fixed;
  width: 100%;
  max-width: 250px;
  left: -250px;
  top: 0;
  padding-top: 15px;
  padding-left: 15px;
  padding-right: 15px;
  z-index: 999;
  -webkit-overflow-scrolling: touch;
  background: #fff;
  overflow: auto;
}
.navbar-offcanvas.in {
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
}
.navbar-offcanvas.navbar-offcanvas-fade {
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
  opacity: 0;
}
.navbar-offcanvas.navbar-offcanvas-fade.in {
  opacity: 0;
  -webkit-transition: 0.5s ease;
  -moz-transition: 0.5s ease;
  -ms-transition: 0.5s ease;
  -o-transition: 0.5s ease;
  transition: 0.5s ease;
}
.navbar-offcanvas.offcanvas-transform.in {
  -webkit-transform: translateX(250px);
  transform: translateX(250px);
}
.navbar-offcanvas.offcanvas-position.in {
  left: 0;
}
.navbar-offcanvas.navbar-offcanvas-right {
  left: auto;
  right: -250px;
  padding-top: 5px;
}
.navbar-offcanvas.navbar-offcanvas-right.offcanvas-transform.in {
  -webkit-transform: translateX(-250px);
  transform: translateX(-250px);
}
.navbar-offcanvas.navbar-offcanvas-right.offcanvas-position.in {
  left: auto;
  right: 0;
}
.navbar-offcanvas .dropdown.active .caret {
  border-top: 0;
  border-bottom: 4px solid;
}
.navbar-offcanvas .dropdown-menu {
  position: relative;
  width: 100%;
  border: inherit;
  -webkit-transition: height 0.15s ease-in;
  transition: height 0.15s ease-in;
}
.navbar-offcanvas .dropdown-menu.shown {
  display: block;
  margin-bottom: 10px;
}
.offcanvas-toggle .icon-bar {
  background: #000;
}
.offcanvas-toggle.is-open .icon-bar:nth-child(1) {
  -webkit-transform: rotate(45deg) translate(5px, 4px);
  transform: rotate(45deg) translate(5px, 4px);
}
.offcanvas-toggle.is-open .icon-bar:nth-child(2) {
  opacity: 0;
}
.offcanvas-toggle.is-open .icon-bar:nth-child(3) {
  -webkit-transform: rotate(-45deg) translate(4px, -4px);
  transform: rotate(-45deg) translate(-4px, -4px);
}
.offcanvas-toggle.is-open .icon-bar:nth-child(4) {
  -webkit-transform: rotate(-45deg) translate(4px, -4px);
  transform: rotate(45deg) translate(-7px, 0px);
}
.navbar-offcanvas .primary-menu li a {
  text-align: right;
}
.main-menu .navbar-offcanvas ul.primary-menu {
  display: block;
}
.main-menu .navbar-offcanvas ul.primary-menu > li {
  display: block;
  font-size: 1em;
}
.main-menu .navbar-offcanvas ul.primary-menu > li.current-menu-item > a {
  background-color: #fff !important;
  color: #ce2b30 !important;
}
.offcanvas-stop-scrolling .offcanvas-toggle.is-open span {
  opacity: 0;
}
.navbar-toggle {
  z-index: 3;
  position: relative;
  right: 0;
  margin: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  display: block;
  border: none;
  background: none;
}
@media (min-width: 992px) {
  .navbar-toggle {
    top: auto;
  }
}
.navbar-toggle.is-open {
  width: 250px;
}
.navbar-toggle.is-open:before {
  content: "f00d";
  font-family: fontAwesome;
  position: absolute;
  right: 10px;
  z-index: 99999;
  top: -6px;
  font-size: 30px;
  color: #111111;
}
.navbar-toggle:focus {
  outline: none;
}
.navbar-toggle .strip1 {
  width: 32px;
  position: absolute;
  height: 3px;
  background-color: #000;
  display: block;
  margin-bottom: 5px;
  top: 27px;
}
.navbar-toggle .strip2 {
  width: 32px;
  position: absolute;
  height: 3px;
  background-color: #000;
  display: block;
  margin-bottom: 5px;
  top: 35px;
}
.navbar-toggle .strip3 {
  width: 32px;
  position: absolute;
  height: 3px;
  background-color: #000;
  display: block;
  margin-bottom: 5px;
}
.main-menu ul.primary-menu {
  display: inline-block;
}
.mobile .navbar-toggle.is-open:before {
  right: auto !important;
  left: 25px;
}
.mobile .navbar-toggle.is-open {
  width: 250px;
}
.offcanvas-stop-scrolling .offcanvas-toggle.is-open {
  left: -20px;
  opacity: 1;
  position: relative;
  z-index: 9999;
  top: -30px;
}
.offcanvas-stop-scrolling .navbar-toggle {
  right: 0;
}
.tlv-title {
  text-align: center;
  margin-bottom: 4rem;
}
.tlv-title h2 {
  display: inline-block;
  padding: 10px;
  background: #00b4f1;
  color: #fff;
}
fieldset {
  border: 0 solid #ce2b30 !important;
  margin: 0 2px 4em !important;
  padding: 0 !important;
  text-align: center;
}
@media (min-width: 992px) {
  fieldset {
    border: 2px solid #ce2b30 !important;
    padding: 0 3.5em 3.5em !important;
    border-radius: 4px;
  }
}
fieldset legend {
  position: relative;
  display: inline-block;
  width: auto;
  padding: 0;
  color: #ce2b30;
}
@media (min-width: 992px) {
  fieldset legend {
    padding: 0 3em;
  }
}
fieldset legend span {
  position: absolute;
  top: -4rem;
  width: 100%;
  right: 0;
  font-size: 3rem;
  font-weight: 700;
  color: #111111;
}
.tlv-banner {
  margin-bottom: 75px;
}
.woocommerce #tlv-form .shop_table {
  margin: 40px 0 24px -1px;
  border: none;
}
.woocommerce #tlv-form th {
  padding: 9px 0 9px 12px;
  border: none;
}
.woocommerce #tlv-form .shop_table_responsive tr {
  border: none;
}
.woocommerce #tlv-form .shop_table_responsive tr td {
  text-align: right !important;
  border: none;
}
.woocommerce select {
  padding: 0.27em 1em 0.27em 2.5em;
  font-size: 0.9em;
}
.woocommerce .arrow-wrapper {
  bottom: 0.05em;
}
@media (min-width: 992px) {
  .woocommerce .arrow-wrapper {
    bottom: 0.35em;
  }
}
.select-allocation .btn-small {
  margin: 0;
  font-size: 1em;
}
@media (min-width: 992px) {
  .select-allocation .btn-small {
    font-size: 0.8em;
  }
}
@media (max-width: 767px) {
  .select-allocation .btn-small {
    font-size: 0.9em;
    padding: 0.2em 1.2em 0.2em 1.2em;
  }
}
.select-allocation select {
  padding: 0.27em 1em 0.27em 2.5em;
  font-size: 1.3em;
  outline: none;
}
@media (min-width: 992px) {
  .select-allocation select {
    font-size: 0.9em;
  }
}
@media (max-width: 767px) {
  .select-allocation select {
    font-size: 0.9em;
    padding: 0.5em 0.8em 0.5em 2em;
  }
}
.select-allocation .arrow-wrapper {
  bottom: 0.4em;
}
@media (min-width: 992px) {
  .select-allocation .arrow-wrapper {
    bottom: 0.35em;
  }
}
.title-bottom-tlv {
  border-bottom: 2px solid #ce2b30;
  padding-bottom: 0.5em;
}
.woocommerce #tlv-form .shop_table_responsive tr:nth-child(2n) td {
  background-color: transparent !important;
}
.woocommerce-page #tlv-form .shop_table_responsive tr:nth-child(2n) td {
  background-color: transparent !important;
}
@media (min-width: 768px) {
  .woocommerce-page #tlv-form table.shop_table_responsive tr {
    display: table-row;
  }
  .woocommerce-page #tlv-form table.shop_table_responsive tr td {
    display: table-cell !important;
    padding: 8px 6px;
  }
}
.widget .woof_container_pa_size .woof_list li {
  margin: 0 !important;
  width: 23%;
  color: #949494;
  font-size: 0.9em;
}
.widget .woof_list_label li .woof_label_term:hover,
.widget .woof_list_label li .woof_label_term.checked {
  background-color: #fff;
  border-color: #ce2b30;
  color: #ce2b30;
}
.widget .woof_list_label .woof_label_term {
  background-color: transparent !important;
  border: 1px solid #949494;
  margin: 0;
  width: 100%;
  height: 32px;
  line-height: 32px;
  text-align: center;
  overflow: hidden;
  text-decoration: none;
  cursor: pointer;
  border-radius: 4px;
  padding: 0;
}
.widget h4 {
  margin-bottom: 10px;
  font-size: 1em;
  font-weight: 500;
}
.widget .woof_checkbox_label {
  display: block !important;
  margin-left: 0;
  font-size: 1em;
  font-weight: 400;
  padding-top: 4px;
}
.widget .woof_color_term {
  width: 32px;
  height: 32px;
  padding: 2px;
  background-clip: content-box;
  transition: border-color 0.35s ease;
  border-radius: 50%;
  border: 1px solid #949494;
}
.widget .radio,
.widget .checkbox {
  margin: 0 0 5px 6px;
}
.widget .woof_container {
  padding-bottom: 10px;
  margin-bottom: 18px;
  border-bottom: 1px solid;
  overflow: hidden;
}
.widget .woof_color_checked {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: transparent;
  display: none;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 999;
  left: 0;
  top: 0;
  color: #fff;
  font-size: 12px;
  text-align: center;
  border-radius: 50%;
  border: 1px solid red;
  padding-top: 8px;
}
.widget .woof_color_checked:before {
  content: "e90b";
}
.widget .checked > .woof_color_checked {
  display: block;
}
.widget .woof_front_toggle {
  float: left;
  padding-left: 5px;
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: transparent;
}
.widget .woof_front_toggle:after {
  content: "f107";
  color: #111111;
}
.widget .woof_front_toggle.woof_front_toggle_opened:after {
  content: "f106";
}
.woof_products_top_panel {
  display: none !important;
}
.woof_checkbox_term {
  -webkit-appearance: none;
  background-color: #fff;
  border: 1px solid #f7f7f7;
  padding: 9px;
  border-radius: 4px;
  display: inline-block;
  float: right;
  margin-left: 12px !important;
  position: relative;
}
.woof_checkbox_term:checked {
  background-color: #fff;
  border: 1px solid #ce2b30;
  color: #111111;
  outline: none;
}
.woof_checkbox_term:checked:after {
  content: 'f00c';
  font-size: 18px;
  position: absolute;
  top: 2px;
  left: 2px;
  color: #111111;
  font-weight: normal;
  font-family: FontAwesome;
}
.WOOF_Widget {
  padding-top: 3em;
}
@media (min-width: 992px) {
  .WOOF_Widget {
    padding-top: 0;
  }
}
/* order-tlv */
.order-tlv .allocation-help {
  position: absolute;
  left: 0;
  top: 50%;
  color: #333333;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  border: 1px solid #e5e5e5;
  background-color: #fff;
  width: 35px;
  height: 35px;
  border-radius: 50%;
  display: inline-block;
  font-size: 18px;
  cursor: pointer;
}
.order-tlv #myModal {
  top: 9vh;
}
.order-tlv #myModal .close {
  left: 1rem;
  top: 1rem;
  font-size: 4rem;
}
.order-tlv #myModal .modal-footer {
  text-align: left;
}
.order-tlv #myModal .modal-footer button {
  background-color: #ce2b30;
  border-color: #ce2b30;
}
.order-tlv .select-wrapper select {
  padding: 0 1.2em;
  font-size: 18px;
  line-height: 1.85;
  height: 100% !important;
}
.order-tlv .select-wrapper > span {
  padding: 0;
  position: absolute;
  font-size: 1.1rem;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.order-tlv .select-allocation input {
  background-color: #ce2b30;
  color: #fff;
  font-size: 18px;
  line-height: 1.85;
  padding: 0;
}
.order-tlv .select-allocation__flex {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
  max-width: 185px;
}
@media (min-width: 768px) {
  .order-tlv .select-allocation__flex {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    max-width: inherit;
  }
}
.order-tlv .select-allocation__flex > div {
  margin-bottom: 21px;
}
@media (min-width: 768px) {
  .order-tlv .select-allocation__flex > div {
    margin-bottom: 0;
    margin-left: 30px;
  }
}
@media (min-width: 992px) {
  .order-tlv .select-allocation__flex > div {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
  }
}
.order-tlv .select-allocation__flex > input {
  font-weight: 400;
}
@media (min-width: 992px) {
  .order-tlv .select-allocation__flex > input {
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
  }
}
.order-tlv fieldset {
  margin: 0 !important;
}
@media (min-width: 992px) {
  .order-tlv fieldset {
    margin: 0 0 3rem !important;
    padding: 0 !important;
  }
}
.order-tlv fieldset > legend {
  font-size: 1.6rem;
  margin-bottom: 20px;
  color: inherit;
}
.order-tlv fieldset > legend .legend-title {
  display: block;
  margin-bottom: 1rem;
  font-size: 2rem;
  position: relative;
  top: inherit;
}
.order-tlv fieldset > section .attributes {
  display: none;
}
.order-tlv fieldset > section .shop_table {
  margin: 0 !important;
}
@media (min-width: 992px) {
  .order-tlv fieldset > section .shop_table .tbody {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}
.order-tlv fieldset > section .shop_table .tbody .tlv-order-tr-wrapper {
  margin: 0 0 3rem !important;
}
@media (min-width: 992px) {
  .order-tlv fieldset > section .shop_table .tbody .tlv-order-tr-wrapper {
    -ms-flex-preferred-size: 33.3%;
    flex-basis: 33.3%;
  }
}
.order-tlv fieldset > section .shop_table .action-button {
  display: inline-block;
  padding: 0 15px;
  line-height: 1.5;
  margin-top: 0 !important;
  border: 1px solid #e5e5e5;
  background-color: white;
  border-radius: 5px;
  color: #111111;
  -webkit-transition: all 0.4s;
  -moz-transition: all 0.4s;
  -ms-transition: all 0.4s;
  -o-transition: all 0.4s;
  transition: all 0.4s;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  font-size: 1.1em;
}
.order-tlv fieldset > section .shop_table .remove-tr {
  border: 1px solid #e5e5e5;
  background-color: white;
  color: #111111;
}
.order-tlv fieldset > section .shop_table .remove-tr span:last-child {
  vertical-align: middle;
}
.order-tlv fieldset .tlv-order-tr {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  margin-bottom: 1rem;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
@media (min-width: 768px) {
  .order-tlv fieldset .tlv-order-tr {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
@media (min-width: 992px) {
  .order-tlv fieldset .tlv-order-tr {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
.order-tlv fieldset .tlv-order-tr > div:first-child {
  -ms-flex-preferred-size: 42%;
  flex-basis: 42%;
  margin-left: 1rem;
}
.order-tlv fieldset .tlv-order-tr > div:first-child .product-thumbnail {
  margin-bottom: 9px;
}
.order-tlv fieldset .tlv-order-tr > div:last-child {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-preferred-size: 42%;
  flex-basis: 42%;
}
@media (min-width: 768px) {
  .order-tlv fieldset .tlv-order-tr > div:last-child {
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
  }
}
@media (min-width: 992px) {
}
.order-tlv fieldset .tlv-order-tr > div:last-child > div:not(:last-child) {
  margin-bottom: 10px;
}
.order-tlv fieldset .tlv-order-tr label {
  font-size: 1.3rem;
  text-align: right;
  display: block;
  margin-bottom: 2px;
}
.order-tlv fieldset .tlv-order-tr .select-wrapper {
  width: 100%;
}
.order-tlv fieldset .tlv-order-tr .select-wrapper select {
  width: 100%;
  padding: 0 15px;
  font-size: 0.8em;
  line-height: 2;
}
.order-tlv fieldset .tlv-order-tr .product-sku {
  font-size: 1.4rem;
}
.order-tlv fieldset .tlv-order-tr .product-name {
  font-size: 1.5rem;
}
.order-tlv .bottom-tlv-wrapper {
  display: block;
  max-width: 225px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .order-tlv .bottom-tlv-wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    max-width: inherit;
  }
}
.order-tlv .bottom-tlv-wrapper .pickup-warpper {
  width: 100%;
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  .order-tlv .bottom-tlv-wrapper .pickup-warpper {
    margin-left: 30px;
    margin-bottom: 0;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
  }
}
.order-tlv .bottom-tlv-wrapper button {
  line-height: 1.85;
  font-size: 18px;
}
@media (min-width: 768px) {
  .order-tlv .bottom-tlv-wrapper button {
    margin-bottom: 0;
    -ms-flex-preferred-size: 25%;
    flex-basis: 25%;
  }
}
.order-tlv .tlv-banner {
  margin-bottom: 3rem;
}
.order-tlv .title-bottom-tlv {
  text-align: center;
  padding-bottom: 0.1em;
}
@media (min-width: 992px) {
  .order-tlv .title-bottom-tlv {
    text-align: right;
  }
}
.order-tlv .feedback {
  background-color: red;
}
.float-hidden-wrapper.show{
  height: auto;
}
#wpcf7-f2845-o3 .wpcf7-response-output {
    color: #fff;
}
/*******06-11-2020 start*******/
input#quote-quantity {
    width: 100%;
    background-color: #fff;
    width: 100%;
    height: 40px;
    font-size: 1em;
    padding: 0 10px;
    outline: none;
    border-radius: 5px;
    border: 1px solid #e5e5e5;
    font-weight: 300;
}
#wpcf7-f2845-o3 input#fast-quote-submit {
    width: 100% !important;
    height: 40px;
    padding: 0;
    line-height: 2.8;
    margin-top: 0px;
    border: 1px solid #e5e5e5;
}
.contact_menu{
   display:none !important;
}
#wpcf7-f2819-o1 input#quote-email,#wpcf7-f2819-o1 input#quote-phone{
    direction: rtl;
}
#wpcf7-f2826-o2 input#email-customer-club {
    direction: rtl;
}
#wpcf7-f4-p132-o1 input#branch-email {
    direction: rtl;
}
@media(max-width: 576px){
#wpcf7-f2819-o1 input#quote-phone,#wpcf7-f2819-o1 input#quote-email {
    direction: rtl;
}
.contact_menu{
   display:block !important;
}
.contact_menu a {
    color: #ce2b30 !important;
}
}
ul.footer-link-list li a {
    color: #ce2b30;
}
@media(max-width:576px){
li#menu-item-646780 {
    display: none;
}
}
/*******06-11-2020 end********/
/*****19-11-2020 start*********/
.float_form_success form.wpcf7-form.sent .row {
    display: none;
}
.float_form_success p.color-white.margin-bottom-lg {
    display: none;
}
.float_form_success .wpcf7-response-output {
    font-size: 25px;
    font-weight: 600;
    margin-bottom: 10px !important;
}
.contact-form-bid.business_form_success .col-md-3,
.contact-form-bid.business_form_success .col-md-2,
.contact-form-bid.business_form_success .col-md-12 {
    display: none;
}
.contact-form-bid.business_form_success .wpcf7-response-output,.join_form_success .wpcf7-response-output{
    font-size: 25px;
    font-weight: 600;
}
.join_form_success .col-md-6,.join_form_success .col-md-4,.join_form_success .col-md-2,
.join_form_success .col-md-12{
    display: none;
}
/******19-11-2020 end**********/
/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInJlc2V0Lmxlc3MiLCJtaXhpbi5sZXNzIiwiaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUhlZWJvOjEwMCwzMDAsNDAwLDUwMCw3MDAsODAwLDkwMCZzdWJzZXQ9aGVicmV3IiwiZm9udHMubGVzcyIsIndvcmRwcmVzcy5sZXNzIiwiY2xhc3Nlcy5sZXNzIiwiYmFzZS5sZXNzIiwidmFyaWFibGVzLmxlc3MiLCJhbmltYXRlLmxlc3MiLCJlbnRyeS1jb250ZW50Lmxlc3MiLCJzZWN0aW9uLmxlc3MiLCJmaXgtZmlyZWZveC5sZXNzIiwiZml4LWZvci1pZS5sZXNzIiwiY29udGFjdC1mb3JtLmxlc3MiLCJwcmltYXJ5LW5hdi5sZXNzIiwiY3VzdG9tLWNoZWNrYm94Lmxlc3MiLCJjYXJ0Lmxlc3MiLCJzaG9wLmxlc3MiLCJzaW5nbGUtcHJvZHVjdC5sZXNzIiwiY2hlY2tvdXQubGVzcyIsIm15LWFjY291bnQubGVzcyIsImNvbnRhY3QtcGFnZS5sZXNzIiwiYWJvdXQubGVzcyIsInRoYW5rLXlvdS5sZXNzIiwiZnJvbnRwYWdlLmxlc3MiLCI0MDQubGVzcyIsImNvbnRlbnQtZXhjZXJwdC5sZXNzIiwic2luZ2xlLmxlc3MiLCJxYW5kYS5sZXNzIiwic3RhbmRhcmQubGVzcyIsImFydGljbGVzLWNhdGVnb3J5Lmxlc3MiLCJzZWFyY2gubGVzcyIsInRhYmxlLmxlc3MiLCJwYWdlLWxhbmRpbmcubGVzcyIsInBhZ2UtYnJhbmNoZXMubGVzcyIsInZpZGVvcy5sZXNzIiwicGFnZS1wb3B1cC5sZXNzIiwiaGVhZGVyLmxlc3MiLCJmb290ZXIubGVzcyIsImJvb3RzdHJhcC1vZmZjYW52YXMubGVzcyIsInBlcnNvbmFsLXRlbC1hdml2Lmxlc3MiLCJwcm9kdWN0LWZpbHRlci5sZXNzIiwib3JkZXItdGx2Lmxlc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVFBO0FBQU07QUFBTTtBQUFLO0FBQU07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QUNBLGNBQUE7O0FBQ0EsUUFBMEI7RUFBMUIsVUFKRjtJQUtJLG9CQUFBO0lBQ0EsaUJBQUE7SUFDQSxvQkFBQTtJQUNBLHFCQUFBO0lBQ0EsYUFBQTtJQUNBLGtCQUFBOzs7QUFsUk4sVUF3UUUsb0JBYUU7RUFDRSxXQUFBO0VBQ0EsbUJBQUE7O0FBQ0EsUUFBMEI7RUFBMUIsVUFoQkosb0JBYUU7SUFJSSxpQkFBQTtJQUNBLGdCQUFBO0lBQ0EsNEJBQUE7SUFDQSxlQUFBOzs7QUE1UlIsVUF3UUUsb0JBd0JFO0VBQ0UsaUJBQUE7RUFDQSxlQUFBOztBQUNBLFFBQTBCO0VBQTFCLFVBM0JKLG9CQXdCRTtJQUlJLGdCQUFBO0lBQ0EsNEJBQUE7SUFDQSxlQUFBOzs7QUF0U1IsVUE0U0U7RUFDRSxtQkFBQTs7QUE3U0osVUFnVEU7RUFDRSxrQkFBQTtFQUNBLHFCQUFBOztBQUNBLFFBQTBCO0VBQTFCLFVBSEY7SUFJSSxpQkFBQTs7O0FBcFROLFVBeVRFO0VBQ0UscUJBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKiByZXNldC5sZXNzICovXG5cbi8qXG5odG1sNWRvY3Rvci5jb20gUmVzZXQgU3R5bGVzaGVldFxudjEuNFxuMjAwOS0wNy0yN1xuQXV0aG9yOiBSaWNoYXJkIENsYXJrIC0gaHR0cDovL3JpY2hjbGFya2Rlc2lnbi5jb21cbiovXG5odG1sLCBib2R5LCBkaXYsIHNwYW4sIG9iamVjdCxcbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGJsb2NrcXVvdGUsXG5hYmJyLCBhZGRyZXNzLCBjaXRlLCBjb2RlLFxuZGVsLCBlbSwgaW1nLCBpbnMsXG5zbWFsbCwgc3Ryb25nLCBzdWIsIHN1cCxcbmRsLCBkdCwgZGQsIG9sLCB1bCwgbGksXG5maWVsZHNldCwgZm9ybSwgbGFiZWwsIGxlZ2VuZCxcbnRhYmxlLCBjYXB0aW9uLCB0Ym9keSwgdGZvb3QsIHRoZWFkLCB0ciwgdGgsIHRkLFxuYXJ0aWNsZSwgYXNpZGUsIGRpYWxvZywgZmlndXJlLCBmb290ZXIsIGhlYWRlcixcbmhncm91cCwgbWVudSwgbmF2LCBzZWN0aW9uLFxudGltZSwgbWFyaywgYXVkaW8sIHZpZGVvIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICBib3JkZXI6IDA7XG4gIG91dGxpbmU6IDA7XG4gIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAuYm94LXNpemluZygpO1xufVxuXG5ib2R5IHtcbiAgbGluZS1oZWlnaHQ6IDE7XG59XG5cbmE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmFydGljbGUsIGFzaWRlLCBkaWFsb2csIGZpZ3VyZSwgZm9vdGVyLCBoZWFkZXIsXG5oZ3JvdXAsIG5hdiwgc2VjdGlvbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5ibG9ja3F1b3RlIHtcbiAgcXVvdGVzOiBub25lO1xufVxuXG5ibG9ja3F1b3RlOmJlZm9yZSxcbmJsb2NrcXVvdGU6YWZ0ZXIge1xuICBjb250ZW50OiAnJztcbiAgY29udGVudDogbm9uZTtcbn1cblxuYSB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbiAgYm9yZGVyOiAwO1xuICBmb250LXNpemU6IDEwMCU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG59XG5cbmRlbCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbGluZS10aHJvdWdoO1xufVxuXG5hYmJyW3RpdGxlXSxcbmRmblt0aXRsZV0ge1xuICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICMwMDA7XG4gIGN1cnNvcjogaGVscDtcbn1cblxudGFibGUge1xuICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICBib3JkZXItc3BhY2luZzogMDtcbn1cblxuaHIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2NjY2M7XG4gIG1hcmdpbjogMWVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbmlucHV0LFxuc2VsZWN0IHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWF4LXdpZHRoOiAxMDAlO1xufVxuIiwiLyogbWl4aW4ubGVzcyAqL1xuXG4vLyBjb2xvcnMgYW5kIHNoYXBlc1xuXG4uYm94LXNoYWRvdyhAeDogMCkge1xuICAtd2Via2l0LWJveC1zaGFkb3c6IEBhcmd1bWVudHM7XG4gIC1tb3otYm94LXNoYWRvdzogQGFyZ3VtZW50cztcbiAgYm94LXNoYWRvdzogQGFyZ3VtZW50cztcbn1cblxuLmNhbGMoQHByb3AsIEB2YWwpIHtcbiAgQHtwcm9wfTogY2FsYyh+J0B7dmFsfScpO1xuICBAe3Byb3B9OiAtbW96LWNhbGMofidAe3ZhbH0nKTtcbiAgQHtwcm9wfTogLXdlYmtpdC1jYWxjKH4nQHt2YWx9Jyk7XG4gIEB7cHJvcH06IC1vLWNhbGMofidAe3ZhbH0nKTtcbn1cbi8vIGNhbGMgdXNhZ2UgZXhhbXBsZVxuLy8ucmFtaXtcbi8vICAuY2FsYyh3aWR0aCwgJzEwMCUgLSAxMDBweCcpO1xuLy99XG4uYm9yZGVyLXJhZGl1cyhAcmFkaXVzOiA1cHgpIHtcbiAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiBAcmFkaXVzO1xuICAtbW96LWJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG4gIGJvcmRlci1yYWRpdXM6IEByYWRpdXM7XG59XG4uYm94LXNpemluZyAoQHR5cGU6IGJvcmRlci1ib3gpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBAdHlwZTtcbiAgLW1vei1ib3gtc2l6aW5nOiAgICBAdHlwZTtcbiAgYm94LXNpemluZzogICAgICAgICBAdHlwZTtcbn1cblxuLm9wYWNpdHkgKEBvcGFjaXR5OiAwLjUpIHtcbiAgLXdlYmtpdC1vcGFjaXR5OiBcdEBvcGFjaXR5O1xuICAtbW96LW9wYWNpdHk6IFx0XHRAb3BhY2l0eTtcbiAgb3BhY2l0eTogXHRcdEBvcGFjaXR5O1xufVxuXG4uZ3JhZGllbnQgKEBzdGFydENvbG9yOiAjZWVlLCBAZW5kQ29sb3I6IHdoaXRlKSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBzdGFydENvbG9yO1xuICBiYWNrZ3JvdW5kOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKEBzdGFydENvbG9yKSwgdG8oQGVuZENvbG9yKSk7XG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpO1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTtcbiAgYmFja2dyb3VuZDogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTtcbiAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KGxlZnQsIEBzdGFydENvbG9yLCBAZW5kQ29sb3IpO1xufVxuLmxpbmVhci1ncmFkaWVudChAZmlyc3QtY29sb3IsIEBzZWNvbmQtY29sb3IsIEBlbmQtY29sb3IgKXtcbiAgYmFja2dyb3VuZDogQGZpcnN0LWNvbG9yOyAvKiBGb3IgYnJvd3NlcnMgdGhhdCBkbyBub3Qgc3VwcG9ydCBncmFkaWVudHMgKi9cbiAgYmFja2dyb3VuZDogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoQGZpcnN0LWNvbG9yLCBAc2Vjb25kLWNvbG9yLCBAZW5kLWNvbG9yKTsgLyogRm9yIFNhZmFyaSA1LjEgdG8gNi4wICovXG4gIGJhY2tncm91bmQ6IC1vLWxpbmVhci1ncmFkaWVudChAZmlyc3QtY29sb3IsIEBzZWNvbmQtY29sb3IsIEBlbmQtY29sb3IpOyAvKiBGb3IgT3BlcmEgMTEuMSB0byAxMi4wICovXG4gIGJhY2tncm91bmQ6IC1tb3otbGluZWFyLWdyYWRpZW50KEBmaXJzdC1jb2xvciwgQHNlY29uZC1jb2xvciwgQGVuZC1jb2xvcik7IC8qIEZvciBGaXJlZm94IDMuNiB0byAxNSAqL1xuICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoQGZpcnN0LWNvbG9yLCBAc2Vjb25kLWNvbG9yLCBAZW5kLWNvbG9yKTsgLyogU3RhbmRhcmQgc3ludGF4ICovXG59XG4udmVydGljYWwtZ3JhZGllbnQoQGZpcnN0LWNvbG9yLCBAc2Vjb25kLWNvbG9yLCBAZW5kLWNvbG9yICl7XG4gIGJhY2tncm91bmQ6IEBmaXJzdC1jb2xvcjsgLyogRm9yIGJyb3dzZXJzIHRoYXQgZG8gbm90IHN1cHBvcnQgZ3JhZGllbnRzICovXG4gIGJhY2tncm91bmQ6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KEBmaXJzdC1jb2xvciwgQHNlY29uZC1jb2xvciwgQGVuZC1jb2xvcik7IC8qIEZvciBTYWZhcmkgNS4xIHRvIDYuMCAqL1xuICBiYWNrZ3JvdW5kOiAtby1saW5lYXItZ3JhZGllbnQoQGZpcnN0LWNvbG9yLCBAc2Vjb25kLWNvbG9yLCBAZW5kLWNvbG9yKTsgLyogRm9yIE9wZXJhIDExLjEgdG8gMTIuMCAqL1xuICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudChAZmlyc3QtY29sb3IsIEBzZWNvbmQtY29sb3IsIEBlbmQtY29sb3IpOyAvKiBGb3IgRmlyZWZveCAzLjYgdG8gMTUgKi9cbiAgYmFja2dyb3VuZDogbGluZWFyLWdyYWRpZW50KEBmaXJzdC1jb2xvciwgQHNlY29uZC1jb2xvciwgQGVuZC1jb2xvcik7IC8qIFN0YW5kYXJkIHN5bnRheCAqL1xufVxuLmJvcmRlcl9ncmFkaWVudCAoQHN0YXJ0Q29sb3I6ICNlZWUsIEBlbmRDb2xvcjogd2hpdGUpIHtcbiAgYm9yZGVyLWltYWdlOiBAc3RhcnRDb2xvcjtcbiAgYm9yZGVyLWltYWdlOiAtd2Via2l0LWdyYWRpZW50KGxpbmVhciwgbGVmdCB0b3AsIGxlZnQgYm90dG9tLCBmcm9tKEBzdGFydENvbG9yKSwgdG8oQGVuZENvbG9yKSk7XG4gIGJvcmRlci1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7XG4gIGJvcmRlci1pbWFnZTogLW1vei1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7XG4gIGJvcmRlci1pbWFnZTogLW1zLWxpbmVhci1ncmFkaWVudChsZWZ0LCBAc3RhcnRDb2xvciwgQGVuZENvbG9yKTtcbiAgYm9yZGVyLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgQHN0YXJ0Q29sb3IsIEBlbmRDb2xvcik7XG59XG4uYmFja2dyb3VuZChAc2l6ZTpjb3Zlcil7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBAc2l6ZTtcbiAgLW1vei1iYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xuICBiYWNrZ3JvdW5kLXNpemU6IEBzaXplO1xufVxuXG4ucmVzcG9uc2l2ZS1pbWcoKSB7XG4gIEB3aWR0aDogIDEwMCU7XG4gIEBoZWlnaHQ6IGF1dG87XG59XG5cblxuLmJ1dHRvbi1ob3ZlciAoQGJnOiAjZjVmNWY1LCBAY29sb3I6ICM5MDAsIEBib3JkZXI6IDFweCBzb2xpZCB3aGl0ZSl7XG4gIGNvbG9yOiBsaWdodGVuKEBjb2xvciwgMTAlKTtcbiAgYmFja2dyb3VuZDogbGlnaHRlbihAYmcsIDEwJSk7XG59XG5cbi8vIGZsZXggb3B0aW9uc1xuLmRpc3BsYXktZmxleCgpIHtcbiAgZGlzcGxheTogLXdlYmtpdC1ib3g7ICAgICAgLyogT0xEIC0gaU9TIDYtLCBTYWZhcmkgMy4xLTYgKi9cbiAgZGlzcGxheTogLW1vei1ib3g7ICAgICAgICAgLyogT0xEIC0gRmlyZWZveCAxOS0gKGJ1Z2d5IGJ1dCBtb3N0bHkgd29ya3MpICovXG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94OyAgICAgIC8qIFRXRUVORVIgLSBJRSAxMCAqL1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7ICAgICAvKiBORVcgLSBDaHJvbWUgKi9cbiAgZGlzcGxheTogZmxleDsgICAgICAgICAgICAgLyogTkVXLCBTcGVjIC0gT3BlcmEgMTIuMSwgRmlyZWZveCAyMCsgKi9cbn1cbi5hbGlnbi1pdGVtcyhAYWxpZ246IGNlbnRlcikge1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBAYWxpZ247XG4gIC1tb3otYWxpZ24taXRlbXM6IEBhbGlnbjtcbiAgLW1zLWFsaWduLWl0ZW1zOiBAYWxpZ247XG4gIGFsaWduLWl0ZW1zOiBAYWxpZ247XG59XG4vLyBVc2FnZVxuLy8gZGl2e1xuLy8gZGlzcGxheS1mbGV4KCk7XG5cblxuLmZsZXgtYm94KEBmbGV4OiAxKSB7XG4gIC13ZWJraXQtYm94LWZsZXg6IEBmbGV4OyAvKiBPTEQgLSBpT1MgNi0sIFNhZmFyaSAzLjEtNiAqL1xuICAtbW96LWJveC1mbGV4OiBAZmxleDsgLyogT0xEIC0gRmlyZWZveCAxOS0gKi9cbiAgd2lkdGg6IDIwJTsgLyogRm9yIG9sZCBzeW50YXgsIG90aGVyd2lzZSBjb2xsYXBzZXMuICovXG4gIC13ZWJraXQtZmxleDogQGZsZXg7IC8qIENocm9tZSAqL1xuICAtbXMtZmxleDogQGZsZXg7IC8qIElFIDEwICovXG4gIGZsZXg6IEBmbGV4O1xufVxuXG4uZmxleC1kaXNwbGF5KEBkaXNwbGF5OiBmbGV4KSB7XG4gIGRpc3BsYXk6IH5cIi13ZWJraXQtQHtkaXNwbGF5fVwiO1xuICBkaXNwbGF5OiB+XCItbW96LUB7ZGlzcGxheX1cIjtcbiAgZGlzcGxheTogflwiLW1zLUB7ZGlzcGxheX1ib3hcIjsgLy8gSUUxMCB1c2VzIC1tcy1mbGV4Ym94XG4gIGRpc3BsYXk6IH5cIi1tcy1Ae2Rpc3BsYXl9XCI7IC8vIElFMTFcbiAgZGlzcGxheTogQGRpc3BsYXk7XG59XG4uZmxleChAY29sdW1uczogaW5pdGlhbCkge1xuICAtd2Via2l0LWZsZXg6IEBjb2x1bW5zO1xuICAtbW96LWZsZXg6IEBjb2x1bW5zO1xuICAtbXMtZmxleDogQGNvbHVtbnM7XG4gIGZsZXg6IEBjb2x1bW5zO1xufVxuLmZsZXgtZGlyZWN0aW9uKEBkaXJlY3Rpb246IHJvdykge1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBAZGlyZWN0aW9uO1xuICAtbW96LWZsZXgtZGlyZWN0aW9uOiBAZGlyZWN0aW9uO1xuICAtbXMtZmxleC1kaXJlY3Rpb246IEBkaXJlY3Rpb247XG4gIGZsZXgtZGlyZWN0aW9uOiBAZGlyZWN0aW9uO1xufVxuLmZsZXgtd3JhcChAd3JhcDogbm93cmFwKSB7XG4gIC13ZWJraXQtZmxleC13cmFwOiBAd3JhcDtcbiAgLW1vei1mbGV4LXdyYXA6IEB3cmFwO1xuICAtbXMtZmxleC13cmFwOiBAd3JhcDtcbiAgZmxleC13cmFwOiBAd3JhcDtcbn1cblxuLy8gYW5pbWF0aW9uc1xuXG4udHJhbnNpdGlvbiAoQHRyYW5zaXRpb246IGFsbCAwLjRzKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogQHRyYW5zaXRpb247XG4gIC1tb3otdHJhbnNpdGlvbjogICAgQHRyYW5zaXRpb247XG4gIC1tcy10cmFuc2l0aW9uOiAgICAgQHRyYW5zaXRpb247XG4gIC1vLXRyYW5zaXRpb246ICAgICAgQHRyYW5zaXRpb247XG4gIHRyYW5zaXRpb246IEB0cmFuc2l0aW9uO1xufVxuLnRyYW5zZm9ybShAc3RyaW5nKXtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IEBzdHJpbmc7XG4gIC1tb3otdHJhbnNmb3JtOiBcdCBAc3RyaW5nO1xuICAtbXMtdHJhbnNmb3JtOiBcdFx0IEBzdHJpbmc7XG4gIC1vLXRyYW5zZm9ybTogXHRcdCBAc3RyaW5nO1xuICB0cmFuc2Zvcm06IEBzdHJpbmc7XG59XG4uc2NhbGUgKEBmYWN0b3IpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKEBmYWN0b3IpO1xuICAtbW96LXRyYW5zZm9ybTogXHQgc2NhbGUoQGZhY3Rvcik7XG4gIC1tcy10cmFuc2Zvcm06IFx0XHQgc2NhbGUoQGZhY3Rvcik7XG4gIC1vLXRyYW5zZm9ybTogXHRcdCBzY2FsZShAZmFjdG9yKTtcbiAgdHJhbnNmb3JtOiBzY2FsZShAZmFjdG9yKTtcbn1cbi5yb3RhdGUgKEBkZWcpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZShAZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06IFx0IHJvdGF0ZShAZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogXHRcdCByb3RhdGUoQGRlZyk7XG4gIC1vLXRyYW5zZm9ybTogXHRcdCByb3RhdGUoQGRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKEBkZWcpO1xufVxuLnRyYW5zbGF0ZTNkIChAeCwgQHk6IDAsIEB6OiAwKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiAgICAgICB0cmFuc2xhdGUzZChAeCwgQHksIEB6KTtcbiAgLW1vei10cmFuc2Zvcm06IFx0IHRyYW5zbGF0ZTNkKEB4LCBAeSwgQHopO1xuICAtbXMtdHJhbnNmb3JtOiBcdFx0IHRyYW5zbGF0ZTNkKEB4LCBAeSwgQHopO1xuICAtby10cmFuc2Zvcm06IFx0XHQgdHJhbnNsYXRlM2QoQHgsIEB5LCBAeik7XG4gIHRyYW5zZm9ybTogIHRyYW5zbGF0ZTNkKEB4LCBAeSwgQHopOztcbn1cbi50cmFuc2xhdGVZIChAeCkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogICAgICAgdHJhbnNsYXRlWShAeCk7XG4gIC1tb3otdHJhbnNmb3JtOiBcdCB0cmFuc2xhdGVZKEB4KTtcbiAgLW1zLXRyYW5zZm9ybTogXHRcdCB0cmFuc2xhdGVZKEB4KTtcbiAgLW8tdHJhbnNmb3JtOiBcdFx0IHRyYW5zbGF0ZVkoQHgpO1xuICB0cmFuc2Zvcm06IFx0XHQgdHJhbnNsYXRlWShAeCk7XG59XG4udHJhbnNsYXRlWCAoQHgpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06ICAgICAgIHRyYW5zbGF0ZVgoQHgpO1xuICAtbW96LXRyYW5zZm9ybTogXHQgdHJhbnNsYXRlWChAeCk7XG4gIC1tcy10cmFuc2Zvcm06IFx0XHQgdHJhbnNsYXRlWChAeCk7XG4gIC1vLXRyYW5zZm9ybTogXHRcdCB0cmFuc2xhdGVYKEB4KTtcbiAgdHJhbnNmb3JtOiBcdFx0IHRyYW5zbGF0ZVgoQHgpO1xufVxuLnNrZXdZIChAZGVnKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiAgICAgICBza2V3WShAZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06IFx0IHNrZXdZKEBkZWcpO1xuICAtbXMtdHJhbnNmb3JtOiBcdFx0IHNrZXdZKEBkZWcpO1xuICAtby10cmFuc2Zvcm06IFx0XHQgc2tld1koQGRlZyk7XG4gIHRyYW5zZm9ybTogXHRcdCBza2V3WShAZGVnKTtcbn1cbi5za2V3WCAoQGRlZykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogICAgICAgc2tld1goQGRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiBcdCBza2V3WChAZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogXHRcdCBza2V3WChAZGVnKTtcbiAgLW8tdHJhbnNmb3JtOiBcdFx0IHNrZXdYKEBkZWcpO1xuICB0cmFuc2Zvcm06IFx0XHQgc2tld1goQGRlZyk7XG59XG4udmVydGljYWwtYWxpZ24oQHBvc2l0aW9uOiByZWxhdGl2ZSkge1xuICBwb3NpdGlvbjogQHBvc2l0aW9uO1xuICB0b3A6IDUwJTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgLW1vei10cmFuc2Zvcm06dHJhbnNsYXRlWSgtNTAlKTtcbiAgLW8tdHJhbnNmb3JtOnRyYW5zbGF0ZVkoLTUwJSk7XG59XG5cbi8qIGVuZCBtaXhpbi5sZXNzICovIiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSGVlYm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHNyYzogbG9jYWwoJ0hlZWJvIFRoaW4nKSwgbG9jYWwoJ0hlZWJvLVRoaW4nKSwgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9oZWViby92NC9OR1MwdjVfTkMwazlQOW1WZmJGcnNBLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSGVlYm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIHNyYzogbG9jYWwoJ0hlZWJvIExpZ2h0JyksIGxvY2FsKCdIZWViby1MaWdodCcpLCB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2hlZWJvL3Y0L05HUzN2NV9OQzBrOVA5bGRiNlJPa0tzLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSGVlYm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIHNyYzogbG9jYWwoJ0hlZWJvJyksIGxvY2FsKCdIZWViby1SZWd1bGFyJyksIHVybChodHRwczovL2ZvbnRzLmdzdGF0aWMuY29tL3MvaGVlYm8vdjQvTkdTNnY1X05DMGs5UDlIMFRiUS50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0hlZWJvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogNTAwO1xuICBzcmM6IGxvY2FsKCdIZWVibyBNZWRpdW0nKSwgbG9jYWwoJ0hlZWJvLU1lZGl1bScpLCB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2hlZWJvL3Y0L05HUzN2NV9OQzBrOVA5a0ZicVJPa0tzLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSGVlYm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHNyYzogbG9jYWwoJ0hlZWJvIEJvbGQnKSwgbG9jYWwoJ0hlZWJvLUJvbGQnKSwgdXJsKGh0dHBzOi8vZm9udHMuZ3N0YXRpYy5jb20vcy9oZWViby92NC9OR1MzdjVfTkMwazlQOWxOYUtST2tLcy50dGYpIGZvcm1hdCgndHJ1ZXR5cGUnKTtcbn1cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0hlZWJvJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogODAwO1xuICBzcmM6IGxvY2FsKCdIZWVibyBFeHRyYUJvbGQnKSwgbG9jYWwoJ0hlZWJvLUV4dHJhQm9sZCcpLCB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2hlZWJvL3Y0L05HUzN2NV9OQzBrOVA5bFJhNlJPa0tzLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnSGVlYm8nO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA5MDA7XG4gIHNyYzogbG9jYWwoJ0hlZWJvIEJsYWNrJyksIGxvY2FsKCdIZWViby1CbGFjaycpLCB1cmwoaHR0cHM6Ly9mb250cy5nc3RhdGljLmNvbS9zL2hlZWJvL3Y0L05HUzN2NV9OQzBrOVA5bDFhcVJPa0tzLnR0ZikgZm9ybWF0KCd0cnVldHlwZScpO1xufVxuIiwiLyogZmlsZSBuYW1lIGZvbnRzLmxlc3MgKi9cblxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1IZWVibzoxMDAsMzAwLDQwMCw1MDAsNzAwLDgwMCw5MDAmc3Vic2V0PWhlYnJldycpO1xuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgc3JjOiAgdXJsKCdmb250cy9pY29tb29uLmVvdD9raTRoc3knKTtcbiAgc3JjOiAgdXJsKCdmb250cy9pY29tb29uLmVvdD9raTRoc3kjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXG4gIHVybCgnZm9udHMvaWNvbW9vbi50dGY/a2k0aHN5JykgZm9ybWF0KCd0cnVldHlwZScpLFxuICB1cmwoJ2ZvbnRzL2ljb21vb24ud29mZj9raTRoc3knKSBmb3JtYXQoJ3dvZmYnKSxcbiAgdXJsKCdmb250cy9pY29tb29uLnN2Zz9raTRoc3kjaWNvbW9vbicpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDBcIjtcbn1cbi5pY29uLXlvdXR1YmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDFcIjtcbn1cbi5pY29uLWF2YXRhcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMlwiO1xufVxuLmljb24tYWdhbGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cbi5pY29uLXNlYXJjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiO1xufVxuLmljb24taGF6YWF0X21laGlyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XG59XG4uaWNvbi1nb29nbGVfcGx1czpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNlwiO1xufVxuLmljb24tY2xvc2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDdcIjtcbn1cbi5pY29uLWFycm93X2Rvd246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDhcIjtcbn1cbi5pY29uLWFycm93X3VwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG59XG4uaWNvbi1hcnJvd19sZWZ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBhXCI7XG59XG4uaWNvbi1jaGVjazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYlwiO1xufVxuLmljb24tdGVsZXBob25lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7XG59XG4uaWNvbi1jbG9jazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiO1xufVxuLmljb24tbG9jYXRpb246YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGVcIjtcbn1cbi5pY29uLW1hbmFnZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGZcIjtcbn1cbi5pY29uLW1pbnVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG4uaWNvbi1wbHVzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTExXCI7XG59XG4uaWNvbi1wbGF5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEyXCI7XG59XG4uaWNvbi1jaXJjbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTNcIjtcbn1cbi5pY29uLWVyYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XG59XG4uaWNvbi1sb2NrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE1XCI7XG59XG4uaWNvbi1hem1hbm90X2tvZG1vdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xufVxuLmljb24tc29jaWFsX21lZGlhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE3XCI7XG59XG4uaWNvbi1tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE4XCI7XG59XG4uaWNvbi1zaWR1cl9pc2hpOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE5XCI7XG59XG4uaWNvbi1kb2pvdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxYVwiO1xufVxuLmljb24tY2F0YWxvZ3VlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG5cbiIsIi8qID1Xb3JkUHJlc3MgQ29yZVxuLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0gKi9cbi5hbGlnbm5vbmUge1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuLmFsaWduY2VudGVyLFxuZGl2LmFsaWduY2VudGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCBhdXRvIDAgYXV0bztcbn1cblxuLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogMjVweCAwIDIwcHggMzBweDtcbn1cblxuLmFsaWdubGVmdCB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDI1cHggMzBweCAyMHB4IDA7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cbmEgaW1nLmFsaWducmlnaHQge1xuICBmbG9hdDogcmlnaHQ7XG4gIG1hcmdpbjogNXB4IDAgMjBweCAyMHB4O1xufVxuXG5hIGltZy5hbGlnbm5vbmUge1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuYSBpbWcuYWxpZ25sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogNXB4IDIwcHggMjBweCAwO1xufVxuXG5hIGltZy5hbGlnbmNlbnRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvXG59XG5cbi53cC1jYXB0aW9uIHtcbiAgYmFja2dyb3VuZDogI2ZmZjtcbiAgbWF4LXdpZHRoOiAxMDAlOyAvKiBJbWFnZSBkb2VzIG5vdCBvdmVyZmxvdyB0aGUgY29udGVudCBhcmVhICovXG4gIHBhZGRpbmc6IDVweCAzcHggMjNweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ud3AtY2FwdGlvbi10ZXh0IHtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgY29sb3I6IEBjb2xvci10ZXh0O1xufVxuXG4ud3AtY2FwdGlvbi5hbGlnbm5vbmUge1xuICBtYXJnaW46IDVweCAyMHB4IDIwcHggMDtcbn1cblxuLndwLWNhcHRpb24uYWxpZ25sZWZ0IHtcbiAgbWFyZ2luOiA1cHggMjBweCAyMHB4IDA7XG59XG5cbi53cC1jYXB0aW9uLmFsaWducmlnaHQge1xuICBtYXJnaW46IDVweCAwIDIwcHggMjBweDtcbn1cblxuLndwLWNhcHRpb24gaW1nIHtcbiAgYm9yZGVyOiAwIG5vbmU7XG4gIGhlaWdodDogYXV0bztcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiBhdXRvO1xufVxuXG4ud3AtY2FwdGlvbiBwLndwLWNhcHRpb24tdGV4dCB7XG4gIGZvbnQtc2l6ZTogMTFweDtcbiAgbGluZS1oZWlnaHQ6IDE3cHg7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMCA0cHggNXB4O1xufVxuXG4vKiBUZXh0IG1lYW50IG9ubHkgZm9yIHNjcmVlbiByZWFkZXJzLiAqL1xuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGNsaXA6IHJlY3QoMXB4LCAxcHgsIDFweCwgMXB4KTtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMXB4O1xuICB3aWR0aDogMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uc2NyZWVuLXJlYWRlci10ZXh0OmZvY3VzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2YxZjFmMTtcbiAgYm9yZGVyLXJhZGl1czogM3B4O1xuICBib3gtc2hhZG93OiAwIDAgMnB4IDJweCByZ2JhKDAsIDAsIDAsIDAuNik7XG4gIGNsaXA6IGF1dG8gIWltcG9ydGFudDtcbiAgY29sb3I6ICMyMTc1OWI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtc2l6ZTogMC44NzVyZW07XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBoZWlnaHQ6IGF1dG87XG4gIGxlZnQ6IDVweDtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgcGFkZGluZzogMTVweCAyM3B4IDE0cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdG9wOiA1cHg7XG4gIHdpZHRoOiBhdXRvO1xuICB6LWluZGV4OiAxMDAwMDA7IC8qIEFib3ZlIFdQIHRvb2xiYXIuICovXG59XG5cblxuIiwiLyogY2xhc3Nlcy5sZXNzICovXG5cbi53MTAwIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5oMTAwIHtcbiAgaGVpZ2h0OiAxMDAlO1xufVxuXG4uZC1ub25lIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuXG4udGV4dC1sZWZ0IHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuLndvcmtlci1sb2FkZXIge1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiaW1hZ2VzL3dvcmtlci1sb2FkZXIuZ2lmXCIpO1xuICB3aWR0aDogMTAwcHg7XG4gIGhlaWdodDogMTAwcHg7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiogTWFyZ2lucyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuLm1hcmdpbi14LWF1dG8ge1xuICBtYXJnaW46IDAgYXV0bztcbn1cblxuLm1hcmdpbi14LXhzIHtcbiAgbWFyZ2luLXJpZ2h0OiBAc3BhY2UteHM7XG4gIG1hcmdpbi1sZWZ0OiBAc3BhY2UteHM7XG59XG5cbi5tYXJnaW4teS14cyB7XG4gIG1hcmdpbi10b3A6IEBzcGFjZS14cztcbiAgbWFyZ2luLWJvdHRvbTogQHNwYWNlLXhzO1xufVxuXG4ubWFyZ2luLXgtc20ge1xuICBtYXJnaW4tcmlnaHQ6IEBzcGFjZS1zbTtcbiAgbWFyZ2luLWxlZnQ6IEBzcGFjZS1zbTtcbn1cblxuLm1hcmdpbi15LXNtIHtcbiAgbWFyZ2luLXRvcDogQHNwYWNlLXNtO1xuICBtYXJnaW4tYm90dG9tOiBAc3BhY2Utc207XG59XG5cbi5tYXJnaW4teC1tZCB7XG4gIG1hcmdpbi1yaWdodDogQHNwYWNlLW1kO1xuICBtYXJnaW4tbGVmdDogQHNwYWNlLW1kO1xufVxuXG4ubWFyZ2luLXktbWQge1xuICBtYXJnaW4tdG9wOiBAc3BhY2UtbWQ7XG4gIG1hcmdpbi1ib3R0b206IEBzcGFjZS1tZDtcbn1cblxuLm1hcmdpbi14LW1kMiB7XG4gIG1hcmdpbi1yaWdodDogQHNwYWNlLW1kMjtcbiAgbWFyZ2luLWxlZnQ6IEBzcGFjZS1tZDI7XG59XG5cbi5tYXJnaW4teS1tZDIge1xuICBtYXJnaW4tdG9wOiBAc3BhY2UtbWQyO1xuICBtYXJnaW4tYm90dG9tOiBAc3BhY2UtbWQyO1xufVxuXG4ubWFyZ2luLXgtbWQzIHtcbiAgbWFyZ2luLXJpZ2h0OiBAc3BhY2UtbWQzO1xuICBtYXJnaW4tbGVmdDogQHNwYWNlLW1kMztcbn1cblxuLm1hcmdpbi15LW1kMyB7XG4gIG1hcmdpbi10b3A6IEBzcGFjZS1tZDM7XG4gIG1hcmdpbi1ib3R0b206IEBzcGFjZS1tZDM7XG59XG5cbi5tYXJnaW4teC1sZyB7XG4gIG1hcmdpbi1yaWdodDogQHNwYWNlLWxnO1xuICBtYXJnaW4tbGVmdDogQHNwYWNlLWxnO1xufVxuXG4ubWFyZ2luLXktbGcge1xuICBtYXJnaW4tdG9wOiBAc3BhY2UtbGc7XG4gIG1hcmdpbi1ib3R0b206IEBzcGFjZS1sZztcbn1cblxuLm1hcmdpbi14LWxnMiB7XG4gIG1hcmdpbi1yaWdodDogQHNwYWNlLWxnO1xuICBtYXJnaW4tbGVmdDogQHNwYWNlLWxnO1xufVxuXG4ubWFyZ2luLXktbGcyIHtcbiAgbWFyZ2luLXRvcDogQHNwYWNlLWxnMjtcbiAgbWFyZ2luLWJvdHRvbTogQHNwYWNlLWxnMjtcbn1cblxuLm1hcmdpbi14LXhsIHtcbiAgbWFyZ2luLXJpZ2h0OiBAc3BhY2UteGw7XG4gIG1hcmdpbi1sZWZ0OiBAc3BhY2UteGw7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIG1hcmdpbi1yaWdodDogQHNwYWNlLXhsO1xuICAgIG1hcmdpbi1sZWZ0OiBAc3BhY2UteGw7XG4gIH1cbn1cblxuLm1hcmdpbi15LXhsIHtcbiAgbWFyZ2luLXRvcDogQHNwYWNlLXhsO1xuICBtYXJnaW4tYm90dG9tOiBAc3BhY2UteGw7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIG1hcmdpbi10b3A6IEBzcGFjZS14bDtcbiAgICBtYXJnaW4tYm90dG9tOiBAc3BhY2UteGw7XG4gIH1cbn1cblxuLm1hcmdpbi1hbGwtMCB7XG4gIG1hcmdpbjogMCAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLXRvcC0wIHtcbiAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLXJpZ2h0LTAge1xuICBtYXJnaW4tcmlnaHQ6IDAgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1ib3R0b20tMCB7XG4gIG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1sZWZ0LTAge1xuICBtYXJnaW4tbGVmdDogMCAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLWFsbC14cyB7XG4gIG1hcmdpbjogQHNwYWNlLXhzICFpbXBvcnRhbnRcbn1cblxuLm1hcmdpbi10b3AteHMge1xuICBtYXJnaW4tdG9wOiBAc3BhY2UteHMgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1yaWdodC14cyB7XG4gIG1hcmdpbi1yaWdodDogQHNwYWNlLXhzICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tYm90dG9tLXhzIHtcbiAgbWFyZ2luLWJvdHRvbTogQHNwYWNlLXhzICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tbGVmdC14cyB7XG4gIG1hcmdpbi1sZWZ0OiBAc3BhY2UteHMgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1hbGwtc20ge1xuICBtYXJnaW46IEBzcGFjZS1zbSAhaW1wb3J0YW50XG59XG5cbi5tYXJnaW4tdG9wLXNtIHtcbiAgbWFyZ2luLXRvcDogQHNwYWNlLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tcmlnaHQtc20ge1xuICBtYXJnaW4tcmlnaHQ6IEBzcGFjZS1zbSAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLWJvdHRvbS1zbSB7XG4gIG1hcmdpbi1ib3R0b206IEBzcGFjZS1zbSAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLWxlZnQtc20ge1xuICBtYXJnaW4tbGVmdDogQHNwYWNlLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tYWxsLW1kIHtcbiAgbWFyZ2luOiBAc3BhY2UtbWQgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLXRvcC1tZCB7XG4gIG1hcmdpbi10b3A6IEBzcGFjZS1tZCAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLXJpZ2h0LW1kIHtcbiAgbWFyZ2luLXJpZ2h0OiBAc3BhY2UtbWQgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1ib3R0b20tbWQge1xuICBtYXJnaW4tYm90dG9tOiBAc3BhY2UtbWQgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1sZWZ0LW1kIHtcbiAgbWFyZ2luLWJvdHRvbTogQHNwYWNlLW1kICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tYWxsLW1kMiB7XG4gIG1hcmdpbjogQHNwYWNlLW1kMiAhaW1wb3J0YW50XG59XG5cbi5tYXJnaW4tdG9wLW1kMiB7XG4gIG1hcmdpbi10b3A6IEBzcGFjZS1tZDIgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1yaWdodC1tZDIge1xuICBtYXJnaW4tcmlnaHQ6IEBzcGFjZS1tZDIgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1ib3R0b20tbWQyIHtcbiAgbWFyZ2luLWJvdHRvbTogQHNwYWNlLW1kMiAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLWxlZnQtbWQyIHtcbiAgbWFyZ2luLWJvdHRvbTogQHNwYWNlLW1kMiAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLWFsbC1tZDMge1xuICBtYXJnaW46IEBzcGFjZS1tZDMgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLXRvcC1tZDMge1xuICBtYXJnaW4tdG9wOiBAc3BhY2UtbWQzICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tcmlnaHQtbWQzIHtcbiAgbWFyZ2luLXJpZ2h0OiBAc3BhY2UtbWQzICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tYm90dG9tLW1kMyB7XG4gIG1hcmdpbi1ib3R0b206IEBzcGFjZS1tZDMgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1sZWZ0LW1kMyB7XG4gIG1hcmdpbi1sZWZ0OiBAc3BhY2UtbWQzICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tYWxsLWxnIHtcbiAgbWFyZ2luOiBAc3BhY2UtbGcgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLXRvcC1sZyB7XG4gIG1hcmdpbi10b3A6IEBzcGFjZS1sZyAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLXJpZ2h0LWxnIHtcbiAgbWFyZ2luLXJpZ2h0OiBAc3BhY2UtbGcgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1ib3R0b20tbGcge1xuICBtYXJnaW4tYm90dG9tOiBAc3BhY2UtbGcgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1sZWZ0LWxnIHtcbiAgbWFyZ2luLWxlZnQ6IEBzcGFjZS1sZyAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLWFsbC1sZzIge1xuICBtYXJnaW46IEBzcGFjZS1sZzIgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLXRvcC1sZzIge1xuICBtYXJnaW4tdG9wOiBAc3BhY2UtbGcyICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tcmlnaHQtbGcyIHtcbiAgbWFyZ2luLXJpZ2h0OiBAc3BhY2UtbGcyICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tYm90dG9tLWxnMiB7XG4gIG1hcmdpbi1ib3R0b206IEBzcGFjZS1sZzIgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1sZWZ0LWxnMiB7XG4gIG1hcmdpbi1sZWZ0OiBAc3BhY2UtbGcyICFpbXBvcnRhbnQ7XG59XG5cbi5tYXJnaW4tYWxsLXhsIHtcbiAgbWFyZ2luOiBAc3BhY2UteGwgIWltcG9ydGFudFxufVxuXG4ubWFyZ2luLXRvcC14bCB7XG4gIG1hcmdpbi10b3A6IEBzcGFjZS14bCAhaW1wb3J0YW50O1xufVxuXG4ubWFyZ2luLXJpZ2h0LXhsIHtcbiAgbWFyZ2luLXJpZ2h0OiBAc3BhY2UteGwgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1ib3R0b20teGwge1xuICBtYXJnaW4tYm90dG9tOiBAc3BhY2UteGwgIWltcG9ydGFudDtcbn1cblxuLm1hcmdpbi1sZWZ0LXhsIHtcbiAgbWFyZ2luLWxlZnQ6IEBzcGFjZS14bCAhaW1wb3J0YW50O1xufVxuXG4vKiBQYWRkaW5ncyAqL1xuXG4ucGFkZGluZy1hbGwteGwge1xuICBwYWRkaW5nOiBAc3BhY2UteGw7XG59XG5cbi5wYWRkaW5nLXgteHMge1xuICBwYWRkaW5nLXJpZ2h0OiBAc3BhY2UteHM7XG4gIHBhZGRpbmctbGVmdDogQHNwYWNlLXhzO1xufVxuXG4ucGFkZGluZy15LXhzIHtcbiAgcGFkZGluZy10b3A6IEBzcGFjZS14cztcbiAgcGFkZGluZy1ib3R0b206IEBzcGFjZS14cztcbn1cblxuLnBhZGRpbmcteC1zbSB7XG4gIHBhZGRpbmctcmlnaHQ6IEBzcGFjZS1zbTtcbiAgcGFkZGluZy1sZWZ0OiBAc3BhY2Utc207XG59XG5cbi5wYWRkaW5nLXktc20ge1xuICBwYWRkaW5nLXRvcDogQHNwYWNlLXNtO1xuICBwYWRkaW5nLWJvdHRvbTogQHNwYWNlLXNtO1xufVxuXG4ucGFkZGluZy14LW1kIHtcbiAgcGFkZGluZy1yaWdodDogQHNwYWNlLW1kO1xuICBwYWRkaW5nLWxlZnQ6IEBzcGFjZS1tZDtcbn1cblxuLnBhZGRpbmcteS1tZCB7XG4gIHBhZGRpbmctdG9wOiBAc3BhY2UtbWQ7XG4gIHBhZGRpbmctYm90dG9tOiBAc3BhY2UtbWQ7XG59XG5cbi5wYWRkaW5nLXgtbWQyIHtcbiAgcGFkZGluZy1yaWdodDogQHNwYWNlLW1kMjtcbiAgcGFkZGluZy1sZWZ0OiBAc3BhY2UtbWQyO1xufVxuXG4ucGFkZGluZy15LW1kMiB7XG4gIHBhZGRpbmctdG9wOiBAc3BhY2UtbWQyO1xuICBwYWRkaW5nLWJvdHRvbTogQHNwYWNlLW1kMjtcbn1cblxuLnBhZGRpbmcteC1tZDMge1xuICBwYWRkaW5nLXJpZ2h0OiBAc3BhY2Utc207XG4gIHBhZGRpbmctbGVmdDogQHNwYWNlLXNtO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBAc3BhY2UtbWQzO1xuICAgIHBhZGRpbmctbGVmdDogQHNwYWNlLW1kMztcbiAgfVxufVxuXG4ucGFkZGluZy15LW1kMyB7XG4gIHBhZGRpbmctdG9wOiBAc3BhY2Utc207XG4gIHBhZGRpbmctYm90dG9tOiBAc3BhY2Utc207XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctdG9wOiBAc3BhY2UtbWQzO1xuICAgIHBhZGRpbmctYm90dG9tOiBAc3BhY2UtbWQzO1xuICB9XG59XG5cbi5wYWRkaW5nLXgtbGcge1xuICBwYWRkaW5nLXJpZ2h0OiBAc3BhY2UtbGc7XG4gIHBhZGRpbmctbGVmdDogQHNwYWNlLWxnO1xufVxuXG4ucGFkZGluZy15LWxnIHtcbiAgcGFkZGluZy10b3A6IEBzcGFjZS1sZztcbiAgcGFkZGluZy1ib3R0b206IEBzcGFjZS1sZztcbn1cblxuLnBhZGRpbmcteC14bCB7XG4gIHBhZGRpbmctcmlnaHQ6IEBzcGFjZS14bDtcbiAgcGFkZGluZy1sZWZ0OiBAc3BhY2UteGw7XG59XG5cbi5wYWRkaW5nLXkteGwge1xuICBwYWRkaW5nLXRvcDogQHNwYWNlLXhsO1xuICBwYWRkaW5nLWJvdHRvbTogQHNwYWNlLXhsO1xufVxuXG4ucGFkZGluZy14LXh4bCB7XG4gIHBhZGRpbmctcmlnaHQ6IEBzcGFjZS14eGw7XG4gIHBhZGRpbmctbGVmdDogQHNwYWNlLXh4bDtcbn1cblxuLnBhZGRpbmcteS14eGwge1xuICBwYWRkaW5nLXRvcDogQHNwYWNlLXh4bDtcbiAgcGFkZGluZy1ib3R0b206IEBzcGFjZS14eGw7XG59XG5cbi5ub3BhZCB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWFsbC0wIHtcbiAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy10b3AtMCB7XG4gIHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLXJpZ2h0LTAge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWJvdHRvbS0wIHtcbiAgcGFkZGluZy1ib3R0b206IDAgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctbGVmdC0wIHtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWFsbC14cyB7XG4gIHBhZGRpbmc6IEBzcGFjZS14cyAhaW1wb3J0YW50XG59XG5cbi5wYWRkaW5nLXRvcC14cyB7XG4gIHBhZGRpbmctdG9wOiBAc3BhY2UteHMgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctcmlnaHQteHMge1xuICBwYWRkaW5nLXJpZ2h0OiBAc3BhY2UteHMgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctYm90dG9tLXhzIHtcbiAgcGFkZGluZy1ib3R0b206IEBzcGFjZS14cyAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1sZWZ0LXhzIHtcbiAgcGFkZGluZy1sZWZ0OiBAc3BhY2UteHMgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctYWxsLXNtIHtcbiAgcGFkZGluZzogQHNwYWNlLXNtICFpbXBvcnRhbnRcbn1cblxuLnBhZGRpbmctdG9wLXNtIHtcbiAgcGFkZGluZy10b3A6IEBzcGFjZS1zbSAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1yaWdodC1zbSB7XG4gIHBhZGRpbmctcmlnaHQ6IEBzcGFjZS1zbSAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1ib3R0b20tc20ge1xuICBwYWRkaW5nLWJvdHRvbTogQHNwYWNlLXNtICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWxlZnQtc20ge1xuICBwYWRkaW5nLWxlZnQ6IEBzcGFjZS1zbSAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1hbGwtbWQge1xuICBwYWRkaW5nLXJpZ2h0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctbGVmdDogMCAhaW1wb3J0YW50O1xuICBwYWRkaW5nLXRvcDogQHNwYWNlLW1kICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctYm90dG9tOiBAc3BhY2UtbWQgIWltcG9ydGFudDtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZzogQHNwYWNlLW1kICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnBhZGRpbmctdG9wLW1kIHtcbiAgcGFkZGluZy10b3A6IEBzcGFjZS1tZCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1yaWdodC1tZCB7XG4gIHBhZGRpbmctcmlnaHQ6IEBzcGFjZS1tZCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1ib3R0b20tbWQge1xuICBwYWRkaW5nLWJvdHRvbTogQHNwYWNlLW1kICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWxlZnQtbWQge1xuICBwYWRkaW5nLWxlZnQ6IEBzcGFjZS1tZCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1hbGwtbWQyIHtcbiAgcGFkZGluZzogQHNwYWNlLW1kMiAhaW1wb3J0YW50XG59XG5cbi5wYWRkaW5nLXRvcC1tZDIge1xuICBwYWRkaW5nLXRvcDogQHNwYWNlLW1kMiAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1yaWdodC1tZDIge1xuICBwYWRkaW5nLXJpZ2h0OiBAc3BhY2UtbWQyICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWJvdHRvbS1tZDIge1xuICBwYWRkaW5nLWJvdHRvbTogQHNwYWNlLW1kMiAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1sZWZ0LW1kMiB7XG4gIHBhZGRpbmctbGVmdDogQHNwYWNlLW1kMiAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1hbGwtbWQzIHtcbiAgcGFkZGluZzogQHNwYWNlLXNtICFpbXBvcnRhbnQ7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmc6IEBzcGFjZS1tZDMgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucGFkZGluZy10b3AtbWQzIHtcbiAgcGFkZGluZy10b3A6IEBzcGFjZS1zbSAhaW1wb3J0YW50O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nLXRvcDogQHNwYWNlLW1kMyAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5wYWRkaW5nLXJpZ2h0LW1kMyB7XG4gIHBhZGRpbmctcmlnaHQ6IEBzcGFjZS1zbSAhaW1wb3J0YW50O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiBAc3BhY2UtbWQzICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLnBhZGRpbmctYm90dG9tLW1kMyB7XG4gIHBhZGRpbmctYm90dG9tOiBAc3BhY2Utc20gIWltcG9ydGFudDtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZy1ib3R0b206IEBzcGFjZS1tZDMgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucGFkZGluZy1sZWZ0LW1kMyB7XG4gIHBhZGRpbmctbGVmdDogQHNwYWNlLXNtICFpbXBvcnRhbnQ7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctbGVmdDogQHNwYWNlLW1kMyAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5wYWRkaW5nLWFsbC1sZyB7XG4gIHBhZGRpbmctcmlnaHQ6IDAgIWltcG9ydGFudDtcbiAgcGFkZGluZy1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gIHBhZGRpbmctdG9wOiBAc3BhY2UtbGcgIWltcG9ydGFudDtcbiAgcGFkZGluZy1ib3R0b206IEBzcGFjZS1sZyAhaW1wb3J0YW50O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nOiBAc3BhY2UtbGcgIWltcG9ydGFudDtcbiAgfVxufVxuXG4ucGFkZGluZy10b3AtbGcge1xuICBwYWRkaW5nLXRvcDogQHNwYWNlLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLXJpZ2h0LWxnIHtcbiAgcGFkZGluZy1yaWdodDogQHNwYWNlLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWJvdHRvbS1sZyB7XG4gIHBhZGRpbmctYm90dG9tOiBAc3BhY2UtbGcgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctbGVmdC1sZyB7XG4gIHBhZGRpbmctbGVmdDogQHNwYWNlLWxnICFpbXBvcnRhbnQ7XG59XG5cbi5wYWRkaW5nLWFsbC14bCB7XG4gIHBhZGRpbmc6IEBzcGFjZS14bCAhaW1wb3J0YW50XG59XG5cbi5wYWRkaW5nLXRvcC14bCB7XG4gIHBhZGRpbmctdG9wOiBAc3BhY2Utc20gIWltcG9ydGFudDtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZy10b3A6IEBzcGFjZS14bCAhaW1wb3J0YW50O1xuXG4gIH1cbn1cblxuLnBhZGRpbmctcmlnaHQteGwge1xuICBwYWRkaW5nLXJpZ2h0OiBAc3BhY2UteGwgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctYm90dG9tLXhsIHtcbiAgcGFkZGluZy1ib3R0b206IEBzcGFjZS14bCAhaW1wb3J0YW50O1xufVxuXG4ucGFkZGluZy1sZWZ0LXhsIHtcbiAgcGFkZGluZy1sZWZ0OiBAc3BhY2UteGwgIWltcG9ydGFudDtcbn1cblxuLnBhZGRpbmctZnJvbS1oZWFkZXIge1xuICBwYWRkaW5nLXRvcDogMi44ZW07XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICBGb250cyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5mb250LXNpemUtYmFzZSB7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1iYXNlO1xufVxuXG4uZm9udC1zaXplLTNlbSB7XG4gIGZvbnQtc2l6ZTogMzhweDtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZm9udC1zaXplOiAzZW07XG4gIH1cbn1cblxuLmZvbnQtc2l6ZS04IHtcbiAgZm9udC1zaXplOiAwLjg1ZW07XG59XG5cbi5mb250LXNpemUtMS0zIHtcbiAgZm9udC1zaXplOiAyNHB4O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6IDEuM2VtO1xuICB9XG59XG5cbi5mb250LXNpemUtMS00NSB7XG4gIGZvbnQtc2l6ZTogMS40NWVtO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogR2VuZXJhbCAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4ubGluZS1oZWlnaHQtMS0zIHtcbiAgbGluZS1oZWlnaHQ6IDEuMztcbn1cblxuLmxpbmUtaGVpZ2h0LTEtNCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi50ZXh0LXN0cm9rZS1ncmF5IHtcbiAgLXdlYmtpdC10ZXh0LXN0cm9rZTogMC40cHggQGNvbG9yLWdyYXk7XG59XG5cbi5ib2xkIHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi5mb250LTUwMCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG59XG5cbi5mb250LTYwMCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5mb250LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG59XG5cbi51cHBlcmNhc2Uge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uY2FwaXRhbGl6ZSB7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xufVxuXG4ud2hpdGUtc3BhY2Uge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udmVydGljYWwtbWlkZGxlIHtcbiAgLnZlcnRpY2FsLWFsaWduKCk7XG59XG5cbi52ZXJ0aWNhbC1hbGlnbi1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udmVydGljYWwtYWxpZ24tdG9wIHtcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnZlcnRpY2FsLWFsaWduLWJvdHRvbSB7XG4gIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmZsb2F0LXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4uZmxvYXQtbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4ucm90YXRlLW1pcnJvciB7XG4gIHRyYW5zZm9ybTogcm90YXRlWSgyMDBkZWcpO1xufVxuXG4udHJhbnNpdGlvbiB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbn1cblxuLnRyYW5zaXRpb24yIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbn1cblxuLnRleHQtbWFpbiB7XG4gIGZvbnQtc2l6ZTogMC44NWVtO1xuICBmb250LXdlaWdodDogNTAwO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIFRpdGxlcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi50ZXh0LXVuZGVybGluZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgJjphZnRlciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogODAlO1xuICAgIGhlaWdodDogMnB4O1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG4udGV4dC11bmRlcmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXRvcDogMC44ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgbWFyZ2luLXRvcDogMS41dnc7XG4gIH1cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDJweDtcbiAgICBtYXJnaW4tdG9wOiAwLjd2dztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBCdXR0b25zICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi50b3AtYnV0dG9ucy13aGl0ZSB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgY29sb3I6IEBjb2xvci1ibGFjaztcbiAgZm9udC1zaXplOiAwLjdlbTtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZzogMC42dncgMS41dnc7XG4gIH1cbiAgaSB7XG4gICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgIGkge1xuICAgICAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4ubW9iaWxlLXNob3BpbmctY2FydCB7XG4gICYudG9wLWJ1dHRvbnMtd2hpdGUge1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgIGkge1xuICAgICAgICBjb2xvcjogQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgfVxuICB9XG59XG5cbi50b3AtYnV0dG9uIHtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICBjb2xvcjogQGNvbG9yLWJsYWNrO1xuICBmb250LXNpemU6IDAuN2VtO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nOiAwLjZ2dyAxLjV2dztcbiAgfVxuICBpIHtcbiAgICBjb2xvcjogQGNvbG9yLWJsYWNrO1xuICB9XG5cbn1cblxuLnRvcC1idXR0b25zLXJlZCB7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQ7XG4gIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gIGZvbnQtc2l6ZTogMC43ZW07XG4gIHBhZGRpbmc6IDAuNnZ3IDAuNXZ3O1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gIH1cbn1cblxuLnRvcC1idXR0b25zLXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgY29sb3I6IEBjb2xvci1ibGFjaztcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICB9XG59XG5cbi5idG4td2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gIGNvbG9yOiBAY29sb3ItYmxhY2s7XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgfVxufVxuXG4vLy5idG4tcmVkIHtcbi8vICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuLy8gIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4vLyAgJjpob3ZlciB7XG4vLyAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4vLyAgICBjb2xvcjogQGNvbG9yLXJlZDtcbi8vICB9XG4vL31cblxuLmJ0bi1wbHVzLW1pbnVzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0Z3JheTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgcGFkZGluZzogNHB4IDhweDtcbn1cblxuLmJ0bi1yZWQtZm9ybXMge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuOGVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZzogMC43ZW0gMmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gIC50cmFuc2l0aW9uKCk7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYnRuLXJlZC1wYXkge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDEuMmVtO1xuICBmb250LXdlaWdodDogNTAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZzogMC40ZW0gMmVtO1xuICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gIC50cmFuc2l0aW9uKCk7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgfVxufVxuXG4uYnRuLXJlZC1iZWZvcmUtY2hlY2tvdXQge1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuOGVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBjbGVhcjogYm90aDtcbiAgcGFkZGluZzogN3B4IDQ1cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgLnRyYW5zaXRpb24oKTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5idG4tcmVkLXBlcnNvbmFsIHtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiBAY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiA1cHggNDVweDtcbiAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICAudHJhbnNpdGlvbigpO1xuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJ0bi1ib3JkZXItcmVkLXN0b3JlIHtcbiAgY29sb3I6IEBjb2xvci1yZWQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1yZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGZvbnQtc2l6ZTogMS41NWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICAvL3BhZGRpbmc6IDNweCA2NXB4O1xuICAudHJhbnNpdGlvbigpO1xuICBwYWRkaW5nOiAycHggNXB4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmc6IDAuMWVtIDMuM2VtO1xuXG4gIH1cblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gIH1cbn1cblxuLmJ0bi1ibHVlLWJlZm9yZS1jaGVja291dCB7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWJsdWUgIWltcG9ydGFudDtcbiAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuOGVtO1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDdweCA0NXB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1ibHVlICFpbXBvcnRhbnQ7XG4gIC50cmFuc2l0aW9uKCk7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IEBjb2xvci1ibHVlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmJ0bi1yZWRib3JkZXItYmVmb3JlLWNoZWNrb3V0IHtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItZ3JheS1saWdodCAhaW1wb3J0YW50O1xuICBjb2xvcjogQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDAuOGVtO1xuICBmb250LXdlaWdodDogNDAwICFpbXBvcnRhbnQ7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IDdweCA0NXB4ICFpbXBvcnRhbnQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgLnRyYW5zaXRpb24oKTtcblxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogYm9yZGVycyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5ib3JkZXItYm90dG9tIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBjb2xvci1ncmF5O1xufVxuXG4uYm9yZGVyLXRvcCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbn1cblxuLmJvcmRlci10b3Atbm9uZSB7XG4gIGJvcmRlci10b3A6IG5vbmU7XG59XG5cbi5ib3JkZXItcmlnaHQge1xuICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbn1cblxuLmJvcmRlci1sZWZ0IHtcbiAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbn1cblxuLmJvcmRlci1ib3gge1xuICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItZ3JheTtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiBCYWNrZ3JvdW5kcyAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5iZy1ncmF5IHtcbiAgYmFja2dyb3VuZDogQGNvbG9yLWdyYXk7XG59XG5cbi5iZy1ncmF5LWxpZ2h0IHtcbiAgYmFja2dyb3VuZDogQGNvbG9yLWdyYXktbGlnaHQgIWltcG9ydGFudDtcbn1cblxuLmJnLWdyYXktZGFyayB7XG4gIGJhY2tncm91bmQ6IEBjb2xvci1ncmF5LWRhcms7XG59XG5cbi5iZy13aGl0ZSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbn1cblxuLmJnLWJsYWNrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbn1cblxuLmJnLXJlZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQ7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiogQ29sb3JzICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4uY29sb3ItdGV4dCB7XG4gIGNvbG9yOiBAY29sb3ItdGV4dDtcbn1cblxuLmNvbG9yLXdoaXRlIHtcbiAgY29sb3I6IEBjb2xvci13aGl0ZTtcbn1cblxuLmNvbG9yLWJsYWNrIHtcbiAgY29sb3I6IEBjb2xvci1ibGFjayAhaW1wb3J0YW50O1xufVxuXG4uY29sb3ItZ3JheSB7XG4gIGNvbG9yOiBAY29sb3ItZ3JheTtcbn1cblxuLmNvbG9yLWdyYXktbGlnaHQge1xuICBjb2xvcjogQGNvbG9yLWdyYXktbGlnaHQ7XG59XG5cbi5jb2xvci1ncmF5LWRhcmsge1xuICBjb2xvcjogQGNvbG9yLWdyYXktZGFyaztcbn1cblxuLmNvbG9yLXJlZCB7XG4gIGNvbG9yOiBAY29sb3ItcmVkO1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICBIZWlnaHQgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqICBwb3NpdGlvbnMgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLnBvc2l0aW9uLXJlbGF0aXZlIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucG9zaXRpb24tYWJzb2x1dGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi5kaXNwbGF5LWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5kaXNwbGF5LWZsZXgge1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG59XG5cbi5pbmxpbmUge1xuICBkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5jdXN0b20tZmxleCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbn1cblxuLmN1c3RvbS1mbGV4LXNvY2lhbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAganVzdGlmeS1jb250ZW50OiBmbGV4LXN0YXJ0O1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogZmxleC1zdGFydDtcbiAgZmxleC13cmFwOiB3cmFwO1xuICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgfVxufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqKiogd29ya2VyICoqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5idG4tcmVkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBmb250LXNpemU6IDAuOWVtO1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLXJlZDtcbiAgLnRyYW5zaXRpb247XG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICBjb2xvcjogQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1yZWQ7XG4gICAgLnRyYW5zaXRpb247XG4gIH1cbn1cblxuLmJ0bi1yZWQtc2VuZCB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQ7XG4gIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgcGFkZGluZzogN3B4IDU1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItcmVkO1xuICAudHJhbnNpdGlvbjtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgIGNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLXJlZDtcbiAgICAudHJhbnNpdGlvbjtcbiAgfVxufVxuXG4uYnRuLXdoaXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgYm9yZGVyLXJhZGl1czogNHB4O1xuICBmb250LXNpemU6IDAuOWVtO1xuICBwYWRkaW5nOiA3cHggNjVweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1yZWQ7XG4gIC50cmFuc2l0aW9uO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLXJlZDtcbiAgICAudHJhbnNpdGlvbjtcbiAgfVxufVxuXG4uYnRuLWZpbHRlciB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAjY2UyYjMwO1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItdG9wOiAwO1xuICBib3JkZXItbGVmdDogMDtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICNjZTJiMzA7XG4gIGZvbnQtc2l6ZTogMS4zZW07XG4gIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxufVxuXG4uYnRuLXNtYWxsIHtcbiAgZm9udC1zaXplOiAxLjJlbTtcbiAgcGFkZGluZzogMC4yN2VtIDEuNWVtO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1sZWZ0OiAxNXB4O1xuICBvdXRsaW5lOiBub25lO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIHBhZGRpbmc6IDAuMjdlbSAzLjVlbTtcbiAgfVxuICAmOmhvdmVyIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuLmN1c3RvbS1wLWhlaWdodCB7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgaGVpZ2h0OiA4NXB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn1cblxuLyoqIDA0c25pZmltICoqL1xuXG4udGl0bGUtdW5kZXJsaW5lIHtcbiAgZm9udC1zaXplOiAxLjdlbTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuICBtYXJnaW4tdG9wOiAwLjhlbTtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBtYXJnaW4tdG9wOiBhdXRvO1xuICB9XG4gIG1heC13aWR0aDogMTAwJTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6IDIuNTVlbTtcbiAgfVxuXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDEzNzNiO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5O1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gIH1cbn1cblxuLnRpdGxlLXVuZGVybGluZS1mdWxsIHtcbiAgZm9udC1zaXplOiAxLjFlbTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkIEBjb2xvci1yZWQ7XG4gIHBhZGRpbmctcmlnaHQ6IDNlbTtcbn1cblxuLnN1Yi10aXRsZS11bmRlcmxpbmUge1xuICBmb250LXNpemU6IDI1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZm9udC1zaXplOiAyLjFlbTtcblxuICB9XG5cbiAgZm9udC13ZWlnaHQ6IDMwMDtcblxuICAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBoZWlnaHQ6IDJweDtcbiAgICB3aWR0aDogODAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNkMTM3M2I7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8vdG9wOiAwLjg1dnc7XG4gICAgei1pbmRleDogOTtcbiAgICBtYXJnaW4tdG9wOiAxNnB4O1xuICB9XG59XG5cbi5zdWItdGl0bGUtdW5kZXJsaW5lMiB7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMTBweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6IDEuNmVtO1xuXG4gIH1cblxuICBmb250LXdlaWdodDogMzAwO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiA4MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2QxMzczYjtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy90b3A6IDAuODV2dztcbiAgICB6LWluZGV4OiA5O1xuICAgIG1hcmdpbi10b3A6IDE2cHg7XG4gIH1cbn1cblxuLnN1Yi10aXRsZS11bmRlcmxpbmUtbW9kYWwge1xuICBmb250LXNpemU6IDI1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZm9udC1zaXplOiAxLjQ1ZW07XG5cbiAgfVxuXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDEzNzNiO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL3RvcDogMC44NXZ3O1xuICAgIHotaW5kZXg6IDk7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgfVxufVxuXG4udGl0bGUtdW5kZXJsaW5lLXdoaXRlIHtcbiAgZm9udC1zaXplOiAyNnB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHRleHQtb3ZlcmZsb3c6IGVsbGlwc2lzO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDAgMTBweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6IDIuNGVtO1xuXG4gIH1cblxuICBmb250LXdlaWdodDogMzAwO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMnB4O1xuICAgIHdpZHRoOiA4MCU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL3RvcDogMC44NXZ3O1xuICAgIHotaW5kZXg6IDk7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgfVxufVxuXG4uc2lkZS10aXRsZS11bmRlcmxpbmUge1xuICBmb250LXNpemU6IDI1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAwIDEwcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZm9udC1zaXplOiAxLjQ1ZW07XG5cbiAgfVxuXG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgaGVpZ2h0OiAycHg7XG4gICAgd2lkdGg6IDgwJTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZDEzNzNiO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvL3RvcDogMC44NXZ3O1xuICAgIHotaW5kZXg6IDk7XG4gICAgbWFyZ2luLXRvcDogMTZweDtcbiAgfVxufVxuXG4uYnJhbmNoLWljb24ge1xuICBjb2xvcjogI2NlMmIyZjtcbiAgZm9udC1zaXplOiA0NXB4ICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdHJhbnNpdGlvbjogMC41cztcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6IDIuOGVtICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmN1c3RvbS1saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBjb2xvcjogI2QxMzczYjtcbiAgdHJhbnNpdGlvbjogMC41cztcbiAgZm9udC1zaXplOiAxNXB4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgY29sb3I6ICNkMTM3M2I7XG4gICAgdHJhbnNpdGlvbjogMC41cztcbiAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6IHJnYmEoMTU5LCAxMCwgMTQsIDEpO1xuICB9XG5cbn1cblxuLmN1c3RvbS1saW5rLXN0b3JlIHtcbiAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLWJsYWNrO1xuICBjb2xvcjogQGNvbG9yLWJsYWNrO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHdpZHRoOiA1MyU7XG4gIHBhZGRpbmc6IDNweCAwO1xuICB0cmFuc2l0aW9uOiAwLjVzO1xuICBmb250LXdlaWdodDogNjAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogNDBweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXJlZDtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gIH1cbn1cblxuLmN1c3RvbS1saW5rLXN0b3JlLXdoaXRlIHtcbiAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXdoaXRlO1xuICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIHBhZGRpbmc6IDAuM2VtIDIuMWVtO1xuICB0cmFuc2l0aW9uOiAwLjVzO1xuICBmb250LXdlaWdodDogNjAwO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgb3V0bGluZTogbm9uZTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgfVxuXG4gICY6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXJlZDtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbi5saW5rLWljb24ge1xuICBmb250LXNpemU6IDAuODVlbTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDJweDtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICB0b3A6IDFweDtcbiAgfVxufVxuXG4uc3RvcmUtYnRuIHtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgfVxufVxuXG4uZm9udC1oZWVibyB7XG4gIGZvbnQtZmFtaWx5OiAnSEVFQk8nLCBzYW5zLXNlcmlmICFpbXBvcnRhbnQ7XG59XG5cbi5saW5lLWhlaWdodC0xLTI1IHtcbiAgbGluZS1oZWlnaHQ6IDEuMjU7XG59XG5cbi5mb250LW5vcm1hbCB7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWwgIWltcG9ydGFudDtcbn1cblxuLmNvbG9yLWdyYXktdGV4dCB7XG4gIGNvbG9yOiBAY29sb3ItZ3JheS10ZXh0O1xufVxuXG4vKioqKioqKioqKioqKioqKioqKioqKioqICBtb2RhbCAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5jbG9zZS1tb2RhbCB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgb3BhY2l0eTogMTtcbiAgZm9udC1zaXplOiAyZW07XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1ibGFjayAhaW1wb3J0YW50O1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIHdpZHRoOiAzMnB4O1xufVxuXG4uY2xvc2UtaWNvbi1tb2RhbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm90dG9tOiA5cHg7XG59XG5cbi8qKioqKioqKioqKioqKioqKioqKioqKiogIGFycm93cyAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbi5sZWZ0LWFycm93IHtcbiAgZm9udC1zaXplOiAxLjVlbTtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xufVxuXG4ucmVzZXQtcGFzc3dvcmQtZm9ybSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5wLXN0cmlwLWN1c3RvbSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgfVxuXG4gID4gLmNvbC1tZC0yIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgfVxufVxuXG4ubW9yZS1wcm9kIHtcbiAgY29sb3I6IEBjb2xvci1yZWQ7XG4gIGZvbnQtc2l6ZTogMS4xZW07XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG5cbiAgLmljb24ge1xuICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICB9XG59XG5cbi5yZXZlcnNlLWN1c3RvbSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuLm9uZS1saW5lLXRleHQge1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbn1cblxuLnRlcm0tZGVzY3JpcHRpb24ge1xuICBmb250LXNpemU6IDEuMnJlbTtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cblxuLnNlbGVjdC13cmFwcGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi53LTEwMCB7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZGlzcGxheS1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG59XG5cbi5zbGljay1hcnJvdy5zbGljay1kaXNhYmxlZCB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5iaWctc2FsZSB7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICB0b3A6IDA7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICB6LWluZGV4OiAyMDtcbiAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gIGhlaWdodDogMi44ZW0gIWltcG9ydGFudDtcbiAgd2lkdGg6IDIuOGVtICFpbXBvcnRhbnQ7XG4gIG1pbi1oZWlnaHQ6IDIuOGVtO1xuICBtaW4td2lkdGg6IDIuOGVtO1xuICBsaW5lLWhlaWdodDogMi40ZW07XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGZvbnQtc2l6ZTogMS4yZW07XG4gIG1hcmdpbjogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufSIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG49ICAgICAgICAgICAgYmFzZS5sZXNzICAgICAgICAgPVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cblxuYm9keSB7XG4gIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1iYXNlLW1vYmlsZTtcbiAgZm9udC1mYW1pbHk6IEBmb250LWZhbWlseS1tYWluO1xuICAudHJhbnNpdGlvbjI7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1iYXNlO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICB9XG59XG5oMSB7XG4gIGZvbnQtc2l6ZTogMi4zZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIG1hcmdpbi1ib3R0b206IDF2dztcbiAgfVxufVxuXG5oMiB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBmb250LXdlaWdodDogMzAwO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxdnc7XG5cbiAgfVxufVxuXG5wIHtcbiAgZm9udC1zaXplOiAxZW07XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICB9XG59XG5cbmltZyB7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5hIHtcbiAgY29sb3I6IEBjb2xvci1ibGFjaztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAudHJhbnNpdGlvbjtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyxcbiAgJjphY3RpdmUge1xuICAgIGNvbG9yOiBsaWdodGVuKEBsaW5rLWNvbG9yLCAxNSUpO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAudHJhbnNpdGlvbjtcbiAgfVxufVxuXG5zZWxlY3Qge1xuICBib3JkZXItY29sb3I6IEBjb2xvci1ncmF5O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gICY6aG92ZXIge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5cbi53b29jb21tZXJjZSB7XG4gIG5hdiB7XG4gICAgJi53b29jb21tZXJjZS1wYWdpbmF0aW9uIHtcbiAgICAgIHVsIHtcbiAgICAgICAgJi5wYWdlLW51bWJlcnMge1xuICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IEBjb2xvci1ncmF5LWxpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwLjI1ZW0gMC41ZW07XG4gICAgICAgICAgICAgIGNvbG9yOiBncmF5O1xuICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHNwYW4uY3VycmVudCxhOmZvY3VzLGE6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItcmVkO1xuICAgICAgICAgICAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwLjI1ZW0gMC41ZW07XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucHJldiB7XG4gICAgICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZykgO1xuICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMTgwZGVnKTtcbiAgICAgICAgICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cblxuIiwiLyogIHZhcmlhYmxlcy5sZXNzICAqL1xuXG4vL2Jhc2Ugc2l6ZXNcbkBzcGFjZS14czogNXB4O1xuQHNwYWNlLXNtOiAxMHB4O1xuQHNwYWNlLW1kOiAxNXB4O1xuQHNwYWNlLW1kMjogMjBweDtcbkBzcGFjZS1tZDM6IDI1cHg7XG5Ac3BhY2UtbGc6IDM1cHg7XG5Ac3BhY2UtbGcyOiA0MHB4O1xuQHNwYWNlLXhsOiA0NXB4O1xuQHNwYWNlLXh4bDogNTBweDtcblxuLy9jb2xvcnNcbkBjb2xvci1ncmF5OiAjZTVlNWU1O1xuQGNvbG9yLWdyYXktZGFyazogIzhkOGQ4ZDtcbkBjb2xvci1ncmF5LWxpZ2h0OiAjZjdmN2Y3O1xuQGNvbG9yLXJlZDogI2NlMmIzMDtcbkBjb2xvci13aGl0ZTogI2ZmZjtcbkBjb2xvci1ibGFjazogIzExMTExMTtcbkBjb2xvci10ZXh0OiBAY29sb3ItYmxhY2s7XG5AY29sb3ItZ3JheS10ZXh0OiAjOTQ5NDk0O1xuQGNvbG9yLWJsdWU6ICMzYzU4OWU7XG5cbi8vVHlwb2dyYXBoeVxuQGZvbnQtZmFtaWx5LW1haW46ICdIZWVibycsIHNhbnMtc2VyaWY7XG5AZm9udC1zaXplLWJhc2U6IDF2dztcbkBmb250LXNpemUtYmFzZS1tb2JpbGU6IDE4cHg7XG5AaDEtZm9udC1zaXplOiAzLjFlbTtcbkBoMi1mb250LXNpemU6IDEuMzVlbTtcbkBoMy1mb250LXNpemU6IDEuMzVlbTtcbkBoNC1mb250LXNpemU6IDEuMTVlbTtcbkBoNS1mb250LXNpemU6IDEuMWVtO1xuQGg2LWZvbnQtc2l6ZTogMC44ZW07XG5AZm9udC1zaXplLXA6IDEuMTI1ZW07XG5AZm9udC1zaXplLXNtYWxsOiAwLjY4OGVtO1xuQGxpbmUtaGVpZ2h0LWJhc2U6IDEuMztcbkBsaW5lLWhlaWdodC1tZWRpdW06IDEuNTtcbkBsaW5rLWNvbG9yOiBAY29sb3ItcmVkO1xuXG5AZml4ZWQtaGVhZGVyLWhlaWdodDogMjAwcHg7XG5cblxuXG4iLCIvKiBhbmltYXRlLmxlc3MgKi9cbi5hbmltYXRlZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4uYW5pbWF0ZWQuaW5maW5pdGUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uLWRlbGF5OiAycztcbn1cblxuLmFuaW1hdGVkLmhpbmdlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDJzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDJzO1xufVxuXG4uYW5pbWF0ZWQuYm91bmNlSW4sXG4uYW5pbWF0ZWQuYm91bmNlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC43NXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcbn1cblxuLmFuaW1hdGVkLmZsaXBPdXRYLFxuLmFuaW1hdGVkLmZsaXBPdXRZIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IC43NXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZSB7XG4gIGZyb20sIDIwJSwgNTMlLCA4MCUsIHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICB9XG5cbiAgNDAlLCA0MyUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzBweCwgMCk7XG4gIH1cblxuICA3MCUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2Uge1xuICBmcm9tLCAyMCUsIDUzJSwgODAlLCB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgfVxuXG4gIDQwJSwgNDMlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwtNHB4LDApO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlX3NtYWxsIHtcbiAgZnJvbSwgMjAlLCA1MyUsIDgwJSwgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gIH1cblxuICA0MCUsIDQzJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2Vfc21hbGwge1xuICBmcm9tLCAyMCUsIDUzJSwgODAlLCB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgfVxuXG4gIDQwJSwgNDMlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNTAsIDAuODU1LCAwLjA2MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcbiAgfVxufVxuLmJvdW5jZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxhc2gge1xuICBmcm9tLCA1MCUsIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMjUlLCA3NSUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGFzaCB7XG4gIGZyb20sIDUwJSwgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAyNSUsIDc1JSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZmxhc2gge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGFzaDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xufVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHB1bHNlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcHVsc2Uge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuLnB1bHNlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcHVsc2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJ1YmJlckJhbmQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xNSwgMC44NSwgMSk7XG4gIH1cblxuICA2NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45NSwgMS4wNSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NSwgMS4wNSwgMSk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcnViYmVyQmFuZCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgfVxuXG4gIDY1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgLjk1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgLjk1LCAxKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuLnJ1YmJlckJhbmQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kO1xuICBhbmltYXRpb24tbmFtZTogcnViYmVyQmFuZDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNoYWtlIHtcbiAgZnJvbSwgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIH1cblxuICAyMCUsIDQwJSwgNjAlLCA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuICBmcm9tLCB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIH1cbn1cblxuLnNoYWtlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2hha2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHN3aW5nIHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMTVkZWcpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc3dpbmcge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7XG4gIH1cbn1cblxuLnN3aW5nIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzd2luZztcbiAgYW5pbWF0aW9uLW5hbWU6IHN3aW5nO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdGFkYSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIDEwJSwgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xuICB9XG5cbiAgNDAlLCA2MCUsIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgdGFkYSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIDEwJSwgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpO1xuICB9XG5cbiAgNDAlLCA2MCUsIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbi50YWRhIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdGFkYTtcbiAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgd29iYmxlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgMTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gIH1cblxuICA0NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgd29iYmxlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgMTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gIH1cblxuICA0NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDJkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi53b2JibGUge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB3b2JibGU7XG4gIGFuaW1hdGlvbi1uYW1lOiB3b2JibGU7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBqZWxsbyB7XG4gIGZyb20sIDExLjElLCB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG5cbiAgMjIuMiUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTtcbiAgfVxuXG4gIDMzLjMlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcbiAgfVxuXG4gIDQ0LjQlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goLTMuMTI1ZGVnKSBza2V3WSgtMy4xMjVkZWcpO1xuICB9XG5cbiAgNTUuNSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XG4gIH1cblxuICA2Ni42JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xuICB9XG5cbiAgNzcuNyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcbiAgfVxuXG4gIDg4LjglIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGplbGxvIHtcbiAgZnJvbSwgMTEuMSUsIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAyMi4yJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xuICB9XG5cbiAgMzMuMyUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpO1xuICB9XG5cbiAgNDQuNCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7XG4gIH1cblxuICA1NS41JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcbiAgfVxuXG4gIDY2LjYlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XG4gIH1cblxuICA3Ny43JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKDAuMzkwNjI1ZGVnKSBza2V3WSgwLjM5MDYyNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xuICB9XG5cbiAgODguOCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMTI1ZGVnKSBza2V3WSgtMC4xOTUzMTI1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xuICB9XG59XG5cbi5qZWxsbyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGplbGxvO1xuICBhbmltYXRpb24tbmFtZTogamVsbG87XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbiB7XG4gIGZyb20sIDIwJSwgNDAlLCA2MCUsIDgwJSwgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICB9XG5cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICB9XG5cbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluIHtcbiAgZnJvbSwgMjAlLCA0MCUsIDYwJSwgODAlLCB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gIH1cblxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gIH1cblxuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NywgLjk3LCAuOTcpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbi5ib3VuY2VJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gIH1cblxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgfVxuXG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNXB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5ib3VuY2VJbkRvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkxlZnQge1xuICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gIH1cblxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgfVxuXG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5ib3VuY2VJbkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICB9XG5cbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xuICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gIH1cblxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5ib3VuY2VJblJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblVwIHtcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICB9XG5cbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC01cHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5VcCB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgfVxuXG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAzMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5VcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0IHtcbiAgMjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XG4gIH1cblxuICA1MCUsIDU1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXQge1xuICAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcbiAgfVxuXG4gIDUwJSwgNTUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgfVxufVxuXG4uYm91bmNlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0RG93biB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gIH1cblxuICA0MCUsIDQ1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0RG93biB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gIH1cblxuICA0MCUsIDQ1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbi5ib3VuY2VPdXREb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi5ib3VuY2VPdXRSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRVcCB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSwgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRVcCB7XG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSwgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dFVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uZmFkZUluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmZhZGVJbkRvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmZhZGVJbkRvd25CaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5mYWRlSW5MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5mYWRlSW5MZWZ0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmZhZGVJblJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5mYWRlSW5SaWdodEJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmZhZGVJblVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5mYWRlSW5VcEJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZmFkZU91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0RG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dERvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0RG93bkJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dExlZnRCaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0UmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFJpZ2h0QmlnIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0VXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0VXBCaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cblxuICA1MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSBzY2FsZTNkKC45NSwgLjk1LCAuOTUpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxufVxuXG4uYW5pbWF0ZWQuZmxpcCB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwSW5YIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGlwSW5YIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cbn1cblxuLmZsaXBJblgge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmbGlwSW5YO1xuICBhbmltYXRpb24tbmFtZTogZmxpcEluWDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZsaXBJblkge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA2MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDEwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxufVxuXG4uZmxpcEluWSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmxpcE91dFgge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmxpcE91dFgge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5mbGlwT3V0WCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xuICBhbmltYXRpb24tbmFtZTogZmxpcE91dFg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cblxuICAzMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZsaXBPdXRZIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmxpcE91dFk7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgtMzBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ubGlnaHRTcGVlZEluIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluO1xuICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluO1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ubGlnaHRTcGVlZE91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0O1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbiB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0yMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5yb3RhdGVJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluO1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucm90YXRlSW5Eb3duTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluRG93blJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucm90YXRlSW5VcExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluVXBSaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0RG93bkxlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXREb3duUmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXRVcExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXRVcFJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwUmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAyMCUsIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICA0MCUsIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBoaW5nZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAyMCUsIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICA0MCUsIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmhpbmdlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogaGluZ2U7XG4gIGFuaW1hdGlvbi1uYW1lOiBoaW5nZTtcbn1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyByb2xsSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuQGtleWZyYW1lcyByb2xsSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLnJvbGxJbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjtcbn1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyByb2xsT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHJvbGxPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDEyMGRlZyk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xuICB9XG59XG5cbi5yb2xsT3V0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogcm9sbE91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21JbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi56b29tSW4ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW47XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTEwMDBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21JbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbi56b29tSW5Eb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkRvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21JbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbi56b29tSW5MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21JblJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5SaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21JblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21JblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG4uem9vbUluVXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblVwO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuQGtleWZyYW1lcyB6b29tT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uem9vbU91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dERvd24ge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXREb3duIHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21PdXREb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogem9vbU91dERvd247XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0RG93bjtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSguMSkgdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgfVxufVxuXG4uem9vbU91dExlZnQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBjZW50ZXI7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICB9XG59XG5cbi56b29tT3V0UmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0UmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0UmlnaHQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyB6b29tT3V0VXAge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXRVcCB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbi56b29tT3V0VXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluRG93biB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZUluRG93biB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZUluTGVmdCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uc2xpZGVJblJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVJblVwIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLnNsaWRlSW5VcCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgfVxufVxuXG4uc2xpZGVPdXREb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dExlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uc2xpZGVPdXRMZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0O1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuLnNsaWRlT3V0UmlnaHQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxufVxuLnNsaWRlT3V0VXAge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwO1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcbn1cblxuQGtleWZyYW1lcyBjbG91ZHNBbmltYXRlIHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUwMHB4LCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNTAwcHgsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUwMHB4LCAwLCAwKTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNTAwcHgsIDAsIDApO1xuICB9XG59XG4uY2xvdWRzQW5pbWF0ZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGNsb3Vkc0FuaW1hdGU7XG4gIGFuaW1hdGlvbi1uYW1lOiBjbG91ZHNBbmltYXRlO1xuICAtbXMtYW5pbWF0aW9uLW5hbWU6IGNsb3Vkc0FuaW1hdGU7XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGNsb3Vkc0FuaW1hdGU7XG4gIC1vLWFuaW1hdGlvbi1uYW1lOiBjbG91ZHNBbmltYXRlO1xufVxuQGtleWZyYW1lcyBjbG91ZHNBbmltYXRlLWxlZnQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC03MDBweCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTcwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC03MDBweCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC03MDBweCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNzAwcHgsIDAsIDApO1xuICB9XG59XG4uY2xvdWRzQW5pbWF0ZS1sZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogY2xvdWRzQW5pbWF0ZS1sZWZ0O1xuICBhbmltYXRpb24tbmFtZTogY2xvdWRzQW5pbWF0ZS1sZWZ0O1xuICAtbXMtYW5pbWF0aW9uLW5hbWU6IGNsb3Vkc0FuaW1hdGUtbGVmdDtcbiAgLW1vei1hbmltYXRpb24tbmFtZTogY2xvdWRzQW5pbWF0ZS1sZWZ0O1xuICAtby1hbmltYXRpb24tbmFtZTogY2xvdWRzQW5pbWF0ZS1sZWZ0O1xufVxuQGtleWZyYW1lcyBjYXJzQW5pbWF0ZSB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XG4gIH1cbn1cbi5jYXJzQW5pbWF0ZSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGNhcnNBbmltYXRlO1xuICBhbmltYXRpb24tbmFtZTogY2Fyc0FuaW1hdGU7XG4gIC1tcy1hbmltYXRpb24tbmFtZTogY2Fyc0FuaW1hdGU7XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGNhcnNBbmltYXRlO1xuICAtby1hbmltYXRpb24tbmFtZTogY2Fyc0FuaW1hdGU7XG59XG5cbkBrZXlmcmFtZXMgY2Fyc0FuaW1hdGUtcmlnaHQge1xuICBmcm9tIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XG4gIH1cbn1cbi5jYXJzQW5pbWF0ZS1yaWdodCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGNhcnNBbmltYXRlLXJpZ2h0O1xuICBhbmltYXRpb24tbmFtZTogY2Fyc0FuaW1hdGUtcmlnaHQ7XG4gIC1tcy1hbmltYXRpb24tbmFtZTogY2Fyc0FuaW1hdGUtcmlnaHQ7XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGNhcnNBbmltYXRlLXJpZ2h0O1xuICAtby1hbmltYXRpb24tbmFtZTogY2Fyc0FuaW1hdGUtcmlnaHQ7XG59XG5cbi5hbmltYXRlZCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcblxufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuLmZhZGVJblVwIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDtcbn1cbi5pbmZpbml0ZXtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDppbmZpbml0ZTtcbiAgLXdlYmtpdC1hbmltYXRpb24taXRlcmF0aW9uLWNvdW50OmluZmluaXRlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuLmFjdGl2ZSAuZmFkZUluTGVmdEJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuLmFjdGl2ZSAuZmFkZUluUmlnaHRCaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZztcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0QmlnO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUgey13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO31cbiAgNDAlIHstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7fVxuICA2MCUgey13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTt9XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge3RyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTt9XG4gIDQwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTt9XG4gIDYwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTt9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlX3NtYWxsIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUgey13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO31cbiAgNDAlIHstd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7fVxuICA2MCUgey13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01cHgpO31cbn1cblxuQGtleWZyYW1lcyBib3VuY2Vfc21hbGwge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7dHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO31cbiAgNDAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO31cbiAgNjAlIHt0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTVweCk7fVxufVxuXG4uYm91bmNlIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogYm91bmNlO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlO1xufVxuLy8gZW5kIEJvdW5jZVxuXG4vLyBncm93XG5cbi5hY3RpdmUgLmdyb3cge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBncm93O1xuICBhbmltYXRpb24tbmFtZTogZ3JvdztcblxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGdyb3cge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBncm93IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgwKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuICB9XG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG4uYWN0aXZlIC5mYWRlSW5VcEJpZyB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxuICA1MCUgeyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxuICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG59XG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG4gIDUwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4xKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuXG5cbi5ib3VuY2VJbkRvd24ge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkRvd247XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMzBweCk7XG4gIH1cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQGtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbi5hY3RpdmUgLmZhZGVJbkRvd25CaWcge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnO1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDEuMnM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMS4ycztcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5cbi5mYWRlSW5Eb3duIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBzbGlkZUluTGVmdCB7XG4gIGZyb20ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5hY3RpdmUgLnNsaWRlSW5MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDtcbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluTGVmdCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uYWN0aXZlIC5mYWRlSW5MZWZ0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5hY3RpdmUgLmZhZGVJblJpZ2h0IHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbn1cblxuXG4uaHZyLWljb24tZm9yd2FyZCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgYm94LXNoYWRvdzogMCAwIDFweCByZ2JhKDAsIDAsIDAsIDApO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctcmlnaHQ6IDIuMmVtO1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG4gIHRyYW5zaXRpb24tZHVyYXRpb246IDAuMXM7XG59XG4uaHZyLWljb24tZm9yd2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZjEzOFwiO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiAxZW07XG4gIHBhZGRpbmc6IDAgMXB4O1xuICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4xcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbn1cbi5odnItaWNvbi1mb3J3YXJkOmhvdmVyOmJlZm9yZSxcbi5odnItaWNvbi1mb3J3YXJkOmZvY3VzOmJlZm9yZSxcbi5odnItaWNvbi1mb3J3YXJkOmFjdGl2ZTpiZWZvcmUge1xuICAudHJhbnNsYXRlWCAoNHB4KTtcblxufVxuLmh2ci1ncm93IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICBib3gtc2hhZG93OiAwIDAgMXB4IHJnYmEoMCwgMCwgMCwgMCk7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiB0cmFuc2Zvcm07XG4gIHRyYW5zaXRpb24tcHJvcGVydHk6IHRyYW5zZm9ybTtcbn1cbi5odnItZ3Jvdzpob3Zlcixcbi5odnItZ3Jvdzpmb2N1cyxcbi5odnItZ3JvdzphY3RpdmUge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5bY2xhc3NePVwiaHZyLVwiXSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLDAsMCwwKTtcbiAgQG1lZGlhKG1pbi13aWR0aDogNzY4cHgpe1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgfVxufVxuXG4vKiBlbmQgYW5pbWF0ZS5sZXNzICovIiwiLyogZW50cnktY29udGVudC5sZXNzICovXG5cbi5lbnRyeS1jb250ZW50IHtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuMjtcbiAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogQGgyLWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cblxuICBoMyB7XG4gICAgZm9udC1zaXplOiAyNnB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgY29sb3I6IEBjb2xvci1ibGFjaztcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zNWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cblxuICBoNCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBmb250LXNpemU6IEBoNC1mb250LXNpemU7XG4gICAgfVxuICB9XG5cbiAgaDUge1xuICAgIGZvbnQtc2l6ZTogQGg1LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMS4yO1xuICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIH1cblxuICBoNiB7XG4gICAgZm9udC1zaXplOiBAaDYtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgfVxuXG4gIHAge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgcGFkZGluZy1ib3R0b206IDI1cHg7XG4gICAgZm9udC1zaXplOiAxLjBlbTtcbiAgfVxuICBhIHtcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6IEBjb2xvci10ZXh0O1xuICAgIH1cbiAgICAmOmFjdGl2ZSB7XG5cbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuICB1bCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGNvbG9yOiBAY29sb3ItdGV4dDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1MHB4O1xuICAgICAgICBsaW5lLWhlaWdodDogMS44O1xuICAgICAgfVxuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDBjXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRvcDogM3B4O1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIHdpZHRoOiAyNXB4O1xuICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBvbCB7XG4gICAgcGFkZGluZy1ib3R0b206IDEycHg7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDQwcHg7XG4gICAgfVxuICAgIGxpIHtcbiAgICAgIGNvdW50ZXItaW5jcmVtZW50OiBzdGVwLWNvdW50ZXI7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBjb2xvcjogQGNvbG9yLXRleHQ7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgICAgJjpiZWZvcmUge1xuXG4gICAgICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgICBjb250ZW50OiBjb3VudGVyKHN0ZXAtY291bnRlcik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICAgIGNvbnRlbnQ6ICcuJztcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICByaWdodDogMTFweDtcblxuICAgICAgfVxuICAgIH1cbiAgfVxuICBibG9ja3F1b3RlIHtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1ncmF5LWxpZ2h0O1xuICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzN3B4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxNHB4O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgcGFkZGluZy1sZWZ0OiAxMHB4O1xuICAgIHBhZGRpbmctdG9wOiAxNHB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHAge1xuICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS40NDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IC02cHg7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICBsZWZ0OiAtMTBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufSIsIi8qIHNlY3Rpb24ubGVzcyAqL1xuXG4vL1BhZ2UgQmFubmVyXG4ucGFnZS1iYW5uZXIge1xuXG4gIC8qbWluLWhlaWdodDogNjBweDsqL1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAvKm1pbi1oZWlnaHQ6IDI2MHB4OyovXG4gIH1cbn1cblxuLy9QYWdlIEhlYWRlclxuLnBhZ2UtaGVhZGVyIHtcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nLXRvcDogMS44dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDEuOHZ3O1xuICB9XG59XG5cbi53b29jb21tZXJjZS1hY2NvdW50e1xuICAucGFnZS1oZWFkZXJ7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAmLmxvZ2dlZC1pbntcbiAgICAucGFnZS1oZWFkZXJ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbn1cblxuLnN1Yi10ZXh0IHtcbiAgcCB7XG4gICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gIH1cbn1cblxuLy8gQnJlYWRjcnVtYnNcbiNicmVhZGNydW1icyB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gIHBhZGRpbmctdG9wOiA1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmctcmlnaHQ6IDM1cHg7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgfVxuICBzcGFuIHtcbiAgICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgfVxuICBhIHtcbiAgICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgfVxuICAuYnJlYWRjcnVtYl9sYXN0IHtcbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICB9XG59XG5cbi8qIEVORCBzZWN0aW9uLmxlc3MgKi8iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuPSAgICAgICAgICAgZml4ZmlyZWZveC5sZXNzICAgICAgID1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cblxuLyogTWVkaWEgcXVlcnkgdG8gdGFyZ2V0IEZpcmVmb3ggb25seSAqL1xuQC1tb3otZG9jdW1lbnQgdXJsLXByZWZpeCgpIHtcbiAgLyogRmlyZWZveCBoYWNrIHRvIGhpZGUgdGhlIGFycm93ICovXG4gIC53b29jb21tZXJjZSBzZWxlY3Qge1xuICAgIHRleHQtaW5kZW50OiAwLjAxcHg7XG4gICAgdGV4dC1vdmVyZmxvdzogJyc7XG4gICAgcGFkZGluZy1yaWdodDogMXJlbTtcbiAgfVxuXG4gIC8qIGVsZW1lbnRzIGluaGVyaXQgc3R5bGVzIGZyb20sIHNvIHJlc2V0IHRoZW0uICovXG4gIC53b29jb21tZXJjZSBzZWxlY3Qgb3B0aW9uIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbiAgfVxuICBzZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxufSIsIi8qKioqKioqKioqKioqKipcbmZpeGZvcmllLmxlc3NcblxuKioqKioqKioqKioqKioqKi9cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC1tcy1oaWdoLWNvbnRyYXN0OiBhY3RpdmUpLCBzY3JlZW4gYW5kICgtbXMtaGlnaC1jb250cmFzdDogbm9uZSkge1xuICAvKiBJRTEwKyBzcGVjaWZpYyBzdHlsZXMgZ28gaGVyZSAqL1xuICBzZWxlY3Q6Oi1tcy1leHBhbmQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAjcGFnZSB7XG4gICAgLndvb2NvbW1lcmNlIHtcbiAgICAgIHVsIHtcbiAgICAgICAgJi5wcm9kdWN0cyB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgJi5wcm9kdWN0IHtcbiAgICAgICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICAgICAgJjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxOHB4ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn0iLCIvKiBmaWxlIG5hbWUgY29udGFjdC1mb3JtLmxlc3MgKi9cblxuLmNvbnRhY3QtZm9ybS1tYWluLFxuLmNvbnRhY3QtZm9ybS1iaWQsXG4uY29udGFjdC1mb3JtLWpvaW4sXG4uY29udGFjdC1mb3JtLWZpeGVkIHtcbiAgZm9ybSB7XG4gICAgaW5wdXRbdHlwZT1cInRleHRcIl0sXG4gICAgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgICBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuXG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0ZXh0YXJlYSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICBjb2xvcjogQGNvbG9yLXRleHQ7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTgwcHg7XG4gICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICByZXNpemU6IG5vbmU7XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgfVxuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgICAgIC8vYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAvL2JvcmRlcjogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG5cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIH1cblxuICAgICAgJjpmb2N1cyxcbiAgICAgIDphY3RpdmUge1xuICAgICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiBAY29sb3ItYmxhY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgOi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IEBjb2xvci1ibGFjayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICA6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgICAgY29sb3I6IEBjb2xvci1ibGFjayAhaW1wb3J0YW50O1xuICAgIH1cbiAgICA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiBAY29sb3ItYmxhY2sgIWltcG9ydGFudDtcbiAgICB9XG4gICAgc2VsZWN0IHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGFwcGVhcmFuY2U6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5mb3JtLWdyb3VwIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWFyZ2luLWJvdHRvbTogM3B4O1xuICB9XG4gIHNlbGVjdCB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgICBhcHBlYXJhbmNlOiBub25lO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gIGhlaWdodDogMjVweDtcbiAgd2lkdGg6IDI1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGdyYXk7XG4gIG91dGxpbmU6IDA7XG4gIGNvbG9yOiBAY29sb3ItYmxhY2s7XG4gIGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuLnNlbGVjdC1ncm91cCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLy8gZ2VuZXJhbCBpbnB1dCBwbGFjZWhvbGRlclxuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzAwMDtcblxufVxuOi1tb3otcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzAwMDtcbn1cblxuOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgY29sb3I6ICMwMDA7XG59XG5cbjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogIzAwMDtcbn1cblxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuaW5wdXRbdHlwZT1udW1iZXJdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbmlucHV0W3R5cGU9ZGF0ZV06Oi13ZWJraXQtaW5uZXItc3Bpbi1idXR0b24sXG5pbnB1dFt0eXBlPWRhdGVdOjotd2Via2l0LW91dGVyLXNwaW4tYnV0dG9uIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBtYXJnaW46IDA7XG59XG5cbnNwYW4ud3BjZjctbm90LXZhbGlkLXRpcCB7XG4gIGZvbnQtc2l6ZTogMC45ZW0gIWltcG9ydGFudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDM4cHg7XG4gIHJpZ2h0OiAwO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICB0b3A6IDM1cHg7XG4gIH1cbn1cblxuZGl2LndwY2Y3LXZhbGlkYXRpb24tZXJyb3JzIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIGNvbG9yOiByZWQgIWltcG9ydGFudDtcbn1cblxuZGl2LndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gIG1hcmdpbi10b3A6IDE1cHggIWltcG9ydGFudDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5kaXYud3BjZjctbWFpbC1zZW50LW5nIHtcbiAgYm9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLndwY2Y3LXJlc3BvbnNlLW91dHB1dC53cGNmNy1kaXNwbGF5LW5vbmUud3BjZjctdmFsaWRhdGlvbi1lcnJvcnMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGZvbnQtc2l6ZTogMWVtO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICB9XG59XG5cbnNwYW4ud3BjZjctbm90LXZhbGlkLXRpcCB7XG4gIGNvbG9yOiByZWQgIWltcG9ydGFudDtcbn1cblxuZGl2LndwY2Y3LW1haWwtc2VudC1vayB7XG4gIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICBjb2xvcjogZ3JlZW47XG59XG5cbi53cGNmNy1yZXNwb25zZS1vdXRwdXQud3BjZjctZGlzcGxheS1ub25lLndwY2Y3LW1haWwtc2VudC1uZyB7XG4gIGNvbG9yOiByZWQgIWltcG9ydGFudDtcbn1cblxuZGl2LndwY2Y3IC5hamF4LWxvYWRlciB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vLi4vaW1hZ2VzL2FqYXgtbG9hZGVyLmdpZik7XG4gIHdpZHRoOiAxNnB4O1xuICBoZWlnaHQ6IDE2cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwIDAgMCA0cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5pbnZhbGlkIHtcbiAgaW5wdXQud3BjZjctbm90LXZhbGlkIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZWQgIWltcG9ydGFudDtcbiAgfVxuICA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZWQgIWltcG9ydGFudDtcbiAgfVxuICA6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJlZCAhaW1wb3J0YW50O1xuICB9XG4gIDo6LW1vei1wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6IHJlZCAhaW1wb3J0YW50O1xuICB9XG4gIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiByZWQgIWltcG9ydGFudDtcbiAgfVxufVxuLy8gdGhpcyBjbGFzcyBoYW5kbGUgY2FwdGNoYSB2aXNhYmlsaXR5XG4uZ3JlY2FwdGNoYS1iYWRnZXtcbiAgdmlzaWJpbGl0eTogY29sbGFwc2UgIWltcG9ydGFudDtcbn0iLCIvKiBwcmltYXJ5X25hdi5sZXNzICovXG5cbi5tYWluLW1lbnUge1xuICB1bCB7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICB9XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdWwucHJpbWFyeS1tZW51IHtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAuZmxleC1kaXNwbGF5KGlubGluZS1mbGV4KTtcbiAgICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgIH1cbiAgICA+bGkge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB9XG4gICAgICA+YSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjJlbTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICBjb2xvcjogQGNvbG9yLWJsYWNrO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDUwcHg7XG4gICAgICAgICAgcGFkZGluZzogMCAyNXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC45NWVtO1xuICAgICAgICB9XG4gICAgICAgIC50cmFuc2l0aW9uMjtcbiAgICAgICAgJlxuICAgICAgICA6YWN0aXZlLFxuICAgICAgICA6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgICAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAudHJhbnNpdGlvbjI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc3ViLW1lbnUge1xuICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcblxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuXG4gICAgICAgICAgLnRyYW5zaXRpb247XG4gICAgICAgICAgICAmOmJlZm9yZXtcbiAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgIHdpZHRoOiAyMDAlO1xuICAgICAgICAgICAgICByaWdodDogLTUwJTtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYXtcbiAgICAgICAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5LXRleHQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgbGkge1xuICAgICAgICAgIGEge1xuXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjI7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjpob3ZlciwgJi5ob3ZlclxuICAgICAgIHtcbiAgICAgICAgJj5he1xuICAgICAgICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgICAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICAgICAgICAudHJhbnNpdGlvbjI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5zdWItbWVudSB7XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcbiAgICAgICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgLnRyYW5zaXRpb247XG4gICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJjphY3RpdmVcbiAgICAgIHtcbiAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5tZW51LWl0ZW0taGFzLWNoaWxkcmVuIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cbn1cblxuLmN1cnJlbnQtbWVudS1pdGVtIHtcbiAgJiA+IGEge1xuICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICAgICAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgLnRyYW5zaXRpb24yO1xuICAgIH1cbiAgfVxufVxuXG4ubWFpbi1tZW51IHtcbiAgdWwucHJpbWFyeS1tZW51IHtcbiAgICA+bGkuaGFzLXN1YiB7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICAgICYgPiBhIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgY29udGVudDogXCJcXGYwZmVcIjtcbiAgICAgICAgICBmb250LWZhbWlseTogZm9udGF3ZXNvbWU7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIGxlZnQ6IDAuNmVtO1xuICAgICAgICAgIHRvcDogIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYubWVudS1vcGVue1xuICAgICAgICA+IC5zdWItbWVudXtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFxmMTQ2XCI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cblxuXG4gICAgfVxuICB9XG59XG5cbi5tYWluLW1lbnUge1xuICAubmF2YmFyLW9mZmNhbnZhcyB7XG4gICAgdWwucHJpbWFyeS1tZW51IHtcbiAgICAgID5saSB7XG4gICAgICAgICYubWVudS1pdGVtLWhhcy1jaGlsZHJlbiB7XG4gICAgICAgICAgPmEge1xuICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgfVxuICAgICAgICAgICB9XG4gICAgICAgICB9XG4gICAgICAgIFxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5cblxuIiwiLyogY3VzdG9tLWNoZWNrYm94Lmxlc3MgKi9cblxuLy8uY2hlY2tib3gtZ3JvdXAge1xuLy8gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgd2lkdGg6IDkwJTtcbi8vICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbi8vICAgIHdpZHRoOiBhdXRvO1xuLy8gIH1cbi8vfVxuLy9cbi8vLyogQmFzZSBmb3IgbGFiZWwgc3R5bGluZyAqL1xuLy9bdHlwZT1cImNoZWNrYm94XCJdIHtcbi8vICAmICsgLndwY2Y3LWxpc3QtaXRlbS1sYWJlbCB7XG4vLyAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4vLyAgICBjdXJzb3I6IHBvaW50ZXI7XG4vLyAgICBmb250LXdlaWdodDogMzAwO1xuLy8gICAgcmlnaHQ6IDIwcHg7XG4vLyAgICB0b3A6IDE1cHg7XG4vLyAgICBmb250LXNpemU6IDEuMmVtO1xuLy8gICAgLyogY2hlY2tib3ggYXNwZWN0ICovXG4vLyAgICAmOmJlZm9yZSB7XG4vLyAgICAgIGNvbnRlbnQ6ICcnO1xuLy8gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4vLyAgICAgIHJpZ2h0OiAtMzNweDtcbi8vICAgICAgdG9wOiAwO1xuLy8gICAgICB3aWR0aDogMjJweDtcbi8vICAgICAgaGVpZ2h0OiAyMnB4O1xuLy8gICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItZ3JheTtcbi8vICAgIH1cbi8vICAgIC8qIGNoZWNrZWQgbWFyayBhc3BlY3QgKi9cbi8vICAgICY6YWZ0ZXIge1xuLy8gICAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuLy8gICAgICBmb250LWZhbWlseTogJ2ZvbnRBd2Vzb21lJztcbi8vICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8gICAgICB0b3A6IDVweDtcbi8vICAgICAgcmlnaHQ6IC0yOXB4O1xuLy8gICAgICBmb250LXNpemU6IDE1cHg7XG4vLyAgICAgIGxpbmUtaGVpZ2h0OiAwLjg7XG4vLyAgICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4vLyAgICAgIGNvbG9yOiBAY29sb3ItYmxhY2s7XG4vLyAgICB9XG4vLyAgfVxuLy99XG4vL1xuLy8vKiBjaGVja2VkIG1hcmsgYXNwZWN0IGNoYW5nZXMgKi9cbi8vW3R5cGU9XCJjaGVja2JveFwiXTpub3QoOmNoZWNrZWQpICsgLndwY2Y3LWxpc3QtaXRlbS1sYWJlbDphZnRlciB7XG4vLyAgb3BhY2l0eTogMDtcbi8vICB0cmFuc2Zvcm06IHNjYWxlKDApO1xuLy99XG4vL1xuLy9bdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQgKyAud3BjZjctbGlzdC1pdGVtLWxhYmVsOmFmdGVyIHtcbi8vICBvcGFjaXR5OiAxO1xuLy8gIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4vL31cblxucCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgI2JicF90b3BpY19zdWJzY3JpcHRpb24ge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gICNiYnBfdG9waWNfc3Vic2NyaXB0aW9uICsgbGFiZWwge1xuICAgIGNvbG9yOiBAY29sb3ItdGV4dCAhaW1wb3J0YW50O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDMwcHg7XG4gIH1cblxuICAjYmJwX3RvcGljX3N1YnNjcmlwdGlvbiArIGxhYmVsOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6ICdmb250QXdlc29tZSc7XG4gICAgY29udGVudDogJyc7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiAwO1xuICAgIHBhZGRpbmctdG9wOiA2cHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICBsaW5lLWhlaWdodDogMC44O1xuICAgIHdpZHRoOiAyNXB4O1xuICAgIGhlaWdodDogMjVweDtcbiAgICBiYWNrZ3JvdW5kOiBAY29sb3ItZ3JheTtcblxuICAgIHRyYW5zaXRpb246IGFsbCAuMnM7XG4gIH1cblxuICAjYmJwX3RvcGljX3N1YnNjcmlwdGlvbjpjaGVja2VkICsgbGFiZWw6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjAwY1wiO1xuICAgIGNvbG9yOiBAY29sb3ItdGV4dDtcbiAgfVxufVxuXG5cblxuXG5cblxuLnMtY2hlY2tib3gtZ3JvdXAge1xuICAvLy53cGNmNy1saXN0LWl0ZW0tbGFiZWx7XG4gIC8vICB0b3A6MDtcbiAgLy99XG5cbiAgc3Bhbi53cGNmNy1saXN0LWl0ZW0ge1xuICAgIG1hcmdpbjogMTVweCAwO1xuICB9XG5cbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMDtcblxuICAgICZbZGlzYWJsZWQ9XCJkaXNhYmxlZFwiXSArIGxhYmVsOjpiZWZvcmUsXG4gICAgJltkaXNhYmxlZD1cImRpc2FibGVkXCJdICsgc3Bhbjo6YmVmb3JlIHtcbiAgICAgIGN1cnNvcjogbm8tZHJvcDtcbiAgICB9XG4gIH1cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0gKyBsYWJlbCxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdICsgc3BhbiB7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuXG4gICAgJjpob3ZlciB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgfVxuXG4gICAgJjpiZWZvcmUge1xuXG4gICAgICBjb250ZW50OiAnJztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgaGVpZ2h0OiAxLjZyZW07XG4gICAgICB3aWR0aDogMS42cmVtO1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwcHg7XG4gICAgfVxuICB9XG5cblxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIGxhYmVsLFxuICBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Y2hlY2tlZCArIHNwYW4ge1xuXG4gICAgJjphZnRlciB7XG4gICAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICAgIGNvbnRlbnQ6IFwiXFxlOTBiXCI7XG4gICAgICBmb250LXNpemU6IDAuNzVyZW07XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBoZWlnaHQ6IDEuMnJlbTtcbiAgICAgIHdpZHRoOiAxLjJyZW07XG4gICAgICBjb2xvcjpAY29sb3ItcmVkO1xuICAgICAgYm9yZGVyLXJhZGl1czogMHB4O1xuICAgICAgcmlnaHQ6IDJweDtcbiAgICAgIHRvcDogNXB4O1xuICAgIH1cbiAgfVxufSIsIi8qKiBjYXJ0Lmxlc3MgKiovXG5cbi53b29jb21tZXJjZS1jYXJ0IHtcbiAgLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICAgIGEge1xuICAgICAgYm9yZGVyOiAwIHNvbGlkICMxMTExMTE7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIHBhZGRpbmc6IDAgNnB4O1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAud29vY29tbWVyY2Uge1xuICAgIC53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAzZW07XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDFlbTtcbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDAuNWVtO1xuICAgICAgICBsZWZ0OiAwLjVlbTtcbiAgICAgICAgbWFyZ2luLXRvcDogMmVtO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgYm90dG9tOiBhdXRvO1xuICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY2FydF90b3RhbHMgaDIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgLnNob3BfdGFibGUge1xuICAgICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICAgIHRkIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDEycHg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgICAgfVxuICAgICAgdGhlYWQge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yLWdyYXk7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGJvZHkge1xuICAgICAgICAuY2FydF9pdGVtIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGNvbG9yLWdyYXktZGFyaztcblxuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIEBjb2xvci1ibGFjaztcbiAgICAgICAgICB9XG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZzogMjBweCAxNXB4O1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDQwcHggMTVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAucHJvZHVjdC1uYW1lIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuXG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgIH1cbiAgICAgICAgdGQge1xuICAgICAgICAgICYuYWN0aW9ucyB7XG4gICAgICAgICAgICBwYWRkaW5nOiA0MHB4IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIGRsLnZhcmlhdGlvbiB7XG4gICAgICAgICAgICBkdCB7XG4gICAgICAgICAgICAgIGNvbG9yOiBAY29sb3ItZ3JheS10ZXh0O1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICB0YWJsZS5jYXJ0IHtcbiAgICAgIHRkLmFjdGlvbnMge1xuICAgICAgICAuY291cG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgICAgIC5pbnB1dC10ZXh0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgICAgIG1hcmdpbjogMCA0cHggMCAxNXB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDcuNXZ3O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0YWJsZS5zaG9wX3RhYmxlIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIG1hcmdpbjogMCAtMXB4IDAgMDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICAgIC5wcm9kdWN0LXRodW1ibmFpbCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIH1cblxuICAgICAgdGQge1xuICAgICAgICBib3JkZXItdG9wOiBub25lO1xuICAgICAgICAmLnByb2R1Y3QtbmFtZSB7XG5cbiAgICAgICAgICBkbC52YXJpYXRpb24ge1xuICAgICAgICAgICAgZGQge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgZHQge1xuICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYS5yZW1vdmUge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgaGVpZ2h0OiAxLjRlbTtcbiAgICAgICAgd2lkdGg6IDEuNGVtO1xuICAgICAgICBjb2xvcjogQGNvbG9yLWJsYWNrICFpbXBvcnRhbnQ7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIGxpZ2h0Z3JheTtcbiAgICAgICAgcGFkZGluZzogNHB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1ibGFjaztcbiAgICAgICAgICBjb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5xdWFudGl0eS1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG5cbiAgICAgIGRpdi5xdWFudGl0eSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgLnF0eSB7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICAgIHdpZHRoOiAyLjVlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuY2FydCB7XG5cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItcmVkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgIHBhZGRpbmc6IDhweCAzMnB4O1xuICAgICAgICAudHJhbnNpdGlvbigpO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItcmVkO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5hcHBseV9jb3Vwb24ge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItcmVkO1xuICAgICAgICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuY2FydC1jb2xsYXRlcmFscyB7XG4gICAgICBwYWRkaW5nOiAzMHB4IDE1cHggMCAxNXB4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuXG4gICAgICAuY2FydF90b3RhbHMge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIC5vcmRlci10b3RhbCB7XG4gICAgICAgICAgdGgge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICB0YWJsZSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICB0aCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGNvbG9yLWdyYXktZGFyaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgQGNvbG9yLWdyYXktZGFyaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAud2MtcHJvY2VlZC10by1jaGVja291dCB7XG5cbiAgICAgICAgICAuY2hlY2tvdXQtYnV0dG9uIHtcblxuICAgICAgICAgICAgLmJ0bi1yZWQtcGF5KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnF1YW50aXR5IHtcblxuICAgICAgLnF0eSB7XG4gICAgICAgIHdpZHRoOiAxLjVlbTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud29vY29tbWVyY2Uge1xuICAjY29udGVudCB7XG4gICAgdGFibGUge1xuICAgICAgJi5jYXJ0IHtcbiAgICAgICAgLnByb2R1Y3QtdGh1bWJuYWlsIHtcbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLndvb2NvbW1lcmNlIHtcbiAgdGFibGUge1xuICAgICYuY2FydCB7XG4gICAgICAucHJvZHVjdC10aHVtYm5haWwge1xuICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLndvb2NvbW1lcmNlLXBhZ2Uge1xuICAjY29udGVudCB7XG4gICAgdGFibGUge1xuICAgICAgJi5jYXJ0IHtcbiAgICAgICAgLnByb2R1Y3QtdGh1bWJuYWlsIHtcbiAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLndvb2NvbW1lcmNlLXBhZ2Uge1xuICB0YWJsZSB7XG4gICAgJi5jYXJ0IHtcbiAgICAgIC5wcm9kdWN0LXRodW1ibmFpbCB7XG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ud29vY29tbWVyY2UtZXJyb3Ige1xuICAmOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAwLjZlbTtcbiAgfVxufVxuLndvb2NvbW1lcmNlLWluZm8ge1xuICAmOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAwLjZlbTtcbiAgfVxufVxuLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICAmOjpiZWZvcmUge1xuICAgIHJpZ2h0OiAwLjZlbTtcbiAgfVxufVxuIiwiLyo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbj0gICAgICAgICAgICBzaG9wLmxlc3MgICAgICAgICA9XG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0qL1xuLndvb2NvbW1lcmNlLXBhZ2Uge1xuICBiYWNrZ3JvdW5kOiBAY29sb3Itd2hpdGU7XG59XG5cbiNwYWdlIHtcblxuICAjb3JkZXJfcmV2aWV3X2hlYWRpbmcge1xuICAgIGZvbnQtc2l6ZTogMS41NWVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgfVxuXG4gICNvcmRlcl9yZXZpZXcge1xuXG4gICAgLnNob3BfdGFibGUge1xuICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgIHRoZWFkIHtcbiAgICAgICAgdGgge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIGJhY2tncm91bmQ6IEBjb2xvci1ncmF5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgI3BheW1lbnQge1xuXG4gICAgICAucGF5LXdyYXBwZXIge1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIC5wYXkge1xuICAgICAgICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5wYXkge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMS45dmg7XG4gICAgICAgIGxlZnQ6IDIzdnc7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgbGVmdDogMXZ3O1xuICAgICAgICAgIHRvcDogMS41dmg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAgIC5idG4tcmVkLXBheSgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53b29jb21tZXJjZS1tZXNzYWdlIHtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItcmVkO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgfVxuXG4gICAgLmJ1dHRvbi53Yy1mb3J3YXJkIHtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICBmb250LXNpemU6IDEuMWVtO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgY29udGVudDogXCJcXGU5MGFcIjtcbiAgICAgICAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICAgICAgICBzcGVhazogbm9uZTtcbiAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLndvb2NvbW1lcmNlIHtcblxuICAgIC53b29jb21tZXJjZS1vcmRlcmluZyB7XG4gICAgICBzZWxlY3Qge1xuICAgICAgICAmOmFjdGl2ZSB7XG4gICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgICBvcHRpb24ge1xuICAgICAgICAgICAgY29sb3I6IEBjb2xvci10ZXh0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAud29vY29tbWVyY2UtYWNjb3VudCB7XG4gICAgLnBlcnNvbmFsLWFycmFuZ2VtZW50IHtcblxuICAgIH1cbiAgfVxuICAgIHVsLnByb2R1Y3RzIHtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cblxuICAgICAgbGkucHJvZHVjdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcblxuICAgICAgfVxuXG4gICAgICAgIC53b29jb21tZXJjZS1Mb29wUHJvZHVjdC1saW5rIHtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IEBjb2xvci1ibGFjaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBoMywgLndvb2NvbW1lcmNlLWxvb3AtcHJvZHVjdF9fdGl0bGUge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgLm9uZS1saW5lLXRleHQoKTtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAzNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICBjb2xvcjogQGNvbG9yLWJsYWNrO1xuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgICAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5zIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBkZWwge1xuICAgICAgICAgICAgICBtYXJnaW46IDAgNXB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItYmxhY2s7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgIGNvbG9yOiBAY29sb3ItYmxhY2s7XG4gICAgICAgICAgLy9wYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAudHJhbnNpdGlvbigpO1xuICAgICAgICAgIHBhZGRpbmc6IDAuNDVlbSAyLjFlbTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXJlZDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBpY29tb29uO1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTkwYSc7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAud29vY29tbWVyY2Utb3JkZXJpbmcsXG4gICAgLndvb2NvbW1lcmNlLXJlc3VsdC1jb3VudCB7XG4gICAgICBtYXJnaW46IDFlbSAwIDJlbTtcbiAgICAgIGZvbnQtc2l6ZTogMC44NWVtO1xuICAgIH1cbiAgICAud29vY29tbWVyY2UtcmVzdWx0LWNvdW50IHtcbiAgICAgIHBhZGRpbmctdG9wOiAwLjRlbTtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwLjFlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC8vICBzaGlwcGluZ1xuICAuY2hlY2tvdXQtZXh0cmEtaW5mbyB7XG4gICAgZm9udC1zaXplOiAxZW07XG4gIH1cbiAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAuc2VsZWN0Mi1zZWxlY3Rpb24tLXNpbmdsZSB7XG4gICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAuc2VsZWN0Mi1zZWxlY3Rpb25fX3JlbmRlcmVkIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMiAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzIHtcbiAgICBzcGFuIHtcbiAgICAgIHBhZGRpbmc6IDAgMzVweDtcbiAgICB9XG4gIH1cblxuICAud29vY29tbWVyY2UtY2hlY2tvdXQtcmV2aWV3LW9yZGVyLXRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgdGhlYWQge1xuICAgICAgdGgge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgYmFja2dyb3VuZDogQGNvbG9yLWdyYXk7XG5cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0Zm9vdCB7XG5cbiAgICAgIC5vcmRlci10b3RhbCB7XG4gICAgICAgIGJhY2tncm91bmQ6IEBjb2xvci13aGl0ZTtcbiAgICAgIH1cblxuICAgICAgdGgge1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYS53b29mX2Zyb250X3RvZ2dsZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbiAgLndvb2NvbW1lcmNlIGZvcm0ge1xuICAgIC5mb3JtLXJvdyBsYWJlbCB7XG4gICAgICAucmVxdWlyZWQge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4ud29vY29tbWVyY2UtcGFnZSB7XG4gIC53b29jb21tZXJjZSB7XG4gICAgdWwucHJvZHVjdHMge1xuICAgICAgbGkucHJvZHVjdCB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwIDAgM2VtIDA7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAgIHdpZHRoOiA0OCU7XG4gICAgICAgICAgaGVpZ2h0OiAyNGVtO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW46IDAgMSUgNi41ZW0gMSU7XG4gICAgICAgIH1cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgd2lkdGg6IDIyLjYlO1xuICAgICAgICAgIGhlaWdodDogMjRlbTtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgbWFyZ2luOiAwIDElIDQuNWVtIDElO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ucGFnZS10ZW1wbGF0ZS1kZWZhdWx0IHtcbiAgLndvb2NvbW1lcmNlIHtcbiAgICB1bC5wcm9kdWN0cyB7XG4gICAgICBsaS5wcm9kdWN0IHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW46IDAgMCAzZW0gMDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgd2lkdGg6IDQ4JTtcbiAgICAgICAgICBoZWlnaHQ6IDI0ZW07XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIG1hcmdpbjogMCAxJSA2LjVlbSAxJTtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICB3aWR0aDogMjIuNiU7XG4gICAgICAgICAgaGVpZ2h0OiAyNGVtO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW46IDAgMSUgNC41ZW0gMSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuICAucC1zdHJpcC1jdXN0b20ge1xuICAgIC53b29jb21tZXJjZSB7XG4gICAgICB1bC5wcm9kdWN0cyB7XG4gICAgICAgIGxpLnByb2R1Y3Qge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBtYXJnaW46IDAgMCAzZW0gMDtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgICAgICB3aWR0aDogNDglO1xuICAgICAgICAgICAgaGVpZ2h0OiAyNGVtO1xuICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgbWFyZ2luOiAwIDElIDYuNWVtIDElO1xuICAgICAgICAgIH1cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIHdpZHRoOiAyMi42JTtcbiAgICAgICAgICAgIGhlaWdodDogMTVlbTtcbiAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxJSA0LjVlbSAxJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4ucXVhbnRpdHktYnRuIHtcbiAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgd2lkdGg6IDJlbTtcbiAgaGVpZ2h0OiAyZW07XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaW5lLWhlaWdodDogMmVtO1xufVxuXG4ucHJvZHVjdC1xdWFudGl0eSB7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4ud2MtcHJvY2VlZC10by1jaGVja291dCB7XG4gIC5pY29uLWFycm93X2xlZnQ6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG59XG5cbi5xdWFudGl0eS13cmFwcGVyIHtcbiAgZGlyZWN0aW9uOiBsdHI7XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UtY2hlY2tvdXQge1xuICAjcGFnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXktbGlnaHQ7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLWNhcnQge1xuICAjcGFnZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXktbGlnaHQ7XG4gIH1cbn1cbi53b29jb21tZXJjZS1hY2NvdW50IHtcbiAgI3BhZ2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1ncmF5LWxpZ2h0O1xuICB9XG59XG4ud29vY29tbWVyY2Uge1xuICB1bC5wcm9kdWN0cyB7XG4gICAgbGkucHJvZHVjdCB7XG4gICAgICAub25zYWxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi53b29jb21tZXJjZSB7XG4gIHVsLnByb2R1Y3RzIHtcbiAgICBsaS5wcm9kdWN0IHtcbiAgICAgIHNwYW4ub25zYWxlIHtcbiAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgICB6LWluZGV4OiAyMDtcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgIGhlaWdodDogMi44ZW07XG4gICAgICAgIHdpZHRoOiAyLjhlbTtcbiAgICAgICAgbWluLWhlaWdodDogMi44ZW07XG4gICAgICAgIG1pbi13aWR0aDogMi44ZW07XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyLjRlbTtcbiAgICAgICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnNlYXJjaC1yZXN1bHRzIHtcbiAgdWwucHJvZHVjdHMge1xuICAgIGxpLnByb2R1Y3Qge1xuICAgICAgc3Bhbi5vbnNhbGUge1xuICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgIHotaW5kZXg6IDIwO1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiAyLjhlbTtcbiAgICAgICAgd2lkdGg6IDIuOGVtO1xuICAgICAgICBtaW4taGVpZ2h0OiAyLjhlbTtcbiAgICAgICAgbWluLXdpZHRoOiAyLjhlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuNGVtO1xuICAgICAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjZTJiMzA7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIHBhZGRpbmc6IC4yMDJlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRvcDogLS41ZW07XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi53b29jb21tZXJjZS1hY2NvdW50IHtcbiAgLmVudHJ5LWNvbnRuZXQge1xuICAgIC5uYXZiYXItZGVmYXVsdCB7XG4gICAgICBsaSB7XG4gICAgICAgICY+YSB7XG4gICAgICAgICAgcGFkZGluZzogNC41cHggMWVtO1xuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgcGFkZGluZzogNC41cHggMS4yZW07XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi53b29jb21tZXJjZSB7XG4gIGZvcm0ge1xuICAgIC5mb3JtLXJvdy1maXJzdCB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDQ3JSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgICAuZm9ybS1yb3ctbGFzdCB7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogNDclICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ud29vY29tbWVyY2UtcGFnZSB7XG4gICAgZm9ybSB7XG4gICAgICAuZm9ybS1yb3ctZmlyc3Qge1xuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgd2lkdGg6IDQ3JSAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuZm9ybS1yb3ctbGFzdCB7XG4gICAgICAgIGZsb2F0OiBub25lIWltcG9ydGFudCA7XG4gICAgICAgIHdpZHRoOiAxMDAlIWltcG9ydGFudDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbiAgICAgICAgICB3aWR0aDogNDclICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNpbmdsZS1wcm9kdWN0IHtcbiAgJi53b29jb21tZXJjZSB7XG4gICAgLnRleHQtdW5kZXJsaW5lIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGFibGUge1xuICAgICAgJi5zaG9wX2F0dHJpYnV0ZXMge1xuICAgICAgICBib3JkZXI6IDAgZG90dGVkIHJnYmEoMCwwLDAsLjEpO1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgYm9yZGVyOiAwIGRvdHRlZCByZ2JhKDAsMCwwLC4xKTtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuICAgICAgICB0ciB7XG4gICAgICAgICAgJjpudGgtY2hpbGQoZXZlbikge1xuICAgICAgICAgICAgdGQge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdHIge1xuICAgICAgICAgICY6bnRoLWNoaWxkKGV2ZW4pIHtcbiAgICAgICAgICAgIHRoIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoIHtcbiAgICAgICAgICBib3JkZXI6IDAgZG90dGVkIHJnYmEoMCwwLDAsLjEpO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jYmlsbGluZ19hZGRyZXNzXzFfZmllbGQge1xuICAgIGNsZWFyOiByaWdodDtcbn1cbiNzaGlwcGluZ19hZGRyZXNzXzFfZmllbGQge1xuICBjbGVhcjogcmlnaHQ7XG59XG5cbi53b29jb21tZXJjZS1jYXJ0IHtcbiAgLnF1YW50aXR5LXdyYXBwZXIge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIGZvcm0ge1xuICAuZm9ybS1yb3cud29vY29tbWVyY2UtdmFsaWRhdGVkIHtcbiAgICAuc2VsZWN0Mi1jb250YWluZXIge1xuICAgICAgYm9yZGVyLWNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIGlucHV0IHtcbiAgICAgICYuaW5wdXQtdGV4dCB7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci10ZXh0ICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICAgIHNlbGVjdCB7XG4gICAgICBib3JkZXItY29sb3I6IEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbnNlbGVjdCB7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuc2VsZWN0IHtcbiAgYm9yZGVyLXJhZGl1czogNXB4O1xuICBwYWRkaW5nOiAwLjVlbSAwLjVlbSAwLjVlbSAyZW07XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1ncmF5O1xuICBmb250LXNpemU6IDEuMmVtO1xufVxuLmFycm93LXdyYXBwZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMC41ZW07XG4gIGxlZnQ6IDEwcHg7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgZm9udC1zaXplOiAwLjhlbTtcbiAgY29sb3I6IEBjb2xvci10ZXh0O1xuICBoZWlnaHQ6IDIwcHg7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgYm90dG9tOiAwLjg1ZW07XG4gIH1cbn1cbi5maWx0ZXItb3BlbntcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgbGVmdDowO1xuICByaWdodDowO1xuICB0b3A6MDtcbiAgYm90dG9tOjA7XG4gIHdpZHRoOjEwMCU7XG4gIHotaW5kZXg6IDk5OTk7XG4gIGJhY2tncm91bmQ6IEBjb2xvci13aGl0ZTtcbiAgcGFkZGluZzogMWVtO1xuICBvdmVyZmxvdzogYXV0bztcbn1cbi53b29jb21tZXJjZSB7XG4gIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgIC1tb3otYXBwZWFyYW5jZTp0ZXh0ZmllbGQ7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIHtcbiAgc2VsZWN0IHtcbiAgICAmLm9yZGVyYnkge1xuICAgICAgcGFkZGluZzogMC41ZW0gMC41ZW0gMC41ZW0gMmVtO1xuICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC53b29jb21tZXJjZSB7XG4gICAgdGFibGUuc2hvcF90YWJsZV9yZXNwb25zaXZlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGQucHJvZHVjdC10aHVtYm5haWwge1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC53b29jb21tZXJjZS1wYWdlIHtcbiAgICB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUge1xuICAgICAgdHIge1xuICAgICAgICB0ZC5wcm9kdWN0LXRodW1ibmFpbCB7XG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlIHtcbiAgZm9ybSB7XG4gICAgLmZvcm0tcm93Lndvb2NvbW1lcmNlLWludmFsaWQge1xuICAgICAgLnNlbGVjdDItY29udGFpbmVyIHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXJlZDtcbiAgICAgIH1cbiAgICAgIGlucHV0LmlucHV0LXRleHQge1xuICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItcmVkO1xuICAgICAgfVxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXJlZDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi53b29jb21tZXJjZS1jaGVja291dCB7XG4gIC53b29jb21tZXJjZS1ub3RpY2Uge1xuICAgIG1hcmdpbjogMCAwIDEuMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICB9XG59XG5cbmxpIHtcbiAgJi5wcm9kdWN0IHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoaW1hZ2VzL1NhbGUtUE5HLnBuZyk7XG4gICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogODBweDtcbiAgICAgIGhlaWdodDogODBweDtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICByaWdodDogYXV0bztcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuLndvb2NvbW1lcmNlLXByb2R1Y3QtZ2FsbGVyeSB7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OicnO1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGltYWdlcy9TYWxlLVBORy5wbmcpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICBoZWlnaHQ6IDgwcHg7XG4gICAgICB0b3A6IDA7XG4gICAgICBsZWZ0OiAxMHB4O1xuICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG59IiwiLyoqKioqKioqKiBzaW5nbGUtcHJvZHVjdC5sZXNzKioqKioqKioqKiovXG5cbi53b29jb21tZXJjZSB7XG5cbiAgc3Bhbi5vbnNhbGUge1xuICAgIHJpZ2h0OiAwLjVlbTtcbiAgICBsZWZ0OiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogdGFibGU7XG4gICAgei1pbmRleDogMjA7XG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgaGVpZ2h0OiAyLjhlbTtcbiAgICB3aWR0aDogMi44ZW07XG4gICAgbWluLWhlaWdodDogMi44ZW07XG4gICAgbWluLXdpZHRoOiAyLjhlbTtcbiAgICBsaW5lLWhlaWdodDogMi40ZW07XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIG1hcmdpbjogMDtcbiAgfVxuXG4gICNjb250ZW50IHtcblxuICAgIC5wcm9kdWN0IHtcbiAgICAgIC53b29jb21tZXJjZS1wcm9kdWN0LWRldGFpbHNfX3Nob3J0LWRlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICB9XG4gICAgICAucHJvZHVjdF90aXRsZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMnB4O1xuICAgICAgfVxuICAgICAgLnN1bW1hcnkge1xuICAgICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtd2lkdGg6IG5vbmU7XG4gICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDQ4JTtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDI1cHg7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMmVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5pbWFnZXMge1xuICAgICAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG4gICAgICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdy1yZXZlcnNlO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWFyb3VuZDtcbiAgICAgICAgLnRodW1ibmFpbHMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB9XG5cbiAgICAgICAgaW1nIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgICAgLy9tYXJnaW46IDAgYXV0bztcbiAgICAgICAgfVxuICAgICAgICAud29vY29tbWVyY2UtcHJvZHVjdC1nYWxsZXJ5X190cmlnZ2VyIHtcbiAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB3aWR0aDogODAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIGxlZnQ6IGF1dG87XG4gICAgICAgICAgICByaWdodDogNC41ZW07XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmZsZXgtdmlld3BvcnQge1xuICAgICAgICAgIHdpZHRoOiA3NSVcbiAgICAgICAgfVxuICAgICAgICAuZmxleC1jb250cm9sLXRodW1icyB7XG4gICAgICAgICAgd2lkdGg6IDE1JTtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW46IDAgMCAyMHB4O1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICAgIC5xdWFudGl0eS1idG4ge1xuICAgICAgICB3aWR0aDogMmVtO1xuICAgICAgICBoZWlnaHQ6IDJlbTtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIuMWVtO1xuICAgICAgfVxuXG4gICAgICAucHJpY2Uge1xuICAgICAgICBjb2xvcjogQGNvbG9yLWJsYWNrO1xuICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICBtYXJnaW46IDAuNGVtIDA7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgbWFyZ2luOiAwLjFlbSAwO1xuICAgICAgICB9XG5cbiAgICAgICAgaW5zIHtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcblxuICAgICAgICAgIC53b29jb21tZXJjZS1QcmljZS1jdXJyZW5jeVN5bWJvbCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnN1bW1hcnkge1xuXG4gICAgICAgIC5wcm9kdWN0X21ldGEge1xuICAgICAgICAgIGNvbG9yOiBAY29sb3ItZ3JheS1kYXJrO1xuICAgICAgICAgIG1hcmdpbjogNnB4IDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIG1hcmdpbjogNnB4IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5jYXJ0IHtcblxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDE1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItcmVkO1xuICAgICAgICAgIC50cmFuc2l0aW9uKCk7XG5cbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAucXVhbnRpdHkge1xuICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgLnF0eSB7XG4gICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICB3aWR0aDogMmVtO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjRlbTtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjQ1ZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyLjVlbTtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjI1ZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjNlbTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnF1YW50aXR5LWxhYmVsIHtcbiAgICAgICAgICBjb2xvcjogQGNvbG9yLWdyYXktdGV4dDtcbiAgICAgICAgICBmb250LXNpemU6IDEuM2VtO1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA2cHg7XG4gICAgICAgIH1cbiAgICAgICAgLnNob3ctc2l6ZSB7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogNzUlO1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDhweCAwIDA7XG4gICAgICAgIH1cbiAgICAgICAgdGQge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIG1heC13aWR0aDogMzAwcHg7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgICAgICAgICAmLmxhYmVsIHtcbiAgICAgICAgICAgIGNvbG9yOiBAY29sb3ItZ3JheS10ZXh0O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAmID4gbGFiZWwge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnZhbHVlIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuYnV0dG9uIHtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICBtYXJnaW46IDMwcHggMCAwO1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggNTBweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnRodW1ibmFpbHMge1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZhcmlhdGlvbnMge1xuICAgIC52YWx1ZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBzZWxlY3Qge1xuICAgICAgICBtaW4td2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5hcnJvdy13cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IDEuNmVtO1xuICAgICAgICByaWdodDogOTAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLnNpbmdsZS1wcm9kdWN0IHtcbiAgLm1vZGFsLXNpemUge1xuICAgIC5jbG9zZSB7XG4gICAgICBmb250LXNpemU6IDEuOGVtO1xuICAgICAgY29sb3I6ICMxMTExMTE7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgIGZpbHRlcjogYWxwaGEob3BhY2l0eT0xMDApO1xuICAgICAgYmFja2dyb3VuZDogI2ZmZmZmZjtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAwIDAuNGVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuM2VtO1xuICAgICAgdG9wOiAtMjhweDtcbiAgICAgIHJpZ2h0OiAtMzlweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qKiAgY2hlY2sgb3V0Lmxlc3MgICoqL1xuLndvb2NvbW1lcmNlIHtcblxuICAuYmVmb3JlLWNoZWNrb3V0IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gIH1cblxuICBmb3JtLmxvZ2luIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICAgIG1hcmdpbjogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIHAubm8tb3ZlciB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9c3VibWl0XSB7XG4gICAgICAuYnRuLXJlZC1iZWZvcmUtY2hlY2tvdXQoKTtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIH1cblxuICAgIC5sb3N0X3Bhc3N3b3JkIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gIGZvcm0uY2hlY2tvdXRfY291cG9uIHtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIGZvcm0ge1xuXG4gICAgLmZvcm0tcm93IHtcblxuICAgICAgaW5wdXQuaW5wdXQtdGV4dCxcbiAgICAgIHRleHRhcmVhLmlucHV0LXRleHQge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1ncmF5O1xuICAgICAgICBsaW5lLWhlaWdodDogMi4yICFpbXBvcnRhbnQ7XG4gICAgICAgIHBhZGRpbmc6IDAgNXB4O1xuICAgICAgfVxuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xNWVtO1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuXG4gICAgICAgIC5yZXF1aXJlZCB7XG4gICAgICAgICAgY29sb3I6IEBjb2xvci1ibGFjaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC53b29jb21tZXJjZS1jaGVja291dC1wYXltZW50IHtcblxuICAgIC5idXR0b24ge1xuICAgICAgLmJ0bi1yZWQtZm9ybXMoKTtcbiAgICAgIGZsb2F0OiBsZWZ0ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG5cbiAgdGFibGUuc2hvcF90YWJsZSB7XG5cbiAgICB0ZCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgICB0ZC5wcm9kdWN0LW5hbWUge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgfVxuICB9XG5cbiAgLndvb2NvbW1lcmNlLWluZm8ge1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBtYXJnaW46IDAgMCAxZW0gIWltcG9ydGFudDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgIH1cblxuICAgIC5zaG93bG9naW4ge1xuICAgICAgLmJ0bi1ib3JkZXItcmVkLXN0b3JlKCk7XG4gICAgfVxuXG4gICAgLnNob3djb3Vwb24ge1xuICAgICAgLmJ0bi1ib3JkZXItcmVkLXN0b3JlKCk7XG4gICAgfVxuICB9XG5cbiAgLndvb2NvbW1lcmNlLWZvcm0tbG9naW4ge1xuXG4gICAgbGFiZWwge1xuICAgICAgZm9udC1zaXplOiAxLjFlbSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC5pbnB1dC10ZXh0IHtcbiAgICAgIGhlaWdodDogMzhweCAhaW1wb3J0YW50O1xuICAgIH1cblxuICAgIC53b29jb21tZXJjZS1mb3JtX19sYWJlbC1mb3ItY2hlY2tib3gge1xuICAgICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG5cbiAgICAgIC53b29jb21tZXJjZS1mb3JtX19pbnB1dC1jaGVja2JveCB7XG4gICAgICAgIGhlaWdodDogMjNweDtcbiAgICAgICAgd2lkdGg6IDIzcHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIC53b29jb21tZXJjZS1jaGVja291dCB7XG5cbiAgICAjY3VzdG9tZXJfZGV0YWlscyB7XG5cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cInRleHRcIl0ge1xuICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyB7XG5cbiAgICAgICNzaGlwLXRvLWRpZmZlcmVudC1hZGRyZXNzIHtcblxuICAgICAgICBsYWJlbCB7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLXNoaXBwaW5nLWZpZWxkcyB7XG4gIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgfVxufVxuXG4ud29vY29tbWVyY2Uge1xuICAud29vY29tbWVyY2UtY2hlY2tvdXRcbiAgI2N1c3RvbWVyX2RldGFpbHNcbiAgbGFiZWwge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIH1cbn1cblxuLnNvY2lhbHMtbGlzdCB7XG4gIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgIHdpZHRoOiAzOHB4O1xuICB9XG59XG5cbi55d3NsLXNvY2lhbCB7XG4gIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogOHB4O1xuICAgIHBhZGRpbmc6IDAgNHB4O1xuICAgIHdpZHRoOiAzOHB4O1xuICB9XG59XG5cbi53Yy1zb2NpYWwtbG9naW4ge1xuICAueXdzbC1sYWJlbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5zb2NpYWxzLWxpc3Qge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgfVxufVxuLndvb2NvbW1lcmNlLWNoZWNrb3V0IHtcbiAgLndvb2NvbW1lcmNlLWluZm8ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbn1cbi53b29jb21tZXJjZS1jaGVja291dCB7XG4gIC53b29jb21tZXJjZSB7XG4gICAgLmxvZ2luIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG4ud29vY29tbWVyY2UtY2hlY2tvdXQge1xuICAud29vY29tbWVyY2Uge1xuICAgIC5sb2dpbiB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIH1cbiAgfVxufVxuLndvb2NvbW1lcmNlIHtcbiAgICAuY29sLW1kLTcge1xuICAgICAgLndvb2NvbW1lcmNlLWZvcm0tbG9naW4ge1xuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxufVxuLndvb2NvbW1lcmNlIHtcbiAgLmNvbC1tZC03IHtcbiAgICAud29vY29tbWVyY2UtZm9ybS1sb2dpbiB7XG4gICAgICBtYXJnaW46IDE1cHggMCAyNXB4ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4ud29vY29tbWVyY2Uge1xuICAuY29sLW1kLTcge1xuICAgIC53b29jb21tZXJjZS1mb3JtLWxvZ2luIHtcbiAgICAgIC5mb3JtLXJvdy1maXJzdCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgcGFkZGluZzogMTBweCAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxufVxuLndvb2NvbW1lcmNlIHtcbiAgLmNvbC1tZC03IHtcbiAgICAud29vY29tbWVyY2UtZm9ybS1sb2dpbiB7XG4gICAgICAuZm9ybS1yb3ctbGFzdCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ud29vY29tbWVyY2Uge1xuICAuY29sLW1kLTcge1xuICAgIC53b29jb21tZXJjZS1mb3JtLWxvZ2luIHtcbiAgICAgIC53b29jb21tZXJjZS1mb3JtX19sYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW0gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi53b29jb21tZXJjZSB7XG4gIC5jb2wtbWQtNyB7XG4gICAgLndvb2NvbW1lcmNlLWZvcm0tbG9naW4ge1xuICAgICAgLmxvc3RfcGFzc3dvcmQge1xuICAgICAgICBmb250LXNpemU6IDAuOGVtICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ud29vY29tbWVyY2Uge1xuICAuY29sLW1kLTcge1xuICAgIC53b29jb21tZXJjZS1mb3JtLWxvZ2luIHtcbiAgICAgIC5sc3QtcHN3IHtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5zaG93LXl3c2wtYm94IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi53b29jb21tZXJjZS1jaGVja291dCB7XG4gIHAge1xuICAgICYud29vY29tbWVyY2UtaW5mbyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxufVxuLndvb2NvbW1lcmNlIHtcbiAgdWwub3JkZXJfZGV0YWlscyB7XG4gICAgbGkge1xuICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGJvcmRlci1sZWZ0OiAwIGRhc2hlZCAjZDNjZWQyO1xuICAgICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMDtcblxuICAgICAgfVxuICAgIH1cbiAgfVxufSIsIi8qPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG49ICAgICAgICAgICAgbXkgYWNjb3VudC5sZXNzICAgICAgICAgPVxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ki9cbiNwYWdlIHtcbiAgLndvb2NvbW1lcmNlIHtcbiAgICB0YWJsZSB7XG4gICAgICAucHJvZHVjdC1uYW1lIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIH1cbiAgICAgICYubXlfYWNjb3VudF9vcmRlcnMge1xuXG4gICAgICAgIHRoIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICB9XG5cbiAgICAgICAgdHIge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYuc2hvcF90YWJsZSB7XG5cbiAgICAgICAgdGgge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG5cbiAgICAgICAgdGQge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiB0b3AgIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMGVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgIH1cbiAgICAud29vY29tbWVyY2UtbG9naW4ge1xuXG4gICAgICAucmVnaXN0ZXIge1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuXG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwiZW1haWxcIl0ge1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAgICAgICAgIHBhZGRpbmc6IDdweCA0NXB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIH1cblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5sb2dpbiB7XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0ge1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjJweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5yZW1lbWJlci1tZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjdlbTtcblxuICAgICAgICAgIC53b29jb21tZXJjZS1JbnB1dC0tY2hlY2tib3gge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAubG9zdF9wYXNzd29yZCB7XG4gICAgICAgICAgZm9udC1zaXplOiAwLjg1ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAud29vY29tbWVyY2UtY3VzdG9tZXItZGV0YWlscyB7XG4gICAgICAvL2JhY2tncm91bmQ6IEBjb2xvci1ncmF5LWxpZ2h0O1xuICAgICAgaDIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDE1cHg7XG4gICAgICAgIC50aXRsZS11bmRlcmxpbmUtZnVsbCgpO1xuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgICB9XG4gICAgICBhZGRyZXNzIHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgIH1cbiAgICAgIHRhYmxlIHtcbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0cy1jYXRhbG9nIHtcbiAgICAgIC5wcm9kdWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMi4yZW07XG4gICAgICB9XG4gICAgICAud29vY29tbWVyY2UtbG9vcC1wcm9kdWN0X190aXRsZSB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICAgIHBhZGRpbmc6IC41ZW0gMCAwIDA7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGhlaWdodDogNGVtO1xuXG4gICAgICB9XG4gICAgICAudGh1bWJuYWlsIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgYm9yZGVyOiAwIHNvbGlkICNkZGRkZGQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICB9XG4gICAgICAucHJpY2Uge1xuICAgICAgICBjb2xvcjogQGNvbG9yLXRleHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBpbnMge1xuICAgICAgICAgIGJhY2tncm91bmQ6IGluaGVyaXQ7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idG4td2hpdGUge1xuICAgICAgICBjb2xvcjogQGNvbG9yLXRleHQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXRleHQ7XG4gICAgICAgIG1hcmdpbi10b3A6IDFlbTtcbiAgICAgICAgcGFkZGluZzogN3B4IDM1cHg7XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICAgICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXJlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVjdHMtY2F0YWxvZyB7XG4gICAgICAubW9kYWwge1xuICAgICAgICAubW9kYWwtaGVhZGVyIHtcbiAgICAgICAgICAuY2xvc2Uge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogM3B4O1xuICAgICAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzExMTExMTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwLjNlbSAwLjQ1ZW07XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaDEge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4xZW07XG4gICAgICAgIH1cbiAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICBmb250LXNpemU6IDEuNGVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDAuMWVtO1xuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW5zIHtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnByb2R1Y3QtZGVzY3JpcHRpb24ge1xuICAgICAgICAgIGNvbG9yOiBAY29sb3ItdGV4dDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1wO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIC1tb3otdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiByZWQ7IC8qIENvZGUgZm9yIEZpcmVmb3ggKi9cbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb24tY29sb3I6IHJlZDtcbiAgICAgICAgfVxuICAgICAgICBwIHtcbiAgICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgfVxuICAgICAgICAucHJvZHVjdC1za3Uge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5LWRhcms7XG4gICAgICAgIH1cbiAgICAgICAgaDIge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDAuM2VtO1xuICAgICAgICAgIGNvbG9yOiBAY29sb3ItdGV4dDtcbiAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogQGZvbnQtc2l6ZS1wO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICAgIC1tb3otdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBAY29sb3ItcmVkOyAvKiBDb2RlIGZvciBGaXJlZm94ICovXG4gICAgICAgICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgICB9XG4gICAgICAgIHRhYmxlLnNob3BfYXR0cmlidXRlcyB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4zZW07XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgdGgge1xuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICBjb2xvcjogQGNvbG9yLWdyYXktZGFyaztcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBjb2xvcjogQGNvbG9yLWdyYXktZGFyaztcbiAgICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICAgIHAge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBjb2xvcjogQGNvbG9yLWdyYXktZGFyaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnBlcnNvbmFsLWFycmFuZ2VtZW50IHtcbiAgICAgIHBhZGRpbmc6IDAgMS41ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAxLjVlbTtcbiAgICAgIC50aHVtYm5haWwge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICB9XG4gICAgICAuc2xpY2stYXJyb3cge1xuICAgICAgICB0b3A6IDEuM3Z3O1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIH1cbiAgICAgIC5zbGljay1wcmV2IHtcbiAgICAgICAgcmlnaHQ6IC0xZW07XG4gICAgICB9XG4gICAgICAuc2xpY2stbmV4dCB7XG4gICAgICAgIGxlZnQ6IC0xZW07XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB3aWR0aDogNDclO1xuICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMC4yZW07XG4gICAgICAgICAgaGVpZ2h0OiAzLjhlbTtcbiAgICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICB9XG4gICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgY29sb3I6IEBjb2xvci10ZXh0O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBpbnMge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogaW5oZXJpdDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5idG4td2hpdGUge1xuICAgICAgICAgIGNvbG9yOiBAY29sb3ItdGV4dDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItdGV4dDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwLjllbTtcbiAgICAgICAgICBwYWRkaW5nOiA1cHggMjBweDtcbiAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICAgICAgICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItcmVkO1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm15LWFjY291bnQtY29udGVudCB7XG4gICAgICAudGVtcC1vcmRlciB7XG4gICAgICAgIC5wcm9kdWN0LWNhcnQge1xuICAgICAgICAgIG1hcmdpbjogMmVtIDA7XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBtYXJnaW46IDAuNWVtIDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIHRhYmxlLnNob3BfdGFibGUge1xuICAgICAgICAgICAgdGFibGUtbGF5b3V0OiBmaXhlZDtcbiAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgIC5wcm9kdWN0LXRodW1ibmFpbCB7XG4gICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgdGhlYWQge1xuICAgICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0ZCB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMC44ZW0gMC43ZW0gMC41ZW07XG4gICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNkNGNjY2M7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgICAgICAuaWNvbi1jbG9zZSB7XG4gICAgICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICAgICAgY29udGVudDogXCJcXGU5MDdcIjtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnNpemVzIHtcbiAgICAgICAgICAgIC5kaXNwbGF5LWZsZXgoKTtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwO1xuICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gICAgICAgICAgICAuc2l6ZS13cmFwcGVyIHtcbiAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwMDAwMDA7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgQGNvbG9yLWdyYXktZGFyaztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCAjMDAwMDAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5xdWFudGl0eSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMmVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5xdWFudGl0eSAucXR5IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLnNpemUtaGVhZGVyIHtcbiAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzAwMDAwMDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZTVlNWU1O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAuNWVtIDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwIHNvbGlkICMwMDAwMDA7XG4gICAgICAgICAgICAgICAgYm9yZGVyLWxlZnQ6IDAgc29saWQgIzAwMDAwMDtcbiAgICAgICAgICAgICAgICBib3JkZXItdG9wOiAwIHNvbGlkICMwMDAwMDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLnF1YW50aXR5LXdyYXBwZXIge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwLjJlbSAxLjJlbTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuYXJyb3ctd3JhcHBlciB7XG4gICAgICAgICAgICBib3R0b206IDAuMmVtO1xuICAgICAgICAgIH1cbiAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC50b3Atc2VsZWN0IHtcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICAgICAgLmFycm93LXdyYXBwZXIge1xuICAgICAgICAgICAgbGVmdDogNDBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGxhYmVsLmNoZWNrYm94IHNwYW4ge1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xO1xuICAgICAgfVxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgJi5icmFuY2gge1xuICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAuMjdlbSAxZW0gMC4yN2VtIDFlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLm5hdmJhci1kZWZhdWx0IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC5uYXYtdGFicyB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgfVxuICBsaSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gICAgYmFja2dyb3VuZDogQGNvbG9yLWdyYXktbGlnaHQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4IDRweCAwIDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICB3aWR0aDogYXV0bztcbiAgICB9XG4gICAgJiA+IGEge1xuICAgICAgcGFkZGluZzogNC41cHggMy44ZW07XG4gICAgICBmb250LXNpemU6IDEuOGVtO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICB9XG4gICAgfVxuXG4gICAgJi5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgICAgICYgPiBhIHtcbiAgICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5teS1hY2NvdW50LWNvbnRlbnQge1xuICBiYWNrZ3JvdW5kOiBAY29sb3Itd2hpdGU7XG4gIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1ncmF5O1xuICBwYWRkaW5nOiAyMHB4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmc6IDUwcHg7XG4gIH1cblxuICBwIHtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuICB9XG5cbiAgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMge1xuXG4gICAgLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHNfX3RpdGxlIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxNXB4O1xuICAgICAgLnRpdGxlLXVuZGVybGluZS1mdWxsKCk7XG4gICAgfVxuICB9XG5cbiAgLmVkaXQtYWNjb3VudCB7XG5cbiAgICBsYWJlbCB7XG4gICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLWVkaXQtYWRkcmVzcyB7XG4gIC53b29jb21tZXJjZS1BZGRyZXNzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbiAgfVxuXG4gIC53b29jb21tZXJjZS1BZGRyZXNzLXRpdGxlIHtcbiAgICBwYWRkaW5nOiA4cHggMTVweDtcblxuICAgIGgzIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIH1cbiAgICAuYnRuLXJlZCB7XG4gICAgICBmb250LXNpemU6IDAuN2VtO1xuICAgIH1cbiAgfVxuICBhZGRyZXNzIHtcbiAgICBtaW4taGVpZ2h0OiAyNTBweDtcblxuICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgcGFkZGluZzogMTVweDtcbiAgfVxufVxuXG4ud29vY29tbWVyY2UtYWNjb3VudC1maWVsZHMge1xuICAuY3JlYXRlLWFjY291bnQge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbn1cblxubGFiZWwuY2hlY2tib3gge1xuICBzcGFuIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAzMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjA7XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLWxvZ2luIHtcbiAgJi5wYWRkaW5nLXgtbGcge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiAxNDAwcHgpIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDEwMHB4O1xuICAgICAgcGFkZGluZy1sZWZ0OiAxMjVweDtcbiAgICB9XG4gIH1cbiAgLnBhZGRpbmcteC1sZyB7XG4gICAgcGFkZGluZy1yaWdodDogMDtcbiAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDE0MDBweCkge1xuICAgICAgcGFkZGluZy1yaWdodDogMTAwcHg7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDEyNXB4O1xuICAgIH1cbiAgfVxufVxuXG4ud29vY29tbWVyY2UtbG9naW4ge1xuICBmb3JtIHtcbiAgICAuZm9ybS1yb3ctZmlyc3Qge1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgIC5mb3JtLXJvdy1sYXN0IHtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4jYWxsb2NhdGlvbi1mb3JtLW1vZGFsIHtcbiAgLmFsbG9jYXRpb24tZm9ybSB7XG4gICAgbGFiZWwge1xuICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG4gIH1cbiAgaDIge1xuICAgIGZvbnQtc2l6ZTogMi4wZW07XG4gIH1cbiAgLnJlcXVpcmVkLWZpZWxkcyB7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgfVxuICAubmV3c2xldHRlci1jaGVja2JveCB7XG4gICAgZm9udC1zaXplOiAwLjhlbTtcbiAgfVxuICAuZm9ybS1jb250cm9sIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgcGFkZGluZzogNnB4IDEycHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQyODU3MTQzO1xuICAgIGNvbG9yOiAjNTU1NTU1O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAwLjA3NSk7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgLXdlYmtpdC1ib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXM7XG4gICAgLW8tdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cztcbiAgICB0cmFuc2l0aW9uOiBib3JkZXItY29sb3IgZWFzZS1pbi1vdXQgLjE1cywgYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzO1xuICB9XG59XG5cbi53b29jb21tZXJjZS1FZGl0QWNjb3VudEZvcm0ge1xuICBmaWVsZHNldCB7XG4gICAgcGFkZGluZzogMCAxZW0gMy4zNWVtICFpbXBvcnRhbnQ7XG4gICAgbGVnZW5kIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICBjb2xvcjogIzMzMzMzMztcbiAgICAgIHBhZGRpbmc6IDAgMC41ZW07XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZzogMCA2LjVlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxubGFiZWwuY2hlY2tib3gge1xuICBpbnB1dCB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZy1yaWdodDogMmVtO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgaGVpZ2h0OiAyMHB4O1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjY2NjY2NjO1xuICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyIDAuMTVzIGVhc2UtaW4tb3V0LCBjb2xvciAwLjE1cyBlYXNlLWluLW91dDtcbiAgICAgIC1vLXRyYW5zaXRpb246IGJvcmRlciAwLjE1cyBlYXNlLWluLW91dCwgY29sb3IgMC4xNXMgZWFzZS1pbi1vdXQ7XG4gICAgICB0cmFuc2l0aW9uOiBib3JkZXIgMC4xNXMgZWFzZS1pbi1vdXQsIGNvbG9yIDAuMTVzIGVhc2UtaW4tb3V0O1xuICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICAgICYubGFyZ2Uge1xuICAgICAgbGluZS1oZWlnaHQ6IDEuMDtcbiAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOmNoZWNrZWQge1xuICAgICYgKyBzcGFuIHtcbiAgICAgICYubGFyZ2Uge1xuICAgICAgICAmOmFmdGVyIHtcblxuICAgICAgICAgIGZvbnQtc2l6ZTogMjBweDtcblxuICAgICAgICB9XG5cbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICAgICAgY29udGVudDogXCJcXGYwMGNcIjtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nLXRvcDogM3B4O1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHNfX3RpdGxlIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbiAgZm9udC1zaXplOiAxLjZlbTtcbn1cblxuLndvb2NvbW1lcmNlLW9yZGVyLWRldGFpbHMge1xuICAud29vY29tbWVyY2UtdGFibGVfX3Byb2R1Y3QtbmFtZSB7XG4gICAgYSB7XG4gICAgICBmb250LXdlaWdodDogNjAwO1xuICAgIH1cbiAgfVxuICAud29vY29tbWVyY2UtdGFibGUtLW9yZGVyLWRldGFpbHMge1xuICAgIC50b3RhbHMtb3JkZXJzIHtcbiAgICAgIHRyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXktbGlnaHQgIWltcG9ydGFudDtcbiAgICAgICAgLndvb2NvbW1lcmNlLVByaWNlLWFtb3VudCB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgICAgICAuc2hpcHBlZF92aWEge1xuICAgICAgICAgIGNvbG9yOiAjYjNiM2IzO1xuICAgICAgICB9XG4gICAgICAgIC5pbmNsdWRlc190YXgge1xuICAgICAgICAgIGNvbG9yOiAjYjNiM2IzO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50b3RhbHMtb3JkZXJzIHRoIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4xNWVtO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgdGZvb3QudG90YWxzLW9yZGVycyB0cjpsYXN0LWNoaWxkIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1ncmF5ICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIHtcbiAgICBoMiB7XG4gICAgICBmb250LXNpemU6IDEuNmVtO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgbWFyZ2luOiAxLjVlbSAwIDAgMDtcbiAgICB9XG4gICAgdGFibGUge1xuICAgICAgJi5zaG9wX3RhYmxlIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMCAtMXB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgfVxuICAgICAgdHIge1xuICAgICAgICB0aCB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjE1ZW07XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAud29vY29tbWVyY2UtY29sdW1ucy0tYWRkcmVzc2VzIHtcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkIHJnYmEoMCwgMCwgMCwgLjEpO1xuICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgIC53b29jb21tZXJjZS1jb2x1bW4tLWJpbGxpbmctYWRkcmVzcyB7XG4gICAgICAgIHBhZGRpbmc6IDlweCAxMnB4O1xuICAgICAgfVxuICAgICAgLndvb2NvbW1lcmNlLWNvbHVtbi0tc2hpcHBpbmctYWRkcmVzcyB7XG4gICAgICAgIHBhZGRpbmc6IDlweCAxMnB4O1xuICAgICAgfVxuICAgICAgaDMge1xuICAgICAgICBmb250LXNpemU6IDEuMjVlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG59XG5cbi5teS1hY2NvdW50LWNvbnRlbnQge1xuICAud29vY29tbWVyY2UtQWRkcmVzcy10aXRsZSB7XG4gICAgcGFkZGluZzogOXB4IDEycHg7XG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAxLjE1ZW07XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW1cbiAgICB9XG5cbiAgICAuYnRuLXJlZC1wZXJzb25hbCB7XG4gICAgICBjb2xvcjogQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBjbGVhcjogbm9uZTtcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuYnRuLXJlZC1wZXJzb25hbDpob3ZlciB7XG4gICAgICBjb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuICAud29vY29tbWVyY2UtQWRkcmVzcyB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmdiYSgwLCAwLCAwLCAuMSk7XG4gIH1cbiAgYWRkcmVzcyB7XG4gICAgcGFkZGluZzogOXB4IDEycHg7XG4gIH1cblxufVxuXG4ud29vY29tbWVyY2Uge1xuICAubXktYWNjb3VudC1jb250ZW50IHtcbiAgICAuc2hvcF90YWJsZV9yZXNwb25zaXZlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGQge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgICAgICAgIHBhZGRpbmc6IDhweCAwO1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4jcGFnZSB7XG4gIC53b29jb21tZXJjZSB7XG4gICAgLnByb2R1Y3RzLWNhdGFsb2cge1xuICAgICAgLm1vZGFsIHtcbiAgICAgICAgLmJ1c2luZXNzLWNhdGFsb2cge1xuICAgICAgICAgIHRhYmxlIHtcbiAgICAgICAgICAgICYuc2hvcF9hdHRyaWJ1dGVzIHtcbiAgICAgICAgICAgICAgdGgge1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBoMSB7XG4gICAgICAgICAgICBtYXJnaW46IDAuNGVtIDA7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgbWFyZ2luOiAwLjRlbSAwO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnByb2R1Y3Qtc2t1IHtcbiAgICAgICAgICAgIG1hcmdpbjogMC40ZW0gMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnByb2R1Y3QtZGVzY3JpcHRpb24ge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLmJ1c2luZXNzLWNhdGFsb2cge1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBoMSB7XG4gICAgICBtYXJnaW46IDAuMmVtIDA7XG4gICAgfVxuXG4gICAgLnByaWNlIHtcbiAgICAgIG1hcmdpbjogMC4yZW0gMDtcbiAgICB9XG5cbiAgICAucHJvZHVjdC1za3Uge1xuICAgICAgbWFyZ2luOiAwLjJlbSAwO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIGRvbmUgYnkgb3JlblxuI3BhZ2Uge1xuICAud29vY29tbWVyY2V7XG4gICAgLm15X2FjY291bnRfb3JkZXJze1xuICAgICAgdGQ6bm90KC53b29jb21tZXJjZS1vcmRlcnMtdGFibGVfX2NlbGwtb3JkZXItYWN0aW9ucykge1xuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnByb2R1Y3RzLWNhdGFsb2cge1xuICAubW9kYWwge1xuICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMCBzb2xpZCAjZTVlNWU1O1xuICAgIH1cbiAgICAuY2xvc2Uge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAzcHg7XG4gICAgICByaWdodDogNXB4O1xuICAgICAgei1pbmRleDogMTA7XG5cbiAgICB9XG4gIH1cbn1cblxuLnRsantcbiAgZm9udC1zaXplOiAxNHB4O1xufVxuLnNvY2lhbHMtbGlzdCB7XG4gIG1hcmdpbjogMC44ZW0gMDtcblxuICBpbWcge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgYS55d3NsLXNvY2lhbCB7XG4gICAgbWFyZ2luLXJpZ2h0OiA4cHg7XG5cbiAgfVxuICBhLnl3c2wtc29jaWFsLnl3c2wtZ29vZ2xlOmFmdGVyIHtcbiAgICBjb250ZW50OiAnR29vZ2xlJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgcGFkZGluZzogNXB4IDEycHg7XG4gICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1yZWQ7XG4gICAgd2lkdGg6IDExMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTQzMHB4KSBhbmQgKG1heC13aWR0aDogMTQ1MHB4KSB7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4XG4gICAgfVxuICB9XG4gIGEueXdzbC1zb2NpYWwueXdzbC1mYWNlYm9vazphZnRlciB7XG4gICAgY29udGVudDogJ0ZhY2Vib29rJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjM0I1OTk4O1xuICAgIHBhZGRpbmc6IDZweCAxMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICB9XG59XG5cbiNjdXN0b21lcl9sb2dpbiB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIC5ib3JkZXItbGVmdCB7XG4gICAgICBib3JkZXI6IDBcbiAgICB9XG4gIH1cbn1cblxuLmVtcC1vcmRlci13cmFwcGVyIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAyZW0gMDtcbn1cbi5lbXBsb3llZS1vcmRlci10ZW1wLCAuYWxsLW9yZGVyLXRlbXAge1xuICAudG9nZ2xlLWVtcCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB9XG4gIC5idG46Zm9jdXMge1xuICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgLmJ0bi5mb2N1cyB7XG4gICAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuLnNldC1vcmRlciB7XG4gIG91dGxpbmU6IG5vbmU7XG4gIG1hcmdpbi10b3A6IDA7XG4gIGZsb2F0OiBub25lO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgfVxufVxuLmJ0bi13aGl0ZSB7XG4gICYuc2V0LWVtcGxveWVlLW9yZGVyIHtcbiAgICBwYWRkaW5nOiA3cHggMTJweDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tO1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgICAgbWFyZ2luOiAxZW07XG4gICAgfVxuICB9XG4gICYuc2F2ZS1lbXBsb3llZS1vcmRlciB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIG1hcmdpbjogMWVtO1xuICAgIH1cbiAgfVxufVxuLm9yZGVyLWN1cnJlbnQtZW1wbG95ZWUge1xuICAub3Blbi1lbXBsb3llZS1vcmRlciB7XG4gICAgcGFkZGluZzogN3B4IDEycHg7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgICAgIG1hcmdpbjogMWVtO1xuICAgIH1cbiAgfVxuICAuY2xvc2UtZW1wbG95ZWUtb3JkZXIge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MXB4KSB7XG4gICAgICBtYXJnaW46IDFlbTtcbiAgICB9XG4gIH1cbn1cbi5lbXBsb3llZS1vcmRlci10ZW1wLCAuZW1wLWl0ZW1zIHtcbm1hcmdpbi10b3A6IDYwcHg7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA5OTFweCkge1xuICAgIG1hcmdpbi1yaWdodDogMCAhaW1wb3J0YW50O1xuICB9XG59XG4ub3JkZXItY3VycmVudC1lbXBsb3llZSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgYm9yZGVyOiAwIHNvbGlkICNjY2NjY2M7XG4gICAgLXdlYmtpdC1ib3gtc2hhZG93OiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMTJweDtcbiAgfVxuICBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuICBzZWxlY3Qge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDQwcHg7XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE0cHg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIGZvbnQtc2l6ZTogMS4zZW07XG4gICAgfVxuICB9XG4gIHRleHRhcmVhIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgY29sb3I6IEBjb2xvci10ZXh0O1xuICAgIGhlaWdodDogODBweDtcbiAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxNHB4O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbiAgICBmb250LXdlaWdodDogMzAwO1xuICAgIHJlc2l6ZTogbm9uZTtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICB9XG4gIH1cbiAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgZm9udC1zaXplOiAxLjJlbTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgfVxuICAgICY6Zm9jdXMsXG4gICAgOmFjdGl2ZSB7XG4gICAgICBvdXRsaW5lOiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4ud29vY29tbWVyY2Uge1xuICAuZW1wLW9yZGVyLXdyYXBwZXIge1xuICAgIC5zaXplcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgLnNpemUtd3JhcHBlciB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEuMmVtO1xuICAgICAgICAuc2l6ZS1oZWFkZXIge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItZ3JheTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBwYWRkaW5nOiAycHggMTJweDtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgQGNvbG9yLWdyYXktZGFyaztcbiAgICAgICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBAY29sb3ItZ3JheS1kYXJrO1xuICAgICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgQGNvbG9yLWdyYXktZGFyaztcbiAgICAgICAgfVxuICAgICAgICAucXVhbnRpdHktd3JhcHBlciB7XG4gICAgICAgICAgLnF0eSB7XG4gICAgICAgICAgICB3aWR0aDogNS41ZW07XG4gICAgICAgICAgICBwYWRkaW5nOiAycHggMTJweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1ncmF5LWRhcms7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4jcGFnZSB7XG4gIC53b29jb21tZXJjZSB7XG4gICAgdGFibGUge1xuICAgICAgJi5zaG9wX3RhYmxlIHtcbiAgICAgICAgdGgge1xuICAgICAgICAgICYud29vY29tbWVyY2Utb3JkZXJzLXRhYmxlX19oZWFkZXIge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuI3BhZ2Uge1xuICAud29vY29tbWVyY2Uge1xuICAgIC53b29jb21tZXJjZS1jdXN0b21lci1kZXRhaWxzIHtcbiAgICAgIGgyIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMCBzb2xpZCAjY2UyYjMwO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgfVxuICAgICAgLndvb2NvbW1lcmNlLXRhYmxlLS1jdXN0b21lci1kZXRhaWxzIHtcbiAgICAgICAgdGQge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIHBhZGRpbmc6IDExcHggMTJweDtcbiAgICAgICAgfVxuICAgICAgICB0aCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuI3BhZ2Uge1xuICAud29vY29tbWVyY2Uge1xuICAgIC53b29jb21tZXJjZS1vcmRlci1kZXRhaWxzIHtcbiAgICAgIC53b29jb21tZXJjZS10YWJsZS0tb3JkZXItZGV0YWlscyB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICBwYWRkaW5nOiAxMXB4IDEycHg7XG4gICAgICAgIH1cbiAgICAgICAgdGgge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgJi53b29jb21tZXJjZS10YWJsZV9fcHJvZHVjdC1uYW1lIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLndvb2NvbW1lcmNlLXRhYmxlX19wcm9kdWN0LXRhYmxlIHtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgfVxuICB9XG59XG4ud29vY29tbWVyY2Utb3JkZXItcmVjZWl2ZWQge1xuICAud29vY29tbWVyY2Utb3JkZXItZGV0YWlscyB7XG4gICAgLndvb2NvbW1lcmNlLXRhYmxlLS1vcmRlci1kZXRhaWxzIHtcbiAgICAgIHRib2R5IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uYnRuLXJlZC1wZXJzb25hbCB7XG4gIG91dGxpbmU6IG5vbmU7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLndvb2NvbW1lcmNlLXBhZ2Uge1xuICAgIC53b29jb21tZXJjZS1pbmZvIHtcbiAgICAgIHBhZGRpbmc6IDFlbSAyZW0gMWVtIDJlbTtcbiAgICAgIC5idXR0b24ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLndvb2NvbW1lcmNlLW1lc3NhZ2Uge1xuICAgICAgcGFkZGluZzogMWVtIDJlbSAxZW0gMmVtO1xuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gIC53b29jb21tZXJjZS12aWV3LW9yZGVyIHtcbiAgICB0YWJsZS53b29jb21tZXJjZS10YWJsZS0tb3JkZXItZGV0YWlscyB7XG4gICAgICB0ciB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgIHRoIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hZGQtZW1wbG95ZWUtb3JkZXIge1xuICBib3JkZXI6IG5vbmU7XG4gIGNvbG9yOiBAY29sb3ItcmVkO1xuICBmb250LXNpemU6IDEuMmVtO1xuICBvdXRsaW5lOiBub25lO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gIG1hcmdpbi10b3A6IDAuOGVtO1xuICBpIHtcbiAgICBiYWNrZ3JvdW5kOiBAY29sb3ItcmVkO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgaGVpZ2h0OiAyLjJlbTtcbiAgICB3aWR0aDogMi4yZW07XG4gICAgbGluZS1oZWlnaHQ6IDIuM2VtO1xuICB9XG59XG4uZW1wbG95ZWUtb3JkZXItaXRlbXMtZXJyb3Ige1xuICBtYXJnaW46IDMwcHg7XG4gIGNvbG9yOiBAY29sb3ItcmVkO1xufVxuLm9yZGVyLWN1cnJlbnQtZW1wbG95ZWUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC5lcnJvciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDIwcHg7XG4gICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogYXV0bztcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgcGFkZGluZy1yaWdodDogNnB4O1xuICAgIH1cbiAgfVxufVxuXG4uc2lkdXItbGFibGVzIHtcbiAgcGFkZGluZy1sZWZ0OiAwLjVlbTtcbiAgZm9udC1zaXplOiAxLjJlbTtcbn1cbi53b29jb21tZXJjZSB7XG4gIC5teS1hY2NvdW50LWNvbnRlbnQge1xuICAgIHNlbGVjdCB7XG4gICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIH1cbiAgICAuYXJyb3ctd3JhcHBlciB7XG4gICAgICBib3R0b206IDAuNjVlbTtcbiAgICB9XG4gIH1cbn1cblxuLnVwbG9hZC1vcmRlci1maWxlIHtcbiAgLmlucHV0LWdyb3VwIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuICAuYnRuLWRhbmdlciB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuICAuYnRuLWluZm8ge1xuICAgIGNvbG9yOiAjZmZmZmZmO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgYm9yZGVyLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgb3V0bGluZTogMDtcbiAgICB9XG4gIH1cbiAgLmJ0bi1yZWQtc2VuZCB7XG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG5cbiAgICB9XG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgb3V0bGluZTogMDtcbiAgICAgIGNvbG9yOiAjZmZmZmZmICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1yYWRpdXM6IDAgNXB4IDVweCAwO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZWQ7XG4gICAgd2lkdGg6IDE1MHB4O1xuICB9XG4gIC5ncm91cC1zcGFuLWZpbGVzdHlsZSB7XG4gICAgbGFiZWwge1xuICAgICAgc3BhbiB7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDVweCAwIDAgNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuZmlsZW5hbWUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3b3JkLWJyZWFrOiBicmVhay1hbGw7XG4gICAgd2lkdGg6IDgwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxufVxuXG4iLCIvKiBjb250YWN0LXBhZ2UubGVzcyAqL1xuLnBhZ2UtdGVtcGxhdGUtcGFnZS1jb250YWN0IHtcbiAgI2JyZWFkY3J1bWJzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItZ3JheS1saWdodDtcbiAgfVxufVxuXG4uY29udGFjdC1zZWN0aW9uIHtcblxuICAuY29udGFjdC1mb3JtLW1haW4ge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLmNvbnRhY3QtaW5mbyB7XG5cbiAgICAuY29udGFjdC10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNi4zdmg7XG5cbiAgICAgIC5mb250LTYwMCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG4gICAgICB9XG5cbiAgICAgIC5jb2xvci1ncmF5LWRhcmsge1xuICAgICAgICBmb250LXNpemU6IDEuMWVtO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5jb250YWN0LWljb24ge1xuICAgICAgZm9udC1zaXplOiA0MHB4O1xuICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgLnRyYW5zaXRpb24oKTtcblxuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMi44ZW07XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgyMGRlZyk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNvY2lhbC10aXRsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAuc29jaWFsLWljb24ge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC50cmFuc2l0aW9uKCk7XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gICAgfVxuXG4gIH1cbiAgLmFycm93LXdyYXBwZXIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDAuNWVtO1xuICAgIGxlZnQ6IDEycHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgY29sb3I6IEBjb2xvci1ncmF5LWRhcms7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICB9XG59XG5cbi5tYXAtd3JhcHBlciB7XG4gIGhlaWdodDogMjAwcHg7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGhlaWdodDogMzQuNXZ3O1xuICB9XG4gICNtYXAge1xuICAgIGhlaWdodDogMTAwJTtcbiAgfVxufVxuXG5cbi5jb250YWN0LWluZm8ge1xuICBhIHtcbiAgICAmLmZhY2Vib29rIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICBjb2xvcjogQGNvbG9yLWdyYXktZGFyaztcbiAgICB9XG4gICAgJi5nb29nbGUtcGx1cyB7XG4gICAgICBtYXJnaW46IDAgMS41ZW07XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIGNvbG9yOiBAY29sb3ItZ3JheS1kYXJrO1xuICAgIH1cbiAgICAmLnlvdXR1YmUge1xuICAgICAgZm9udC1zaXplOiAxLjFlbTtcbiAgICAgIGNvbG9yOiBAY29sb3ItZ3JheS1kYXJrO1xuICAgIH1cbiAgfVxufVxuXG5cbi8qIEVORCBjb250YWN0LXBhZ2UubGVzcyAqL1xuXG5cblxuXG5cblxuXG4iLCIvKiBhYm91dC5sZXNzICovXG5cbi8vYmVuZWZpdCBzZWN0aW9uXG4uYmVuZWZpdHMtd3JhcHBlciB7XG4gIHBhZGRpbmctdG9wOiAzLjN2dztcbiAgcGFkZGluZy1ib3R0b206IDQuM3Z3O1xufVxuXG4uYmVuZWZpdC1jb250ZW50IHtcbiAgcGFkZGluZy1yaWdodDogMC42dnc7XG4gIHBhZGRpbmctbGVmdDogMC42dnc7XG59XG5cbi5iZW5lZml0IHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cbn1cblxuLmJlbmVmaXQtdGl0bGUge1xuICBmb250LXNpemU6IDEuNWVtO1xuICBmb250LXdlaWdodDogMzAwO1xuXG59XG5cbi5iZW5lZml0LWltZyB7XG4gIHBhZGRpbmctYm90dG9tOiAxLjVlbTtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZy1ib3R0b206IDEuNWVtO1xuICB9XG59XG5cbi5hYm91dC1zZWN0aW9ucyB7XG4gIHBhZGRpbmctdG9wOiAyLjZ2dztcbiAgcGFkZGluZy1ib3R0b206IDIuNnZ3O1xuICAuYWJvdXQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cbiAgLmFib3V0LXN1Yi10ZXh0IHtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHBhZGRpbmctcmlnaHQ6IDF2dztcbiAgICBwYWRkaW5nLWxlZnQ6IDF2dztcbiAgfVxufVxuXG4ucm93LXRpdGxlIHtcbiAgbWluLWhlaWdodDogMTkuOHZ3O1xuICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgZGlzcGxheTogLW1vei1ib3g7XG4gIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cbi50ZWFtLW1lbWJlciB7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQgIWltcG9ydGFudDtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIHRvcCAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW4gIWltcG9ydGFudDtcbiAgaGVpZ2h0OiAzMDBweCAhaW1wb3J0YW50O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICAudGVhbS1tZW1iZXItdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGhlaWdodDogaW5oZXJpdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4OztcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICB3aWR0aDogNTAlO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgLm1lbWJlci10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwLjh2dztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjA2LCA0MywgNDgsIDAuNjgpO1xuICAgIH1cbiAgICAubWVtYmVyLXRleHQge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDIwNiwgNDMsIDQ4LCAwLjY4KTtcbiAgICB9XG4gICAgLnRleHQtdW5kZXJsaW5lIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLXRvcDogMC44dnc7XG4gICAgICAgIHdpZHRoOiA0MCU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGhlaWdodDogMTkuOHZ3ICFpbXBvcnRhbnQ7XG4gIC50ZWFtLW1lbWJlci10ZXh0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgaGVpZ2h0OiBpbmhlcml0O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3R0b206IC0xMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMjA2LCA0MywgNDgsIDAuNjgpO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4OztcbiAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC50cmFuc2l0aW9uO1xuICAgIC5tZW1iZXItdGl0bGUge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAwLjh2dztcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIH1cbiAgICAudGV4dC11bmRlcmxpbmUge1xuICAgICAgJjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICAgICAgICBtYXJnaW4tdG9wOiAwLjh2dztcbiAgICAgICAgd2lkdGg6IDQwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1lbWJlci10ZXh0IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgfVxuICB9XG4gICY6aG92ZXIge1xuICAgIC50ZWFtLW1lbWJlci10ZXh0IHtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIC50cmFuc2l0aW9uO1xuICAgIH1cbiAgfVxuICB9XG59XG5cbi5zbGljay1uZXh0IHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB0b3A6IDQwJTtcbiAgb3V0bGluZTogbm9uZTtcbiAgZm9udC1zaXplOiAwLjVlbTtcbiAgaSB7XG4gICAgZm9udC1zaXplOiA1LjJlbTtcblxuICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICB9XG59XG5cbi5zbGljay1wcmV2IHtcbiAgYm9yZGVyOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiA0MCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHotaW5kZXg6IDk5O1xuICBmb250LXNpemU6IDAuNWVtO1xuICBpIHtcbiAgICBmb250LXNpemU6IDUuMmVtO1xuXG4gICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gIH1cbn1cblxuLnNsaWNrLWRvdHMge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLXRvcDogMzBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgbGkge1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICY6YmVmb3JlIHtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICB3aWR0aDogMTVweDtcbiAgICAgIGhlaWdodDogMTVweDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItcmVkO1xuICAgIH1cbiAgICBidXR0b24ge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gICAgJi5zbGljay1hY3RpdmUge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmFib3V0LXNlcnZpY2VzLXNsaWRlciB7XG4gIC5zbGljay1kb3RzIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gIH1cbiAgLnNsaWNrLXNsaWRlIHtcbiAgICBpbWcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICB9XG4gIH1cbn1cbi5hYm91dC10ZWFtIHtcbiAgLnRpdGxlLXVuZGVybGluZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxuICAudGVhbS1tZW1iZXJzLXNsaWRlciB7XG4gICAgLnNsaWNrLXByZXYge1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcmlnaHQ6IC0xNXB4O1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGxlZnQ6IC0yMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBlbmQgYWJvdXQubGVzcyAqL1xuXG5cblxuXG4iLCIvKiBmaWxlIG5hbWUgdGhhbmsteW91Lmxlc3MgKi9cblxuLnRoYW5rLXlvdSB7XG4gIG1pbi1oZWlnaHQ6IDg0dmg7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChodHRwOi8vc2FuZGJveC5zb2dvLmNvLmlsL3dvcmtlci93cC1jb250ZW50L3RoZW1lcy9zb2dvLWNoaWxkL2ltYWdlcy9waG90bzEtdGhhbmsyLmpwZyk7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgdG9wO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG59XG4udGhhbmsteW91LWNvbnRlbnQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB0b3A6IDQ1dnc7XG4gIHdpZHRoOiAxMDAlO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICB0b3A6IDE3dnc7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgdG9wOiAxMHZ3O1xuICAgIHdpZHRoOiA4NXZ3O1xuICB9XG59IiwiLyogZnJvbnRwYWdlLmxlc3MgKi9cblxuLmNhdGVnb3JpZXMtc2VjdGlvbiB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLmNhdGVnb3J5LXNsaWRlci13cmFwcGVyIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgaW1nIHtcbiAgICAgIC50cmFuc2l0aW9uKCk7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcblxuICAgICAgaW1nIHtcbiAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICB9XG5cbiAgICAuY2F0ZWdvcnktdGl0bGUtd3JhcHBlciB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDkuOWVtO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIHBhZGRpbmc6IDI1cHggMDtcbiAgICB9XG4gIH1cbn1cblxuLm91ci1jbGllbnRzIHtcblxuICAub3VyLWNsaWVudHMtc2xpZGVyIHtcblxuICAgIC5jbGllbnQtaW1hZ2Utd3JhcHBlciB7XG4gICAgICBwYWRkaW5nLXRvcDogMzBweDtcbiAgICB9XG5cbiAgICAuc2xpY2stcHJldiB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgdG9wOiA0MCU7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgei1pbmRleDogOTk7XG4gICAgICBmb250LXNpemU6IDAuNWVtO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHRvcDogNDAlO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0b3A6IDQwJTtcbiAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICBmb250LXNpemU6IDAuNWVtO1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIHRvcDogNDAlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ucHJpY2Utb2ZmZXItc3RyaXBlIHtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIEBjb2xvci1yZWQ7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAY29sb3ItcmVkO1xuICBoZWlnaHQ6IGF1dG87XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIC8vaGVpZ2h0OiAyNjVweDtcbiAgICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItcmVkO1xuICB9XG59XG5cbi5qb2luLWNsdWItc3RyaXBlIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBkaXNwbGF5OiBibG9jaztcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgLy9oZWlnaHQ6IDI4NXB4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAtd2Via2l0LWFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1cbn1cblxuLnAtc3RyaXAtY3VzdG9tIHtcbiAgaGVpZ2h0OiBhdXRvO1xuICBwIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgbWFyZ2luLWJvdHRvbTogMS4yZW07XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgaGVpZ2h0OiAyMi41ZW07XG4gICAgdGV4dC1hbGlnbjogaW5oZXJpdDtcbiAgfVxuICAudGl0bGUtdW5kZXJsaW5lIHtcbiAgICBmb250LXNpemU6IDEuN2VtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZm9udC1zaXplOiAyLjU1ZW07XG4gICAgfVxuICB9XG59XG5cbi5jYXQtYXJ0LXNlY3Rpb24ge1xuXG4gIC5ib3JkZXItYm94IHtcblxuICAgIC5kaXNwbGF5LWJsb2NrIHtcbiAgICAgIHBhZGRpbmc6IDAgMi42ZW07XG4gICAgfVxuICB9XG59XG5cbi52aWRlby13cmFwcGVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IDYwMHB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHotaW5kZXg6IDEwMDAxO1xuICB0b3A6IDA7XG4gIC52aWRlby1jbG9zZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMTJweDtcbiAgICByaWdodDogMTJweDtcbiAgICB6LWluZGV4OiAxMDAwMjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAuZmEtdGltZXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgIGhlaWdodDogMS43ZW07XG4gICAgICB3aWR0aDogMS43ZW07XG4gICAgICBsaW5lLWhlaWdodDogMS43ZW07XG4gICAgfVxuICB9XG4gIHZpZGVvIHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG59XG5cbi5yZWxhdGVkIHtcbiAgJi5wcm9kdWN0cyB7XG4gICAgaDIge1xuICAgICAgd2hpdGUtc3BhY2U6IG5vcm1hbDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gIH1cbn1cblxuLmNhdGVnb3JpZXMtc2xpZGVyIHtcbiAgLnNsaWNrLWRvdHMge1xuICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgfVxufVxuLm1vYmlsZS1wcm9kdWN0LXNsaWRlciB7XG4gIC5wcm9kdWN0cyB7XG4gICAgbGkge1xuICAgICAgbWFyZ2luOiAwIDAgM2VtIDAgIWltcG9ydGFudDtcbiAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgY2xlYXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbn1cbi5xdW90ZS1mb3JtLW9wZW46YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgbGVmdDogMDtcbiAgYm90dG9tOiAwO1xuICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNSk7XG4gIHotaW5kZXg6IDEwNDk7XG59XG5cbi8qIEVORCBmcm9udHBhZ2UubGVzcyAqL1xuXG4iLCIvKiA0MDQubGVzcyAqL1xuXG4uc2VjdGlvbi00MDQge1xuXG59XG5cblxuLmJ0bi1iYWNrLWhvbWUge1xuICAvL2Rpc3BsYXk6IGJsb2NrO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGJvdHRvbTogMjV2aDtcblxuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgcGFkZGluZzogNXB4IDI1cHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXI6IDJweCBzb2xpZCAjZmZmO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIC50cmFuc2l0aW9uO1xuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXJlZDtcbiAgICAudHJhbnNpdGlvbjtcbiAgfVxufVxuXG4vKiBlbmQgNDA0Lmxlc3MgKi8iLCIvKiogY29udGVudC1leGNlcnB0Lmxlc3MqKi9cblxuLmFydGljbGVzLWhvbWUge1xuICAubWV0YSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIHBhZGRpbmc6IDAgNHZoO1xuICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgfVxufVxuXG4uY2F0ZWdvcmllcy1uYXYge1xuICB1bCB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgIC5jdXJyZW50LWNhdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjY2UyYjMwO1xuXG4gICAgICBhIHtcbiAgICAgICAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGdyYXk7XG4gICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNXB4O1xuICAgICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNXB4O1xuICAgICAgcGFkZGluZzogMTJweCA2MHB4O1xuICAgICAgLnRyYW5zaXRpb24oKTtcblxuICAgICAgJjpob3ZlciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjZTJiMzA7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4uaW1hZ2Utd3JhcHBlciB7XG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmFydGljbGUtdGV4dC13cmFwcGVyIHtcbiAgcCB7XG4gICAgcGFkZGluZzogMCAyMHB4O1xuICAgIG1heC1oZWlnaHQ6IDkuNnZoO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cbn0iLCIvKiogc2luZ2xlLmxlc3MgKiovXG5cbi5leGNlcnB0IHtcbiAgcCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyO1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICB9XG4gIH1cbn1cbi5zaW5nbGUtc2VjdGlvbiB7XG5cbiAgLnNvY2lhbC1zaGFyZSB7XG5cbiAgICB1bCB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZTtcblxuICAgICAgICBpIHtcbiAgICAgICAgICBwYWRkaW5nOiA4cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbi5zaWRlYmFyIHtcbiAgcGFkZGluZy10b3A6IDE4cHg7XG4gIC5zaWRlYmFyLWNvbnRlbnQge1xuICAgIGZsb2F0OiByaWdodDtcbiAgICBtYXJnaW4tbGVmdDogMiU7XG4gICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICB3aWR0aDogNjglO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDIlO1xuICAgICAgdGV4dC1hbGlnbjpyaWdodDtcbiAgICAgIHdpZHRoOiA2OCU7XG4gICAgfVxuICB9XG4gIC5zaWRlYmFyLXRodW1iIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMzAlO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogMzAlO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICAud2lkZ2V0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZzogMzVweCAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXktbGlnaHQ7XG4gICAgdWwge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyNXB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucmVjZW50LXBvc3RzLTIge1xuXG4gICAgdWwge1xuXG4gICAgICBsaSB7XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLmFydGljbGUge1xuICAubWV0YSB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gIH1cbn1cbi5zaW5nbGUtcG9zdCB7XG4gICNicmVhZGNydW1icyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXktbGlnaHQ7XG4gIH1cbn1cblxuLmFkZHRvYW55X3Nob3J0Y29kZSB7XG4gIC5hMmFfYnV0dG9uX2ZhY2Vib29rIHtcbiAgICAuYTJhX3N2ZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5hMmFfYnV0dG9uX2VtYWlsIHtcbiAgICAuYTJhX3N2ZyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gICAgICBjb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5hMmFfYnV0dG9uX3R3aXR0ZXIge1xuICAgIC5hMmFfc3ZnIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLmEyYV9idXR0b25fbGlua2VkaW4ge1xuICAgIC5hMmFfc3ZnIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQgIWltcG9ydGFudDtcbiAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgc3ZnIHtcbiAgICBwYXRoIHtcbiAgICAgIGZpbGw6IEBjb2xvci13aGl0ZTtcbiAgICB9XG4gIH1cblxufVxuIiwiLyoqICBxYW5kYS5sZXMgICoqL1xuXG4uY29sbGFwc2UtYnRuIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogd2hpdGU7XG4gIHBhZGRpbmc6IDZweCA2cHg7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLWxlZnQ6IDI1cHg7XG4gIG91dGxpbmU6IG5vbmU7XG4gICY6YmVmb3JlIHtcbiAgICBmb250LWZhbWlseTogaWNvbW9vbjtcbiAgICBjb250ZW50OiAnXFxlOTEwJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDJweDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICB9XG59XG4uY29sbGFwc2VkIHtcblxuICAmOmJlZm9yZSB7XG4gICAgZm9udC1mYW1pbHk6IGljb21vb247XG4gICAgY29udGVudDogJ1xcZTkxMSc7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4cHg7XG4gICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgfVxufVxuLnFhbmRhLXdyYXBwZXIge1xuICAmLnBhZGRpbmcteS1tZDMge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA3NjdweCkge1xuICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cbiAgcCB7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBmb250LXNpemU6IDFlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBwYWRkaW5nLXRvcDogMTBweDtcbiAgICB9XG4gIH1cbiAgc3Bhbi5ib2xkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxMHB4O1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59IiwiLyoqIHN0YW5kYXJkLmxlc3MgKiovXG5cbi5zdGFuZGFyZC1zZWN0aW9uIHtcblxuICAuc3RhbmRhcmQtYm90dG9tIHtcblxuICAgIHAge1xuICAgICAgaGVpZ2h0OiA5dmg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIH1cbiAgfVxufVxuXG4ucGFnZS10ZW1wbGF0ZS1wYWdlLXN0YW5kYXJkIHtcbiAgI2JyZWFkY3J1bWJzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItZ3JheS1saWdodDtcbiAgfVxufSIsIi8qKiBhcnRpY2xlcy1jYXRlZ29yeS5sZXNzICoqL1xuLmNhdGVnb3J5IHtcbiAgLmNhdGVnb3JpZXMtbmF2IHtcbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIGF7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAjYnJlYWRjcnVtYnMge1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1ncmF5LWxpZ2h0O1xuICB9XG59XG4uYmxvZyB7XG4gIC5jYXRlZ29yaWVzLW5hdiB7XG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICBhe1xuICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgI2JyZWFkY3J1bWJzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItZ3JheS1saWdodDtcbiAgfVxufSIsIi8qIHNlYXJjaC5sZXNzICovXG5cbi50b3Atc2VhcmNoIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXJnaW4tbGVmdDogMTlweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gIGEge1xuICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgY29sb3I6IEBjb2xvci1ibGFjaztcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAxcHg7XG4gICAgcmlnaHQ6IDIwcHg7XG4gIH1cbiAgaW5wdXQge1xuICAgIG1hcmdpbi1ib3R0b206IDRweDtcbiAgfVxuICAjc2VhcmNoLWZvcm0ge1xuICAgIHRyYW5zaXRpb246IGFsbCAwLjVzO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTUwcHg7XG4gICAgJi5vcGVuLXNlYXJjaCB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgd2lkdGg6IDEwcHg7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxufVxuXG4uc2VhcmNoLXJlc3VsdHMge1xuICAjcGFnZSB7XG4gICAgdWwucHJvZHVjdHMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBsaS5wcm9kdWN0IHtcbiAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5lbnRyeS1jb250ZW50IHtcbiAgICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cblxuLyogZW5kIHNlYXJjaC5sZXNzICovIiwiXG4ud29vY29tbWVyY2UgI2NvbnRlbnQgLnByb2R1Y3QgLnN1bW1hcnkge1xuICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xufVxuXG4ubWF0cml4X3RhYmxlIHtcblxuICBpbnB1dCB7XG4gICAgd2lkdGg6IEBzcGFjZS14eGw7XG4gIH1cblxuICAuZGlzYWJsZWRfb3JkZXIge1xuICAgIGJhY2tncm91bmQ6ICNBNEE0QTQ7XG4gIH1cbn0iLCIvKj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuPSAgICAgICAgICAgcGFnZS1sYW5kaW5nLmxlc3MgICAgICAgID1cbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSovXG5cbi5sYW5kaW5nLXBhZ2UtZm9ybSB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgZGlzcGxheTogZmxleDtcbiAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gIGZsZXgtd3JhcDogbm93cmFwO1xuICAtd2Via2l0LWZsZXgtd3JhcDogbm93cmFwO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IHJvdztcbiAgfVxuICAuZm9ybS1ncm91cCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG59XG5kaXYge1xuICAmLndwY2Y3LXJlc3BvbnNlLW91dHB1dCB7XG4gICAgYm9yZGVyOiAycHggc29saWQgdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgfVxufSIsIi8qIHBhZ2UtYnJhbmNoZXMubGVzcyAgKi9cblxuLmltZy13cmFwcGVyIHtcbiAgcGFkZGluZzogMTBweCAwO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIHBhZGRpbmc6IDV2aCAwO1xuICB9XG59XG5cbi5icmFuY2gtd3JhcHBlciB7XG4gIG1hcmdpbi10b3A6IDIuNXZ3O1xuICBmb250LXNpemU6IDM4cHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgZm9udC1zaXplOiAxZW07XG4gIH1cblxuICAuc2xpY2stZG90cyB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgbWFyZ2luLXRvcDogMzBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgfVxuICB9XG5cbiAgaDIge1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIuOHZ3O1xuXG4gICAgfVxuICB9XG5cbiAgLmljb25zLXdyYXBwZXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIH1cblxuICAgIC5pY29uLXdyYXBwZXItc2luZ2xlIHtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgICAgICB3aWR0aDogMTJlbTtcbiAgICAgIH1cbiAgICAgIHNwYW46bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgbWluLWhlaWdodDogMjBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmJyYW5jaC1pbmZvLWVudHJ5IHtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmJyYW5jaGVzLXNsaWRlciB7XG5cbiAgICAuc2xpY2stbmV4dCB7XG4gICAgICBmb250LXNpemU6IDAuM2VtO1xuICAgIH1cblxuICAgIC5zbGljay1wcmV2IHtcbiAgICAgIGZvbnQtc2l6ZTogMC4zZW07XG4gICAgfVxuICB9XG59IiwiLyoqIHZpZGVvcy5sZXNzKiovXG5cbi55b3V0dWJlIHtcblxuICBpZnJhbWUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi52aWRlby10aXRsZS13cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAzMHB4IDA7XG59XG5cbi5wYWdlLXRlbXBsYXRlLXBhZ2UtdmlkZW9zIHtcbiAgI2JyZWFkY3J1bWJzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItZ3JheS1saWdodFxuICB9XG59IiwiLyogcGFnZS1wb3B1cC5sZXNzICovXG5cbi5wb3B1cC1zZWN0aW9uIHtcbiAgaGVpZ2h0OiA5MHZoO1xufSIsIi8qIGZpbGUgbmFtZSBoZWFkZXIubGVzcyAqL1xuXG4jbWFpbi1oZWFkZXIge1xuICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAvL2Rpc3BsYXk6IG5vbmU7XG4gICAgLm1pZGRsZS1oZWFkZXIge1xuICAgICAgbWFyZ2luLXRvcDogMzVweDtcbiAgICB9XG4gIH1cbn1cblxuLy8gdG9wIGhlYWRlciBtb2JpbGVcbi50b3AtaGVhZGVyLW1vYmlsZSB7XG4gIGJvcmRlci10b3A6IDAgc29saWQgQGNvbG9yLWdyYXk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiBhdXRvO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IDEwMCU7XG4gIHBhZGRpbmc6IDA7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6IDQ1cHg7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgI21vYmlsZS1oZWFkZXItbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZS10eXBlOiBub25lO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgICYgPiBsaSB7XG4gICAgICBib3JkZXItbGVmdDogMXB4IHNvbGlkIEBjb2xvci1ncmF5LWxpZ2h0O1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHdpZHRoOiAxNyU7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItbGVmdDogMHB4IHNvbGlkIEBjb2xvci1ncmF5LWxpZ2h0O1xuICAgICAgfVxuICAgICAgJi5zaXplMSB7XG4gICAgICAgIHdpZHRoOiAxNCU7XG4gICAgICAgIGhlaWdodDogNDdweDtcbiAgICAgICAgLm1haW4tc2VhcmNoLWJ1dHRvbiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIC5pY29uLXNlYXJjaCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgICAgICAgcmlnaHQ6IDE2cHg7XG4gICAgICAgICAgdG9wOiA2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYubG9nby1tb2JpbGUge1xuICAgICAgICB3aWR0aDogMzglO1xuICAgICAgICBhIHtcbiAgICAgICAgICBtYXgtd2lkdGg6IDEyMHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBzcGFuLnN0cmlwIHtcbiAgICAgICAgd2lkdGg6IDIycHg7XG4gICAgICAgIGhlaWdodDogMnB4O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNnB4O1xuICAgICAgfVxuICAgICAgLmljb24tYXZhdGFyIHtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRleHQtYm90dG9tO1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLmhlYWRlci1zaG9wcGluZy1jYXJ0IHtcbiAgICAgICAgZGlyZWN0aW9uOiBsdHI7XG4gICAgICAgIC5pY29uLWFnYWxhIHtcbiAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnRvcC1idXR0b25zLXJlZCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxuICAudXNlci1tZW51IHtcbiAgICAmID4gbmF2IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG4gICAgfVxuICB9XG4gIC51c2VyLW1lbnUge1xuXG4gICAgYSB7XG4gICAgICBmb250LXNpemU6IDAuODVlbTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICA6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgfVxuICAgIH1cbiAgICAmID4gbmF2IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDEwMCU7XG5cbiAgICAgIGxpIHtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogNHB4IDhweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgLmZhIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC51c2VyLW1lbnUge1xuICAgICY6aG92ZXIge1xuICAgICAgJiA+IG5hdiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIGZvcm0ge1xuICAgICYuaGVhZGVyLXNlYXJjaCB7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0cmFuc2l0aW9uOiBhbGwgMC41cztcbiAgICAgIHRvcDogMDtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgJi5vcGVuIHtcbiAgICAgICAgd2lkdGg6IDg3JTtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgIGhlaWdodDogNDdweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmZvcm0tY29udHJvbCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICBwYWRkaW5nOiA0cHggOHB4O1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgY29sb3I6IEBjb2xvci10ZXh0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXktbGlnaHQ7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICAtd2Via2l0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgICAgIGJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIDAuMDc1KTtcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIC13ZWJraXQtYm94LXNoYWRvdyBlYXNlLWluLW91dCAuMTVzO1xuICAgICAgLW8tdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cztcbiAgICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciBlYXNlLWluLW91dCAuMTVzLCBib3gtc2hhZG93IGVhc2UtaW4tb3V0IC4xNXM7XG4gICAgfVxuICAgIC5zZWFyY2gtaW5wdXQge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICAgIHdpZHRoOiBjYWxjKH4nMTAwJSAtIDk5cHgnKTtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgfVxuICAgIC5tYWluLXNlYXJjaC1idXR0b24taW5zaWRlIHtcbiAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgcGFkZGluZy1sZWZ0OiAxNHB4O1xuICAgIH1cbiAgICAuY2xvc2Utc2VhcmNoLWJ1dHRvbi1pbnNpZGUge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3JkZXItcmlnaHQ6IDFweCBzb2xpZCBAY29sb3ItZ3JheS1saWdodDtcbiAgICAgIHBhZGRpbmc6IDAgMTZweCAwIDA7XG4gICAgICAuZmEtYW5nbGUtbGVmdCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDZweDtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS42ZW07XG4gICAgICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmZvcm0tZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbn1cblxuLy8gdG9wIGhlYWRlclxuLnRvcC1oZWFkZXIge1xuICBib3JkZXItdG9wOiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCBAY29sb3ItZ3JheTtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHJpZ2h0OiAwO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgLmJnLXdoaXRlO1xuICBoZWlnaHQ6IGF1dG87XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIGhlaWdodDogNC43dmg7XG4gICAgei1pbmRleDogOTk5OTk5OTtcbiAgfVxuXG4gIC50b3AtcmlnaHQge1xuICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xNXB4O1xuICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICAgIG1pbi1oZWlnaHQ6IDMwcHg7XG4gICAgfVxuICAgIC51c2VyLW1lbnUge1xuICAgICAgLnRvcC1idXR0b25zLXJlZCB7XG4gICAgICAgIHBhZGRpbmc6IDIuMXZ3IDF2dztcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgcGFkZGluZzogMC42dncgMS4yOHZ3O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogN3B4IDVweCA1cHggIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDAuN2VtO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICBwYWRkaW5nOiAycHggMTJweCAycHggIWltcG9ydGFudDtcbiAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAganVzdGlmeS1jb250ZW50OiBpbmhlcml0O1xuICAgICAgLXdlYmtpdC1qdXN0aWZ5LWNvbnRlbnQ6IGluaGVyaXQ7XG4gICAgfVxuICAgIGEge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICBAbWVkaWEgKG1heC13aWR0aDogOTkycHgpIHtcbiAgICAgICAgcGFkZGluZzogOHB4IDAgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luOiAwIDJweDtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMnB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbm5lY3Qge1xuICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnRvcC1sZWZ0IHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTJweCkge1xuICAgICAgbWluLWhlaWdodDogMzBweDtcbiAgICAgIGEge1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnVzZXItbWVudSB7XG4gICAgcGFkZGluZzogMCAwLjJ2dztcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHBhZGRpbmc6IDAgMS41dnc7XG4gICAgfVxuICAgIGEge1xuICAgICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBmb250LXNpemU6IDAuN2VtO1xuICAgICAgfVxuICAgICAgOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgIH1cbiAgICB9XG4gICAgJiA+IG5hdiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAxMDAlO1xuXG4gICAgICBsaSB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDRweCA4cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyOHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIC5mYSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAudXNlci1tZW51IHtcbiAgICAmOmhvdmVyIHtcbiAgICAgICYgPiBuYXYge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICB9XG4gICAgICAmID4gLm15LWFjY291bnQge1xuICAgICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItcmVkO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi51c2VyLW1lbnU6aG92ZXIgPiAubXktYWNjb3VudCB7XG4gIGJhY2tncm91bmQ6IEBjb2xvci1yZWQ7XG4gIHdpZHRoOiAxMDAlO1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLy8gc29jaWFsIG5hdmlnYXRpb24gaGVhZGVyXG4uc29jaWFsLW5hdmlnYXRpb24taGVhZGVyIHtcbiAgYSB7XG4gICAgcGFkZGluZzogMC41dncgMS41dnc7XG4gICAgYm9yZGVyLXJpZ2h0OiAxcHggc29saWQgQGNvbG9yLWdyYXk7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiBAY29sb3ItZ3JheS1kYXJrO1xuICAgIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLWdyYXktZGFyaztcbiAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgfVxuICAgIHNwYW4ge1xuICAgICAgLypwYWRkaW5nOiAwLjZlbSAwOyovXG4gICAgICBsaW5lLWhlaWdodDogMi4zZW07XG4gICAgfVxuICB9XG59XG4ubG9nby1maXh7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbn1cbi5zY3JvbGxBY3RpdmUge1xuICBAbWVkaWEobWluLXdpZHRoOiA5OTJweCkge1xuICAubG9nby1jb250YWluIHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAwO1xuICAgIHotaW5kZXg6IDk5OTk5OTk7XG4gICAgd2lkdGg6IDEzMHB4O1xuICAgIGxlZnQ6IDEwdnc7XG4gIH1cbiAgICAubG9nby1ub3JtYWx7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAubG9nby1maXh7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogNXB4IDA7XG4gICAgfVxufVxuXG59XG4udWktYXV0b2NvbXBsZXRlLWxvYWRpbmcgeyBiYWNrZ3JvdW5kOnVybCgnaW1hZ2VzL2FqYXgtbG9hZGVyLmdpZicpIG5vLXJlcGVhdCBsZWZ0IGNlbnRlciB9XG4vLyBtaWRkbGUgaGVhZGVyXG4ubWlkZGxlLWhlYWRlciB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgIG1hcmdpbi10b3A6IDQycHg7XG4gIH1cbiAgLmhlYWRlci1zZWFyY2gge1xuICAgIHBhZGRpbmctdG9wOiAxLjJ2dztcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgfVxuICAgIC5zZWFyY2gtaW5wdXQge1xuICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICB3aWR0aDogNzAlO1xuICAgICAgfVxuICAgICAgaW5wdXQge1xuICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWFyY2gtc2VsZWN0IHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgd2lkdGg6IDcwJTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgIH1cbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2VhcmNoLWJ1dHRvbiB7XG4gICAgICB3aWR0aDogNDBweDtcbiAgICAgIGhlaWdodDogNDBweDtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICBsaW5lLWhlaWdodDogMi4ydnc7XG4gICAgICAudHJhbnNpdGlvbjtcbiAgICAgICY6aG92ZXIge1xuICAgICAgICAudHJhbnNpdGlvbjtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAubG9nby1jb250YWluIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIH1cbn1cblxuLmJvdHRvbS1oZWFkZXIuYWZmaXgge1xuICB0b3A6IDQuNHZoO1xuICB6LWluZGV4OiA5OTk5OTtcbiAgbGVmdDogMDtcbiAgcmlnaHQ6IDA7XG59IiwiLyogZm9vdGVyLmxlc3MgKi9cblxuLnNpdGUtZm9vdGVyIHtcbiAgcGFkZGluZy10b3A6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItZ3JheS1saWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAuYm9yZGVyLXRvcCB7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkIEBjb2xvci1ibGFjaztcbiAgfVxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nLXRvcDogMi40dnc7XG4gICAgcGFkZGluZy1ib3R0b206IDIuNHZ3O1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICB9XG4gIC5mb290ZXItbGluay1saXN0IHtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgIC5saW5rLWxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMC43ZW07XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgIH1cbiAgICAubGluayB7XG4gICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgIH1cbiAgfVxuICAuZm9vdGVyLW1lbnUge1xuICAgIHVsIHtcbiAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjM7XG4gICAgICBsaSB7XG5cbiAgICAgICAgdmVydGljYWwtYWxpZ246IHRvcDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB3aWR0aDogMzIlO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLnN1Yi1tZW51IHtcbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmN1cnJlbnQtbWVudS1pdGVtIHtcbiAgICAgICYgPiBhIHtcbiAgICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4uY29weXJpZ2h0cyB7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWJvdHRvbTogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAucmlnaHRzIHtcbiAgICBmb250LXNpemU6IDAuNmVtICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IEBjb2xvci1ibGFjaztcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG59XG4vKiBmb290ZXIgYm90dG9tICovXG4uc29nby1sb2dvIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBsZWZ0OiAyMHB4O1xuICB9XG4gIGltZyB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuICBzcGFuIHtcbiAgICBmb250LXNpemU6IDAuNmVtO1xuICAgIHBhZGRpbmctbGVmdDogNXB4O1xuICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgY29sb3I6IEBjb2xvci1ncmF5LWRhcms7XG4gIH1cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4uc2Nyb2xsdXAge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDF2dztcbiAgYm90dG9tOiAydnc7XG4gIHotaW5kZXg6IDEwMDtcbiAgYm9yZGVyOiAxcHggc29saWQ7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIHdpZHRoOiA0MHB4O1xuICBoZWlnaHQ6IDQwcHg7XG5cbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgd2lkdGg6IDEuOHZ3O1xuICAgIGhlaWdodDogMS44dnc7XG4gIH1cblxuICBpIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgICByaWdodDogMTRweDtcbiAgICB0b3A6IDlweDtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIHJpZ2h0OiAwLjU1dnc7XG4gICAgICB0b3A6IDAuM3Z3O1xuICAgIH1cbiAgfVxufVxuLmZsb2F0aW5nLWJ0biB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAyLjh2dztcbiAgbGVmdDogMDtcbiAgei1pbmRleDogMTA1MDtcbn1cbi5mbG9hdC1oaWRkZW4td3JhcHBlciB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgYm90dG9tOiAyLjh2dztcbiAgaGVpZ2h0OiAyMDZweDtcbiAgbGVmdDogMy41dnc7XG4gIHdpZHRoOiAwO1xuICB6LWluZGV4OiAxMDUwO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2NlMmIzMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIC53cGNmNy12YWxpZGF0aW9uLWVycm9ycyB7XG4gICAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICB9XG4gIC53cGNmNy1ub3QtdmFsaWQtdGlwIHtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlICFpbXBvcnRhbnQ7XG4gIH1cbiAgLndwY2Y3LW1haWwtc2VudC1vayB7XG4gICAgY29sb3I6IEBjb2xvci13aGl0ZSAhaW1wb3J0YW50O1xuICB9XG4gIC5hcnJvdy13cmFwcGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwLjVlbTtcbiAgICBsZWZ0OiAxMnB4O1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBmb250LXNpemU6IDAuOGVtO1xuICAgIGNvbG9yOiBAY29sb3ItZ3JheS1kYXJrO1xuICAgIGhlaWdodDogMjBweDtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgfVxuICAuY29sb3Itd2hpdGUge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIH1cbiAgLmNsb3NlIHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgIH1cbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3ItcmVkO1xuICAgIH1cbiAgfVxuICBzZWxlY3Qge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYXBwZWFyYW5jZTogbm9uZTtcbiAgfVxufVxuLnNob3cge1xuICB3aWR0aDogOTMlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgdHJhbnNpdGlvbjogMC41cztcbn1cbi5pbWFnZS10ZXh0IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xufVxuLm9wZW4ge1xuIC5pbWFnZS10ZXh0IHtcbmRpc3BsYXk6bm9uZTtcbiB9XG59XG4uY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTMwcHg7XG4gIHJpZ2h0OiAtMzBweDtcbiAgLmltYWdlLXRleHQge1xuICAgIGRpc3BsYXk6YmxvY2s7XG4gIH1cbn1cbi5idG4td2hpdGUtZm9ybSB7XG4gIGJhY2tncm91bmQtY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgY29sb3I6IEBjb2xvci1yZWQ7XG4gIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgZm9udC1zaXplOiAwLjllbTtcbiAgcGFkZGluZzogNnB4IDQwcHg7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xuICBib3JkZXI6IDJweCBzb2xpZCBAY29sb3ItcmVkO1xuICAudHJhbnNpdGlvbjtcbiAgJjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlcjogMnB4IHNvbGlkIEBjb2xvci13aGl0ZTtcbiAgICAudHJhbnNpdGlvbjtcbiAgfVxuXG59XG5idXR0b24uY2xvc2UtZmxvYXRpbmcge1xuICBjb2xvcjogd2hpdGU7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIG9wYWNpdHk6IDE7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICMxMTExMTE7XG4gIGJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDAuMWVtIDAuNGVtIDAuM2VtO1xuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICBwYWRkaW5nOiAwLjFlbSAwLjRlbSAwLjNlbTtcbiAgfVxufVxuLm1vZGFsLWRpYWxvZyB7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgd2lkdGg6IDU1dnc7XG4gIH1cbn1cbi5tb2RhbCB7XG4gIHRvcDogNXZoO1xufVxuLmZvb3Rlci1zb2NpYWwtbmF2aWdhdGlvbiB7XG4gIG1hcmdpbi10b3A6IDFlbTtcbiAgLmNvbC1tZC01IHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gIC5zb2NpYWxzLWljb25zLXRpdGxlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBAY29sb3ItcmVkO1xuICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMCBzb2xpZCBAY29sb3ItcmVkO1xuICAgIH1cbiAgfVxuIGEge1xuICAgJi5mYWNlYm9vayB7XG4gICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICBwYWRkaW5nOiAwLjFlbSAwLjdlbSAwLjAyZW0gMC42ZW07XG4gICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgZm9udC1zaXplOiAxZW07XG4gICAgIGNvbG9yOiBAY29sb3ItcmVkO1xuICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICBiYWNrZ3JvdW5kOiBAY29sb3ItcmVkO1xuICAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgIH1cbiAgIH1cbiAgICYuZ29vZ2xlLXBsdXMge1xuICAgICBtYXJnaW46IDAgNHB4O1xuICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgcGFkZGluZzogMC45ZW0gMC42ZW0gMC4zZW07XG4gICAgIGJvcmRlci1yYWRpdXM6IDVweDtcbiAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgIGJhY2tncm91bmQ6IEBjb2xvci1yZWQ7XG4gICAgICAgY29sb3I6IEBjb2xvci13aGl0ZTtcbiAgICAgICBmb250LXNpemU6IDAuNmVtO1xuICAgICB9XG4gICB9XG4gICAmLllvdXR1YmUge1xuICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgcGFkZGluZzogMC4xZW0gMC41ZW0gMC4wMmVtIDAuM2VtO1xuICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICBjb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgYmFja2dyb3VuZDogQGNvbG9yLXJlZDtcbiAgICAgICBjb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgICB9XG4gICB9XG4gfVxufVxuXG4jc2l0ZS1mb290ZXIge1xuICBpZnJhbWUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cbiAgI21lbnUtZm9vdGVyLW5hdmlnYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDEycHg7XG4gICAgLnN1Yi1tZW51IHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgICYgPiBsaTpob3ZlciB7XG4gICAgICAuc3ViLW1lbnUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn0iLCIubmF2YmFyLXRvZ2dsZSB7XG4gIHotaW5kZXg6IDM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDE1cHg7XG4gIG1hcmdpbi1yaWdodDogMDtcblxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG4gIC5zdHJpcDEge1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB0b3A6IDI3cHg7XG5cbiAgICAudHJhbnNpdGlvbjI7XG4gIH1cbiAgLnN0cmlwMiB7XG4gICAgLnRyYW5zaXRpb24yO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB0b3A6IDM1cHg7XG5cbiAgICAudHJhbnNpdGlvbjI7XG4gIH1cbiAgLnN0cmlwMyB7XG4gICAgLnRyYW5zaXRpb24yO1xuICAgIHdpZHRoOiAzMnB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBoZWlnaHQ6IDNweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDAwO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB0b3A6IDQzcHg7XG5cbiAgICAudHJhbnNpdGlvbjI7XG4gIH1cbn1cblxuLm5hdmJhci1oZWFkZXIge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi5vZmZjYW52YXMtc3RvcC1zY3JvbGxpbmcge1xuICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgcmlnaHQ6IDIwMHB4O1xuICAgIGxlZnQ6IGF1dG87XG4gICAgdG9wOiAtMTBweDtcbiAgICAmOmJlZm9yZSB7XG4gICAgfVxuXG4gIH1cbiAgLmxvZ28ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gICAgfVxuICB9XG59XG5cbi5vZmZjYW52YXMtc3RvcC1zY3JvbGxpbmcge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW9mZmNhbnZhcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG59XG5cbi5uYXZiYXItaW52ZXJzZSAubmF2YmFyLW9mZmNhbnZhcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyMjI7XG59XG5cbi5uYXZiYXItb2ZmY2FudmFzIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB3aWR0aDogMTAwJTtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbiAgbGVmdDogLTI1MHB4O1xuICB0b3A6IDA7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICBwYWRkaW5nLWxlZnQ6IDE1cHg7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG4gIHotaW5kZXg6IDk5OTtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBiYWNrZ3JvdW5kOiBAY29sb3Itd2hpdGU7XG4gIG92ZXJmbG93OiBhdXRvO1xuXG59XG5cbi5uYXZiYXItb2ZmY2FudmFzLmluIHtcbiAgYm94LXNoYWRvdzogMCAwIDIwcHggcmdiYSgwLCAwLCAwLCAwLjMpO1xuICAudHJhbnNpdGlvbjI7XG59XG5cbi5uYXZiYXItb2ZmY2FudmFzLm5hdmJhci1vZmZjYW52YXMtZmFkZSB7XG4gIC50cmFuc2l0aW9uMjtcbiAgb3BhY2l0eTogMDtcbn1cblxuLm5hdmJhci1vZmZjYW52YXMubmF2YmFyLW9mZmNhbnZhcy1mYWRlLmluIHtcbiAgb3BhY2l0eTogMDtcbiAgLnRyYW5zaXRpb24yO1xufVxuXG4ubmF2YmFyLW9mZmNhbnZhcy5vZmZjYW52YXMtdHJhbnNmb3JtLmluIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjUwcHgpO1xuXG59XG5cbi5uYXZiYXItb2ZmY2FudmFzLm9mZmNhbnZhcy1wb3NpdGlvbi5pbiB7XG4gIGxlZnQ6IDA7XG59XG5cbi5uYXZiYXItb2ZmY2FudmFzLm5hdmJhci1vZmZjYW52YXMtcmlnaHQge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogLTI1MHB4O1xuICBwYWRkaW5nLXRvcDogNXB4O1xuXG59XG5cbi5uYXZiYXItb2ZmY2FudmFzLm5hdmJhci1vZmZjYW52YXMtcmlnaHQub2ZmY2FudmFzLXRyYW5zZm9ybS5pbiB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNTBweCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUwcHgpO1xuXG59XG5cbi5uYXZiYXItb2ZmY2FudmFzLm5hdmJhci1vZmZjYW52YXMtcmlnaHQub2ZmY2FudmFzLXBvc2l0aW9uLmluIHtcbiAgbGVmdDogYXV0bztcbiAgcmlnaHQ6IDA7XG59XG5cbi5uYXZiYXItb2ZmY2FudmFzIC5kcm9wZG93bi5hY3RpdmUgLmNhcmV0IHtcbiAgYm9yZGVyLXRvcDogMDtcbiAgYm9yZGVyLWJvdHRvbTogNHB4IHNvbGlkO1xufVxuXG4ubmF2YmFyLW9mZmNhbnZhcyAuZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG4gIGJvcmRlcjogaW5oZXJpdDtcbiAgLy9ib3gtc2hhZG93OiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IGhlaWdodCAwLjE1cyBlYXNlLWluO1xuICB0cmFuc2l0aW9uOiBoZWlnaHQgMC4xNXMgZWFzZS1pbjtcbn1cblxuLm5hdmJhci1vZmZjYW52YXMgLmRyb3Bkb3duLW1lbnUuc2hvd24ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMTBweDtcbn1cblxuLm9mZmNhbnZhcy10b2dnbGUgLmljb24tYmFyIHtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cblxuLm9mZmNhbnZhcy10b2dnbGUuaXMtb3BlbiAuaWNvbi1iYXI6bnRoLWNoaWxkKDEpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgdHJhbnNsYXRlKDVweCwgNHB4KTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSg1cHgsIDRweCk7XG59XG5cbi5vZmZjYW52YXMtdG9nZ2xlLmlzLW9wZW4gLmljb24tYmFyOm50aC1jaGlsZCgyKSB7XG4gIG9wYWNpdHk6IDA7XG59XG5cbi5vZmZjYW52YXMtdG9nZ2xlLmlzLW9wZW4gLmljb24tYmFyOm50aC1jaGlsZCgzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUoNHB4LCAtNHB4KTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUoLTRweCwgLTRweCk7XG59XG5cbi5vZmZjYW52YXMtdG9nZ2xlLmlzLW9wZW4gLmljb24tYmFyOm50aC1jaGlsZCg0KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSB0cmFuc2xhdGUoNHB4LCAtNHB4KTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpIHRyYW5zbGF0ZSgtN3B4LCAwcHgpXG59XG5cbi5uYXZiYXItdG9nZ2xlIHtcbiAgJi5pcy1vcGVuIHtcblxuICB9XG59XG5cbi5uYXZiYXItb2ZmY2FudmFzIHtcbiAgLnByaW1hcnktbWVudSB7XG4gICAgbGkge1xuICAgICAgYSB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubWFpbi1tZW51IHtcbiAgLm5hdmJhci1vZmZjYW52YXMge1xuICAgIHVsLnByaW1hcnktbWVudSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgID4gbGkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICAgICYuY3VycmVudC1tZW51LWl0ZW0ge1xuICAgICAgICAgICY+YSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiBAY29sb3ItcmVkICFpbXBvcnRhbnQ7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5vZmZjYW52YXMtc3RvcC1zY3JvbGxpbmcge1xuICAub2ZmY2FudmFzLXRvZ2dsZSB7XG4gICAgJi5pcy1vcGVuIHtcbiAgICAgIHNwYW4ge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIHotaW5kZXg6IDM7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgcmlnaHQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZy1yaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJvcmRlcjogbm9uZTtcbiAgYmFja2dyb3VuZDogbm9uZTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICB0b3A6IGF1dG87XG4gIH1cbiAgJi5pcy1vcGVuIHtcbiAgICB3aWR0aDogMjUwcHg7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGYwMGRcIjtcbiAgICAgIGZvbnQtZmFtaWx5OiBmb250QXdlc29tZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgei1pbmRleDogOTk5OTk7XG4gICAgICB0b3A6IC02cHg7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBjb2xvcjogQGNvbG9yLXRleHQ7XG4gICAgfVxuXG4gIH1cbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxuICAuc3RyaXAxIHtcbiAgICB3aWR0aDogMzJweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgaGVpZ2h0OiAzcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgdG9wOiAyN3B4O1xuXG4gIH1cbiAgLnN0cmlwMiB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgIHRvcDogMzVweDtcblxuICB9XG4gIC5zdHJpcDMge1xuXG4gICAgd2lkdGg6IDMycHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGhlaWdodDogM3B4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICB9XG59XG4ubWFpbi1tZW51IHVsLnByaW1hcnktbWVudSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cbi5tb2JpbGUgLm5hdmJhci10b2dnbGUuaXMtb3BlbjpiZWZvcmUge1xuICByaWdodDogYXV0byAhaW1wb3J0YW50O1xuICBsZWZ0OiAyNXB4O1xufVxuLm1vYmlsZSAubmF2YmFyLXRvZ2dsZS5pcy1vcGVuIHtcbiAgd2lkdGg6IDI1MHB4O1xufVxuLm9mZmNhbnZhcy1zdG9wLXNjcm9sbGluZyAub2ZmY2FudmFzLXRvZ2dsZS5pcy1vcGVuIHtcbiAgbGVmdDogLTIwcHg7XG4gIG9wYWNpdHk6IDE7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogOTk5OTtcbiAgdG9wOiAtMzBweDtcbn1cbi5vZmZjYW52YXMtc3RvcC1zY3JvbGxpbmcgLm5hdmJhci10b2dnbGUge1xuICByaWdodDogMDtcbn1cbiIsIi50bHYtdGl0bGUge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIG1hcmdpbi1ib3R0b206IDRyZW07XG4gIGgyIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBiYWNrZ3JvdW5kOiAjMDBiNGYxO1xuICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gIH1cbn1cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDAgc29saWQgQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgMnB4IDRlbSAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgYm9yZGVyOiAycHggc29saWQgQGNvbG9yLXJlZCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMy41ZW0gMy41ZW0gIWltcG9ydGFudDtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIH1cbiAgbGVnZW5kIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgY29sb3I6IEBjb2xvci1yZWQ7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBwYWRkaW5nOiAwIDNlbTtcbiAgICB9XG4gICAgc3BhbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC00cmVtO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICByaWdodDogMDtcbiAgICAgIGZvbnQtc2l6ZTogM3JlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBjb2xvcjogQGNvbG9yLWJsYWNrO1xuICAgIH1cbiAgfVxufVxuXG4udGx2LWJhbm5lciB7XG4gIG1hcmdpbi1ib3R0b206IDc1cHg7XG59XG5cbi53b29jb21tZXJjZSB7XG4gICN0bHYtZm9ybSB7XG4gICAgLnNob3BfdGFibGUge1xuICAgICAgbWFyZ2luOiA0MHB4IDAgMjRweCAtMXB4O1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgIH1cbiAgICB0aCB7XG4gICAgICBwYWRkaW5nOiA5cHggMCA5cHggMTJweDtcbiAgICAgIGJvcmRlcjogbm9uZTtcbiAgICB9XG4gICAgLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB7XG4gICAgICB0ciB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgdGQge1xuICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIHNlbGVjdCB7XG4gICAgcGFkZGluZzogMC4yN2VtIDFlbSAwLjI3ZW0gMi41ZW07XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgfVxuICAuYXJyb3ctd3JhcHBlciB7XG4gICAgYm90dG9tOiAwLjA1ZW07XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBib3R0b206IDAuMzVlbTtcbiAgICB9XG4gIH1cbn1cblxuLnNlbGVjdC1hbGxvY2F0aW9uIHtcbiAgLmJ0bi1zbWFsbCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgcGFkZGluZzogMC4yZW0gMS4yZW0gMC4yZW0gMS4yZW07XG4gICAgfVxuICB9XG4gIHNlbGVjdCB7XG4gICAgcGFkZGluZzogMC4yN2VtIDFlbSAwLjI3ZW0gMi41ZW07XG4gICAgZm9udC1zaXplOiAxLjNlbTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB9XG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDc2N3B4KSB7XG4gICAgICBmb250LXNpemU6IDAuOWVtO1xuICAgICAgcGFkZGluZzogMC41ZW0gMC44ZW0gMC41ZW0gMmVtO1xuICAgIH1cbiAgfVxuICAuYXJyb3ctd3JhcHBlciB7XG4gICAgYm90dG9tOiAwLjRlbTtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgIGJvdHRvbTogMC4zNWVtO1xuICAgIH1cbiAgfVxufVxuXG4udGl0bGUtYm90dG9tLXRsdiB7XG4gIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBAY29sb3ItcmVkO1xuICBwYWRkaW5nLWJvdHRvbTogMC41ZW07XG59XG5cbi53b29jb21tZXJjZSB7XG4gICN0bHYtZm9ybSB7XG4gICAgLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB7XG4gICAgICB0ciB7XG4gICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4ud29vY29tbWVyY2UtcGFnZSB7XG4gICN0bHYtZm9ybSB7XG4gICAgLnNob3BfdGFibGVfcmVzcG9uc2l2ZSB7XG4gICAgICB0ciB7XG4gICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICB9XG5cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEobWluLXdpZHRoOiA3NjhweCl7XG4gICAgICB0YWJsZS5zaG9wX3RhYmxlX3Jlc3BvbnNpdmUge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICAgIHRkIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCA2cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59IiwiXG4ud2lkZ2V0IHtcbiAgLndvb2ZfY29udGFpbmVyX3BhX3NpemUge1xuICAgIC53b29mX2xpc3Qge1xuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDAgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDIzJTtcbiAgICAgICAgY29sb3I6IEBjb2xvci1ncmF5LXRleHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC45ZW07XG4gICAgICB9XG5cbiAgICB9XG4gIH1cblxuICAud29vZl9saXN0X2xhYmVsIHtcbiAgICBsaSB7XG4gICAgICAud29vZl9sYWJlbF90ZXJtOmhvdmVyLCAud29vZl9sYWJlbF90ZXJtLmNoZWNrZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICAgIGJvcmRlci1jb2xvcjogQGNvbG9yLXJlZDtcbiAgICAgICAgY29sb3I6IEBjb2xvci1yZWQ7XG5cbiAgICAgIH1cbiAgICB9XG4gICAgLndvb2ZfbGFiZWxfdGVybSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgYm9yZGVyOiAxcHggc29saWQgQGNvbG9yLWdyYXktdGV4dDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgbGluZS1oZWlnaHQ6IDMycHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICBoNCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDFlbTtcbiAgICBmb250LXdlaWdodDogNTAwO1xuICB9XG5cbiAgLndvb2ZfY2hlY2tib3hfbGFiZWwge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgZm9udC1zaXplOiAxZW07XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICBwYWRkaW5nLXRvcDogNHB4O1xuICB9XG5cbiAgLndvb2ZfY29sb3JfdGVybSB7XG4gICAgd2lkdGg6IDMycHg7XG4gICAgaGVpZ2h0OiAzMnB4O1xuICAgIHBhZGRpbmc6IDJweDtcbiAgICBiYWNrZ3JvdW5kLWNsaXA6IGNvbnRlbnQtYm94O1xuICAgIHRyYW5zaXRpb246IGJvcmRlci1jb2xvciAuMzVzIGVhc2U7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlOztcbiAgICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItZ3JheS10ZXh0O1xuICB9XG4gIC5yYWRpbywgLmNoZWNrYm94IHtcbiAgICBtYXJnaW46IDAgMCA1cHggNnB4O1xuICB9XG5cbiAgLndvb2ZfY29udGFpbmVyIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAxOHB4O1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLndvb2ZfY29sb3JfY2hlY2tlZCB7XG4gICAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XG4gICAgc3BlYWs6IG5vbmU7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gICAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gICAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgei1pbmRleDogOTk5O1xuICAgIGxlZnQ6IDA7XG4gICAgdG9wOiAwO1xuICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgZm9udC1zaXplOiAxMnB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgYm9yZGVyOiAxcHggc29saWQgcmVkO1xuICAgIHBhZGRpbmctdG9wOiA4cHg7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXGU5MGJcIjtcbiAgICB9XG4gIH1cbiAgLmNoZWNrZWQge1xuICAgICYgPiAud29vZl9jb2xvcl9jaGVja2VkIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxuICAgLndvb2ZfZnJvbnRfdG9nZ2xlXG4gICB7XG4gICAgIGZsb2F0OiBsZWZ0O1xuICAgICBwYWRkaW5nLWxlZnQ6IDVweDtcbiAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG4gICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgdGV4dC1yZW5kZXJpbmc6IGF1dG87XG4gICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICY6YWZ0ZXIge1xuICAgICAgIGNvbnRlbnQ6IFwiXFxmMTA3XCI7XG4gICAgICAgY29sb3I6IEBjb2xvci10ZXh0O1xuICAgICB9XG4gICAgICYud29vZl9mcm9udF90b2dnbGVfb3BlbmVke1xuICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgY29udGVudDogXCJcXGYxMDZcIjtcblxuICAgICAgIH1cbiAgICAgfVxuICAgfVxufVxuLndvb2ZfcHJvZHVjdHNfdG9wX3BhbmVsIHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xufVxuLndvb2ZfY2hlY2tib3hfdGVybSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICBib3JkZXI6IDFweCBzb2xpZCBAY29sb3ItZ3JheS1saWdodDtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tbGVmdDogMTJweCAhaW1wb3J0YW50O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICY6Y2hlY2tlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIEBjb2xvci1yZWQ7XG4gICAgY29sb3I6IEBjb2xvci10ZXh0O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgJjphZnRlciB7XG4gICAgICBjb250ZW50OiAnXFxmMDBjJztcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMnB4O1xuICAgICAgbGVmdDogMnB4O1xuICAgICAgY29sb3I6ICMxMTExMTE7XG4gICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIH1cbiAgfVxufVxuLldPT0ZfV2lkZ2V0IHtcbiAgcGFkZGluZy10b3A6IDNlbTtcbiAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cblxufVxuIiwiLyogb3JkZXItdGx2ICovXG5cbi5vcmRlci10bHYge1xuXG4gIC5hbGxvY2F0aW9uLWhlbHAge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogNTAlO1xuICAgIGNvbG9yOiAjMzMzMzMzO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogQGNvbG9yLXdoaXRlO1xuICAgIHdpZHRoOiAzNXB4O1xuICAgIGhlaWdodDogMzVweDtcbiAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cblxuICAjbXlNb2RhbCB7XG4gICAgdG9wOiA5dmg7XG4gICAgLmNsb3NlIHtcbiAgICAgIGxlZnQ6IDFyZW07XG4gICAgICB0b3A6IDFyZW07XG4gICAgICBmb250LXNpemU6IDRyZW07XG4gICAgfVxuICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIGJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNjZTJiMzA7XG4gICAgICAgIGJvcmRlci1jb2xvcjogI2NlMmIzMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2hvcF90YWJsZSB7XG5cbiAgfVxuXG4gIC5zZWxlY3Qtd3JhcHBlciB7XG4gICAgc2VsZWN0IHtcbiAgICAgIHBhZGRpbmc6IDAgMS4yZW07XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS44NTtcbiAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuXG4gICAgfVxuICAgID4gc3BhbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZm9udC1zaXplOiAxLjFyZW07XG4gICAgICB0b3A6IDUwJTtcbiAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7O1xuICAgIH1cbiAgfVxuXG4gIC5zZWxlY3QtYWxsb2NhdGlvbiB7XG4gICAgaW5wdXQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2NlMmIzMDtcbiAgICAgIGNvbG9yOiBAY29sb3Itd2hpdGU7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICBsaW5lLWhlaWdodDogMS44NTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgICZfX2ZsZXgge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogMTg1cHg7XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgLW1zLWZsZXgtd3JhcDogbm93cmFwO1xuICAgICAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbiAgICAgICAgbWF4LXdpZHRoOiBpbmhlcml0O1xuICAgICAgfVxuICAgICAgPiBkaXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMXB4O1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAzMHB4O1xuICAgICAgICB9XG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiAyNSU7XG4gICAgICAgICAgZmxleC1iYXNpczogMjUlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IGlucHV0IHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDI1JTtcbiAgICAgICAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBmaWVsZHNldCB7XG4gICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICBtYXJnaW46IDAgMCAzcmVtICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgPiBsZWdlbmQge1xuICAgICAgZm9udC1zaXplOiAxLjZyZW07XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgY29sb3I6IGluaGVyaXQ7XG4gICAgICAubGVnZW5kLXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogMnJlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IGluaGVyaXQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgPiBzZWN0aW9uIHtcbiAgICAgIC5hdHRyaWJ1dGVzIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5zaG9wX3RhYmxlIHtcbiAgICAgICAgbWFyZ2luOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIC50Ym9keSB7XG4gICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWJveDtcbiAgICAgICAgICAgIGRpc3BsYXk6IC1tb3otYm94O1xuICAgICAgICAgICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgICAgICAgICBkaXNwbGF5OiAtd2Via2l0LWZsZXg7XG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICAgICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAgICAgICB9XG4gICAgICAgICAgLnRsdi1vcmRlci10ci13cmFwcGVyIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAwIDNyZW0gIWltcG9ydGFudDtcbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkge1xuICAgICAgICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMzMuMyU7XG4gICAgICAgICAgICAgIGZsZXgtYmFzaXM6IDMzLjMlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5hY3Rpb24tYnV0dG9uIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMCAxNXB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNlNWU1ZTU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgIGNvbG9yOiAjMTExMTExO1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgICAgICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMC40cztcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgICAgICAgLW8tdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNHM7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgIC1tb3otdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAtbXMtdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAtby10cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlO1xuICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICAgICAgLy9wYWRkaW5nOiAwLjQ1ZW0gMi4xZW07XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS4xZW07XG5cbiAgICAgICAgfVxuICAgICAgICAucmVtb3ZlLXRyIHtcbiAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjZTVlNWU1O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGNvbG9yOiAjMTExMTExO1xuICAgICAgICAgIHNwYW46bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50bHYtb3JkZXItdHIge1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1ib3g7XG4gICAgICBkaXNwbGF5OiAtbW96LWJveDtcbiAgICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDFyZW07XG4gICAgICAtd2Via2l0LWJveC1hbGlnbjogZW5kO1xuICAgICAgLW1zLWZsZXgtYWxpZ246IGVuZDtcbiAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LWVuZDtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICAtd2Via2l0LWJveC1wYWNrOiBjZW50ZXI7XG4gICAgICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgLXdlYmtpdC1ib3gtYWxpZ246IHN0YXJ0O1xuICAgICAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gICAgICAgIGFsaWduLWl0ZW1zOiBmbGV4LXN0YXJ0O1xuICAgICAgfVxuXG4gICAgICA+IGRpdjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIC1tcy1mbGV4LXByZWZlcnJlZC1zaXplOiA0MiU7XG4gICAgICAgIGZsZXgtYmFzaXM6IDQyJTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDFyZW07XG4gICAgICAgIC5wcm9kdWN0LXRodW1ibmFpbCB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogOXB4O1xuICAgICAgICB9XG4gICAgICAgIC8vQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSB7XG4gICAgICAgIC8vICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogNTAlO1xuICAgICAgICAvLyAgZmxleC1iYXNpczogNTAlO1xuICAgICAgICAvL31cblxuICAgICAgfVxuXG4gICAgICA+IGRpdjpsYXN0LWNoaWxkIHtcbiAgICAgICAgLXdlYmtpdC1ib3gtZmxleDogMTtcbiAgICAgICAgLW1zLWZsZXgtcG9zaXRpdmU6IDE7XG4gICAgICAgIGZsZXgtZ3JvdzogMTtcbiAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDQyJTtcbiAgICAgICAgZmxleC1iYXNpczogNDIlO1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAtd2Via2l0LWJveC1mbGV4OiAwO1xuICAgICAgICAgIC1tcy1mbGV4LXBvc2l0aXZlOiAwO1xuICAgICAgICAgIGZsZXgtZ3JvdzogMDtcbiAgICAgICAgfVxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogOTkycHgpIHtcbiAgICAgICAgICAvL2Rpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgPiBkaXY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuXG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS4zcmVtO1xuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgIH1cbiAgICAgIC5zZWxlY3Qtd3JhcHBlciB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgICAgICAgICBmb250LXNpemU6IC44ZW07XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcm9kdWN0LXNrdSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS40cmVtO1xuICAgICAgfVxuICAgICAgLnByb2R1Y3QtbmFtZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS41cmVtO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG5cbiAgLmJvdHRvbS10bHYtd3JhcHBlciB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWF4LXdpZHRoOiAyMjVweDtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtYm94O1xuICAgICAgZGlzcGxheTogLW1vei1ib3g7XG4gICAgICBkaXNwbGF5OiAtbXMtZmxleGJveDtcbiAgICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBtYXgtd2lkdGg6IGluaGVyaXQ7XG4gICAgfVxuXG4gICAgLnBpY2t1cC13YXJwcGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMzBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgLW1zLWZsZXgtcHJlZmVycmVkLXNpemU6IDI1JTtcbiAgICAgICAgZmxleC1iYXNpczogMjUlO1xuICAgICAgfVxuICAgIH1cblxuICAgIGJ1dHRvbiB7XG4gICAgICBsaW5lLWhlaWdodDogMS44NTtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgIEBtZWRpYSAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICAtbXMtZmxleC1wcmVmZXJyZWQtc2l6ZTogMjUlO1xuICAgICAgICBmbGV4LWJhc2lzOiAyNSU7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cblxuICAudGx2LWJhbm5lciB7XG4gICAgbWFyZ2luLWJvdHRvbTogM3JlbTtcbiAgfVxuXG4gIC50aXRsZS1ib3R0b20tdGx2IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcGFkZGluZy1ib3R0b206IC4xZW07XG4gICAgQG1lZGlhIChtaW4td2lkdGg6IDk5MnB4KSB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG5cbiAgfVxuXG4gIC5mZWVkYmFjayB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmVkO1xuICB9XG5cbn0iXX0= */