/* stylelint-disable, declaration-no-important */
/*!                                _  __    _        ___
 *   __ _ _ __ ___  _   _ _ __   __| |/ /___| |_ _ __| \ \
 *  / _  |  __/ _ \| | | |  _ \ / _  | |/ __| __|  __| || |
 * | (_| | | | (_) | |_| | | | | (_| | | (__| |_| |  | || |
 *  \__. |_|  \___/ \__._|_| |_|\__._| |\___|\__|_|  |_|| |
 *  |___/                             \_\              /_/

    Client:        Rob Thomas
    Development:   Aaron Astle : ground(ctrl)
    Design:        Anthony Ordonez : ground(ctrl)
*/
/*! Generated by Font Squirrel (https://www.fontsquirrel.com) on February 1, 2019 */
@import url(../type/icons/style.css);
@font-face {
  font-family: 'editorbold';
  src: url("../../../../public/type/editor/indian_type_foundry_-_editor_bold-webfont.woff2") format("woff2"), url("../../../../public/type/editor/indian_type_foundry_-_editor_bold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'editorextrabold';
  src: url("../../../../public/type/editor/indian_type_foundry_-_editor_extrabold-webfont.woff2") format("woff2"), url("../../../../public/type/editor/indian_type_foundry_-_editor_extrabold-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'editorlight';
  src: url("../../../../public/type/editor/indian_type_foundry_-_editor_light-webfont.woff2") format("woff2"), url("../../../../public/type/editor/indian_type_foundry_-_editor_light-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'editormedium';
  src: url("../../../../public/type/editor/indian_type_foundry_-_editor_medium-webfont.woff2") format("woff2"), url("../../../../public/type/editor/indian_type_foundry_-_editor_medium-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'editorregular';
  src: url("../../../../public/type/editor/indian_type_foundry_-_editor-webfont.woff2") format("woff2"), url("../../../../public/type/editor/indian_type_foundry_-_editor-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'wu-social-icons';
  src: url("../../../../public/type/wu-social-icons/circle/wu-social-icons.ttf?q9hkq3") format("truetype"), url("../../../../public/type/wu-social-icons/circle/wu-social-icons.woff?q9hkq3") format("woff"), url("../../../../public/type/wu-social-icons/circle/wu-social-icons.svg?q9hkq3#wu-social-icons") format("svg");
  font-weight: normal;
  font-style: normal; }

[class^="wu-social-"], [class*=" wu-social-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'wu-social-icons' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  font-display: swap;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.wu-social-giphy:before {
  content: "\e91d"; }

.wu-social-tiktok:before {
  content: "\e91c"; }

.wu-social-linkedin:before {
  content: "\e900"; }

.wu-social-soundcloud:before {
  content: "\e002"; }

.wu-social-spotify:before {
  content: "\e602"; }

.wu-social-twitter:before {
  content: "\e603"; }

.wu-social-googleplus:before,
.wu-social-google-plus:before {
  content: "\e604"; }

.wu-social-youtube:before {
  content: "\e605"; }

.wu-social-rss:before {
  content: "\e60f"; }

.wu-social-pinterest:before {
  content: "\e610"; }

.wu-social-vimeo:before {
  content: "\e901"; }

.wu-social-apple:before,
.wu-social-apple-music:before {
  content: "\e902"; }

.wu-social-Vevo:before,
.wu-social-vevo:before {
  content: "\e903"; }

.wu-social-messenger:before {
  content: "\e904"; }

.wu-social-instagram:before {
  content: "\e905"; }

.wu-social-mail:before {
  content: "\e906"; }

.wu-social-tumblr:before {
  content: "\e907"; }

.wu-social-snapchat:before {
  content: "\e908"; }

.wu-social-vine:before {
  content: "\e909"; }

.wu-social-myspace:before {
  content: "\e90a"; }

.wu-social-whatsapp:before {
  content: "\e90b"; }

.wu-social-kik:before {
  content: "\e8fc"; }

.wu-social-googleplay:before,
.wu-social-google-play:before {
  content: "\e90c"; }

.wu-social-fans:before {
  content: "\e90d"; }

.wu-social-facebook:before {
  content: "\e90e"; }

.wu-social-line:before {
  content: "\e90f"; }

.wu-social-amazon:before {
  content: "\e910"; }

.wu-social-bkstg:before {
  content: "\e911"; }

.wu-social-itunes:before {
  content: "\e912"; }

.wu-social-buy:before {
  content: "\e913"; }

.wu-social-deezer:before {
  content: "\e914"; }

.wu-social-target:before {
  content: "\e915"; }

.wu-social-walmart:before {
  content: "\e916"; }

.wu-social-musically:before {
  content: "\e917"; }

.wu-social-pandora:before {
  content: "\e918"; }

.wu-social-twitch:before {
  content: "\e919"; }

.wu-social-yelp:before {
  content: "\e91a"; }

.wu-social-untapped:before {
  content: "\e91b"; }

/*
 * jQuery FlexSlider v2.2.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 */
/* Browser Resets
*********************************/
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus {
  outline: none; }

.slides,
.flex-control-nav,
.flex-direction-nav {
  margin: 0;
  padding: 0;
  list-style: none; }

/* Icon Fonts
*********************************/
/* Font-face Icons */
@font-face {
  font-family: 'flexslider-icon';
  src: url("/engine/js/jquery/plugins/flexslider/fonts/flexslider-icon.eot");
  src: url("/engine/js/jquery/plugins/flexslider/fonts/flexslider-icon.eot?#iefix") format("embedded-opentype"), url("/engine/js/jquery/plugins/flexslider/fonts/flexslider-icon.woff") format("woff"), url("/engine/js/jquery/plugins/flexslider/fonts/flexslider-icon.ttf") format("truetype"), url("/engine/js/jquery/plugins/flexslider/fonts/flexslider-icon.svg#flexslider-icon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

/* FlexSlider Necessary Styles
*********************************/
.flexslider {
  margin: 0;
  padding: 0; }

.flexslider .slides > li {
  display: none;
  -webkit-backface-visibility: hidden; }

/* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {
  width: 100%;
  display: block; }

.flex-pauseplay span {
  text-transform: capitalize; }

/* Clearfix for the .slides element */
.slides:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

html[xmlns] .slides {
  display: block; }

* html .slides {
  height: 1%; }

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {
  display: block; }

/* FlexSlider Default Theme
*********************************/
.flexslider {
  margin: 0 0 60px;
  background: #fff;
  border: 4px solid #fff;
  position: relative;
  border-radius: 4px;
  -o-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
  zoom: 1; }

.flex-viewport {
  max-height: 2000px;
  transition: all 1s ease; }

.loading .flex-viewport {
  max-height: 300px; }

.flexslider .slides {
  zoom: 1; }

.carousel li {
  margin-right: 5px; }

/* Direction Nav */
.flex-direction-nav {
  *height: 0; }

.flex-direction-nav a {
  text-decoration: none;
  display: block;
  width: 40px;
  height: 40px;
  margin: -20px 0 0;
  position: absolute;
  top: 50%;
  z-index: 10;
  overflow: hidden;
  opacity: 0;
  cursor: pointer;
  color: rgba(0, 0, 0, 0.8);
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.3);
  transition: all .3s ease; }

.flex-direction-nav .flex-prev {
  left: -50px; }

.flex-direction-nav .flex-next {
  right: -50px;
  text-align: right; }

.flexslider:hover .flex-prev {
  opacity: 0.7;
  left: 10px; }

.flexslider:hover .flex-next {
  opacity: 0.7;
  right: 10px; }

.flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {
  opacity: 1; }

.flex-direction-nav .flex-disabled {
  opacity: 0 !important;
  filter: alpha(opacity=0);
  cursor: default; }

.flex-direction-nav a:before {
  font-family: "flexslider-icon";
  font-size: 40px;
  line-height: 1;
  display: inline-block;
  content: '\f001'; }

.flex-direction-nav a.flex-next:before {
  content: '\f002'; }

/* Pause/Play */
.flex-pauseplay a {
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  bottom: 5px;
  left: 10px;
  opacity: 0.8;
  z-index: 10;
  overflow: hidden;
  cursor: pointer;
  color: #000; }

.flex-pauseplay a:before {
  font-family: "flexslider-icon";
  font-size: 20px;
  display: inline-block;
  content: '\f004'; }

.flex-pauseplay a:hover {
  opacity: 1; }

.flex-pauseplay a.flex-play:before {
  content: '\f003'; }

/* Control Nav */
.flex-control-nav {
  width: 100%;
  position: absolute;
  bottom: -40px;
  text-align: center; }

.flex-control-nav li {
  margin: 0 6px;
  display: inline-block;
  zoom: 1;
  *display: inline; }

.flex-control-paging li a {
  width: 11px;
  height: 11px;
  display: block;
  background: #666;
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  text-indent: -9999px;
  border-radius: 20px;
  -o-box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 3px rgba(0, 0, 0, 0.3); }

.flex-control-paging li a:hover {
  background: #333;
  background: rgba(0, 0, 0, 0.7); }

.flex-control-paging li a.flex-active {
  background: #000;
  background: rgba(0, 0, 0, 0.9);
  cursor: default; }

.flex-control-thumbs {
  margin: 5px 0 0;
  position: static;
  overflow: hidden; }

.flex-control-thumbs li {
  width: 25%;
  float: left;
  margin: 0; }

.flex-control-thumbs img {
  width: 100%;
  display: block;
  opacity: .7;
  cursor: pointer; }

.flex-control-thumbs img:hover {
  opacity: 1; }

.flex-control-thumbs .flex-active {
  opacity: 1;
  cursor: default; }

@media screen and (max-width: 860px) {
  .flex-direction-nav .flex-prev {
    opacity: 1;
    left: 10px; }
  .flex-direction-nav .flex-next {
    opacity: 1;
    right: 10px; } }

.touchevents body {
  background-image: none; }

.touchevents .media #main {
  margin: 30px auto 50px auto; }

.touchevents .news #main {
  margin: 30px auto 50px auto; }

.touchevents .releases.all {
  margin: 30px auto 50px auto; }

.touchevents #main > .section.release {
  margin: 30px auto 50px; }

.touchevents .store #page {
  margin: 30px auto 50px auto; }

/**
 * Styles for account tpl files
 */
/* Type */
/* carousel */
/* common variables for the store && account templates */
/* colors */
/* borders */
/* font */
/* line height */
/* form elements */
/* animations */
/* layout && breakpoints */
/* header / main nav */
/* account */
/* store listing types */
/* store aside */
/* footer */
/* modules */
/* common variables for the store && account templates */
.no-border {
  border: 0 !important; }

.clearfix:before, .clearfix:after {
  content: '';
  display: table; }

.clearfix:after {
  clear: both; }

body {
  background-color: rgba(255, 255, 255, 0.07);
  font-family: Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: normal; }
  body.account #page .wrap, body.store #page .wrap {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1140px; }
    @media screen and (max-width: 1140px) {
      body.account #page .wrap, body.store #page .wrap {
        padding: 0 10px; } }
  body.account #page a, body.store #page a {
    transition: 0.5s ease;
    color: #040404; }
    body.account #page a:hover, body.account #page a:focus, body.store #page a:hover, body.store #page a:focus {
      opacity: 0.8;
      color: #666666;
      text-decoration: none;
      box-shadow: none;
      outline: none; }
  body.account .row, body.store .row {
    margin-left: 0;
    margin-right: 0; }
  body.account #container {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      body.account #container {
        padding: 0 20px; } }
  body.store .section-cart,
  body.store .section-order-billing,
  body.store .section-shipping-method,
  body.store .section-payment-information,
  body.store .section-order-summary {
    background-color: rgba(255, 255, 255, 0.07); }
    body.store .section-cart, body.store .section-cart h1, body.store .section-cart h2, body.store .section-cart h3, body.store .section-cart h4, body.store .section-cart h5, body.store .section-cart h6,
    body.store .section-order-billing,
    body.store .section-order-billing h1,
    body.store .section-order-billing h2,
    body.store .section-order-billing h3,
    body.store .section-order-billing h4,
    body.store .section-order-billing h5,
    body.store .section-order-billing h6,
    body.store .section-shipping-method,
    body.store .section-shipping-method h1,
    body.store .section-shipping-method h2,
    body.store .section-shipping-method h3,
    body.store .section-shipping-method h4,
    body.store .section-shipping-method h5,
    body.store .section-shipping-method h6,
    body.store .section-payment-information,
    body.store .section-payment-information h1,
    body.store .section-payment-information h2,
    body.store .section-payment-information h3,
    body.store .section-payment-information h4,
    body.store .section-payment-information h5,
    body.store .section-payment-information h6,
    body.store .section-order-summary,
    body.store .section-order-summary h1,
    body.store .section-order-summary h2,
    body.store .section-order-summary h3,
    body.store .section-order-summary h4,
    body.store .section-order-summary h5,
    body.store .section-order-summary h6 {
      color: #040404; }
  body.media {
    overflow: auto; }
  body.privacy .section.privacy {
    max-width: 1140px;
    margin: auto;
    padding: 12px; }
    @media screen and (max-width: 840px) {
      body.privacy .section.privacy {
        padding: 20px; } }

.wrap {
  display: block;
  overflow: hidden;
  clear: both;
  margin: auto;
  padding: 0 12px;
  max-width: 1140px; }
  @media screen and (max-width: 1140px) {
    .wrap {
      padding: 0 10px; } }

ul {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
  padding: 0; }
  ul li {
    list-style: none; }

ol {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0; }

@media screen and (max-width: 840px) {
  h1, h2, h3 {
    font-size: 24px;
    line-height: 1.4; } }

/* Form elements */
input {
  border: 0;
  border-radius: 4px;
  padding: 5px;
  height: 36px;
  color: #040404; }
  input:focus {
    opacity: 0.8;
    outline: none; }

button:focus {
  opacity: 0.8;
  outline: none; }

a:focus {
  outline: none; }

select {
  color: #040404;
  text-indent: 5px; }

.input, .select {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  color: #040404; }
  .input label, .select label {
    display: block;
    float: left;
    margin-bottom: 8px;
    padding: 0;
    width: 100%;
    line-height: 18px;
    font-weight: normal; }
  .input input, .select input {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff; }
    .input input:focus, .select input:focus {
      opacity: 0.8;
      outline: none; }
  .input select, .select select {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff;
    height: 36px;
    color: #040404;
    background-color: #fff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
    background-position: calc(98.75% - 5px) 50%;
    background-repeat: no-repeat;
    background-size: 10px;
    border-radius: 4px; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
  .input .error, .select .error {
    position: absolute;
    right: 5px;
    top: -2px;
    font-size: 14px;
    color: #d9534f; }
  .input.input-message .error, .select.input-message .error {
    margin-top: 9px; }
    @media screen and (max-width: 500px) {
      .input.input-message .error, .select.input-message .error {
        margin-left: 0; } }

/* row */
.row {
  margin-left: 0;
  margin-right: 0; }
  .row:before {
    content: none; }

.row-buttons {
  display: block;
  clear: both;
  float: left;
  margin: 20px 0; }
  @media screen and (max-width: 840px) {
    .row-buttons {
      width: 100%; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button {
      width: 100% !important;
      display: block;
      clear: both;
      margin: 5px 0; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button:nth-child(2) {
      margin: 10px 0 !important; } }
  .row-buttons.row-buttons-two {
    width: 100%;
    padding-top: 20px;
    border-top: 1px solid #3C3333; }
    .row-buttons.row-buttons-two .button {
      display: inline-block; }
      .row-buttons.row-buttons-two .button:nth-child(2) {
        float: right; }

/* buttons */
.button, a.button {
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease;
  /* Piss Poor Planning Promotes Poor Performance  */ }
  .button:hover, .button:focus, a.button:hover, a.button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  body.account #page .button,
  body.store #page .button, body.account #page a.button,
  body.store #page a.button {
    color: #fff; }

.button-primary {
  background-color: #FA4C06; }
  .button-primary:hover, .button-primary:focus {
    background-color: #c93d04; }

button[disabled="disabled"],
a[disabled="disabled"] {
  cursor: not-allowed !important;
  opacity: 0.5; }

.btn-accordion {
  display: inline-block;
  padding-bottom: 1em; }
  .btn-accordion:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 0.5em;
    border-style: solid;
    border-width: 0.5em 0.25em 0 0.25em;
    border-color: #040404 transparent transparent transparent; }
  .btn-accordion[aria-expanded="true"]:after {
    transform: rotate(180deg); }

#fancybox-content p {
  color: #040404; }

#fancybox-content button {
  padding: 10px 14px;
  border: none;
  border-radius: 4px;
  background-color: #e4e4e4;
  transition: 0.5s ease;
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease; }
  #fancybox-content button:hover, #fancybox-content button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  #fancybox-content button:hover {
    opacity: 0.75; }

/* account imports */
.main-account {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px;
  min-height: 600px; }
  @media screen and (max-width: 840px) {
    .main-account {
      padding: 10px; }
      @supports (padding: 0px) {
        .main-account {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .main-account, .main-account h1, .main-account h2, .main-account h3, .main-account h4, .main-account h5, .main-account h6 {
    color: #040404; }
  .main-account .header-account {
    width: 100%;
    padding: 10px;
    margin-bottom: 20px;
    border-bottom: 1px solid #3C3333; }
    .main-account .header-account h1 {
      color: #040404;
      margin-top: 10px; }
  .main-account .aside-nav,
  .main-account .aside-account {
    padding: 10px;
    float: left; }
  .main-account .aside-nav {
    width: 25%; }
    @media screen and (max-width: 840px) {
      .main-account .aside-nav {
        display: block;
        clear: both;
        width: 100%;
        padding: 10px; }
        @supports (padding: 0px) {
          .main-account .aside-nav {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
    @media screen and (max-width: 800px) {
      .main-account .aside-nav {
        margin-bottom: 10px; } }
  .main-account .aside-account {
    width: 75%;
    padding-right: 0; }
    @media screen and (max-width: 840px) {
      .main-account .aside-account {
        display: block;
        clear: both;
        width: 100%;
        padding: 10px; }
        @supports (padding: 0px) {
          .main-account .aside-account {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
    .main-account .aside-account .fieldset-account legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404; }

.aside-account .table > tbody > tr > td {
  border-top: 1px solid #e4e4e4; }

.aside-account .table > tbody > tr > th {
  border-top: 1px solid #e4e4e4; }

.aside-account .table > thead tr > th {
  border-bottom: 1px solid #e4e4e4; }

.main-account-manage-address .aside-account-manage-address legend {
  position: relative;
  border: 0;
  width: 100%;
  top: 5px;
  color: #040404; }

.main-account-manage-address .aside-account-manage-address .fieldset-billing {
  border-bottom: 1px solid #3C3333;
  margin-bottom: 20px;
  padding-bottom: 20px; }
  .main-account-manage-address .aside-account-manage-address .fieldset-billing .input input, .main-account-manage-address .aside-account-manage-address .fieldset-billing .input select, .main-account-manage-address .aside-account-manage-address .fieldset-billing .select input, .main-account-manage-address .aside-account-manage-address .fieldset-billing .select select {
    line-height: 1.0;
    margin-right: 0; }

.main-account-manage-address .aside-account-manage-address .fieldset-shipping .checkbox input {
  margin-top: -8px;
  margin-left: -23px; }

.main-account-manage-address .aside-account-manage-address .row-policy-disclaimer {
  margin-top: 20px; }

.main-account-manage-address .aside-account-manage-address .row-buttons {
  padding-top: 20px;
  border-top: 1px solid #3C3333; }

.main-account-dashboard .aside-account-dashboard .table .actions {
  text-align: right; }
  @media screen and (max-width: 840px) {
    .main-account-dashboard .aside-account-dashboard .table .actions {
      text-align: left; } }

@media screen and (max-width: 840px) {
  .main-account-dashboard .aside-account-dashboard .table thead {
    display: none; }
  .main-account-dashboard .aside-account-dashboard tr td, .main-account-dashboard .aside-account-dashboard tr th {
    display: block;
    width: 100%; } }

@media screen and (max-width: 840px) {
  .main-account-managed-linked .aside-account-managed-linked .table thead {
    display: none; }
  .main-account-managed-linked .aside-account-managed-linked tr td, .main-account-managed-linked .aside-account-managed-linked tr th {
    display: block;
    width: 100%; } }

.main-account-managed-linked .aside-account-managed-linked .table tr td {
  vertical-align: middle; }
  .main-account-managed-linked .aside-account-managed-linked .table tr td img {
    margin-right: 10px;
    width: 50px; }
  @media screen and (max-width: 840px) {
    .main-account-managed-linked .aside-account-managed-linked .table tr td:nth-child(1) {
      padding-top: 16px;
      padding-bottom: 16px; }
    .main-account-managed-linked .aside-account-managed-linked .table tr td:nth-child(2) {
      border-top: 0;
      padding-top: 0;
      padding-bottom: 16px; } }

.main-account-manage .aside-account .row-policy-preview {
  border-bottom: 1px solid #3C3333;
  margin-bottom: 20px; }
  .main-account-manage .aside-account .row-policy-preview p {
    padding-bottom: 20px; }

.main-account-manage .aside-account .row-policy-disclaimer {
  margin-top: 20px; }

#container .main-account-manage .error, #container .main-account-manage .error a {
  position: static;
  color: #d9534f; }

.main-account-avatar .section-account-manage-avatar .note {
  display: block;
  clear: both;
  color: #040404; }

.main-account-avatar .section-account-manage-avatar p {
  color: #040404; }

.main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input {
  margin-bottom: 20px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .file {
    margin: 10px 0; }
    .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .file img {
      width: 100px;
      height: 100px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input {
    margin-bottom: 10px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input[type="file"] {
    height: auto;
    line-height: 0;
    text-indent: 0;
    background-color: transparent; }
    .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input[type="file"]:focus {
      opacity: 0.75;
      outline: none; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .url {
    color: #f7f7f7;
    padding: 0 5px 0 5px; }

.main-account-avatar .section-account-manage-avatar .row-privacy-policy-disclaimer {
  margin-top: 20px; }

.main-account-notifications .aside-account-notifications legend {
  position: relative;
  border: 0;
  width: 100%;
  top: 5px;
  color: #040404; }

.main-account-notifications .aside-account-notifications .row-buttons-two {
  padding-top: 20px;
  border-top: 1px solid #3C3333; }

.main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox {
  margin-bottom: 20px; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox label {
    padding-left: 25px; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox input[type="checkbox"] {
    margin-left: -24px;
    margin-top: 2px;
    width: auto;
    height: auto; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox + .checkbox {
    margin-top: 0; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox .note {
    margin: 2px 0 10px 24px; }

.section-order-summary {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-summary {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-summary {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (max-width: 840px) {
    .section-order-summary {
      padding: 20px 20px; }
      .section-order-summary .wrap {
        padding: 0; } }
  .section-order-summary h1, .section-order-summary .h1, .section-order-summary h2, .section-order-summary .h2, .section-order-summary h3, .section-order-summary .h3 {
    margin-top: 10px; }
  .section-order-summary .section-order-information,
  .section-order-summary .section-order-itemization,
  .section-order-summary .section-order-shipments,
  .section-order-summary .section-order-will-call {
    margin-bottom: 20px;
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information,
      .section-order-summary .section-order-itemization,
      .section-order-summary .section-order-shipments,
      .section-order-summary .section-order-will-call {
        padding: 10px; } }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information .table thead,
      .section-order-summary .section-order-itemization .table thead,
      .section-order-summary .section-order-shipments .table thead,
      .section-order-summary .section-order-will-call .table thead {
        display: none; } }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information .table tr td, .section-order-summary .section-order-information .table tr th,
      .section-order-summary .section-order-itemization .table tr td,
      .section-order-summary .section-order-itemization .table tr th,
      .section-order-summary .section-order-shipments .table tr td,
      .section-order-summary .section-order-shipments .table tr th,
      .section-order-summary .section-order-will-call .table tr td,
      .section-order-summary .section-order-will-call .table tr th {
        display: block; } }
    .section-order-summary .section-order-information .table > thead > tr > th,
    .section-order-summary .section-order-itemization .table > thead > tr > th,
    .section-order-summary .section-order-shipments .table > thead > tr > th,
    .section-order-summary .section-order-will-call .table > thead > tr > th {
      border-bottom: 0; }
    .section-order-summary .section-order-information .table > tbody > tr > td,
    .section-order-summary .section-order-itemization .table > tbody > tr > td,
    .section-order-summary .section-order-shipments .table > tbody > tr > td,
    .section-order-summary .section-order-will-call .table > tbody > tr > td {
      border-top: 1px solid #e4e4e4;
      border-bottom: 1px solid #e4e4e4; }
      .section-order-summary .section-order-information .table > tbody > tr > td .sku,
      .section-order-summary .section-order-itemization .table > tbody > tr > td .sku,
      .section-order-summary .section-order-shipments .table > tbody > tr > td .sku,
      .section-order-summary .section-order-will-call .table > tbody > tr > td .sku {
        color: #fff; }
    .section-order-summary .section-order-information .table > tfoot > tr > td,
    .section-order-summary .section-order-itemization .table > tfoot > tr > td,
    .section-order-summary .section-order-shipments .table > tfoot > tr > td,
    .section-order-summary .section-order-will-call .table > tfoot > tr > td {
      border-top: 0;
      border-bottom: 0; }
    .section-order-summary .section-order-information .table > tfoot > tr > th,
    .section-order-summary .section-order-itemization .table > tfoot > tr > th,
    .section-order-summary .section-order-shipments .table > tfoot > tr > th,
    .section-order-summary .section-order-will-call .table > tfoot > tr > th {
      border-top: 0;
      border-bottom: 0; }
  .section-order-summary .section-order-information .col {
    float: left; }
    .section-order-summary .section-order-information .col.col-1-3 {
      width: 100%;
      display: block;
      margin-top: 20px; }
      @media screen and (min-width: 841px) {
        .section-order-summary .section-order-information .col.col-1-3 {
          width: 33.33%; } }
    .section-order-summary .section-order-information .col ul li .button {
      margin-top: 10px; }
  .section-order-summary .section-order-itemization .table > tfoot > tr > th {
    text-align: right; }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-itemization .table > tfoot > tr > th {
        text-align: left; } }
  .section-order-summary .section-order-shipments .row-shipping-information .order.status {
    float: right;
    padding: 5px 12px;
    margin-right: 0;
    background-color: #1777A2;
    border-radius: 20px;
    margin-top: -5px; }
    @media screen and (min-width: 841px) {
      .section-order-summary .section-order-shipments .row-shipping-information .order.status {
        margin-right: 20px; } }
  .section-order-summary .section-order-shipments .row-shipping-information .col {
    float: left; }
    .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2 {
      width: 100%;
      display: block;
      margin-top: 20px; }
      @media screen and (min-width: 841px) {
        .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2 {
          width: 50%; } }
      .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2:nth-child(2) strong {
        margin-bottom: 10px;
        display: block; }
  .section-order-summary .button-row .button {
    float: right; }
  .section-order-summary .trustpilot-review {
    margin: 2em auto;
    overflow: scroll;
    text-align: center; }

.main-account-order-list .aside-order-list h2 {
  margin-top: 0; }

.main-account-order-list .aside-order-list .no-orders {
  margin-top: 10px; }

@media screen and (max-width: 840px) {
  .main-account-order-list .aside-order-list .table thead {
    display: none; }
  .main-account-order-list .aside-order-list tr td, .main-account-order-list .aside-order-list tr th {
    display: block;
    width: 100%; } }

.aside-nav ul li {
  display: block;
  padding: 5px; }
  .aside-nav ul li a {
    display: block; }
    .aside-nav ul li a:hover {
      opacity: 0.6; }
    .aside-nav ul li a i {
      padding-right: 5px; }

.aside-nav ul .item.linked .counter {
  position: relative;
  top: -2px;
  left: 5px;
  padding: 6px 7px;
  border-radius: 50%;
  background-color: #e4e4e4;
  color: #fff;
  font-size: 12px; }

.aside-nav ul .item.avatar {
  text-align: center;
  margin-bottom: 20px; }
  @media screen and (max-width: 840px) {
    .aside-nav ul .item.avatar {
      text-align: left; } }
  .aside-nav ul .item.avatar .pic {
    margin-bottom: 20px;
    transition: 0.5s ease; }
    .aside-nav ul .item.avatar .pic img {
      width: 100%;
      max-width: 100%; }
      @media screen and (max-width: 840px) {
        .aside-nav ul .item.avatar .pic img {
          width: 240px; } }
    .aside-nav ul .item.avatar .pic .edit {
      visibility: hidden;
      position: absolute;
      display: block;
      padding: 8px 16px;
      font-size: 12px;
      font-weight: 400;
      background-color: #040404; }
      .aside-nav ul .item.avatar .pic .edit i {
        padding-right: 2px; }
    .aside-nav ul .item.avatar .pic:hover .edit {
      visibility: visible; }
  .aside-nav ul .item.avatar a {
    display: block; }

/* Modal Bootstrap ;) */
.modal {
  background-color: rgba(4, 4, 4, 0.75); }

/* General Messages */
@media screen and (min-width: 768px) {
  .modal-engine-messages .modal-dialog {
    margin: 12% auto; } }

.modal-engine-messages .modal-dialog .modal-header {
  border-bottom: 0;
  width: 100%; }
  .modal-engine-messages .modal-dialog .modal-header:before {
    content: none; }
  .modal-engine-messages .modal-dialog .modal-header h5 {
    color: #040404; }
  .modal-engine-messages .modal-dialog .modal-header .close {
    color: #040404;
    font-size: 34px;
    text-shadow: none;
    margin-top: -12px;
    opacity: 1.0; }
    .modal-engine-messages .modal-dialog .modal-header .close:hover {
      opacity: 0.75; }

.modal-engine-messages .modal-dialog .modal-body ul li {
  padding-bottom: 5px;
  color: #040404; }

.modal-engine-messages .modal-dialog .modal-body ul i {
  margin: 0 5px; }

.modal-engine-messages .modal-dialog .modal-body ul .glyphicon-alert {
  color: #d9534f; }

.modal-engine-messages .modal-dialog .modal-body ul .glyphicon-thumbs-up {
  color: #6C8869;
  position: relative;
  top: 3px; }

.modal-engine-messages .modal-dialog .modal-footer {
  border-top: 0; }

/* Product Images */
.modal-product-images .modal-dialog {
  padding-top: 0; }
  @media screen and (min-width: 768px) {
    .modal-product-images .modal-dialog {
      margin: 60px auto; } }
  .modal-product-images .modal-dialog img {
    max-width: 100% !important;
    padding: 0 !important; }

.modal-product-images .modal-header {
  border-bottom: 0; }
  @media screen and (min-width: 768px) {
    .modal-product-images .modal-header {
      padding: 0; } }
  .modal-product-images .modal-header .close {
    color: #040404;
    font-size: 34px;
    text-shadow: none;
    margin-top: -12px;
    opacity: 1.0; }
    @media screen and (min-width: 768px) {
      .modal-product-images .modal-header .close {
        font-size: 48px;
        color: #fff;
        position: absolute;
        margin-left: calc(50% + 15px);
        margin-top: -50px;
        left: 50%; } }
    .modal-product-images .modal-header .close:hover {
      opacity: 0.75; }

/* Viva la legacy */
.engine-messages {
  position: fixed;
  top: calc(50% - 200px);
  left: calc(50% - 300px);
  z-index: 1000000000000;
  background-color: #fff;
  width: 600px;
  border-radius: 4px;
  box-shadow: 2px 2px 2px rgba(4, 4, 4, 0.5); }
  @media screen and (max-width: 600px) {
    .engine-messages {
      left: calc(50% - 200px);
      width: 400px; } }
  @media screen and (max-width: 400px) {
    .engine-messages {
      left: calc(50% - 150px);
      width: 300px; } }
  .engine-messages .header {
    display: none; }
  .engine-messages ul {
    display: block; }
    .engine-messages ul li {
      list-style: none; }
    .engine-messages ul.messages {
      margin: 20px 0;
      padding: 10px; }
      .engine-messages ul.messages .error {
        padding: 0 12px;
        color: #040404;
        margin-top: 5px; }
        .engine-messages ul.messages .error i {
          margin-right: 5px;
          color: #d9534f; }
      .engine-messages ul.messages .success {
        padding: 0 12px;
        color: #040404;
        margin-top: 5px; }
    .engine-messages ul.actions {
      padding: 10px;
      overflow: hidden; }
      .engine-messages ul.actions button {
        float: right;
        font-size: 16px;
        text-transform: capitalize;
        font-weight: normal; }
        .engine-messages ul.actions button.close {
          text-shadow: none;
          background-color: #666666;
          color: #fff;
          font-weight: normal;
          padding: 10px 24px;
          border-radius: 4px;
          opacity: 1.0;
          transition: 0.5s ease; }
          .engine-messages ul.actions button.close span {
            font-weight: 300; }
          .engine-messages ul.actions button.close:hover {
            background-color: #e4e4e4; }

/**
 * Styles for store tpl files
 */
/* Type */
/* carousel */
/* common variables for the store && account templates */
/* colors */
/* borders */
/* font */
/* line height */
/* form elements */
/* animations */
/* layout && breakpoints */
/* header / main nav */
/* account */
/* store listing types */
/* store aside */
/* footer */
/* modules */
/* Avatar rollovers */
.avatar_wrapper {
  position: relative;
  max-width: 100%;
  transition: none; }

.avatar_rollover {
  position: absolute;
  z-index: 1100;
  padding: 6px;
  color: #222222;
  border-radius: 5px;
  background-color: #EEEEEE;
  opacity: 0.9; }
  .avatar_rollover img {
    float: left;
    width: 100px;
    height: 100px;
    margin-right: 6px; }
  .avatar_rollover .rollover_content {
    float: left;
    width: 200px;
    overflow: hidden; }
    .avatar_rollover .rollover_content p {
      margin: 0;
      padding: 0; }
    .avatar_rollover .rollover_content .name {
      font-weight: 700;
      font-size: 18px; }
    .avatar_rollover .rollover_content .more dt, .avatar_rollover .rollover_content .more dd {
      width: 49px;
      margin: 0;
      padding: 0;
      float: left; }
    .avatar_rollover .rollover_content .more .stat {
      float: left;
      width: 100px; }

/* common variables for the store && account templates */
.no-border {
  border: 0 !important; }

.clearfix:before, .clearfix:after {
  content: '';
  display: table; }

.clearfix:after {
  clear: both; }

body {
  background-color: rgba(255, 255, 255, 0.07);
  font-family: Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: normal; }
  body.account #page .wrap, body.store #page .wrap {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1140px; }
    @media screen and (max-width: 1140px) {
      body.account #page .wrap, body.store #page .wrap {
        padding: 0 10px; } }
  body.account #page a, body.store #page a {
    transition: 0.5s ease;
    color: #040404; }
    body.account #page a:hover, body.account #page a:focus, body.store #page a:hover, body.store #page a:focus {
      opacity: 0.8;
      color: #666666;
      text-decoration: none;
      box-shadow: none;
      outline: none; }
  body.account .row, body.store .row {
    margin-left: 0;
    margin-right: 0; }
  body.account #container {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      body.account #container {
        padding: 0 20px; } }
  body.store .section-cart,
  body.store .section-order-billing,
  body.store .section-shipping-method,
  body.store .section-payment-information,
  body.store .section-order-summary {
    background-color: rgba(255, 255, 255, 0.07); }
    body.store .section-cart, body.store .section-cart h1, body.store .section-cart h2, body.store .section-cart h3, body.store .section-cart h4, body.store .section-cart h5, body.store .section-cart h6,
    body.store .section-order-billing,
    body.store .section-order-billing h1,
    body.store .section-order-billing h2,
    body.store .section-order-billing h3,
    body.store .section-order-billing h4,
    body.store .section-order-billing h5,
    body.store .section-order-billing h6,
    body.store .section-shipping-method,
    body.store .section-shipping-method h1,
    body.store .section-shipping-method h2,
    body.store .section-shipping-method h3,
    body.store .section-shipping-method h4,
    body.store .section-shipping-method h5,
    body.store .section-shipping-method h6,
    body.store .section-payment-information,
    body.store .section-payment-information h1,
    body.store .section-payment-information h2,
    body.store .section-payment-information h3,
    body.store .section-payment-information h4,
    body.store .section-payment-information h5,
    body.store .section-payment-information h6,
    body.store .section-order-summary,
    body.store .section-order-summary h1,
    body.store .section-order-summary h2,
    body.store .section-order-summary h3,
    body.store .section-order-summary h4,
    body.store .section-order-summary h5,
    body.store .section-order-summary h6 {
      color: #040404; }
  body.media {
    overflow: auto; }
  body.privacy .section.privacy {
    max-width: 1140px;
    margin: auto;
    padding: 12px; }
    @media screen and (max-width: 840px) {
      body.privacy .section.privacy {
        padding: 20px; } }

.wrap {
  display: block;
  overflow: hidden;
  clear: both;
  margin: auto;
  padding: 0 12px;
  max-width: 1140px; }
  @media screen and (max-width: 1140px) {
    .wrap {
      padding: 0 10px; } }

ul {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
  padding: 0; }
  ul li {
    list-style: none; }

ol {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0; }

@media screen and (max-width: 840px) {
  h1, h2, h3 {
    font-size: 24px;
    line-height: 1.4; } }

/* Form elements */
input {
  border: 0;
  border-radius: 4px;
  padding: 5px;
  height: 36px;
  color: #040404; }
  input:focus {
    opacity: 0.8;
    outline: none; }

button:focus {
  opacity: 0.8;
  outline: none; }

a:focus {
  outline: none; }

select {
  color: #040404;
  text-indent: 5px; }

.input, .select {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  color: #040404; }
  .input label, .select label {
    display: block;
    float: left;
    margin-bottom: 8px;
    padding: 0;
    width: 100%;
    line-height: 18px;
    font-weight: normal; }
  .input input, .select input {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff; }
    .input input:focus, .select input:focus {
      opacity: 0.8;
      outline: none; }
  .input select, .select select {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff;
    height: 36px;
    color: #040404;
    background-color: #fff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
    background-position: calc(98.75% - 5px) 50%;
    background-repeat: no-repeat;
    background-size: 10px;
    border-radius: 4px; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
  .input .error, .select .error {
    position: absolute;
    right: 5px;
    top: -2px;
    font-size: 14px;
    color: #d9534f; }
  .input.input-message .error, .select.input-message .error {
    margin-top: 9px; }
    @media screen and (max-width: 500px) {
      .input.input-message .error, .select.input-message .error {
        margin-left: 0; } }

/* row */
.row {
  margin-left: 0;
  margin-right: 0; }
  .row:before {
    content: none; }

.row-buttons {
  display: block;
  clear: both;
  float: left;
  margin: 20px 0; }
  @media screen and (max-width: 840px) {
    .row-buttons {
      width: 100%; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button {
      width: 100% !important;
      display: block;
      clear: both;
      margin: 5px 0; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button:nth-child(2) {
      margin: 10px 0 !important; } }
  .row-buttons.row-buttons-two {
    width: 100%;
    padding-top: 20px;
    border-top: 1px solid #3C3333; }
    .row-buttons.row-buttons-two .button {
      display: inline-block; }
      .row-buttons.row-buttons-two .button:nth-child(2) {
        float: right; }

/* buttons */
.button, a.button {
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease;
  /* Piss Poor Planning Promotes Poor Performance  */ }
  .button:hover, .button:focus, a.button:hover, a.button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  body.account #page .button,
  body.store #page .button, body.account #page a.button,
  body.store #page a.button {
    color: #fff; }

.button-primary {
  background-color: #FA4C06; }
  .button-primary:hover, .button-primary:focus {
    background-color: #c93d04; }

button[disabled="disabled"],
a[disabled="disabled"] {
  cursor: not-allowed !important;
  opacity: 0.5; }

.btn-accordion {
  display: inline-block;
  padding-bottom: 1em; }
  .btn-accordion:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 0.5em;
    border-style: solid;
    border-width: 0.5em 0.25em 0 0.25em;
    border-color: #040404 transparent transparent transparent; }
  .btn-accordion[aria-expanded="true"]:after {
    transform: rotate(180deg); }

#fancybox-content p {
  color: #040404; }

#fancybox-content button {
  padding: 10px 14px;
  border: none;
  border-radius: 4px;
  background-color: #e4e4e4;
  transition: 0.5s ease;
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease; }
  #fancybox-content button:hover, #fancybox-content button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  #fancybox-content button:hover {
    opacity: 0.75; }

/* store imports */
/* mixin for flaged listing for products and categories */
/**
 * general listing for products and categories
 */
/* store elements */
.main-store-products,
.main-category-products {
  width: 75%;
  float: left;
  padding-right: 15px; }
  .main-store-products:before, .main-store-products:after,
  .main-category-products:before,
  .main-category-products:after {
    content: '';
    display: table; }
  .main-store-products:after,
  .main-category-products:after {
    clear: both; }
  @media screen and (max-width: 840px) {
    .main-store-products,
    .main-category-products {
      display: block;
      clear: both;
      width: 100%;
      padding: 10px; }
      @supports (padding: 0px) {
        .main-store-products,
        .main-category-products {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .main-store-products img,
  .main-category-products img {
    width: 100%; }

.aside-store {
  color: #040404;
  width: 25%;
  float: right;
  padding-left: 15px; }
  @media screen and (max-width: 840px) {
    .aside-store {
      display: block;
      clear: both;
      width: 100%;
      padding: 10px; }
      @supports (padding: 0px) {
        .aside-store {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }

aside#wu-alert-banner {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  width: 100vw;
  min-height: 50px;
  position: absolute;
  background-color: #db0000;
  opacity: 0.9;
  color: #fff;
  z-index: 1234;
  display: flex;
  align-items: center;
  justify-content: center; }
  aside#wu-alert-banner .message-text {
    text-align: center;
    flex-basis: 50%; }
    aside#wu-alert-banner .message-text .more-info {
      color: #fff;
      text-decoration: underline;
      display: block; }
      aside#wu-alert-banner .message-text .more-info:hover, aside#wu-alert-banner .message-text .more-info:focus {
        color: #fff; }
  aside#wu-alert-banner .close {
    cursor: pointer;
    opacity: 1;
    color: #fff;
    height: 20px;
    width: 20px;
    position: absolute;
    right: 10px;
    top: 10px; }

.section-order-billing {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-billing {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-billing {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-order-billing .section-billing-profile,
  .section-order-billing .section-billing-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-order-billing .section-billing-profile,
      .section-order-billing .section-billing-information {
        padding: 10px; } }
    .section-order-billing .section-billing-profile h1, .section-order-billing .section-billing-profile h2, .section-order-billing .section-billing-profile h3,
    .section-order-billing .section-billing-information h1,
    .section-order-billing .section-billing-information h2,
    .section-order-billing .section-billing-information h3 {
      margin-top: 0; }
    .section-order-billing .section-billing-profile input, .section-order-billing .section-billing-profile select,
    .section-order-billing .section-billing-information input,
    .section-order-billing .section-billing-information select {
      background-color: #fff;
      border-radius: 4px;
      font: 300 16px "Helvetica Neue", Helvetica, Arial, sans-serif; }
    .section-order-billing .section-billing-profile .row-payment-method,
    .section-order-billing .section-billing-information .row-payment-method {
      margin-bottom: 20px; }
    .section-order-billing .section-billing-profile .fieldset,
    .section-order-billing .section-billing-information .fieldset {
      padding: 0 20px 0 0;
      float: left;
      width: 50%;
      position: relative;
      transition: 0.5s ease; }
      @media screen and (max-width: 840px) {
        .section-order-billing .section-billing-profile .fieldset,
        .section-order-billing .section-billing-information .fieldset {
          display: block;
          width: 100%;
          padding: 0; } }
      .section-order-billing .section-billing-profile .fieldset legend,
      .section-order-billing .section-billing-information .fieldset legend {
        position: relative;
        border: 0;
        width: 100%;
        top: 5px;
        color: #040404; }
      .section-order-billing .section-billing-profile .fieldset ul,
      .section-order-billing .section-billing-information .fieldset ul {
        position: relative; }
    .section-order-billing .section-billing-profile .button:nth-child(2),
    .section-order-billing .section-billing-information .button:nth-child(2) {
      margin-left: 10px; }
    .section-order-billing .section-billing-profile .button-continue,
    .section-order-billing .section-billing-profile .button-save,
    .section-order-billing .section-billing-information .button-continue,
    .section-order-billing .section-billing-information .button-save {
      background-color: #FA4C06; }
      .section-order-billing .section-billing-profile .button-continue:hover, .section-order-billing .section-billing-profile .button-continue:focus,
      .section-order-billing .section-billing-profile .button-save:hover,
      .section-order-billing .section-billing-profile .button-save:focus,
      .section-order-billing .section-billing-information .button-continue:hover,
      .section-order-billing .section-billing-information .button-continue:focus,
      .section-order-billing .section-billing-information .button-save:hover,
      .section-order-billing .section-billing-information .button-save:focus {
        background-color: #c93d04; }
  .section-order-billing .section-billing-profile {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding-bottom: 0; }
  .section-order-billing .section-billing-information {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding-top: 0; }
  .section-order-billing .StripeElement {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 8px 10px;
    width: 100%;
    height: 36px;
    text-align: left;
    text-indent: 9px;
    color: #000;
    background-color: #fff;
    border-radius: 4px; }

.cart-info {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 0; }
  @media screen and (max-width: 840px) {
    .cart-info {
      padding: 10px; } }
  .cart-info .cart-items {
    float: right; }
    @media screen and (max-width: 840px) {
      .cart-info .cart-items {
        float: none; } }

.section-cart {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-cart {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-cart {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-cart h1 {
    font-size: 28px;
    margin: 20px 0 40px 0; }
    @media screen and (max-width: 840px) {
      .section-cart h1 {
        text-align: center; } }
  .section-cart .section-cart-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-cart .section-cart-information {
        padding: 10px; } }
    .section-cart .section-cart-information .review {
      border-bottom: 1px solid #e4e4e4;
      padding: 10px 12px; }
  .section-cart .table {
    border-radius: 4px;
    padding: 10px; }
    @media screen and (max-width: 840px) {
      .section-cart .table thead {
        display: none; } }
    .section-cart .table .total {
      text-align: right; }
      @media screen and (max-width: 840px) {
        .section-cart .table .total {
          text-align: left; } }
    .section-cart .table th.quantity,
    .section-cart .table td.quantity {
      white-space: nowrap;
      width: 100px; }
      @media screen and (max-width: 840px) {
        .section-cart .table th.quantity,
        .section-cart .table td.quantity {
          width: 100%; } }
    .section-cart .table th {
      padding: 12px; }
    .section-cart .table td {
      font-weight: 300;
      padding: 12px;
      vertical-align: baseline; }
      @media screen and (max-width: 840px) {
        .section-cart .table td {
          display: block;
          width: 100%; }
          .section-cart .table td::before {
            content: attr(data-description);
            display: block;
            font-weight: 800; } }
      @media screen and (max-width: 840px) {
        .section-cart .table td.td-bundle-extra {
          display: none; } }
      .section-cart .table td .button-quantity {
        background-color: #666666;
        font-size: 12px;
        font-weight: bold;
        height: 32px;
        line-height: 1;
        padding: 0;
        text-transform: uppercase;
        width: 31px; }
        .section-cart .table td .button-quantity:hover {
          background-color: #444444; }
      .section-cart .table td.item a {
        margin-right: 5px;
        text-transform: capitalize; }
        .section-cart .table td.item a:hover {
          color: #e4e4e4; }
      .section-cart .table td.item .sku {
        color: #666666;
        display: block; }
      .section-cart .table td.quantity input,
      .section-cart .table td.quantity select {
        background-color: #fff;
        border: 0;
        color: #040404;
        height: 32px;
        margin-right: 4px;
        position: relative;
        top: 2px;
        width: 36px; }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot {
        display: block;
        padding: 20px 0; } }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot th,
      .section-cart .table tfoot td {
        display: block;
        padding: 8px 12px 4px 12px; } }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot td {
        padding: 2px 12px; } }
  .section-cart .table > thead > tr > th,
  .section-cart .table > tbody > tr > td {
    border-bottom: 1px solid #e4e4e4;
    border-top: 0; }
    @media screen and (max-width: 840px) {
      .section-cart .table > thead > tr > th:not(:last-child),
      .section-cart .table > tbody > tr > td:not(:last-child) {
        border-color: rgba(228, 228, 228, 0.2); } }
  .section-cart .table > tfoot > tr > td,
  .section-cart .table > tfoot > tr > th {
    border-top: 0;
    text-align: right;
    width: 100px; }
    @media screen and (max-width: 840px) {
      .section-cart .table > tfoot > tr > td,
      .section-cart .table > tfoot > tr > th {
        text-align: left;
        width: 100%; } }
  .section-cart .row-buttons-actions {
    border-top: 1px solid #3C3333;
    margin-top: 20px;
    overflow: hidden;
    padding: 20px 0;
    width: 100%; }
    @media screen and (min-width: 840px) {
      .section-cart .row-buttons-actions .button-group {
        float: right; } }
    @media screen and (max-width: 840px) {
      .section-cart .row-buttons-actions .button-continue {
        padding: 12px;
        width: 100%; }
        .section-cart .row-buttons-actions .button-continue:hover, .section-cart .row-buttons-actions .button-continue:focus {
          color: #666666; } }
    .section-cart .row-buttons-actions a,
    .section-cart .row-buttons-actions button {
      padding: 12px 24px;
      background-color: #666666;
      border: 0;
      border-radius: 4px;
      color: #fff;
      display: inline-block;
      font-size: initial;
      text-align: center;
      text-transform: capitalize;
      transition: 0.5s ease;
      display: inline-block; }
      .section-cart .row-buttons-actions a:hover, .section-cart .row-buttons-actions a:focus,
      .section-cart .row-buttons-actions button:hover,
      .section-cart .row-buttons-actions button:focus {
        background-color: gray;
        color: #fff;
        text-decoration: none;
        outline: 0;
        box-shadow: none; }
      @media screen and (max-width: 840px) {
        .section-cart .row-buttons-actions a,
        .section-cart .row-buttons-actions button {
          display: block;
          margin-bottom: 20px;
          width: 100%; } }
      .section-cart .row-buttons-actions a:hover, .section-cart .row-buttons-actions a:focus,
      .section-cart .row-buttons-actions button:hover,
      .section-cart .row-buttons-actions button:focus {
        background-color: #AAAAAA; }
    .section-cart .row-buttons-actions .button-update {
      margin-right: 20px; }
      @media screen and (max-width: 840px) {
        .section-cart .row-buttons-actions .button-update {
          margin-right: 0; } }
    .section-cart .row-buttons-actions .button-checkout {
      background-color: #FA4C06; }
      .section-cart .row-buttons-actions .button-checkout:hover, .section-cart .row-buttons-actions .button-checkout:focus {
        background-color: #c93d04; }

.section-store-categories .item {
  width: 33%;
  text-align: center; }
  .section-store-categories .item .figure {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden; }
    .section-store-categories .item .figure a {
      display: block;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0; }
    .section-store-categories .item .figure img {
      width: 100%;
      max-width: 100%;
      vertical-align: middle;
      transition: 0.5s ease; }
      @media screen and (max-width: 840px) {
        .section-store-categories .item .figure img {
          margin: auto; } }
  .section-store-categories .item .product-details {
    margin-top: 10px; }
    .section-store-categories .item .product-details .product-container .product {
      margin-top: 5px; }

.section-store-categories .header-store-categories h2.title {
  margin-bottom: 60px; }

.section-store-categories .item {
  height: 100%;
  min-height: 100%;
  margin-bottom: 20px; }

.section-store-categories .item .content {
  background-color: #fff; }
  .section-store-categories .item .content a {
    padding: 6px 10px 10px 10px; }
    .section-store-categories .item .content a:hover {
      color: rgba(4, 4, 4, 0.5); }

.section-store-categories .header-categories .title, .section-store-categories .header-store-categories .title {
  margin-bottom: 20px; }

.section-store-categories .detail-store-categories {
  overflow: hidden;
  margin: 20px auto 100px auto; }
  .section-store-categories .detail-store-categories .listing {
    display: flex;
    flex-wrap: wrap; }

.section-store-categories .details.excerpt .name {
  position: relative;
  top: 5px; }

/* store category nav list */
.nav-categories {
  text-align: center; }
  .nav-categories .wrap {
    padding-bottom: 12px;
    padding-top: 12px; }
    .nav-categories .wrap .listing {
      display: inline-block; }

.main-category-products .header-category h1.title {
  margin-bottom: 60px; }

.main-category-products .listing {
  display: flex;
  flex-wrap: wrap; }

.main-category-products .detail {
  display: block;
  overflow: hidden;
  margin: 0 0 100px 0; }
  .main-category-products .detail .item {
    width: 33%;
    text-align: center; }
    .main-category-products .detail .item .figure {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 100%;
      min-width: 0;
      max-width: 100%;
      overflow: hidden; }
      .main-category-products .detail .item .figure a {
        display: block;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0; }
      .main-category-products .detail .item .figure img {
        width: 100%;
        max-width: 100%;
        vertical-align: middle;
        transition: 0.5s ease; }
        @media screen and (max-width: 840px) {
          .main-category-products .detail .item .figure img {
            margin: auto; } }
    .main-category-products .detail .item .product-details {
      margin-top: 10px; }
      .main-category-products .detail .item .product-details .product-container .product {
        margin-top: 5px; }
  .main-category-products .detail .item {
    padding: 0 20px;
    margin-bottom: 40px; }
    @media screen and (max-width: 500px) {
      .main-category-products .detail .item {
        padding: 0 10px;
        width: 50%; }
        .main-category-products .detail .item .name {
          font-size: 0.8em; } }
  .main-category-products .detail .details .tab {
    display: none; }
  .main-category-products .detail .details .product-details {
    text-align: center; }
  .main-category-products .detail .cash {
    font-weight: 800; }

@media screen and (max-width: 840px) {
  .section-order-extra {
    padding: 20px; } }

.section-order-extra .section-additional-information {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px; }
  @media screen and (max-width: 840px) {
    .section-order-extra .section-additional-information {
      padding: 10px; } }
  .section-order-extra .section-additional-information .fieldset legend {
    position: relative;
    border: 0;
    width: 100%;
    top: 5px;
    color: #040404;
    color: #fff; }
  .section-order-extra .section-additional-information .row-buttons .button-shipping-back {
    padding: 14px 24px; }
    .section-order-extra .section-additional-information .row-buttons .button-shipping-back:hover, .section-order-extra .section-additional-information .row-buttons .button-shipping-back:focus {
      color: #fff; }
  .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info {
    background-color: #FA4C06;
    margin-left: 10px; }
    .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info:hover, .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info:focus {
      background-color: #c93d04; }

.section-payment-information {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-payment-information {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-payment-information {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-payment-information .header-order-summary {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px;
    margin-bottom: 30px; }
    @media screen and (max-width: 840px) {
      .section-payment-information .header-order-summary {
        padding: 10px; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .header-order-summary {
        padding: 0 20px; } }
  .section-payment-information .section-payment-address-information,
  .section-payment-information .section-purchase-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information,
      .section-payment-information .section-purchase-information {
        padding: 10px; } }
    .section-payment-information .section-payment-address-information .col,
    .section-payment-information .section-purchase-information .col {
      float: left; }
      .section-payment-information .section-payment-address-information .col.col-1-2,
      .section-payment-information .section-purchase-information .col.col-1-2 {
        width: 50%;
        margin-bottom: 20px; }
        @media screen and (max-width: 840px) {
          .section-payment-information .section-payment-address-information .col.col-1-2,
          .section-payment-information .section-purchase-information .col.col-1-2 {
            width: 100%;
            display: block;
            clear: both; }
            .section-payment-information .section-payment-address-information .col.col-1-2:nth-child(2),
            .section-payment-information .section-purchase-information .col.col-1-2:nth-child(2) {
              margin-top: 20px; } }
        .section-payment-information .section-payment-address-information .col.col-1-2 ul:nth-child(2),
        .section-payment-information .section-purchase-information .col.col-1-2 ul:nth-child(2) {
          margin: 10px 0; }
        .section-payment-information .section-payment-address-information .col.col-1-2 ul li:nth-child(1),
        .section-payment-information .section-purchase-information .col.col-1-2 ul li:nth-child(1) {
          padding-bottom: 5px; }
    .section-payment-information .section-payment-address-information .table > thead > tr > th,
    .section-payment-information .section-payment-address-information .table > tbody > tr > td,
    .section-payment-information .section-payment-address-information .table > tfoot > tr > td,
    .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
    .section-payment-information .section-purchase-information .table > thead > tr > th,
    .section-payment-information .section-purchase-information .table > tbody > tr > td,
    .section-payment-information .section-purchase-information .table > tfoot > tr > td,
    .section-payment-information .section-purchase-information .table > tfoot > tr > th {
      border-bottom: 1px solid #e4e4e4;
      border-top: 0; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table > thead > tr > th:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tbody > tr > td:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tfoot > tr > td:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tfoot > tr > th:not(:last-child),
        .section-payment-information .section-purchase-information .table > thead > tr > th:not(:last-child),
        .section-payment-information .section-purchase-information .table > tbody > tr > td:not(:last-child),
        .section-payment-information .section-purchase-information .table > tfoot > tr > td:not(:last-child),
        .section-payment-information .section-purchase-information .table > tfoot > tr > th:not(:last-child) {
          border-color: rgba(228, 228, 228, 0.2); } }
    .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
    .section-payment-information .section-purchase-information .table > tfoot > tr > th {
      text-align: right; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table > tfoot > tr > td,
      .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
      .section-payment-information .section-purchase-information .table > tfoot > tr > td,
      .section-payment-information .section-purchase-information .table > tfoot > tr > th {
        text-align: left;
        width: 100%;
        border-top: 0;
        border-bottom: 0; } }
    .section-payment-information .section-payment-address-information .table .total,
    .section-payment-information .section-purchase-information .table .total {
      text-align: right; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .total,
        .section-payment-information .section-purchase-information .table .total {
          text-align: left; } }
      .section-payment-information .section-payment-address-information .table .total strong,
      .section-payment-information .section-purchase-information .table .total strong {
        background-color: #5cb85c;
        color: #fff;
        padding: 6px 8px;
        border-radius: 14px;
        font-size: 1.2em; }
    .section-payment-information .section-payment-address-information .table .sku,
    .section-payment-information .section-purchase-information .table .sku {
      color: #666666; }
    .section-payment-information .section-payment-address-information .table .quantity,
    .section-payment-information .section-purchase-information .table .quantity {
      text-align: center; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .quantity,
        .section-payment-information .section-purchase-information .table .quantity {
          text-align: left; } }
    .section-payment-information .section-payment-address-information .table a.button,
    .section-payment-information .section-purchase-information .table a.button {
      width: 160px;
      font-size: 12px; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table a.button,
        .section-payment-information .section-purchase-information .table a.button {
          width: 100%; } }
    .section-payment-information .section-payment-address-information .table .button,
    .section-payment-information .section-purchase-information .table .button {
      display: block; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .button,
        .section-payment-information .section-purchase-information .table .button {
          width: 100%; } }
    .section-payment-information .section-payment-address-information .table #promoCode,
    .section-payment-information .section-purchase-information .table #promoCode {
      display: none; }
      .section-payment-information .section-payment-address-information .table #promoCode input,
      .section-payment-information .section-purchase-information .table #promoCode input {
        text-align: left;
        width: 340px;
        display: inline;
        height: 42px;
        text-indent: 9px;
        background-color: #fff; }
        @media screen and (max-width: 840px) {
          .section-payment-information .section-payment-address-information .table #promoCode input,
          .section-payment-information .section-purchase-information .table #promoCode input {
            margin-top: 10px;
            width: 100%; } }
      .section-payment-information .section-payment-address-information .table #promoCode button,
      .section-payment-information .section-purchase-information .table #promoCode button {
        margin-top: 10px;
        display: inline;
        font-size: 12px;
        background-color: #FA4C06; }
        .section-payment-information .section-payment-address-information .table #promoCode button:hover, .section-payment-information .section-payment-address-information .table #promoCode button:focus,
        .section-payment-information .section-purchase-information .table #promoCode button:hover,
        .section-payment-information .section-purchase-information .table #promoCode button:focus {
          background-color: #c93d04; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table thead,
      .section-payment-information .section-purchase-information .table thead {
        display: none; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table td,
      .section-payment-information .section-purchase-information .table td {
        display: block;
        width: 100%; }
        .section-payment-information .section-payment-address-information .table td:before,
        .section-payment-information .section-purchase-information .table td:before {
          content: attr(data-description);
          display: block;
          font-weight: 800; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot,
      .section-payment-information .section-purchase-information .table tfoot {
        padding: 20px 0; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot th, .section-payment-information .section-payment-address-information .table tfoot td,
      .section-payment-information .section-purchase-information .table tfoot th,
      .section-payment-information .section-purchase-information .table tfoot td {
        display: block;
        padding: 12px 8px 4px 8px;
        border-bottom: 0;
        border-top: 0; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot td,
      .section-payment-information .section-purchase-information .table tfoot td {
        padding: 8px; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table #totals tr .grand-total,
      .section-payment-information .section-purchase-information .table #totals tr .grand-total {
        margin-bottom: 20px; } }
  .section-payment-information .section-purchase-information {
    margin-top: 20px; }
    .section-payment-information .section-purchase-information .table {
      margin-bottom: 40px; }
    .section-payment-information .section-purchase-information .row-review a {
      text-decoration: underline; }
    .section-payment-information .section-purchase-information .button-continue {
      background-color: #5cb85c; }
      .section-payment-information .section-purchase-information .button-continue:hover {
        background-color: #449d44; }
  .section-payment-information a.button {
    text-align: center; }
    .section-payment-information a.button:hover, .section-payment-information a.button:focus {
      color: #fff; }
  .section-payment-information .row-review {
    margin-top: 20px; }

.section-will-call .section-will-call-form {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px; }
  @media screen and (max-width: 840px) {
    .section-will-call .section-will-call-form {
      padding: 10px; } }

.aside-store {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px;
  float: right;
  width: 25%;
  margin: 0; }
  @media screen and (max-width: 840px) {
    .aside-store {
      padding: 10px; } }
  @media screen and (max-width: 840px) {
    .aside-store {
      display: block;
      width: 100%; } }
  .aside-store > .header {
    padding: 0 0 15px 0; }
  .aside-store .header .title {
    margin-bottom: 20px; }
  .aside-store .header .cart-items {
    float: none; }
  .aside-store .header-aside .title {
    color: #040404; }
  .aside-store .header-aside .meta .expire .cart {
    font-size: 12px; }
  .aside-store .view-cart {
    text-align: center; }
    .aside-store .view-cart .button.cart {
      display: inline-block;
      background-color: #FA4C06;
      padding: 11px 20px;
      font-size: 14px; }
      .aside-store .view-cart .button.cart .badge {
        background-color: #fff;
        color: #FA4C06;
        margin: -0.2em 0 0 0.5em; }
      .aside-store .view-cart .button.cart:hover {
        background-color: #c93d04; }
  .aside-store .cart-items {
    margin: 10px auto 5px;
    text-align: center; }
  .aside-store .title {
    border-right: 0; }
  .aside-store .listing .item {
    padding: 10px 5px;
    border-bottom: 1px solid #e4e4e4; }
    .aside-store .listing .item span, .aside-store .listing .item a {
      transition: 0.5s ease; }
  .aside-store .section-categories .header-aside, .aside-store .section-categories .header-categories {
    background-color: initial;
    border-color: transparent; }
    .aside-store .section-categories .header-aside .title, .aside-store .section-categories .header-categories .title {
      margin: 0;
      font-size: 16px;
      text-align: center; }
  .aside-store .section-categories .detail ul li:nth-child(1) {
    border-top: 1px solid #e4e4e4; }
  .aside-store .section-categories .item.current {
    font-weight: 800; }
  @media screen and (min-width: 840px) {
    .aside-store .section-categories .collapse, .aside-store .section-categories .collapsing {
      display: block;
      height: auto !important; }
    .aside-store .section-categories .btn-accordion:after {
      display: none; } }

.cart-timer {
  text-align: center; }
  .cart-timer .expire {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 0.9em;
    white-space: normal; }
    .cart-timer .expire .cart {
      visibility: hidden;
      color: #fff; }
      .cart-timer .expire .cart-visible {
        visibility: visible; }

.checkout-progress {
  background-color: #f7f7f7;
  text-align: center;
  padding: 10px 0;
  margin: 10px auto 30px;
  display: block;
  border-radius: 4px;
  max-width: 1140px; }
  .checkout-progress li {
    color: #040404;
    display: inline;
    padding: 20px 10px; }
    @media screen and (max-width: 840px) {
      .checkout-progress li {
        display: block;
        padding: 10px; } }
    .checkout-progress li i {
      color: #5cb85c;
      top: 3px;
      padding-right: 3px; }
  .checkout-progress .current {
    font-weight: 800; }

.section-product-detail {
  color: #040404; }
  @supports (padding: 0px) {
    .section-product-detail {
      padding-left: max(10px, env(safe-area-inset-left));
      padding-right: max(10px, env(safe-area-inset-right)); } }
  .section-product-detail .wrap {
    display: block;
    overflow: hidden;
    background-color: #f7f7f7;
    border: 0 solid #3C3333;
    border-radius: 4px;
    color: #040404;
    padding: 20px; }
    @media screen and (max-width: 840px) {
      .section-product-detail .wrap {
        padding: 10px; }
        @supports (padding: 0px) {
          .section-product-detail .wrap {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (min-width: 841px) {
    .section-product-detail .section-product-description,
    .section-product-detail .section-product-purchase {
      float: left;
      width: 50%;
      padding: 12px; } }
  .section-product-detail .section-product-description .figure {
    background-color: #fff;
    border: 0 solid #3C3333;
    max-width: 400px;
    margin: 10px auto;
    text-align: center; }
    .section-product-detail .section-product-description .figure.active .image-placeholder {
      display: none; }
    .section-product-detail .section-product-description .figure .image {
      max-width: 96%;
      margin: 2% auto;
      padding: 2%;
      vertical-align: middle;
      transition: 0.5s ease; }
    .section-product-detail .section-product-description .figure ul li {
      display: inline; }
      .section-product-detail .section-product-description .figure ul li img {
        transition: 0.5s ease; }
        .section-product-detail .section-product-description .figure ul li img:hover {
          opacity: 0.8; }
  .section-product-detail .section-product-description .product-social {
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin: 2em 0; }
    .section-product-detail .section-product-description .product-social .like {
      margin-top: 0;
      width: 80px; }
    .section-product-detail .section-product-description .product-social .trustpilot-widget {
      width: 180px;
      height: 38px; }
  .section-product-detail .section-product-purchase {
    margin-bottom: 60px; }
    .section-product-detail .section-product-purchase > h1 {
      color: #040404;
      font-size: 22px;
      padding-top: 0;
      margin-top: 0;
      line-height: 1em; }
    .section-product-detail .section-product-purchase .price {
      font-size: 30px;
      margin: 0; }
    .section-product-detail .section-product-purchase p {
      margin: 0.25em 0 0.5em 0;
      line-height: 1.5em; }
    .section-product-detail .section-product-purchase ul li {
      list-style: none;
      margin: 0; }
      .section-product-detail .section-product-purchase ul li.price {
        margin-bottom: 10px; }
      .section-product-detail .section-product-purchase ul li.stock, .section-product-detail .section-product-purchase ul li.sku {
        display: inline-block; }
      .section-product-detail .section-product-purchase ul li.stock {
        background-color: #6C8869;
        color: #fff;
        border-radius: 15px;
        padding: 0 10px;
        font-size: 12px;
        margin-right: 6px;
        line-height: 2; }
        .section-product-detail .section-product-purchase ul li.stock.out {
          background-color: #d9534f; }
    .section-product-detail .section-product-purchase .purchase_form fieldset {
      margin-top: 20px;
      padding-top: 0;
      position: relative;
      transition: all 1ms 100ms; }
      .section-product-detail .section-product-purchase .purchase_form fieldset legend {
        padding: 0;
        border-bottom: 0;
        margin-bottom: 0; }
        .section-product-detail .section-product-purchase .purchase_form fieldset legend span {
          color: #040404;
          display: block;
          padding: 2px 0 10px 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset input {
        color: #040404;
        line-height: 1.0;
        background-color: #fff; }
        .section-product-detail .section-product-purchase .purchase_form fieldset input:focus {
          opacity: 0.6;
          outline: none; }
      .section-product-detail .section-product-purchase .purchase_form fieldset input[type="radio"], .section-product-detail .section-product-purchase .purchase_form fieldset input[type="checkbox"] {
        margin-top: 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select label {
        margin-right: 4px;
        width: auto; }
        @media screen and (max-width: 840px) {
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select label {
            line-height: 26px; } }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select select {
        border: 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment {
        padding-top: 10px; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked {
          display: block;
          padding: 12px 6px;
          border-radius: 5px;
          background-color: #B4D7B8;
          border: 1px solid #6C8869;
          line-height: 1.5; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked label {
            color: #666666;
            padding-left: 30px; }
            .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked label span {
              color: #6C8869;
              display: block; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked input {
            margin: 2px 0 0 -25px;
            width: auto;
            height: auto; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart {
        padding-top: 10px; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity {
          display: inline;
          width: 50px; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity label {
            display: inline;
            margin-right: 5px; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity .error {
            position: absolute;
            top: 35px;
            color: #d9534f; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
          float: right;
          padding: 2px 10px;
          width: 140px;
          font-size: 16px;
          background-color: #FA4C06;
          transition: 0.5s ease; }
          @media screen and (max-width: 400px) {
            .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
              display: block;
              clear: both;
              width: 100%;
              margin: 10px auto; } }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart:hover {
            background-color: #c93d04; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul li {
        line-height: 36px;
        position: relative; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul + ul {
        margin-top: 10px;
        border-top: 1px solid #3C3333; }
    .section-product-detail .section-product-purchase .meta {
      padding: 0 0 20px 0;
      margin-bottom: 20px;
      border-bottom: 1px solid #3C3333; }

/* 2-col Product Listing */
@media screen and (max-width: 500px) {
  .main-store-products .header-products .title {
    text-align: center; } }

@media screen and (max-width: 500px) {
  .main-store-products .products .item {
    width: 100%; } }

.main-store-products .products .cost {
  font-weight: 800; }

.main-store-products .products.section-products-featured {
  overflow: hidden; }
  .main-store-products .products.section-products-featured .listing .none {
    display: none; }

.main-store-products .products.section-products {
  overflow: hidden;
  margin-bottom: 20px; }

/* 3-col Product Listing */
.section-products-featured, .section-products {
  display: block;
  clear: both;
  overflow: hidden; }
  .section-products-featured .listing, .section-products .listing {
    display: flex;
    flex-wrap: wrap; }
    .section-products-featured .listing .item, .section-products .listing .item {
      width: 33%;
      padding: 0 20px;
      margin-bottom: 40px; }
      @media screen and (max-width: 500px) {
        .section-products-featured .listing .item, .section-products .listing .item {
          padding: 0 10px;
          width: 50%; } }
      .section-products-featured .listing .item .flag, .section-products .listing .item .flag {
        display: none; }
      .section-products-featured .listing .item .tab, .section-products .listing .item .tab {
        display: none; }
      .section-products-featured .listing .item .product-details, .section-products-featured .listing .item .tab, .section-products .listing .item .product-details, .section-products .listing .item .tab {
        text-align: center; }

.section-products-featured .listing .item {
  width: 50%; }
  @media screen and (max-width: 500px) {
    .section-products-featured .listing .item {
      width: 100%; } }

@media screen and (max-width: 500px) {
  .section-products .item .name {
    font-size: 0.8em; } }

.section-shipping-method {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-shipping-method {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-shipping-method {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-shipping-method .section-shipping-address-container,
  .section-shipping-method .section-shipping-method-container {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-shipping-method .section-shipping-address-container,
      .section-shipping-method .section-shipping-method-container {
        padding: 10px; } }
    .section-shipping-method .section-shipping-address-container .button-save-address,
    .section-shipping-method .section-shipping-address-container .button-save-method,
    .section-shipping-method .section-shipping-method-container .button-save-address,
    .section-shipping-method .section-shipping-method-container .button-save-method {
      background-color: #FA4C06; }
      .section-shipping-method .section-shipping-address-container .button-save-address:hover, .section-shipping-method .section-shipping-address-container .button-save-address:focus,
      .section-shipping-method .section-shipping-address-container .button-save-method:hover,
      .section-shipping-method .section-shipping-address-container .button-save-method:focus,
      .section-shipping-method .section-shipping-method-container .button-save-address:hover,
      .section-shipping-method .section-shipping-method-container .button-save-address:focus,
      .section-shipping-method .section-shipping-method-container .button-save-method:hover,
      .section-shipping-method .section-shipping-method-container .button-save-method:focus {
        background-color: #c93d04; }
  .section-shipping-method .section-shipping-address-container .fieldset-change-shipping-address .checkbox label {
    margin-left: 20px; }
  .section-shipping-method .section-shipping-address-container .fieldset-change-shipping-address .checkbox input {
    margin: 2px 0 0 -20px; }
  .section-shipping-method .section-shipping-method-container {
    margin-top: 20px; }
  .section-shipping-method .fieldset {
    padding: 0 20px 0 0;
    float: left;
    width: 50%;
    position: relative;
    transition: 0.5s ease;
    margin: 20px 0; }
    @media screen and (max-width: 840px) {
      .section-shipping-method .fieldset {
        width: 100%;
        display: block;
        clear: both;
        padding: 0; }
        .section-shipping-method .fieldset:nth-child(2) {
          margin-top: 20px; } }
    .section-shipping-method .fieldset legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404; }
    .section-shipping-method .fieldset .checkbox input {
      width: auto;
      height: auto;
      margin: 0 5px 10px 0; }
    .section-shipping-method .fieldset .checkbox label {
      padding: 0;
      margin: 0  5px 0 0; }
    .section-shipping-method .fieldset .checkbox select {
      height: 36px;
      color: #040404;
      background-color: #fff;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
      background-position: calc(98.75% - 5px) 50%;
      background-repeat: no-repeat;
      background-size: 10px;
      border-radius: 4px;
      line-height: 36px;
      width: calc(100%  - 80px);
      padding: 0;
      border: 0;
      margin-bottom: 10px; }
      .section-shipping-method .fieldset .checkbox select:focus {
        opacity: 0.8;
        outline: none; }
    .section-shipping-method .fieldset .radio + .radio, .section-shipping-method .fieldset .checkbox + .checkbox {
      margin-top: 0; }
  .section-shipping-method #internationalFieldset .checkbox input {
    margin: 0;
    width: 20px;
    height: auto;
    position: relative; }
  .section-shipping-method .row-buttons .button:nth-child(2) {
    margin-left: 10px; }

/* Modal Bootstrap ;) */
.modal {
  background-color: rgba(4, 4, 4, 0.75); }

/* General Messages */
@media screen and (min-width: 768px) {
  .modal-engine-messages .modal-dialog {
    margin: 12% auto; } }

.modal-engine-messages .modal-dialog .modal-header {
  border-bottom: 0;
  width: 100%; }
  .modal-engine-messages .modal-dialog .modal-header:before {
    content: none; }
  .modal-engine-messages .modal-dialog .modal-header h5 {
    color: #040404; }
  .modal-engine-messages .modal-dialog .modal-header .close {
    color: #040404;
    font-size: 34px;
    text-shadow: none;
    margin-top: -12px;
    opacity: 1.0; }
    .modal-engine-messages .modal-dialog .modal-header .close:hover {
      opacity: 0.75; }

.modal-engine-messages .modal-dialog .modal-body ul li {
  padding-bottom: 5px;
  color: #040404; }

.modal-engine-messages .modal-dialog .modal-body ul i {
  margin: 0 5px; }

.modal-engine-messages .modal-dialog .modal-body ul .glyphicon-alert {
  color: #d9534f; }

.modal-engine-messages .modal-dialog .modal-body ul .glyphicon-thumbs-up {
  color: #6C8869;
  position: relative;
  top: 3px; }

.modal-engine-messages .modal-dialog .modal-footer {
  border-top: 0; }

/* Product Images */
.modal-product-images .modal-dialog {
  padding-top: 0; }
  @media screen and (min-width: 768px) {
    .modal-product-images .modal-dialog {
      margin: 60px auto; } }
  .modal-product-images .modal-dialog img {
    max-width: 100% !important;
    padding: 0 !important; }

.modal-product-images .modal-header {
  border-bottom: 0; }
  @media screen and (min-width: 768px) {
    .modal-product-images .modal-header {
      padding: 0; } }
  .modal-product-images .modal-header .close {
    color: #040404;
    font-size: 34px;
    text-shadow: none;
    margin-top: -12px;
    opacity: 1.0; }
    @media screen and (min-width: 768px) {
      .modal-product-images .modal-header .close {
        font-size: 48px;
        color: #fff;
        position: absolute;
        margin-left: calc(50% + 15px);
        margin-top: -50px;
        left: 50%; } }
    .modal-product-images .modal-header .close:hover {
      opacity: 0.75; }

/* Viva la legacy */
.engine-messages {
  position: fixed;
  top: calc(50% - 200px);
  left: calc(50% - 300px);
  z-index: 1000000000000;
  background-color: #fff;
  width: 600px;
  border-radius: 4px;
  box-shadow: 2px 2px 2px rgba(4, 4, 4, 0.5); }
  @media screen and (max-width: 600px) {
    .engine-messages {
      left: calc(50% - 200px);
      width: 400px; } }
  @media screen and (max-width: 400px) {
    .engine-messages {
      left: calc(50% - 150px);
      width: 300px; } }
  .engine-messages .header {
    display: none; }
  .engine-messages ul {
    display: block; }
    .engine-messages ul li {
      list-style: none; }
    .engine-messages ul.messages {
      margin: 20px 0;
      padding: 10px; }
      .engine-messages ul.messages .error {
        padding: 0 12px;
        color: #040404;
        margin-top: 5px; }
        .engine-messages ul.messages .error i {
          margin-right: 5px;
          color: #d9534f; }
      .engine-messages ul.messages .success {
        padding: 0 12px;
        color: #040404;
        margin-top: 5px; }
    .engine-messages ul.actions {
      padding: 10px;
      overflow: hidden; }
      .engine-messages ul.actions button {
        float: right;
        font-size: 16px;
        text-transform: capitalize;
        font-weight: normal; }
        .engine-messages ul.actions button.close {
          text-shadow: none;
          background-color: #666666;
          color: #fff;
          font-weight: normal;
          padding: 10px 24px;
          border-radius: 4px;
          opacity: 1.0;
          transition: 0.5s ease; }
          .engine-messages ul.actions button.close span {
            font-weight: 300; }
          .engine-messages ul.actions button.close:hover {
            background-color: #e4e4e4; }

/* Styles for bootstrap carousel */
/* Full Width Responsive Carousel */
/* Vars */
.section-carousel {
  height: 0;
  margin: 0;
  padding-bottom: 40%;
  background: #333333 !important; }
  .section-carousel .item {
    z-index: 2; }
  .section-carousel .caption {
    display: none; }
  .section-carousel .image {
    display: block;
    padding-bottom: 40%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    .section-carousel .image img {
      display: none; }
  .section-carousel .carousel-control {
    width: 5%;
    z-index: 2; }
  .section-carousel .carousel-indicators li {
    margin-right: 5px; }
    .section-carousel .carousel-indicators li.active {
      background-color: rgba(255, 255, 255, 0.85); }

@font-face {
  font-family: 'Glyphicons Master Theme';
  src: url("../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  display: inline-block;
  font-family: 'Glyphicons Master Theme';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  position: relative;
  top: 1px; }

.glyphicon-ok-circle::before {
  content: "\e089"; }

.glyphicon-wrench::before {
  content: "\e136"; }

.glyphicon-dashboard::before {
  content: "\e141"; }

.glyphicon-user::before {
  content: "\e008"; }

.glyphicon-folder-close::before {
  content: "\e117"; }

.glyphicon-bell::before {
  content: "\e123"; }

.glyphicon-folder-open::before {
  content: "\e118"; }

.glyphicon-book::before {
  content: "\e043"; }

.glyphicon-credit-card::before {
  content: "\e177"; }

.glyphicon-eye-open::before {
  content: "\e105"; }

.glyphicon-heart::before {
  content: "\e005"; }

.glyphicon-shopping-cart::before {
  content: "\e116"; }

.glyphicon-info-sign::before {
  content: "\e086"; }

.glyphicon-transfer::before {
  content: "\e178"; }

.glyphicon-envelope::before {
  content: "\2709"; }

.glyphicon-comment::before {
  content: "\e111"; }

.glyphicon-links::before {
  content: "\e144"; }

.glyphicon-trash::before {
  content: "\e020"; }

.glyphicon-sent::before {
  content: "\e171"; }

.glyphicon-inbox::before {
  content: "\e028"; }

.glyphicon-new::before {
  content: "\002b"; }

.glyphicon-ok::before {
  content: "\e013"; }

.glyphicon-list::before {
  content: "\e056"; }

.glyphicon-edit::before {
  content: "\270f"; }

.glyphicon-chevron-down::after {
  content: "\e114"; }

/* Store */
@media (max-width: 840px) {
  body.store #page #container main.main-store-products,
  body.store #page #container main.main-category-products,
  body.store #page #container aside.aside-store,
  body.store #page #container main aside.aside-category {
    float: none;
    width: 100%; }
  body.store #page #container > .section {
    padding: 10px 0; }
  body.store #billingAddress,
  body.store #shippingAddress {
    clear: both;
    display: block;
    width: 100%; }
  body.store .section-product-description,
  body.store .section-product-purchase,
  body.store .section-shipping-method .fieldset,
  body.store .section-billing-information .fieldset {
    padding-right: 0;
    width: 100%; }
  body.store .section-payment-information .section-purchase-information .table td,
  body.store .section-payment-information .section-purchase-information .table tfoot td,
  body.store .section-payment-information .section-purchase-information .table tfoot th,
  body.store .section-cart-information .table td,
  body.store .section-cart-information .table tfoot td,
  body.store .section-cart-information .table tfoot th,
  body.store .section-additional-information .table td,
  body.store .section-additional-information .table tfoot td,
  body.store .section-additional-information .table tfoot th {
    display: block;
    text-align: left;
    width: 100%; }
  body.store .section-payment-information .section-purchase-information .table td,
  body.store .section-cart-information .table td,
  body.store .section-additional-information .table td {
    padding: 12px; }
    body.store .section-payment-information .section-purchase-information .table td::before,
    body.store .section-cart-information .table td::before,
    body.store .section-additional-information .table td::before {
      content: attr(data-description);
      display: block;
      font-weight: 800; }
  body.store .section-payment-information .section-purchase-information .table thead,
  body.store .section-cart-information .table thead,
  body.store .section-additional-information .table thead {
    display: none; }
  body.store .section-payment-information .section-purchase-information .table .button:not([value="Delete"]),
  body.store .section-cart-information .table .button:not([value="Delete"]),
  body.store .section-additional-information .table .button:not([value="Delete"]) {
    display: block;
    margin-bottom: 20px;
    width: 100%; }
  body.store .section-payment-information .section-purchase-information .table > tfoot > tr > th,
  body.store .section-cart-information .table > tfoot > tr > th,
  body.store .section-additional-information .table > tfoot > tr > th {
    border-bottom: 0; }
  body.store .section-payment-information .section-purchase-information .table > tfoot td,
  body.store .section-cart-information .table > tfoot td,
  body.store .section-additional-information .table > tfoot td {
    padding-top: 0; }
    body.store .section-payment-information .section-purchase-information .table > tfoot td.grand-total,
    body.store .section-cart-information .table > tfoot td.grand-total,
    body.store .section-additional-information .table > tfoot td.grand-total {
      padding-top: 12px; }
  body.store .row-buttons,
  body.store .row-buttons-actions {
    border-top: 1px solid #f1f1f1;
    float: none; }
    body.store .row-buttons .button-group,
    body.store .row-buttons-actions .button-group {
      float: none; }
    body.store .row-buttons a.button,
    body.store .row-buttons button.button,
    body.store .row-buttons-actions a.button,
    body.store .row-buttons-actions button.button {
      display: block;
      margin-bottom: 20px;
      width: 100%; } }

@media (max-width: 641px) {
  body.store h2 {
    font-size: 30px;
    font-weight: 500; }
  body.store .section-payment-information .header-order-summary {
    padding: 0 10px; }
  body.store .section-product-purchase {
    padding-left: 0; }
    body.store .section-product-purchase .fieldset {
      padding: 0 0 0.75em; } }

@media (max-width: 400px) {
  body.store .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
    clear: both;
    width: 100%; } }

body.store.modal-open {
  overflow: hidden; }

body.store * {
  box-sizing: border-box; }

body.store main a,
body.store main p,
body.store main li,
body.store main h1,
body.store main h2,
body.store main h3,
body.store main h4,
body.store main h5,
body.store main h6,
body.store main td,
body.store main span,
body.store main select,
body.store main input,
body.store main th,
body.store main td,
body.store main legend,
body.store section a,
body.store section p,
body.store section li,
body.store section h1,
body.store section h2,
body.store section h3,
body.store section h4,
body.store section h5,
body.store section h6,
body.store section td,
body.store section span,
body.store section select,
body.store section input,
body.store section th,
body.store section td,
body.store section legend {
  color: #000;
  font-style: normal;
  font-weight: 400; }

body.store main th,
body.store section th {
  font-size: inherit;
  text-align: left; }

body.store .row-privacy-policy-disclaimer a {
  text-decoration: underline; }

body.store .checkout-progress,
body.store .section-cart .section-cart-information,
body.store .section-shipping-method .section-shipping-address-container,
body.store .section-shipping-method .section-shipping-method-container,
body.store .section-order-billing .section-billing-profile,
body.store .section-order-billing .section-billing-information,
body.store .section-payment-information .header-order-summary,
body.store .section-payment-information .section-payment-address-information,
body.store .section-payment-information .section-purchase-information,
body.store .section-will-call .section-will-call-form,
body.store .section-order-extra .section-additional-information {
  background-color: #f7f7f7; }

body.store select {
  -webkit-appearance: none;
  font-size: 14px; }

body.store code {
  background-color: #f9f2f4;
  border-radius: 4px;
  color: #c7254e;
  font-family: Menlo, Monaco, Consolas, 'Courier New', monospace;
  font-size: 90%;
  padding: 2px 4px; }

body.store li.input,
body.store li.select,
body.store li.checkbox,
body.store .quantity {
  overflow: visible; }
  body.store li.input input,
  body.store li.input select,
  body.store li.input label,
  body.store li.select input,
  body.store li.select select,
  body.store li.select label,
  body.store li.checkbox input,
  body.store li.checkbox select,
  body.store li.checkbox label,
  body.store .quantity input,
  body.store .quantity select,
  body.store .quantity label {
    float: none; }
  body.store li.input input:focus,
  body.store li.input > select:focus,
  body.store li.select input:focus,
  body.store li.select > select:focus,
  body.store li.checkbox input:focus,
  body.store li.checkbox > select:focus,
  body.store .quantity input:focus,
  body.store .quantity > select:focus {
    border-color: #2188ff;
    box-shadow: inset 0 1px 2px rgba(27, 31, 35, 0.075), 0 0 0 0.2em rgba(3, 102, 214, 0.3);
    outline: none; }

body.store .button span {
  color: #fff; }

body.store #GC li,
body.store #GC span {
  font-family: Arial, Helvetica, sans-serif; }

body.store #GC .GC_messages .success {
  color: #000; }

body.store #GC li,
body.store #GC span {
  font-family: Arial, Helvetica, sans-serif; }

body.store #GC .GC_messages .success {
  color: #000; }

body.store .row-buttons.row-buttons-two,
body.store .row-buttons-actions {
  border-top: 1px solid #f1f1f1; }
  body.store .row-buttons.row-buttons-two .button,
  body.store .row-buttons-actions .button {
    font-family: Arial, Helvetica, sans-serif;
    line-height: normal;
    padding: 12px 24px;
    text-transform: capitalize; }
    body.store .row-buttons.row-buttons-two .button-cancel, body.store .row-buttons.row-buttons-two .button-back, body.store .row-buttons.row-buttons-two .button-edit-profile, body.store .row-buttons.row-buttons-two .button-cancel, body.store .row-buttons.row-buttons-two .button-cancel-address, body.store .row-buttons.row-buttons-two .button-change-address,
    body.store .row-buttons-actions .button-cancel,
    body.store .row-buttons-actions .button-back,
    body.store .row-buttons-actions .button-edit-profile,
    body.store .row-buttons-actions .button-cancel,
    body.store .row-buttons-actions .button-cancel-address,
    body.store .row-buttons-actions .button-change-address {
      background-color: #666; }
    body.store .row-buttons.row-buttons-two .button-save, body.store .row-buttons.row-buttons-two .button-save-address,
    body.store .row-buttons-actions .button-save,
    body.store .row-buttons-actions .button-save-address {
      background-color: #fa4c06; }

body.store .input .error {
  top: -7px; }

body.store #page {
  margin: 3em 0;
  width: auto; }
  body.store #page #container {
    margin: 0 auto;
    max-width: none;
    padding: 0; }
    body.store #page #container a,
    body.store #page #container p,
    body.store #page #container li,
    body.store #page #container h1,
    body.store #page #container h2,
    body.store #page #container h3,
    body.store #page #container h4,
    body.store #page #container h5,
    body.store #page #container h6,
    body.store #page #container td,
    body.store #page #container span,
    body.store #page #container select,
    body.store #page #container input,
    body.store #page #container th,
    body.store #page #container td,
    body.store #page #container legend,
    body.store #page #container div {
      font-family: Arial, Helvetica, sans-serif;
      line-height: normal; }
    body.store #page #container h1,
    body.store #page #container h2,
    body.store #page #container h3,
    body.store #page #container h4 {
      text-transform: capitalize; }
    body.store #page #container h2 {
      font-size: 30px;
      font-weight: 500; }
    body.store #page #container strong {
      font-weight: 700; }
    body.store #page #container section > section,
    body.store #page #container section > ol,
    body.store #page #container section > header {
      max-width: 1180px; }
      body.store #page #container section > section h1,
      body.store #page #container section > ol h1,
      body.store #page #container section > header h1 {
        font-size: 36px;
        font-weight: 500; }
    body.store #page #container ul {
      margin: 1em 0; }
    body.store #page #container li.stock {
      line-height: 2; }
    body.store #page #container .button {
      border-radius: 0;
      cursor: pointer; }
    body.store #page #container .main-category-products,
    body.store #page #container .main-store-products {
      float: left;
      width: 75%; }
      body.store #page #container .main-category-products .title,
      body.store #page #container .main-store-products .title {
        text-align: left;
        text-transform: capitalize; }
    body.store #page #container aside.aside-category,
    body.store #page #container aside.aside-store {
      float: right;
      width: 25%; }
      body.store #page #container aside.aside-category .title,
      body.store #page #container aside.aside-store .title {
        text-transform: capitalize; }
        body.store #page #container aside.aside-category .title a,
        body.store #page #container aside.aside-store .title a {
          font-size: 16px;
          padding: 0; }
    body.store #page #container > .section {
      font-size: 14px; }
  body.store #page .wrap {
    background-color: #f7f7f7;
    border-radius: 4px;
    max-width: 1180px;
    padding: 12px;
    width: 100%; }
  body.store #page #ProcessingOverlay > .wrap {
    padding: 0; }

body.store #content-wrapper.interior section,
body.store #content-wrapper.interior strong {
  font-family: Arial, Helvetica, sans-serif; }

body.store #content-wrapper.interior table td,
body.store #content-wrapper.interior table thead > tr > th,
body.store #content-wrapper.interior table tfoot > tr > th {
  border-bottom: 1px solid #f1f1f1;
  border-top: 0;
  padding: 8px; }

body.store #content-wrapper.interior .review {
  border-bottom: 1px solid #f1f1f1;
  margin-bottom: 10px; }

body.store #cart-timer {
  padding: 0;
  text-align: center; }
  body.store #cart-timer .label {
    background-color: #5bc0de;
    border-radius: 0.25em;
    font-family: Arial, Helvetica, sans-serif;
    margin-bottom: 10px;
    padding: 0.2em 0.6em 0.3em; }
    body.store #cart-timer .label span {
      font-size: 12.6px;
      font-weight: 700;
      text-transform: none; }

body.store .aside-store {
  background-color: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px;
  max-width: 1180px; }
  body.store .aside-store .cart-info {
    background-color: #fff; }
  body.store .aside-store .view-cart {
    background-color: #fff; }
    body.store .aside-store .view-cart .button.cart {
      text-transform: capitalize; }
      body.store .aside-store .view-cart .button.cart span.badge {
        color: #000; }
      body.store .aside-store .view-cart .button.cart .badge {
        border-radius: 10px;
        display: inline-block;
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
        min-width: 10px;
        padding: 3px 7px;
        text-align: center;
        vertical-align: middle;
        white-space: nowrap;
        white-space: nowrap; }
  body.store .aside-store .section-categories {
    padding: 0; }
    body.store .aside-store .section-categories .listing {
      margin: 0 0 10px; }
      body.store .aside-store .section-categories .listing .item {
        border-bottom: 1px solid #f1f1f1; }
        body.store .aside-store .section-categories .listing .item:first-child {
          border-top: #f1f1f1; }
        body.store .aside-store .section-categories .listing .item.current span {
          font-weight: 800; }

body.store .main-store-products .header-products > h2 {
  margin: 20px 0 10px;
  padding: 0; }

body.store .main-store-products .section-products {
  padding: 0; }

body.store .main-store-products .section-products-featured {
  padding: 0; }

body.store .main-store-products .listing {
  justify-content: flex-start; }

body.store .main-store-products .product {
  background-image: none !important; }
  body.store .main-store-products .product .figure > a {
    display: inline !important; }
    body.store .main-store-products .product .figure > a > img {
      display: inline !important; }
  body.store .main-store-products .product .cash {
    font-weight: 800; }

body.store .main-store-products .product-details {
  font-size: 14px; }

body.store .main-category-products .header-category .title {
  font-size: 36px;
  font-weight: 500;
  margin: 20px 0 60px;
  padding: 0; }

body.store .main-category-products .product-details {
  font-size: 14px; }

body.store .section-product-detail h1 {
  margin-bottom: 10px; }

body.store .section-product-detail legend {
  font-size: 21px; }

body.store .section-product-detail .fieldset {
  border: 0; }

body.store .section-product-detail .quantity > label {
  font-weight: 700; }

body.store .section-product-detail .section-product-purchase {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 14px; }
  body.store .section-product-detail .section-product-purchase h1 {
    font-weight: 500;
    padding: 0;
    text-transform: capitalize; }
  body.store .section-product-detail .section-product-purchase h5 {
    font-size: 16px;
    font-weight: 500;
    margin: 0.5em 0; }
  body.store .section-product-detail .section-product-purchase a {
    text-decoration: underline; }
  body.store .section-product-detail .section-product-purchase select {
    font-size: 14px; }
  body.store .section-product-detail .section-product-purchase #availability,
  body.store .section-product-detail .section-product-purchase .sku {
    text-transform: capitalize; }
  body.store .section-product-detail .section-product-purchase .purchase_form fieldset ul + ul {
    border-top: 1px solid #f1f1f1; }
  body.store .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
    background-color: #fa4c06;
    float: right;
    font-size: 16px;
    padding: 10px;
    text-transform: capitalize;
    width: 140px; }
    body.store .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart span {
      color: #fff; }
  body.store .section-product-detail .section-product-purchase .purchase_form fieldset .payment {
    border: 0;
    margin: 10px 0; }
    body.store .section-product-detail .section-product-purchase .purchase_form fieldset .payment span {
      padding-left: 20px; }
  body.store .section-product-detail .section-product-purchase .meta {
    border-bottom: 1px solid #f1f1f1; }

body.store .section-product-detail .modal {
  bottom: 0;
  display: none;
  left: 0;
  outline: 0;
  overflow: hidden;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1050; }
  body.store .section-product-detail .modal.fade {
    opacity: 0;
    transition: opacity 0.15s linear; }
    body.store .section-product-detail .modal.fade .modal-dialog {
      transform: translateY(-25%);
      transition: transform 0.3s ease-out; }
      @media (min-width: 768px) {
        body.store .section-product-detail .modal.fade .modal-dialog {
          margin: 30px auto;
          position: relative;
          width: 600px; } }
    body.store .section-product-detail .modal.fade.in {
      opacity: 1; }
      body.store .section-product-detail .modal.fade.in .modal-dialog {
        transform: translate(0); }
  body.store .section-product-detail .modal .modal-content {
    background-clip: padding-box;
    background-color: #fff;
    border-radius: 6px;
    max-height: 90vh;
    outline: 0;
    overflow-x: scroll;
    position: relative; }
  body.store .section-product-detail .modal .modal-header {
    border-bottom: 1px solid #e5e5e5;
    padding: 15px;
    text-align: right; }
  body.store .section-product-detail .modal .modal-body {
    padding: 15px;
    position: relative; }
  body.store .section-product-detail .modal button.close {
    background: 0 0;
    border: 0;
    color: rgba(0, 0, 0, 0.2);
    cursor: pointer;
    font-size: 25px;
    left: 0;
    line-height: 1;
    padding: 0;
    position: relative; }

body.store .section-product-description .product-social {
  align-items: baseline;
  display: flex;
  justify-content: center;
  margin: 2em 0; }
  body.store .section-product-description .product-social .like {
    margin-top: 0;
    width: 80px; }
  body.store .section-product-description .product-social .trustpilot-widget {
    height: 38px;
    width: 180px; }

body.store .section-cart,
body.store .section-order-extra {
  font-size: 14px; }
  body.store .section-cart .section-cart-information .review,
  body.store .section-cart .section-additional-information .review,
  body.store .section-order-extra .section-cart-information .review,
  body.store .section-order-extra .section-additional-information .review {
    border-bottom: 1px solid #f1f1f1; }
  body.store .section-cart .table > thead > tr > th,
  body.store .section-order-extra .table > thead > tr > th {
    border-bottom: 1px solid #f1f1f1;
    font-weight: 800;
    padding: 12px; }
  body.store .section-cart .table > tbody > tr > td,
  body.store .section-order-extra .table > tbody > tr > td {
    border-bottom: 1px solid #f1f1f1;
    padding: 12px; }
  body.store .section-cart .table > tfoot > tr > th,
  body.store .section-order-extra .table > tfoot > tr > th {
    font-weight: 800; }

body.store .section-billing-information legend {
  font-size: 21px;
  margin-bottom: 20px; }

body.store .section-billing-information .fieldset {
  border: 0;
  margin: 0; }
  body.store .section-billing-information .fieldset.fieldset-payment-type {
    float: none; }
  body.store .section-billing-information .fieldset.fieldset-card-info .input .field {
    float: none; }

body.store .section-payment-information h1 {
  margin: 0;
  padding: 0.5em 0; }

body.store .section-payment-information h3 {
  font-size: 24px;
  font-weight: 500;
  font-weight: 500;
  padding: 0.5em 0; }

body.store .section-payment-information .header-order-summary {
  padding: 20px;
  text-align: left; }

body.store .section-payment-information .button {
  padding: 12px 24px; }
  body.store .section-payment-information .button#usePromoCode {
    background-color: #666; }
  body.store .section-payment-information .button.button-back-shipping-method {
    background-color: #666; }

body.store .section-payment-information .section-purchase-information .button {
  text-transform: capitalize; }

body.store .section-payment-information .section-purchase-information #PaymentForm-continue {
  display: flex;
  justify-content: flex-end; }
  body.store .section-payment-information .section-purchase-information #PaymentForm-continue .button {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 400;
    text-transform: capitalize; }

body.store .section-payment-information .section-purchase-information .table > thead > tr > th {
  border-bottom: 1px solid #f1f1f1;
  font-weight: 800;
  padding: 12px; }

body.store .section-payment-information .section-purchase-information .table > tbody > tr > td {
  border-bottom: 1px solid #f1f1f1;
  padding: 12px; }

body.store .section-payment-information .section-purchase-information .table > tfoot > tr > th {
  border-bottom: 1px solid #f1f1f1;
  font-weight: 800; }

body.store .section-payment-information .section-purchase-information .table > tfoot > tr > td {
  border-bottom: 1px solid #f1f1f1; }

body.store .section-shipping-method legend,
body.store .section-will-call-form legend {
  font-size: 1.5em;
  margin: 1em 0; }

body.store .section-shipping-method p > a,
body.store .section-will-call-form p > a {
  text-decoration: underline; }

body.store .section-shipping-method .fieldset,
body.store .section-will-call-form .fieldset {
  border: 0; }

body.store .section-shipping-method .checkbox,
body.store .section-will-call-form .checkbox {
  margin: 10px 0; }

body.store .section-shipping-method .willcall-info,
body.store .section-will-call-form .willcall-info {
  font-family: Arial, Helvetica, sans-serif; }

body.store .section-order-extra .fieldset-additional-information {
  border: 0;
  padding: 0; }
  body.store .section-order-extra .fieldset-additional-information legend {
    display: none; }

/* Account */
@media (max-width: 840px) {
  body.account #container {
    padding: 0; }
    body.account #container a,
    body.account #container p,
    body.account #container th,
    body.account #container td,
    body.account #container .disclaimer {
      font-size: 14px; }
    body.account #container main input,
    body.account #container main textarea,
    body.account #container main select,
    body.account #container main legend,
    body.account #container aside input,
    body.account #container aside textarea,
    body.account #container aside select,
    body.account #container aside legend {
      font-size: 14px; }
  body.account .main {
    padding: 10px 0; }
  body.account .section {
    padding: 0; }
    body.account .section > aside {
      padding: 10 0; }
  body.account .section-order-summary {
    font-size: 14px;
    padding: 10px; }
    body.account .section-order-summary .section-order-information h2 {
      font-size: 24px; }
    body.account .section-order-summary .section-order-itemization .table > tbody > tr > td::before,
    body.account .section-order-summary .section-order-shipments .table > tbody > tr > td::before {
      content: attr(data-description);
      display: block;
      font-weight: 800; }
  body.account .aside-account .table td,
  body.account .aside-account-dashboard .table td {
    border-bottom: 0;
    border-top: 1px solid #f1f1f1;
    display: block;
    font-size: 14px;
    width: 100%; }
    body.account .aside-account .table td.actions,
    body.account .aside-account-dashboard .table td.actions {
      text-align: left; }
  body.account .row-buttons .button {
    clear: both;
    font-size: 16px;
    margin: 5px 0;
    width: 100%; }
    body.account .row-buttons .button:nth-child(2) {
      margin: 10px 0; }
  body.account .aside-nav,
  body.account .aside-account {
    clear: both;
    display: block;
    padding: 10px;
    width: 100%; }
  body.account .main-account-managed-linked .table-accound-managed-linked thead {
    border: 0;
    display: none; }
  body.account .main-account-managed-linked .table-accound-managed-linked tr td {
    border: 0;
    display: block;
    width: 100%; }
  body.account .aside-account label,
  body.account .aside-account p,
  body.account .aside-account th,
  body.account .aside-account td,
  body.account .aside-account .disclaimer, body.account .aside-account-manage-address label,
  body.account .aside-account-manage-address p,
  body.account .aside-account-manage-address th,
  body.account .aside-account-manage-address td,
  body.account .aside-account-manage-address .disclaimer, body.account .aside-account-notifications label,
  body.account .aside-account-notifications p,
  body.account .aside-account-notifications th,
  body.account .aside-account-notifications td,
  body.account .aside-account-notifications .disclaimer, body.account .aside-account-manage label,
  body.account .aside-account-manage p,
  body.account .aside-account-manage th,
  body.account .aside-account-manage td,
  body.account .aside-account-manage .disclaimer, body.account .aside-account-dashboard label,
  body.account .aside-account-dashboard p,
  body.account .aside-account-dashboard th,
  body.account .aside-account-dashboard td,
  body.account .aside-account-dashboard .disclaimer {
    font-size: 14px; }
  body.account .aside-account .table tbody > tr > td:first-of-type {
    border-top: 0; }
  body.account .aside-account .table tbody > tr > td:last-of-type {
    border-bottom: 0;
    padding-bottom: 24px; }
  body.account .aside-order-list .table tbody > tr > td::before {
    content: attr(data-description);
    display: block;
    font-weight: 800; } }

body.account * {
  box-sizing: border-box; }

body.account main a,
body.account main p,
body.account main li,
body.account main h1,
body.account main h2,
body.account main h3,
body.account main h4,
body.account main h5,
body.account main h6,
body.account main td,
body.account main span,
body.account main select,
body.account main address {
  font-style: normal;
  font-weight: 400; }

body.account main fieldset {
  border: 0; }
  body.account main fieldset.fieldset-fanclub-notifications .checkbox {
    padding-bottom: 20px; }

body.account main select {
  -webkit-appearance: none;
  font-size: 14px; }

body.account h2 {
  font-size: 30px; }

body.account input[type="checkbox"] {
  height: auto;
  width: auto; }

body.account input#occupation {
  float: none; }

body.account li.input,
body.account li.select,
body.account li.checkbox {
  overflow: visible; }
  body.account li.input input:focus,
  body.account li.input > select:focus,
  body.account li.select input:focus,
  body.account li.select > select:focus,
  body.account li.checkbox input:focus,
  body.account li.checkbox > select:focus {
    border-color: #2188ff;
    box-shadow: inset 0 1px 2px rgba(27, 31, 35, 0.075), 0 0 0 0.2em rgba(3, 102, 214, 0.3);
    outline: none; }

body.account .main-account,
body.account .section-order-summary,
body.account .section-order-information,
body.account .section-order-itemization,
body.account .section-order-shipments {
  background-color: #f7f7f7; }

body.account .table th {
  color: #000;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 800;
  text-align: left; }

body.account .table td {
  padding: 8px; }

body.account .table th,
body.account .table td {
  border-bottom: 1px solid #f1f1f1;
  padding: 8px; }

body.account #page {
  width: 100%; }

body.account #container {
  max-width: 1180px; }
  body.account #container a,
  body.account #container p,
  body.account #container th,
  body.account #container td,
  body.account #container label,
  body.account #container legend {
    font-size: 16px; }
  body.account #container a,
  body.account #container p,
  body.account #container li,
  body.account #container h1,
  body.account #container h2,
  body.account #container h3,
  body.account #container h4,
  body.account #container h5,
  body.account #container h6,
  body.account #container td,
  body.account #container span,
  body.account #container select,
  body.account #container address {
    color: #040404;
    font-family: Arial, Helvetica, sans-serif; }
  body.account #container h1,
  body.account #container h2,
  body.account #container h3,
  body.account #container h4 {
    font-weight: 500;
    text-transform: capitalize; }
  body.account #container input,
  body.account #container textarea,
  body.account #container select {
    font-family: Arial, Helvetica, sans-serif; }
  body.account #container strong {
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 700; }
  body.account #container ul {
    margin: 1em 0; }
  body.account #container #main.full {
    margin: 0 auto;
    width: 100%; }
  body.account #container > .main {
    margin: 0 auto;
    max-width: none;
    width: 100%; }
    body.account #container > .main > .section > .aside {
      margin-left: 0;
      margin-right: 0; }
  body.account #container .header {
    border-bottom: 1px solid #f1f1f1; }
    body.account #container .header > h1 {
      font-size: 36px; }
  body.account #container .button {
    border-radius: 0;
    line-height: normal; }
    body.account #container .button span {
      color: #fff; }
  body.account #container .header {
    border-bottom: 1px solid #f1f1f1; }
    body.account #container .header > h1 {
      font-size: 36px; }
  body.account #container .button {
    border-radius: 0;
    line-height: normal; }
    body.account #container .button span {
      color: #fff; }
  body.account #container .row-buttons, body.account #container .row-buttons-two {
    border-top: 1px solid #f1f1f1; }
  body.account #container .row-buttons .button {
    border: 0;
    border-radius: 0;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    font-weight: 400;
    line-height: normal;
    padding: 12px 24px;
    text-align: center;
    text-transform: capitalize; }
    body.account #container .row-buttons .button-cancel {
      background-color: #666; }
    body.account #container .row-buttons .button-primary {
      background-color: #fa4c06; }

body.account #page {
  margin: 3em 0; }
  body.account #page .aside-nav {
    padding: 10px; }
    body.account #page .aside-nav a,
    body.account #page .aside-nav span {
      line-height: normal; }
    body.account #page .aside-nav li {
      float: none; }
    body.account #page .aside-nav .selected a,
    body.account #page .aside-nav .selected span {
      color: #666; }
  body.account #page .row-policy-preview {
    border-bottom: 1px solid #f1f1f1; }
    body.account #page .row-policy-preview a {
      text-decoration: underline; }
  body.account #page .row-policy-disclaimer a {
    text-decoration: underline; }
  body.account #page .aside-account-notifications a.button {
    background-color: #666; }
  body.account #page .aside-account-notifications p.note {
    margin-left: 24px; }
    body.account #page .aside-account-notifications p.note a {
      text-decoration: underline; }

body.account .main-account-manage-address .aside-account-manage-address a.button {
  background-color: #666; }

body.account .main-account-manage-address .aside-account-manage-address .fieldset-billing {
  border-bottom: #f1f1f1; }

body.account .aside-nav {
  margin: 0 auto; }
  body.account .aside-nav .item.avatar {
    display: none; }
  body.account .aside-nav .linked-account .counter {
    display: none; }

body.account .aside-account {
  max-width: none; }
  body.account .aside-account .table > tbody > tr > td,
  body.account .aside-account .table > tbody > tr > th {
    border-top: 1px solid #f1f1f1; }
  body.account .aside-account .table > thead > tr > th {
    border-bottom: 1px solid #f1f1f1; }

body.account .aside-account-dashboard table {
  margin-bottom: 20px; }
  body.account .aside-account-dashboard table a {
    text-decoration: underline; }
  body.account .aside-account-dashboard table th {
    padding: 8px; }

body.account .aside-account-dashboard h2 {
  margin: 20px 0 10px; }

body.account .aside-account-notifications legend {
  font-size: 21px;
  margin-bottom: 20px; }

body.account .aside-account-notifications input {
  margin-right: 5px; }

body.account .aside-account-manage legend,
body.account .aside-account-manage-address legend {
  font-size: 21px;
  margin-bottom: 20px; }

body.account .aside-account-manage .checkbox,
body.account .aside-account-manage-address .checkbox {
  margin: 10px 0; }
  body.account .aside-account-manage .checkbox label,
  body.account .aside-account-manage-address .checkbox label {
    padding-left: 20px; }
    body.account .aside-account-manage .checkbox label input,
    body.account .aside-account-manage-address .checkbox label input {
      height: 15px; }

body.account .aside-manage-profile label {
  display: block; }

body.account .aside-manage-profile input {
  float: none; }

body.account .aside-manage-profile li {
  clear: both; }

body.account .aside-manage-profile textarea {
  border: 0;
  border-radius: 4px;
  width: 100%; }

body.account .aside-manage-profile p > a {
  text-decoration: underline; }

body.account .aside-manage-profile .disclaimer {
  color: red;
  font-size: 16px; }

body.account table.table-accound-managed-linked .avatar_wrapper {
  align-items: center;
  display: flex; }

body.account .aside-order-list h2 {
  margin-bottom: 10px; }

body.account .aside-order-list .table {
  font-size: 16px; }
  body.account .aside-order-list .table th {
    border-bottom: 1px solid #f1f1f1; }
  body.account .aside-order-list .table a {
    text-decoration: underline; }

body.account .section-order-summary {
  font-size: 16px; }
  body.account .section-order-summary h1,
  body.account .section-order-summary h2,
  body.account .section-order-summary h3 {
    font-weight: 500;
    padding: 0.5em 0; }
  body.account .section-order-summary h3 {
    font-size: 24px; }
  body.account .section-order-summary address {
    font-style: normal; }
  body.account .section-order-summary th > .sku {
    font-weight: 800; }
  body.account .section-order-summary .header-order {
    text-align: left; }
  body.account .section-order-summary .button-row .button {
    background-color: #666;
    border: 0;
    padding: 12px 24px;
    text-transform: capitalize; }
  body.account .section-order-summary .section-order-information div {
    font-family: Arial, Helvetica, sans-serif; }
  body.account .section-order-summary .section-order-information ul {
    margin-top: 0; }
  body.account .section-order-summary .section-order-information .button {
    background-color: #666;
    border: 0;
    padding: 12px 24px;
    text-transform: capitalize; }
    body.account .section-order-summary .section-order-information .button span {
      color: #fff; }
  body.account .section-order-summary .section-order-itemization div,
  body.account .section-order-summary .section-order-shipments div {
    font-family: Arial, Helvetica, sans-serif; }
  body.account .section-order-summary .section-order-itemization .table > tbody > tr > td,
  body.account .section-order-summary .section-order-shipments .table > tbody > tr > td {
    border-bottom: 1px solid #f1f1f1;
    border-top: 1px solid #f1f1f1; }

body.account .section-account-dashboard {
  padding: 0; }

body.events #fancybox-content .note {
  background-color: #fff;
  color: #000; }
  body.events #fancybox-content .note p,
  body.events #fancybox-content .note button {
    font-family: Arial, Helvetica, sans-serif; }

/**
 * Styles for account tpl files
 */
/* Type */
/* carousel */
/* common variables for the store && account templates */
/* colors */
/* borders */
/* font */
/* line height */
/* form elements */
/* animations */
/* layout && breakpoints */
/* header / main nav */
/* account */
/* store listing types */
/* store aside */
/* footer */
/* modules */
/* common variables for the store && account templates */
.no-border {
  border: 0 !important; }

.clearfix:before, .clearfix:after {
  content: '';
  display: table; }

.clearfix:after {
  clear: both; }

body {
  background-color: rgba(255, 255, 255, 0.07);
  font-family: Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: normal; }
  body.account #page .wrap, body.store #page .wrap {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1140px; }
    @media screen and (max-width: 1140px) {
      body.account #page .wrap, body.store #page .wrap {
        padding: 0 10px; } }
  body.account #page a, body.store #page a {
    transition: 0.5s ease;
    color: #040404; }
    body.account #page a:hover, body.account #page a:focus, body.store #page a:hover, body.store #page a:focus {
      opacity: 0.8;
      color: #666666;
      text-decoration: none;
      box-shadow: none;
      outline: none; }
  body.account .row, body.store .row {
    margin-left: 0;
    margin-right: 0; }
  body.account #container {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      body.account #container {
        padding: 0 20px; } }
  body.store .section-cart,
  body.store .section-order-billing,
  body.store .section-shipping-method,
  body.store .section-payment-information,
  body.store .section-order-summary {
    background-color: rgba(255, 255, 255, 0.07); }
    body.store .section-cart, body.store .section-cart h1, body.store .section-cart h2, body.store .section-cart h3, body.store .section-cart h4, body.store .section-cart h5, body.store .section-cart h6,
    body.store .section-order-billing,
    body.store .section-order-billing h1,
    body.store .section-order-billing h2,
    body.store .section-order-billing h3,
    body.store .section-order-billing h4,
    body.store .section-order-billing h5,
    body.store .section-order-billing h6,
    body.store .section-shipping-method,
    body.store .section-shipping-method h1,
    body.store .section-shipping-method h2,
    body.store .section-shipping-method h3,
    body.store .section-shipping-method h4,
    body.store .section-shipping-method h5,
    body.store .section-shipping-method h6,
    body.store .section-payment-information,
    body.store .section-payment-information h1,
    body.store .section-payment-information h2,
    body.store .section-payment-information h3,
    body.store .section-payment-information h4,
    body.store .section-payment-information h5,
    body.store .section-payment-information h6,
    body.store .section-order-summary,
    body.store .section-order-summary h1,
    body.store .section-order-summary h2,
    body.store .section-order-summary h3,
    body.store .section-order-summary h4,
    body.store .section-order-summary h5,
    body.store .section-order-summary h6 {
      color: #040404; }
  body.media {
    overflow: auto; }
  body.privacy .section.privacy {
    max-width: 1140px;
    margin: auto;
    padding: 12px; }
    @media screen and (max-width: 840px) {
      body.privacy .section.privacy {
        padding: 20px; } }

.wrap {
  display: block;
  overflow: hidden;
  clear: both;
  margin: auto;
  padding: 0 12px;
  max-width: 1140px; }
  @media screen and (max-width: 1140px) {
    .wrap {
      padding: 0 10px; } }

ul {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
  padding: 0; }
  ul li {
    list-style: none; }

ol {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0; }

@media screen and (max-width: 840px) {
  h1, h2, h3 {
    font-size: 24px;
    line-height: 1.4; } }

/* Form elements */
input {
  border: 0;
  border-radius: 4px;
  padding: 5px;
  height: 36px;
  color: #040404; }
  input:focus {
    opacity: 0.8;
    outline: none; }

button:focus {
  opacity: 0.8;
  outline: none; }

a:focus {
  outline: none; }

select {
  color: #040404;
  text-indent: 5px; }

.input, .select {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  color: #040404; }
  .input label, .select label {
    display: block;
    float: left;
    margin-bottom: 8px;
    padding: 0;
    width: 100%;
    line-height: 18px;
    font-weight: normal; }
  .input input, .select input {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff; }
    .input input:focus, .select input:focus {
      opacity: 0.8;
      outline: none; }
  .input select, .select select {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff;
    height: 36px;
    color: #040404;
    background-color: #fff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
    background-position: calc(98.75% - 5px) 50%;
    background-repeat: no-repeat;
    background-size: 10px;
    border-radius: 4px; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
  .input .error, .select .error {
    position: absolute;
    right: 5px;
    top: -2px;
    font-size: 14px;
    color: #d9534f; }
  .input.input-message .error, .select.input-message .error {
    margin-top: 9px; }
    @media screen and (max-width: 500px) {
      .input.input-message .error, .select.input-message .error {
        margin-left: 0; } }

/* row */
.row {
  margin-left: 0;
  margin-right: 0; }
  .row:before {
    content: none; }

.row-buttons {
  display: block;
  clear: both;
  float: left;
  margin: 20px 0; }
  @media screen and (max-width: 840px) {
    .row-buttons {
      width: 100%; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button {
      width: 100% !important;
      display: block;
      clear: both;
      margin: 5px 0; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button:nth-child(2) {
      margin: 10px 0 !important; } }
  .row-buttons.row-buttons-two {
    width: 100%;
    padding-top: 20px;
    border-top: 1px solid #3C3333; }
    .row-buttons.row-buttons-two .button {
      display: inline-block; }
      .row-buttons.row-buttons-two .button:nth-child(2) {
        float: right; }

/* buttons */
.button, a.button {
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease;
  /* Piss Poor Planning Promotes Poor Performance  */ }
  .button:hover, .button:focus, a.button:hover, a.button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  body.account #page .button,
  body.store #page .button, body.account #page a.button,
  body.store #page a.button {
    color: #fff; }

.button-primary {
  background-color: #FA4C06; }
  .button-primary:hover, .button-primary:focus {
    background-color: #c93d04; }

button[disabled="disabled"],
a[disabled="disabled"] {
  cursor: not-allowed !important;
  opacity: 0.5; }

.btn-accordion {
  display: inline-block;
  padding-bottom: 1em; }
  .btn-accordion:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 0.5em;
    border-style: solid;
    border-width: 0.5em 0.25em 0 0.25em;
    border-color: #040404 transparent transparent transparent; }
  .btn-accordion[aria-expanded="true"]:after {
    transform: rotate(180deg); }

#fancybox-content p {
  color: #040404; }

#fancybox-content button {
  padding: 10px 14px;
  border: none;
  border-radius: 4px;
  background-color: #e4e4e4;
  transition: 0.5s ease;
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease; }
  #fancybox-content button:hover, #fancybox-content button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  #fancybox-content button:hover {
    opacity: 0.75; }

/* account imports */
.main-account {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px;
  min-height: 600px; }
  @media screen and (max-width: 840px) {
    .main-account {
      padding: 10px; }
      @supports (padding: 0px) {
        .main-account {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .main-account, .main-account h1, .main-account h2, .main-account h3, .main-account h4, .main-account h5, .main-account h6 {
    color: #040404; }
  .main-account .header-account {
    width: 100%;
    padding: 10px;
    margin-bottom: 20px;
    border-bottom: 1px solid #3C3333; }
    .main-account .header-account h1 {
      color: #040404;
      margin-top: 10px; }
  .main-account .aside-nav,
  .main-account .aside-account {
    padding: 10px;
    float: left; }
  .main-account .aside-nav {
    width: 25%; }
    @media screen and (max-width: 840px) {
      .main-account .aside-nav {
        display: block;
        clear: both;
        width: 100%;
        padding: 10px; }
        @supports (padding: 0px) {
          .main-account .aside-nav {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
    @media screen and (max-width: 800px) {
      .main-account .aside-nav {
        margin-bottom: 10px; } }
  .main-account .aside-account {
    width: 75%;
    padding-right: 0; }
    @media screen and (max-width: 840px) {
      .main-account .aside-account {
        display: block;
        clear: both;
        width: 100%;
        padding: 10px; }
        @supports (padding: 0px) {
          .main-account .aside-account {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
    .main-account .aside-account .fieldset-account legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404; }

.aside-account .table > tbody > tr > td {
  border-top: 1px solid #e4e4e4; }

.aside-account .table > tbody > tr > th {
  border-top: 1px solid #e4e4e4; }

.aside-account .table > thead tr > th {
  border-bottom: 1px solid #e4e4e4; }

.main-account-manage-address .aside-account-manage-address legend {
  position: relative;
  border: 0;
  width: 100%;
  top: 5px;
  color: #040404; }

.main-account-manage-address .aside-account-manage-address .fieldset-billing {
  border-bottom: 1px solid #3C3333;
  margin-bottom: 20px;
  padding-bottom: 20px; }
  .main-account-manage-address .aside-account-manage-address .fieldset-billing .input input, .main-account-manage-address .aside-account-manage-address .fieldset-billing .input select, .main-account-manage-address .aside-account-manage-address .fieldset-billing .select input, .main-account-manage-address .aside-account-manage-address .fieldset-billing .select select {
    line-height: 1.0;
    margin-right: 0; }

.main-account-manage-address .aside-account-manage-address .fieldset-shipping .checkbox input {
  margin-top: -8px;
  margin-left: -23px; }

.main-account-manage-address .aside-account-manage-address .row-policy-disclaimer {
  margin-top: 20px; }

.main-account-manage-address .aside-account-manage-address .row-buttons {
  padding-top: 20px;
  border-top: 1px solid #3C3333; }

.main-account-dashboard .aside-account-dashboard .table .actions {
  text-align: right; }
  @media screen and (max-width: 840px) {
    .main-account-dashboard .aside-account-dashboard .table .actions {
      text-align: left; } }

@media screen and (max-width: 840px) {
  .main-account-dashboard .aside-account-dashboard .table thead {
    display: none; }
  .main-account-dashboard .aside-account-dashboard tr td, .main-account-dashboard .aside-account-dashboard tr th {
    display: block;
    width: 100%; } }

@media screen and (max-width: 840px) {
  .main-account-managed-linked .aside-account-managed-linked .table thead {
    display: none; }
  .main-account-managed-linked .aside-account-managed-linked tr td, .main-account-managed-linked .aside-account-managed-linked tr th {
    display: block;
    width: 100%; } }

.main-account-managed-linked .aside-account-managed-linked .table tr td {
  vertical-align: middle; }
  .main-account-managed-linked .aside-account-managed-linked .table tr td img {
    margin-right: 10px;
    width: 50px; }
  @media screen and (max-width: 840px) {
    .main-account-managed-linked .aside-account-managed-linked .table tr td:nth-child(1) {
      padding-top: 16px;
      padding-bottom: 16px; }
    .main-account-managed-linked .aside-account-managed-linked .table tr td:nth-child(2) {
      border-top: 0;
      padding-top: 0;
      padding-bottom: 16px; } }

.main-account-manage .aside-account .row-policy-preview {
  border-bottom: 1px solid #3C3333;
  margin-bottom: 20px; }
  .main-account-manage .aside-account .row-policy-preview p {
    padding-bottom: 20px; }

.main-account-manage .aside-account .row-policy-disclaimer {
  margin-top: 20px; }

#container .main-account-manage .error, #container .main-account-manage .error a {
  position: static;
  color: #d9534f; }

.main-account-avatar .section-account-manage-avatar .note {
  display: block;
  clear: both;
  color: #040404; }

.main-account-avatar .section-account-manage-avatar p {
  color: #040404; }

.main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input {
  margin-bottom: 20px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .file {
    margin: 10px 0; }
    .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .file img {
      width: 100px;
      height: 100px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input {
    margin-bottom: 10px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input[type="file"] {
    height: auto;
    line-height: 0;
    text-indent: 0;
    background-color: transparent; }
    .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input[type="file"]:focus {
      opacity: 0.75;
      outline: none; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .url {
    color: #f7f7f7;
    padding: 0 5px 0 5px; }

.main-account-avatar .section-account-manage-avatar .row-privacy-policy-disclaimer {
  margin-top: 20px; }

.main-account-notifications .aside-account-notifications legend {
  position: relative;
  border: 0;
  width: 100%;
  top: 5px;
  color: #040404; }

.main-account-notifications .aside-account-notifications .row-buttons-two {
  padding-top: 20px;
  border-top: 1px solid #3C3333; }

.main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox {
  margin-bottom: 20px; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox label {
    padding-left: 25px; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox input[type="checkbox"] {
    margin-left: -24px;
    margin-top: 2px;
    width: auto;
    height: auto; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox + .checkbox {
    margin-top: 0; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox .note {
    margin: 2px 0 10px 24px; }

.section-order-summary {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-summary {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-summary {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (max-width: 840px) {
    .section-order-summary {
      padding: 20px 20px; }
      .section-order-summary .wrap {
        padding: 0; } }
  .section-order-summary h1, .section-order-summary .h1, .section-order-summary h2, .section-order-summary .h2, .section-order-summary h3, .section-order-summary .h3 {
    margin-top: 10px; }
  .section-order-summary .section-order-information,
  .section-order-summary .section-order-itemization,
  .section-order-summary .section-order-shipments,
  .section-order-summary .section-order-will-call {
    margin-bottom: 20px;
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information,
      .section-order-summary .section-order-itemization,
      .section-order-summary .section-order-shipments,
      .section-order-summary .section-order-will-call {
        padding: 10px; } }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information .table thead,
      .section-order-summary .section-order-itemization .table thead,
      .section-order-summary .section-order-shipments .table thead,
      .section-order-summary .section-order-will-call .table thead {
        display: none; } }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information .table tr td, .section-order-summary .section-order-information .table tr th,
      .section-order-summary .section-order-itemization .table tr td,
      .section-order-summary .section-order-itemization .table tr th,
      .section-order-summary .section-order-shipments .table tr td,
      .section-order-summary .section-order-shipments .table tr th,
      .section-order-summary .section-order-will-call .table tr td,
      .section-order-summary .section-order-will-call .table tr th {
        display: block; } }
    .section-order-summary .section-order-information .table > thead > tr > th,
    .section-order-summary .section-order-itemization .table > thead > tr > th,
    .section-order-summary .section-order-shipments .table > thead > tr > th,
    .section-order-summary .section-order-will-call .table > thead > tr > th {
      border-bottom: 0; }
    .section-order-summary .section-order-information .table > tbody > tr > td,
    .section-order-summary .section-order-itemization .table > tbody > tr > td,
    .section-order-summary .section-order-shipments .table > tbody > tr > td,
    .section-order-summary .section-order-will-call .table > tbody > tr > td {
      border-top: 1px solid #e4e4e4;
      border-bottom: 1px solid #e4e4e4; }
      .section-order-summary .section-order-information .table > tbody > tr > td .sku,
      .section-order-summary .section-order-itemization .table > tbody > tr > td .sku,
      .section-order-summary .section-order-shipments .table > tbody > tr > td .sku,
      .section-order-summary .section-order-will-call .table > tbody > tr > td .sku {
        color: #fff; }
    .section-order-summary .section-order-information .table > tfoot > tr > td,
    .section-order-summary .section-order-itemization .table > tfoot > tr > td,
    .section-order-summary .section-order-shipments .table > tfoot > tr > td,
    .section-order-summary .section-order-will-call .table > tfoot > tr > td {
      border-top: 0;
      border-bottom: 0; }
    .section-order-summary .section-order-information .table > tfoot > tr > th,
    .section-order-summary .section-order-itemization .table > tfoot > tr > th,
    .section-order-summary .section-order-shipments .table > tfoot > tr > th,
    .section-order-summary .section-order-will-call .table > tfoot > tr > th {
      border-top: 0;
      border-bottom: 0; }
  .section-order-summary .section-order-information .col {
    float: left; }
    .section-order-summary .section-order-information .col.col-1-3 {
      width: 100%;
      display: block;
      margin-top: 20px; }
      @media screen and (min-width: 841px) {
        .section-order-summary .section-order-information .col.col-1-3 {
          width: 33.33%; } }
    .section-order-summary .section-order-information .col ul li .button {
      margin-top: 10px; }
  .section-order-summary .section-order-itemization .table > tfoot > tr > th {
    text-align: right; }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-itemization .table > tfoot > tr > th {
        text-align: left; } }
  .section-order-summary .section-order-shipments .row-shipping-information .order.status {
    float: right;
    padding: 5px 12px;
    margin-right: 0;
    background-color: #1777A2;
    border-radius: 20px;
    margin-top: -5px; }
    @media screen and (min-width: 841px) {
      .section-order-summary .section-order-shipments .row-shipping-information .order.status {
        margin-right: 20px; } }
  .section-order-summary .section-order-shipments .row-shipping-information .col {
    float: left; }
    .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2 {
      width: 100%;
      display: block;
      margin-top: 20px; }
      @media screen and (min-width: 841px) {
        .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2 {
          width: 50%; } }
      .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2:nth-child(2) strong {
        margin-bottom: 10px;
        display: block; }
  .section-order-summary .button-row .button {
    float: right; }
  .section-order-summary .trustpilot-review {
    margin: 2em auto;
    overflow: scroll;
    text-align: center; }

.main-account-order-list .aside-order-list h2 {
  margin-top: 0; }

.main-account-order-list .aside-order-list .no-orders {
  margin-top: 10px; }

@media screen and (max-width: 840px) {
  .main-account-order-list .aside-order-list .table thead {
    display: none; }
  .main-account-order-list .aside-order-list tr td, .main-account-order-list .aside-order-list tr th {
    display: block;
    width: 100%; } }

.aside-nav ul li {
  display: block;
  padding: 5px; }
  .aside-nav ul li a {
    display: block; }
    .aside-nav ul li a:hover {
      opacity: 0.6; }
    .aside-nav ul li a i {
      padding-right: 5px; }

.aside-nav ul .item.linked .counter {
  position: relative;
  top: -2px;
  left: 5px;
  padding: 6px 7px;
  border-radius: 50%;
  background-color: #e4e4e4;
  color: #fff;
  font-size: 12px; }

.aside-nav ul .item.avatar {
  text-align: center;
  margin-bottom: 20px; }
  @media screen and (max-width: 840px) {
    .aside-nav ul .item.avatar {
      text-align: left; } }
  .aside-nav ul .item.avatar .pic {
    margin-bottom: 20px;
    transition: 0.5s ease; }
    .aside-nav ul .item.avatar .pic img {
      width: 100%;
      max-width: 100%; }
      @media screen and (max-width: 840px) {
        .aside-nav ul .item.avatar .pic img {
          width: 240px; } }
    .aside-nav ul .item.avatar .pic .edit {
      visibility: hidden;
      position: absolute;
      display: block;
      padding: 8px 16px;
      font-size: 12px;
      font-weight: 400;
      background-color: #040404; }
      .aside-nav ul .item.avatar .pic .edit i {
        padding-right: 2px; }
    .aside-nav ul .item.avatar .pic:hover .edit {
      visibility: visible; }
  .aside-nav ul .item.avatar a {
    display: block; }

/* Modal Bootstrap ;) */
.modal {
  background-color: rgba(4, 4, 4, 0.75); }

/* General Messages */
@media screen and (min-width: 768px) {
  .modal-engine-messages .modal-dialog {
    margin: 12% auto; } }

.modal-engine-messages .modal-dialog .modal-header {
  border-bottom: 0;
  width: 100%; }
  .modal-engine-messages .modal-dialog .modal-header:before {
    content: none; }
  .modal-engine-messages .modal-dialog .modal-header h5 {
    color: #040404; }
  .modal-engine-messages .modal-dialog .modal-header .close {
    color: #040404;
    font-size: 34px;
    text-shadow: none;
    margin-top: -12px;
    opacity: 1.0; }
    .modal-engine-messages .modal-dialog .modal-header .close:hover {
      opacity: 0.75; }

.modal-engine-messages .modal-dialog .modal-body ul li {
  padding-bottom: 5px;
  color: #040404; }

.modal-engine-messages .modal-dialog .modal-body ul i {
  margin: 0 5px; }

.modal-engine-messages .modal-dialog .modal-body ul .glyphicon-alert {
  color: #d9534f; }

.modal-engine-messages .modal-dialog .modal-body ul .glyphicon-thumbs-up {
  color: #6C8869;
  position: relative;
  top: 3px; }

.modal-engine-messages .modal-dialog .modal-footer {
  border-top: 0; }

/* Product Images */
.modal-product-images .modal-dialog {
  padding-top: 0; }
  @media screen and (min-width: 768px) {
    .modal-product-images .modal-dialog {
      margin: 60px auto; } }
  .modal-product-images .modal-dialog img {
    max-width: 100% !important;
    padding: 0 !important; }

.modal-product-images .modal-header {
  border-bottom: 0; }
  @media screen and (min-width: 768px) {
    .modal-product-images .modal-header {
      padding: 0; } }
  .modal-product-images .modal-header .close {
    color: #040404;
    font-size: 34px;
    text-shadow: none;
    margin-top: -12px;
    opacity: 1.0; }
    @media screen and (min-width: 768px) {
      .modal-product-images .modal-header .close {
        font-size: 48px;
        color: #fff;
        position: absolute;
        margin-left: calc(50% + 15px);
        margin-top: -50px;
        left: 50%; } }
    .modal-product-images .modal-header .close:hover {
      opacity: 0.75; }

/* Viva la legacy */
.engine-messages {
  position: fixed;
  top: calc(50% - 200px);
  left: calc(50% - 300px);
  z-index: 1000000000000;
  background-color: #fff;
  width: 600px;
  border-radius: 4px;
  box-shadow: 2px 2px 2px rgba(4, 4, 4, 0.5); }
  @media screen and (max-width: 600px) {
    .engine-messages {
      left: calc(50% - 200px);
      width: 400px; } }
  @media screen and (max-width: 400px) {
    .engine-messages {
      left: calc(50% - 150px);
      width: 300px; } }
  .engine-messages .header {
    display: none; }
  .engine-messages ul {
    display: block; }
    .engine-messages ul li {
      list-style: none; }
    .engine-messages ul.messages {
      margin: 20px 0;
      padding: 10px; }
      .engine-messages ul.messages .error {
        padding: 0 12px;
        color: #040404;
        margin-top: 5px; }
        .engine-messages ul.messages .error i {
          margin-right: 5px;
          color: #d9534f; }
      .engine-messages ul.messages .success {
        padding: 0 12px;
        color: #040404;
        margin-top: 5px; }
    .engine-messages ul.actions {
      padding: 10px;
      overflow: hidden; }
      .engine-messages ul.actions button {
        float: right;
        font-size: 16px;
        text-transform: capitalize;
        font-weight: normal; }
        .engine-messages ul.actions button.close {
          text-shadow: none;
          background-color: #666666;
          color: #fff;
          font-weight: normal;
          padding: 10px 24px;
          border-radius: 4px;
          opacity: 1.0;
          transition: 0.5s ease; }
          .engine-messages ul.actions button.close span {
            font-weight: 300; }
          .engine-messages ul.actions button.close:hover {
            background-color: #e4e4e4; }

/**
 * Styles for store tpl files
 */
/* Type */
/* carousel */
/* common variables for the store && account templates */
/* colors */
/* borders */
/* font */
/* line height */
/* form elements */
/* animations */
/* layout && breakpoints */
/* header / main nav */
/* account */
/* store listing types */
/* store aside */
/* footer */
/* modules */
/* Avatar rollovers */
.avatar_wrapper {
  position: relative;
  max-width: 100%;
  transition: none; }

.avatar_rollover {
  position: absolute;
  z-index: 1100;
  padding: 6px;
  color: #222222;
  border-radius: 5px;
  background-color: #EEEEEE;
  opacity: 0.9; }
  .avatar_rollover img {
    float: left;
    width: 100px;
    height: 100px;
    margin-right: 6px; }
  .avatar_rollover .rollover_content {
    float: left;
    width: 200px;
    overflow: hidden; }
    .avatar_rollover .rollover_content p {
      margin: 0;
      padding: 0; }
    .avatar_rollover .rollover_content .name {
      font-weight: 700;
      font-size: 18px; }
    .avatar_rollover .rollover_content .more dt, .avatar_rollover .rollover_content .more dd {
      width: 49px;
      margin: 0;
      padding: 0;
      float: left; }
    .avatar_rollover .rollover_content .more .stat {
      float: left;
      width: 100px; }

/* common variables for the store && account templates */
.no-border {
  border: 0 !important; }

.clearfix:before, .clearfix:after {
  content: '';
  display: table; }

.clearfix:after {
  clear: both; }

body {
  background-color: rgba(255, 255, 255, 0.07);
  font-family: Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: normal; }
  body.account #page .wrap, body.store #page .wrap {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1140px; }
    @media screen and (max-width: 1140px) {
      body.account #page .wrap, body.store #page .wrap {
        padding: 0 10px; } }
  body.account #page a, body.store #page a {
    transition: 0.5s ease;
    color: #040404; }
    body.account #page a:hover, body.account #page a:focus, body.store #page a:hover, body.store #page a:focus {
      opacity: 0.8;
      color: #666666;
      text-decoration: none;
      box-shadow: none;
      outline: none; }
  body.account .row, body.store .row {
    margin-left: 0;
    margin-right: 0; }
  body.account #container {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      body.account #container {
        padding: 0 20px; } }
  body.store .section-cart,
  body.store .section-order-billing,
  body.store .section-shipping-method,
  body.store .section-payment-information,
  body.store .section-order-summary {
    background-color: rgba(255, 255, 255, 0.07); }
    body.store .section-cart, body.store .section-cart h1, body.store .section-cart h2, body.store .section-cart h3, body.store .section-cart h4, body.store .section-cart h5, body.store .section-cart h6,
    body.store .section-order-billing,
    body.store .section-order-billing h1,
    body.store .section-order-billing h2,
    body.store .section-order-billing h3,
    body.store .section-order-billing h4,
    body.store .section-order-billing h5,
    body.store .section-order-billing h6,
    body.store .section-shipping-method,
    body.store .section-shipping-method h1,
    body.store .section-shipping-method h2,
    body.store .section-shipping-method h3,
    body.store .section-shipping-method h4,
    body.store .section-shipping-method h5,
    body.store .section-shipping-method h6,
    body.store .section-payment-information,
    body.store .section-payment-information h1,
    body.store .section-payment-information h2,
    body.store .section-payment-information h3,
    body.store .section-payment-information h4,
    body.store .section-payment-information h5,
    body.store .section-payment-information h6,
    body.store .section-order-summary,
    body.store .section-order-summary h1,
    body.store .section-order-summary h2,
    body.store .section-order-summary h3,
    body.store .section-order-summary h4,
    body.store .section-order-summary h5,
    body.store .section-order-summary h6 {
      color: #040404; }
  body.media {
    overflow: auto; }
  body.privacy .section.privacy {
    max-width: 1140px;
    margin: auto;
    padding: 12px; }
    @media screen and (max-width: 840px) {
      body.privacy .section.privacy {
        padding: 20px; } }

.wrap {
  display: block;
  overflow: hidden;
  clear: both;
  margin: auto;
  padding: 0 12px;
  max-width: 1140px; }
  @media screen and (max-width: 1140px) {
    .wrap {
      padding: 0 10px; } }

ul {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
  padding: 0; }
  ul li {
    list-style: none; }

ol {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0; }

@media screen and (max-width: 840px) {
  h1, h2, h3 {
    font-size: 24px;
    line-height: 1.4; } }

/* Form elements */
input {
  border: 0;
  border-radius: 4px;
  padding: 5px;
  height: 36px;
  color: #040404; }
  input:focus {
    opacity: 0.8;
    outline: none; }

button:focus {
  opacity: 0.8;
  outline: none; }

a:focus {
  outline: none; }

select {
  color: #040404;
  text-indent: 5px; }

.input, .select {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  color: #040404; }
  .input label, .select label {
    display: block;
    float: left;
    margin-bottom: 8px;
    padding: 0;
    width: 100%;
    line-height: 18px;
    font-weight: normal; }
  .input input, .select input {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff; }
    .input input:focus, .select input:focus {
      opacity: 0.8;
      outline: none; }
  .input select, .select select {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff;
    height: 36px;
    color: #040404;
    background-color: #fff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
    background-position: calc(98.75% - 5px) 50%;
    background-repeat: no-repeat;
    background-size: 10px;
    border-radius: 4px; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
  .input .error, .select .error {
    position: absolute;
    right: 5px;
    top: -2px;
    font-size: 14px;
    color: #d9534f; }
  .input.input-message .error, .select.input-message .error {
    margin-top: 9px; }
    @media screen and (max-width: 500px) {
      .input.input-message .error, .select.input-message .error {
        margin-left: 0; } }

/* row */
.row {
  margin-left: 0;
  margin-right: 0; }
  .row:before {
    content: none; }

.row-buttons {
  display: block;
  clear: both;
  float: left;
  margin: 20px 0; }
  @media screen and (max-width: 840px) {
    .row-buttons {
      width: 100%; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button {
      width: 100% !important;
      display: block;
      clear: both;
      margin: 5px 0; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button:nth-child(2) {
      margin: 10px 0 !important; } }
  .row-buttons.row-buttons-two {
    width: 100%;
    padding-top: 20px;
    border-top: 1px solid #3C3333; }
    .row-buttons.row-buttons-two .button {
      display: inline-block; }
      .row-buttons.row-buttons-two .button:nth-child(2) {
        float: right; }

/* buttons */
.button, a.button {
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease;
  /* Piss Poor Planning Promotes Poor Performance  */ }
  .button:hover, .button:focus, a.button:hover, a.button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  body.account #page .button,
  body.store #page .button, body.account #page a.button,
  body.store #page a.button {
    color: #fff; }

.button-primary {
  background-color: #FA4C06; }
  .button-primary:hover, .button-primary:focus {
    background-color: #c93d04; }

button[disabled="disabled"],
a[disabled="disabled"] {
  cursor: not-allowed !important;
  opacity: 0.5; }

.btn-accordion {
  display: inline-block;
  padding-bottom: 1em; }
  .btn-accordion:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 0.5em;
    border-style: solid;
    border-width: 0.5em 0.25em 0 0.25em;
    border-color: #040404 transparent transparent transparent; }
  .btn-accordion[aria-expanded="true"]:after {
    transform: rotate(180deg); }

#fancybox-content p {
  color: #040404; }

#fancybox-content button {
  padding: 10px 14px;
  border: none;
  border-radius: 4px;
  background-color: #e4e4e4;
  transition: 0.5s ease;
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease; }
  #fancybox-content button:hover, #fancybox-content button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  #fancybox-content button:hover {
    opacity: 0.75; }

/* store imports */
/* mixin for flaged listing for products and categories */
/**
 * general listing for products and categories
 */
/* store elements */
.main-store-products,
.main-category-products {
  width: 75%;
  float: left;
  padding-right: 15px; }
  .main-store-products:before, .main-store-products:after,
  .main-category-products:before,
  .main-category-products:after {
    content: '';
    display: table; }
  .main-store-products:after,
  .main-category-products:after {
    clear: both; }
  @media screen and (max-width: 840px) {
    .main-store-products,
    .main-category-products {
      display: block;
      clear: both;
      width: 100%;
      padding: 10px; }
      @supports (padding: 0px) {
        .main-store-products,
        .main-category-products {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .main-store-products img,
  .main-category-products img {
    width: 100%; }

.aside-store {
  color: #040404;
  width: 25%;
  float: right;
  padding-left: 15px; }
  @media screen and (max-width: 840px) {
    .aside-store {
      display: block;
      clear: both;
      width: 100%;
      padding: 10px; }
      @supports (padding: 0px) {
        .aside-store {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }

aside#wu-alert-banner {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  width: 100vw;
  min-height: 50px;
  position: absolute;
  background-color: #db0000;
  opacity: 0.9;
  color: #fff;
  z-index: 1234;
  display: flex;
  align-items: center;
  justify-content: center; }
  aside#wu-alert-banner .message-text {
    text-align: center;
    flex-basis: 50%; }
    aside#wu-alert-banner .message-text .more-info {
      color: #fff;
      text-decoration: underline;
      display: block; }
      aside#wu-alert-banner .message-text .more-info:hover, aside#wu-alert-banner .message-text .more-info:focus {
        color: #fff; }
  aside#wu-alert-banner .close {
    cursor: pointer;
    opacity: 1;
    color: #fff;
    height: 20px;
    width: 20px;
    position: absolute;
    right: 10px;
    top: 10px; }

.section-order-billing {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-billing {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-billing {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-order-billing .section-billing-profile,
  .section-order-billing .section-billing-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-order-billing .section-billing-profile,
      .section-order-billing .section-billing-information {
        padding: 10px; } }
    .section-order-billing .section-billing-profile h1, .section-order-billing .section-billing-profile h2, .section-order-billing .section-billing-profile h3,
    .section-order-billing .section-billing-information h1,
    .section-order-billing .section-billing-information h2,
    .section-order-billing .section-billing-information h3 {
      margin-top: 0; }
    .section-order-billing .section-billing-profile input, .section-order-billing .section-billing-profile select,
    .section-order-billing .section-billing-information input,
    .section-order-billing .section-billing-information select {
      background-color: #fff;
      border-radius: 4px;
      font: 300 16px "Helvetica Neue", Helvetica, Arial, sans-serif; }
    .section-order-billing .section-billing-profile .row-payment-method,
    .section-order-billing .section-billing-information .row-payment-method {
      margin-bottom: 20px; }
    .section-order-billing .section-billing-profile .fieldset,
    .section-order-billing .section-billing-information .fieldset {
      padding: 0 20px 0 0;
      float: left;
      width: 50%;
      position: relative;
      transition: 0.5s ease; }
      @media screen and (max-width: 840px) {
        .section-order-billing .section-billing-profile .fieldset,
        .section-order-billing .section-billing-information .fieldset {
          display: block;
          width: 100%;
          padding: 0; } }
      .section-order-billing .section-billing-profile .fieldset legend,
      .section-order-billing .section-billing-information .fieldset legend {
        position: relative;
        border: 0;
        width: 100%;
        top: 5px;
        color: #040404; }
      .section-order-billing .section-billing-profile .fieldset ul,
      .section-order-billing .section-billing-information .fieldset ul {
        position: relative; }
    .section-order-billing .section-billing-profile .button:nth-child(2),
    .section-order-billing .section-billing-information .button:nth-child(2) {
      margin-left: 10px; }
    .section-order-billing .section-billing-profile .button-continue,
    .section-order-billing .section-billing-profile .button-save,
    .section-order-billing .section-billing-information .button-continue,
    .section-order-billing .section-billing-information .button-save {
      background-color: #FA4C06; }
      .section-order-billing .section-billing-profile .button-continue:hover, .section-order-billing .section-billing-profile .button-continue:focus,
      .section-order-billing .section-billing-profile .button-save:hover,
      .section-order-billing .section-billing-profile .button-save:focus,
      .section-order-billing .section-billing-information .button-continue:hover,
      .section-order-billing .section-billing-information .button-continue:focus,
      .section-order-billing .section-billing-information .button-save:hover,
      .section-order-billing .section-billing-information .button-save:focus {
        background-color: #c93d04; }
  .section-order-billing .section-billing-profile {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding-bottom: 0; }
  .section-order-billing .section-billing-information {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding-top: 0; }
  .section-order-billing .StripeElement {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 8px 10px;
    width: 100%;
    height: 36px;
    text-align: left;
    text-indent: 9px;
    color: #000;
    background-color: #fff;
    border-radius: 4px; }

.cart-info {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 0; }
  @media screen and (max-width: 840px) {
    .cart-info {
      padding: 10px; } }
  .cart-info .cart-items {
    float: right; }
    @media screen and (max-width: 840px) {
      .cart-info .cart-items {
        float: none; } }

.section-cart {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-cart {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-cart {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-cart h1 {
    font-size: 28px;
    margin: 20px 0 40px 0; }
    @media screen and (max-width: 840px) {
      .section-cart h1 {
        text-align: center; } }
  .section-cart .section-cart-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-cart .section-cart-information {
        padding: 10px; } }
    .section-cart .section-cart-information .review {
      border-bottom: 1px solid #e4e4e4;
      padding: 10px 12px; }
  .section-cart .table {
    border-radius: 4px;
    padding: 10px; }
    @media screen and (max-width: 840px) {
      .section-cart .table thead {
        display: none; } }
    .section-cart .table .total {
      text-align: right; }
      @media screen and (max-width: 840px) {
        .section-cart .table .total {
          text-align: left; } }
    .section-cart .table th.quantity,
    .section-cart .table td.quantity {
      white-space: nowrap;
      width: 100px; }
      @media screen and (max-width: 840px) {
        .section-cart .table th.quantity,
        .section-cart .table td.quantity {
          width: 100%; } }
    .section-cart .table th {
      padding: 12px; }
    .section-cart .table td {
      font-weight: 300;
      padding: 12px;
      vertical-align: baseline; }
      @media screen and (max-width: 840px) {
        .section-cart .table td {
          display: block;
          width: 100%; }
          .section-cart .table td::before {
            content: attr(data-description);
            display: block;
            font-weight: 800; } }
      @media screen and (max-width: 840px) {
        .section-cart .table td.td-bundle-extra {
          display: none; } }
      .section-cart .table td .button-quantity {
        background-color: #666666;
        font-size: 12px;
        font-weight: bold;
        height: 32px;
        line-height: 1;
        padding: 0;
        text-transform: uppercase;
        width: 31px; }
        .section-cart .table td .button-quantity:hover {
          background-color: #444444; }
      .section-cart .table td.item a {
        margin-right: 5px;
        text-transform: capitalize; }
        .section-cart .table td.item a:hover {
          color: #e4e4e4; }
      .section-cart .table td.item .sku {
        color: #666666;
        display: block; }
      .section-cart .table td.quantity input,
      .section-cart .table td.quantity select {
        background-color: #fff;
        border: 0;
        color: #040404;
        height: 32px;
        margin-right: 4px;
        position: relative;
        top: 2px;
        width: 36px; }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot {
        display: block;
        padding: 20px 0; } }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot th,
      .section-cart .table tfoot td {
        display: block;
        padding: 8px 12px 4px 12px; } }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot td {
        padding: 2px 12px; } }
  .section-cart .table > thead > tr > th,
  .section-cart .table > tbody > tr > td {
    border-bottom: 1px solid #e4e4e4;
    border-top: 0; }
    @media screen and (max-width: 840px) {
      .section-cart .table > thead > tr > th:not(:last-child),
      .section-cart .table > tbody > tr > td:not(:last-child) {
        border-color: rgba(228, 228, 228, 0.2); } }
  .section-cart .table > tfoot > tr > td,
  .section-cart .table > tfoot > tr > th {
    border-top: 0;
    text-align: right;
    width: 100px; }
    @media screen and (max-width: 840px) {
      .section-cart .table > tfoot > tr > td,
      .section-cart .table > tfoot > tr > th {
        text-align: left;
        width: 100%; } }
  .section-cart .row-buttons-actions {
    border-top: 1px solid #3C3333;
    margin-top: 20px;
    overflow: hidden;
    padding: 20px 0;
    width: 100%; }
    @media screen and (min-width: 840px) {
      .section-cart .row-buttons-actions .button-group {
        float: right; } }
    @media screen and (max-width: 840px) {
      .section-cart .row-buttons-actions .button-continue {
        padding: 12px;
        width: 100%; }
        .section-cart .row-buttons-actions .button-continue:hover, .section-cart .row-buttons-actions .button-continue:focus {
          color: #666666; } }
    .section-cart .row-buttons-actions a,
    .section-cart .row-buttons-actions button {
      padding: 12px 24px;
      background-color: #666666;
      border: 0;
      border-radius: 4px;
      color: #fff;
      display: inline-block;
      font-size: initial;
      text-align: center;
      text-transform: capitalize;
      transition: 0.5s ease;
      display: inline-block; }
      .section-cart .row-buttons-actions a:hover, .section-cart .row-buttons-actions a:focus,
      .section-cart .row-buttons-actions button:hover,
      .section-cart .row-buttons-actions button:focus {
        background-color: gray;
        color: #fff;
        text-decoration: none;
        outline: 0;
        box-shadow: none; }
      @media screen and (max-width: 840px) {
        .section-cart .row-buttons-actions a,
        .section-cart .row-buttons-actions button {
          display: block;
          margin-bottom: 20px;
          width: 100%; } }
      .section-cart .row-buttons-actions a:hover, .section-cart .row-buttons-actions a:focus,
      .section-cart .row-buttons-actions button:hover,
      .section-cart .row-buttons-actions button:focus {
        background-color: #AAAAAA; }
    .section-cart .row-buttons-actions .button-update {
      margin-right: 20px; }
      @media screen and (max-width: 840px) {
        .section-cart .row-buttons-actions .button-update {
          margin-right: 0; } }
    .section-cart .row-buttons-actions .button-checkout {
      background-color: #FA4C06; }
      .section-cart .row-buttons-actions .button-checkout:hover, .section-cart .row-buttons-actions .button-checkout:focus {
        background-color: #c93d04; }

.section-store-categories .item {
  width: 33%;
  text-align: center; }
  .section-store-categories .item .figure {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden; }
    .section-store-categories .item .figure a {
      display: block;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0; }
    .section-store-categories .item .figure img {
      width: 100%;
      max-width: 100%;
      vertical-align: middle;
      transition: 0.5s ease; }
      @media screen and (max-width: 840px) {
        .section-store-categories .item .figure img {
          margin: auto; } }
  .section-store-categories .item .product-details {
    margin-top: 10px; }
    .section-store-categories .item .product-details .product-container .product {
      margin-top: 5px; }

.section-store-categories .header-store-categories h2.title {
  margin-bottom: 60px; }

.section-store-categories .item {
  height: 100%;
  min-height: 100%;
  margin-bottom: 20px; }

.section-store-categories .item .content {
  background-color: #fff; }
  .section-store-categories .item .content a {
    padding: 6px 10px 10px 10px; }
    .section-store-categories .item .content a:hover {
      color: rgba(4, 4, 4, 0.5); }

.section-store-categories .header-categories .title, .section-store-categories .header-store-categories .title {
  margin-bottom: 20px; }

.section-store-categories .detail-store-categories {
  overflow: hidden;
  margin: 20px auto 100px auto; }
  .section-store-categories .detail-store-categories .listing {
    display: flex;
    flex-wrap: wrap; }

.section-store-categories .details.excerpt .name {
  position: relative;
  top: 5px; }

/* store category nav list */
.nav-categories {
  text-align: center; }
  .nav-categories .wrap {
    padding-bottom: 12px;
    padding-top: 12px; }
    .nav-categories .wrap .listing {
      display: inline-block; }

.main-category-products .header-category h1.title {
  margin-bottom: 60px; }

.main-category-products .listing {
  display: flex;
  flex-wrap: wrap; }

.main-category-products .detail {
  display: block;
  overflow: hidden;
  margin: 0 0 100px 0; }
  .main-category-products .detail .item {
    width: 33%;
    text-align: center; }
    .main-category-products .detail .item .figure {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 100%;
      min-width: 0;
      max-width: 100%;
      overflow: hidden; }
      .main-category-products .detail .item .figure a {
        display: block;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0; }
      .main-category-products .detail .item .figure img {
        width: 100%;
        max-width: 100%;
        vertical-align: middle;
        transition: 0.5s ease; }
        @media screen and (max-width: 840px) {
          .main-category-products .detail .item .figure img {
            margin: auto; } }
    .main-category-products .detail .item .product-details {
      margin-top: 10px; }
      .main-category-products .detail .item .product-details .product-container .product {
        margin-top: 5px; }
  .main-category-products .detail .item {
    padding: 0 20px;
    margin-bottom: 40px; }
    @media screen and (max-width: 500px) {
      .main-category-products .detail .item {
        padding: 0 10px;
        width: 50%; }
        .main-category-products .detail .item .name {
          font-size: 0.8em; } }
  .main-category-products .detail .details .tab {
    display: none; }
  .main-category-products .detail .details .product-details {
    text-align: center; }
  .main-category-products .detail .cash {
    font-weight: 800; }

@media screen and (max-width: 840px) {
  .section-order-extra {
    padding: 20px; } }

.section-order-extra .section-additional-information {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px; }
  @media screen and (max-width: 840px) {
    .section-order-extra .section-additional-information {
      padding: 10px; } }
  .section-order-extra .section-additional-information .fieldset legend {
    position: relative;
    border: 0;
    width: 100%;
    top: 5px;
    color: #040404;
    color: #fff; }
  .section-order-extra .section-additional-information .row-buttons .button-shipping-back {
    padding: 14px 24px; }
    .section-order-extra .section-additional-information .row-buttons .button-shipping-back:hover, .section-order-extra .section-additional-information .row-buttons .button-shipping-back:focus {
      color: #fff; }
  .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info {
    background-color: #FA4C06;
    margin-left: 10px; }
    .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info:hover, .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info:focus {
      background-color: #c93d04; }

.section-payment-information {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-payment-information {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-payment-information {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-payment-information .header-order-summary {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px;
    margin-bottom: 30px; }
    @media screen and (max-width: 840px) {
      .section-payment-information .header-order-summary {
        padding: 10px; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .header-order-summary {
        padding: 0 20px; } }
  .section-payment-information .section-payment-address-information,
  .section-payment-information .section-purchase-information {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information,
      .section-payment-information .section-purchase-information {
        padding: 10px; } }
    .section-payment-information .section-payment-address-information .col,
    .section-payment-information .section-purchase-information .col {
      float: left; }
      .section-payment-information .section-payment-address-information .col.col-1-2,
      .section-payment-information .section-purchase-information .col.col-1-2 {
        width: 50%;
        margin-bottom: 20px; }
        @media screen and (max-width: 840px) {
          .section-payment-information .section-payment-address-information .col.col-1-2,
          .section-payment-information .section-purchase-information .col.col-1-2 {
            width: 100%;
            display: block;
            clear: both; }
            .section-payment-information .section-payment-address-information .col.col-1-2:nth-child(2),
            .section-payment-information .section-purchase-information .col.col-1-2:nth-child(2) {
              margin-top: 20px; } }
        .section-payment-information .section-payment-address-information .col.col-1-2 ul:nth-child(2),
        .section-payment-information .section-purchase-information .col.col-1-2 ul:nth-child(2) {
          margin: 10px 0; }
        .section-payment-information .section-payment-address-information .col.col-1-2 ul li:nth-child(1),
        .section-payment-information .section-purchase-information .col.col-1-2 ul li:nth-child(1) {
          padding-bottom: 5px; }
    .section-payment-information .section-payment-address-information .table > thead > tr > th,
    .section-payment-information .section-payment-address-information .table > tbody > tr > td,
    .section-payment-information .section-payment-address-information .table > tfoot > tr > td,
    .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
    .section-payment-information .section-purchase-information .table > thead > tr > th,
    .section-payment-information .section-purchase-information .table > tbody > tr > td,
    .section-payment-information .section-purchase-information .table > tfoot > tr > td,
    .section-payment-information .section-purchase-information .table > tfoot > tr > th {
      border-bottom: 1px solid #e4e4e4;
      border-top: 0; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table > thead > tr > th:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tbody > tr > td:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tfoot > tr > td:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tfoot > tr > th:not(:last-child),
        .section-payment-information .section-purchase-information .table > thead > tr > th:not(:last-child),
        .section-payment-information .section-purchase-information .table > tbody > tr > td:not(:last-child),
        .section-payment-information .section-purchase-information .table > tfoot > tr > td:not(:last-child),
        .section-payment-information .section-purchase-information .table > tfoot > tr > th:not(:last-child) {
          border-color: rgba(228, 228, 228, 0.2); } }
    .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
    .section-payment-information .section-purchase-information .table > tfoot > tr > th {
      text-align: right; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table > tfoot > tr > td,
      .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
      .section-payment-information .section-purchase-information .table > tfoot > tr > td,
      .section-payment-information .section-purchase-information .table > tfoot > tr > th {
        text-align: left;
        width: 100%;
        border-top: 0;
        border-bottom: 0; } }
    .section-payment-information .section-payment-address-information .table .total,
    .section-payment-information .section-purchase-information .table .total {
      text-align: right; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .total,
        .section-payment-information .section-purchase-information .table .total {
          text-align: left; } }
      .section-payment-information .section-payment-address-information .table .total strong,
      .section-payment-information .section-purchase-information .table .total strong {
        background-color: #5cb85c;
        color: #fff;
        padding: 6px 8px;
        border-radius: 14px;
        font-size: 1.2em; }
    .section-payment-information .section-payment-address-information .table .sku,
    .section-payment-information .section-purchase-information .table .sku {
      color: #666666; }
    .section-payment-information .section-payment-address-information .table .quantity,
    .section-payment-information .section-purchase-information .table .quantity {
      text-align: center; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .quantity,
        .section-payment-information .section-purchase-information .table .quantity {
          text-align: left; } }
    .section-payment-information .section-payment-address-information .table a.button,
    .section-payment-information .section-purchase-information .table a.button {
      width: 160px;
      font-size: 12px; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table a.button,
        .section-payment-information .section-purchase-information .table a.button {
          width: 100%; } }
    .section-payment-information .section-payment-address-information .table .button,
    .section-payment-information .section-purchase-information .table .button {
      display: block; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .button,
        .section-payment-information .section-purchase-information .table .button {
          width: 100%; } }
    .section-payment-information .section-payment-address-information .table #promoCode,
    .section-payment-information .section-purchase-information .table #promoCode {
      display: none; }
      .section-payment-information .section-payment-address-information .table #promoCode input,
      .section-payment-information .section-purchase-information .table #promoCode input {
        text-align: left;
        width: 340px;
        display: inline;
        height: 42px;
        text-indent: 9px;
        background-color: #fff; }
        @media screen and (max-width: 840px) {
          .section-payment-information .section-payment-address-information .table #promoCode input,
          .section-payment-information .section-purchase-information .table #promoCode input {
            margin-top: 10px;
            width: 100%; } }
      .section-payment-information .section-payment-address-information .table #promoCode button,
      .section-payment-information .section-purchase-information .table #promoCode button {
        margin-top: 10px;
        display: inline;
        font-size: 12px;
        background-color: #FA4C06; }
        .section-payment-information .section-payment-address-information .table #promoCode button:hover, .section-payment-information .section-payment-address-information .table #promoCode button:focus,
        .section-payment-information .section-purchase-information .table #promoCode button:hover,
        .section-payment-information .section-purchase-information .table #promoCode button:focus {
          background-color: #c93d04; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table thead,
      .section-payment-information .section-purchase-information .table thead {
        display: none; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table td,
      .section-payment-information .section-purchase-information .table td {
        display: block;
        width: 100%; }
        .section-payment-information .section-payment-address-information .table td:before,
        .section-payment-information .section-purchase-information .table td:before {
          content: attr(data-description);
          display: block;
          font-weight: 800; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot,
      .section-payment-information .section-purchase-information .table tfoot {
        padding: 20px 0; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot th, .section-payment-information .section-payment-address-information .table tfoot td,
      .section-payment-information .section-purchase-information .table tfoot th,
      .section-payment-information .section-purchase-information .table tfoot td {
        display: block;
        padding: 12px 8px 4px 8px;
        border-bottom: 0;
        border-top: 0; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot td,
      .section-payment-information .section-purchase-information .table tfoot td {
        padding: 8px; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table #totals tr .grand-total,
      .section-payment-information .section-purchase-information .table #totals tr .grand-total {
        margin-bottom: 20px; } }
  .section-payment-information .section-purchase-information {
    margin-top: 20px; }
    .section-payment-information .section-purchase-information .table {
      margin-bottom: 40px; }
    .section-payment-information .section-purchase-information .row-review a {
      text-decoration: underline; }
    .section-payment-information .section-purchase-information .button-continue {
      background-color: #5cb85c; }
      .section-payment-information .section-purchase-information .button-continue:hover {
        background-color: #449d44; }
  .section-payment-information a.button {
    text-align: center; }
    .section-payment-information a.button:hover, .section-payment-information a.button:focus {
      color: #fff; }
  .section-payment-information .row-review {
    margin-top: 20px; }

.section-will-call .section-will-call-form {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px; }
  @media screen and (max-width: 840px) {
    .section-will-call .section-will-call-form {
      padding: 10px; } }

.aside-store {
  background-color: #f7f7f7;
  border-radius: 4px;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1140px;
  float: right;
  width: 25%;
  margin: 0; }
  @media screen and (max-width: 840px) {
    .aside-store {
      padding: 10px; } }
  @media screen and (max-width: 840px) {
    .aside-store {
      display: block;
      width: 100%; } }
  .aside-store > .header {
    padding: 0 0 15px 0; }
  .aside-store .header .title {
    margin-bottom: 20px; }
  .aside-store .header .cart-items {
    float: none; }
  .aside-store .header-aside .title {
    color: #040404; }
  .aside-store .header-aside .meta .expire .cart {
    font-size: 12px; }
  .aside-store .view-cart {
    text-align: center; }
    .aside-store .view-cart .button.cart {
      display: inline-block;
      background-color: #FA4C06;
      padding: 11px 20px;
      font-size: 14px; }
      .aside-store .view-cart .button.cart .badge {
        background-color: #fff;
        color: #FA4C06;
        margin: -0.2em 0 0 0.5em; }
      .aside-store .view-cart .button.cart:hover {
        background-color: #c93d04; }
  .aside-store .cart-items {
    margin: 10px auto 5px;
    text-align: center; }
  .aside-store .title {
    border-right: 0; }
  .aside-store .listing .item {
    padding: 10px 5px;
    border-bottom: 1px solid #e4e4e4; }
    .aside-store .listing .item span, .aside-store .listing .item a {
      transition: 0.5s ease; }
  .aside-store .section-categories .header-aside, .aside-store .section-categories .header-categories {
    background-color: initial;
    border-color: transparent; }
    .aside-store .section-categories .header-aside .title, .aside-store .section-categories .header-categories .title {
      margin: 0;
      font-size: 16px;
      text-align: center; }
  .aside-store .section-categories .detail ul li:nth-child(1) {
    border-top: 1px solid #e4e4e4; }
  .aside-store .section-categories .item.current {
    font-weight: 800; }
  @media screen and (min-width: 840px) {
    .aside-store .section-categories .collapse, .aside-store .section-categories .collapsing {
      display: block;
      height: auto !important; }
    .aside-store .section-categories .btn-accordion:after {
      display: none; } }

.cart-timer {
  text-align: center; }
  .cart-timer .expire {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 0.9em;
    white-space: normal; }
    .cart-timer .expire .cart {
      visibility: hidden;
      color: #fff; }
      .cart-timer .expire .cart-visible {
        visibility: visible; }

.checkout-progress {
  background-color: #f7f7f7;
  text-align: center;
  padding: 10px 0;
  margin: 10px auto 30px;
  display: block;
  border-radius: 4px;
  max-width: 1140px; }
  .checkout-progress li {
    color: #040404;
    display: inline;
    padding: 20px 10px; }
    @media screen and (max-width: 840px) {
      .checkout-progress li {
        display: block;
        padding: 10px; } }
    .checkout-progress li i {
      color: #5cb85c;
      top: 3px;
      padding-right: 3px; }
  .checkout-progress .current {
    font-weight: 800; }

.section-product-detail {
  color: #040404; }
  @supports (padding: 0px) {
    .section-product-detail {
      padding-left: max(10px, env(safe-area-inset-left));
      padding-right: max(10px, env(safe-area-inset-right)); } }
  .section-product-detail .wrap {
    display: block;
    overflow: hidden;
    background-color: #f7f7f7;
    border: 0 solid #3C3333;
    border-radius: 4px;
    color: #040404;
    padding: 20px; }
    @media screen and (max-width: 840px) {
      .section-product-detail .wrap {
        padding: 10px; }
        @supports (padding: 0px) {
          .section-product-detail .wrap {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (min-width: 841px) {
    .section-product-detail .section-product-description,
    .section-product-detail .section-product-purchase {
      float: left;
      width: 50%;
      padding: 12px; } }
  .section-product-detail .section-product-description .figure {
    background-color: #fff;
    border: 0 solid #3C3333;
    max-width: 400px;
    margin: 10px auto;
    text-align: center; }
    .section-product-detail .section-product-description .figure.active .image-placeholder {
      display: none; }
    .section-product-detail .section-product-description .figure .image {
      max-width: 96%;
      margin: 2% auto;
      padding: 2%;
      vertical-align: middle;
      transition: 0.5s ease; }
    .section-product-detail .section-product-description .figure ul li {
      display: inline; }
      .section-product-detail .section-product-description .figure ul li img {
        transition: 0.5s ease; }
        .section-product-detail .section-product-description .figure ul li img:hover {
          opacity: 0.8; }
  .section-product-detail .section-product-description .product-social {
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin: 2em 0; }
    .section-product-detail .section-product-description .product-social .like {
      margin-top: 0;
      width: 80px; }
    .section-product-detail .section-product-description .product-social .trustpilot-widget {
      width: 180px;
      height: 38px; }
  .section-product-detail .section-product-purchase {
    margin-bottom: 60px; }
    .section-product-detail .section-product-purchase > h1 {
      color: #040404;
      font-size: 22px;
      padding-top: 0;
      margin-top: 0;
      line-height: 1em; }
    .section-product-detail .section-product-purchase .price {
      font-size: 30px;
      margin: 0; }
    .section-product-detail .section-product-purchase p {
      margin: 0.25em 0 0.5em 0;
      line-height: 1.5em; }
    .section-product-detail .section-product-purchase ul li {
      list-style: none;
      margin: 0; }
      .section-product-detail .section-product-purchase ul li.price {
        margin-bottom: 10px; }
      .section-product-detail .section-product-purchase ul li.stock, .section-product-detail .section-product-purchase ul li.sku {
        display: inline-block; }
      .section-product-detail .section-product-purchase ul li.stock {
        background-color: #6C8869;
        color: #fff;
        border-radius: 15px;
        padding: 0 10px;
        font-size: 12px;
        margin-right: 6px;
        line-height: 2; }
        .section-product-detail .section-product-purchase ul li.stock.out {
          background-color: #d9534f; }
    .section-product-detail .section-product-purchase .purchase_form fieldset {
      margin-top: 20px;
      padding-top: 0;
      position: relative;
      transition: all 1ms 100ms; }
      .section-product-detail .section-product-purchase .purchase_form fieldset legend {
        padding: 0;
        border-bottom: 0;
        margin-bottom: 0; }
        .section-product-detail .section-product-purchase .purchase_form fieldset legend span {
          color: #040404;
          display: block;
          padding: 2px 0 10px 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset input {
        color: #040404;
        line-height: 1.0;
        background-color: #fff; }
        .section-product-detail .section-product-purchase .purchase_form fieldset input:focus {
          opacity: 0.6;
          outline: none; }
      .section-product-detail .section-product-purchase .purchase_form fieldset input[type="radio"], .section-product-detail .section-product-purchase .purchase_form fieldset input[type="checkbox"] {
        margin-top: 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select label {
        margin-right: 4px;
        width: auto; }
        @media screen and (max-width: 840px) {
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select label {
            line-height: 26px; } }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select select {
        border: 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment {
        padding-top: 10px; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked {
          display: block;
          padding: 12px 6px;
          border-radius: 5px;
          background-color: #B4D7B8;
          border: 1px solid #6C8869;
          line-height: 1.5; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked label {
            color: #666666;
            padding-left: 30px; }
            .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked label span {
              color: #6C8869;
              display: block; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked input {
            margin: 2px 0 0 -25px;
            width: auto;
            height: auto; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart {
        padding-top: 10px; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity {
          display: inline;
          width: 50px; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity label {
            display: inline;
            margin-right: 5px; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity .error {
            position: absolute;
            top: 35px;
            color: #d9534f; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
          float: right;
          padding: 2px 10px;
          width: 140px;
          font-size: 16px;
          background-color: #FA4C06;
          transition: 0.5s ease; }
          @media screen and (max-width: 400px) {
            .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
              display: block;
              clear: both;
              width: 100%;
              margin: 10px auto; } }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart:hover {
            background-color: #c93d04; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul li {
        line-height: 36px;
        position: relative; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul + ul {
        margin-top: 10px;
        border-top: 1px solid #3C3333; }
    .section-product-detail .section-product-purchase .meta {
      padding: 0 0 20px 0;
      margin-bottom: 20px;
      border-bottom: 1px solid #3C3333; }

/* 2-col Product Listing */
@media screen and (max-width: 500px) {
  .main-store-products .header-products .title {
    text-align: center; } }

@media screen and (max-width: 500px) {
  .main-store-products .products .item {
    width: 100%; } }

.main-store-products .products .cost {
  font-weight: 800; }

.main-store-products .products.section-products-featured {
  overflow: hidden; }
  .main-store-products .products.section-products-featured .listing .none {
    display: none; }

.main-store-products .products.section-products {
  overflow: hidden;
  margin-bottom: 20px; }

/* 3-col Product Listing */
.section-products-featured, .section-products {
  display: block;
  clear: both;
  overflow: hidden; }
  .section-products-featured .listing, .section-products .listing {
    display: flex;
    flex-wrap: wrap; }
    .section-products-featured .listing .item, .section-products .listing .item {
      width: 33%;
      padding: 0 20px;
      margin-bottom: 40px; }
      @media screen and (max-width: 500px) {
        .section-products-featured .listing .item, .section-products .listing .item {
          padding: 0 10px;
          width: 50%; } }
      .section-products-featured .listing .item .flag, .section-products .listing .item .flag {
        display: none; }
      .section-products-featured .listing .item .tab, .section-products .listing .item .tab {
        display: none; }
      .section-products-featured .listing .item .product-details, .section-products-featured .listing .item .tab, .section-products .listing .item .product-details, .section-products .listing .item .tab {
        text-align: center; }

.section-products-featured .listing .item {
  width: 50%; }
  @media screen and (max-width: 500px) {
    .section-products-featured .listing .item {
      width: 100%; } }

@media screen and (max-width: 500px) {
  .section-products .item .name {
    font-size: 0.8em; } }

.section-shipping-method {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 4px;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-shipping-method {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-shipping-method {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-shipping-method .section-shipping-address-container,
  .section-shipping-method .section-shipping-method-container {
    background-color: #f7f7f7;
    border-radius: 4px;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1140px; }
    @media screen and (max-width: 840px) {
      .section-shipping-method .section-shipping-address-container,
      .section-shipping-method .section-shipping-method-container {
        padding: 10px; } }
    .section-shipping-method .section-shipping-address-container .button-save-address,
    .section-shipping-method .section-shipping-address-container .button-save-method,
    .section-shipping-method .section-shipping-method-container .button-save-address,
    .section-shipping-method .section-shipping-method-container .button-save-method {
      background-color: #FA4C06; }
      .section-shipping-method .section-shipping-address-container .button-save-address:hover, .section-shipping-method .section-shipping-address-container .button-save-address:focus,
      .section-shipping-method .section-shipping-address-container .button-save-method:hover,
      .section-shipping-method .section-shipping-address-container .button-save-method:focus,
      .section-shipping-method .section-shipping-method-container .button-save-address:hover,
      .section-shipping-method .section-shipping-method-container .button-save-address:focus,
      .section-shipping-method .section-shipping-method-container .button-save-method:hover,
      .section-shipping-method .section-shipping-method-container .button-save-method:focus {
        background-color: #c93d04; }
  .section-shipping-method .section-shipping-address-container .fieldset-change-shipping-address .checkbox label {
    margin-left: 20px; }
  .section-shipping-method .section-shipping-address-container .fieldset-change-shipping-address .checkbox input {
    margin: 2px 0 0 -20px; }
  .section-shipping-method .section-shipping-method-container {
    margin-top: 20px; }
  .section-shipping-method .fieldset {
    padding: 0 20px 0 0;
    float: left;
    width: 50%;
    position: relative;
    transition: 0.5s ease;
    margin: 20px 0; }
    @media screen and (max-width: 840px) {
      .section-shipping-method .fieldset {
        width: 100%;
        display: block;
        clear: both;
        padding: 0; }
        .section-shipping-method .fieldset:nth-child(2) {
          margin-top: 20px; } }
    .section-shipping-method .fieldset legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404; }
    .section-shipping-method .fieldset .checkbox input {
      width: auto;
      height: auto;
      margin: 0 5px 10px 0; }
    .section-shipping-method .fieldset .checkbox label {
      padding: 0;
      margin: 0  5px 0 0; }
    .section-shipping-method .fieldset .checkbox select {
      height: 36px;
      color: #040404;
      background-color: #fff;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
      background-position: calc(98.75% - 5px) 50%;
      background-repeat: no-repeat;
      background-size: 10px;
      border-radius: 4px;
      line-height: 36px;
      width: calc(100%  - 80px);
      padding: 0;
      border: 0;
      margin-bottom: 10px; }
      .section-shipping-method .fieldset .checkbox select:focus {
        opacity: 0.8;
        outline: none; }
    .section-shipping-method .fieldset .radio + .radio, .section-shipping-method .fieldset .checkbox + .checkbox {
      margin-top: 0; }
  .section-shipping-method #internationalFieldset .checkbox input {
    margin: 0;
    width: 20px;
    height: auto;
    position: relative; }
  .section-shipping-method .row-buttons .button:nth-child(2) {
    margin-left: 10px; }

/* Modal Bootstrap ;) */
.modal {
  background-color: rgba(4, 4, 4, 0.75); }

/* General Messages */
@media screen and (min-width: 768px) {
  .modal-engine-messages .modal-dialog {
    margin: 12% auto; } }

.modal-engine-messages .modal-dialog .modal-header {
  border-bottom: 0;
  width: 100%; }
  .modal-engine-messages .modal-dialog .modal-header:before {
    content: none; }
  .modal-engine-messages .modal-dialog .modal-header h5 {
    color: #040404; }
  .modal-engine-messages .modal-dialog .modal-header .close {
    color: #040404;
    font-size: 34px;
    text-shadow: none;
    margin-top: -12px;
    opacity: 1.0; }
    .modal-engine-messages .modal-dialog .modal-header .close:hover {
      opacity: 0.75; }

.modal-engine-messages .modal-dialog .modal-body ul li {
  padding-bottom: 5px;
  color: #040404; }

.modal-engine-messages .modal-dialog .modal-body ul i {
  margin: 0 5px; }

.modal-engine-messages .modal-dialog .modal-body ul .glyphicon-alert {
  color: #d9534f; }

.modal-engine-messages .modal-dialog .modal-body ul .glyphicon-thumbs-up {
  color: #6C8869;
  position: relative;
  top: 3px; }

.modal-engine-messages .modal-dialog .modal-footer {
  border-top: 0; }

/* Product Images */
.modal-product-images .modal-dialog {
  padding-top: 0; }
  @media screen and (min-width: 768px) {
    .modal-product-images .modal-dialog {
      margin: 60px auto; } }
  .modal-product-images .modal-dialog img {
    max-width: 100% !important;
    padding: 0 !important; }

.modal-product-images .modal-header {
  border-bottom: 0; }
  @media screen and (min-width: 768px) {
    .modal-product-images .modal-header {
      padding: 0; } }
  .modal-product-images .modal-header .close {
    color: #040404;
    font-size: 34px;
    text-shadow: none;
    margin-top: -12px;
    opacity: 1.0; }
    @media screen and (min-width: 768px) {
      .modal-product-images .modal-header .close {
        font-size: 48px;
        color: #fff;
        position: absolute;
        margin-left: calc(50% + 15px);
        margin-top: -50px;
        left: 50%; } }
    .modal-product-images .modal-header .close:hover {
      opacity: 0.75; }

/* Viva la legacy */
.engine-messages {
  position: fixed;
  top: calc(50% - 200px);
  left: calc(50% - 300px);
  z-index: 1000000000000;
  background-color: #fff;
  width: 600px;
  border-radius: 4px;
  box-shadow: 2px 2px 2px rgba(4, 4, 4, 0.5); }
  @media screen and (max-width: 600px) {
    .engine-messages {
      left: calc(50% - 200px);
      width: 400px; } }
  @media screen and (max-width: 400px) {
    .engine-messages {
      left: calc(50% - 150px);
      width: 300px; } }
  .engine-messages .header {
    display: none; }
  .engine-messages ul {
    display: block; }
    .engine-messages ul li {
      list-style: none; }
    .engine-messages ul.messages {
      margin: 20px 0;
      padding: 10px; }
      .engine-messages ul.messages .error {
        padding: 0 12px;
        color: #040404;
        margin-top: 5px; }
        .engine-messages ul.messages .error i {
          margin-right: 5px;
          color: #d9534f; }
      .engine-messages ul.messages .success {
        padding: 0 12px;
        color: #040404;
        margin-top: 5px; }
    .engine-messages ul.actions {
      padding: 10px;
      overflow: hidden; }
      .engine-messages ul.actions button {
        float: right;
        font-size: 16px;
        text-transform: capitalize;
        font-weight: normal; }
        .engine-messages ul.actions button.close {
          text-shadow: none;
          background-color: #666666;
          color: #fff;
          font-weight: normal;
          padding: 10px 24px;
          border-radius: 4px;
          opacity: 1.0;
          transition: 0.5s ease; }
          .engine-messages ul.actions button.close span {
            font-weight: 300; }
          .engine-messages ul.actions button.close:hover {
            background-color: #e4e4e4; }

/* Styles for bootstrap carousel */
/* Full Width Responsive Carousel */
/* Vars */
.section-carousel {
  height: 0;
  margin: 0;
  padding-bottom: 40%;
  background: #333333 !important; }
  .section-carousel .item {
    z-index: 2; }
  .section-carousel .caption {
    display: none; }
  .section-carousel .image {
    display: block;
    padding-bottom: 40%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    .section-carousel .image img {
      display: none; }
  .section-carousel .carousel-control {
    width: 5%;
    z-index: 2; }
  .section-carousel .carousel-indicators li {
    margin-right: 5px; }
    .section-carousel .carousel-indicators li.active {
      background-color: rgba(255, 255, 255, 0.85); }

body.account #container {
  font-family: Arial, Helvetica, sans-serif; }
  body.account #container select:focus, body.account #container textarea:focus, body.account #container input:focus, body.account #container button:focus {
    border-color: #2188ff;
    outline: none;
    box-shadow: inset 0 1px 2px rgba(27, 31, 35, 0.075), 0 0 0 0.2em rgba(3, 102, 214, 0.3); }
  body.account #container textarea, body.account #container input {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    font-weight: 400; }
  body.account #container select#folder, body.account #container select#action {
    min-width: 100px;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+);
    background-position: calc(98.75% - 5px) 50%;
    background-repeat: no-repeat;
    background-size: 10px; }
  body.account #container #GC {
    padding: 20px; }
    body.account #container #GC h2 {
      font-size: 30px; }
    body.account #container #GC label, body.account #container #GC th {
      font-family: Arial, Helvetica, sans-serif; }
    body.account #container #GC legend span {
      width: 100%; }
    body.account #container #GC ul.actions a.button {
      line-height: 18px;
      border-radius: 0;
      padding: 12px 24px;
      font-size: 14px; }
    body.account #container #GC ul.actions button.button-primary, body.account #container #GC ul.actions li.next > button {
      font-size: 14px;
      background-color: #FA4C06;
      border-radius: 0;
      padding: 12px 24px; }
    body.account #container #GC ul.actions button[value="Delete"] {
      padding: 12px 24px;
      border-radius: 0; }
    body.account #container #GC ul.actions form.Delete > fieldset {
      padding: 0; }
    body.account #container #GC .markItUp .bbcode {
      position: relative; }
    body.account #container #GC #markItUpBody {
      position: relative;
      width: auto; }
      body.account #container #GC #markItUpBody #body {
        width: calc(100% - 9.25em); }
      body.account #container #GC #markItUpBody .markItUpContainer {
        position: relative; }
      body.account #container #GC #markItUpBody .markItUpHeader {
        position: relative; }
    body.account #container #GC .GC_blogs .button {
      border-radius: 0;
      padding: 12px 24px;
      margin-top: .5em; }
    body.account #container #GC .GC_blogs.GC_modify #title {
      width: auto; }
    body.account #container #GC .GC_friends .avatar .icon, body.account #container #GC .GC_friends .avatar .displayname {
      display: inline-block; }
  body.account #container .GC_header {
    padding: 10px;
    margin-bottom: 20px;
    border-bottom: #f1f1f1; }
    body.account #container .GC_header h1 {
      font-size: 36px;
      font-weight: 500;
      padding: .5em 0 .4em; }
  body.account #container .full {
    margin-top: 0; }
  body.account #container .GC_panes {
    display: flex;
    padding: 20px;
    margin: 0; }
    body.account #container .GC_panes .aside-nav {
      display: inline-block;
      width: 25%;
      float: none;
      margin: 0; }
      body.account #container .GC_panes .aside-nav li > a {
        text-decoration: none;
        font-size: 16px; }
    body.account #container .GC_panes main {
      display: inline-block;
      width: 74%; }
    body.account #container .GC_panes #toolbar {
      display: block;
      margin: 0;
      width: 100%;
      float: none; }
      body.account #container .GC_panes #toolbar li {
        margin: 0;
        border-radius: 0; }
        body.account #container .GC_panes #toolbar li > a {
          padding: 10px; }
      body.account #container .GC_panes #toolbar .glyphicon {
        font-size: 14px;
        padding-right: 10px; }
    body.account #container .GC_panes .GC_view {
      display: block;
      margin: 0;
      width: 100%; }
      body.account #container .GC_panes .GC_view h2 {
        font-weight: 500;
        margin: .25em 0 .5em; }
      body.account #container .GC_panes .GC_view p.note {
        color: #999; }
      body.account #container .GC_panes .GC_view button#Go {
        border-radius: 8px; }
  body.account #container #GC.GC_account #toolbar a {
    background-image: none; }
  body.account #container #GC.GC_account #toolbar ul li {
    border: 0; }
  @media (max-width: 840px) {
    body.account #container #GC.GC_account #toolbar {
      margin-top: 2em;
      height: auto; }
      body.account #container #GC.GC_account #toolbar .nav {
        float: none; }
        body.account #container #GC.GC_account #toolbar .nav li {
          display: block;
          width: 100%; }
          body.account #container #GC.GC_account #toolbar .nav li > a {
            text-indent: 0; } }
  body.account #container #GC.GC_account .main-manage-mail-new li.select select, body.account #container #GC.GC_account .main-manage-mail-read li.select select {
    display: inline-block;
    min-width: 75px;
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+);
    background-position: calc(98.75% - 5px) 50%;
    background-repeat: no-repeat;
    background-size: 10px; }
  body.account #container #GC.GC_account .main-manage-mail-new fieldset ul, body.account #container #GC.GC_account .main-manage-mail-read fieldset ul {
    display: flex;
    flex-direction: column; }
    body.account #container #GC.GC_account .main-manage-mail-new fieldset ul .text textarea, body.account #container #GC.GC_account .main-manage-mail-read fieldset ul .text textarea {
      width: 70%; }
  body.account #container .aside-manage-avatar a.button {
    background-color: #666; }
    body.account #container .aside-manage-avatar a.button span {
      color: #fff; }
  body.account #container .main-manage-comments .icon img {
    border-radius: 8px; }
  body.account #container .main-manage-links-edit fieldset ul {
    display: flex;
    flex-direction: column; }
  body.account #container .main-manage-account-profile textarea {
    background: #fff;
    border-radius: 4px; }
  body.account #container .main-manage-account-profile .button > span {
    color: #fff; }
  body.account #container .aside-nav span.counter {
    padding: 2px 5px;
    background-color: #fa4c06;
    color: #fff;
    border-radius: 8px; }
  body.account #container .aside-nav .item.avatar {
    display: inline-block;
    text-align: center;
    margin-bottom: 20px; }
    body.account #container .aside-nav .item.avatar a {
      text-align: center; }
  body.account #container .aside-nav .pic {
    margin-bottom: 20px; }
  body.account #container .aside-nav .edit {
    color: #fff;
    position: absolute; }
  body.account #container .aside-nav img {
    width: 150px; }
  body.account #container .aside-nav li {
    margin-left: 0; }
  body.account #container .fieldset-manage-profile-personal-information li.select select {
    float: none; }
  body.account #container .fieldset-manage-profile-personal-information li label {
    display: block;
    float: none; }
    body.account #container .fieldset-manage-profile-personal-information li label[for="occupation"] {
      margin-top: 2em; }
  body.account #container .fieldset-manage-profile-personal-information .disclaimer {
    color: red; }
  body.account #container .fieldset-manage-profile-personal-information li.text {
    position: relative; }
    body.account #container .fieldset-manage-profile-personal-information li.text textarea {
      position: relative;
      width: 100%; }
  @media (max-width: 840px) {
    body.account #container {
      font-size: 14px;
      padding: 0; }
      body.account #container #GC {
        padding: 10px 0; }
        body.account #container #GC .aside-nav a {
          font-size: 14px; }
      body.account #container .GC_panes {
        flex-wrap: wrap; }
        body.account #container .GC_panes .aside-nav, body.account #container .GC_panes main {
          width: 100%;
          display: block; }
      body.account #container #toolbar li.selected {
        background: transparent; }
        body.account #container #toolbar li.selected a {
          color: #666; } }
  @media (max-width: 641px) {
    body.account #container #GC.GC_account .GC_friends #GC_friend_action th:last-child, body.account #container #GC.GC_account .GC_friends #GC_friend_action td.time {
      display: none; }
    body.account #container #GC.GC_account .GC_links table .url {
      display: none; }
    body.account #container #GC.GC_account .GC_inbox table td.time {
      display: none; }
    body.account #container #GC.GC_account .main-manage-mail-new fieldset ul .text textarea, body.account #container #GC.GC_account .main-manage-mail-read fieldset ul .text textarea {
      width: 100%; }
    body.account #container #GC.GC_account .main-manage-mail-new fieldset ul .input, body.account #container #GC.GC_account .main-manage-mail-read fieldset ul .input {
      width: 90%; }
    body.account #container #GC ul.actions li.prev, body.account #container #GC ul.actions li.next {
      width: 100%; }
      body.account #container #GC ul.actions li.prev a.button, body.account #container #GC ul.actions li.prev button, body.account #container #GC ul.actions li.next a.button, body.account #container #GC ul.actions li.next button {
        margin: 10px 0;
        width: 100%;
        padding: 12px; }
    body.account #container #GC #markItUpBody #body {
      width: 90%;
      margin: 10px 0; }
    body.account #container #GC .GC_blogs .actions li {
      display: inline-block; }
    body.account #container #GC .GC_blogs .button {
      width: 100%; } }

/* Colors */
/* Animations */
@-webkit-keyframes expand {
  0% {
    transform: scale(0); }
  50% {
    transform: scale(1); }
  100% {
    z-index: 1; } }
@keyframes expand {
  0% {
    transform: scale(0); }
  50% {
    transform: scale(1); }
  100% {
    z-index: 1; } }

/* g(c) reset */
p {
  padding: 0 0 10px 0; }

body,
ul,
ol {
  margin: 0;
  padding: 0; }

strong {
  font-weight: 800; }

.content em,
em {
  font-style: italic; }

.content ul {
  padding: 0 0 0 20px; }

#breadcrumbs,
#breadcrumbs .here,
.header .actions,
.rss,
.meta .author,
.footer .meta,
.meta .comments {
  display: none; }

/* Global */
*,
*::before,
*::after {
  box-sizing: border-box; }

body {
  background: #fff;
  color: #000; }

a {
  color: #000;
  text-decoration: none; }

a:hover,
.selected a {
  color: #931e23;
  text-decoration: none; }

#page {
  min-height: calc(100vh - 105px); }

#main .content a,
#main .details a {
  text-decoration: underline; }

#main .section .title a {
  text-decoration: none; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'editorbold', serif;
  padding: 0; }

div,
p,
blockquote,
ul,
ol,
ul li ul li,
ol li ul li,
li p,
li dl,
p,
li,
td,
dl,
address,
input,
select,
textarea,
#Submit,
.vcard,
legend,
dl,
dt,
dd,
#breadcrumbs {
  font: 400 13px/1.2em 'editorregular', serif; }

h2.title {
  color: #931e23;
  font-size: 25px;
  text-transform: uppercase; }

.viewall {
  color: #931e23;
  font-size: 16px;
  text-transform: uppercase; }

.viewall:hover {
  color: #000; }

.meta {
  margin: 0 0 27px; }

.GC_sharing {
  margin: 15px auto; }

#comments .meta {
  text-transform: none; }

#comments .meta p {
  font-size: 13px;
  font-style: italic;
  line-height: 1.5em;
  padding: 0; }

body {
  background-attachment: fixed;
  background-image: url("//static.wonderfulunion.net/groundctrl/clients/rob_thomas/site/2019/global/bg4.jpg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover; }

/**
    *    Header
    * ===================
    *    Logo and Nav
*/
#header {
  background-color: #fff;
  color: #000;
  height: 105px;
  width: 100%;
  z-index: 1; }

#header .section {
  height: 100%;
  margin: 0 auto;
  max-width: 1200px;
  width: auto; }

#header .client {
  display: block;
  float: left;
  width: 15%; }

.logo {
  background: url("//static.wonderfulunion.net/groundctrl/clients/rob_thomas/site/2019/global/logo.svg") no-repeat center;
  background-size: 100% 100%;
  display: block;
  float: left;
  height: 80px;
  margin: 9px 10px 15px 10px;
  overflow: hidden;
  text-indent: -9999px;
  width: 150px; }

#header .mobile {
  display: none; }

#header .nav {
  display: block;
  float: right;
  height: 80px;
  margin: 12px 0;
  position: relative;
  width: 84%; }

#header .links {
  float: left; }

#header .nav li {
  display: inline-block;
  margin: 0 7px;
  vertical-align: middle; }
  @media only screen and (max-width: 960px) {
    #header .nav li.dropdown > a {
      display: none; } }
  @media only screen and (min-width: 960px) {
    #header .nav li.dropdown,
    #header #header .nav li.dropdown {
      position: relative;
      text-align: left;
      z-index: 99; }
      #header .nav li.dropdown > a,
      #header #header .nav li.dropdown > a {
        position: relative;
        z-index: 2; }
        #header .nav li.dropdown > a:hover::after,
        #header #header .nav li.dropdown > a:hover::after {
          opacity: 0; }
      #header .nav li.dropdown ul,
      #header #header .nav li.dropdown ul {
        background-color: #fff;
        left: 50%;
        opacity: 0;
        padding: 0.6em 1.4em;
        position: absolute;
        text-align: center;
        top: 100%;
        transform: translateX(-50%);
        transition: visibility 250ms 0ms, opacity 250ms;
        visibility: hidden;
        z-index: 1; }
        #header .nav li.dropdown ul li,
        #header #header .nav li.dropdown ul li {
          display: block; }
        #header .nav li.dropdown ul a,
        #header #header .nav li.dropdown ul a {
          display: block;
          line-height: 1.6;
          min-width: 100px;
          padding: 5px;
          white-space: nowrap; }
    #header .nav li.dropdown.open ul,
    #header #header .nav li.dropdown.open ul {
      opacity: 1;
      visibility: visible; } }

#header .nav a {
  color: #931e23;
  font-family: 'editorlight', serif;
  font-size: 14px;
  font-weight: 800;
  line-height: 80px;
  padding: 30px 10px; }
  #header .nav a:hover {
    color: #000; }

#header .account-links {
  float: right;
  overflow: hidden; }
  #header .account-links li {
    margin: 0; }
  #header .account-links a {
    font-size: 12px; }

li.register,
li.logout,
li.account,
li.login {
  float: right; }

/* Dropdown menu addon */
#header .nav li.events ul.toggle {
  display: none;
  margin-left: 135px;
  position: absolute;
  text-align: center;
  z-index: 999; }

#header .nav li.events ul.toggle li {
  background: #000;
  display: block;
  padding: 0; }

#header .nav li.events ul.toggle li a {
  color: #fff;
  display: block;
  padding: 0 30px; }

#header .nav li.events ul.toggle li a:hover {
  color: #931e23; }

#header .spotify-follow {
  display: block;
  padding: 0 10px; }

/**
 *      Home Page
 * ===================
 *
*/
body.home {
  background-image: none; }

.biography #page,
#footer .section {
  max-width: 1200px;
  position: relative;
  width: 100%; }

.home #page {
  min-height: 0;
  width: 100%; }

/* Slider */
.flexslider:hover .flex-next,
.flexslider:hover .flex-prev {
  opacity: 1; }

.home-slider {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin: 0; }
  .home-slider .slide {
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
    padding-bottom: 49%; }
    .home-slider .slide a {
      height: 100%;
      position: absolute;
      width: 100%; }

/**
 *    NEWS
 * ===================
 *
*/
.news #page,
.news #main {
  color: #000;
  float: none;
  margin: 0 auto;
  overflow: hidden;
  width: 100%; }

.news #main {
  background-color: rgba(255, 255, 255, 0.8);
  margin: 250px auto 50px;
  max-width: 1200px;
  padding: 1em; }

.news .section {
  height: auto; }

.news .listing.full {
  overflow: hidden; }

.news > .full .item {
  background-color: rgba(255, 255, 255, 0.8);
  display: block;
  float: left;
  height: 665px;
  overflow: hidden;
  transition: all 0.4s ease-in-out;
  width: 25%; }

.news .excerpt p {
  font-size: 16px;
  font-style: italic; }

.news .excerpt iframe {
  display: none; }

.news .first {
  clear: left; }

.news > .full .item:hover {
  background: #ebebeb; }

.news .article {
  height: 100%;
  position: relative; }

.news.all .figure {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 300px;
  padding-bottom: 100%;
  position: relative; }

.news .body {
  border-left: 1px solid #ebebeb;
  border-right: 1px solid #ebebeb;
  height: 100%;
  max-height: 365px;
  padding: 25px 20px;
  position: relative; }

.news .content {
  line-height: 1.4; }

.news .full .meta {
  margin: 0 0 22px; }

.news .full .time {
  color: #000;
  font-weight: 600; }

.news.all h3.title {
  color: #000;
  font-size: 26px;
  margin-bottom: 20px;
  padding: 0; }

.news h3.title a {
  color: inherit; }

.news.all .item .footer {
  background: #fff;
  bottom: 0;
  height: 50px;
  position: relative;
  top: auto;
  transition: all 0.4s ease-in-out; }

.section.news .article > .footer .nav.actions {
  height: 50px;
  text-align: center; }

.section.news .article > .footer .nav.actions > .readmore {
  float: none; }

.readmore a {
  display: block;
  font-size: 16px;
  font-weight: 700;
  padding: 17px 0;
  text-transform: uppercase; }

.news .item:hover .footer {
  bottom: 50px; }

/* ARTICLE */
#main.news {
  max-width: 640px; }

.news.story {
  margin: 0 auto;
  width: 100%; }

.news.story > .article {
  border-bottom: 1px solid #858685; }

.news.story .figure img {
  width: 100%; }

.news.story h3.title {
  font-size: 35px;
  margin: 0 0 20px;
  padding: 0; }

.news.story .article > .content {
  padding-bottom: 35px; }

.story .article p {
  font-size: 18px; }

/* COMMENTS */
#post_comment {
  border-bottom: 1px solid #858685;
  padding: 35px 0; }

#add-comment .text label {
  display: none; }

#add-comment #comment {
  background: #858685;
  color: #343434;
  max-height: 205px;
  max-width: 615px;
  width: 100%; }

#comments > .header {
  padding: 15px 0 0; }

.event #comments > .header {
  padding: 0; }

.comments .item {
  border-bottom: 1px solid #858685;
  margin: 0;
  padding: 40px 0 20px; }

#main .section.comments .bubble,
#aside .section.comments .bubble {
  margin-left: 105px;
  width: auto !important; }

#aside .section.comments .article {
  position: relative; }

#aside .section.comments .avatar {
  left: 0;
  position: absolute;
  top: 0; }

#main .section.comments .avatar,
#aside .section.comments .avatar {
  border: 3px solid #fff;
  width: 90px; }

#main .section.comments .avatar img,
#aside .section.comments .avatar img {
  width: 90px; }

.news #comments {
  margin: 0 auto;
  max-width: 860px; }

.comments .footer {
  text-align: right; }

.comments .footer li {
  display: inline-block;
  margin: 0 5px; }

.comments .footer a,
#Submit {
  background: #000;
  border: none;
  color: #fff !important;
  cursor: pointer;
  display: block;
  font-size: 13px;
  font-style: italic;
  font-weight: 300;
  height: 30px;
  padding: 8px 15px 10px;
  text-align: center;
  text-transform: uppercase; }

#comments .footer {
  padding: 20px 0; }

#Submit {
  margin: 15px 0 0 auto; }

.story .footer .GC_sharing {
  display: none; }

/* ASIDE */
.news #aside {
  background-color: #ebebeb;
  display: inline-block;
  margin: 0 auto;
  max-width: 320px;
  width: 100%; }

.news.popular > .header {
  margin: 0;
  text-align: center; }

.news.popular h2.title {
  margin: 40px 0 0;
  padding: 0; }

.news.popular .item {
  border-bottom: 1px solid #858685;
  padding: 30px 20px; }

.news .article .meta {
  margin: 0 0 20px 0; }

.news.story .content .meta {
  margin: 40px 0 20px; }

.news.popular h3.title {
  font-size: 25px;
  margin: 0;
  padding: 0;
  text-transform: none; }

.news.popular h3.title:hover {
  color: #fff; }

.news.popular .excerpt {
  display: none; }

.news.popular .viewall {
  background: #000;
  color: #fff;
  display: block;
  height: 40px;
  padding-top: 15px;
  text-align: center;
  width: 100%; }

/**
 *      Events
 * ===================
 *
*/
.events #page {
  margin: 250px auto 50px;
  width: 100%; }

.events #main {
  margin: 0;
  width: 100%; }

.events.upcoming {
  background: rgba(255, 255, 255, 0.85);
  margin: 0 auto 0;
  max-width: 1200px;
  padding: 1em;
  width: 100%; }

.events h1 {
  color: #931e23;
  font-size: 25px;
  font-weight: 700;
  margin: 0 0 45px;
  padding: 0;
  text-transform: uppercase; }

.events .full thead {
  display: none; }

.events .full tr {
  border-bottom: 1px solid #332e28;
  cursor: pointer; }

.events tr:hover .venue a,
.events tr:hover .location span {
  color: #931e23; }

.events .full td {
  font-size: 18px;
  height: 65px;
  vertical-align: middle; }

.events .full .title {
  display: block; }

.events .full .time {
  color: #931e23;
  font-size: 17px;
  font-style: italic;
  font-weight: 700; }

.events .full .tickets {
  cursor: auto;
  text-align: right; }

.events .full .na {
  opacity: 0.3; }

.tickets ul {
  overflow: hidden; }

.events .full .ticket {
  display: inline-block;
  position: relative; }

.events .ticket a,
.events .ticket span {
  background: #931e23;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  height: 30px;
  margin: 0 6px;
  padding: 8px 0;
  text-align: center;
  text-decoration: none;
  text-indent: 0;
  width: 115px; }

.ticket.vip a,
.ticket.vip span {
  background: #858685;
  color: #fff; }

.events .wrapper {
  background: rgba(255, 255, 255, 0.8);
  margin: 0 auto;
  max-width: 700px;
  overflow: hidden;
  padding: 1em;
  padding: 45px 0 0;
  text-align: center;
  width: 100%; }

.events .wrapper #main,
.events .wrapper #aside {
  float: none;
  padding: 0 10px;
  width: 100%; }

.events #comments > .header {
  padding: 0; }

.events .wrapper h2.title,
.events .wrapper h3.title {
  color: #931e23;
  font-size: 25px;
  text-transform: uppercase; }

.events .wrapper h3.title {
  margin: 0 0 20px 0; }

.events .event .content * {
  font-size: 18px !important; }

.event .figure {
  margin: 10px 0 20px 0; }

.event .figure img {
  width: 100%; }

.events .comments .item {
  border-bottom: 1px solid #363028; }

.events .comments .meta {
  color: #931e23; }

.events .comments .content p {
  color: #e1e1e1;
  font-size: 16px; }

.events .comments .footer a,
.events #Submit {
  background: #931e23;
  color: #000 !important; }

.events #post_comment {
  border-bottom: 1px solid #363028; }

.events #post_comment .title {
  color: #931e23;
  font-size: 25px; }

.event .header .actions {
  display: block; }

/**
 *    MEDIA
 * ===================
*/
.media #page,
.media #main {
  margin: 0 auto;
  max-width: 100%;
  position: relative;
  width: 100%; }

.media #page {
  max-width: 1200px; }

.media #main {
  background: rgba(255, 255, 255, 0.8);
  margin: 250px auto 50px;
  padding: 1em; }

/* Media Main */
.video.compact .header,
.photo.compact .header,
.photo.compact .footer {
  display: none; }

.media #comments,
.media #post_comment {
  margin: 0 auto;
  max-width: 960px; }

.media-section {
  margin-bottom: 100px; }
  .media-section:last-child {
    margin-bottom: 0; }
  .media-section .viewall {
    display: block;
    font-size: 14px;
    margin-top: 10px;
    text-align: center; }

.video.compact,
.photo.compact {
  display: block;
  overflow: hidden;
  width: 100%; }

.media .section .listing {
  width: 100%; }

.media .section.featured .header {
  display: none; }

.media .section.featured #video_player {
  margin: 20px 0 0;
  text-align: center; }

.media .feature.video {
  text-align: center; }

.media .feature.video object {
  height: 100%; }

.media .feature.video,
.video.compact .galleries {
  display: block;
  float: none;
  width: 100%; }

.video.compact .galleries li,
.photo.compact .galleries li {
  border: 5px solid transparent;
  display: block;
  float: left;
  overflow: hidden;
  position: relative;
  width: 50%; }

.video.compact .galleries .figure,
.photo.compact .galleries .figure {
  height: 100%;
  width: 100%; }

.featured-photo,
.photo.compact .galleries {
  display: block !important;
  float: right;
  width: 50%; }

.featured.video object,
.compact #video_player iframe,
.compact #video_player {
  background-color: #000;
  height: 100% !important;
  width: 100%; }

.video.compact .item .header,
.photo.compact .item .header,
.gallery .item .header {
  display: block;
  height: 100%;
  position: absolute;
  text-align: center;
  top: 0;
  transform: translateY(100%);
  transition: visibility 250ms 0ms, transform 250ms;
  visibility: hidden;
  width: 100%; }

.video.compact .item:hover .header,
.photo.compact .item:hover .header,
.gallery .item:hover .header {
  background: rgba(255, 255, 255, 0.8);
  transform: translateY(0);
  transition-delay: 0ms;
  visibility: visible; }

.video.compact .item a,
.photo.compact .item a,
.gallery .item a {
  display: block;
  height: 100%;
  width: 100%; }

.gallery .item .icon-photo {
  color: #000; }

.video.compact .item a::before,
.photo.compact .item a::before,
.gallery .item a::before {
  content: '';
  display: inline-block;
  height: 100%;
  margin-right: -0.25em;
  /* Adjusts for spacing */
  vertical-align: middle; }

.centered {
  color: #000;
  display: inline-block;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  vertical-align: middle; }

.centered p {
  font-size: 17px; }

.centered .items.none {
  display: none; }

.downloadable {
  display: inline-block;
  margin: 10px 0 0 0; }

.assets .figure {
  height: 300px;
  width: 300px; }

.gallery h2.title {
  margin: 20px 0;
  text-align: center; }

.gallery .galleries .item,
.gallery .assets .item {
  border: 5px solid transparent;
  display: block;
  float: left;
  height: 0;
  overflow: hidden;
  padding-bottom: 25%;
  position: relative;
  transition: all 0.4s ease-in-out;
  width: 25%; }

.gallery .galleries .figure,
.gallery .assets .figure {
  display: block;
  height: 0;
  padding-bottom: 110%;
  width: 100%; }

.assets .item .title {
  height: 100%; }

.section.asset {
  text-align: center; }

.media .comments h2.title {
  color: #000; }

.asset .footer .actions {
  display: none; }

.asset .header .actions {
  display: block; }

.asset .actions li {
  display: inline-block; }

/*  MEDIA ASSET  */
.section.gallery h1.title,
.section.assets h1.title {
  color: #931e23;
  display: block;
  font-size: 25px;
  margin: 20px 0;
  text-align: center;
  text-transform: uppercase; }

.slide .asset .figure {
  height: 265px;
  width: 100%; }

#fancybox-inner #video_player {
  height: 0;
  padding: 0 0 56.25%;
  position: relative;
  width: 100%; }

#fancybox-inner #video_player iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }

/**
 *    CMS PAGES
 * ===================
*/
#main.full.cms {
  background: rgba(255, 255, 255, 0.8);
  padding: 1em;
  width: 90%; }

#main.cms {
  margin: 250px auto 50px; }

.cms .title {
  color: #931e23;
  font-size: 25px;
  margin-top: 25px; }

.cms .content h2 {
  margin-top: 20px; }

.cms .content p {
  font-size: 15px;
  line-height: 1.5em;
  margin: 0.25em 0 0.75em; }

.cms .content blockquote {
  border: 0;
  font-size: 15px;
  font-style: italic;
  margin: 5px 0 10px;
  padding: 0; }

.cms .content ul {
  padding: 0; }

.cms .content ul li {
  font-size: 15px;
  list-style: circle;
  list-style-position: inside;
  margin: 0.4em 0.25em; }

.biography .full.cms {
  background: none; }

.biography #custom-page {
  background: rgba(255, 255, 255, 0.8);
  display: block;
  margin: 250px auto 50px;
  max-width: 900px;
  padding: 1em;
  position: relative;
  width: 100%; }

.biography #custom-page p {
  font-size: 16px;
  line-height: 1.9em; }

.biography h1 {
  display: none; }

.biography h3 {
  color: #931e23;
  line-height: 1.9em; }

.biography #aside {
  display: block;
  float: none;
  margin: 0;
  max-width: 100%;
  min-height: 560px;
  overflow: hidden;
  width: 100%; }

.biography #twitter {
  background: rgba(0, 0, 0, 0.6);
  display: block;
  float: right;
  height: 600px;
  margin: 50px 0 0 auto;
  max-width: 575px;
  overflow-y: scroll;
  padding: 1em;
  width: 100%; }

.biography #twitter-widget-0 {
  width: 100%; }

.songoftheday .section .title {
  display: none; }

.songoftheday .section.Playlist {
  height: 0;
  padding-bottom: 100%;
  position: relative;
  width: 100%; }

.songoftheday .section.Playlist iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }

/**
 *      Releases
 * ===============
*/
.releases #page {
  overflow: hidden;
  width: 100%; }

.releases #main {
  float: none;
  margin: 0 auto;
  max-width: 1200px;
  width: 100%; }

.releases.all {
  background-color: rgba(255, 255, 255, 0.8);
  margin: 250px 0 50px;
  padding: 15px 0 0 15px; }

.releases .listing.full {
  display: flex;
  flex-wrap: wrap;
  overflow: hidden; }

.releases .full .item {
  display: block;
  height: 100%;
  margin: 0 0 15px 0;
  max-height: 380px;
  overflow: hidden;
  width: 33.333%; }

.releases .full .figure {
  margin: 0 15px 0 0; }

.releases .full .header {
  display: none; }

/* Release */
.releases .bg {
  background-color: rgba(0, 0, 0, 0.5);
  left: 0;
  position: fixed;
  top: 0;
  z-index: -10; }

.releases .bg .cover {
  filter: blur(10px);
  height: 100%;
  opacity: 0.15;
  width: 100%; }

#main > .section.release {
  background: rgba(255, 255, 255, 0.8);
  margin: 125px auto 50px;
  max-width: 1100px;
  overflow: hidden;
  padding: 30px 0;
  width: 100%; }

.release.cover {
  display: block;
  float: left;
  margin: 0 30px;
  max-height: 390px;
  max-width: 390px;
  width: 100%; }

.release .details {
  display: block;
  float: left;
  margin: 15px 25px 0;
  max-width: 600px;
  width: 100%; }

.release .meta {
  margin-bottom: 0; }

.release .links {
  margin: 20px 0 30px 0; }

.release .links ul {
  padding: 0; }

.release .links li {
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle; }

#main .release .links a {
  font-size: 26px;
  text-decoration: none; }

.release thead {
  display: none; }

.release tr {
  border-bottom: 1px solid #931e23; }

.release td {
  font-size: 17px !important;
  padding: 16px 0; }

.release td.duration {
  padding-right: 20px;
  text-align: right; }

.release a.play {
  display: inline-block;
  margin: 0 5px;
  overflow: hidden;
  vertical-align: middle;
  width: 17px; }

.release td.preview {
  padding-left: 10px;
  width: 40px; }

.release td.preview .audio-btn {
  padding-top: 3px; }

@media screen and (max-width: 414px) {
  .release td.preview .audio-btn {
    padding-top: 2px; } }

.release td.preview .audio-btn.play-btn::before,
.release td.preview .audio-btn.pause-btn::before {
  margin-top: -10px; }

/* hotfixes */
body.contests #page {
  background: rgba(255, 255, 255, 0.8); }

/**
 * STORE
 ===========
 *
*/
aside#wu-alert-banner {
  align-items: center;
  background-color: #db0000;
  color: #fff;
  display: flex;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  justify-content: center;
  min-height: 50px;
  opacity: 0.9;
  position: absolute;
  width: 100vw;
  z-index: 999; }
  aside#wu-alert-banner .message-text {
    flex-basis: 50%;
    text-align: center; }
    aside#wu-alert-banner .message-text .more-info {
      color: #fff;
      display: block;
      text-decoration: underline; }
      aside#wu-alert-banner .message-text .more-info:hover, aside#wu-alert-banner .message-text .more-info:focus {
        color: #fff; }
  aside#wu-alert-banner .close {
    color: #fff;
    cursor: pointer;
    height: 20px;
    opacity: 1;
    position: absolute;
    right: 10px;
    top: 10px;
    width: 20px; }

/**
 *  COMMUNITY
 * ============
*/
.community #page,
.blogs #page,
.contests #page {
  margin: 250px auto 50px;
  max-width: 960px;
  width: 100%; }

.users #container {
  background-color: rgba(255, 255, 255, 0.8);
  margin: 250px auto 50px;
  padding: 1em; }

.users #main.user-list {
  color: #343434;
  float: none;
  margin: 0 auto;
  max-width: 960px;
  overflow: hidden;
  width: 100%; }

.users #main {
  display: block;
  float: left;
  margin: 0;
  padding: 10px 0 0;
  width: 100%; }

.community .nav.actions a,
.blogs .nav.actions a,
.friends .nav.actions a,
.users .about .nav.actions a,
.member .nav.actions a,
.links .nav.actions a {
  color: #000;
  font-size: 14px;
  font-weight: 800; }

.users #main a,
.users #aside a {
  color: #000; }

.users #main a:hover,
.users #aside a:hover {
  color: #fff !important; }

.users #aside {
  padding: 0; }

.users #container .section,
.contests #container .section {
  border-bottom: 1px solid #b6a38d;
  padding: 30px 0; }

#main.community-hub {
  display: block;
  margin: 0;
  overflow: hidden;
  padding: 0 0 20px;
  width: 100%; }

.community .title {
  padding: 0 !important; }

.community h3.title a,
.users .title {
  color: #362f2d; }

.community h3.title a:hover {
  color: #fff; }

.community .meta,
.blogs .meta {
  color: #000;
  margin: 0 0 20px; }

.community .thumbs,
.users .thumbs {
  padding: 0; }

.thumbs .avatar.full {
  height: 125px;
  margin: 0 14px 12px 0;
  width: 125px; }

.avatar.full.seventh {
  margin-right: 0; }

.thumbs .avatar.full img,
.blogs .excerpt .figure img {
  width: 100%; }

.section.users {
  margin: 0 0 35px;
  overflow: hidden; }

.section.users .header {
  margin: 20px 0; }

.community .blogs,
.community .forum {
  display: block;
  float: left;
  max-width: 460px;
  width: 100%; }

.community .blogs p {
  margin-left: 135px; }

.blogs p {
  font-size: 16px; }

.blogs.post h3.title {
  color: #343434;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.5em; }

.section.blogs {
  border-bottom: 1px solid #b6a38d;
  margin: 30px 0 0; }

.section.forum {
  margin: 0 0 0 20px; }

.blogs .full .item,
.forum .listing .item,
.blogs.popular .item,
.blogs.official .item {
  border-bottom: 1px solid #b6a38d;
  padding: 30px 0; }

.blogs.popular .meta {
  margin: 0; }

.section.blogs .excerpt {
  display: block;
  overflow: hidden; }

.blogs .full .button.continue,
.blogs.post .footer a span {
  background: #000;
  color: #fff !important;
  display: block;
  height: 40px;
  margin: 10px 0 10px auto;
  max-width: 260px;
  padding: 12px 10px 0;
  text-align: center;
  text-transform: uppercase; }

.blogs .excerpt .figure {
  display: block;
  float: left;
  height: 125px;
  margin: 0 10px 5px 0;
  width: 125px; }

.community .section .footer,
.blogs .section .footer,
.user-blog .section .footer,
.section.friends .footer,
.users .footer {
  text-align: right; }

.community-hub .viewall {
  background: #000;
  color: #fff !important;
  display: block;
  height: 40px;
  margin: 10px 0 10px auto;
  padding-top: 15px;
  text-align: center;
  width: 175px; }

.blogs .nav.actions a:hover {
  color: #fff; }

.section.blogs > .footer a {
  background: #000;
  color: #fff !important;
  display: block;
  height: 40px;
  margin: 10px 0 10px auto;
  max-width: 275px;
  padding: 12px 20px 0;
  text-align: center; }

.users #filter {
  display: block;
  margin: 0 0 20px;
  overflow: hidden; }

.users #filter .header {
  display: block;
  float: left;
  margin: 10px 0 0;
  overflow: hidden; }

.users .panel {
  display: block;
  float: right; }

.users .panel li {
  display: inline-block;
  margin: 0 10px; }

.users .comments.all {
  max-width: 960px; }

.blogs #container {
  margin: 0 auto;
  max-width: 960px;
  padding-top: 80px;
  width: 100%; }

.blogs #main {
  display: block;
  float: left;
  margin: 0 20px 0 0;
  max-width: 620px;
  width: 100%; }

.blogs h2.title,
.community h2.title,
.bloggers h2.title,
.users h2.title,
#post_comment .title {
  font-size: 28px;
  text-transform: uppercase; }

#post_comment .title {
  margin-bottom: 15px; }

.blogs h3.title a {
  color: #343434 !important;
  font-size: 18px;
  font-weight: 800; }

.blogs h3.title a:hover {
  color: #fff; }

.blogs .section.all {
  display: block;
  float: left;
  margin: 0;
  max-width: 620px;
  width: 100%; }

.blogs #aside,
.users #aside {
  display: block;
  float: right;
  margin: 0 0 0 20px;
  max-width: 300px;
  overflow: hidden;
  width: 100%; }

.blogs .thumbs {
  margin: 30px 0 0;
  padding: 0; }

.thumbs .avatar.mini {
  height: 56px;
  margin: 2px 4px 2px 0;
  width: 56px; }

.thumbs .avatar.mini.fifth {
  margin-right: 0; }

.blogs.official {
  margin: 50px 0 30px; }

.blogs.official .article {
  color: #343434; }

#aside .blogs.popular,
.blogs.recent {
  border-bottom: none;
  margin: 0; }

.blogs.popular .author {
  display: inline; }

.blogs.popular .author a {
  color: #000;
  font-weight: 800; }

.blogs.post .article {
  overflow: hidden; }

.users .bloggers.related {
  margin-top: 40px; }

.blogs.post .avatar {
  display: block;
  float: left;
  margin: 0 10px 10px 0;
  max-width: 100px; }

.blogs.post .avatar .displayname {
  display: none; }

.blogs.post .content {
  display: block;
  float: right;
  max-width: 510px; }

/* PROFILE PAGE */
#main.user {
  display: block;
  float: right;
  max-width: 600px;
  padding: 0; }

#main.user .section.about {
  padding: 20px 0; }

#main.user .about .header,
#main.user .recent.blogs .header {
  margin-bottom: 10px; }

#aside.user {
  display: block;
  float: left;
  margin: 0;
  max-width: 320px;
  width: 100%; }

#aside.user .member.details {
  padding: 0; }

#aside.user .member .header {
  display: none; }

#aside.user .member .avatar {
  display: block;
  max-height: 320px;
  max-width: 320px;
  width: 100%; }

#aside.user .member .avatar img {
  height: 100%;
  width: 100%; }

#aside.user .actions {
  overflow: hidden;
  padding: 0; }

#aside.user .social li {
  background: #000;
  cursor: pointer;
  display: inline-block;
  margin: 10px 0;
  padding: 15px 20px;
  text-align: center;
  text-transform: uppercase;
  width: 48%; }

#friend-request {
  float: left; }

#send_message {
  float: right; }

#aside.user .social a {
  color: #fff !important; }

#aside.user p.details {
  padding: 30px 0; }

#aside.user .profile.links {
  border-bottom: 1px solid #b6a38d;
  padding: 15px 0; }

#aside.user .profile.links .listing {
  padding: 0;
  text-align: center; }

#aside.user .profile.links .link {
  display: inline-block;
  font-size: 20px;
  margin: 0 10px;
  overflow: hidden; }

#aside.user .friends .footer {
  display: none; }

.user-blog .section.all {
  border-bottom: none !important; }

/* CONTESTS PAGE */
.contests #main,
.contests #aside {
  margin: 0 0 0 10px; }

.contests.current .pagination {
  display: none; }

.contest .header {
  margin-top: 40px; }

/**
 *    FOOTER
 * ===================
*/
#footer {
  background-color: #fff;
  height: auto;
  min-height: 95px;
  padding: 10px;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 999; }

#footer .terms *,
#footer #coppa *,
#footer #copyright {
  color: #931e23;
  font-family: 'editorregular', serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 20px; }

#footer .copy {
  display: block;
  float: left;
  margin: 10px 0 0 0; }

#footer .copy a:hover,
#footer #coppa a:hover,
.poweredby a:hover {
  color: #858685; }

#footer .poweredby a {
  color: #931e23;
  text-transform: none; }

#footer .social {
  display: block;
  float: right;
  margin: 10px 0 0 0; }

.mb20 span {
  font: 800 16px/1.2 Helvetica, sans-serif; }

#footer .angels {
  display: block;
  float: right;
  height: 75px;
  margin: 0 20px 0 0;
  width: 85px; }

#footer .social li {
  display: inline-block;
  margin: 15px 8px;
  vertical-align: middle; }

#footer .social a {
  font-size: 30px;
  position: relative; }

#footer .crowdalbum {
  display: block;
  height: 26px;
  width: 70px; }

#footer .icon-crowdalbum {
  font-size: 70px;
  left: 0;
  position: absolute; }

#footer .copy,
#footer .angels,
#footer .social {
  display: block;
  float: none;
  margin: 0 auto 10px; }

/**
 *   Infinite Scroll / Pagination
 * ===============================
 *
*/
.users .pagination .actions a,
.blogs .pagination .actions a {
  background: #000;
  color: #fff !important;
  display: inline-block;
  height: 40px;
  margin: 10px 0 10px auto;
  padding-top: 15px;
  text-align: center;
  width: 100px; }

.users .pages,
.blogs .pages {
  display: block;
  overflow: hidden; }

.users .results,
.blogs .results,
.users .loading {
  display: none; }

.users .actions.forth,
.blogs .actions.forth {
  float: right; }

.users .actions.back,
.blogs .actions.back {
  float: left; }

.news .nav.pagination,
.section.upcoming > .footer,
.events .nav.pagination,
.section.gallery .pagination {
  display: none; }

.events a.infinite-scroll,
.news a.infinite-scroll,
.media a.infinite-scroll {
  height: 86px;
  padding: 20px 0; }

a.infinite-scroll {
  background: #858685;
  color: #fff;
  display: block;
  height: 55px;
  line-height: 1;
  margin: 0 auto 0;
  overflow: hidden;
  padding: 30px 0;
  text-align: center;
  width: 100%; }

.infinite-scroll.enabled p,
.disabled {
  font-size: 16px;
  font-style: italic;
  font-weight: 700;
  line-height: 25px;
  text-transform: uppercase; }

a.infinite-scroll.disabled {
  padding: 35px 0; }

.news a.infinite-scroll.disabled {
  padding: 22px 0; }

.infinite-scroll.loading p {
  display: none; }

a.infinite-scroll.enabled::after {
  font-size: 40px;
  line-height: 0; }

.loading {
  background-color: #931e23;
  height: 30px;
  margin: -20px 0 0 -20px;
  position: relative;
  text-indent: -999px;
  width: 30px; }

.loading::before,
.loading::after {
  border-radius: 50%;
  content: "";
  display: block;
  height: 42px;
  left: 50%;
  margin: -21px 0 0 -21px;
  overflow: hidden;
  position: absolute;
  top: 50%;
  width: 42px;
  z-index: 2; }

.loading::before {
  -webkit-animation: expand 1.6s linear infinite both;
          animation: expand 1.6s linear infinite both;
  background-color: #362f2d; }

.loading::after {
  -webkit-animation: expand 1.6s linear 0.8s infinite both;
          animation: expand 1.6s linear 0.8s infinite both;
  background-color: #858685; }

#fancybox-wrap {
  max-width: 960px;
  padding: 0 !important; }

#fancybox-inner {
  height: 100% !important;
  overflow: hidden !important;
  width: 100% !important; }

/**
 * Mailing List
 * ============
*/
.newsletter-wrapper {
  display: none; }

#newsletter {
  background: #000;
  padding: 20px;
  width: 400px; }

#newsletter .title {
  border-bottom: 1px solid #858685;
  color: #fff;
  margin: -20px -20px 20px;
  padding: 20px; }

#newsletter p {
  margin: 0 0 20px;
  padding: 0; }

#newsletter p.last {
  border-top: 1px solid #858685;
  margin: 0 -20px 0;
  padding: 20px;
  padding-bottom: 0; }

#newsletter .mc-field-group {
  margin: 0 0 20px; }

#newsletter label {
  color: #c0c0c0;
  display: block;
  font: 100 14px/1 sans-serif;
  margin: 0 0 8px;
  width: 100%; }

#newsletter input,
#newsletter .select-wrapper {
  background: #fff;
  border: 0;
  box-sizing: border-box;
  display: block;
  font: 100 14px/1 sans-serif;
  margin: 0;
  padding: 10px;
  width: 100%; }

#newsletter .select-wrapper {
  overflow: hidden;
  padding: 0; }

#newsletter select {
  -webkit-appearance: none;
  background: #fff;
  border: 0;
  display: block;
  font: 100 14px/1.1 sans-serif;
  height: 100%;
  margin: 0;
  padding: 10px;
  width: 100%; }

#newsletter input:focus,
#newsletter select:focus {
  background: #fff;
  opacity: 1; }

#newsletter .clear {
  border-top: 1px solid #858685;
  margin: 20px -20px -20px;
  padding: 20px; }

#newsletter .button {
  background: #f60;
  border: 0;
  border-radius: 5px;
  color: #fff;
  /* Match to site theme */
  cursor: pointer;
  font-size: 15px;
  opacity: 1;
  padding: 10px 5px;
  text-align: center;
  transition: background 150ms ease, color 150ms ease;
  width: 100%; }

#newsletter .button:hover {
  background: #ff8737; }

#newsletter .gc-invalid-age .gc-validate-age,
#newsletter .gc-invalid-email .gc-validate-email {
  box-shadow: 0 0 0 2px #c00; }

#newsletter .checkbox-row input,
#newsletter .checkbox-row label {
  display: inline;
  vertical-align: middle; }

#newsletter .checkbox-row label {
  font-size: 14px;
  margin-left: 2px; }

/* Blog Editor */
#GC .GC_blogs.GC_modify .text,
#GC .GC_blogs.GC_modify .input {
  margin: 0 0 10px 0;
  padding: 0 0 10px 0; }

#GC .GC_blogs.GC_modify .text label,
#GC .GC_blogs.GC_modify .input label {
  display: block;
  float: none;
  font-size: 12px;
  line-height: 1;
  padding: 0 0 5px 0;
  text-align: left;
  width: auto; }

#GC .GC_blogs #markItUpBody {
  margin: 0; }

#GC .GC_blogs .markItUpHeader {
  display: none !important; }

#GC .GC_blogs fieldset > ul {
  padding-top: 60px; }

/**
 *    Media Queries
 * ========================
 *
*/
@media only screen and (max-width: 1105px) {
  #header .nav li {
    margin: 0; }
  .register,
  .logout,
  .account,
  .login {
    float: none; }
  .biography .info {
    margin: 0 15px; }
  /* Releases */
  #main > .section.release {
    padding: 1em; }
  .release.cover,
  .release .details {
    display: block;
    float: none;
    margin: 20px auto; }
  .release .trackno {
    padding: 0 5px 0 0; } }

@media only screen and (max-width: 1090px) {
  #header .nav li {
    margin: 0; }
  #header .nav li.events ul.toggle {
    margin-left: 100px; }
  .register,
  .logout,
  .account,
  .login {
    float: none; }
  /* HOME */
  .home #page {
    overflow: hidden; }
  /* RELEASES */
  .releases .bg {
    display: none; }
  /* EVENTS */
  .events .wrapper {
    padding: 0; }
  .upcoming .header {
    padding-left: 15px; }
  /* biography */
  .biography #page {
    padding: 0 15px; } }

@media only screen and (max-width: 980px) {
  /* NEWS */
  .news > .full .item {
    height: 800px;
    padding-bottom: 20px;
    width: 50%; }
  .news .item:hover .footer {
    bottom: 0; }
  .news.all .item .footer {
    position: absolute;
    text-align: center;
    width: 100%; }
  .news.all .figure {
    min-height: 0; }
  /* Community */
  .community .thumbs,
  .users .thumbs {
    padding: 0;
    text-align: center; }
  .thumbs .avatar.full {
    display: inline-block;
    float: none;
    height: 125px;
    margin: 0 14px 12px 0;
    width: 125px; }
  .avatar.full.seventh {
    margin-right: 14px; }
  .section.users,
  .community .blogs,
  .community .forum {
    margin: 0;
    max-width: 100%;
    padding: 0 15px; }
  .blogs #main {
    margin: 0; }
  .users #main.user-list {
    margin: 0;
    padding: 0 15px; } }

@media only screen and (max-width: 960px) {
  /* Global */
  body {
    background-position: 25% 0%; }
  #page {
    width: 100%; }
  #header {
    height: 65px;
    margin: 0;
    padding: 0 15px; }
  #header .client {
    display: block;
    float: left; }
  .logo {
    height: 40px;
    margin: 12px 10px;
    width: 90px; }
  #header .nav {
    height: 0;
    left: 0;
    margin: 0;
    overflow: hidden;
    position: absolute;
    top: 65px;
    transition: all 250ms ease-in-out;
    width: 100%;
    z-index: 1000; }
  #header .nav.active {
    background-color: rgba(255, 255, 255, 0.95);
    border-bottom: 2px solid #ebebeb;
    height: auto;
    padding: 0 0 30px 0; }
  #header .links {
    display: block;
    float: none;
    position: relative;
    width: 100%; }
  #header .account-links {
    bottom: 0;
    float: none;
    position: relative;
    top: auto; }
  #header .account-links li {
    display: block;
    padding-left: 0; }
  #header .mobile {
    color: #931e23;
    cursor: pointer;
    display: block;
    float: right;
    font-size: 16px;
    height: 100%;
    line-height: 55px;
    padding: 5px 0 0;
    transition: color 250ms; }
    #header .mobile:hover {
      color: #000; }
  .mobile.icon-menu::before {
    font-size: 25px;
    font-weight: 300;
    margin: 0 10px;
    position: relative;
    top: 5px; }
  #header .links li {
    display: block;
    padding-left: 0; }
  #header .nav a,
  #header .nav span {
    border-top: 1px solid rgba(0, 0, 0, 0.05);
    display: block;
    line-height: 40px;
    padding: 0 0 0 20px; }
  #header .nav span {
    padding: 10px 0 10px 20px; }
    #header .nav span iframe {
      display: block; }
  li.register,
  li.logout,
  li.account,
  li.login {
    float: none; }
  #header .nav li.events ul.toggle {
    display: none;
    margin-left: 10px;
    position: static;
    text-align: left; }
  #header .nav li.events ul.toggle a {
    padding: 10px; }
  body #main #GC {
    min-width: 200px;
    width: 100%; }
  /* NEWS */
  .news .story,
  .news #aside {
    max-width: 100%; }
  .news.story > .article {
    padding: 0 15px; }
  .news.popular > .header {
    margin: 0 15px;
    text-align: left; }
  .news.popular .viewall {
    margin: 10px auto 50px;
    width: 150px; }
  .news #post_comment {
    padding: 35px 15px; }
  .news #comments {
    padding: 0 15px; }
  .news #footer {
    margin: 0; }
  /* EVENTS */
  .events .full .ticket {
    margin: 5px 0; }
  .events #page {
    margin: 30px 0 50px;
    padding-bottom: 0; }
  .events .event {
    margin-top: 15px; }
  /* MEDIA */
  .featured-photo,
  .photo.compact .galleries {
    display: block;
    float: none;
    width: 100%; }
  .gallery .galleries .item,
  .gallery .assets .item {
    padding-bottom: 50%;
    width: 50%; }
  .section.featured #video_player {
    height: 0;
    padding: 20px 0 56.25%;
    position: relative;
    width: 100%; }
  .section.featured #video_player iframe {
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%; }
  /* Biography */
  .biography #page {
    overflow: hidden; }
  .biography #twitter {
    float: none;
    margin: 10px auto; }
  .biography #custom-page {
    margin: 10px 0; }
  /* Blogs */
  .blogs #main,
  .blogs #aside {
    margin: 0;
    max-width: 100%;
    padding: 30px 15px 0; }
  .blogs .section.all {
    max-width: 100%; }
  .users .section.blogs {
    margin: 0; }
  /* Profiles */
  #main.user,
  #aside.user,
  .users #aside {
    float: none;
    margin: 0;
    max-width: 100%;
    padding: 0 15px; }
  #aside.user .avatar {
    margin: 0 auto; }
  .users #main.user-blog {
    max-width: 100%;
    padding: 0 15px 0; }
  .blogs.post .content {
    float: left;
    max-width: 85%; }
  /* CONTESTS */
  .contests #main,
  .contests #aside {
    float: none;
    margin: 0 auto;
    max-width: 100%;
    padding: 0 15px;
    width: 100%; }
  .events #unified > #GC fieldset .ticket.description {
    margin-top: 50px; } }

@media only screen and (max-width: 750px) {
  #header .mobile {
    margin-left: 20px; }
  .news .all .full .item {
    height: 100%;
    min-height: 500px;
    padding-bottom: 20px;
    width: 100%; }
    .news .all .full .item .footer {
      position: relative; }
  /* EVENTS */
  .events .full tr {
    border-bottom: 1px solid #332e28;
    display: block;
    padding: 10px 0; }
  .events .full td {
    display: block;
    font-size: 18px;
    height: auto;
    padding: 5px 10px;
    text-align: center;
    width: 100%; }
  .events .full .tickets {
    text-align: center; }
  /* MEDIA */
  .gallery .assets .item {
    padding-bottom: 90%;
    width: 100%; }
  /* RELEASES */
  .releases .full .item {
    padding: 0 10px;
    width: 50%; }
  .releases .full .figure {
    margin: 0; }
  .release td.title {
    padding: 0 15px; }
  /* USERS */
  .blogs.post .content,
  .blogs.post .avatar {
    display: block;
    float: none;
    margin: 10px auto; }
  .blogs.post .content {
    max-width: 100%; }
  .users #filter {
    text-align: center; }
  .users #filter .header {
    float: none; }
  .users #filter .panel {
    float: none; }
  /* GC Stuff */
  body #main #GC {
    min-width: 0; }
  #GC.GC_account .GC_panes .GC_navigation,
  #GC.GC_account .GC_panes > .GC_view,
  #GC #markItUpBody {
    border: none;
    clear: both;
    margin: 0;
    padding: 0;
    width: 100%; }
  #GC.forum form .input #title,
  #recaptcha_image {
    width: 100% !important; }
  #recaptcha_response_field {
    width: auto !important; }
  #recaptcha_table > tbody td {
    padding: 0 !important;
    width: 100% !important; }
  #GC.GC_product {
    background-image: none; }
  #GC.GC_product .GC_product_description,
  #GC.GC_product .GC_product_purchase,
  #GC #markItUpBody #body {
    margin: 10px 1%;
    width: 98%; }
  #GC button {
    margin-bottom: 2px;
    padding: 5px 10px; }
  #GC #GC_checkout_progress li {
    display: block;
    padding: 5px 4% 5px 2%;
    text-align: center; }
  #GC fieldset ul {
    padding-top: 90px; }
  #GC .input label,
  #GC .select label,
  #GC .captcha label,
  #GC .text label {
    float: none;
    text-align: left; }
  #GC .GC_address,
  #GC .GC_payment {
    float: none;
    width: 93%; }
  #GC input[type='text'],
  #GC input[type='password'],
  #GC input[type='email'],
  #GC input[type='tel'],
  #GC input[type='date'],
  #GC textarea,
  .ui-dialog textarea {
    width: 93%; }
  #GC .GC_shipping .GC_same_as_billing {
    left: 0; }
  #GC .actions li,
  #GC .actions .prev {
    display: block;
    float: none;
    margin-bottom: 2px; }
  #GC.GC_product .GC_product_purchase .purchase_form .select {
    margin: 0; }
  #GC.GC_cart h1 {
    line-height: 1em; }
  .events #unified > #GC fieldset .ticket.description {
    margin-top: 50px; } }

@media only screen and (max-width: 560px) {
  /* Global */
  /* Home */
  .home .compact td {
    font-size: 15px;
    padding-top: 10px; }
  /* MEDIA */
  .video.compact .galleries,
  .photo.compact .galleries {
    display: block; }
  .video.compact .galleries li,
  .photo.compact .galleries li,
  .gallery .galleries .item {
    width: 100%; }
  /* RELEASES */
  .release a.play {
    display: none; }
  #footer .social .hashtag {
    display: block; }
  /* NEWSLETTER */
  #newsletter {
    width: 250px; } }

@media screen and (max-device-width: 481px) {
  body.store #header {
    display: block; }
    body.store #header .mobile {
      color: #931e23; } }

@media only screen and (max-width: 470px) {
  /* NEWS */
  .news.all h3.title {
    font-size: 25px; }
  .news .comments .footer li {
    margin: 5px; }
  /* USERS */
  .blogs .excerpt .figure {
    float: none;
    margin: 10px auto; }
  .blogs .excerpt .header {
    text-align: center; }
  .blogs p {
    margin-left: 0; }
  .blogs .full .button.continue,
  .blogs.post .footer a span {
    margin: 10px auto; }
  /* Footer */
  #footer {
    padding: 10px; }
  #footer .social li {
    margin: 15px 8px; } }

@media only screen and (max-width: 330px) {
  .users #filter {
    display: none; }
  .events #unified > #GC fieldset .ticket.description {
    margin-top: 65px; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIi4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL2VkaXRvci9zdHlsZXNoZWV0LnNjc3MiLCIuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS93dS1zb2NpYWwtaWNvbnMvY2lyY2xlL3N0eWxlLnNjc3MiLCIuLi8uLi8uLi8uLi9lbmdpbmUvanMvanF1ZXJ5L3BsdWdpbnMvZmxleHNsaWRlci9mbGV4c2xpZGVyLnNjc3MiLCJ0b3VjaGV2ZW50cy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL21hc3Rlci9zYXNzL3N0b3JlLWFjY291bnQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50LWltcG9ydC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3ZhcmlhYmxlcy92YXJpYWJsZXMuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9taXhpbnMvbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvZ2xvYmFscy9nbG9iYWxzLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9hY2NvdW50LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9nbG9iYWwvYWNjb3VudC1nbG9iYWwuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L2FkZHJlc3MvMi1jb2wtYWRkcmVzcy1kYXNoYm9hcmQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L2Rhc2hib2FyZC8yLWNvbC1hY2NvdW50LWRhc2hib2FyZC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvbGlua2VkLWFjY291bnQvMi1jb2wtbGlua2VkLWFjY291bnQtZGFzaGJvYXJkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9tYW5hZ2UtYWNjb3VudC8yLWNvbC1tYW5hZ2UtcHJvZmlsZS1kYXNoYm9hcmQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L21hbmFnZS1hdmF0YXIvMi1jb2wtYXZhdGFyLWRhc2hib2FyZC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvbm90aWZpY2F0aW9ucy8yLWNvbC1tYW5hZ2Utbm90aWZpY2F0aW9ucy1kYXNoYm9hcmQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L29yZGVycy9kZXRhaWwvbXVsdGktcm93LW9yZGVyLWRldGFpbC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvb3JkZXJzL2xpc3RpbmcvMi1jb2wtb3JkZXItbGlzdGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvcGFydGlhbHMvbmF2aWdhdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3BhcnRpYWxzL21vZGFsL21vZGFsLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUtaW1wb3J0LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYXZhdGFyL2F2YXRhci5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3N0b3JlLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvbWl4aW4vZmxhZ2VkLXByb2R1Y3QtbGlzdGluZy1taXhpbi5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL21peGluL2dlbmVyYWwtcHJvZHVjdC1saXN0aW5nLW1peGluLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvZ2xvYmFsL3N0b3JlLWdsb2JhbC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL2JpbGxpbmcvMi1jb2wtYmlsbGluZy1saXN0aW5nLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvY2FydC9jYXJ0LXRhYmxlLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvY2F0ZWdvcmllcy8zeC1jYXRlZ29yaWVzLWdyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9jYXRlZ29yaWVzL2NhdGVnb3JpZXMtbmF2LWxpc3Quc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9jYXRlZ29yeS8zLWNvbC1jYXRlZ29yeS1ncmlkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvb3JkZXIvZXh0cmEvMS1jb2wtb3JkZXItZXh0cmEtbGlzdGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL29yZGVyL3BheW1lbnQvMS1jb2wtb3JkZXItcGF5bWVudC10YWJsZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL29yZGVyL3dpbGxjYWxsLzEtY29sLW9yZGVyLXdpbGwtY2FsbC1saXN0aW5nLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvcGFydGlhbHMvYXNpZGUvMS1jb2wtYXNpZGUuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9wYXJ0aWFscy9tZXRhL21ldGEtcm93LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvcGFydGlhbHMvcHJvZ3Jlc3MvcHJvZ3Jlc3MtaW5kaWNhdG9yLXJvdy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3Byb2R1Y3QvZGV0YWlsLzItY29sLXByb2R1Y3QtZGV0YWlsLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvcHJvZHVjdC9saXN0aW5nLzItY29sLXByb2R1Y3QtZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3Byb2R1Y3QvbGlzdGluZy8zLWNvbC1wcm9kdWN0LWdyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9zaGlwcGluZy8yLWNvbC1zaGlwcGluZy1saXN0aW5nLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3dpZGdldHMvZnVsbC13aWR0aC1yZXNwb25zaXZlLWNhcm91c2VsLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvbWFzdGVyL3Nhc3Mvc3RvcmUtYWNjb3VudC1mdWxsLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiLyogc3R5bGVsaW50LWRpc2FibGUsIGRlY2xhcmF0aW9uLW5vLWltcG9ydGFudCAqL1xuXG4vKiEgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIF8gIF9fICAgIF8gICAgICAgIF9fX1xuICogICBfXyBfIF8gX18gX19fICBfICAgXyBfIF9fICAgX198IHwvIC9fX198IHxfIF8gX198IFxcIFxcXG4gKiAgLyBfICB8ICBfXy8gXyBcXHwgfCB8IHwgIF8gXFwgLyBfICB8IHwvIF9ffCBfX3wgIF9ffCB8fCB8XG4gKiB8IChffCB8IHwgfCAoXykgfCB8X3wgfCB8IHwgfCAoX3wgfCB8IChfX3wgfF98IHwgIHwgfHwgfFxuICogIFxcX18uIHxffCAgXFxfX18vIFxcX18uX3xffCB8X3xcXF9fLl98IHxcXF9fX3xcXF9ffF98ICB8X3x8IHxcbiAqICB8X19fLyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXFxfXFwgICAgICAgICAgICAgIC9fL1xuXG4gICAgQ2xpZW50OiAgICAgICAgUm9iIFRob21hc1xuICAgIERldmVsb3BtZW50OiAgIEFhcm9uIEFzdGxlIDogZ3JvdW5kKGN0cmwpXG4gICAgRGVzaWduOiAgICAgICAgQW50aG9ueSBPcmRvbmV6IDogZ3JvdW5kKGN0cmwpXG4qL1xuXG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvZWRpdG9yL3N0eWxlc2hlZXQuc2Nzc1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL3d1LXNvY2lhbC1pY29ucy9jaXJjbGUvc3R5bGUuc2Nzc1wiO1xuQGltcG9ydCBcIi4uL3R5cGUvaWNvbnMvc3R5bGUuY3NzXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vZW5naW5lL2pzL2pxdWVyeS9wbHVnaW5zL2ZsZXhzbGlkZXIvZmxleHNsaWRlci5zY3NzXCI7XG5AaW1wb3J0IFwiLi90b3VjaGV2ZW50cy5zY3NzXCI7XG5AaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL21hc3Rlci9zYXNzL3N0b3JlLWFjY291bnQuc2Nzc1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9tYXN0ZXIvc2Fzcy9zdG9yZS1hY2NvdW50LWZ1bGwuc2Nzc1wiO1xuXG4vKiBDb2xvcnMgKi9cbiRibGFjazogIzAwMDtcbiR3aGl0ZTogI2ZmZjtcbiRncmV5TGlnaHQ6ICNlYmViZWI7XG4kZ3JleTogIzg1ODY4NTtcbiRyZWQ6ICM5MzFlMjM7XG5cbi8qIEFuaW1hdGlvbnMgKi9cbkBrZXlmcmFtZXMgZXhwYW5kIHtcbiAgMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDApOyB9XG4gIDUwJSB7IHRyYW5zZm9ybTogc2NhbGUoMSk7IH1cbiAgMTAwJSB7IHotaW5kZXg6IDE7IH1cbn1cblxuLyogZyhjKSByZXNldCAqL1xucCB7XG4gIHBhZGRpbmc6IDAgMCAxMHB4IDA7XG59XG5cbmJvZHksXG51bCxcbm9sIHtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4uY29udGVudCBlbSxcbmVtIHtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uY29udGVudCB1bCB7XG4gIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG59XG5cbiNicmVhZGNydW1icyxcbiNicmVhZGNydW1icyAuaGVyZSxcbi5oZWFkZXIgLmFjdGlvbnMsXG4ucnNzLFxuLm1ldGEgLmF1dGhvcixcbi5mb290ZXIgLm1ldGEsXG4ubWV0YSAuY29tbWVudHMge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4vKiBHbG9iYWwgKi9cbiosXG4qOjpiZWZvcmUsXG4qOjphZnRlciB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG59XG5cbmJvZHkge1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbmEge1xuICBjb2xvcjogJGJsYWNrO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmE6aG92ZXIsXG4uc2VsZWN0ZWQgYSB7XG4gIGNvbG9yOiAkcmVkO1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiNwYWdlIHtcbiAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDEwNXB4KTtcbn1cblxuI21haW4gLmNvbnRlbnQgYSxcbiNtYWluIC5kZXRhaWxzIGEge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuI21haW4gLnNlY3Rpb24gLnRpdGxlIGEge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbmgxLFxuaDIsXG5oMyxcbmg0LFxuaDUsXG5oNiB7XG4gIGZvbnQtZmFtaWx5OiAnZWRpdG9yYm9sZCcsIHNlcmlmO1xuICBwYWRkaW5nOiAwO1xufVxuXG5kaXYsXG5wLFxuYmxvY2txdW90ZSxcbnVsLFxub2wsXG51bCBsaSB1bCBsaSxcbm9sIGxpIHVsIGxpLFxubGkgcCxcbmxpIGRsLFxucCxcbmxpLFxudGQsXG5kbCxcbmFkZHJlc3MsXG5pbnB1dCxcbnNlbGVjdCxcbnRleHRhcmVhLFxuI1N1Ym1pdCxcbi52Y2FyZCxcbmxlZ2VuZCxcbmRsLFxuZHQsXG5kZCxcbiNicmVhZGNydW1icyB7XG4gIGZvbnQ6IDQwMCAxM3B4LzEuMmVtICdlZGl0b3JyZWd1bGFyJywgc2VyaWY7XG59XG5cbmgyLnRpdGxlIHtcbiAgY29sb3I6ICRyZWQ7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLnZpZXdhbGwge1xuICBjb2xvcjogJHJlZDtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4udmlld2FsbDpob3ZlciB7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbi5tZXRhIHtcbiAgbWFyZ2luOiAwIDAgMjdweDtcbn1cblxuLkdDX3NoYXJpbmcge1xuICBtYXJnaW46IDE1cHggYXV0bztcbn1cblxuI2NvbW1lbnRzIC5tZXRhIHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbiNjb21tZW50cyAubWV0YSBwIHtcbiAgZm9udC1zaXplOiAxM3B4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgcGFkZGluZzogMDtcbn1cblxuLy8gU2VjdGlvbiBCYWNrZ3JvdW5kc1xuYm9keSB7XG4gIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gIC8vIFRlbXA6IHNhbWUgYmFja2dyb3VuZCBmb3IgYWxsIHBhZ2VzXG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi8vc3RhdGljLndvbmRlcmZ1bHVuaW9uLm5ldC9ncm91bmRjdHJsL2NsaWVudHMvcm9iX3Rob21hcy9zaXRlLzIwMTkvZ2xvYmFsL2JnNC5qcGdcIik7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cblxuLyoqXG4gICAgKiAgICBIZWFkZXJcbiAgICAqID09PT09PT09PT09PT09PT09PT1cbiAgICAqICAgIExvZ28gYW5kIE5hdlxuKi9cblxuI2hlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgY29sb3I6ICRibGFjaztcbiAgaGVpZ2h0OiAxMDVweDtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDE7XG59XG5cbiNoZWFkZXIgLnNlY3Rpb24ge1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbiAgd2lkdGg6IGF1dG87XG59XG5cbiNoZWFkZXIgLmNsaWVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDE1JTtcbn1cblxuLmxvZ28ge1xuICBiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLndvbmRlcmZ1bHVuaW9uLm5ldC9ncm91bmRjdHJsL2NsaWVudHMvcm9iX3Rob21hcy9zaXRlLzIwMTkvZ2xvYmFsL2xvZ28uc3ZnJykgbm8tcmVwZWF0IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlIDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBtYXJnaW46IDlweCAxMHB4IDE1cHggMTBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1pbmRlbnQ6IC05OTk5cHg7XG4gIHdpZHRoOiAxNTBweDtcbn1cblxuI2hlYWRlciAubW9iaWxlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuI2hlYWRlciAubmF2IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgaGVpZ2h0OiA4MHB4O1xuICBtYXJnaW46IDEycHggMDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogODQlO1xufVxuXG4jaGVhZGVyIC5saW5rcyB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4jaGVhZGVyIC5uYXYgbGkge1xuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gICAgJi5kcm9wZG93biA+IGEge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDk2MHB4KSB7XG4gICAgJi5kcm9wZG93biB7XG4gICAgICAmLFxuICAgICAgI2hlYWRlciAmIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB6LWluZGV4OiA5OTtcblxuICAgICAgICA+IGEge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB6LWluZGV4OiAyO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAmOjphZnRlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwLjZlbSAxLjRlbTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHRvcDogMTAwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUwJSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAyNTBtcyAwbXMsIG9wYWNpdHkgMjUwbXM7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNjtcbiAgICAgICAgICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLm9wZW4ge1xuICAgICAgICAmLFxuICAgICAgICAjaGVhZGVyICYge1xuICAgICAgICAgIHVsIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDdweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI2hlYWRlciAubmF2IGEge1xuICBjb2xvcjogJHJlZDtcbiAgZm9udC1mYW1pbHk6ICdlZGl0b3JsaWdodCcsIHNlcmlmO1xuICBmb250LXNpemU6IDE0cHg7XG4gIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIGxpbmUtaGVpZ2h0OiA4MHB4O1xuICBwYWRkaW5nOiAzMHB4IDEwcHg7XG5cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxufVxuXG4jaGVhZGVyIC5hY2NvdW50LWxpbmtzIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIGxpIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICBhIHtcbiAgICBmb250LXNpemU6IDEycHg7XG4gIH1cbn1cblxubGkucmVnaXN0ZXIsXG5saS5sb2dvdXQsXG5saS5hY2NvdW50LFxubGkubG9naW4ge1xuICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qIERyb3Bkb3duIG1lbnUgYWRkb24gKi9cbiNoZWFkZXIgLm5hdiBsaS5ldmVudHMgdWwudG9nZ2xlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDEzNXB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgei1pbmRleDogOTk5O1xufVxuXG4jaGVhZGVyIC5uYXYgbGkuZXZlbnRzIHVsLnRvZ2dsZSBsaSB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNoZWFkZXIgLm5hdiBsaS5ldmVudHMgdWwudG9nZ2xlIGxpIGEge1xuICBjb2xvcjogJHdoaXRlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMCAzMHB4O1xufVxuXG4jaGVhZGVyIC5uYXYgbGkuZXZlbnRzIHVsLnRvZ2dsZSBsaSBhOmhvdmVyIHtcbiAgY29sb3I6ICRyZWQ7XG59XG5cbiNoZWFkZXIgLnNwb3RpZnktZm9sbG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmc6IDAgMTBweDtcbn1cblxuLyoqXG4gKiAgICAgIEhvbWUgUGFnZVxuICogPT09PT09PT09PT09PT09PT09PVxuICpcbiovXG5cbmJvZHkuaG9tZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG5cbi5iaW9ncmFwaHkgI3BhZ2UsXG4jZm9vdGVyIC5zZWN0aW9uIHtcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ob21lICNwYWdlIHtcbiAgbWluLWhlaWdodDogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8qIFNsaWRlciAqL1xuLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtbmV4dCxcbi5mbGV4c2xpZGVyOmhvdmVyIC5mbGV4LXByZXYge1xuICBvcGFjaXR5OiAxO1xufVxuXG4uaG9tZS1zbGlkZXIge1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIG1hcmdpbjogMDtcblxuICAuc2xpZGUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciB0b3A7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgIHBhZGRpbmctYm90dG9tOiA0OSU7XG5cbiAgICBhIHtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuXG4vKipcbiAqICAgIE5FV1NcbiAqID09PT09PT09PT09PT09PT09PT1cbiAqXG4qL1xuXG4ubmV3cyAjcGFnZSxcbi5uZXdzICNtYWluIHtcbiAgY29sb3I6ICRibGFjaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm5ld3MgI21haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiAgbWFyZ2luOiAyNTBweCBhdXRvIDUwcHg7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBwYWRkaW5nOiAxZW07XG59XG5cbi5uZXdzIC5zZWN0aW9uIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4ubmV3cyAubGlzdGluZy5mdWxsIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLm5ld3MgPiAuZnVsbCAuaXRlbSB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYmEoJHdoaXRlLCAwLjgpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogNjY1cHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHRyYW5zaXRpb246IGFsbCAwLjRzIGVhc2UtaW4tb3V0O1xuICB3aWR0aDogMjUlO1xufVxuXG4ubmV3cyAuZXhjZXJwdCBwIHtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbi5uZXdzIC5leGNlcnB0IGlmcmFtZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5uZXdzIC5maXJzdCB7XG4gIGNsZWFyOiBsZWZ0O1xufVxuXG4ubmV3cyA+IC5mdWxsIC5pdGVtOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogJGdyZXlMaWdodDtcbn1cblxuLm5ld3MgLmFydGljbGUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm5ld3MuYWxsIC5maWd1cmUge1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICBtaW4taGVpZ2h0OiAzMDBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm5ld3MgLmJvZHkge1xuICBib3JkZXItbGVmdDogMXB4IHNvbGlkICRncmV5TGlnaHQ7XG4gIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICRncmV5TGlnaHQ7XG4gIGhlaWdodDogMTAwJTtcbiAgbWF4LWhlaWdodDogMzY1cHg7XG4gIHBhZGRpbmc6IDI1cHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ubmV3cyAuY29udGVudCB7XG4gIGxpbmUtaGVpZ2h0OiAxLjQ7XG59XG5cbi5uZXdzIC5mdWxsIC5tZXRhIHtcbiAgbWFyZ2luOiAwIDAgMjJweDtcbn1cblxuLm5ld3MgLmZ1bGwgLnRpbWUge1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4ubmV3cy5hbGwgaDMudGl0bGUge1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXNpemU6IDI2cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5uZXdzIGgzLnRpdGxlIGEge1xuICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLm5ld3MuYWxsIC5pdGVtIC5mb290ZXIge1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIGJvdHRvbTogMDtcbiAgaGVpZ2h0OiA1MHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogYXV0bztcbiAgdHJhbnNpdGlvbjogYWxsIDAuNHMgZWFzZS1pbi1vdXQ7XG59XG5cbi5zZWN0aW9uLm5ld3MgLmFydGljbGUgPiAuZm9vdGVyIC5uYXYuYWN0aW9ucyB7XG4gIGhlaWdodDogNTBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uc2VjdGlvbi5uZXdzIC5hcnRpY2xlID4gLmZvb3RlciAubmF2LmFjdGlvbnMgPiAucmVhZG1vcmUge1xuICBmbG9hdDogbm9uZTtcbn1cblxuLnJlYWRtb3JlIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAxNnB4O1xuICBmb250LXdlaWdodDogNzAwO1xuICBwYWRkaW5nOiAxN3B4IDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5uZXdzIC5pdGVtOmhvdmVyIC5mb290ZXIge1xuICBib3R0b206IDUwcHg7XG59XG5cbi8qIEFSVElDTEUgKi9cbiNtYWluLm5ld3Mge1xuICBtYXgtd2lkdGg6IDY0MHB4O1xufVxuXG4ubmV3cy5zdG9yeSB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm5ld3Muc3RvcnkgPiAuYXJ0aWNsZSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbn1cblxuLm5ld3Muc3RvcnkgLmZpZ3VyZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm5ld3Muc3RvcnkgaDMudGl0bGUge1xuICBmb250LXNpemU6IDM1cHg7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5uZXdzLnN0b3J5IC5hcnRpY2xlID4gLmNvbnRlbnQge1xuICBwYWRkaW5nLWJvdHRvbTogMzVweDtcbn1cblxuLnN0b3J5IC5hcnRpY2xlIHAge1xuICBmb250LXNpemU6IDE4cHg7XG59XG5cbi8qIENPTU1FTlRTICovXG4jcG9zdF9jb21tZW50IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmV5O1xuICBwYWRkaW5nOiAzNXB4IDA7XG59XG5cbiNhZGQtY29tbWVudCAudGV4dCBsYWJlbCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbiNhZGQtY29tbWVudCAjY29tbWVudCB7XG4gIGJhY2tncm91bmQ6ICRncmV5O1xuICBjb2xvcjogIzM0MzQzNDtcbiAgbWF4LWhlaWdodDogMjA1cHg7XG4gIG1heC13aWR0aDogNjE1cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jY29tbWVudHMgPiAuaGVhZGVyIHtcbiAgcGFkZGluZzogMTVweCAwIDA7XG59XG5cbi5ldmVudCAjY29tbWVudHMgPiAuaGVhZGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmNvbW1lbnRzIC5pdGVtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRncmV5O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDQwcHggMCAyMHB4O1xufVxuXG4jbWFpbiAuc2VjdGlvbi5jb21tZW50cyAuYnViYmxlLFxuI2FzaWRlIC5zZWN0aW9uLmNvbW1lbnRzIC5idWJibGUge1xuICBtYXJnaW4tbGVmdDogMTA1cHg7XG4gIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG59XG5cbiNhc2lkZSAuc2VjdGlvbi5jb21tZW50cyAuYXJ0aWNsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuI2FzaWRlIC5zZWN0aW9uLmNvbW1lbnRzIC5hdmF0YXIge1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbn1cblxuI21haW4gLnNlY3Rpb24uY29tbWVudHMgLmF2YXRhcixcbiNhc2lkZSAuc2VjdGlvbi5jb21tZW50cyAuYXZhdGFyIHtcbiAgYm9yZGVyOiAzcHggc29saWQgJHdoaXRlO1xuICB3aWR0aDogOTBweDtcbn1cblxuI21haW4gLnNlY3Rpb24uY29tbWVudHMgLmF2YXRhciBpbWcsXG4jYXNpZGUgLnNlY3Rpb24uY29tbWVudHMgLmF2YXRhciBpbWcge1xuICB3aWR0aDogOTBweDtcbn1cblxuLm5ld3MgI2NvbW1lbnRzIHtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogODYwcHg7XG59XG5cbi5jb21tZW50cyAuZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb21tZW50cyAuZm9vdGVyIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgNXB4O1xufVxuXG4uY29tbWVudHMgLmZvb3RlciBhLFxuI1N1Ym1pdCB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgYm9yZGVyOiBub25lO1xuICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZvbnQtc2l6ZTogMTNweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXdlaWdodDogMzAwO1xuICBoZWlnaHQ6IDMwcHg7XG4gIHBhZGRpbmc6IDhweCAxNXB4IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuI2NvbW1lbnRzIC5mb290ZXIge1xuICBwYWRkaW5nOiAyMHB4IDA7XG59XG5cbiNTdWJtaXQge1xuICBtYXJnaW46IDE1cHggMCAwIGF1dG87XG59XG5cbi5zdG9yeSAuZm9vdGVyIC5HQ19zaGFyaW5nIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLyogQVNJREUgKi9cbi5uZXdzICNhc2lkZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmV5TGlnaHQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubmV3cy5wb3B1bGFyID4gLmhlYWRlciB7XG4gIG1hcmdpbjogMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4ubmV3cy5wb3B1bGFyIGgyLnRpdGxlIHtcbiAgbWFyZ2luOiA0MHB4IDAgMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLm5ld3MucG9wdWxhciAuaXRlbSB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkZ3JleTtcbiAgcGFkZGluZzogMzBweCAyMHB4O1xufVxuXG4ubmV3cyAuYXJ0aWNsZSAubWV0YSB7XG4gIG1hcmdpbjogMCAwIDIwcHggMDtcbn1cblxuLm5ld3Muc3RvcnkgLmNvbnRlbnQgLm1ldGEge1xuICBtYXJnaW46IDQwcHggMCAyMHB4O1xufVxuXG4ubmV3cy5wb3B1bGFyIGgzLnRpdGxlIHtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xufVxuXG4ubmV3cy5wb3B1bGFyIGgzLnRpdGxlOmhvdmVyIHtcbiAgY29sb3I6ICR3aGl0ZTtcbn1cblxuLm5ld3MucG9wdWxhciAuZXhjZXJwdCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5uZXdzLnBvcHVsYXIgLnZpZXdhbGwge1xuICBiYWNrZ3JvdW5kOiAkYmxhY2s7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDQwcHg7XG4gIHBhZGRpbmctdG9wOiAxNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqICAgICAgRXZlbnRzXG4gKiA9PT09PT09PT09PT09PT09PT09XG4gKlxuKi9cblxuLmV2ZW50cyAjcGFnZSB7XG4gIG1hcmdpbjogMjUwcHggYXV0byA1MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmV2ZW50cyAjbWFpbiB7XG4gIG1hcmdpbjogMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ldmVudHMudXBjb21pbmcge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC44NSk7XG4gIG1hcmdpbjogMCBhdXRvIDA7XG4gIG1heC13aWR0aDogMTIwMHB4O1xuICBwYWRkaW5nOiAxZW07XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZXZlbnRzIGgxIHtcbiAgY29sb3I6ICRyZWQ7XG4gIGZvbnQtc2l6ZTogMjVweDtcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbWFyZ2luOiAwIDAgNDVweDtcbiAgcGFkZGluZzogMDtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cblxuLmV2ZW50cyAuZnVsbCB0aGVhZCB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5ldmVudHMgLmZ1bGwgdHIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzMzMmUyODtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuXG4uZXZlbnRzIHRyOmhvdmVyIC52ZW51ZSBhLFxuLmV2ZW50cyB0cjpob3ZlciAubG9jYXRpb24gc3BhbiB7XG4gIGNvbG9yOiAkcmVkO1xufVxuXG4uZXZlbnRzIC5mdWxsIHRkIHtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBoZWlnaHQ6IDY1cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5ldmVudHMgLmZ1bGwgLnRpdGxlIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5ldmVudHMgLmZ1bGwgLnRpbWUge1xuICBjb2xvcjogJHJlZDtcbiAgZm9udC1zaXplOiAxN3B4O1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cbi5ldmVudHMgLmZ1bGwgLnRpY2tldHMge1xuICBjdXJzb3I6IGF1dG87XG4gIHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG4uZXZlbnRzIC5mdWxsIC5uYSB7XG4gIG9wYWNpdHk6IDAuMztcbn1cblxuLnRpY2tldHMgdWwge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4uZXZlbnRzIC5mdWxsIC50aWNrZXQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmV2ZW50cyAudGlja2V0IGEsXG4uZXZlbnRzIC50aWNrZXQgc3BhbiB7XG4gIGJhY2tncm91bmQ6ICRyZWQ7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGhlaWdodDogMzBweDtcbiAgbWFyZ2luOiAwIDZweDtcbiAgcGFkZGluZzogOHB4IDA7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LWluZGVudDogMDtcbiAgd2lkdGg6IDExNXB4O1xufVxuXG4udGlja2V0LnZpcCBhLFxuLnRpY2tldC52aXAgc3BhbiB7XG4gIGJhY2tncm91bmQ6ICRncmV5O1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG4uZXZlbnRzIC53cmFwcGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuOCk7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDcwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAxZW07XG4gIHBhZGRpbmc6IDQ1cHggMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZXZlbnRzIC53cmFwcGVyICNtYWluLFxuLmV2ZW50cyAud3JhcHBlciAjYXNpZGUge1xuICBmbG9hdDogbm9uZTtcbiAgcGFkZGluZzogMCAxMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmV2ZW50cyAjY29tbWVudHMgPiAuaGVhZGVyIHtcbiAgcGFkZGluZzogMDtcbn1cblxuLmV2ZW50cyAud3JhcHBlciBoMi50aXRsZSxcbi5ldmVudHMgLndyYXBwZXIgaDMudGl0bGUge1xuICBjb2xvcjogJHJlZDtcbiAgZm9udC1zaXplOiAyNXB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uZXZlbnRzIC53cmFwcGVyIGgzLnRpdGxlIHtcbiAgbWFyZ2luOiAwIDAgMjBweCAwO1xufVxuXG4uZXZlbnRzIC5ldmVudCAuY29udGVudCAqIHtcbiAgZm9udC1zaXplOiAxOHB4ICFpbXBvcnRhbnQ7XG59XG5cbi5ldmVudCAuZmlndXJlIHtcbiAgbWFyZ2luOiAxMHB4IDAgMjBweCAwO1xufVxuXG4uZXZlbnQgLmZpZ3VyZSBpbWcge1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmV2ZW50cyAuY29tbWVudHMgLml0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgIzM2MzAyODtcbn1cblxuLmV2ZW50cyAuY29tbWVudHMgLm1ldGEge1xuICBjb2xvcjogJHJlZDtcbn1cblxuLmV2ZW50cyAuY29tbWVudHMgLmNvbnRlbnQgcCB7XG4gIGNvbG9yOiAjZTFlMWUxO1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5ldmVudHMgLmNvbW1lbnRzIC5mb290ZXIgYSxcbi5ldmVudHMgI1N1Ym1pdCB7XG4gIGJhY2tncm91bmQ6ICRyZWQ7XG4gIGNvbG9yOiAkYmxhY2sgIWltcG9ydGFudDtcbn1cblxuLmV2ZW50cyAjcG9zdF9jb21tZW50IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMzNjMwMjg7XG59XG5cbi5ldmVudHMgI3Bvc3RfY29tbWVudCAudGl0bGUge1xuICBjb2xvcjogJHJlZDtcbiAgZm9udC1zaXplOiAyNXB4O1xufVxuXG4uZXZlbnQgLmhlYWRlciAuYWN0aW9ucyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4vKipcbiAqICAgIE1FRElBXG4gKiA9PT09PT09PT09PT09PT09PT09XG4qL1xuXG4ubWVkaWEgI3BhZ2UsXG4ubWVkaWEgI21haW4ge1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ubWVkaWEgI3BhZ2Uge1xuICBtYXgtd2lkdGg6IDEyMDBweDtcbn1cblxuLm1lZGlhICNtYWluIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuOCk7XG4gIG1hcmdpbjogMjUwcHggYXV0byA1MHB4O1xuICBwYWRkaW5nOiAxZW07XG59XG5cbi8qIE1lZGlhIE1haW4gKi9cbi52aWRlby5jb21wYWN0IC5oZWFkZXIsXG4ucGhvdG8uY29tcGFjdCAuaGVhZGVyLFxuLnBob3RvLmNvbXBhY3QgLmZvb3RlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5tZWRpYSAjY29tbWVudHMsXG4ubWVkaWEgI3Bvc3RfY29tbWVudCB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDk2MHB4O1xufVxuXG4ubWVkaWEtc2VjdGlvbiB7XG4gIG1hcmdpbi1ib3R0b206IDEwMHB4O1xuXG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gIC52aWV3YWxsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbn1cblxuLnZpZGVvLmNvbXBhY3QsXG4ucGhvdG8uY29tcGFjdCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLm1lZGlhIC5zZWN0aW9uIC5saXN0aW5nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5tZWRpYSAuc2VjdGlvbi5mZWF0dXJlZCAuaGVhZGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm1lZGlhIC5zZWN0aW9uLmZlYXR1cmVkICN2aWRlb19wbGF5ZXIge1xuICBtYXJnaW46IDIwcHggMCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tZWRpYSAuZmVhdHVyZS52aWRlbyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLm1lZGlhIC5mZWF0dXJlLnZpZGVvIG9iamVjdCB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLm1lZGlhIC5mZWF0dXJlLnZpZGVvLFxuLnZpZGVvLmNvbXBhY3QgLmdhbGxlcmllcyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi52aWRlby5jb21wYWN0IC5nYWxsZXJpZXMgbGksXG4ucGhvdG8uY29tcGFjdCAuZ2FsbGVyaWVzIGxpIHtcbiAgYm9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogNTAlO1xufVxuXG4udmlkZW8uY29tcGFjdCAuZ2FsbGVyaWVzIC5maWd1cmUsXG4ucGhvdG8uY29tcGFjdCAuZ2FsbGVyaWVzIC5maWd1cmUge1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uZmVhdHVyZWQtcGhvdG8sXG4ucGhvdG8uY29tcGFjdCAuZ2FsbGVyaWVzIHtcbiAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogNTAlO1xufVxuXG4uZmVhdHVyZWQudmlkZW8gb2JqZWN0LFxuLmNvbXBhY3QgI3ZpZGVvX3BsYXllciBpZnJhbWUsXG4uY29tcGFjdCAjdmlkZW9fcGxheWVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICBoZWlnaHQ6IDEwMCUgIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi52aWRlby5jb21wYWN0IC5pdGVtIC5oZWFkZXIsXG4ucGhvdG8uY29tcGFjdCAuaXRlbSAuaGVhZGVyLFxuLmdhbGxlcnkgLml0ZW0gLmhlYWRlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0b3A6IDA7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgdHJhbnNpdGlvbjogdmlzaWJpbGl0eSAyNTBtcyAwbXMsIHRyYW5zZm9ybSAyNTBtcztcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLnZpZGVvLmNvbXBhY3QgLml0ZW06aG92ZXIgLmhlYWRlcixcbi5waG90by5jb21wYWN0IC5pdGVtOmhvdmVyIC5oZWFkZXIsXG4uZ2FsbGVyeSAuaXRlbTpob3ZlciAuaGVhZGVyIHtcbiAgYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIDAuOCk7XG4gIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgdHJhbnNpdGlvbi1kZWxheTogMG1zO1xuICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xufVxuXG4udmlkZW8uY29tcGFjdCAuaXRlbSBhLFxuLnBob3RvLmNvbXBhY3QgLml0ZW0gYSxcbi5nYWxsZXJ5IC5pdGVtIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmdhbGxlcnkgLml0ZW0gLmljb24tcGhvdG8ge1xuICBjb2xvcjogJGJsYWNrO1xufVxuXG4udmlkZW8uY29tcGFjdCAuaXRlbSBhOjpiZWZvcmUsXG4ucGhvdG8uY29tcGFjdCAuaXRlbSBhOjpiZWZvcmUsXG4uZ2FsbGVyeSAuaXRlbSBhOjpiZWZvcmUge1xuICBjb250ZW50OiAnJztcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBoZWlnaHQ6IDEwMCU7XG4gIG1hcmdpbi1yaWdodDogLTAuMjVlbTsgLyogQWRqdXN0cyBmb3Igc3BhY2luZyAqL1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4uY2VudGVyZWQge1xuICBjb2xvcjogJGJsYWNrO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxlZnQ6IDUwJTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi5jZW50ZXJlZCBwIHtcbiAgZm9udC1zaXplOiAxN3B4O1xufVxuXG4uY2VudGVyZWQgLml0ZW1zLm5vbmUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZG93bmxvYWRhYmxlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDEwcHggMCAwIDA7XG59XG5cbi5hc3NldHMgLmZpZ3VyZSB7XG4gIGhlaWdodDogMzAwcHg7XG4gIHdpZHRoOiAzMDBweDtcbn1cblxuLmdhbGxlcnkgaDIudGl0bGUge1xuICBtYXJnaW46IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG4uZ2FsbGVyeSAuZ2FsbGVyaWVzIC5pdGVtLFxuLmdhbGxlcnkgLmFzc2V0cyAuaXRlbSB7XG4gIGJvcmRlcjogNXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIGhlaWdodDogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IDI1JTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0cmFuc2l0aW9uOiBhbGwgMC40cyBlYXNlLWluLW91dDtcbiAgd2lkdGg6IDI1JTtcbn1cblxuLmdhbGxlcnkgLmdhbGxlcmllcyAuZmlndXJlLFxuLmdhbGxlcnkgLmFzc2V0cyAuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZy1ib3R0b206IDExMCU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uYXNzZXRzIC5pdGVtIC50aXRsZSB7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuLnNlY3Rpb24uYXNzZXQge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi5tZWRpYSAuY29tbWVudHMgaDIudGl0bGUge1xuICBjb2xvcjogJGJsYWNrO1xufVxuLmFzc2V0IC5mb290ZXIgLmFjdGlvbnMgeyBkaXNwbGF5OiBub25lOyB9XG5cbi5hc3NldCAuaGVhZGVyIC5hY3Rpb25zIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi5hc3NldCAuYWN0aW9ucyBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbn1cblxuLyogIE1FRElBIEFTU0VUICAqL1xuLnNlY3Rpb24uZ2FsbGVyeSBoMS50aXRsZSxcbi5zZWN0aW9uLmFzc2V0cyBoMS50aXRsZSB7XG4gIGNvbG9yOiAkcmVkO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1zaXplOiAyNXB4O1xuICBtYXJnaW46IDIwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4uc2xpZGUgLmFzc2V0IC5maWd1cmUge1xuICBoZWlnaHQ6IDI2NXB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2ZhbmN5Ym94LWlubmVyICN2aWRlb19wbGF5ZXIge1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmc6IDAgMCA1Ni4yNSU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNmYW5jeWJveC1pbm5lciAjdmlkZW9fcGxheWVyIGlmcmFtZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqICAgIENNUyBQQUdFU1xuICogPT09PT09PT09PT09PT09PT09PVxuKi9cblxuI21haW4uZnVsbC5jbXMge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiAgcGFkZGluZzogMWVtO1xuICB3aWR0aDogOTAlO1xufVxuXG4jbWFpbi5jbXMge1xuICBtYXJnaW46IDI1MHB4IGF1dG8gNTBweDtcbn1cblxuLmNtcyAudGl0bGUge1xuICBjb2xvcjogJHJlZDtcbiAgZm9udC1zaXplOiAyNXB4O1xuICBtYXJnaW4tdG9wOiAyNXB4O1xufVxuXG4uY21zIC5jb250ZW50IGgyIHtcbiAgbWFyZ2luLXRvcDogMjBweDtcbn1cblxuLmNtcyAuY29udGVudCBwIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaW5lLWhlaWdodDogMS41ZW07XG4gIG1hcmdpbjogMC4yNWVtIDAgMC43NWVtO1xufVxuXG4uY21zIC5jb250ZW50IGJsb2NrcXVvdGUge1xuICBib3JkZXI6IDA7XG4gIGZvbnQtc2l6ZTogMTVweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBtYXJnaW46IDVweCAwIDEwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi5jbXMgLmNvbnRlbnQgdWwge1xuICBwYWRkaW5nOiAwO1xufVxuXG4uY21zIC5jb250ZW50IHVsIGxpIHtcbiAgZm9udC1zaXplOiAxNXB4O1xuICBsaXN0LXN0eWxlOiBjaXJjbGU7XG4gIGxpc3Qtc3R5bGUtcG9zaXRpb246IGluc2lkZTtcbiAgbWFyZ2luOiAwLjRlbSAwLjI1ZW07XG59XG5cbi5iaW9ncmFwaHkgLmZ1bGwuY21zIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbn1cblxuLmJpb2dyYXBoeSAjY3VzdG9tLXBhZ2Uge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMjUwcHggYXV0byA1MHB4O1xuICBtYXgtd2lkdGg6IDkwMHB4O1xuICBwYWRkaW5nOiAxZW07XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5iaW9ncmFwaHkgI2N1c3RvbS1wYWdlIHAge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGxpbmUtaGVpZ2h0OiAxLjllbTtcbn1cblxuLmJpb2dyYXBoeSBoMSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5iaW9ncmFwaHkgaDMge1xuICBjb2xvcjogJHJlZDtcbiAgbGluZS1oZWlnaHQ6IDEuOWVtO1xufVxuXG4uYmlvZ3JhcGh5ICNhc2lkZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIG1pbi1oZWlnaHQ6IDU2MHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJpb2dyYXBoeSAjdHdpdHRlciB7XG4gIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjYpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xuICBoZWlnaHQ6IDYwMHB4O1xuICBtYXJnaW46IDUwcHggMCAwIGF1dG87XG4gIG1heC13aWR0aDogNTc1cHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgcGFkZGluZzogMWVtO1xuICB3aWR0aDogMTAwJTtcbn1cbi5iaW9ncmFwaHkgI3R3aXR0ZXItd2lkZ2V0LTAgeyB3aWR0aDogMTAwJTsgfVxuXG4uc29uZ29mdGhlZGF5IC5zZWN0aW9uIC50aXRsZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5zb25nb2Z0aGVkYXkgLnNlY3Rpb24uUGxheWxpc3Qge1xuICBoZWlnaHQ6IDA7XG4gIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uc29uZ29mdGhlZGF5IC5zZWN0aW9uLlBsYXlsaXN0IGlmcmFtZSB7XG4gIGhlaWdodDogMTAwJTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vKipcbiAqICAgICAgUmVsZWFzZXNcbiAqID09PT09PT09PT09PT09PVxuKi9cblxuLnJlbGVhc2VzICNwYWdlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5yZWxlYXNlcyAjbWFpbiB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDAgYXV0bztcbiAgbWF4LXdpZHRoOiAxMjAwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucmVsZWFzZXMuYWxsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuOCk7XG4gIG1hcmdpbjogMjUwcHggMCA1MHB4O1xuICBwYWRkaW5nOiAxNXB4IDAgMCAxNXB4O1xufVxuXG4ucmVsZWFzZXMgLmxpc3RpbmcuZnVsbCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGZsZXgtd3JhcDogd3JhcDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnJlbGVhc2VzIC5mdWxsIC5pdGVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICBtYXgtaGVpZ2h0OiAzODBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDMzLjMzMyU7XG59XG5cbi5yZWxlYXNlcyAuZnVsbCAuZmlndXJlIHtcbiAgbWFyZ2luOiAwIDE1cHggMCAwO1xufVxuXG4ucmVsZWFzZXMgLmZ1bGwgLmhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi8qIFJlbGVhc2UgKi9cbi5yZWxlYXNlcyAuYmcge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC41KTtcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHotaW5kZXg6IC0xMDtcbn1cblxuLnJlbGVhc2VzIC5iZyAuY292ZXIge1xuICBmaWx0ZXI6IGJsdXIoMTBweCk7XG4gIGhlaWdodDogMTAwJTtcbiAgb3BhY2l0eTogMC4xNTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNtYWluID4gLnNlY3Rpb24ucmVsZWFzZSB7XG4gIGJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAwLjgpO1xuICBtYXJnaW46IDEyNXB4IGF1dG8gNTBweDtcbiAgbWF4LXdpZHRoOiAxMTAwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDMwcHggMDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5yZWxlYXNlLmNvdmVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDAgMzBweDtcbiAgbWF4LWhlaWdodDogMzkwcHg7XG4gIG1heC13aWR0aDogMzkwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4ucmVsZWFzZSAuZGV0YWlscyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAxNXB4IDI1cHggMDtcbiAgbWF4LXdpZHRoOiA2MDBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5yZWxlYXNlIC5tZXRhIHtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cblxuLnJlbGVhc2UgLmxpbmtzIHtcbiAgbWFyZ2luOiAyMHB4IDAgMzBweCAwO1xufVxuXG4ucmVsZWFzZSAubGlua3MgdWwge1xuICBwYWRkaW5nOiAwO1xufVxuXG4ucmVsZWFzZSAubGlua3MgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMTBweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI21haW4gLnJlbGVhc2UgLmxpbmtzIGEge1xuICBmb250LXNpemU6IDI2cHg7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnJlbGVhc2UgdGhlYWQge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ucmVsZWFzZSB0ciB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkcmVkO1xufVxuXG4ucmVsZWFzZSB0ZCB7XG4gIGZvbnQtc2l6ZTogMTdweCAhaW1wb3J0YW50O1xuICBwYWRkaW5nOiAxNnB4IDA7XG59XG5cbi5yZWxlYXNlIHRkLmR1cmF0aW9uIHtcbiAgcGFkZGluZy1yaWdodDogMjBweDtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5yZWxlYXNlIGEucGxheSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAwIDVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgd2lkdGg6IDE3cHg7XG59XG5cbi5yZWxlYXNlIHRkLnByZXZpZXcge1xuICBwYWRkaW5nLWxlZnQ6IDEwcHg7XG4gIHdpZHRoOiA0MHB4O1xufVxuXG4ucmVsZWFzZSB0ZC5wcmV2aWV3IC5hdWRpby1idG4ge1xuICBwYWRkaW5nLXRvcDogM3B4O1xufVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MTRweCkge1xuICAucmVsZWFzZSB0ZC5wcmV2aWV3IC5hdWRpby1idG4ge1xuICAgIHBhZGRpbmctdG9wOiAycHg7XG4gIH1cbn1cblxuLnJlbGVhc2UgdGQucHJldmlldyAuYXVkaW8tYnRuLnBsYXktYnRuOjpiZWZvcmUsXG4ucmVsZWFzZSB0ZC5wcmV2aWV3IC5hdWRpby1idG4ucGF1c2UtYnRuOjpiZWZvcmUge1xuICBtYXJnaW4tdG9wOiAtMTBweDtcbn1cblxuLyogaG90Zml4ZXMgKi9cbmJvZHkuY29udGVzdHMgI3BhZ2Uge1xuICBiYWNrZ3JvdW5kOiByZ2JhKCR3aGl0ZSwgMC44KTtcbn1cblxuLyoqXG4gKiBTVE9SRVxuID09PT09PT09PT09XG4gKlxuKi9cblxuLy9XVSBBbGVydCBCYW5uZXJcbmFzaWRlI3d1LWFsZXJ0LWJhbm5lciB7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYjAwMDA7XG4gIGNvbG9yOiAjZmZmO1xuICBkaXNwbGF5OiBmbGV4O1xuICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgbWluLWhlaWdodDogNTBweDtcbiAgb3BhY2l0eTogMC45O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDB2dztcbiAgei1pbmRleDogOTk5O1xuXG4gIC5tZXNzYWdlLXRleHQge1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAubW9yZS1pbmZvIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuY2xvc2Uge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgb3BhY2l0eTogMTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiAxMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICB9XG59XG5cbi8qKlxuICogIENPTU1VTklUWVxuICogPT09PT09PT09PT09XG4qL1xuXG4uY29tbXVuaXR5ICNwYWdlLFxuLmJsb2dzICNwYWdlLFxuLmNvbnRlc3RzICNwYWdlIHtcbiAgbWFyZ2luOiAyNTBweCBhdXRvIDUwcHg7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udXNlcnMge1xuICAjY29udGFpbmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR3aGl0ZSwgMC44KTtcbiAgICBtYXJnaW46IDI1MHB4IGF1dG8gNTBweDtcbiAgICBwYWRkaW5nOiAxZW07XG4gIH1cbn1cblxuLnVzZXJzICNtYWluLnVzZXItbGlzdCB7XG4gIGNvbG9yOiAjMzQzNDM0O1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luOiAwIGF1dG87XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4udXNlcnMgI21haW4ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMTBweCAwIDA7XG4gIC8vIG1heC13aWR0aDogNjIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbXVuaXR5IC5uYXYuYWN0aW9ucyBhLFxuLmJsb2dzIC5uYXYuYWN0aW9ucyBhLFxuLmZyaWVuZHMgLm5hdi5hY3Rpb25zIGEsXG4udXNlcnMgLmFib3V0IC5uYXYuYWN0aW9ucyBhLFxuLm1lbWJlciAubmF2LmFjdGlvbnMgYSxcbi5saW5rcyAubmF2LmFjdGlvbnMgYSB7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbn1cblxuLnVzZXJzICNtYWluIGEsXG4udXNlcnMgI2FzaWRlIGEge1xuICBjb2xvcjogJGJsYWNrO1xufVxuXG4udXNlcnMgI21haW4gYTpob3Zlcixcbi51c2VycyAjYXNpZGUgYTpob3ZlciB7XG4gIGNvbG9yOiAkd2hpdGUgIWltcG9ydGFudDtcbn1cblxuLnVzZXJzICNhc2lkZSB7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi51c2VycyAjY29udGFpbmVyIC5zZWN0aW9uLFxuLmNvbnRlc3RzICNjb250YWluZXIgLnNlY3Rpb24ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2I2YTM4ZDtcbiAgcGFkZGluZzogMzBweCAwO1xufVxuXG4jbWFpbi5jb21tdW5pdHktaHViIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMCAwIDIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4uY29tbXVuaXR5IC50aXRsZSB7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuLmNvbW11bml0eSBoMy50aXRsZSBhLFxuLnVzZXJzIC50aXRsZSB7XG4gIGNvbG9yOiAjMzYyZjJkO1xufVxuXG4uY29tbXVuaXR5IGgzLnRpdGxlIGE6aG92ZXIge1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG4uY29tbXVuaXR5IC5tZXRhLFxuLmJsb2dzIC5tZXRhIHtcbiAgY29sb3I6ICRibGFjaztcbiAgbWFyZ2luOiAwIDAgMjBweDtcbn1cblxuLmNvbW11bml0eSAudGh1bWJzLFxuLnVzZXJzIC50aHVtYnMge1xuICBwYWRkaW5nOiAwO1xufVxuXG4udGh1bWJzIC5hdmF0YXIuZnVsbCB7XG4gIGhlaWdodDogMTI1cHg7XG4gIG1hcmdpbjogMCAxNHB4IDEycHggMDtcbiAgd2lkdGg6IDEyNXB4O1xufVxuXG4uYXZhdGFyLmZ1bGwuc2V2ZW50aCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cblxuLnRodW1icyAuYXZhdGFyLmZ1bGwgaW1nLFxuLmJsb2dzIC5leGNlcnB0IC5maWd1cmUgaW1nIHtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5zZWN0aW9uLnVzZXJzIHtcbiAgbWFyZ2luOiAwIDAgMzVweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLnNlY3Rpb24udXNlcnMgLmhlYWRlciB7XG4gIG1hcmdpbjogMjBweCAwO1xufVxuXG4uY29tbXVuaXR5IC5ibG9ncyxcbi5jb21tdW5pdHkgLmZvcnVtIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXgtd2lkdGg6IDQ2MHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmNvbW11bml0eSAuYmxvZ3MgcCB7XG4gIG1hcmdpbi1sZWZ0OiAxMzVweDtcbn1cblxuLmJsb2dzIHAge1xuICBmb250LXNpemU6IDE2cHg7XG59XG5cbi5ibG9ncy5wb3N0IGgzLnRpdGxlIHtcbiAgY29sb3I6ICMzNDM0MzQ7XG4gIGZvbnQtc2l6ZTogMThweDtcbiAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgbGluZS1oZWlnaHQ6IDEuNWVtO1xufVxuXG4uc2VjdGlvbi5ibG9ncyB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYjZhMzhkO1xuICBtYXJnaW46IDMwcHggMCAwO1xufVxuXG4uc2VjdGlvbi5mb3J1bSB7XG4gIG1hcmdpbjogMCAwIDAgMjBweDtcbn1cblxuLmJsb2dzIC5mdWxsIC5pdGVtLFxuLmZvcnVtIC5saXN0aW5nIC5pdGVtLFxuLmJsb2dzLnBvcHVsYXIgLml0ZW0sXG4uYmxvZ3Mub2ZmaWNpYWwgLml0ZW0ge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2I2YTM4ZDtcbiAgcGFkZGluZzogMzBweCAwO1xufVxuXG4uYmxvZ3MucG9wdWxhciAubWV0YSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLnNlY3Rpb24uYmxvZ3MgLmV4Y2VycHQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLmJsb2dzIC5mdWxsIC5idXR0b24uY29udGludWUsXG4uYmxvZ3MucG9zdCAuZm9vdGVyIGEgc3BhbiB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW46IDEwcHggMCAxMHB4IGF1dG87XG4gIG1heC13aWR0aDogMjYwcHg7XG4gIHBhZGRpbmc6IDEycHggMTBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbi5ibG9ncyAuZXhjZXJwdCAuZmlndXJlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBoZWlnaHQ6IDEyNXB4O1xuICBtYXJnaW46IDAgMTBweCA1cHggMDtcbiAgd2lkdGg6IDEyNXB4O1xufVxuXG4uY29tbXVuaXR5IC5zZWN0aW9uIC5mb290ZXIsXG4uYmxvZ3MgLnNlY3Rpb24gLmZvb3Rlcixcbi51c2VyLWJsb2cgLnNlY3Rpb24gLmZvb3Rlcixcbi5zZWN0aW9uLmZyaWVuZHMgLmZvb3Rlcixcbi51c2VycyAuZm9vdGVyIHtcbiAgdGV4dC1hbGlnbjogcmlnaHQ7XG59XG5cbi5jb21tdW5pdHktaHViIC52aWV3YWxsIHtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICBjb2xvcjogJHdoaXRlICFpbXBvcnRhbnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDQwcHg7XG4gIG1hcmdpbjogMTBweCAwIDEwcHggYXV0bztcbiAgcGFkZGluZy10b3A6IDE1cHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDE3NXB4O1xufVxuXG4uYmxvZ3MgLm5hdi5hY3Rpb25zIGE6aG92ZXIge1xuICBjb2xvcjogJHdoaXRlO1xufVxuXG4uc2VjdGlvbi5ibG9ncyA+IC5mb290ZXIgYSB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiA0MHB4O1xuICBtYXJnaW46IDEwcHggMCAxMHB4IGF1dG87XG4gIG1heC13aWR0aDogMjc1cHg7XG4gIHBhZGRpbmc6IDEycHggMjBweCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbi51c2VycyAjZmlsdGVyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51c2VycyAjZmlsdGVyIC5oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMTBweCAwIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51c2VycyAucGFuZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udXNlcnMgLnBhbmVsIGxpIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMTBweDtcbn1cblxuLnVzZXJzIC5jb21tZW50cy5hbGwge1xuICBtYXgtd2lkdGg6IDk2MHB4O1xufVxuXG4uYmxvZ3MgI2NvbnRhaW5lciB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICBwYWRkaW5nLXRvcDogODBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ibG9ncyAjbWFpbiB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAwIDIwcHggMCAwO1xuICBtYXgtd2lkdGg6IDYyMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJsb2dzIGgyLnRpdGxlLFxuLmNvbW11bml0eSBoMi50aXRsZSxcbi5ibG9nZ2VycyBoMi50aXRsZSxcbi51c2VycyBoMi50aXRsZSxcbiNwb3N0X2NvbW1lbnQgLnRpdGxlIHtcbiAgZm9udC1zaXplOiAyOHB4O1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xufVxuXG4jcG9zdF9jb21tZW50IC50aXRsZSB7XG4gIG1hcmdpbi1ib3R0b206IDE1cHg7XG59XG5cbi5ibG9ncyBoMy50aXRsZSBhIHtcbiAgY29sb3I6ICMzNDM0MzQgIWltcG9ydGFudDtcbiAgZm9udC1zaXplOiAxOHB4O1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4uYmxvZ3MgaDMudGl0bGUgYTpob3ZlciB7XG4gIGNvbG9yOiAkd2hpdGU7XG59XG5cbi5ibG9ncyAuc2VjdGlvbi5hbGwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMDtcbiAgbWF4LXdpZHRoOiA2MjBweDtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi5ibG9ncyAjYXNpZGUsXG4udXNlcnMgI2FzaWRlIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAwIDAgMCAyMHB4O1xuICBtYXgtd2lkdGg6IDMwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmJsb2dzIC50aHVtYnMge1xuICBtYXJnaW46IDMwcHggMCAwO1xuICBwYWRkaW5nOiAwO1xufVxuXG4udGh1bWJzIC5hdmF0YXIubWluaSB7XG4gIGhlaWdodDogNTZweDtcbiAgbWFyZ2luOiAycHggNHB4IDJweCAwO1xuICB3aWR0aDogNTZweDtcbn1cblxuLnRodW1icyAuYXZhdGFyLm1pbmkuZmlmdGgge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5cbi5ibG9ncy5vZmZpY2lhbCB7XG4gIG1hcmdpbjogNTBweCAwIDMwcHg7XG59XG5cbi5ibG9ncy5vZmZpY2lhbCAuYXJ0aWNsZSB7XG4gIGNvbG9yOiAjMzQzNDM0O1xufVxuXG4jYXNpZGUgLmJsb2dzLnBvcHVsYXIsXG4uYmxvZ3MucmVjZW50IHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgbWFyZ2luOiAwO1xufVxuXG4uYmxvZ3MucG9wdWxhciAuYXV0aG9yIHtcbiAgZGlzcGxheTogaW5saW5lO1xufVxuXG4uYmxvZ3MucG9wdWxhciAuYXV0aG9yIGEge1xuICBjb2xvcjogJGJsYWNrO1xuICBmb250LXdlaWdodDogODAwO1xufVxuXG4uYmxvZ3MucG9zdCAuYXJ0aWNsZSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51c2VycyAuYmxvZ2dlcnMucmVsYXRlZCB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi5ibG9ncy5wb3N0IC5hdmF0YXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbjogMCAxMHB4IDEwcHggMDtcbiAgbWF4LXdpZHRoOiAxMDBweDtcbn1cblxuLmJsb2dzLnBvc3QgLmF2YXRhciAuZGlzcGxheW5hbWUge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uYmxvZ3MucG9zdCAuY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1heC13aWR0aDogNTEwcHg7XG59XG5cbi8qIFBST0ZJTEUgUEFHRSAqL1xuI21haW4udXNlciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogcmlnaHQ7XG4gIG1heC13aWR0aDogNjAwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNtYWluLnVzZXIgLnNlY3Rpb24uYWJvdXQge1xuICBwYWRkaW5nOiAyMHB4IDA7XG59XG5cbiNtYWluLnVzZXIgLmFib3V0IC5oZWFkZXIsXG4jbWFpbi51c2VyIC5yZWNlbnQuYmxvZ3MgLmhlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cbiNhc2lkZS51c2VyIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDA7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jYXNpZGUudXNlciAubWVtYmVyLmRldGFpbHMge1xuICBwYWRkaW5nOiAwO1xufVxuXG4jYXNpZGUudXNlciAubWVtYmVyIC5oZWFkZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jYXNpZGUudXNlciAubWVtYmVyIC5hdmF0YXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWF4LWhlaWdodDogMzIwcHg7XG4gIG1heC13aWR0aDogMzIwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jYXNpZGUudXNlciAubWVtYmVyIC5hdmF0YXIgaW1nIHtcbiAgaGVpZ2h0OiAxMDAlO1xuICB3aWR0aDogMTAwJTtcbn1cblxuI2FzaWRlLnVzZXIgLmFjdGlvbnMge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jYXNpZGUudXNlciAuc29jaWFsIGxpIHtcbiAgYmFja2dyb3VuZDogJGJsYWNrO1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luOiAxMHB4IDA7XG4gIHBhZGRpbmc6IDE1cHggMjBweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICB3aWR0aDogNDglO1xufVxuXG4jZnJpZW5kLXJlcXVlc3Qge1xuICBmbG9hdDogbGVmdDtcbn1cblxuI3NlbmRfbWVzc2FnZSB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuI2FzaWRlLnVzZXIgLnNvY2lhbCBhIHtcbiAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xufVxuXG4jYXNpZGUudXNlciBwLmRldGFpbHMge1xuICBwYWRkaW5nOiAzMHB4IDA7XG59XG5cbiNhc2lkZS51c2VyIC5wcm9maWxlLmxpbmtzIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNiNmEzOGQ7XG4gIHBhZGRpbmc6IDE1cHggMDtcbn1cblxuI2FzaWRlLnVzZXIgLnByb2ZpbGUubGlua3MgLmxpc3Rpbmcge1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cbiNhc2lkZS51c2VyIC5wcm9maWxlLmxpbmtzIC5saW5rIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LXNpemU6IDIwcHg7XG4gIG1hcmdpbjogMCAxMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xufVxuXG4jYXNpZGUudXNlciAuZnJpZW5kcyAuZm9vdGVyIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLnVzZXItYmxvZyAuc2VjdGlvbi5hbGwge1xuICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbi8qIENPTlRFU1RTIFBBR0UgKi9cbi5jb250ZXN0cyAjbWFpbixcbi5jb250ZXN0cyAjYXNpZGUge1xuICBtYXJnaW46IDAgMCAwIDEwcHg7XG59XG5cbi5jb250ZXN0cy5jdXJyZW50IC5wYWdpbmF0aW9uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLmNvbnRlc3QgLmhlYWRlciB7XG4gIG1hcmdpbi10b3A6IDQwcHg7XG59XG5cbi8qKlxuICogICAgRk9PVEVSXG4gKiA9PT09PT09PT09PT09PT09PT09XG4qL1xuXG4jZm9vdGVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1pbi1oZWlnaHQ6IDk1cHg7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbiAgei1pbmRleDogOTk5O1xufVxuXG4jZm9vdGVyIC50ZXJtcyAqLFxuI2Zvb3RlciAjY29wcGEgKixcbiNmb290ZXIgI2NvcHlyaWdodCB7XG4gIGNvbG9yOiAkcmVkO1xuICBmb250LWZhbWlseTogJ2VkaXRvcnJlZ3VsYXInLCBzZXJpZjtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBmb250LXdlaWdodDogNDAwO1xuICBsaW5lLWhlaWdodDogMjBweDtcbn1cblxuI2Zvb3RlciAuY29weSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAxMHB4IDAgMCAwO1xufVxuXG4jZm9vdGVyIC5jb3B5IGE6aG92ZXIsXG4jZm9vdGVyICNjb3BwYSBhOmhvdmVyLFxuLnBvd2VyZWRieSBhOmhvdmVyIHtcbiAgY29sb3I6ICRncmV5O1xufVxuXG4jZm9vdGVyIC5wb3dlcmVkYnkgYSB7XG4gIGNvbG9yOiAkcmVkO1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuI2Zvb3RlciAuc29jaWFsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luOiAxMHB4IDAgMCAwO1xufVxuXG4ubWIyMCBzcGFuIHtcbiAgZm9udDogODAwIDE2cHgvMS4yIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbn1cblxuI2Zvb3RlciAuYW5nZWxzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiByaWdodDtcbiAgaGVpZ2h0OiA3NXB4O1xuICBtYXJnaW46IDAgMjBweCAwIDA7XG4gIHdpZHRoOiA4NXB4O1xufVxuXG4jZm9vdGVyIC5zb2NpYWwgbGkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1hcmdpbjogMTVweCA4cHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbiNmb290ZXIgLnNvY2lhbCBhIHtcbiAgZm9udC1zaXplOiAzMHB4O1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbiNmb290ZXIgLmNyb3dkYWxidW0ge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAyNnB4O1xuICB3aWR0aDogNzBweDtcbn1cblxuI2Zvb3RlciAuaWNvbi1jcm93ZGFsYnVtIHtcbiAgZm9udC1zaXplOiA3MHB4O1xuICBsZWZ0OiAwO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbiNmb290ZXIgLmNvcHksXG4jZm9vdGVyIC5hbmdlbHMsXG4jZm9vdGVyIC5zb2NpYWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IG5vbmU7XG4gIG1hcmdpbjogMCBhdXRvIDEwcHg7XG59XG5cbi8qKlxuICogICBJbmZpbml0ZSBTY3JvbGwgLyBQYWdpbmF0aW9uXG4gKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gKlxuKi9cblxuLnVzZXJzIC5wYWdpbmF0aW9uIC5hY3Rpb25zIGEsXG4uYmxvZ3MgLnBhZ2luYXRpb24gLmFjdGlvbnMgYSB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgY29sb3I6ICR3aGl0ZSAhaW1wb3J0YW50O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogNDBweDtcbiAgbWFyZ2luOiAxMHB4IDAgMTBweCBhdXRvO1xuICBwYWRkaW5nLXRvcDogMTVweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwcHg7XG59XG5cbi51c2VycyAucGFnZXMsXG4uYmxvZ3MgLnBhZ2VzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51c2VycyAucmVzdWx0cyxcbi5ibG9ncyAucmVzdWx0cyxcbi51c2VycyAubG9hZGluZyB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi51c2VycyAuYWN0aW9ucy5mb3J0aCxcbi5ibG9ncyAuYWN0aW9ucy5mb3J0aCB7XG4gIGZsb2F0OiByaWdodDtcbn1cblxuLnVzZXJzIC5hY3Rpb25zLmJhY2ssXG4uYmxvZ3MgLmFjdGlvbnMuYmFjayB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuXG4ubmV3cyAubmF2LnBhZ2luYXRpb24sXG4uc2VjdGlvbi51cGNvbWluZyA+IC5mb290ZXIsXG4uZXZlbnRzIC5uYXYucGFnaW5hdGlvbixcbi5zZWN0aW9uLmdhbGxlcnkgLnBhZ2luYXRpb24ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4uZXZlbnRzIGEuaW5maW5pdGUtc2Nyb2xsLFxuLm5ld3MgYS5pbmZpbml0ZS1zY3JvbGwsXG4ubWVkaWEgYS5pbmZpbml0ZS1zY3JvbGwge1xuICBoZWlnaHQ6IDg2cHg7XG4gIHBhZGRpbmc6IDIwcHggMDtcbn1cblxuYS5pbmZpbml0ZS1zY3JvbGwge1xuICBiYWNrZ3JvdW5kOiAkZ3JleTtcbiAgY29sb3I6ICR3aGl0ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNTVweDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIG1hcmdpbjogMCBhdXRvIDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDMwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogMTAwJTtcbn1cblxuLmluZmluaXRlLXNjcm9sbC5lbmFibGVkIHAsXG4uZGlzYWJsZWQge1xuICBmb250LXNpemU6IDE2cHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgbGluZS1oZWlnaHQ6IDI1cHg7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG5cbmEuaW5maW5pdGUtc2Nyb2xsLmRpc2FibGVkIHtcbiAgcGFkZGluZzogMzVweCAwO1xufVxuXG4ubmV3cyBhLmluZmluaXRlLXNjcm9sbC5kaXNhYmxlZCB7XG4gIHBhZGRpbmc6IDIycHggMDtcbn1cblxuLmluZmluaXRlLXNjcm9sbC5sb2FkaW5nIHAge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG5hLmluZmluaXRlLXNjcm9sbC5lbmFibGVkOjphZnRlciB7XG4gIGZvbnQtc2l6ZTogNDBweDtcbiAgbGluZS1oZWlnaHQ6IDA7XG59XG5cbi5sb2FkaW5nIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHJlZDtcbiAgaGVpZ2h0OiAzMHB4O1xuICBtYXJnaW46IC0yMHB4IDAgMCAtMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWluZGVudDogLTk5OXB4O1xuICB3aWR0aDogMzBweDtcbn1cblxuLmxvYWRpbmc6OmJlZm9yZSxcbi5sb2FkaW5nOjphZnRlciB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogNDJweDtcbiAgbGVmdDogNTAlO1xuICBtYXJnaW46IC0yMXB4IDAgMCAtMjFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDUwJTtcbiAgd2lkdGg6IDQycHg7XG4gIHotaW5kZXg6IDI7XG59XG5cbi5sb2FkaW5nOjpiZWZvcmUge1xuICBhbmltYXRpb246IGV4cGFuZCAxLjZzIGxpbmVhciBpbmZpbml0ZSBib3RoO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzYyZjJkO1xufVxuXG4ubG9hZGluZzo6YWZ0ZXIge1xuICBhbmltYXRpb246IGV4cGFuZCAxLjZzIGxpbmVhciAwLjhzIGluZmluaXRlIGJvdGg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xufVxuXG4jZmFuY3lib3gtd3JhcCB7XG4gIG1heC13aWR0aDogOTYwcHg7XG4gIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbn1cblxuI2ZhbmN5Ym94LWlubmVyIHtcbiAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbiAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbn1cblxuLyoqXG4gKiBNYWlsaW5nIExpc3RcbiAqID09PT09PT09PT09PVxuKi9cbi5uZXdzbGV0dGVyLXdyYXBwZXIge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4jbmV3c2xldHRlciB7XG4gIGJhY2tncm91bmQ6ICRibGFjaztcbiAgcGFkZGluZzogMjBweDtcbiAgd2lkdGg6IDQwMHB4O1xufVxuXG4jbmV3c2xldHRlciAudGl0bGUge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXk7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIG1hcmdpbjogLTIwcHggLTIwcHggMjBweDtcbiAgcGFkZGluZzogMjBweDtcbn1cblxuI25ld3NsZXR0ZXIgcCB7XG4gIG1hcmdpbjogMCAwIDIwcHg7XG4gIHBhZGRpbmc6IDA7XG59XG5cbiNuZXdzbGV0dGVyIHAubGFzdCB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JleTtcbiAgbWFyZ2luOiAwIC0yMHB4IDA7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHBhZGRpbmctYm90dG9tOiAwO1xufVxuXG4jbmV3c2xldHRlciAubWMtZmllbGQtZ3JvdXAge1xuICBtYXJnaW46IDAgMCAyMHB4O1xufVxuXG4jbmV3c2xldHRlciBsYWJlbCB7XG4gIGNvbG9yOiAjYzBjMGMwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udDogMTAwIDE0cHgvMSBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDAgMCA4cHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jbmV3c2xldHRlciBpbnB1dCxcbiNuZXdzbGV0dGVyIC5zZWxlY3Qtd3JhcHBlciB7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgYm9yZGVyOiAwO1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udDogMTAwIDE0cHgvMSBzYW5zLXNlcmlmO1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4jbmV3c2xldHRlciAuc2VsZWN0LXdyYXBwZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nOiAwO1xufVxuXG4jbmV3c2xldHRlciBzZWxlY3Qge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQ6ICR3aGl0ZTtcbiAgYm9yZGVyOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udDogMTAwIDE0cHgvMS4xIHNhbnMtc2VyaWY7XG4gIGhlaWdodDogMTAwJTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAxMHB4O1xuICB3aWR0aDogMTAwJTtcbn1cblxuI25ld3NsZXR0ZXIgaW5wdXQ6Zm9jdXMsXG4jbmV3c2xldHRlciBzZWxlY3Q6Zm9jdXMge1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIG9wYWNpdHk6IDE7XG59XG5cbiNuZXdzbGV0dGVyIC5jbGVhciB7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkZ3JleTtcbiAgbWFyZ2luOiAyMHB4IC0yMHB4IC0yMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xufVxuXG4jbmV3c2xldHRlciAuYnV0dG9uIHtcbiAgYmFja2dyb3VuZDogI2Y2MDtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiA1cHg7XG4gIGNvbG9yOiAkd2hpdGU7IC8qIE1hdGNoIHRvIHNpdGUgdGhlbWUgKi9cbiAgY3Vyc29yOiBwb2ludGVyO1xuICBmb250LXNpemU6IDE1cHg7XG4gIG9wYWNpdHk6IDE7XG4gIHBhZGRpbmc6IDEwcHggNXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQgMTUwbXMgZWFzZSwgY29sb3IgMTUwbXMgZWFzZTtcbiAgd2lkdGg6IDEwMCU7XG59XG5cbiNuZXdzbGV0dGVyIC5idXR0b246aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZmY4NzM3O1xufVxuXG4jbmV3c2xldHRlciAuZ2MtaW52YWxpZC1hZ2UgLmdjLXZhbGlkYXRlLWFnZSxcbiNuZXdzbGV0dGVyIC5nYy1pbnZhbGlkLWVtYWlsIC5nYy12YWxpZGF0ZS1lbWFpbCB7XG4gIGJveC1zaGFkb3c6IDAgMCAwIDJweCAjYzAwO1xufVxuXG4jbmV3c2xldHRlciAuY2hlY2tib3gtcm93IGlucHV0LFxuI25ld3NsZXR0ZXIgLmNoZWNrYm94LXJvdyBsYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuI25ld3NsZXR0ZXIgLmNoZWNrYm94LXJvdyBsYWJlbCB7XG4gIGZvbnQtc2l6ZTogMTRweDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbn1cblxuLyogQmxvZyBFZGl0b3IgKi9cbiNHQyAuR0NfYmxvZ3MuR0NfbW9kaWZ5IC50ZXh0LFxuI0dDIC5HQ19ibG9ncy5HQ19tb2RpZnkgLmlucHV0IHtcbiAgbWFyZ2luOiAwIDAgMTBweCAwO1xuICBwYWRkaW5nOiAwIDAgMTBweCAwO1xufVxuXG4jR0MgLkdDX2Jsb2dzLkdDX21vZGlmeSAudGV4dCBsYWJlbCxcbiNHQyAuR0NfYmxvZ3MuR0NfbW9kaWZ5IC5pbnB1dCBsYWJlbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbm9uZTtcbiAgZm9udC1zaXplOiAxMnB4O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcGFkZGluZzogMCAwIDVweCAwO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB3aWR0aDogYXV0bztcbn1cblxuI0dDIC5HQ19ibG9ncyAjbWFya0l0VXBCb2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG4jR0MgLkdDX2Jsb2dzIC5tYXJrSXRVcEhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuI0dDIC5HQ19ibG9ncyBmaWVsZHNldCA+IHVsIHtcbiAgcGFkZGluZy10b3A6IDYwcHg7XG59XG5cbi8qKlxuICogICAgTWVkaWEgUXVlcmllc1xuICogPT09PT09PT09PT09PT09PT09PT09PT09XG4gKlxuKi9cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTA1cHgpIHtcbiAgI2hlYWRlciAubmF2IGxpIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAucmVnaXN0ZXIsXG4gIC5sb2dvdXQsXG4gIC5hY2NvdW50LFxuICAubG9naW4ge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLmJpb2dyYXBoeSAuaW5mbyB7XG4gICAgbWFyZ2luOiAwIDE1cHg7XG4gIH1cblxuICAvKiBSZWxlYXNlcyAqL1xuICAjbWFpbiA+IC5zZWN0aW9uLnJlbGVhc2Uge1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgfVxuXG4gIC5yZWxlYXNlLmNvdmVyLFxuICAucmVsZWFzZSAuZGV0YWlscyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luOiAyMHB4IGF1dG87XG4gIH1cblxuICAucmVsZWFzZSAudHJhY2tubyB7XG4gICAgcGFkZGluZzogMCA1cHggMCAwO1xuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTA5MHB4KSB7XG4gICNoZWFkZXIgLm5hdiBsaSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgI2hlYWRlciAubmF2IGxpLmV2ZW50cyB1bC50b2dnbGUge1xuICAgIG1hcmdpbi1sZWZ0OiAxMDBweDtcbiAgfVxuXG4gIC5yZWdpc3RlcixcbiAgLmxvZ291dCxcbiAgLmFjY291bnQsXG4gIC5sb2dpbiB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAvKiBIT01FICovXG4gIC5ob21lICNwYWdlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgLyogUkVMRUFTRVMgKi9cbiAgLnJlbGVhc2VzIC5iZyB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8qIEVWRU5UUyAqL1xuICAuZXZlbnRzIC53cmFwcGVyIHtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG5cbiAgLnVwY29taW5nIC5oZWFkZXIge1xuICAgIHBhZGRpbmctbGVmdDogMTVweDtcbiAgfVxuXG4gIC8qIGJpb2dyYXBoeSAqL1xuICAuYmlvZ3JhcGh5ICNwYWdlIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5ODBweCkge1xuICAvKiBORVdTICovXG4gIC5uZXdzID4gLmZ1bGwgLml0ZW0ge1xuICAgIGhlaWdodDogODAwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5uZXdzIC5pdGVtOmhvdmVyIC5mb290ZXIge1xuICAgIGJvdHRvbTogMDtcbiAgfVxuXG4gIC5uZXdzLmFsbCAuaXRlbSAuZm9vdGVyIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLm5ld3MuYWxsIC5maWd1cmUge1xuICAgIG1pbi1oZWlnaHQ6IDA7XG4gIH1cblxuICAvKiBDb21tdW5pdHkgKi9cbiAgLmNvbW11bml0eSAudGh1bWJzLFxuICAudXNlcnMgLnRodW1icyB7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAudGh1bWJzIC5hdmF0YXIuZnVsbCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIGhlaWdodDogMTI1cHg7XG4gICAgbWFyZ2luOiAwIDE0cHggMTJweCAwO1xuICAgIHdpZHRoOiAxMjVweDtcbiAgfVxuXG4gIC5hdmF0YXIuZnVsbC5zZXZlbnRoIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDE0cHg7XG4gIH1cblxuICAuc2VjdGlvbi51c2VycyxcbiAgLmNvbW11bml0eSAuYmxvZ3MsXG4gIC5jb21tdW5pdHkgLmZvcnVtIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgfVxuXG4gIC5ibG9ncyAjbWFpbiB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLnVzZXJzICNtYWluLnVzZXItbGlzdCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgfVxufVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIC8qIEdsb2JhbCAqL1xuICBib2R5IHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAyNSUgMCU7XG4gIH1cblxuICAjcGFnZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAjaGVhZGVyIHtcbiAgICBoZWlnaHQ6IDY1cHg7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgfVxuXG4gICNoZWFkZXIgLmNsaWVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cblxuICAubG9nbyB7XG4gICAgaGVpZ2h0OiA0MHB4O1xuICAgIG1hcmdpbjogMTJweCAxMHB4O1xuICAgIHdpZHRoOiA5MHB4O1xuICB9XG5cbiAgI2hlYWRlciAubmF2IHtcbiAgICBoZWlnaHQ6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA2NXB4O1xuICAgIHRyYW5zaXRpb246IGFsbCAyNTBtcyBlYXNlLWluLW91dDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAxMDAwO1xuICB9XG5cbiAgI2hlYWRlciAubmF2LmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkd2hpdGUsIDAuOTUpO1xuICAgIGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkZ3JleUxpZ2h0O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAwIDAgMzBweCAwO1xuICB9XG5cbiAgI2hlYWRlciAubGlua3Mge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICNoZWFkZXIgLmFjY291bnQtbGlua3Mge1xuICAgIGJvdHRvbTogMDtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiBhdXRvO1xuICB9XG5cbiAgI2hlYWRlciAuYWNjb3VudC1saW5rcyBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgI2hlYWRlciAubW9iaWxlIHtcbiAgICBjb2xvcjogJHJlZDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGluZS1oZWlnaHQ6IDU1cHg7XG4gICAgcGFkZGluZzogNXB4IDAgMDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAyNTBtcztcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICB9XG4gIH1cblxuICAubW9iaWxlLmljb24tbWVudTo6YmVmb3JlIHtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBtYXJnaW46IDAgMTBweDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiA1cHg7XG4gIH1cblxuICAjaGVhZGVyIC5saW5rcyBsaSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgI2hlYWRlciAubmF2IGEsXG4gICNoZWFkZXIgLm5hdiBzcGFuIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgcmdiYSgkYmxhY2ssIDAuMDUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICAgIHBhZGRpbmc6IDAgMCAwIDIwcHg7XG4gIH1cblxuICAjaGVhZGVyIC5uYXYgc3BhbiB7XG4gICAgcGFkZGluZzogMTBweCAwIDEwcHggMjBweDtcblxuICAgIGlmcmFtZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG4gIH1cblxuICBsaS5yZWdpc3RlcixcbiAgbGkubG9nb3V0LFxuICBsaS5hY2NvdW50LFxuICBsaS5sb2dpbiB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAjaGVhZGVyIC5uYXYgbGkuZXZlbnRzIHVsLnRvZ2dsZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICBwb3NpdGlvbjogc3RhdGljO1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gIH1cblxuICAjaGVhZGVyIC5uYXYgbGkuZXZlbnRzIHVsLnRvZ2dsZSBhIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG5cbiAgYm9keSAjbWFpbiAjR0Mge1xuICAgIG1pbi13aWR0aDogMjAwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvKiBORVdTICovXG4gIC5uZXdzIC5zdG9yeSxcbiAgLm5ld3MgI2FzaWRlIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAubmV3cy5zdG9yeSA+IC5hcnRpY2xlIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cblxuICAubmV3cy5wb3B1bGFyID4gLmhlYWRlciB7XG4gICAgbWFyZ2luOiAwIDE1cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuXG4gIC5uZXdzLnBvcHVsYXIgLnZpZXdhbGwge1xuICAgIG1hcmdpbjogMTBweCBhdXRvIDUwcHg7XG4gICAgd2lkdGg6IDE1MHB4O1xuICB9XG5cbiAgLm5ld3MgI3Bvc3RfY29tbWVudCB7XG4gICAgcGFkZGluZzogMzVweCAxNXB4O1xuICB9XG5cbiAgLm5ld3MgI2NvbW1lbnRzIHtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gIH1cblxuICAubmV3cyAjZm9vdGVyIHtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICAvKiBFVkVOVFMgKi9cbiAgLmV2ZW50cyAuZnVsbCAudGlja2V0IHtcbiAgICBtYXJnaW46IDVweCAwO1xuICB9XG5cbiAgLmV2ZW50cyAjcGFnZSB7XG4gICAgbWFyZ2luOiAzMHB4IDAgNTBweDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMDtcbiAgfVxuXG4gIC5ldmVudHMgLmV2ZW50IHtcbiAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICB9XG5cbiAgLyogTUVESUEgKi9cbiAgLmZlYXR1cmVkLXBob3RvLFxuICAucGhvdG8uY29tcGFjdCAuZ2FsbGVyaWVzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5nYWxsZXJ5IC5nYWxsZXJpZXMgLml0ZW0sXG4gIC5nYWxsZXJ5IC5hc3NldHMgLml0ZW0ge1xuICAgIHBhZGRpbmctYm90dG9tOiA1MCU7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxuXG4gIC5zZWN0aW9uLmZlYXR1cmVkICN2aWRlb19wbGF5ZXIge1xuICAgIGhlaWdodDogMDtcbiAgICBwYWRkaW5nOiAyMHB4IDAgNTYuMjUlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC5zZWN0aW9uLmZlYXR1cmVkICN2aWRlb19wbGF5ZXIgaWZyYW1lIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbGVmdDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLyogQmlvZ3JhcGh5ICovXG4gIC5iaW9ncmFwaHkgI3BhZ2Uge1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gIH1cblxuICAuYmlvZ3JhcGh5ICN0d2l0dGVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgfVxuXG4gIC5iaW9ncmFwaHkgI2N1c3RvbS1wYWdlIHtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgfVxuXG4gIC8qIEJsb2dzICovXG4gIC5ibG9ncyAjbWFpbixcbiAgLmJsb2dzICNhc2lkZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAzMHB4IDE1cHggMDtcbiAgfVxuXG4gIC5ibG9ncyAuc2VjdGlvbi5hbGwge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIC51c2VycyAuc2VjdGlvbi5ibG9ncyB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLyogUHJvZmlsZXMgKi9cbiAgI21haW4udXNlcixcbiAgI2FzaWRlLnVzZXIsXG4gIC51c2VycyAjYXNpZGUge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAxNXB4O1xuICB9XG5cbiAgI2FzaWRlLnVzZXIgLmF2YXRhciB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gIH1cblxuICAudXNlcnMgI21haW4udXNlci1ibG9nIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMCAxNXB4IDA7XG4gIH1cblxuICAuYmxvZ3MucG9zdCAuY29udGVudCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWF4LXdpZHRoOiA4NSU7XG4gIH1cblxuICAvKiBDT05URVNUUyAqL1xuICAuY29udGVzdHMgI21haW4sXG4gIC5jb250ZXN0cyAjYXNpZGUge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwIDE1cHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAuZXZlbnRzICN1bmlmaWVkID4gI0dDIGZpZWxkc2V0IC50aWNrZXQuZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NTBweCkge1xuICAjaGVhZGVyIC5tb2JpbGUge1xuICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICB9XG5cbiAgLm5ld3Mge1xuICAgIC5hbGwge1xuICAgICAgLmZ1bGwge1xuICAgICAgICAuaXRlbSB7XG4gICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgIG1pbi1oZWlnaHQ6IDUwMHB4O1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgLmZvb3RlciB7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogRVZFTlRTICovXG4gIC5ldmVudHMgLmZ1bGwgdHIge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzMyZTI4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgfVxuXG4gIC5ldmVudHMgLmZ1bGwgdGQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogNXB4IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLmV2ZW50cyAuZnVsbCAudGlja2V0cyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLyogTUVESUEgKi9cbiAgLmdhbGxlcnkgLmFzc2V0cyAuaXRlbSB7XG4gICAgcGFkZGluZy1ib3R0b206IDkwJTtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gIC8qIFJFTEVBU0VTICovXG4gIC5yZWxlYXNlcyAuZnVsbCAuaXRlbSB7XG4gICAgcGFkZGluZzogMCAxMHB4O1xuICAgIHdpZHRoOiA1MCU7XG4gIH1cblxuICAucmVsZWFzZXMgLmZ1bGwgLmZpZ3VyZSB7XG4gICAgbWFyZ2luOiAwO1xuICB9XG5cbiAgLnJlbGVhc2UgdGQudGl0bGUge1xuICAgIHBhZGRpbmc6IDAgMTVweDtcbiAgfVxuXG4gIC8qIFVTRVJTICovXG4gIC5ibG9ncy5wb3N0IC5jb250ZW50LFxuICAuYmxvZ3MucG9zdCAuYXZhdGFyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgfVxuXG4gIC5ibG9ncy5wb3N0IC5jb250ZW50IHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAudXNlcnMgI2ZpbHRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbiAgLnVzZXJzICNmaWx0ZXIgLmhlYWRlciB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gIH1cblxuICAudXNlcnMgI2ZpbHRlciAucGFuZWwge1xuICAgIGZsb2F0OiBub25lO1xuICB9XG5cbiAgLyogR0MgU3R1ZmYgKi9cbiAgYm9keSAjbWFpbiAjR0MgeyBtaW4td2lkdGg6IDA7IH1cblxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgLkdDX25hdmlnYXRpb24sXG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyA+IC5HQ192aWV3LFxuICAjR0MgI21hcmtJdFVwQm9keSB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgI0dDLmZvcnVtIGZvcm0gLmlucHV0ICN0aXRsZSxcbiAgI3JlY2FwdGNoYV9pbWFnZSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgfVxuXG4gICNyZWNhcHRjaGFfcmVzcG9uc2VfZmllbGQge1xuICAgIHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7XG4gIH1cblxuICAjcmVjYXB0Y2hhX3RhYmxlID4gdGJvZHkgdGQge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG4gICNHQy5HQ19wcm9kdWN0IHsgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgfVxuXG4gICNHQy5HQ19wcm9kdWN0IC5HQ19wcm9kdWN0X2Rlc2NyaXB0aW9uLFxuICAjR0MuR0NfcHJvZHVjdCAuR0NfcHJvZHVjdF9wdXJjaGFzZSxcbiAgI0dDICNtYXJrSXRVcEJvZHkgI2JvZHkge1xuICAgIG1hcmdpbjogMTBweCAxJTtcbiAgICB3aWR0aDogOTglO1xuICB9XG4gIC8vICNHQy5HQ19zdG9yZSB0YWJsZSB7IGZvbnQtc2l6ZTogOHB4OyB9XG4gICNHQyBidXR0b24ge1xuICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgfVxuXG4gICNHQyAjR0NfY2hlY2tvdXRfcHJvZ3Jlc3MgbGkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDVweCA0JSA1cHggMiU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gICNHQyBmaWVsZHNldCB1bCB7IHBhZGRpbmctdG9wOiA5MHB4OyB9XG5cbiAgI0dDIC5pbnB1dCBsYWJlbCxcbiAgI0dDIC5zZWxlY3QgbGFiZWwsXG4gICNHQyAuY2FwdGNoYSBsYWJlbCxcbiAgI0dDIC50ZXh0IGxhYmVsIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgI0dDIC5HQ19hZGRyZXNzLFxuICAjR0MgLkdDX3BheW1lbnQge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiA5MyU7XG4gIH1cblxuICAjR0MgaW5wdXRbdHlwZT0ndGV4dCddLFxuICAjR0MgaW5wdXRbdHlwZT0ncGFzc3dvcmQnXSxcbiAgI0dDIGlucHV0W3R5cGU9J2VtYWlsJ10sXG4gICNHQyBpbnB1dFt0eXBlPSd0ZWwnXSxcbiAgI0dDIGlucHV0W3R5cGU9J2RhdGUnXSxcbiAgI0dDIHRleHRhcmVhLFxuICAudWktZGlhbG9nIHRleHRhcmVhIHtcbiAgICB3aWR0aDogOTMlO1xuICB9XG4gICNHQyAuR0Nfc2hpcHBpbmcgLkdDX3NhbWVfYXNfYmlsbGluZyB7IGxlZnQ6IDA7IH1cblxuICAjR0MgLmFjdGlvbnMgbGksXG4gICNHQyAuYWN0aW9ucyAucHJldiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG5cbiAgI0dDLkdDX3Byb2R1Y3QgLkdDX3Byb2R1Y3RfcHVyY2hhc2UgLnB1cmNoYXNlX2Zvcm0gLnNlbGVjdCB7IG1hcmdpbjogMDsgfVxuICAjR0MuR0NfY2FydCBoMSB7IGxpbmUtaGVpZ2h0OiAxZW07IH1cblxuICAuZXZlbnRzICN1bmlmaWVkID4gI0dDIGZpZWxkc2V0IC50aWNrZXQuZGVzY3JpcHRpb24ge1xuICAgIG1hcmdpbi10b3A6IDUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAvKiBHbG9iYWwgKi9cblxuICAvKiBIb21lICovXG4gIC5ob21lIC5jb21wYWN0IHRkIHtcbiAgICBmb250LXNpemU6IDE1cHg7XG4gICAgcGFkZGluZy10b3A6IDEwcHg7XG4gIH1cblxuICAvKiBNRURJQSAqL1xuICAudmlkZW8uY29tcGFjdCAuZ2FsbGVyaWVzLFxuICAucGhvdG8uY29tcGFjdCAuZ2FsbGVyaWVzIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gIC52aWRlby5jb21wYWN0IC5nYWxsZXJpZXMgbGksXG4gIC5waG90by5jb21wYWN0IC5nYWxsZXJpZXMgbGksXG4gIC5nYWxsZXJ5IC5nYWxsZXJpZXMgLml0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG5cbiAgLyogUkVMRUFTRVMgKi9cbiAgLnJlbGVhc2UgYS5wbGF5IHsgZGlzcGxheTogbm9uZTsgfVxuXG4gICNmb290ZXIgLnNvY2lhbCAuaGFzaHRhZyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gIH1cblxuICAvKiBORVdTTEVUVEVSICovXG4gICNuZXdzbGV0dGVyIHtcbiAgICB3aWR0aDogMjUwcHg7XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC1kZXZpY2Utd2lkdGg6IDQ4MXB4KSB7XG4gIGJvZHkge1xuICAgICYuc3RvcmUge1xuICAgICAgI2hlYWRlciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIC5tb2JpbGUge1xuICAgICAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDcwcHgpIHtcbiAgLyogTkVXUyAqL1xuICAubmV3cy5hbGwgaDMudGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgfVxuXG4gIC5uZXdzIC5jb21tZW50cyAuZm9vdGVyIGxpIHtcbiAgICBtYXJnaW46IDVweDtcbiAgfVxuXG4gIC8qIFVTRVJTICovXG4gIC5ibG9ncyAuZXhjZXJwdCAuZmlndXJlIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgfVxuXG4gIC5ibG9ncyAuZXhjZXJwdCAuaGVhZGVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cblxuICAuYmxvZ3MgcCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cblxuICAuYmxvZ3MgLmZ1bGwgLmJ1dHRvbi5jb250aW51ZSxcbiAgLmJsb2dzLnBvc3QgLmZvb3RlciBhIHNwYW4ge1xuICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICB9XG5cbiAgLyogRm9vdGVyICovXG4gICNmb290ZXIge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cblxuICAjZm9vdGVyIC5zb2NpYWwgbGkge1xuICAgIG1hcmdpbjogMTVweCA4cHg7XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAzMzBweCkge1xuICAudXNlcnMgI2ZpbHRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC5ldmVudHMgI3VuaWZpZWQgPiAjR0MgZmllbGRzZXQgLnRpY2tldC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luLXRvcDogNjVweDtcbiAgfVxufVxuIiwiLyohIEdlbmVyYXRlZCBieSBGb250IFNxdWlycmVsIChodHRwczovL3d3dy5mb250c3F1aXJyZWwuY29tKSBvbiBGZWJydWFyeSAxLCAyMDE5ICovXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdlZGl0b3Jib2xkJztcbiAgc3JjOiB1cmwoJy4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL2VkaXRvci9pbmRpYW5fdHlwZV9mb3VuZHJ5Xy1fZWRpdG9yX2JvbGQtd2ViZm9udC53b2ZmMicpIGZvcm1hdCgnd29mZjInKSxcbiAgICAgICB1cmwoJy4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL2VkaXRvci9pbmRpYW5fdHlwZV9mb3VuZHJ5Xy1fZWRpdG9yX2JvbGQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdlZGl0b3JleHRyYWJvbGQnO1xuICBzcmM6IHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvZWRpdG9yL2luZGlhbl90eXBlX2ZvdW5kcnlfLV9lZGl0b3JfZXh0cmFib2xkLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgdXJsKCcuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS9lZGl0b3IvaW5kaWFuX3R5cGVfZm91bmRyeV8tX2VkaXRvcl9leHRyYWJvbGQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdlZGl0b3JsaWdodCc7XG4gIHNyYzogdXJsKCcuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS9lZGl0b3IvaW5kaWFuX3R5cGVfZm91bmRyeV8tX2VkaXRvcl9saWdodC13ZWJmb250LndvZmYyJykgZm9ybWF0KCd3b2ZmMicpLFxuICAgICAgIHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvZWRpdG9yL2luZGlhbl90eXBlX2ZvdW5kcnlfLV9lZGl0b3JfbGlnaHQtd2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdlZGl0b3JtZWRpdW0nO1xuICBzcmM6IHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvZWRpdG9yL2luZGlhbl90eXBlX2ZvdW5kcnlfLV9lZGl0b3JfbWVkaXVtLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgdXJsKCcuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS9lZGl0b3IvaW5kaWFuX3R5cGVfZm91bmRyeV8tX2VkaXRvcl9tZWRpdW0td2ViZm9udC53b2ZmJykgZm9ybWF0KCd3b2ZmJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcblxufVxuXG5cblxuXG5AZm9udC1mYWNlIHtcbiAgZm9udC1mYW1pbHk6ICdlZGl0b3JyZWd1bGFyJztcbiAgc3JjOiB1cmwoJy4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL2VkaXRvci9pbmRpYW5fdHlwZV9mb3VuZHJ5Xy1fZWRpdG9yLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgdXJsKCcuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS9lZGl0b3IvaW5kaWFuX3R5cGVfZm91bmRyeV8tX2VkaXRvci13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuXG59IiwiQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnd3Utc29jaWFsLWljb25zJztcbiAgc3JjOlxuICAgIHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvd3Utc29jaWFsLWljb25zL2NpcmNsZS93dS1zb2NpYWwtaWNvbnMudHRmP3E5aGtxMycpIGZvcm1hdCgndHJ1ZXR5cGUnKSxcbiAgICB1cmwoJy4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL3d1LXNvY2lhbC1pY29ucy9jaXJjbGUvd3Utc29jaWFsLWljb25zLndvZmY/cTloa3EzJykgZm9ybWF0KCd3b2ZmJyksXG4gICAgdXJsKCcuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS93dS1zb2NpYWwtaWNvbnMvY2lyY2xlL3d1LXNvY2lhbC1pY29ucy5zdmc/cTloa3EzI3d1LXNvY2lhbC1pY29ucycpIGZvcm1hdCgnc3ZnJyk7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuW2NsYXNzXj1cInd1LXNvY2lhbC1cIl0sIFtjbGFzcyo9XCIgd3Utc29jaWFsLVwiXSB7XG4gIC8qIHVzZSAhaW1wb3J0YW50IHRvIHByZXZlbnQgaXNzdWVzIHdpdGggYnJvd3NlciBleHRlbnNpb25zIHRoYXQgY2hhbmdlIGZvbnRzICovXG4gIGZvbnQtZmFtaWx5OiAnd3Utc29jaWFsLWljb25zJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBmb250LWRpc3BsYXk6IHN3YXA7XG5cbiAgLyogQmV0dGVyIEZvbnQgUmVuZGVyaW5nID09PT09PT09PT09ICovXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4ud3Utc29jaWFsLWdpcGh5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFkXCI7XG59XG4ud3Utc29jaWFsLXRpa3RvazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxY1wiO1xufVxuLnd1LXNvY2lhbC1saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMFwiO1xufVxuLnd1LXNvY2lhbC1zb3VuZGNsb3VkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDAyXCI7XG59XG4ud3Utc29jaWFsLXNwb3RpZnk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU2MDJcIjtcbn1cbi53dS1zb2NpYWwtdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTYwM1wiO1xufVxuLnd1LXNvY2lhbC1nb29nbGVwbHVzOmJlZm9yZSxcbi53dS1zb2NpYWwtZ29vZ2xlLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU2MDRcIjtcbn1cbi53dS1zb2NpYWwteW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTYwNVwiO1xufVxuLnd1LXNvY2lhbC1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU2MGZcIjtcbn1cbi53dS1zb2NpYWwtcGludGVyZXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlNjEwXCI7XG59XG4ud3Utc29jaWFsLXZpbWVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG4ud3Utc29jaWFsLWFwcGxlOmJlZm9yZSxcbi53dS1zb2NpYWwtYXBwbGUtbXVzaWM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDJcIjtcbn1cbi53dS1zb2NpYWwtVmV2bzpiZWZvcmUsXG4ud3Utc29jaWFsLXZldm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cbi53dS1zb2NpYWwtbWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG4ud3Utc29jaWFsLWluc3RhZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNVwiO1xufVxuLnd1LXNvY2lhbC1tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XG59XG4ud3Utc29jaWFsLXR1bWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiO1xufVxuLnd1LXNvY2lhbC1zbmFwY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOFwiO1xufVxuLnd1LXNvY2lhbC12aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG59XG4ud3Utc29jaWFsLW15c3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjtcbn1cbi53dS1zb2NpYWwtd2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjtcbn1cbi53dS1zb2NpYWwta2lrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOGZjXCI7XG59XG4ud3Utc29jaWFsLWdvb2dsZXBsYXk6YmVmb3JlLFxuLnd1LXNvY2lhbC1nb29nbGUtcGxheTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwY1wiO1xufVxuLnd1LXNvY2lhbC1mYW5zOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBkXCI7XG59XG4ud3Utc29jaWFsLWZhY2Vib29rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBlXCI7XG59XG4ud3Utc29jaWFsLWxpbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGZcIjtcbn1cbi53dS1zb2NpYWwtYW1hem9uOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEwXCI7XG59XG4ud3Utc29jaWFsLWJrc3RnOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTExXCI7XG59XG4ud3Utc29jaWFsLWl0dW5lczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMlwiO1xufVxuLnd1LXNvY2lhbC1idXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTNcIjtcbn1cbi53dS1zb2NpYWwtZGVlemVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE0XCI7XG59XG4ud3Utc29jaWFsLXRhcmdldDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNVwiO1xufVxuLnd1LXNvY2lhbC13YWxtYXJ0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE2XCI7XG59XG4ud3Utc29jaWFsLW11c2ljYWxseTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxN1wiO1xufVxuLnd1LXNvY2lhbC1wYW5kb3JhOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTE4XCI7XG59XG4ud3Utc29jaWFsLXR3aXRjaDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOVwiO1xufVxuLnd1LXNvY2lhbC15ZWxwOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFhXCI7XG59XG4ud3Utc29jaWFsLXVudGFwcGVkOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFiXCI7XG59XG4iLCIvKlxuICogalF1ZXJ5IEZsZXhTbGlkZXIgdjIuMi4wXG4gKiBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vZmxleHNsaWRlci9cbiAqXG4gKiBDb3B5cmlnaHQgMjAxMiBXb29UaGVtZXNcbiAqIEZyZWUgdG8gdXNlIHVuZGVyIHRoZSBHUEx2MiBsaWNlbnNlLlxuICogaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzL2dwbC0yLjAuaHRtbFxuICpcbiAqIENvbnRyaWJ1dGluZyBhdXRob3I6IFR5bGVyIFNtaXRoIChAbWJtdWZmZmluKVxuICovXG5cblxuLyogQnJvd3NlciBSZXNldHNcbioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cbi5mbGV4LWNvbnRhaW5lciBhOmFjdGl2ZSxcbi5mbGV4c2xpZGVyIGE6YWN0aXZlLFxuLmZsZXgtY29udGFpbmVyIGE6Zm9jdXMsXG4uZmxleHNsaWRlciBhOmZvY3VzICB7b3V0bGluZTogbm9uZTt9XG4uc2xpZGVzLFxuLmZsZXgtY29udHJvbC1uYXYsXG4uZmxleC1kaXJlY3Rpb24tbmF2IHttYXJnaW46IDA7IHBhZGRpbmc6IDA7IGxpc3Qtc3R5bGU6IG5vbmU7fVxuXG4vKiBJY29uIEZvbnRzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4vKiBGb250LWZhY2UgSWNvbnMgKi9cbkBmb250LWZhY2Uge1xuXHRmb250LWZhbWlseTogJ2ZsZXhzbGlkZXItaWNvbic7XG5cdHNyYzp1cmwoJy9lbmdpbmUvanMvanF1ZXJ5L3BsdWdpbnMvZmxleHNsaWRlci9mb250cy9mbGV4c2xpZGVyLWljb24uZW90Jyk7XG5cdHNyYzp1cmwoJy9lbmdpbmUvanMvanF1ZXJ5L3BsdWdpbnMvZmxleHNsaWRlci9mb250cy9mbGV4c2xpZGVyLWljb24uZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcblx0XHR1cmwoJy9lbmdpbmUvanMvanF1ZXJ5L3BsdWdpbnMvZmxleHNsaWRlci9mb250cy9mbGV4c2xpZGVyLWljb24ud29mZicpIGZvcm1hdCgnd29mZicpLFxuXHRcdHVybCgnL2VuZ2luZS9qcy9qcXVlcnkvcGx1Z2lucy9mbGV4c2xpZGVyL2ZvbnRzL2ZsZXhzbGlkZXItaWNvbi50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG5cdFx0dXJsKCcvZW5naW5lL2pzL2pxdWVyeS9wbHVnaW5zL2ZsZXhzbGlkZXIvZm9udHMvZmxleHNsaWRlci1pY29uLnN2ZyNmbGV4c2xpZGVyLWljb24nKSBmb3JtYXQoJ3N2ZycpO1xuXHRmb250LXdlaWdodDogbm9ybWFsO1xuXHRmb250LXN0eWxlOiBub3JtYWw7XG5cdGZvbnQtZGlzcGxheTogc3dhcDtcbn1cblxuLyogRmxleFNsaWRlciBOZWNlc3NhcnkgU3R5bGVzXG4qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG4uZmxleHNsaWRlciB7bWFyZ2luOiAwOyBwYWRkaW5nOiAwO31cbi5mbGV4c2xpZGVyIC5zbGlkZXMgPiBsaSB7ZGlzcGxheTogbm9uZTsgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47fSAvKiBIaWRlIHRoZSBzbGlkZXMgYmVmb3JlIHRoZSBKUyBpcyBsb2FkZWQuIEF2b2lkcyBpbWFnZSBqdW1waW5nICovXG4uZmxleHNsaWRlciAuc2xpZGVzIGltZyB7d2lkdGg6IDEwMCU7IGRpc3BsYXk6IGJsb2NrO31cbi5mbGV4LXBhdXNlcGxheSBzcGFuIHt0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTt9XG5cbi8qIENsZWFyZml4IGZvciB0aGUgLnNsaWRlcyBlbGVtZW50ICovXG4uc2xpZGVzOmFmdGVyIHtjb250ZW50OiBcIi5cIjsgZGlzcGxheTogYmxvY2s7IGNsZWFyOiBib3RoOyB2aXNpYmlsaXR5OiBoaWRkZW47IGxpbmUtaGVpZ2h0OiAwOyBoZWlnaHQ6IDA7fVxuaHRtbFt4bWxuc10gLnNsaWRlcyB7ZGlzcGxheTogYmxvY2s7fVxuKiBodG1sIC5zbGlkZXMge2hlaWdodDogMSU7fVxuXG4vKiBObyBKYXZhU2NyaXB0IEZhbGxiYWNrICovXG4vKiBJZiB5b3UgYXJlIG5vdCB1c2luZyBhbm90aGVyIHNjcmlwdCwgc3VjaCBhcyBNb2Rlcm5penIsIG1ha2Ugc3VyZSB5b3VcbiAqIGluY2x1ZGUganMgdGhhdCBlbGltaW5hdGVzIHRoaXMgY2xhc3Mgb24gcGFnZSBsb2FkICovXG4ubm8tanMgLnNsaWRlcyA+IGxpOmZpcnN0LWNoaWxkIHtkaXNwbGF5OiBibG9jazt9XG5cbi8qIEZsZXhTbGlkZXIgRGVmYXVsdCBUaGVtZVxuKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuLmZsZXhzbGlkZXIgeyBtYXJnaW46IDAgMCA2MHB4OyBiYWNrZ3JvdW5kOiAjZmZmOyBib3JkZXI6IDRweCBzb2xpZCAjZmZmOyBwb3NpdGlvbjogcmVsYXRpdmU7IC13ZWJraXQtYm9yZGVyLXJhZGl1czogNHB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDRweDsgLW8tYm9yZGVyLXJhZGl1czogNHB4OyBib3JkZXItcmFkaXVzOiA0cHg7IC13ZWJraXQtYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwwLDAsLjIpOyAtbW96LWJveC1zaGFkb3c6IDAgMXB4IDRweCByZ2JhKDAsMCwwLC4yKTsgLW8tYm94LXNoYWRvdzogMCAxcHggNHB4IHJnYmEoMCwwLDAsLjIpOyBib3gtc2hhZG93OiAwIDFweCA0cHggcmdiYSgwLDAsMCwuMik7IHpvb206IDE7IH1cbi5mbGV4LXZpZXdwb3J0IHsgbWF4LWhlaWdodDogMjAwMHB4OyAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlOyAtbW96LXRyYW5zaXRpb246IGFsbCAxcyBlYXNlOyAtby10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZTsgdHJhbnNpdGlvbjogYWxsIDFzIGVhc2U7IH1cbi5sb2FkaW5nIC5mbGV4LXZpZXdwb3J0IHsgbWF4LWhlaWdodDogMzAwcHg7IH1cbi5mbGV4c2xpZGVyIC5zbGlkZXMgeyB6b29tOiAxOyB9XG4uY2Fyb3VzZWwgbGkgeyBtYXJnaW4tcmlnaHQ6IDVweDsgfVxuXG4vKiBEaXJlY3Rpb24gTmF2ICovXG4uZmxleC1kaXJlY3Rpb24tbmF2IHsqaGVpZ2h0OiAwO31cbi5mbGV4LWRpcmVjdGlvbi1uYXYgYSAgeyB0ZXh0LWRlY29yYXRpb246bm9uZTsgZGlzcGxheTogYmxvY2s7IHdpZHRoOiA0MHB4OyBoZWlnaHQ6IDQwcHg7IG1hcmdpbjogLTIwcHggMCAwOyBwb3NpdGlvbjogYWJzb2x1dGU7IHRvcDogNTAlOyB6LWluZGV4OiAxMDsgb3ZlcmZsb3c6IGhpZGRlbjsgb3BhY2l0eTogMDsgY3Vyc29yOiBwb2ludGVyOyBjb2xvcjogcmdiYSgwLDAsMCwwLjgpOyB0ZXh0LXNoYWRvdzogMXB4IDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsMC4zKTsgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7IC1tb3otdHJhbnNpdGlvbjogYWxsIC4zcyBlYXNlOyB0cmFuc2l0aW9uOiBhbGwgLjNzIGVhc2U7IH1cbi5mbGV4LWRpcmVjdGlvbi1uYXYgLmZsZXgtcHJldiB7IGxlZnQ6IC01MHB4OyB9XG4uZmxleC1kaXJlY3Rpb24tbmF2IC5mbGV4LW5leHQgeyByaWdodDogLTUwcHg7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG4uZmxleHNsaWRlcjpob3ZlciAuZmxleC1wcmV2IHsgb3BhY2l0eTogMC43OyBsZWZ0OiAxMHB4OyB9XG4uZmxleHNsaWRlcjpob3ZlciAuZmxleC1uZXh0IHsgb3BhY2l0eTogMC43OyByaWdodDogMTBweDsgfVxuLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtbmV4dDpob3ZlciwgLmZsZXhzbGlkZXI6aG92ZXIgLmZsZXgtcHJldjpob3ZlciB7IG9wYWNpdHk6IDE7IH1cbi5mbGV4LWRpcmVjdGlvbi1uYXYgLmZsZXgtZGlzYWJsZWQgeyBvcGFjaXR5OiAwIWltcG9ydGFudDsgZmlsdGVyOmFscGhhKG9wYWNpdHk9MCk7IGN1cnNvcjogZGVmYXVsdDsgfVxuLmZsZXgtZGlyZWN0aW9uLW5hdiBhOmJlZm9yZSAgeyBmb250LWZhbWlseTogXCJmbGV4c2xpZGVyLWljb25cIjsgZm9udC1zaXplOiA0MHB4OyBsaW5lLWhlaWdodDoxOyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IGNvbnRlbnQ6ICdcXGYwMDEnOyB9XG4uZmxleC1kaXJlY3Rpb24tbmF2IGEuZmxleC1uZXh0OmJlZm9yZSAgeyBjb250ZW50OiAnXFxmMDAyJzsgfVxuXG4vKiBQYXVzZS9QbGF5ICovXG4uZmxleC1wYXVzZXBsYXkgYSB7IGRpc3BsYXk6IGJsb2NrOyB3aWR0aDogMjBweDsgaGVpZ2h0OiAyMHB4OyBwb3NpdGlvbjogYWJzb2x1dGU7IGJvdHRvbTogNXB4OyBsZWZ0OiAxMHB4OyBvcGFjaXR5OiAwLjg7IHotaW5kZXg6IDEwOyBvdmVyZmxvdzogaGlkZGVuOyBjdXJzb3I6IHBvaW50ZXI7IGNvbG9yOiAjMDAwOyB9XG4uZmxleC1wYXVzZXBsYXkgYTpiZWZvcmUgIHsgZm9udC1mYW1pbHk6IFwiZmxleHNsaWRlci1pY29uXCI7IGZvbnQtc2l6ZTogMjBweDsgZGlzcGxheTogaW5saW5lLWJsb2NrOyBjb250ZW50OiAnXFxmMDA0JzsgfVxuLmZsZXgtcGF1c2VwbGF5IGE6aG92ZXIgIHsgb3BhY2l0eTogMTsgfVxuLmZsZXgtcGF1c2VwbGF5IGEuZmxleC1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICdcXGYwMDMnOyB9XG5cbi8qIENvbnRyb2wgTmF2ICovXG4uZmxleC1jb250cm9sLW5hdiB7d2lkdGg6IDEwMCU7IHBvc2l0aW9uOiBhYnNvbHV0ZTsgYm90dG9tOiAtNDBweDsgdGV4dC1hbGlnbjogY2VudGVyO31cbi5mbGV4LWNvbnRyb2wtbmF2IGxpIHttYXJnaW46IDAgNnB4OyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IHpvb206IDE7ICpkaXNwbGF5OiBpbmxpbmU7fVxuLmZsZXgtY29udHJvbC1wYWdpbmcgbGkgYSB7d2lkdGg6IDExcHg7IGhlaWdodDogMTFweDsgZGlzcGxheTogYmxvY2s7IGJhY2tncm91bmQ6ICM2NjY7IGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC41KTsgY3Vyc29yOiBwb2ludGVyOyB0ZXh0LWluZGVudDogLTk5OTlweDsgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAyMHB4OyAtbW96LWJvcmRlci1yYWRpdXM6IDIwcHg7IC1vLWJvcmRlci1yYWRpdXM6IDIwcHg7IGJvcmRlci1yYWRpdXM6IDIwcHg7IC13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCByZ2JhKDAsMCwwLDAuMyk7IC1tb3otYm94LXNoYWRvdzogaW5zZXQgMCAwIDNweCByZ2JhKDAsMCwwLDAuMyk7IC1vLWJveC1zaGFkb3c6IGluc2V0IDAgMCAzcHggcmdiYSgwLDAsMCwwLjMpOyBib3gtc2hhZG93OiBpbnNldCAwIDAgM3B4IHJnYmEoMCwwLDAsMC4zKTsgfVxuLmZsZXgtY29udHJvbC1wYWdpbmcgbGkgYTpob3ZlciB7IGJhY2tncm91bmQ6ICMzMzM7IGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC43KTsgfVxuLmZsZXgtY29udHJvbC1wYWdpbmcgbGkgYS5mbGV4LWFjdGl2ZSB7IGJhY2tncm91bmQ6ICMwMDA7IGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC45KTsgY3Vyc29yOiBkZWZhdWx0OyB9XG5cbi5mbGV4LWNvbnRyb2wtdGh1bWJzIHttYXJnaW46IDVweCAwIDA7IHBvc2l0aW9uOiBzdGF0aWM7IG92ZXJmbG93OiBoaWRkZW47fVxuLmZsZXgtY29udHJvbC10aHVtYnMgbGkge3dpZHRoOiAyNSU7IGZsb2F0OiBsZWZ0OyBtYXJnaW46IDA7fVxuLmZsZXgtY29udHJvbC10aHVtYnMgaW1nIHt3aWR0aDogMTAwJTsgZGlzcGxheTogYmxvY2s7IG9wYWNpdHk6IC43OyBjdXJzb3I6IHBvaW50ZXI7fVxuLmZsZXgtY29udHJvbC10aHVtYnMgaW1nOmhvdmVyIHtvcGFjaXR5OiAxO31cbi5mbGV4LWNvbnRyb2wtdGh1bWJzIC5mbGV4LWFjdGl2ZSB7b3BhY2l0eTogMTsgY3Vyc29yOiBkZWZhdWx0O31cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODYwcHgpIHtcbiAgLmZsZXgtZGlyZWN0aW9uLW5hdiAuZmxleC1wcmV2IHsgb3BhY2l0eTogMTsgbGVmdDogMTBweDt9XG4gIC5mbGV4LWRpcmVjdGlvbi1uYXYgLmZsZXgtbmV4dCB7IG9wYWNpdHk6IDE7IHJpZ2h0OiAxMHB4O31cbn1cbiIsIi50b3VjaGV2ZW50cyB7XG4gIGJvZHkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gIH1cbiAgLm1lZGlhIHtcbiAgICAjbWFpbiB7XG4gICAgICBtYXJnaW46IDMwcHggYXV0byA1MHB4IGF1dG87XG4gICAgfVxuICB9XG4gIC5uZXdzIHtcbiAgICAjbWFpbiB7XG4gICAgICBtYXJnaW46IDMwcHggYXV0byA1MHB4IGF1dG87XG4gICAgfVxuICB9XG4gIC5yZWxlYXNlcy5hbGwge1xuICAgIG1hcmdpbjogMzBweCBhdXRvIDUwcHggYXV0bztcbiAgfVxuICAjbWFpbj4uc2VjdGlvbi5yZWxlYXNlIHtcbiAgICBtYXJnaW46IDMwcHggYXV0byA1MHB4O1xuICB9XG4gIC5zdG9yZSB7XG4gICAgI3BhZ2Uge1xuICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gNTBweCBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiQGltcG9ydCAnLi4vLi4vdW5pb24vc3JjL3Njc3MvYWNjb3VudC1pbXBvcnQuc2Nzcyc7XG5AaW1wb3J0ICcuLi8uLi91bmlvbi9zcmMvc2Nzcy9zdG9yZS1pbXBvcnQuc2Nzcyc7XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgTWFzdGVyIFRoZW1lJztcbiAgc3JjOiB1cmwoXCIuLi8uLi8uLi90aGVtZXMvb3JpZ2luL3B1YmxpYy9mb250cy9ib290c3RyYXAvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vcHVibGljL2ZvbnRzL2Jvb3RzdHJhcC9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi8uLi8uLi90aGVtZXMvb3JpZ2luL3B1YmxpYy9mb250cy9ib290c3RyYXAvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci5zdmcjZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIpIGZvcm1hdChcInN2Z1wiKTtcbn1cblxuLmdseXBoaWNvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIE1hc3RlciBUaGVtZSc7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xufVxuXG4uZ2x5cGhpY29uLW9rLWNpcmNsZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwODlcIjtcbn1cblxuLmdseXBoaWNvbi13cmVuY2g6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTM2XCI7XG59XG5cbi5nbHlwaGljb24tZGFzaGJvYXJkOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE0MVwiO1xufVxuXG4uZ2x5cGhpY29uLXVzZXI6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA4XCI7XG59XG5cbi5nbHlwaGljb24tZm9sZGVyLWNsb3NlOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExN1wiO1xufVxuXG4uZ2x5cGhpY29uLWJlbGw6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTIzXCI7XG59XG5cbi5nbHlwaGljb24tZm9sZGVyLW9wZW46OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTE4XCI7XG59XG5cbi5nbHlwaGljb24tYm9vazo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwNDNcIjtcbn1cblxuLmdseXBoaWNvbi1jcmVkaXQtY2FyZDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzdcIjtcbn1cblxuLmdseXBoaWNvbi1leWUtb3Blbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxMDVcIjtcbn1cblxuLmdseXBoaWNvbi1oZWFydDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDVcIjtcbn1cblxuLmdseXBoaWNvbi1zaG9wcGluZy1jYXJ0OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExNlwiO1xufVxuXG4uZ2x5cGhpY29uLWluZm8tc2lnbjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwODZcIjtcbn1cblxuLmdseXBoaWNvbi10cmFuc2Zlcjo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUxNzhcIjtcbn1cblxuLmdseXBoaWNvbi1lbnZlbG9wZTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDI3MDlcIjtcbn1cblxuLmdseXBoaWNvbi1jb21tZW50OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTExMVwiO1xufVxuXG4uZ2x5cGhpY29uLWxpbmtzOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTE0NFwiO1xufVxuXG4uZ2x5cGhpY29uLXRyYXNoOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAyMFwiO1xufVxuXG4uZ2x5cGhpY29uLXNlbnQ6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMTcxXCI7XG59XG5cbi5nbHlwaGljb24taW5ib3g6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDI4XCI7XG59XG5cbi5nbHlwaGljb24tbmV3OjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcMDAyYlwiO1xufVxuXG4uZ2x5cGhpY29uLW9rOjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAxM1wiO1xufVxuXG4uZ2x5cGhpY29uLWxpc3Q6OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDU2XCI7XG59XG5cbi5nbHlwaGljb24tZWRpdDo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXDI3MGZcIjtcbn1cblxuLmdseXBoaWNvbi1jaGV2cm9uLWRvd246OmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUxMTRcIjtcbn1cblxuLyogU3RvcmUgKi9cbmJvZHkuc3RvcmUge1xuICBAbWVkaWEgKG1heC13aWR0aDogODQwcHgpIHtcbiAgICAjcGFnZSB7XG4gICAgICAjY29udGFpbmVyIHtcbiAgICAgICAgbWFpbi5tYWluLXN0b3JlLXByb2R1Y3RzLFxuICAgICAgICBtYWluLm1haW4tY2F0ZWdvcnktcHJvZHVjdHMsXG4gICAgICAgIGFzaWRlLmFzaWRlLXN0b3JlLFxuICAgICAgICBtYWluIGFzaWRlLmFzaWRlLWNhdGVnb3J5IHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgID4gLnNlY3Rpb24ge1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgICNiaWxsaW5nQWRkcmVzcyxcbiAgICAjc2hpcHBpbmdBZGRyZXNzIHtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi1wcm9kdWN0LWRlc2NyaXB0aW9uLFxuICAgIC5zZWN0aW9uLXByb2R1Y3QtcHVyY2hhc2UsXG4gICAgLnNlY3Rpb24tc2hpcHBpbmctbWV0aG9kIC5maWVsZHNldCxcbiAgICAuc2VjdGlvbi1iaWxsaW5nLWluZm9ybWF0aW9uIC5maWVsZHNldCB7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgLnNlY3Rpb24tcGF5bWVudC1pbmZvcm1hdGlvbiAuc2VjdGlvbi1wdXJjaGFzZS1pbmZvcm1hdGlvbixcbiAgICAuc2VjdGlvbi1jYXJ0LWluZm9ybWF0aW9uLFxuICAgIC5zZWN0aW9uLWFkZGl0aW9uYWwtaW5mb3JtYXRpb24ge1xuICAgICAgLnRhYmxlIHtcbiAgICAgICAgdGQsXG4gICAgICAgIHRmb290IHRkLFxuICAgICAgICB0Zm9vdCB0aCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRkIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xuXG4gICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1kZXNjcmlwdGlvbik7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhlYWQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuYnV0dG9uOm5vdChbdmFsdWU9XCJEZWxldGVcIl0pIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG5cbiAgICAgICAgPiB0Zm9vdCB7XG4gICAgICAgICAgPiB0ciA+IHRoIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgdGQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG5cbiAgICAgICAgICAgICYuZ3JhbmQtdG90YWwge1xuICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAucm93LWJ1dHRvbnMsXG4gICAgLnJvdy1idXR0b25zLWFjdGlvbnMge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgLmJ1dHRvbi1ncm91cCB7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgfVxuXG4gICAgICBhLmJ1dHRvbixcbiAgICAgIGJ1dHRvbi5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQG1lZGlhIChtYXgtd2lkdGg6IDY0MXB4KSB7XG4gICAgaDIge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi1wYXltZW50LWluZm9ybWF0aW9uIHtcbiAgICAgIC5oZWFkZXItb3JkZXItc3VtbWFyeSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi1wcm9kdWN0LXB1cmNoYXNlIHtcbiAgICAgIHBhZGRpbmctbGVmdDogMDtcblxuICAgICAgLmZpZWxkc2V0IHtcbiAgICAgICAgcGFkZGluZzogMCAwIDAuNzVlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgICAuc2VjdGlvbi1wcm9kdWN0LWRldGFpbCB7XG4gICAgICAuc2VjdGlvbi1wcm9kdWN0LXB1cmNoYXNlIHtcbiAgICAgICAgLnB1cmNoYXNlX2Zvcm0ge1xuICAgICAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgICAgIHVsLmFkZC10by1jYXJ0IC5idXR0b24tYWRkLXRvLWNhcnQge1xuICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgJi5tb2RhbC1vcGVuIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICB9XG5cbiAgKiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gIG1haW4sXG4gIHNlY3Rpb24ge1xuICAgIGEsXG4gICAgcCxcbiAgICBsaSxcbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCxcbiAgICBoNSxcbiAgICBoNixcbiAgICB0ZCxcbiAgICBzcGFuLFxuICAgIHNlbGVjdCxcbiAgICBpbnB1dCxcbiAgICB0aCxcbiAgICB0ZCxcbiAgICBsZWdlbmQge1xuICAgICAgY29sb3I6ICMwMDA7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIHRoIHtcbiAgICAgIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuICB9XG5cbiAgLnJvdy1wcml2YWN5LXBvbGljeS1kaXNjbGFpbWVyIHtcbiAgICBhIHtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgIH1cbiAgfVxuXG4gIC5jaGVja291dC1wcm9ncmVzcyxcbiAgLnNlY3Rpb24tY2FydCAuc2VjdGlvbi1jYXJ0LWluZm9ybWF0aW9uLFxuICAuc2VjdGlvbi1zaGlwcGluZy1tZXRob2QgLnNlY3Rpb24tc2hpcHBpbmctYWRkcmVzcy1jb250YWluZXIsXG4gIC5zZWN0aW9uLXNoaXBwaW5nLW1ldGhvZCAuc2VjdGlvbi1zaGlwcGluZy1tZXRob2QtY29udGFpbmVyLFxuICAuc2VjdGlvbi1vcmRlci1iaWxsaW5nIC5zZWN0aW9uLWJpbGxpbmctcHJvZmlsZSxcbiAgLnNlY3Rpb24tb3JkZXItYmlsbGluZyAuc2VjdGlvbi1iaWxsaW5nLWluZm9ybWF0aW9uLFxuICAuc2VjdGlvbi1wYXltZW50LWluZm9ybWF0aW9uIC5oZWFkZXItb3JkZXItc3VtbWFyeSxcbiAgLnNlY3Rpb24tcGF5bWVudC1pbmZvcm1hdGlvbiAuc2VjdGlvbi1wYXltZW50LWFkZHJlc3MtaW5mb3JtYXRpb24sXG4gIC5zZWN0aW9uLXBheW1lbnQtaW5mb3JtYXRpb24gLnNlY3Rpb24tcHVyY2hhc2UtaW5mb3JtYXRpb24sXG4gIC5zZWN0aW9uLXdpbGwtY2FsbCAuc2VjdGlvbi13aWxsLWNhbGwtZm9ybSxcbiAgLnNlY3Rpb24tb3JkZXItZXh0cmEgLnNlY3Rpb24tYWRkaXRpb25hbC1pbmZvcm1hdGlvbiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgfVxuXG4gIHNlbGVjdCB7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgfVxuXG4gIGNvZGUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOWYyZjQ7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGNvbG9yOiAjYzcyNTRlO1xuICAgIGZvbnQtZmFtaWx5OiBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgJ0NvdXJpZXIgTmV3JywgbW9ub3NwYWNlO1xuICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgIHBhZGRpbmc6IDJweCA0cHg7XG4gIH1cblxuICBsaS5pbnB1dCxcbiAgbGkuc2VsZWN0LFxuICBsaS5jaGVja2JveCxcbiAgLnF1YW50aXR5IHtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcblxuICAgIGlucHV0LFxuICAgIHNlbGVjdCxcbiAgICBsYWJlbCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG5cbiAgICBpbnB1dDpmb2N1cyxcbiAgICA+IHNlbGVjdDpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMyMTg4ZmY7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgyNywgMzEsIDM1LCAwLjA3NSksIDAgMCAwIDAuMmVtIHJnYmEoMywgMTAyLCAyMTQsIDAuMyk7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5idXR0b24gc3BhbiB7XG4gICAgY29sb3I6ICNmZmY7XG4gIH1cblxuICAjR0Mge1xuICAgIGxpLFxuICAgIHNwYW4ge1xuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgfVxuXG4gICAgLkdDX21lc3NhZ2VzIHtcbiAgICAgIC5zdWNjZXNzIHtcbiAgICAgICAgY29sb3I6ICMwMDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI0dDIHtcbiAgICBsaSxcbiAgICBzcGFuIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgIH1cblxuICAgIC5HQ19tZXNzYWdlcyB7XG4gICAgICAuc3VjY2VzcyB7XG4gICAgICAgIGNvbG9yOiAjMDAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5yb3ctYnV0dG9ucy5yb3ctYnV0dG9ucy10d28sXG4gIC5yb3ctYnV0dG9ucy1hY3Rpb25zIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YxZjFmMTtcblxuICAgIC5idXR0b24ge1xuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG5cbiAgICAgICYtY2FuY2VsLFxuICAgICAgJi1iYWNrLFxuICAgICAgJi1lZGl0LXByb2ZpbGUsXG4gICAgICAmLWNhbmNlbCxcbiAgICAgICYtY2FuY2VsLWFkZHJlc3MsXG4gICAgICAmLWNoYW5nZS1hZGRyZXNzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgICAgIH1cblxuICAgICAgJi1zYXZlLFxuICAgICAgJi1zYXZlLWFkZHJlc3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmE0YzA2O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5pbnB1dCAuZXJyb3Ige1xuICAgIHRvcDogLTdweDtcbiAgfVxuXG4gICNwYWdlIHtcbiAgICBtYXJnaW46IDNlbSAwO1xuICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgI2NvbnRhaW5lciB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGEsXG4gICAgICBwLFxuICAgICAgbGksXG4gICAgICBoMSxcbiAgICAgIGgyLFxuICAgICAgaDMsXG4gICAgICBoNCxcbiAgICAgIGg1LFxuICAgICAgaDYsXG4gICAgICB0ZCxcbiAgICAgIHNwYW4sXG4gICAgICBzZWxlY3QsXG4gICAgICBpbnB1dCxcbiAgICAgIHRoLFxuICAgICAgdGQsXG4gICAgICBsZWdlbmQsXG4gICAgICBkaXYge1xuICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIH1cblxuICAgICAgaDEsXG4gICAgICBoMixcbiAgICAgIGgzLFxuICAgICAgaDQge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICAgIH1cblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICB9XG5cbiAgICAgIHN0cm9uZyB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICB9XG5cbiAgICAgIHNlY3Rpb24gPiBzZWN0aW9uLFxuICAgICAgc2VjdGlvbiA+IG9sLFxuICAgICAgc2VjdGlvbiA+IGhlYWRlciB7XG4gICAgICAgIG1heC13aWR0aDogMTE4MHB4O1xuXG4gICAgICAgIGgxIHtcbiAgICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB1bCB7XG4gICAgICAgIG1hcmdpbjogMWVtIDA7XG4gICAgICB9XG5cbiAgICAgIGxpLnN0b2NrIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDI7XG4gICAgICB9XG5cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB9XG5cbiAgICAgIC5tYWluLWNhdGVnb3J5LXByb2R1Y3RzLFxuICAgICAgLm1haW4tc3RvcmUtcHJvZHVjdHMge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDc1JTtcblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgYXNpZGUuYXNpZGUtY2F0ZWdvcnksXG4gICAgICBhc2lkZS5hc2lkZS1zdG9yZSB7XG4gICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgd2lkdGg6IDI1JTtcblxuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICA+IC5zZWN0aW9uIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgIH1cblxuICAgIC53cmFwIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBtYXgtd2lkdGg6IDExODBweDtcbiAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICB9XG5cbiAgICAjUHJvY2Vzc2luZ092ZXJsYXkgPiAud3JhcCB7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cbiAgfVxuXG4gICNjb250ZW50LXdyYXBwZXIuaW50ZXJpb3Ige1xuICAgIHNlY3Rpb24sXG4gICAgc3Ryb25nIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgIH1cblxuICAgIHRhYmxlIHtcbiAgICAgIHRkLFxuICAgICAgdGhlYWQgPiB0ciA+IHRoLFxuICAgICAgdGZvb3QgPiB0ciA+IHRoIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucmV2aWV3IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG4gIH1cblxuICAjY2FydC10aW1lciB7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAubGFiZWwge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzViYzBkZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDAuMjVlbTtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIHBhZGRpbmc6IDAuMmVtIDAuNmVtIDAuM2VtO1xuXG4gICAgICBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiAxMi42cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hc2lkZS1zdG9yZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICBmb250LXNpemU6IDE0cHg7XG4gICAgbWF4LXdpZHRoOiAxMTgwcHg7XG5cbiAgICAuY2FydC1pbmZvIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgfVxuXG4gICAgLnZpZXctY2FydCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXG4gICAgICAuYnV0dG9uLmNhcnQge1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICBzcGFuLmJhZGdlIHtcbiAgICAgICAgICBjb2xvcjogIzAwMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgICAgbWluLXdpZHRoOiAxMHB4O1xuICAgICAgICAgIHBhZGRpbmc6IDNweCA3cHg7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlY3Rpb24tY2F0ZWdvcmllcyB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAubGlzdGluZyB7XG4gICAgICAgIG1hcmdpbjogMCAwIDEwcHg7XG5cbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuXG4gICAgICAgICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAjZjFmMWYxO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICYuY3VycmVudCB7XG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAubWFpbi1zdG9yZS1wcm9kdWN0cyB7XG4gICAgLmhlYWRlci1wcm9kdWN0cyA+IGgyIHtcbiAgICAgIG1hcmdpbjogMjBweCAwIDEwcHg7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLXByb2R1Y3RzIHtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgLnNlY3Rpb24tcHJvZHVjdHMtZmVhdHVyZWQge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG5cbiAgICAubGlzdGluZyB7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XG4gICAgfVxuXG4gICAgLnByb2R1Y3Qge1xuICAgICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuXG4gICAgICAuZmlndXJlID4gYSB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuXG4gICAgICAgID4gaW1nIHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuY2FzaCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgfVxuICB9XG5cbiAgLm1haW4tY2F0ZWdvcnktcHJvZHVjdHMge1xuICAgIC5oZWFkZXItY2F0ZWdvcnkge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgZm9udC1zaXplOiAzNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW46IDIwcHggMCA2MHB4O1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgIH1cbiAgfVxuXG4gIC5zZWN0aW9uLXByb2R1Y3QtZGV0YWlsIHtcbiAgICBoMSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgIH1cblxuICAgIGxlZ2VuZCB7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgfVxuXG4gICAgLmZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAucXVhbnRpdHkgPiBsYWJlbCB7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgIC5zZWN0aW9uLXByb2R1Y3QtcHVyY2hhc2Uge1xuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgIGgxIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICB9XG5cbiAgICAgIGg1IHtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgICBtYXJnaW46IDAuNWVtIDA7XG4gICAgICB9XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cblxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuXG4gICAgICAjYXZhaWxhYmlsaXR5LFxuICAgICAgLnNrdSB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgfVxuXG4gICAgICAucHVyY2hhc2VfZm9ybSB7XG4gICAgICAgIGZpZWxkc2V0IHtcbiAgICAgICAgICB1bCArIHVsIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHVsLmFkZC10by1jYXJ0IHtcbiAgICAgICAgICAgIC5idXR0b24tYWRkLXRvLWNhcnQge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmE0YzA2O1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgICAgICAgIHdpZHRoOiAxNDBweDtcblxuICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5wYXltZW50IHtcbiAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuXG4gICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubWV0YSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5tb2RhbCB7XG4gICAgICBib3R0b206IDA7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgbGVmdDogMDtcbiAgICAgIG91dGxpbmU6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgcmlnaHQ6IDA7XG4gICAgICB0b3A6IDA7XG4gICAgICB6LWluZGV4OiAxMDUwO1xuXG4gICAgICAmLmZhZGUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcblxuICAgICAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgd2lkdGg6IDYwMHB4O1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjUlKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbiAgICAgICAgfVxuXG4gICAgICAgICYuaW4ge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG5cbiAgICAgICAgICAubW9kYWwtZGlhbG9nIHtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKDApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAubW9kYWwtY29udGVudCB7XG4gICAgICAgIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgICAgbWF4LWhlaWdodDogOTB2aDtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgb3ZlcmZsb3cteDogc2Nyb2xsO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2U1ZTVlNTtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICB9XG5cbiAgICAgIC5tb2RhbC1ib2R5IHtcbiAgICAgICAgcGFkZGluZzogMTVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuXG4gICAgICBidXR0b24uY2xvc2Uge1xuICAgICAgICBiYWNrZ3JvdW5kOiAwIDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgY29sb3I6IHJnYmEoMCwgMCwgMCwgMC4yKTtcbiAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICBmb250LXNpemU6IDI1cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlY3Rpb24tcHJvZHVjdC1kZXNjcmlwdGlvbiB7XG4gICAgLnByb2R1Y3Qtc29jaWFsIHtcbiAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIG1hcmdpbjogMmVtIDA7XG5cbiAgICAgIC5saWtlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICB9XG5cbiAgICAgIC50cnVzdHBpbG90LXdpZGdldCB7XG4gICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zZWN0aW9uLWNhcnQsXG4gIC5zZWN0aW9uLW9yZGVyLWV4dHJhIHtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAuc2VjdGlvbi1jYXJ0LWluZm9ybWF0aW9uLFxuICAgIC5zZWN0aW9uLWFkZGl0aW9uYWwtaW5mb3JtYXRpb24ge1xuICAgICAgLnJldmlldyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgfVxuICAgIH1cblxuICAgIC50YWJsZSB7XG4gICAgICA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgfVxuXG4gICAgICA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgfVxuXG4gICAgICA+IHRmb290ID4gdHIgPiB0aCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlY3Rpb24tYmlsbGluZy1pbmZvcm1hdGlvbiB7XG4gICAgbGVnZW5kIHtcbiAgICAgIGZvbnQtc2l6ZTogMjFweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuXG4gICAgLmZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgJi5maWVsZHNldC1wYXltZW50LXR5cGUge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgJi5maWVsZHNldC1jYXJkLWluZm8ge1xuICAgICAgICAuaW5wdXQgLmZpZWxkIHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5zZWN0aW9uLXBheW1lbnQtaW5mb3JtYXRpb24ge1xuICAgIGgxIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDAuNWVtIDA7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICBwYWRkaW5nOiAwLjVlbSAwO1xuICAgIH1cblxuICAgIC5oZWFkZXItb3JkZXItc3VtbWFyeSB7XG4gICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIHBhZGRpbmc6IDEycHggMjRweDtcblxuICAgICAgJiN1c2VQcm9tb0NvZGUge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xuICAgICAgfVxuXG4gICAgICAmLmJ1dHRvbi1iYWNrLXNoaXBwaW5nLW1ldGhvZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlY3Rpb24tcHVyY2hhc2UtaW5mb3JtYXRpb24ge1xuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICAgICAgfVxuXG4gICAgICAjUGF5bWVudEZvcm0tY29udGludWUge1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xuXG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLnRhYmxlIHtcbiAgICAgICAgPiB0aGVhZCA+IHRyID4gdGgge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgfVxuXG4gICAgICAgID4gdGJvZHkgPiB0ciA+IHRkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2YxZjFmMTtcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4O1xuICAgICAgICB9XG5cbiAgICAgICAgPiB0Zm9vdCA+IHRyID4gdGgge1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIH1cblxuICAgICAgICA+IHRmb290ID4gdHIgPiB0ZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2VjdGlvbi1zaGlwcGluZy1tZXRob2QsXG4gIC5zZWN0aW9uLXdpbGwtY2FsbC1mb3JtIHtcbiAgICBsZWdlbmQge1xuICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgIG1hcmdpbjogMWVtIDA7XG4gICAgfVxuXG4gICAgcCA+IGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgLmZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICB9XG5cbiAgICAuY2hlY2tib3gge1xuICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgfVxuXG4gICAgLndpbGxjYWxsLWluZm8ge1xuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgfVxuICB9XG5cbiAgLnNlY3Rpb24tb3JkZXItZXh0cmEge1xuICAgIC5maWVsZHNldC1hZGRpdGlvbmFsLWluZm9ybWF0aW9uIHtcbiAgICAgIGJvcmRlcjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgIGxlZ2VuZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIEFjY291bnQgKi9cbmJvZHkuYWNjb3VudCB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiA4NDBweCkge1xuICAgICNjb250YWluZXIge1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgYSxcbiAgICAgIHAsXG4gICAgICB0aCxcbiAgICAgIHRkLFxuICAgICAgLmRpc2NsYWltZXIge1xuICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICB9XG5cbiAgICAgIG1haW4sXG4gICAgICBhc2lkZSB7XG4gICAgICAgIGlucHV0LFxuICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgc2VsZWN0LFxuICAgICAgICBsZWdlbmQge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5tYWluIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggMDtcbiAgICB9XG5cbiAgICAuc2VjdGlvbiB7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICA+IGFzaWRlIHtcbiAgICAgICAgcGFkZGluZzogMTAgMDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi1vcmRlci1zdW1tYXJ5IHtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgIC5zZWN0aW9uLW9yZGVyLWluZm9ybWF0aW9uIHtcbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuc2VjdGlvbi1vcmRlci1pdGVtaXphdGlvbixcbiAgICAgIC5zZWN0aW9uLW9yZGVyLXNoaXBtZW50cyB7XG4gICAgICAgIC50YWJsZSB7XG4gICAgICAgICAgPiB0Ym9keSA+IHRyID4gdGQge1xuICAgICAgICAgICAgJjo6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWRlc2NyaXB0aW9uKTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFzaWRlLWFjY291bnQsXG4gICAgLmFzaWRlLWFjY291bnQtZGFzaGJvYXJkIHtcbiAgICAgIC50YWJsZSB7XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICYuYWN0aW9ucyB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5yb3ctYnV0dG9ucyB7XG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgbWFyZ2luOiA1cHggMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFzaWRlLW5hdixcbiAgICAuYXNpZGUtYWNjb3VudCB7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5tYWluLWFjY291bnQtbWFuYWdlZC1saW5rZWQge1xuICAgICAgLnRhYmxlLWFjY291bmQtbWFuYWdlZC1saW5rZWQge1xuICAgICAgICB0aGVhZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICB0ciB0ZCB7XG4gICAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmFzaWRlLWFjY291bnQge1xuICAgICAgJixcbiAgICAgICYtbWFuYWdlLWFkZHJlc3MsXG4gICAgICAmLW5vdGlmaWNhdGlvbnMsXG4gICAgICAmLW1hbmFnZSxcbiAgICAgICYtZGFzaGJvYXJkIHtcbiAgICAgICAgbGFiZWwsXG4gICAgICAgIHAsXG4gICAgICAgIHRoLFxuICAgICAgICB0ZCxcbiAgICAgICAgLmRpc2NsYWltZXIge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudGFibGUge1xuICAgICAgICB0Ym9keSA+IHRyID4gdGQge1xuICAgICAgICAgICY6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bGFzdC1vZi10eXBlIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMjRweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYXNpZGUtb3JkZXItbGlzdCB7XG4gICAgICAudGFibGUge1xuICAgICAgICB0Ym9keSA+IHRyID4gdGQge1xuICAgICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtZGVzY3JpcHRpb24pO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gICoge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIH1cblxuICBtYWluIHtcbiAgICBhLFxuICAgIHAsXG4gICAgbGksXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYsXG4gICAgdGQsXG4gICAgc3BhbixcbiAgICBzZWxlY3QsXG4gICAgYWRkcmVzcyB7XG4gICAgICBmb250LXN0eWxlOiBub3JtYWw7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgIGZpZWxkc2V0IHtcbiAgICAgIGJvcmRlcjogMDtcblxuICAgICAgJi5maWVsZHNldC1mYW5jbHViLW5vdGlmaWNhdGlvbnMge1xuICAgICAgICAuY2hlY2tib3gge1xuICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgc2VsZWN0IHtcbiAgICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICB9XG4gIH1cblxuICBoMiB7XG4gICAgZm9udC1zaXplOiAzMHB4O1xuICB9XG5cbiAgaW5wdXQge1xuICAgICZbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cblxuICAgICYjb2NjdXBhdGlvbiB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICBsaS5pbnB1dCxcbiAgbGkuc2VsZWN0LFxuICBsaS5jaGVja2JveCB7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICBpbnB1dDpmb2N1cyxcbiAgICA+IHNlbGVjdDpmb2N1cyB7XG4gICAgICBib3JkZXItY29sb3I6ICMyMTg4ZmY7XG4gICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAycHggcmdiYSgyNywgMzEsIDM1LCAwLjA3NSksIDAgMCAwIDAuMmVtIHJnYmEoMywgMTAyLCAyMTQsIDAuMyk7XG4gICAgICBvdXRsaW5lOiBub25lO1xuICAgIH1cbiAgfVxuXG4gIC5tYWluLWFjY291bnQsXG4gIC5zZWN0aW9uLW9yZGVyLXN1bW1hcnksXG4gIC5zZWN0aW9uLW9yZGVyLWluZm9ybWF0aW9uLFxuICAuc2VjdGlvbi1vcmRlci1pdGVtaXphdGlvbixcbiAgLnNlY3Rpb24tb3JkZXItc2hpcG1lbnRzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICB9XG5cbiAgLnRhYmxlIHtcbiAgICB0aCB7XG4gICAgICBjb2xvcjogIzAwMDtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgcGFkZGluZzogOHB4O1xuICAgIH1cblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgcGFkZGluZzogOHB4O1xuICAgIH1cbiAgfVxuXG4gICNwYWdlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuXG4gICNjb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTE4MHB4O1xuXG4gICAgYSxcbiAgICBwLFxuICAgIHRoLFxuICAgIHRkLFxuICAgIGxhYmVsLFxuICAgIGxlZ2VuZCB7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgfVxuXG4gICAgYSxcbiAgICBwLFxuICAgIGxpLFxuICAgIGgxLFxuICAgIGgyLFxuICAgIGgzLFxuICAgIGg0LFxuICAgIGg1LFxuICAgIGg2LFxuICAgIHRkLFxuICAgIHNwYW4sXG4gICAgc2VsZWN0LFxuICAgIGFkZHJlc3Mge1xuICAgICAgY29sb3I6ICMwNDA0MDQ7XG4gICAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICB9XG5cbiAgICBoMSxcbiAgICBoMixcbiAgICBoMyxcbiAgICBoNCB7XG4gICAgICBmb250LXdlaWdodDogNTAwO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgfVxuXG4gICAgaW5wdXQsXG4gICAgdGV4dGFyZWEsXG4gICAgc2VsZWN0IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgIH1cblxuICAgIHN0cm9uZyB7XG4gICAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG4gICAgdWwge1xuICAgICAgbWFyZ2luOiAxZW0gMDtcbiAgICB9XG5cbiAgICAjbWFpbi5mdWxsIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgPiAubWFpbiB7XG4gICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICA+IC5zZWN0aW9uIHtcbiAgICAgICAgPiAuYXNpZGUge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYxZjE7XG5cbiAgICAgID4gaDEge1xuICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5oZWFkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYxZjE7XG5cbiAgICAgID4gaDEge1xuICAgICAgICBmb250LXNpemU6IDM2cHg7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcblxuICAgICAgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5yb3ctYnV0dG9ucyB7XG4gICAgICAmLFxuICAgICAgJi10d28ge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgI2YxZjFmMTtcbiAgICAgIH1cblxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICYtY2FuY2VsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xuICAgICAgICB9XG5cbiAgICAgICAgJi1wcmltYXJ5IHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmE0YzA2O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgI3BhZ2Uge1xuICAgIG1hcmdpbjogM2VtIDA7XG5cbiAgICAuYXNpZGUtbmF2IHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICAgIGEsXG4gICAgICBzcGFuIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbiAgICAgIH1cblxuICAgICAgbGkge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgIH1cblxuICAgICAgLnNlbGVjdGVkIGEsXG4gICAgICAuc2VsZWN0ZWQgc3BhbiB7XG4gICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgfVxuICAgIH1cblxuICAgIC5yb3ctcG9saWN5LXByZXZpZXcge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYxZjE7XG5cbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAucm93LXBvbGljeS1kaXNjbGFpbWVyIGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgLmFzaWRlLWFjY291bnQtbm90aWZpY2F0aW9ucyB7XG4gICAgICBhLmJ1dHRvbiB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gICAgICB9XG5cbiAgICAgIHAubm90ZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyNHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLm1haW4tYWNjb3VudC1tYW5hZ2UtYWRkcmVzcyB7XG4gICAgLmFzaWRlLWFjY291bnQtbWFuYWdlLWFkZHJlc3Mge1xuICAgICAgYS5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xuICAgICAgfVxuXG4gICAgICAuZmllbGRzZXQtYmlsbGluZyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICNmMWYxZjE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLmFzaWRlLW5hdiB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG5cbiAgICAuaXRlbS5hdmF0YXIge1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICAubGlua2VkLWFjY291bnQge1xuICAgICAgLmNvdW50ZXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hc2lkZS1hY2NvdW50IHtcbiAgICBtYXgtd2lkdGg6IG5vbmU7XG5cbiAgICAudGFibGUge1xuICAgICAgPiB0Ym9keSA+IHRyID4gdGQsXG4gICAgICA+IHRib2R5ID4gdHIgPiB0aCB7XG4gICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgfVxuXG4gICAgICA+IHRoZWFkID4gdHIgPiB0aCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hc2lkZS1hY2NvdW50LWRhc2hib2FyZCB7XG4gICAgdGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuXG4gICAgICB0aCB7XG4gICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBoMiB7XG4gICAgICBtYXJnaW46IDIwcHggMCAxMHB4O1xuICAgIH1cbiAgfVxuXG4gIC5hc2lkZS1hY2NvdW50LW5vdGlmaWNhdGlvbnMge1xuICAgIGxlZ2VuZCB7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIGlucHV0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIH1cbiAgfVxuXG4gIC5hc2lkZS1hY2NvdW50LW1hbmFnZSxcbiAgLmFzaWRlLWFjY291bnQtbWFuYWdlLWFkZHJlc3Mge1xuICAgIGxlZ2VuZCB7XG4gICAgICBmb250LXNpemU6IDIxcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cblxuICAgIC5jaGVja2JveCB7XG4gICAgICBtYXJnaW46IDEwcHggMDtcblxuICAgICAgbGFiZWwge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6IDIwcHg7XG5cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGhlaWdodDogMTVweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5hc2lkZS1tYW5hZ2UtcHJvZmlsZSB7XG4gICAgbGFiZWwge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgaW5wdXQge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuXG4gICAgbGkge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgfVxuXG4gICAgdGV4dGFyZWEge1xuICAgICAgYm9yZGVyOiAwO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuXG4gICAgcCA+IGEge1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgfVxuXG4gICAgLmRpc2NsYWltZXIge1xuICAgICAgY29sb3I6IHJnYigyNTUsIDAsIDApO1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgIH1cbiAgfVxuXG4gIHRhYmxlLnRhYmxlLWFjY291bmQtbWFuYWdlZC1saW5rZWQge1xuICAgIC5hdmF0YXJfd3JhcHBlciB7XG4gICAgICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICB9XG4gIH1cblxuICAuYXNpZGUtb3JkZXItbGlzdCB7XG4gICAgaDIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB9XG5cbiAgICAudGFibGUge1xuICAgICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgICB0aCB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjZjFmMWYxO1xuICAgICAgfVxuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLnNlY3Rpb24tb3JkZXItc3VtbWFyeSB7XG4gICAgZm9udC1zaXplOiAxNnB4O1xuXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMge1xuICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgIHBhZGRpbmc6IDAuNWVtIDA7XG4gICAgfVxuXG4gICAgaDMge1xuICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgIH1cblxuICAgIGFkZHJlc3Mge1xuICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIH1cblxuICAgIHRoID4gLnNrdSB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgIH1cblxuICAgIC5oZWFkZXItb3JkZXIge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG5cbiAgICAuYnV0dG9uLXJvdyAuYnV0dG9uIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICM2NjY7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgICB9XG5cbiAgICAuc2VjdGlvbi1vcmRlci1pbmZvcm1hdGlvbiB7XG4gICAgICBkaXYge1xuICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICAgIH1cblxuICAgICAgdWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgfVxuXG4gICAgICAuYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzY2NjtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnNlY3Rpb24tb3JkZXItaXRlbWl6YXRpb24sXG4gICAgLnNlY3Rpb24tb3JkZXItc2hpcG1lbnRzIHtcbiAgICAgIGRpdiB7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBBcmlhbCwgSGVsdmV0aWNhLCBzYW5zLXNlcmlmO1xuICAgICAgfVxuXG4gICAgICAudGFibGUge1xuICAgICAgICA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNmMWYxZjE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAuc2VjdGlvbi1hY2NvdW50LWRhc2hib2FyZCB7XG4gICAgcGFkZGluZzogMDtcbiAgfVxufVxuXG5ib2R5LmV2ZW50cyB7XG4gICNmYW5jeWJveC1jb250ZW50IHtcbiAgICAubm90ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgY29sb3I6ICMwMDA7XG5cbiAgICAgIHAsXG4gICAgICBidXR0b24ge1xuICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogU3R5bGVzIGZvciBhY2NvdW50IHRwbCBmaWxlc1xuICovXG5cbkBpbXBvcnQgJy4vdmFyaWFibGVzL3ZhcmlhYmxlcy5zY3NzJztcblxuLyogbW9kdWxlcyAqL1xuQGltcG9ydCAnLi9taXhpbnMvbWl4aW5zLnNjc3MnO1xuQGltcG9ydCAnLi9nbG9iYWxzL2dsb2JhbHMuc2Nzcyc7XG5AaW1wb3J0ICcuL2FjY291bnQvYWNjb3VudC5zY3NzJztcbkBpbXBvcnQgJy4vcGFydGlhbHMvbW9kYWwvbW9kYWwuc2Nzcyc7XG4iLCIvKiBUeXBlICovXG4kaWNvbi1mb250LXBhdGg6ICcuLi8uLi8uLi90aGVtZXMvdW5pb24vcHVibGljL2ZvbnRzL2Jvb3RzdHJhcC8nICFkZWZhdWx0O1xuXG4vKiBjYXJvdXNlbCAqL1xuJGJnLWNvbG9yOiAjMzMzMzMzICFpbXBvcnRhbnQ7XG4vKiBjb21tb24gdmFyaWFibGVzIGZvciB0aGUgc3RvcmUgJiYgYWNjb3VudCB0ZW1wbGF0ZXMgKi9cblxuJGhhc1dyYXA6IHRydWUgIWRlZmF1bHQ7XG5cbi8qIGNvbG9ycyAqL1xuJGJhY2tncm91bmRDb2xvcjogaHNsYSgwLCAwJSwgMTAwJSwgLjA3KSAhZGVmYXVsdDtcbiRjaGVja291dEJhY2tncm91bmRDb2xvcjogJGJhY2tncm91bmRDb2xvciAhZGVmYXVsdDtcbiRibGFjazogIzA0MDQwNDtcbiRibHVlOiAjMTc3N0EyICFkZWZhdWx0O1xuJGRhcmtHcmVlbjogIzVjYjg1YyAhZGVmYXVsdDtcbiRkYXJrR3JleTogIzY2NjY2NiAhZGVmYXVsdDtcbiRtaWRHcmV5OiAjQUFBQUFBICFkZWZhdWx0O1xuJGVycm9yUmVkOiAjZDk1MzRmICFkZWZhdWx0O1xuJGdyZWVuOiAjNkM4ODY5ICFkZWZhdWx0O1xuJGdyZXk6ICNlNGU0ZTQgIWRlZmF1bHQ7XG4kbGlnaHRHcmV5OiAjZjdmN2Y3ICFkZWZhdWx0O1xuJGxpZ2h0R3JlZW46ICNCNEQ3QjggIWRlZmF1bHQ7XG4kbGlnaHRCbGFjazogIzQ0NDQ0NCAhZGVmYXVsdDtcbiRsaWdodGVyQmxhY2s6ICMzQzMzMzMgIWRlZmF1bHQ7XG4kbGlua0NvbG9yOiAkYmxhY2sgIWRlZmF1bHQ7XG4kbGlua0NvbG9ySG92ZXI6ICRkYXJrR3JleSAhZGVmYXVsdDtcbiR0YWJsZUJvcmRlckNvbG9yOiAkZ3JleSAhZGVmYXVsdDtcbiRwcmltYXJ5OiAjRkE0QzA2ICFkZWZhdWx0O1xuJGhvdmVyUHJpbWFyeTogZGFya2VuKCRwcmltYXJ5LCAxMCkgIWRlZmF1bHQ7XG4kcmVkOiAjZDk1MzRmICFkZWZhdWx0O1xuJHdoaXRlOiAjZmZmICFkZWZhdWx0O1xuJGljb25CYXJDb2xvcjogIzg4ODg4OCAhZGVmYXVsdDtcbiRpY29uQmFyQ29sb3JFeHBhbmRlZDogIzg4ODg4OCAhZGVmYXVsdDtcblxuLyogYm9yZGVycyAqL1xuJGJvcmRlclJhZGl1czogNHB4ICFkZWZhdWx0O1xuJGJvcmRlckNvbG9yOiAkbGlnaHRlckJsYWNrICFkZWZhdWx0O1xuJGJvcmRlcjogMCBzb2xpZCAkbGlnaHRlckJsYWNrICFkZWZhdWx0O1xuXG4vKiBmb250ICovXG4kZm9udFdlaWdodDogbm9ybWFsICFkZWZhdWx0O1xuJGZvbnRXZWlnaHQzMDA6IDMwMCAhZGVmYXVsdDtcbiRmb250V2VpZ2h0NDAwOiA0MDAgIWRlZmF1bHQ7XG4kZm9udEZhbWlseTogSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250U2l6ZTogMTZweCAhZGVmYXVsdDtcbiRjb3VudGVyTGluZUhlaWdodDogMjRweCAhZGVmYXVsdDtcblxuLyogbGluZSBoZWlnaHQgKi9cbiRMYWJlbExpbmVIZWlnaHQ6IDE4cHggIWRlZmF1bHQ7XG4kZm9ybUlucHV0TGluZUhlaWdodDogMzZweCAhZGVmYXVsdDtcblxuLyogZm9ybSBlbGVtZW50cyAqL1xuJGZvcm1FbGVtZW50Rm9jdXNPcGFjaXR5OiAwLjggIWRlZmF1bHQ7XG5cbi8qIGFuaW1hdGlvbnMgKi9cbiRlYXNlOiAwLjVzIGVhc2UgIWRlZmF1bHQ7XG5cbi8qIGxheW91dCAmJiBicmVha3BvaW50cyAqL1xuJHdpZHRoOiAxMTQwcHggIWRlZmF1bHQ7XG4kbW9iaWxlQnJlYWtwb2ludDogODQwcHggIWRlZmF1bHQ7XG4kc21hbGxNb2JpbGVCcmVha3BvaW50OiA1MDBweCAhZGVmYXVsdDtcblxuJG1vYmlsZU5hdkJyZWFrcG9pbnQ6ICRtb2JpbGVCcmVha3BvaW50ICFkZWZhdWx0O1xuXG4vKiBoZWFkZXIgLyBtYWluIG5hdiAqL1xuJGhlYWRlckJhY2tncm91bmRDb2xvcjogJGJhY2tncm91bmRDb2xvciAhZGVmYXVsdDtcbiRoZWFkZXJCb3JkZXJDb2xvcjogJGJhY2tncm91bmRDb2xvciAhZGVmYXVsdDtcbiRoZWFkZXJMaW5rQ29sb3I6ICRsaW5rQ29sb3IgIWRlZmF1bHQ7XG4kaGVhZGVyTGlua0NvbG9ySG92ZXI6ICRsaW5rQ29sb3JIb3ZlciAhZGVmYXVsdDtcblxuLyogYWNjb3VudCAqL1xuJGFjY291bnRNb2JpbGVQYWRkaW5nOiAyMHB4ICFkZWZhdWx0O1xuJGNvdW50ZXJCZ0NvbG9yOiAkZ3JleSAhZGVmYXVsdDtcbiRjb3VudGVyQ29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLyogc3RvcmUgbGlzdGluZyB0eXBlcyAqL1xuJHN0b3JlSGFzRmxhZ2dlZExpc3Rpbmc6ICd0cnVlJyAhZGVmYXVsdDtcblxuLyogc3RvcmUgYXNpZGUgKi9cbiRzdG9yZUFzaWRlQmFja2dyb3VuZENvbG9yOiAkYmFja2dyb3VuZENvbG9yICFkZWZhdWx0O1xuJHN0b3JlQXNpZGVCb3JkZXJDb2xvcjogJGJvcmRlckNvbG9yICFkZWZhdWx0O1xuLy8gJHN0b3JlQXNpZGVIYXNDYXRlZ29yaWVzSGVhZGVyOiBmYWxzZSAhZGVmYXVsdDtcblxuLyogZm9vdGVyICovXG4kZm9vdGVyQ29sb3I6ICRibGFjayAhZGVmYXVsdDtcbiRmb290ZXJMaW5rQ29sb3I6ICRibGFjayAhZGVmYXVsdDtcbiRmb290ZXJCYWNrZ3JvdW5kQ29sb3I6ICRiYWNrZ3JvdW5kQ29sb3IgIWRlZmF1bHQ7XG4kZm9vdGVyTGlua0NvbG9ySG92ZXI6ICRncmV5ICFkZWZhdWx0O1xuIiwiLyogY29tbW9uIHZhcmlhYmxlcyBmb3IgdGhlIHN0b3JlICYmIGFjY291bnQgdGVtcGxhdGVzICovXG5cbkBtaXhpbiBjb250YWluZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JleTtcbiAgYm9yZGVyOiAkYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICBjb2xvcjogJGJsYWNrO1xuICBwYWRkaW5nOiAyMHB4O1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgcGFkZGluZzogMTBweDtcblxuICAgIEBzdXBwb3J0cyhwYWRkaW5nOiBtYXgoMHB4KSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiBtI3thfXgoMTBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBtI3thfXgoMTBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gc3ViQ29udGFpbmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JleTtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgY29sb3I6ICRibGFjaztcbiAgZGlzcGxheTogYmxvY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICBtYXJnaW4tcmlnaHQ6IGF1dG87XG4gIG1heC13aWR0aDogJHdpZHRoO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgcGFkZGluZzogMTBweDtcbiAgfVxufVxuXG5AbWl4aW4gdW5pb25CdXR0b24ge1xuICBwYWRkaW5nOiAxMnB4IDI0cHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRkYXJrR3JleTtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICBjb2xvcjogJHdoaXRlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogaW5pdGlhbDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbiAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkZGFya0dyZXksIDEwKTtcbiAgICBjb2xvcjogJHdoaXRlO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBvdXRsaW5lOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIHByaW1hcnlCdXR0b24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpbWFyeTtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaG92ZXJQcmltYXJ5O1xuICB9XG59XG5cbkBtaXhpbiBmb3JtSW5wdXQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMzZweDtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgbGluZS1oZWlnaHQ6ICRmb3JtSW5wdXRMaW5lSGVpZ2h0O1xuICB0ZXh0LWluZGVudDogOXB4O1xuICBjb2xvcjogJGJsYWNrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogJGZvcm1FbGVtZW50Rm9jdXNPcGFjaXR5O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuQG1peGluIGZvcm1TZWxlY3Qge1xuICBoZWlnaHQ6IDM2cHg7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAmOmZvY3VzIHtcbiAgICBvcGFjaXR5OiAkZm9ybUVsZW1lbnRGb2N1c09wYWNpdHk7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gc2VsZWN0QmFja2dyb3VuZCB7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEQ5NGJXd2dkbVZ5YzJsdmJqMGlNUzR3SWlCbGJtTnZaR2x1WnowaWFYTnZMVGc0TlRrdE1TSS9QandoUkU5RFZGbFFSU0J6ZG1jZ1VGVkNURWxESUNJdEx5OVhNME12TDBSVVJDQlRWa2NnTVM0eEx5OUZUaUlnSW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTDBkeVlYQm9hV056TDFOV1J5OHhMakV2UkZSRUwzTjJaekV4TG1SMFpDSStQSE4yWnlCMlpYSnphVzl1UFNJeExqRWlJR2xrUFNKRFlYQmhYekVpSUhodGJHNXpQU0pvZEhSd09pOHZkM2QzTG5jekxtOXlaeTh5TURBd0wzTjJaeUlnZUcxc2JuTTZlR3hwYm1zOUltaDBkSEE2THk5M2QzY3Vkek11YjNKbkx6RTVPVGt2ZUd4cGJtc2lJSGc5SWpCd2VDSWdlVDBpTUhCNElpQjNhV1IwYUQwaU16QTJjSGdpSUdobGFXZG9kRDBpTXpBMmNIZ2lJSFpwWlhkQ2IzZzlJakFnTUNBek1EWWdNekEySWlCemRIbHNaVDBpWlc1aFlteGxMV0poWTJ0bmNtOTFibVE2Ym1WM0lEQWdNQ0F6TURZZ016QTJPeUlnZUcxc09uTndZV05sUFNKd2NtVnpaWEoyWlNJK1BHYytQR2NnYVdROUltVjRjR0Z1WkMxdGIzSmxJajQ4Y0c5c2VXZHZiaUJ3YjJsdWRITTlJakkzTUM0ekxEVTRMalkxSURFMU15d3hOelV1T1RVZ016VXVOeXcxT0M0Mk5TQXdMRGswTGpNMUlERTFNeXd5TkRjdU16VWdNekEyTERrMExqTTFJQ0l2UGp3dlp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BHYytQQzluUGp4blBqd3ZaejQ4Wno0OEwyYytQR2MrUEM5blBqeG5Qand2Wno0OFp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BHYytQQzluUGp4blBqd3ZaejQ4Wno0OEwyYytQQzl6ZG1jK1wiKTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2FsYyg5OC43NSUgLSA1cHgpIDUwJTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xufVxuXG5AbWl4aW4gZm9ybUxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tYm90dG9tOiA4cHg7XG4gIHBhZGRpbmc6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICBsaW5lLWhlaWdodDogJExhYmVsTGluZUhlaWdodDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuQG1peGluIGVycm9yIHtcbiAgY29sb3I6ICRlcnJvclJlZDtcbn1cblxuQG1peGluIGxlZ2VuZCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYm9yZGVyOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdG9wOiA1cHg7XG4gIGNvbG9yOiAkYmxhY2s7XG59XG5cbkBtaXhpbiBtb2JpbGVEaXNwbGF5QmxvY2sge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNsZWFyOiBib3RoO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICBAc3VwcG9ydHMocGFkZGluZzogbWF4KDBweCkpIHtcbiAgICAgIHBhZGRpbmctbGVmdDogbSN7YX14KDEwcHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICAgICAgcGFkZGluZy1yaWdodDogbSN7YX14KDEwcHgsIGVudihzYWZlLWFyZWEtaW5zZXQtcmlnaHQpKTtcbiAgICB9XG4gIH1cbn1cblxuQG1peGluIG1vYmlsZVRhYmxlIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAudGFibGUge1xuICAgICAgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICB0ciB7XG4gICAgICB0ZCwgdGgge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiB3cmFwIHtcbiAgLndyYXAge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgbWFyZ2luOiBhdXRvO1xuICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICBtYXgtd2lkdGg6ICR3aWR0aDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICR3aWR0aCkge1xuICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbm9Cb3JkZXIge1xuICBib3JkZXI6IDAgIWltcG9ydGFudDtcbn1cbi5uby1ib3JkZXIge1xuICBAaW5jbHVkZSBub0JvcmRlcjtcbn1cblxuQG1peGluIGNsZWFyZml4KCkge1xuICAmOmJlZm9yZSwgJjphZnRlciB7XG4gICAgY29udGVudDogJyc7XG4gICAgZGlzcGxheTogdGFibGU7IH1cbiAgJjphZnRlciB7XG4gICAgY2xlYXI6IGJvdGg7XG4gIH1cbn1cbi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4KCk7XG59XG4iLCJib2R5IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmRDb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRmb250RmFtaWx5O1xuICBmb250LXNpemU6ICRmb250U2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRmb250V2VpZ2h0O1xuXG4gICYuYWNjb3VudCwgJi5zdG9yZSB7XG4gICAgI3BhZ2Uge1xuICAgICAgQGluY2x1ZGUgd3JhcDtcblxuICAgICAgYSB7XG4gICAgICAgIHRyYW5zaXRpb246ICRlYXNlO1xuICAgICAgICBjb2xvcjogJGxpbmtDb2xvcjtcblxuICAgICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgY29sb3I6ICRsaW5rQ29sb3JIb3ZlcjtcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3cge1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG4gICYuYWNjb3VudCB7XG4gICAgI2NvbnRhaW5lciB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIHBhZGRpbmc6IDAgMTJweDtcbiAgICAgIG1heC13aWR0aDogJHdpZHRoO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBwYWRkaW5nOiAwICRhY2NvdW50TW9iaWxlUGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5zdG9yZSB7XG4gICAgLnNlY3Rpb24tY2FydCxcbiAgICAuc2VjdGlvbi1vcmRlci1iaWxsaW5nLFxuICAgIC5zZWN0aW9uLXNoaXBwaW5nLW1ldGhvZCxcbiAgICAuc2VjdGlvbi1wYXltZW50LWluZm9ybWF0aW9uLFxuICAgIC5zZWN0aW9uLW9yZGVyLXN1bW1hcnkge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNoZWNrb3V0QmFja2dyb3VuZENvbG9yO1xuXG4gICAgICAmLCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5tZWRpYSB7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gIH1cbiAgJi5wcml2YWN5IHtcbiAgICAuc2VjdGlvbi5wcml2YWN5IHtcbiAgICAgIG1heC13aWR0aDogJHdpZHRoO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgcGFkZGluZzogMTJweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGlmICgkaGFzV3JhcCA9PSB0cnVlKSB7XG4gIEBpbmNsdWRlIHdyYXA7XG59XG5cbnVsIHtcbiAgLXdlYmtpdC1tYXJnaW4tYmVmb3JlOiAwO1xuICAtd2Via2l0LW1hcmdpbi1hZnRlcjogMDtcbiAgLXdlYmtpdC1tYXJnaW4tc3RhcnQ6IDA7XG4gIC13ZWJraXQtbWFyZ2luLWVuZDogMDtcbiAgLXdlYmtpdC1wYWRkaW5nLXN0YXJ0OiAwO1xuICBwYWRkaW5nOiAwO1xuXG4gIGxpIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICB9XG59XG5cbm9sIHtcbiAgLXdlYmtpdC1tYXJnaW4tYmVmb3JlOiAwO1xuICAtd2Via2l0LW1hcmdpbi1hZnRlcjogMDtcbiAgLXdlYmtpdC1tYXJnaW4tc3RhcnQ6IDA7XG4gIC13ZWJraXQtbWFyZ2luLWVuZDogMDtcbiAgLXdlYmtpdC1wYWRkaW5nLXN0YXJ0OiAwO1xufVxuXG5oMSwgaDIsIGgzIHtcbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICBmb250LXNpemU6IDI0cHg7XG4gICAgbGluZS1oZWlnaHQ6IDEuNDtcbiAgfVxufVxuXG4vKiBGb3JtIGVsZW1lbnRzICovXG5pbnB1dCB7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgcGFkZGluZzogNXB4O1xuICBoZWlnaHQ6IDM2cHg7XG4gIGNvbG9yOiAkYmxhY2s7XG5cbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuYnV0dG9uIHtcbiAgJjpmb2N1cyB7XG4gICAgb3BhY2l0eTogMC44O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuYSB7XG4gICY6Zm9jdXMge1xuICAgIG91dGxpbmU6IG5vbmU7XG4gIH1cbn1cblxuc2VsZWN0IHtcbiAgY29sb3I6ICRibGFjaztcbiAgdGV4dC1pbmRlbnQ6IDVweDtcbn1cblxuLmlucHV0LCAuc2VsZWN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGNvbG9yOiAkYmxhY2s7XG5cbiAgbGFiZWwge1xuICAgIEBpbmNsdWRlIGZvcm1MYWJlbDtcbiAgfVxuICBpbnB1dCB7XG4gICAgQGluY2x1ZGUgZm9ybUlucHV0O1xuICB9XG4gIHNlbGVjdCB7XG4gICAgQGluY2x1ZGUgZm9ybUlucHV0O1xuICAgIEBpbmNsdWRlIGZvcm1TZWxlY3Q7XG4gICAgQGluY2x1ZGUgc2VsZWN0QmFja2dyb3VuZDtcbiAgfVxuICAuZXJyb3Ige1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogNXB4O1xuICAgIHRvcDogLTJweDtcbiAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICBAaW5jbHVkZSBlcnJvcjtcbiAgfVxuICAmLmlucHV0LW1lc3NhZ2Uge1xuICAgIC5lcnJvciB7XG4gICAgICBtYXJnaW4tdG9wOiA5cHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIHJvdyAqL1xuLnJvdyB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICBtYXJnaW4tcmlnaHQ6IDA7XG5cbiAgJjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IG5vbmU7XG4gIH1cbn1cblxuLnJvdy1idXR0b25zIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luOiAyMHB4IDA7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuYnV0dG9uIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBtYXJnaW46NXB4IDA7XG4gICAgfVxuICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIG1hcmdpbjogMTBweCAwICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYucm93LWJ1dHRvbnMtdHdvIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vKiBidXR0b25zICovXG4uYnV0dG9uLCBhLmJ1dHRvbiB7XG4gIEBpbmNsdWRlIHVuaW9uQnV0dG9uO1xuXG4gIC8qIFBpc3MgUG9vciBQbGFubmluZyBQcm9tb3RlcyBQb29yIFBlcmZvcm1hbmNlICAqL1xuICBib2R5LmFjY291bnQgI3BhZ2UgJixcbiAgYm9keS5zdG9yZSAjcGFnZSAmIHtcbiAgICBjb2xvcjogJHdoaXRlO1xuICB9XG59XG5cbi5idXR0b24tcHJpbWFyeSB7XG4gIEBpbmNsdWRlIHByaW1hcnlCdXR0b247XG59XG5cbmJ1dHRvbltkaXNhYmxlZD1cImRpc2FibGVkXCJdLFxuYVtkaXNhYmxlZD1cImRpc2FibGVkXCJdIHtcbiAgY3Vyc29yOiBub3QtYWxsb3dlZCAhaW1wb3J0YW50O1xuICBvcGFjaXR5OiAwLjU7XG59XG5cbi5idG4tYWNjb3JkaW9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nLWJvdHRvbTogMWVtO1xuXG4gICY6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHdpZHRoOiAwO1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07XG4gICAgYm9yZGVyLXN0eWxlOiBzb2xpZDtcbiAgICBib3JkZXItd2lkdGg6IDAuNWVtIDAuMjVlbSAwIDAuMjVlbTtcbiAgICBib3JkZXItY29sb3I6ICRsaW5rQ29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJlthcmlhLWV4cGFuZGVkPVwidHJ1ZVwiXSB7XG4gICAgJjphZnRlciB7XG4gICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO1xuICAgIH1cbiAgfVxufVxuXG4jZmFuY3lib3gtY29udGVudCB7XG4gIHAge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gIH1cbiAgYnV0dG9uIHtcbiAgICBwYWRkaW5nOiAxMHB4IDE0cHg7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZ3JleTtcbiAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgQGluY2x1ZGUgdW5pb25CdXR0b247XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgfVxuICB9XG59XG4iLCIvKiBhY2NvdW50IGltcG9ydHMgKi9cblxuQGltcG9ydCBcIi4vZ2xvYmFsL2FjY291bnQtZ2xvYmFsLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2FkZHJlc3MvMi1jb2wtYWRkcmVzcy1kYXNoYm9hcmQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vZGFzaGJvYXJkLzItY29sLWFjY291bnQtZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2xpbmtlZC1hY2NvdW50LzItY29sLWxpbmtlZC1hY2NvdW50LWRhc2hib2FyZC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9tYW5hZ2UtYWNjb3VudC8yLWNvbC1tYW5hZ2UtcHJvZmlsZS1kYXNoYm9hcmQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vbWFuYWdlLWF2YXRhci8yLWNvbC1hdmF0YXItZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL25vdGlmaWNhdGlvbnMvMi1jb2wtbWFuYWdlLW5vdGlmaWNhdGlvbnMtZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL29yZGVycy9kZXRhaWwvbXVsdGktcm93LW9yZGVyLWRldGFpbC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9vcmRlcnMvbGlzdGluZy8yLWNvbC1vcmRlci1saXN0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3BhcnRpYWxzL25hdmlnYXRpb24uc2Nzc1wiO1xuIiwiLm1haW4tYWNjb3VudCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgbWluLWhlaWdodDogNjAwcHg7XG5cbiAgJiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICAuaGVhZGVyLWFjY291bnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuXG4gICAgaDEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICB9XG4gIC5hc2lkZS1uYXYsXG4gIC5hc2lkZS1hY2NvdW50IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5hc2lkZS1uYXYge1xuICAgIHdpZHRoOiAyNSU7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGVEaXNwbGF5QmxvY2s7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICB9XG4gIC5hc2lkZS1hY2NvdW50IHtcbiAgICB3aWR0aDogNzUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGVEaXNwbGF5QmxvY2s7XG5cbiAgICAuZmllbGRzZXQtYWNjb3VudCB7XG4gICAgICBsZWdlbmQge1xuICAgICAgICBAaW5jbHVkZSBsZWdlbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hc2lkZS1hY2NvdW50IHtcbiAgLnRhYmxlIHtcbiAgICA+IHRib2R5IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRkIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQge1xuICAgICAgdHIge1xuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLWFjY291bnQtbWFuYWdlLWFkZHJlc3Mge1xuICAuYXNpZGUtYWNjb3VudC1tYW5hZ2UtYWRkcmVzcyB7XG4gICAgbGVnZW5kIHtcbiAgICAgIEBpbmNsdWRlIGxlZ2VuZDtcbiAgICB9XG4gICAgLmZpZWxkc2V0LWJpbGxpbmcge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICAgLmlucHV0LCAuc2VsZWN0IHtcbiAgICAgICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpZWxkc2V0LXNoaXBwaW5nIHtcbiAgICAgIC5jaGVja2JveCB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucm93LXBvbGljeS1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICAgIC5yb3ctYnV0dG9ucyB7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIubWFpbi1hY2NvdW50LWRhc2hib2FyZCB7XG4gIC5hc2lkZS1hY2NvdW50LWRhc2hib2FyZCB7XG4gICAgLnRhYmxlIHtcbiAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1vYmlsZVRhYmxlO1xuICB9XG59XG4iLCIubWFpbi1hY2NvdW50LW1hbmFnZWQtbGlua2VkIHtcbiAgLmFzaWRlLWFjY291bnQtbWFuYWdlZC1saW5rZWQge1xuICAgIEBpbmNsdWRlIG1vYmlsZVRhYmxlO1xuXG4gICAgLnRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGQge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1tYW5hZ2Uge1xuICAuYXNpZGUtYWNjb3VudCB7XG4gICAgLnJvdy1wb2xpY3ktcHJldmlldyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgcCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucm93LXBvbGljeS1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICB9XG4gICNjb250YWluZXIgJiB7XG4gICAgLmVycm9yIHtcbiAgICAgICYsICYgYSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIGNvbG9yOiAjZDk1MzRmO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1hdmF0YXIge1xuICAuc2VjdGlvbi1hY2NvdW50LW1hbmFnZS1hdmF0YXIge1xuICAgIC5ub3RlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIC5maWVsZHNldC1tYW5hZ2UtYXZhdGFyIHtcbiAgICAgIC5saXN0IHtcbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgLmZpbGUge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnVybCB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0R3JleTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4IDAgNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucm93LXByaXZhY3ktcG9saWN5LWRpc2NsYWltZXIge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLWFjY291bnQtbm90aWZpY2F0aW9ucyB7XG4gIC5hc2lkZS1hY2NvdW50LW5vdGlmaWNhdGlvbnMge1xuICAgIGxlZ2VuZCB7XG4gICAgICBAaW5jbHVkZSBsZWdlbmQ7XG4gICAgfVxuICAgIC5yb3ctYnV0dG9ucy10d28ge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgIH1cbiAgICAuZmllbGRzZXQtc3Vic2NyaXB0aW9uLW5vdGlmaWNhdGlvbnMge1xuICAgICAgLmNoZWNrYm94IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yNHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgKyAuY2hlY2tib3gge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLm5vdGUge1xuICAgICAgICAgIG1hcmdpbjogMnB4IDAgMTBweCAyNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1vcmRlci1zdW1tYXJ5IHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgcGFkZGluZzogMjBweCAyMHB4O1xuXG4gICAgLndyYXAge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICBoMSwgLmgxLCBoMiwgLmgyLCBoMywgLmgzIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIC5zZWN0aW9uLW9yZGVyLWluZm9ybWF0aW9uLFxuICAuc2VjdGlvbi1vcmRlci1pdGVtaXphdGlvbixcbiAgLnNlY3Rpb24tb3JkZXItc2hpcG1lbnRzLFxuICAuc2VjdGlvbi1vcmRlci13aWxsLWNhbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAudGFibGUge1xuICAgICAgdGhlYWQge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRyIHtcbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IHRoZWFkIHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiB0Ym9keSB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuXG4gICAgICAgICAgICAuc2t1IHtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHRoIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1vcmRlci1pbmZvcm1hdGlvbiB7XG4gICAgLmNvbCB7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgJi5jb2wtMS0zIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tb3JkZXItaXRlbWl6YXRpb24ge1xuICAgIC50YWJsZSB7XG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tb3JkZXItc2hpcG1lbnRzIHtcbiAgICAucm93LXNoaXBwaW5nLWluZm9ybWF0aW9uIHtcbiAgICAgIC5vcmRlciB7XG4gICAgICAgICYuc3RhdHVzIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEycHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICYuY29sLTEtMiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1yb3cge1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG4gIC50cnVzdHBpbG90LXJldmlldyB7XG4gICAgbWFyZ2luOiAyZW0gYXV0bztcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1vcmRlci1saXN0IHtcblxuICAuYXNpZGUtb3JkZXItbGlzdCB7XG4gICAgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgLm5vLW9yZGVycyB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtb2JpbGVUYWJsZTtcbiAgfVxufVxuIiwiLmFzaWRlLW5hdiB7XG4gIHVsIHtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDVweDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLml0ZW0ge1xuICAgICAgJi5saW5rZWQge1xuICAgICAgICAuY291bnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgcGFkZGluZzogNnB4IDdweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvdW50ZXJCZ0NvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkY291bnRlckNvbG9yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hdmF0YXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIC5waWMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmVkaXQge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIgLmVkaXQge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIE1vZGFsIEJvb3RzdHJhcCA7KSAqL1xuLm1vZGFsIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuNzUpO1xufVxuXG4vKiBHZW5lcmFsIE1lc3NhZ2VzICovXG4ubW9kYWwtZW5naW5lLW1lc3NhZ2VzIHtcbiAgLm1vZGFsLWRpYWxvZyB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIG1hcmdpbjogMTIlIGF1dG87XG4gICAgfVxuICAgIC5tb2RhbC1oZWFkZXIge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7XG4gICAgICB9XG4gICAgICBoNSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgICAuY2xvc2Uge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lO1xuICAgICAgICBtYXJnaW4tdG9wOiAtMTJweDtcbiAgICAgICAgb3BhY2l0eTogMS4wO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNzU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1vZGFsLWJvZHkge1xuICAgICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICB9XG4gICAgICAgIGkge1xuICAgICAgICAgIG1hcmdpbjogMCA1cHg7XG4gICAgICAgIH1cbiAgICAgICAgLmdseXBoaWNvbi1hbGVydCB7XG4gICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgIH1cbiAgICAgICAgLmdseXBoaWNvbi10aHVtYnMtdXAge1xuICAgICAgICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tb2RhbC1mb290ZXIge1xuICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICB9XG4gIH1cbn1cblxuLyogUHJvZHVjdCBJbWFnZXMgKi9cbi5tb2RhbC1wcm9kdWN0LWltYWdlcyB7XG4gIC5tb2RhbC1kaWFsb2cge1xuICAgIHBhZGRpbmctdG9wOiAwO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY4cHgpIHtcbiAgICAgIG1hcmdpbjogNjBweCBhdXRvO1xuICAgIH1cbiAgICBpbWcge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG4gIC5tb2RhbC1oZWFkZXIge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLmNsb3NlIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmb250LXNpemU6IDM0cHg7XG4gICAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgICAgIG1hcmdpbi10b3A6IC0xMnB4O1xuICAgICAgb3BhY2l0eTogMS4wO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjhweCkge1xuICAgICAgICBmb250LXNpemU6IDQ4cHg7XG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IGNhbGMoNTAlICsgMTVweCk7XG4gICAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICB9XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogVml2YSBsYSBsZWdhY3kgKi9cbi5lbmdpbmUtbWVzc2FnZXMge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogY2FsYyg1MCUgLSAyMDBweCk7XG4gIGxlZnQ6IGNhbGMoNTAlIC0gMzAwcHgpO1xuICB6LWluZGV4OiAxMDAwMDAwMDAwMDAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gIHdpZHRoOiA2MDBweDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgYm94LXNoYWRvdzogMnB4IDJweCAycHggcmdiYSgkYmxhY2ssIDAuNSk7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjAwcHgpIHtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDIwMHB4KTtcbiAgICB3aWR0aDogNDAwcHg7XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgICBsZWZ0OiBjYWxjKDUwJSAtIDE1MHB4KTtcbiAgICB3aWR0aDogMzAwcHg7XG4gIH1cbiAgLmhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICB1bCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICBsaSB7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIH1cbiAgICAmLm1lc3NhZ2VzIHtcbiAgICAgIG1hcmdpbjogMjBweCAwO1xuICAgICAgcGFkZGluZzogMTBweDtcblxuICAgICAgLmVycm9yIHtcbiAgICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG5cbiAgICAgICAgaSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgY29sb3I6ICRlcnJvclJlZDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnN1Y2Nlc3Mge1xuICAgICAgICBwYWRkaW5nOiAwIDEycHg7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIH1cbiAgICB9XG4gICAgJi5hY3Rpb25zIHtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICBidXR0b24ge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IGNhcGl0YWxpemU7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cbiAgICAgICAgJi5jbG9zZSB7XG4gICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtHcmV5O1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDI0cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgICAgICAgICBvcGFjaXR5OiAxLjA7XG4gICAgICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZXk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIFN0eWxlcyBmb3Igc3RvcmUgdHBsIGZpbGVzXG4gKi9cblxuQGltcG9ydCAnLi92YXJpYWJsZXMvdmFyaWFibGVzLnNjc3MnO1xuXG4vKiBtb2R1bGVzICovXG5AaW1wb3J0ICcuL2F2YXRhci9hdmF0YXIuc2Nzcyc7XG5AaW1wb3J0ICcuL21peGlucy9taXhpbnMuc2Nzcyc7XG5AaW1wb3J0ICcuL2dsb2JhbHMvZ2xvYmFscy5zY3NzJztcbkBpbXBvcnQgJy4vc3RvcmUvc3RvcmUuc2Nzcyc7XG5AaW1wb3J0ICcuL3BhcnRpYWxzL21vZGFsL21vZGFsLnNjc3MnO1xuXG4vKiBTdHlsZXMgZm9yIGJvb3RzdHJhcCBjYXJvdXNlbCAqL1xuQGltcG9ydCAnLi4vLi4vLi4vb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3dpZGdldHMvZnVsbC13aWR0aC1yZXNwb25zaXZlLWNhcm91c2VsLnNjc3MnO1xuIiwiLyogQXZhdGFyIHJvbGxvdmVycyAqL1xuJGF2YXRhclJvbGxvdmVyQmFja2dyb3VuZENvbG9yOiAjRUVFRUVFICFkZWZhdWx0O1xuJGF2YXRhclJvbGxvdmVyQ29sb3I6ICMyMjIyMjIgIWRlZmF1bHQ7XG4kYXZhdGFyUm9sbG92ZXJCb3JkZXJSYWRpdXM6IDVweCAhZGVmYXVsdDtcblxuLmF2YXRhcl93cmFwcGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIC1tb3otdHJhbnNpdGlvbjogbm9uZTtcbiAgdHJhbnNpdGlvbjogbm9uZTtcbn1cblxuLmF2YXRhcl9yb2xsb3ZlciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMTEwMDtcbiAgcGFkZGluZzogNnB4O1xuICBjb2xvcjogJGF2YXRhclJvbGxvdmVyQ29sb3I7XG4gIGJvcmRlci1yYWRpdXM6ICRhdmF0YXJSb2xsb3ZlckJvcmRlclJhZGl1cztcbiAgYmFja2dyb3VuZC1jb2xvcjogJGF2YXRhclJvbGxvdmVyQmFja2dyb3VuZENvbG9yO1xuICBvcGFjaXR5OiAwLjk7XG5cbiAgaW1nIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMTAwcHg7XG4gICAgaGVpZ2h0OiAxMDBweDtcbiAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgfVxuICAucm9sbG92ZXJfY29udGVudCB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuICAgIC5uYW1lIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuICAgIC5tb3JlIHtcbiAgICAgIGR0LCBkZCB7XG4gICAgICAgIHdpZHRoOiA0OXB4O1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgfVxuICAgICAgLnN0YXQge1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiXG4vKiBzdG9yZSBpbXBvcnRzICovXG5AaW1wb3J0IFwiLi9taXhpbi9mbGFnZWQtcHJvZHVjdC1saXN0aW5nLW1peGluLnNjc3NcIjtcbkBpbXBvcnQgXCIuL21peGluL2dlbmVyYWwtcHJvZHVjdC1saXN0aW5nLW1peGluLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2dsb2JhbC9zdG9yZS1nbG9iYWwuc2Nzc1wiO1xuQGltcG9ydCBcIi4vYmlsbGluZy8yLWNvbC1iaWxsaW5nLWxpc3Rpbmcuc2Nzc1wiO1xuQGltcG9ydCBcIi4vY2FydC9jYXJ0LXRhYmxlLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2NhdGVnb3JpZXMvM3gtY2F0ZWdvcmllcy1ncmlkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2NhdGVnb3JpZXMvY2F0ZWdvcmllcy1uYXYtbGlzdC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9jYXRlZ29yeS8zLWNvbC1jYXRlZ29yeS1ncmlkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL29yZGVyL2V4dHJhLzEtY29sLW9yZGVyLWV4dHJhLWxpc3Rpbmcuc2Nzc1wiO1xuQGltcG9ydCBcIi4vb3JkZXIvcGF5bWVudC8xLWNvbC1vcmRlci1wYXltZW50LXRhYmxlLnNjc3NcIjtcbkBpbXBvcnQgXCIuL29yZGVyL3dpbGxjYWxsLzEtY29sLW9yZGVyLXdpbGwtY2FsbC1saXN0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3BhcnRpYWxzL2FzaWRlLzEtY29sLWFzaWRlLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3BhcnRpYWxzL21ldGEvbWV0YS1yb3cuc2Nzc1wiO1xuQGltcG9ydCBcIi4vcGFydGlhbHMvcHJvZ3Jlc3MvcHJvZ3Jlc3MtaW5kaWNhdG9yLXJvdy5zY3NzXCI7XG5AaW1wb3J0IFwiLi9wcm9kdWN0L2RldGFpbC8yLWNvbC1wcm9kdWN0LWRldGFpbC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9wcm9kdWN0L2xpc3RpbmcvMi1jb2wtcHJvZHVjdC1ncmlkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3Byb2R1Y3QvbGlzdGluZy8zLWNvbC1wcm9kdWN0LWdyaWQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vc2hpcHBpbmcvMi1jb2wtc2hpcHBpbmctbGlzdGluZy5zY3NzXCI7XG4iLCIvKiBtaXhpbiBmb3IgZmxhZ2VkIGxpc3RpbmcgZm9yIHByb2R1Y3RzIGFuZCBjYXRlZ29yaWVzICovXG5cbkBtaXhpbiBmbGFnZ2VkUHJvZHVjdExpc3RpbmcgKCR3aWR0aCkge1xuICAuaXRlbSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6ICR3aWR0aDtcbiAgICBtYXJnaW46IDAgMSUgMSUgMDtcbiAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwIDAgMTVweCAwO1xuICAgIH1cbiAgICA+IC5wcm9kdWN0IHtcbiAgICAgIGJvcmRlcjogNHB4IHNvbGlkICRibGFjaztcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cbiAgICAuZmlndXJlIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICBtaW4td2lkdGg6IDA7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRibGFjaywgMC45KTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgIH1cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb250ZW50IHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgYm90dG9tOiAwO1xuICAgICAgbGVmdDogMDtcblxuICAgICAgYSB7XG4gICAgICAgIHBhZGRpbmc6IDEycHggMTBweCAxMHB4IDEwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgc3BhbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgICAgIH1cbiAgICAgIC50YWIge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJvdHRvbTogMTAwJTtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgY29udGVudDogXCIuXCI7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgICAuZG93biB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICBjb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JleTtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcblxuICAgICAgICAgIGkge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgID4gLmNvc3Qge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgID4gc3BhbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjU7XG4gICAgICAgICAgICBwYWRkaW5nOiAwIDE0cHggMCAxNHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgbWF4LWhlaWdodDogMDtcbiAgICAgICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjhzIGVhc2U7XG5cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICAgIH1cbiAgICAgICAgLnByb2R1Y3Qge1xuICAgICAgICAgICYuY29zdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lXG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICY6aG92ZXIgLmNvbnRlbnQgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICBtYXgtaGVpZ2h0OiAyMDBweDtcbiAgICB9XG4gICAgJjpob3ZlciBpbWcge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgxLjI1KTtcbiAgICB9XG4gICAgLmZlYXR1cmVkLnByb2R1Y3RzIC5saXN0aW5nIC5pdGVtIHtcbiAgICAgIHdpZHRoOiA0OSU7XG5cbiAgICAgICYuc2Vjb25kIHtcbiAgICAgICAgbWFyZ2luOiAwIDAgMiU7XG4gICAgICB9XG4gICAgICAuY29udGVudCAudGFiIHtcbiAgICAgICAgaGVpZ2h0OiA0MHB4O1xuXG4gICAgICAgIC5kb3duIHtcbiAgICAgICAgICB3aWR0aDogNDVweDtcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnXFxlMjYwJztcbiAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIHRvcDogM3B4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuY29zdCB7XG4gICAgICAgICAgcGFkZGluZy10b3A6IDExcHg7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZmxhZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogNzBweDtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiA3MHB4O1xuICAgICAgei1pbmRleDogMTAxO1xuICAgICAgdGV4dC1pbmRlbnQ6IC05OTk5ZW07XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kOiB1cmwoJy90aGVtZXMvb3JpZ2luL2ltZy9mbGFncy5wbmcnKSAwIDAgbm8tcmVwZWF0IHRyYW5zcGFyZW50O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcblxuICAgICAgJi5mZWF0dXJlZCB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0xNTZweCAwO1xuICAgICAgfVxuICAgICAgJi5idW5kbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwIDA7XG4gICAgICB9XG4gICAgICAmLm5ldyB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC03OHB4IDBweDtcbiAgICAgIH1cbiAgICAgICYuc2FsZSB7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IC0yMzJweCAwO1xuICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW0udGhpcmQge1xuICAgICAgbWFyZ2luOiAwIDAgMiU7XG4gICAgfVxuICAgIC5wcm9kdWN0cy5zaG9wIHtcbiAgICAgIC5saXN0aW5nIHtcbiAgICAgICAgLml0ZW0ge1xuICAgICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAgIC50YWIge1xuICAgICAgICAgICAgICAuZG93biB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDMxcHg7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgIHRvcDogNHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAubm9uZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc21hbGxNb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgIC5jb21wYWN0IHtcbiAgICAgIC5pdGVtIHtcbiAgICAgICAgLmNvbnRlbnQge1xuICAgICAgICAgIC50YWIge1xuICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuXG4gICAgICAgICAgICAuZG93biB7XG4gICAgICAgICAgICAgIGhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgICAgICAgICBpIHtcbiAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiAuY29zdCB7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyLjQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA+IC5jb3N0ID4gc3BhbiB7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDAgMTRweDtcbiAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogZ2VuZXJhbCBsaXN0aW5nIGZvciBwcm9kdWN0cyBhbmQgY2F0ZWdvcmllc1xuICovXG5AbWl4aW4gZ2VuZXJhbFByb2R1Y3RMaXN0aW5nICgkd2lkdGgpIHtcbiAgLml0ZW0ge1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmZpZ3VyZSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0cmFuc2l0aW9uOiAkZWFzZTtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG5cbiAgICAgIC5wcm9kdWN0LWNvbnRhaW5lciB7XG4gICAgICAgIC5wcm9kdWN0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIHN0b3JlIGVsZW1lbnRzICovXG4ubWFpbi1zdG9yZS1wcm9kdWN0cyxcbi5tYWluLWNhdGVnb3J5LXByb2R1Y3RzIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIEBpbmNsdWRlIG1vYmlsZURpc3BsYXlCbG9jaztcbiAgd2lkdGg6IDc1JTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmctcmlnaHQ6IDE1cHg7XG5cbiAgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuXG4uYXNpZGUtc3RvcmUge1xuICBAaW5jbHVkZSBtb2JpbGVEaXNwbGF5QmxvY2s7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIHdpZHRoOiAyNSU7XG4gIGZsb2F0OiByaWdodDtcbiAgcGFkZGluZy1sZWZ0OiAxNXB4O1xufVxuXG5hc2lkZSN3dS1hbGVydC1iYW5uZXIge1xuICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgZm9udC1zaXplOiAxNnB4O1xuICB3aWR0aDogMTAwdnc7XG4gIG1pbi1oZWlnaHQ6IDUwcHg7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2RiMDAwMDtcbiAgb3BhY2l0eTogMC45O1xuICBjb2xvcjogI2ZmZjtcbiAgei1pbmRleDogMTIzNDtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG5cbiAgLm1lc3NhZ2UtdGV4dCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZsZXgtYmFzaXM6IDUwJTtcblxuICAgIC5tb3JlLWluZm8ge1xuICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5jbG9zZSB7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIG9wYWNpdHk6IDE7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgaGVpZ2h0OiAyMHB4O1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICByaWdodDogMTBweDtcbiAgICB0b3A6IDEwcHg7XG4gIH1cbn0iLCIuc2VjdGlvbi1vcmRlci1iaWxsaW5nIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIC5zZWN0aW9uLWJpbGxpbmctcHJvZmlsZSxcbiAgLnNlY3Rpb24tYmlsbGluZy1pbmZvcm1hdGlvbiB7XG4gICAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuXG4gICAgaDEsIGgyLCBoMyB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgICBpbnB1dCwgc2VsZWN0IHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gICAgICBmb250OiAzMDAgMTZweCBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gICAgfVxuICAgIC5yb3ctcGF5bWVudC1tZXRob2Qge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmZpZWxkc2V0IHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB0cmFuc2l0aW9uOiAkZWFzZTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgbGVnZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgbGVnZW5kO1xuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5idXR0b24ge1xuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbi1jb250aW51ZSxcbiAgICAuYnV0dG9uLXNhdmUge1xuICAgICAgQGluY2x1ZGUgcHJpbWFyeUJ1dHRvbjtcbiAgICB9XG5cbiAgfVxuICAuc2VjdGlvbi1iaWxsaW5nLXByb2ZpbGUge1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gIH1cbiAgLnNlY3Rpb24tYmlsbGluZy1pbmZvcm1hdGlvbiB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMDtcbiAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogMDtcbiAgICBwYWRkaW5nLXRvcDogMDtcbiAgfVxuICAuU3RyaXBlRWxlbWVudCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogOHB4IDEwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAzNnB4O1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgdGV4dC1pbmRlbnQ6IDlweDtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgfVxufVxuIiwiLmNhcnQtaW5mbyB7XG4gIEBpbmNsdWRlIHN1YkNvbnRhaW5lcjtcblxuICBjb2xvcjogJGJsYWNrO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcblxuICAuY2FydC1pdGVtcyB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cblxuICAgIGZsb2F0OiByaWdodDtcbiAgfVxufVxuXG4uc2VjdGlvbi1jYXJ0IHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIGgxIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBtYXJnaW46IDIwcHggMCA0MHB4IDA7XG4gIH1cblxuICAuc2VjdGlvbi1jYXJ0LWluZm9ybWF0aW9uIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAucmV2aWV3IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGVCb3JkZXJDb2xvcjtcbiAgICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICB9XG4gIH1cblxuICAudGFibGUge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXJSYWRpdXM7XG4gICAgcGFkZGluZzogMTBweDtcblxuICAgIHRoZWFkIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRvdGFsIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG5cbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cblxuICAgIHRoLnF1YW50aXR5LFxuICAgIHRkLnF1YW50aXR5IHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgfVxuXG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgd2lkdGg6IDEwMHB4O1xuICAgIH1cblxuICAgIHRoIHtcbiAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgfVxuXG4gICAgdGQge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6OmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWRlc2NyaXB0aW9uKTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodDMwMDtcbiAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7XG5cbiAgICAgICYudGQtYnVuZGxlLWV4dHJhIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC5idXR0b24tcXVhbnRpdHkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya0dyZXk7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIHdpZHRoOiAzMXB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodEJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYuaXRlbSB7XG4gICAgICAgIGEge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBjb2xvcjogJGdyZXk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNrdSB7XG4gICAgICAgICAgY29sb3I6ICRkYXJrR3JleTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnF1YW50aXR5IHtcbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgICAgIGhlaWdodDogMzJweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICB0Zm9vdCB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgfVxuXG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBwYWRkaW5nOiA4cHggMTJweCA0cHggMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICB0ZCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgcGFkZGluZzogMnB4IDEycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAudGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkdGFibGVCb3JkZXJDb2xvciwgMC4yKTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuXG4gIC50YWJsZSA+IHRmb290ID4gdHIgPiB0ZCxcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIGJvcmRlci10b3A6IDA7XG4gICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgd2lkdGg6IDEwMHB4O1xuICB9XG5cbiAgLnJvdy1idXR0b25zLWFjdGlvbnMge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAuYnV0dG9uLWdyb3VwIHtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAuYnV0dG9uLWNvbnRpbnVlIHtcbiAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICRkYXJrR3JleTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICB3aWR0aDogMTAwJTtcblxuICAgIGEsXG4gICAgYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIHVuaW9uQnV0dG9uO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWlkR3JleTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAuYnV0dG9uLXVwZGF0ZSB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICB9XG5cbiAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICB9XG5cbiAgICAuYnV0dG9uLWNoZWNrb3V0IHtcbiAgICAgIEBpbmNsdWRlIHByaW1hcnlCdXR0b247XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1zdG9yZS1jYXRlZ29yaWVzIHtcbiAgQGluY2x1ZGUgZ2VuZXJhbFByb2R1Y3RMaXN0aW5nKCR3aWR0aDogMzMlKTtcblxuICAuaGVhZGVyLXN0b3JlLWNhdGVnb3JpZXMge1xuICAgIGgyLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG4gICAgfVxuICB9XG4gIC5pdGVtIHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgbWluLWhlaWdodDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG4gIC5pdGVtIHtcbiAgICAuY29udGVudCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiA2cHggMTBweCAxMHB4IDEwcHg7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgY29sb3I6IHJnYmEoJGJsYWNrLCAwLjUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5oZWFkZXItY2F0ZWdvcmllcywgLmhlYWRlci1zdG9yZS1jYXRlZ29yaWVzIHtcbiAgICAudGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cbiAgLmRldGFpbC1zdG9yZS1jYXRlZ29yaWVzIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1hcmdpbjogMjBweCBhdXRvIDEwMHB4IGF1dG87XG5cbiAgICAubGlzdGluZyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgIH1cbiAgfVxuICAuZGV0YWlscyB7XG4gICAgJi5leGNlcnB0IHtcbiAgICAgIC5uYW1lIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qIHN0b3JlIGNhdGVnb3J5IG5hdiBsaXN0ICovXG4ubmF2LWNhdGVnb3JpZXMge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLndyYXAge1xuICAgIHBhZGRpbmctYm90dG9tOiAxMnB4O1xuICAgIHBhZGRpbmctdG9wOiAxMnB4O1xuXG4gICAgLmxpc3Rpbmcge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cbiAgfVxufVxuIiwiLm1haW4tY2F0ZWdvcnktcHJvZHVjdHMge1xuICAuaGVhZGVyLWNhdGVnb3J5IHtcbiAgICBoMS50aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgfVxuICAubGlzdGluZyB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAgLy8ganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICB9XG4gIC5kZXRhaWwge1xuICAgIEBpbmNsdWRlIGdlbmVyYWxQcm9kdWN0TGlzdGluZygkd2lkdGg6IDMzJSk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IDAgMCAxMDBweCAwO1xuXG4gICAgLml0ZW0ge1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgICAgLm5hbWUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmRldGFpbHMge1xuICAgICAgLnRhYiB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgICAuY2FzaCB7XG4gICAgICBmb250LXdlaWdodDogODAwO1xuICAgIH1cbiAgfVxufVxuIiwiLnNlY3Rpb24tb3JkZXItZXh0cmEge1xuICAvLyBAaW5jbHVkZSBjb250YWluZXI7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICBwYWRkaW5nOiAyMHB4O1xuICB9XG5cbiAgLnNlY3Rpb24tYWRkaXRpb25hbC1pbmZvcm1hdGlvbiB7XG4gICAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuXG4gICAgLmZpZWxkc2V0IHtcbiAgICAgIGxlZ2VuZCB7XG4gICAgICAgIEBpbmNsdWRlIGxlZ2VuZDtcblxuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5yb3ctYnV0dG9ucyB7XG4gICAgICAuYnV0dG9uLXNoaXBwaW5nLWJhY2sge1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDI0cHg7XG5cbiAgICAgICAgJjpob3ZlcixcbiAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAuYnV0dG9uLXN1Ym1pdC1hZGRpdGlvbmFsLWluZm8ge1xuICAgICAgICBAaW5jbHVkZSBwcmltYXJ5QnV0dG9uO1xuXG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnNlY3Rpb24tcGF5bWVudC1pbmZvcm1hdGlvbiB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcblxuICAuaGVhZGVyLW9yZGVyLXN1bW1hcnkge1xuICAgIEBpbmNsdWRlIHN1YkNvbnRhaW5lcjtcbiAgICBtYXJnaW4tYm90dG9tOiAzMHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tcGF5bWVudC1hZGRyZXNzLWluZm9ybWF0aW9uLFxuICAuc2VjdGlvbi1wdXJjaGFzZS1pbmZvcm1hdGlvbiB7XG4gICAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuXG4gICAgLmNvbCB7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgJi5jb2wtMS0yIHtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuXG4gICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiA1cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50YWJsZSA+IHRoZWFkID4gdHIgPiB0aCxcbiAgICAudGFibGUgPiB0Ym9keSA+IHRyID4gdGQsXG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkLFxuICAgIC50YWJsZSA+IHRmb290ID4gdHIgPiB0aCB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICBib3JkZXItdG9wOiAwO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAmOm5vdCg6bGFzdC1jaGlsZCkge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogcmdiYSgkdGFibGVCb3JkZXJDb2xvciwgLjIpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC50YWJsZSA+IHRmb290ID4gdHIgPiB0aCB7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRkLFxuICAgIC50YWJsZSA+IHRmb290ID4gdHIgPiB0aCB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlIHtcbiAgICAgIC50b3RhbCB7XG4gICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgfVxuICAgICAgICBzdHJvbmcge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrR3JlZW47XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICBwYWRkaW5nOiA2cHggOHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjJlbTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnNrdSB7XG4gICAgICAgIGNvbG9yOiAkZGFya0dyZXk7XG4gICAgICB9XG4gICAgICAucXVhbnRpdHkge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBhLmJ1dHRvbiB7XG4gICAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5idXR0b24ge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjcHJvbW9Db2RlIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICB3aWR0aDogMzQwcHg7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgIGhlaWdodDogNDJweDtcbiAgICAgICAgICB0ZXh0LWluZGVudDogOXB4O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuXG4gICAgICAgICAgQGluY2x1ZGUgcHJpbWFyeUJ1dHRvbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGhlYWQge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRkIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGNvbnRlbnQ6IGF0dHIoZGF0YS1kZXNjcmlwdGlvbik7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0Zm9vdCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICB9XG4gICAgICAgIHRoLCB0ZCB7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMTJweCA4cHggNHB4IDhweDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0ZCB7XG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICN0b3RhbHMge1xuICAgICAgICB0ciB7XG4gICAgICAgICAgLmdyYW5kLXRvdGFsIHtcbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLXB1cmNoYXNlLWluZm9ybWF0aW9uIHtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgLnRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgfVxuICAgIC5yb3ctcmV2aWV3IHtcbiAgICAgIGEge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbi1jb250aW51ZSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFya0dyZWVuO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRkYXJrR3JlZW4sIDEwKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgYSB7XG4gICAgJi5idXR0b24ge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnJvdy1yZXZpZXcge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbn1cbiIsIi5zZWN0aW9uLXdpbGwtY2FsbCB7XG4gIC5zZWN0aW9uLXdpbGwtY2FsbC1mb3JtIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG4gIH1cbn1cbiIsIi5hc2lkZS1zdG9yZSB7XG4gIEBpbmNsdWRlIHN1YkNvbnRhaW5lcjtcbiAgZmxvYXQ6IHJpZ2h0O1xuICB3aWR0aDogMjUlO1xuICBtYXJnaW46IDA7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICA+IC5oZWFkZXIge1xuICAgIHBhZGRpbmc6IDAgMCAxNXB4IDA7XG4gIH1cbiAgLmhlYWRlciB7XG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIC5jYXJ0LWl0ZW1zIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgICAmLWFzaWRlIHtcbiAgICAgIC50aXRsZSB7XG4gICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICB9XG4gICAgICAubWV0YSB7XG4gICAgICAgIC5leHBpcmUge1xuICAgICAgICAgIC5jYXJ0IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnZpZXctY2FydCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICAmLmNhcnQge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICBwYWRkaW5nOiAxMXB4IDIwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgICAgICAuYmFkZ2Uge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XG4gICAgICAgICAgY29sb3I6ICRwcmltYXJ5O1xuICAgICAgICAgIG1hcmdpbjogLTAuMmVtIDAgMCAwLjVlbTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAgZGFya2VuKCRwcmltYXJ5LCAxMCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNhcnQtaXRlbXMge1xuICAgIG1hcmdpbjogMTBweCBhdXRvIDVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIH1cbiAgLnRpdGxlIHtcbiAgICBib3JkZXItcmlnaHQ6IDA7XG4gIH1cbiAgLmxpc3Rpbmcge1xuICAgIC5pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDEwcHggNXB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuXG4gICAgICBzcGFuLCBhIHtcbiAgICAgICAgdHJhbnNpdGlvbjogMC41cyBlYXNlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1jYXRlZ29yaWVzIHtcbiAgICAuaGVhZGVyLWFzaWRlLCAuaGVhZGVyLWNhdGVnb3JpZXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogaW5pdGlhbDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG5cbiAgICAgIC50aXRsZSB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICAgIC5kZXRhaWwge1xuICAgICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgJjpudGgtY2hpbGQoMSkge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuaXRlbSB7XG4gICAgICAmLmN1cnJlbnQge1xuICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgLmNvbGxhcHNlLCAuY29sbGFwc2luZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICAgIC5idG4tYWNjb3JkaW9uIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNhcnQtdGltZXIge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLmV4cGlyZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgZm9udC1zaXplOiAwLjllbTtcbiAgICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xuXG4gICAgLmNhcnQge1xuICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgY29sb3I6ICR3aGl0ZTtcblxuICAgICAgJi12aXNpYmxlIHtcbiAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5jaGVja291dC1wcm9ncmVzcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaWdodEdyZXk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMTBweCAwO1xuICBtYXJnaW46IDEwcHggYXV0byAzMHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlclJhZGl1cztcbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG5cbiAgbGkge1xuICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgIHBhZGRpbmc6IDIwcHggMTBweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgfVxuICAgIGkge1xuICAgICAgY29sb3I6ICRkYXJrR3JlZW47XG4gICAgICB0b3A6IDNweDtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDNweDtcbiAgICB9XG4gIH1cbiAgLmN1cnJlbnQge1xuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gIH1cbn1cbiIsIi5zZWN0aW9uLXByb2R1Y3QtZGV0YWlsIHtcbiAgY29sb3I6ICRibGFjaztcblxuICBAc3VwcG9ydHMocGFkZGluZzogbWF4KDBweCkpIHtcbiAgICBwYWRkaW5nLWxlZnQ6IG0je2F9eCgxMHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgICBwYWRkaW5nLXJpZ2h0OiBtI3thfXgoMTBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICB9XG4gIC53cmFwIHtcbiAgICBAaW5jbHVkZSBjb250YWluZXI7XG4gIH1cbiAgLnNlY3Rpb24tcHJvZHVjdC1kZXNjcmlwdGlvbixcbiAgLnNlY3Rpb24tcHJvZHVjdC1wdXJjaGFzZSB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQgKyAxKSB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiA1MCU7XG4gICAgICBwYWRkaW5nOiAxMnB4O1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1wcm9kdWN0LWRlc2NyaXB0aW9uIHtcbiAgICAuZmlndXJlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlcjogJGJvcmRlcjtcbiAgICAgIG1heC13aWR0aDogNDAwcHg7XG4gICAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgJi5hY3RpdmUge1xuICAgICAgICAuaW1hZ2UtcGxhY2Vob2xkZXIge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIG1heC13aWR0aDogOTYlO1xuICAgICAgICBtYXJnaW46IDIlIGF1dG87XG4gICAgICAgIHBhZGRpbmc6IDIlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG5cbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcblxuICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICBvcGFjaXR5OiAwLjg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5wcm9kdWN0LXNvY2lhbCB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgICBhbGlnbi1pdGVtczogYmFzZWxpbmU7XG4gICAgICBtYXJnaW46IDJlbSAwO1xuXG4gICAgICAubGlrZSB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIHdpZHRoOiA4MHB4O1xuICAgICAgfVxuICAgICAgLnRydXN0cGlsb3Qtd2lkZ2V0IHtcbiAgICAgICAgd2lkdGg6IDE4MHB4O1xuICAgICAgICBoZWlnaHQ6IDM4cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLXByb2R1Y3QtcHVyY2hhc2Uge1xuICAgIG1hcmdpbi1ib3R0b206IDYwcHg7XG5cbiAgICA+IGgxIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICBmb250LXNpemU6IDIycHg7XG4gICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgIH1cbiAgICAucHJpY2Uge1xuICAgICAgZm9udC1zaXplOiAzMHB4O1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIG1hcmdpbjogMC4yNWVtIDAgMC41ZW0gMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICB9XG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG5cbiAgICAgICAgJi5wcmljZSB7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgfVxuICAgICAgICAmLnN0b2NrLFxuICAgICAgICAmLnNrdSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgICAgICYuc3RvY2sge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRncmVlbjtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDE1cHg7XG4gICAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDZweDtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMjtcblxuICAgICAgICAgICYub3V0IHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRlcnJvclJlZDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnB1cmNoYXNlX2Zvcm0ge1xuICAgICAgZmllbGRzZXQge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMW1zIDEwMG1zO1xuXG4gICAgICAgIGxlZ2VuZCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBhZGRpbmc6IDJweCAwIDEwcHggMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSwgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICB9XG4gICAgICAgIHVsIHtcbiAgICAgICAgICAmLnZhcmlhdGlvbnMge1xuICAgICAgICAgICAgLnNlbGVjdCB7XG4gICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5wYXltZW50IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICYuY2hlY2tlZCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTJweCA2cHg7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogNXB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodEdyZWVuO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRncmVlbjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMS41O1xuXG4gICAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgICAgY29sb3I6ICRkYXJrR3JleTtcbiAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcblxuICAgICAgICAgICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkZ3JlZW47XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgICAgICAgICBtYXJnaW46IDJweCAwIDAgLTI1cHg7XG4gICAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5hZGQtdG8tY2FydCB7XG4gICAgICAgICAgICBwYWRkaW5nLXRvcDogMTBweDtcblxuICAgICAgICAgICAgLnF1YW50aXR5IHtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICB3aWR0aDogNTBweDtcblxuICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIC5lcnJvciB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogMzVweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogJGVycm9yUmVkO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYnV0dG9uLWFkZC10by1jYXJ0IHtcbiAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAycHggMTBweDtcbiAgICAgICAgICAgICAgd2lkdGg6IDE0MHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICAkcHJpbWFyeTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDAwcHgpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAgZGFya2VuKCRwcmltYXJ5LCAxMCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgfVxuICAgICAgICAgICsgdWwge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tZXRhIHtcbiAgICAgIHBhZGRpbmc6IDAgMCAyMHB4IDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIDItY29sIFByb2R1Y3QgTGlzdGluZyAqL1xuLm1haW4tc3RvcmUtcHJvZHVjdHMge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21hbGxNb2JpbGVCcmVha3BvaW50KSB7XG4gIC5oZWFkZXItcHJvZHVjdHMge1xuICAgIC50aXRsZSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAucHJvZHVjdHMge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIC5pdGVtIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jb3N0IHtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgfVxuICAgICYuc2VjdGlvbi1wcm9kdWN0cy1mZWF0dXJlZCB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAubGlzdGluZyB7XG4gICAgICAgIC5ub25lIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuc2VjdGlvbi1wcm9kdWN0cyB7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIDMtY29sIFByb2R1Y3QgTGlzdGluZyAqL1xuLnNlY3Rpb24tcHJvZHVjdHMtZmVhdHVyZWQsIC5zZWN0aW9uLXByb2R1Y3RzIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gIC5saXN0aW5nIHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICAvLyBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG5cbiAgICAuaXRlbSB7XG4gICAgICB3aWR0aDogMzMlO1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgIHdpZHRoOiA1MCU7XG4gICAgICB9XG4gICAgICAuZmxhZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgICAudGFiIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC5wcm9kdWN0LWRldGFpbHMsIC50YWIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5zZWN0aW9uLXByb2R1Y3RzLWZlYXR1cmVkIHtcbiAgLmxpc3Rpbmcge1xuICAgIC5pdGVtIHtcbiAgICAgIHdpZHRoOiA1MCU7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgLnNlY3Rpb24tcHJvZHVjdHMge1xuICAgIC5pdGVtIHtcbiAgICAgIC5uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAwLjhlbTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5zZWN0aW9uLXNoaXBwaW5nLW1ldGhvZCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcblxuICAuc2VjdGlvbi1zaGlwcGluZy1hZGRyZXNzLWNvbnRhaW5lcixcbiAgLnNlY3Rpb24tc2hpcHBpbmctbWV0aG9kLWNvbnRhaW5lciB7XG4gICAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuXG4gICAgLmJ1dHRvbi1zYXZlLWFkZHJlc3MsXG4gICAgLmJ1dHRvbi1zYXZlLW1ldGhvZCB7XG4gICAgICBAaW5jbHVkZSBwcmltYXJ5QnV0dG9uO1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1zaGlwcGluZy1hZGRyZXNzLWNvbnRhaW5lciB7XG4gICAgLmZpZWxkc2V0LWNoYW5nZS1zaGlwcGluZy1hZGRyZXNzIHtcbiAgICAgIC5jaGVja2JveCB7XG4gICAgICAgIGxhYmVsIHtcbiAgICAgICAgICBtYXJnaW4tbGVmdDogMjBweDtcbiAgICAgICAgfVxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgbWFyZ2luOiAycHggMCAwIC0yMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLXNoaXBwaW5nLW1ldGhvZC1jb250YWluZXIge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gIH1cbiAgLmZpZWxkc2V0IHtcbiAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiA1MCU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRyYW5zaXRpb246ICRlYXNlO1xuICAgIG1hcmdpbjogMjBweCAwO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIHBhZGRpbmc6IDA7XG5cbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgbGVnZW5kIHtcbiAgICAgIEBpbmNsdWRlIGxlZ2VuZDtcbiAgICB9XG4gICAgLmNoZWNrYm94IHtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwIDVweCAxMHB4IDA7XG4gICAgICB9XG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIG1hcmdpbjogMCAgNXB4IDAgMDtcbiAgICAgIH1cbiAgICAgIHNlbGVjdCB7XG4gICAgICAgIEBpbmNsdWRlIGZvcm1TZWxlY3Q7XG4gICAgICAgIEBpbmNsdWRlIHNlbGVjdEJhY2tncm91bmQ7XG5cbiAgICAgICAgbGluZS1oZWlnaHQ6IDM2cHg7XG4gICAgICAgIHdpZHRoOiBjYWxjKDEwMCUgIC0gODBweCk7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvICsgLnJhZGlvLCAuY2hlY2tib3ggKyAuY2hlY2tib3gge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gIH1cbiAgI2ludGVybmF0aW9uYWxGaWVsZHNldCB7XG4gICAgLmNoZWNrYm94IHtcbiAgICAgIGlucHV0IHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICB3aWR0aDogMjBweDtcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5yb3ctYnV0dG9ucyB7XG4gICAgLmJ1dHRvbiB7XG4gICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogRnVsbCBXaWR0aCBSZXNwb25zaXZlIENhcm91c2VsICovXG5cbiAgLyogVmFycyAqL1xuICAkaGVpZ2h0LXBlcmNlbnRhZ2U6IDQwJSAhZGVmYXVsdDtcbiAgJGJnLWNvbG9yOiAjMDAwICFkZWZhdWx0O1xuXG4gICRsb2FkaW5nLWljb246IG51bGwgIWRlZmF1bHQ7XG5cbiAgLnNlY3Rpb24tY2Fyb3VzZWwge1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1ib3R0b206ICRoZWlnaHQtcGVyY2VudGFnZTtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG5cbiAgICAuaXRlbSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICAuY2FwdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGhlaWdodC1wZXJjZW50YWdlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAgIHdpZHRoOiA1JTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAkbG9hZGluZy1pY29uIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgkbG9hZGluZy1pY29uKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDI1MG1zIDBtcywgb3BhY2l0eSAyNTBtcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiIsIkBpbXBvcnQgJy4uLy4uL3VuaW9uL3NyYy9zY3NzL2FjY291bnQtaW1wb3J0LnNjc3MnO1xuQGltcG9ydCAnLi4vLi4vdW5pb24vc3JjL3Njc3Mvc3RvcmUtaW1wb3J0LnNjc3MnO1xuXG5ib2R5LmFjY291bnQge1xuICAjY29udGFpbmVyIHtcbiAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcblxuICAgIHNlbGVjdCwgdGV4dGFyZWEsIGlucHV0LCBidXR0b24ge1xuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogIzIxODhmZjtcbiAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMnB4IHJnYmEoMjcsIDMxLCAzNSwgMC4wNzUpLCAwIDAgMCAwLjJlbSByZ2JhKDMsIDEwMiwgMjE0LCAwLjMpO1xuICAgICAgfVxuICAgIH1cbiAgICB0ZXh0YXJlYSwgaW5wdXQge1xuICAgICAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cbiAgICBzZWxlY3QjZm9sZGVyLCBzZWxlY3QjYWN0aW9uIHtcbiAgICAgIG1pbi13aWR0aDogMTAwcHg7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpYVhOdkxUZzROVGt0TVNJL1Bqd2hSRTlEVkZsUVJTQnpkbWNnVUZWQ1RFbERJQ0l0THk5WE0wTXZMMFJVUkNCVFZrY2dNUzR4THk5RlRpSWdJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MMGR5WVhCb2FXTnpMMU5XUnk4eExqRXZSRlJFTDNOMlp6RXhMbVIwWkNJK1BITjJaeUIyWlhKemFXOXVQU0l4TGpFaUlHbGtQU0pEWVhCaFh6RWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZzlJakJ3ZUNJZ2VUMGlNSEI0SWlCM2FXUjBhRDBpTXpBMmNIZ2lJR2hsYVdkb2REMGlNekEyY0hnaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TURZZ016QTJJaUJ6ZEhsc1pUMGlaVzVoWW14bExXSmhZMnRuY205MWJtUTZibVYzSURBZ01DQXpNRFlnTXpBMk95SWdlRzFzT25Od1lXTmxQU0p3Y21WelpYSjJaU0krUEdjK1BHY2dhV1E5SW1WNGNHRnVaQzF0YjNKbElqNDhjRzlzZVdkdmJpQndiMmx1ZEhNOUlqSTNNQzR6TERVNExqWTFJREUxTXl3eE56VXVPVFVnTXpVdU55dzFPQzQyTlNBd0xEazBMak0xSURFMU15d3lORGN1TXpVZ016QTJMRGswTGpNMUlDSXZQand2Wno0OEwyYytQR2MrUEM5blBqeG5Qand2Wno0OFp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BHYytQQzluUGp4blBqd3ZaejQ4Wno0OEwyYytQR2MrUEM5blBqeG5Qand2Wno0OFp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BDOXpkbWMrKTtcbiAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoOTguNzUlIC0gNXB4KSA1MCU7XG4gICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xuICAgIH1cbiAgICAjR0Mge1xuICAgICAgcGFkZGluZzogMjBweDtcblxuICAgICAgaDIge1xuICAgICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICB9XG4gICAgICBsYWJlbCwgdGgge1xuICAgICAgICBmb250LWZhbWlseTogQXJpYWwsIEhlbHZldGljYSwgc2Fucy1zZXJpZjtcbiAgICAgIH1cbiAgICAgIGxlZ2VuZCBzcGFuIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgICB1bC5hY3Rpb25zIHtcbiAgICAgICAgYS5idXR0b24ge1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgfVxuICAgICAgICBidXR0b24uYnV0dG9uLXByaW1hcnksIGxpLm5leHQgPiBidXR0b24ge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkE0QzA2O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICB9XG4gICAgICAgIGJ1dHRvblt2YWx1ZT1cIkRlbGV0ZVwiXSB7XG4gICAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICAgICAgZm9ybS5EZWxldGUgPiBmaWVsZHNldCB7XG4gICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1hcmtJdFVwIHtcbiAgICAgICAgLmJiY29kZSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAjbWFya0l0VXBCb2R5IHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogYXV0bztcblxuICAgICAgICAjYm9keSB7XG4gICAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDkuMjVlbSk7XG4gICAgICAgIH1cbiAgICAgICAgLm1hcmtJdFVwQ29udGFpbmVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgICAgLm1hcmtJdFVwSGVhZGVyIHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5HQ19ibG9ncyB7XG4gICAgICAgIC5idXR0b24ge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgICAgcGFkZGluZzogMTJweCAyNHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IC41ZW07XG4gICAgICAgIH1cbiAgICAgICAgJi5HQ19tb2RpZnkge1xuICAgICAgICAgICN0aXRsZSB7XG4gICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5HQ19mcmllbmRzIHtcbiAgICAgICAgLmF2YXRhciB7XG4gICAgICAgICAgLmljb24sIC5kaXNwbGF5bmFtZSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5HQ19oZWFkZXIge1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAjZjFmMWYxO1xuXG4gICAgICBoMSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMzZweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICAgICAgcGFkZGluZzogLjVlbSAwIC40ZW07XG4gICAgICB9XG4gICAgfVxuICAgIC5mdWxsIHtcbiAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgfVxuICAgIC5HQ19wYW5lcyB7XG4gICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIG1hcmdpbjogMDtcblxuICAgICAgLmFzaWRlLW5hdiB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgd2lkdGg6IDI1JTtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBsaSA+IGEge1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIG1haW4ge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHdpZHRoOiA3NCU7XG4gICAgICB9XG4gICAgICAjdG9vbGJhciB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmdseXBoaWNvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgIHBhZGRpbmctcmlnaHQ6IDEwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5HQ192aWV3IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7XG4gICAgICAgICAgbWFyZ2luOiAuMjVlbSAwIC41ZW07XG4gICAgICAgIH1cbiAgICAgICAgcC5ub3RlIHtcbiAgICAgICAgICBjb2xvcjogIzk5OTtcbiAgICAgICAgfVxuICAgICAgICBidXR0b24jR28ge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAjR0MuR0NfYWNjb3VudCB7XG4gICAgICAjdG9vbGJhciB7XG4gICAgICAgIGEge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgdWwgbGkge1xuICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA4NDBweCkge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDJlbTtcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgICAubmF2IHtcbiAgICAgICAgICAgIGZsb2F0OiBub25lO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICA+IGEge1xuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50OiAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAubWFpbi1tYW5hZ2UtbWFpbC1uZXcsIC5tYWluLW1hbmFnZS1tYWlsLXJlYWQge1xuICAgICAgICBsaS5zZWxlY3Qge1xuICAgICAgICAgIHNlbGVjdCB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBtaW4td2lkdGg6IDc1cHg7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpYVhOdkxUZzROVGt0TVNJL1Bqd2hSRTlEVkZsUVJTQnpkbWNnVUZWQ1RFbERJQ0l0THk5WE0wTXZMMFJVUkNCVFZrY2dNUzR4THk5RlRpSWdJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MMGR5WVhCb2FXTnpMMU5XUnk4eExqRXZSRlJFTDNOMlp6RXhMbVIwWkNJK1BITjJaeUIyWlhKemFXOXVQU0l4TGpFaUlHbGtQU0pEWVhCaFh6RWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZzlJakJ3ZUNJZ2VUMGlNSEI0SWlCM2FXUjBhRDBpTXpBMmNIZ2lJR2hsYVdkb2REMGlNekEyY0hnaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TURZZ016QTJJaUJ6ZEhsc1pUMGlaVzVoWW14bExXSmhZMnRuY205MWJtUTZibVYzSURBZ01DQXpNRFlnTXpBMk95SWdlRzFzT25Od1lXTmxQU0p3Y21WelpYSjJaU0krUEdjK1BHY2dhV1E5SW1WNGNHRnVaQzF0YjNKbElqNDhjRzlzZVdkdmJpQndiMmx1ZEhNOUlqSTNNQzR6TERVNExqWTFJREUxTXl3eE56VXVPVFVnTXpVdU55dzFPQzQyTlNBd0xEazBMak0xSURFMU15d3lORGN1TXpVZ016QTJMRGswTGpNMUlDSXZQand2Wno0OEwyYytQR2MrUEM5blBqeG5Qand2Wno0OFp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BHYytQQzluUGp4blBqd3ZaejQ4Wno0OEwyYytQR2MrUEM5blBqeG5Qand2Wno0OFp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BDOXpkbWMrKTtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNhbGMoOTguNzUlIC0gNXB4KSA1MCU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBmaWVsZHNldCB1bCB7XG4gICAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgICBmbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuXG4gICAgICAgICAgLnRleHQgdGV4dGFyZWEge1xuICAgICAgICAgICAgd2lkdGg6IDcwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmFzaWRlLW1hbmFnZS1hdmF0YXIge1xuICAgICAgYS5idXR0b24ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjNjY2O1xuXG4gICAgICAgIHNwYW4ge1xuICAgICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5tYWluLW1hbmFnZS1jb21tZW50cyB7XG4gICAgICAuaWNvbiBpbWcge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5tYWluLW1hbmFnZS1saW5rcy1lZGl0IHtcbiAgICAgIGZpZWxkc2V0IHVsIHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgICAgIH1cbiAgICB9XG4gICAgLm1haW4tbWFuYWdlLWFjY291bnQtcHJvZmlsZSB7XG4gICAgICB0ZXh0YXJlYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDRweDtcbiAgICAgIH1cbiAgICAgIC5idXR0b24gPiBzcGFuIHtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICB9XG4gICAgfVxuICAgIC5hc2lkZS1uYXYge1xuICAgICAgc3Bhbi5jb3VudGVyIHtcbiAgICAgICAgcGFkZGluZzogMnB4IDVweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZhNGMwNjtcbiAgICAgICAgY29sb3I6ICNmZmY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDhweDtcbiAgICAgIH1cbiAgICAgIC5pdGVtLmF2YXRhciB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnBpYyB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICB9XG4gICAgICAuZWRpdCB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB9XG4gICAgICBpbWcge1xuICAgICAgICB3aWR0aDogMTUwcHg7XG4gICAgICB9XG4gICAgICBsaSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAuZmllbGRzZXQtbWFuYWdlLXByb2ZpbGUtcGVyc29uYWwtaW5mb3JtYXRpb24ge1xuICAgICAgbGkuc2VsZWN0IHtcbiAgICAgICAgc2VsZWN0IHtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgbGkgbGFiZWwge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgJltmb3I9XCJvY2N1cGF0aW9uXCJdIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5kaXNjbGFpbWVyIHtcbiAgICAgICAgY29sb3I6IHJnYigyNTUsIDAsIDApO1xuICAgICAgfVxuICAgICAgbGkudGV4dCB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICB0ZXh0YXJlYSB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6IDg0MHB4KSB7XG4gICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICBwYWRkaW5nOiAwO1xuXG4gICAgICAjR0Mge1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDA7XG5cbiAgICAgICAgLmFzaWRlLW5hdiBhIHtcbiAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5HQ19wYW5lcyB7XG4gICAgICAgIGZsZXgtd3JhcDogd3JhcDtcblxuICAgICAgICAuYXNpZGUtbmF2LCBtYWluIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgI3Rvb2xiYXIge1xuICAgICAgICBsaS5zZWxlY3RlZCB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIGNvbG9yOiAjNjY2O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiA2NDFweCkge1xuICAgICAgI0dDIHtcbiAgICAgICAgJi5HQ19hY2NvdW50IHtcbiAgICAgICAgICAuR0NfZnJpZW5kcyB7XG4gICAgICAgICAgICAjR0NfZnJpZW5kX2FjdGlvbiB7XG4gICAgICAgICAgICAgIHRoOmxhc3QtY2hpbGQsIHRkLnRpbWUge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLkdDX2xpbmtzIHtcbiAgICAgICAgICAgIHRhYmxlIC51cmwge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAuR0NfaW5ib3gge1xuICAgICAgICAgICAgdGFibGUge1xuICAgICAgICAgICAgICB0ZC50aW1lIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgIC5tYWluLW1hbmFnZS1tYWlsLW5ldywgLm1haW4tbWFuYWdlLW1haWwtcmVhZCB7XG4gICAgICAgICAgICBmaWVsZHNldCB1bCB7XG4gICAgICAgICAgICAgIC50ZXh0IHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAuaW5wdXQge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdWwuYWN0aW9ucyB7XG4gICAgICAgICAgbGkucHJldiwgbGkubmV4dCB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgYS5idXR0b24sIGJ1dHRvbiB7XG4gICAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgI21hcmtJdFVwQm9keSB7XG4gICAgICAgICAgI2JvZHkge1xuICAgICAgICAgICAgd2lkdGg6IDkwJTtcbiAgICAgICAgICAgIG1hcmdpbjogMTBweCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuR0NfYmxvZ3Mge1xuICAgICAgICAgIC5hY3Rpb25zIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICB9XG4gICAgICAgICAgLmJ1dHRvbiB7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4g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 */
