@import url("https://fonts.googleapis.com/css?family=Roboto");
@import url("https://fonts.googleapis.com/css?family=Merriweather");
.alignment-container {
  display: table;
  min-height: 350px;
  margin: 0 auto; }
  .alignment-container > * {
    display: table-cell;
    vertical-align: middle;
    height: 350px; }

/*!
 * Bootstrap v3.3.6 (http://getbootstrap.com)
 * Copyright 2011-2015 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
.btn-default,
.btn-primary,
.btn-success,
.btn-info,
.btn-warning,
.btn-danger {
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075); }
  .btn-default:active, .btn-default.active,
  .btn-primary:active,
  .btn-primary.active,
  .btn-success:active,
  .btn-success.active,
  .btn-info:active,
  .btn-info.active,
  .btn-warning:active,
  .btn-warning.active,
  .btn-danger:active,
  .btn-danger.active {
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn-default.disabled, .btn-default[disabled],
  fieldset[disabled] .btn-default,
  .btn-primary.disabled,
  .btn-primary[disabled],
  fieldset[disabled]
  .btn-primary,
  .btn-success.disabled,
  .btn-success[disabled],
  fieldset[disabled]
  .btn-success,
  .btn-info.disabled,
  .btn-info[disabled],
  fieldset[disabled]
  .btn-info,
  .btn-warning.disabled,
  .btn-warning[disabled],
  fieldset[disabled]
  .btn-warning,
  .btn-danger.disabled,
  .btn-danger[disabled],
  fieldset[disabled]
  .btn-danger {
    box-shadow: none; }
  .btn-default .badge,
  .btn-primary .badge,
  .btn-success .badge,
  .btn-info .badge,
  .btn-warning .badge,
  .btn-danger .badge {
    text-shadow: none; }

.btn:active, .btn.active {
  background-image: none; }

.btn-default {
  background-image: linear-gradient(to bottom, #fff 0%, #e0e0e0 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFE0E0E0', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #dbdbdb;
  text-shadow: 0 1px 0 #fff;
  border-color: #ccc; }
  .btn-default:hover, .btn-default:focus {
    background-color: #e0e0e0;
    background-position: 0 -15px; }
  .btn-default:active, .btn-default.active {
    background-color: #e0e0e0;
    border-color: #dbdbdb; }
  .btn-default.disabled, .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default.disabled:active, .btn-default.disabled.active, .btn-default[disabled], .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus, .btn-default[disabled]:active, .btn-default[disabled].active,
  fieldset[disabled] .btn-default,
  fieldset[disabled] .btn-default:hover,
  fieldset[disabled] .btn-default:focus,
  fieldset[disabled] .btn-default.focus,
  fieldset[disabled] .btn-default:active,
  fieldset[disabled] .btn-default.active {
    background-color: #e0e0e0;
    background-image: none; }

.btn-primary {
  background-image: linear-gradient(to bottom, #FF9C2A 0%, #ec7e00 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFF9C2A', endColorstr='#FFEC7E00', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #e27900; }
  .btn-primary:hover, .btn-primary:focus {
    background-color: #ec7e00;
    background-position: 0 -15px; }
  .btn-primary:active, .btn-primary.active {
    background-color: #ec7e00;
    border-color: #e27900; }
  .btn-primary.disabled, .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary.disabled:active, .btn-primary.disabled.active, .btn-primary[disabled], .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus, .btn-primary[disabled]:active, .btn-primary[disabled].active,
  fieldset[disabled] .btn-primary,
  fieldset[disabled] .btn-primary:hover,
  fieldset[disabled] .btn-primary:focus,
  fieldset[disabled] .btn-primary.focus,
  fieldset[disabled] .btn-primary:active,
  fieldset[disabled] .btn-primary.active {
    background-color: #ec7e00;
    background-image: none; }

.btn-success {
  background-image: linear-gradient(to bottom, #5cb85c 0%, #419641 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF5CB85C', endColorstr='#FF419641', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #3e8f3e; }
  .btn-success:hover, .btn-success:focus {
    background-color: #419641;
    background-position: 0 -15px; }
  .btn-success:active, .btn-success.active {
    background-color: #419641;
    border-color: #3e8f3e; }
  .btn-success.disabled, .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success.disabled:active, .btn-success.disabled.active, .btn-success[disabled], .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus, .btn-success[disabled]:active, .btn-success[disabled].active,
  fieldset[disabled] .btn-success,
  fieldset[disabled] .btn-success:hover,
  fieldset[disabled] .btn-success:focus,
  fieldset[disabled] .btn-success.focus,
  fieldset[disabled] .btn-success:active,
  fieldset[disabled] .btn-success.active {
    background-color: #419641;
    background-image: none; }

.btn-info {
  background-image: linear-gradient(to bottom, #5bc0de 0%, #2aabd2 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF5BC0DE', endColorstr='#FF2AABD2', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #28a4c9; }
  .btn-info:hover, .btn-info:focus {
    background-color: #2aabd2;
    background-position: 0 -15px; }
  .btn-info:active, .btn-info.active {
    background-color: #2aabd2;
    border-color: #28a4c9; }
  .btn-info.disabled, .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info.disabled:active, .btn-info.disabled.active, .btn-info[disabled], .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus, .btn-info[disabled]:active, .btn-info[disabled].active,
  fieldset[disabled] .btn-info,
  fieldset[disabled] .btn-info:hover,
  fieldset[disabled] .btn-info:focus,
  fieldset[disabled] .btn-info.focus,
  fieldset[disabled] .btn-info:active,
  fieldset[disabled] .btn-info.active {
    background-color: #2aabd2;
    background-image: none; }

.btn-warning {
  background-image: linear-gradient(to bottom, #f0ad4e 0%, #eb9316 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF0AD4E', endColorstr='#FFEB9316', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #e38d13; }
  .btn-warning:hover, .btn-warning:focus {
    background-color: #eb9316;
    background-position: 0 -15px; }
  .btn-warning:active, .btn-warning.active {
    background-color: #eb9316;
    border-color: #e38d13; }
  .btn-warning.disabled, .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning.disabled:active, .btn-warning.disabled.active, .btn-warning[disabled], .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus, .btn-warning[disabled]:active, .btn-warning[disabled].active,
  fieldset[disabled] .btn-warning,
  fieldset[disabled] .btn-warning:hover,
  fieldset[disabled] .btn-warning:focus,
  fieldset[disabled] .btn-warning.focus,
  fieldset[disabled] .btn-warning:active,
  fieldset[disabled] .btn-warning.active {
    background-color: #eb9316;
    background-image: none; }

.btn-danger {
  background-image: linear-gradient(to bottom, #d9534f 0%, #c12e2a 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFD9534F', endColorstr='#FFC12E2A', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  background-repeat: repeat-x;
  border-color: #b92c28; }
  .btn-danger:hover, .btn-danger:focus {
    background-color: #c12e2a;
    background-position: 0 -15px; }
  .btn-danger:active, .btn-danger.active {
    background-color: #c12e2a;
    border-color: #b92c28; }
  .btn-danger.disabled, .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger.disabled:active, .btn-danger.disabled.active, .btn-danger[disabled], .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus, .btn-danger[disabled]:active, .btn-danger[disabled].active,
  fieldset[disabled] .btn-danger,
  fieldset[disabled] .btn-danger:hover,
  fieldset[disabled] .btn-danger:focus,
  fieldset[disabled] .btn-danger.focus,
  fieldset[disabled] .btn-danger:active,
  fieldset[disabled] .btn-danger.active {
    background-color: #c12e2a;
    background-image: none; }

.thumbnail,
.img-thumbnail {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); }

.dropdown-menu > li > a:hover,
.dropdown-menu > li > a:focus {
  background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF5F5F5', endColorstr='#FFE8E8E8', GradientType=0);
  background-color: #e8e8e8; }

.dropdown-menu > .active > a,
.dropdown-menu > .active > a:hover,
.dropdown-menu > .active > a:focus {
  background-image: linear-gradient(to bottom, #FF9C2A 0%, #ff9011 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFF9C2A', endColorstr='#FFFF9011', GradientType=0);
  background-color: #ff9011; }

.navbar-default {
  background-image: linear-gradient(to bottom, white 0%, #f8f8f8 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFFFFFF', endColorstr='#FFF8F8F8', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 5px rgba(0, 0, 0, 0.075); }
  .navbar-default .navbar-nav > .open > a,
  .navbar-default .navbar-nav > .active > a {
    background-image: linear-gradient(to bottom, #dbdbdb 0%, #e2e2e2 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFDBDBDB', endColorstr='#FFE2E2E2', GradientType=0);
    box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.075); }

.navbar-brand,
.navbar-nav > li > a {
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.25); }

.navbar-inverse {
  background-image: linear-gradient(to bottom, #3c3c3c 0%, #222 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF3C3C3C', endColorstr='#FF222222', GradientType=0);
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
  border-radius: 4px; }
  .navbar-inverse .navbar-nav > .open > a,
  .navbar-inverse .navbar-nav > .active > a {
    background-image: linear-gradient(to bottom, #090909 0%, #0f0f0f 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF090909', endColorstr='#FF0F0F0F', GradientType=0);
    box-shadow: inset 0 3px 9px rgba(0, 0, 0, 0.25); }
  .navbar-inverse .navbar-brand,
  .navbar-inverse .navbar-nav > li > a {
    text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25); }

.navbar-static-top,
.navbar-fixed-top,
.navbar-fixed-bottom {
  border-radius: 0; }

@media (max-width: 767px) {
  .navbar .navbar-nav .open .dropdown-menu > .active > a, .navbar .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar .navbar-nav .open .dropdown-menu > .active > a:focus {
    color: #fff;
    background-image: linear-gradient(to bottom, #FF9C2A 0%, #ff9011 100%);
    background-repeat: repeat-x;
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFF9C2A', endColorstr='#FFFF9011', GradientType=0); } }

.alert {
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25), 0 1px 2px rgba(0, 0, 0, 0.05); }

.alert-success {
  background-image: linear-gradient(to bottom, #dff0d8 0%, #c8e5bc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFDFF0D8', endColorstr='#FFC8E5BC', GradientType=0);
  border-color: #b2dba1; }

.alert-info {
  background-image: linear-gradient(to bottom, #d9edf7 0%, #b9def0 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFD9EDF7', endColorstr='#FFB9DEF0', GradientType=0);
  border-color: #9acfea; }

.alert-warning {
  background-image: linear-gradient(to bottom, #fcf8e3 0%, #f8efc0 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFCF8E3', endColorstr='#FFF8EFC0', GradientType=0);
  border-color: #f5e79e; }

.alert-danger {
  background-image: linear-gradient(to bottom, #f2dede 0%, #e7c3c3 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF2DEDE', endColorstr='#FFE7C3C3', GradientType=0);
  border-color: #dca7a7; }

.progress {
  background-image: linear-gradient(to bottom, #ebebeb 0%, #f5f5f5 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFEBEBEB', endColorstr='#FFF5F5F5', GradientType=0); }

.progress-bar {
  background-image: linear-gradient(to bottom, #FF9C2A 0%, #f68400 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFF9C2A', endColorstr='#FFF68400', GradientType=0); }

.progress-bar-success {
  background-image: linear-gradient(to bottom, #5cb85c 0%, #449d44 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF5CB85C', endColorstr='#FF449D44', GradientType=0); }

.progress-bar-info {
  background-image: linear-gradient(to bottom, #5bc0de 0%, #31b0d5 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FF5BC0DE', endColorstr='#FF31B0D5', GradientType=0); }

.progress-bar-warning {
  background-image: linear-gradient(to bottom, #f0ad4e 0%, #ec971f 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF0AD4E', endColorstr='#FFEC971F', GradientType=0); }

.progress-bar-danger {
  background-image: linear-gradient(to bottom, #d9534f 0%, #c9302c 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFD9534F', endColorstr='#FFC9302C', GradientType=0); }

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.list-group {
  border-radius: 4px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.075); }

.list-group-item.active,
.list-group-item.active:hover,
.list-group-item.active:focus {
  text-shadow: 0 -1px 0 #f68400;
  background-image: linear-gradient(to bottom, #FF9C2A 0%, #ff8a04 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFF9C2A', endColorstr='#FFFF8A04', GradientType=0);
  border-color: #ff8a04; }
  .list-group-item.active .badge,
  .list-group-item.active:hover .badge,
  .list-group-item.active:focus .badge {
    text-shadow: none; }

.panel {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05); }

.panel-default > .panel-heading {
  background-image: linear-gradient(to bottom, #f5f5f5 0%, #e8e8e8 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF5F5F5', endColorstr='#FFE8E8E8', GradientType=0); }

.panel-primary > .panel-heading {
  background-image: linear-gradient(to bottom, #FF9C2A 0%, #ff9011 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFF9C2A', endColorstr='#FFFF9011', GradientType=0); }

.panel-success > .panel-heading {
  background-image: linear-gradient(to bottom, #dff0d8 0%, #d0e9c6 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFDFF0D8', endColorstr='#FFD0E9C6', GradientType=0); }

.panel-info > .panel-heading {
  background-image: linear-gradient(to bottom, #d9edf7 0%, #c4e3f3 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFD9EDF7', endColorstr='#FFC4E3F3', GradientType=0); }

.panel-warning > .panel-heading {
  background-image: linear-gradient(to bottom, #fcf8e3 0%, #faf2cc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFFCF8E3', endColorstr='#FFFAF2CC', GradientType=0); }

.panel-danger > .panel-heading {
  background-image: linear-gradient(to bottom, #f2dede 0%, #ebcccc 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFF2DEDE', endColorstr='#FFEBCCCC', GradientType=0); }

.well {
  background-image: linear-gradient(to bottom, #e8e8e8 0%, #f5f5f5 100%);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FFE8E8E8', endColorstr='#FFF5F5F5', GradientType=0);
  border-color: gainsboro;
  box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.05), 0 1px 0 rgba(255, 255, 255, 0.1); }

body, html {
  font-size: 90%;
  font-family: 'Merriweather', serif;
  text-align: center;
  color: #544A4C; }

@media (min-width: 768px) {
  body, html {
    font-size: 100%; } }

caption, th, td, input, textarea, select, option, legend, fieldset, h1, h2, h3, h4, h5, h6, p {
  line-height: 1.6; }

@media (min-width: 768px) {
  caption, th, td, input, textarea, select, option, legend, fieldset, h1, h2, h3, h4, h5, h6, p {
    /* equivalent to 16px */
    line-height: 1.8;
    /* equivalent to 22px */ } }

/*----------------------------------------------------------------
/* Headings
/*----------------------------------------------------------------*/
h1 {
  font-size: 1.7rem;
  /* 2x body copy size = 32px */
  line-height: 1.25;
  /* 45px / 36px */
  font-weight: bold;
  margin-bottom: 1rem;
  margin-top: 0;
  font-family: 'Roboto', sans-serif; }

@media (min-width: 768px) {
  h1 {
    font-size: 2.5rem;
    /* 2.5x body copy size = 40px */
    line-height: 1.125; } }

@media (max-width: 479px) {
  h1 {
    margin-bottom: 0.5rem; } }

@media (min-width: 992px) {
  h1 {
    font-size: 2.8rem;
    /* 3x body copy size = 48px */
    line-height: 1.1;
    /* keep to a multiple of the 20px line height and something more appropriate for display headings */ } }

h2 {
  font-size: 1.9rem;
  /* 1.9x body copy size = 30px */
  line-height: 1.15384615;
  /* 30px / 26px */
  font-weight: bold;
  margin-bottom: 1.2rem;
  margin-top: 0;
  color: #291F18;
  font-family: 'Roboto', sans-serif; }

@media (min-width: 768px) {
  h2 {
    font-size: 2rem;
    /* 2x body copy size = 32px */
    line-height: 1.25; } }

@media (min-width: 992px) {
  h2 {
    font-size: 2.20rem;
    /* 2.25x body copy size = 36px */
    line-height: 1.25; } }

h3 {
  font-size: 1.375rem;
  /* 1.375x body copy size = 22px */
  line-height: 1.13636364;
  /* 25px / 22px */
  font-weight: bold;
  margin-bottom: 0.2rem;
  margin-top: 0;
  color: #291F18;
  font-family: 'Roboto', sans-serif; }

@media (min-width: 768px) {
  h3 {
    font-size: 1.5rem;
    /* 1.5x body copy size = 24px */
    line-height: 1.25; } }

@media (min-width: 992px) {
  h3 {
    font-size: 1.65rem;
    /* 1.75x body copy size = 28px */
    line-height: 1.25; } }

h4 {
  font-size: 1.1rem;
  /* 1.125x body copy size = 18px */
  line-height: 1.5;
  font-weight: bold;
  margin-bottom: 1rem;
  margin-top: 0;
  font-family: 'Merriweather', serif; }

@media (min-width: 768px) {
  h4 {
    line-height: 2.5;
    /* (22px / 18px */ } }

/*----------------------------------------------------------------
/* Paragraph
/*----------------------------------------------------------------*/
P {
  margin-bottom: 1.9rem; }
  P.heading {
    font-size: 0.9rem; }
    @media (min-width: 768px) {
      P.heading {
        font-size: 1.1rem; } }
  P.noSpace {
    margin-bottom: 0; }
  P:last-child {
    margin-bottom: 0; }

@media (max-width: 479px) {
  p {
    margin-bottom: 1rem; }
    p:last-child {
      margin-bottom: 0; } }

/*----------------------------------------------------------------
/* Blockquote
/*----------------------------------------------------------------*/
blockquote {
  font-size: 1.25rem;
  /* 20px / 16px */
  line-height: 1.25;
  /* 25px / 20px */ }

@media (min-width: 768px) {
  blockquote {
    font-size: 1.5rem;
    /* 24px / 16px = */
    line-height: 1.45833333;
    /* 35px / 24px */ } }

html,
body {
  background: #291F18;
  height: 100%;
  width: 100%; }

html.freeze {
  overflow: hidden !important; }

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.entry-content img, #main img {
  width: auto;
  height: auto; }

.entry-content iframe, .entry-content object, .entry-content embed, .entry-content img, #main iframe, #main object, #main embed, #main img {
  max-width: 100%; }

.panel:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

.panel .panel-inner {
  padding: 30px; }
  .panel .panel-inner:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }

.panel .panel-read-more {
  float: left;
  width: 100%;
  display: block;
  margin-top: 20px; }
  .panel .panel-read-more span, .panel .panel-read-more .fa {
    display: inline-block;
    vertical-align: middle;
    line-height: 1; }
  .panel .panel-read-more .fa {
    font-size: 30px;
    margin-left: 10px; }

.meta-post {
  float: left;
  width: 100%;
  margin-bottom: 10px; }
  .meta-post ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    .meta-post ul:after {
      visibility: hidden;
      display: block;
      font-size: 0;
      content: " ";
      clear: both;
      height: 0; }
    .meta-post ul li {
      display: inline-block;
      vertical-align: middle;
      margin-right: 20px; }
  .meta-post span {
    margin-right: 40px; }
  .meta-post span, .meta-post > ul {
    display: inline-block;
    vertical-align: middle; }

h2::before {
  height: 5px;
  background: #FF9C2A;
  width: 100px;
  margin: 0 auto 10px auto;
  display: block;
  content: '';
  border-radius: 5px; }

h2.white_border::before {
  height: 5px;
  background: #fff;
  width: 100px;
  margin: 0 auto 10px auto;
  display: block;
  content: '';
  border-radius: 5px; }

img {
  margin: 0 0 20px 0;
  image-rendering: -webkit-optimize-contrast;
  image-rendering: crisp-edges; }

h3 {
  margin: 0 0 20px 0; }

h4.bottom_space {
  margin: 0 0 20px 0; }

.post-category-single ul {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 20px; }
  .post-category-single ul:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }
  .post-category-single ul li {
    float: left;
    margin: 0 0 20px 20px; }
    .post-category-single ul li:first-of-type {
      margin-left: 0; }

.single-format-image #image-wrapper-single {
  background: #333333; }

.list-gallery-single {
  background: #eeeeee;
  position: relative; }
  .list-gallery-single .arrow-slick-gallery {
    height: 100%;
    width: 80px;
    position: absolute;
    z-index: 90;
    color: white;
    background: rgba(0, 0, 0, 0.3);
    top: 0;
    font-size: 45px;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    text-align: center; }
    .list-gallery-single .arrow-slick-gallery .fa {
      width: auto;
      max-height: 44px;
      position: absolute;
      top: -100%;
      bottom: -100%;
      left: -100%;
      right: -100%;
      margin: auto; }
    .list-gallery-single .arrow-slick-gallery:hover {
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
      background: rgba(0, 0, 0, 0.5); }
  .list-gallery-single .slick-gal-prev {
    right: 0; }
  .list-gallery-single .slick-gal-next {
    left: 0; }
  .list-gallery-single .slick-slide {
    text-align: center;
    height: 400px;
    padding: 15px; }
  .list-gallery-single .slick-slide::before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle; }
  .list-gallery-single .slick-slide img {
    vertical-align: middle;
    display: inline-block;
    max-height: 100%; }

.single-format-gallery #gallery-wrapper-single {
  overflow: hidden; }

.single-format-gallery .gallery-post-wrapper {
  background: #222222;
  position: relative; }

.single-format-gallery .arrow-slick-gallery {
  height: 100%;
  width: 80px;
  position: absolute;
  z-index: 90;
  color: white;
  background: rgba(0, 0, 0, 0.3);
  top: 0;
  font-size: 45px;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  text-align: center; }
  .single-format-gallery .arrow-slick-gallery .fa {
    width: auto;
    max-height: 44px;
    position: absolute;
    top: -100%;
    bottom: -100%;
    left: -100%;
    right: -100%;
    margin: auto; }
  .single-format-gallery .arrow-slick-gallery:hover {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    background: rgba(0, 0, 0, 0.5); }

.single-format-gallery .slick-gal-prev {
  right: 0; }

.single-format-gallery .slick-gal-next {
  left: 0; }

.single-format-gallery .slick-slide {
  text-align: center;
  height: 400px;
  padding: 15px; }

.single-format-gallery .slick-slide::before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.single-format-gallery .slick-slide img {
  vertical-align: middle;
  display: inline-block;
  max-height: 100%; }

.single-format-video #video-wrapper-single {
  background: #FF9C2A; }

.single-format-audio #audio-wrapper {
  padding: 20px 0;
  background: #f68400; }
  .single-format-audio #audio-wrapper audio {
    width: 100%;
    display: block; }
    .single-format-audio #audio-wrapper audio p {
      color: white; }

.single-format-audio .wp-playlist {
  background: #f68400;
  margin: 0 !important;
  border: none !important; }
  .single-format-audio .wp-playlist .wp-playlist-current-item .wp-playlist-item-title {
    color: white;
    font-size: 20px; }
  .single-format-audio .wp-playlist .wp-playlist-current-item .wp-playlist-item-meta {
    color: white; }
  .single-format-audio .wp-playlist .wp-playlist-current-item {
    Height: auto !important; }
    .single-format-audio .wp-playlist .wp-playlist-current-item img {
      display: none; }
  .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-item {
    padding: 0; }
    .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-item.wp-playlist-playing {
      color: #544A4C; }
      .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-item.wp-playlist-playing .wp-playlist-item-title, .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-item.wp-playlist-playing .wp-playlist-item-length {
        color: #544A4C; }
  .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-caption, .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-item-length {
    display: inline-block;
    vertical-align: middle;
    position: relative; }
  .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-caption {
    width: calc(100% - 104px) !important; }
  .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-item-length {
    width: 100px;
    text-align: right; }
  .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-item-title, .single-format-audio .wp-playlist .wp-playlist-tracks .wp-playlist-item-length {
    color: white; }
  .single-format-audio .wp-playlist .wp-playlist-tracks a {
    padding: 10px;
    font-size: 16px;
    color: white; }

.comments-area {
  margin-top: 40px; }

/*----------------------------------------------------------------
/* Main navigation container
/*----------------------------------------------------------------*/
.navigation_bar_main {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  max-height: 80px;
  background: #291F18;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 200;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .navigation_bar_main.nav-collapse {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    max-height: 50px;
    margin: 0 !important;
    background: #291F18;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2); }
  @media (min-width: 992px) {
    .navigation_bar_main {
      max-height: 110px; }
      .navigation_bar_main.nav-collapse {
        max-height: 90px; } }
  .navigation_bar_main.float {
    width: 100%;
    position: relative;
    z-index: 90;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
    min-height: 80px; }
  @media (max-width: 767px) {
    .navigation_bar_main .row > div {
      padding: 0; } }
  @media (max-width: 767px) {
    .navigation_bar_main #navigation-wrapper {
      position: fixed;
      min-height: 80px;
      width: 100%;
      z-index: 90;
      left: 0;
      background: #291F18; } }

body.home .navigation_bar_main {
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  max-height: 80px;
  background: #291F18;
  box-shadow: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 200;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  body.home .navigation_bar_main.nav-collapse {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    max-height: 50px;
    margin: 0 !important;
    background: #291f18;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2); }
  @media (min-width: 992px) {
    body.home .navigation_bar_main {
      background: rgba(41, 31, 24, 0);
      max-height: 110px; }
      body.home .navigation_bar_main.nav-collapse {
        max-height: 90px; } }
  body.home .navigation_bar_main.float {
    width: 100%;
    position: relative;
    z-index: 90;
    box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
    min-height: 80px; }
  @media (max-width: 767px) {
    body.home .navigation_bar_main .row > div {
      padding: 0; } }
  @media (max-width: 767px) {
    body.home .navigation_bar_main #navigation-wrapper {
      position: fixed;
      min-height: 80px;
      width: 100%;
      z-index: 90;
      left: 0;
      background: #291F18; } }

body.logged-in .navigation_bar_main {
  top: 0; }

@media (max-width: 782px) {
  body.logged-in .navigation_bar_main {
    top: 0; } }

/*----------------------------------------------------------------
/* Mobile menu toggle
/*----------------------------------------------------------------*/
#navigation-mobile__control {
  float: right;
  display: inline-block;
  vertical-align: middle;
  padding: 28px 20px 22px 20px;
  color: #FFFAC2;
  cursor: hand;
  cursor: pointer;  }
  #navigation-mobile__control i {
    font-size: 25px; }

/*----------------------------------------------------------------
/* Header logo
/*----------------------------------------------------------------*/
.logo {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .logo:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }
  @media (max-width: 991px) {
    .logo {
      float: left;
      display: inline-block;
      vertical-align: middle;
      padding-left: 20px;
      height: 80px;
      line-height: 80px; } }
  @media (min-width: 992px) {
    .logo {
      float: left;
      width: 200px;
      display: inline-block;
      min-height: 80px;
      line-height: 110px;
      vertical-align: middle; } }

.logo img {
  height: 46px;
  width: 119px;
  margin: 17px 150px 0 auto !important;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  @media (min-width: 992px) {
    .logo img {
      height: 62px;
	  width: auto;
      margin: 24px auto 0 auto !important; } }

@media (max-width: 991px) {
  nav.nav-collapse .logo {
    height: 50px;
    line-height: 50px;
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); } }

@media (min-width: 992px) {
  nav.nav-collapse .logo {
    min-height: 80px;
    line-height: 90px;
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); } }

nav.nav-collapse .logo img {
  height: 50px;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  margin: 24px auto 0 auto; }
  @media (min-width: 992px) {
    nav.nav-collapse .logo img {
      height: 50px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
      margin: 21px auto 0 auto; } }

/*----------------------------------------------------------------
/* Mobile backdrop
/* The overlay that covers the content when the mobile menu is open
/*----------------------------------------------------------------*/
.navigation__mobile--backdrop {
  position: fixed;
  opacity: 0;
  z-index: 9000;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .navigation__mobile--backdrop.open {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    display: block;
    opacity: 1; }

/*----------------------------------------------------------------
/* Mobile menu
/* The container that holds the mobile menu
/*----------------------------------------------------------------*/
#navigation-mobile {
  background: #291F18;
  position: fixed;
  left: -100%;
  top: 0;
  width: 100%;
  z-index: 9999;
  height: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
  box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.2);
  border-right: 1px solid rgba(0, 0, 0, 0.2);
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  width: calc(100% - 63px) !important;
  max-width: 400px; }
  #navigation-mobile.open {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    left: 0; }

.admin-bar #navigation-mobile {
  top: 0 !important;
  height: 100% !important; }

@media screen and (min-width: 783px) {
  .admin-bar #navigation-mobile {
    top: 0 !important;
    height: 100% !important; } }

/*----------------------------------------------------------------
/* UL that holds menu items
/*----------------------------------------------------------------*/
@media (min-width: 992px) {
  #menu-main {
    float: right; } }

/*----------------------------------------------------------------
/* The main menu
/*----------------------------------------------------------------*/
.menu-primary__wrapper:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

@media (min-width: 992px) {
  .menu-primary__wrapper {
    transform-style: preserve-3d;
    width: calc(100% - 200px);
    float: right;
    height: 110px; } }

.menu-primary__wrapper ul {
  list-style: none;
  margin: 0;
  padding: 0; }
  .menu-primary__wrapper ul:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }
  .menu-primary__wrapper ul li.li_btn {
    margin: 20px 0 0 0;
    padding: 0 20px; }
  @media (min-width: 992px) {
    .menu-primary__wrapper ul li {
      margin: 0 15px;
      display: table;
      vertical-align: middle;
      height: 110px; }
      .menu-primary__wrapper ul li.li_btn {
        margin: 0; } }
  @media (min-width: 1200px) {
    .menu-primary__wrapper ul li {
      margin: 0 30px; } }
  .menu-primary__wrapper ul li a {
    display: block;
    padding: 20px 30px;
    position: relative; }
    @media (min-width: 992px) {
      .menu-primary__wrapper ul li a {
        color: #FFFAC2;
        padding: 0; } }
    @media (max-width: 991px) {
      .menu-primary__wrapper ul li a {
        color: #FFFAC2; } }

@media (min-width: 992px) {
  .menu-primary__wrapper > ul {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    height: 110px;
    float: right; } }

.menu-primary__wrapper > ul ul {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  @media (max-width: 991px) {
    .menu-primary__wrapper > ul ul {
      width: 100%;
      max-height: 0;
      overflow: hidden; }
      .menu-primary__wrapper > ul ul.active {
        max-height: 999px; } }
  @media (min-width: 992px) {
    .menu-primary__wrapper > ul ul {
      display: none;
      background: white;
      position: absolute;
      top: 0;
      left: 250px;
      width: 250px;
      z-index: 100; } }
  .menu-primary__wrapper > ul ul li {
    display: block;
    float: none; }
  @media (min-width: 992px) {
    .menu-primary__wrapper > ul ul a {
      border-top: 1px solid #dfd1c7; }
      .menu-primary__wrapper > ul ul a:hover, .menu-primary__wrapper > ul ul a.hover {
        transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); } }

.menu-primary__wrapper > ul > li {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .menu-primary__wrapper > ul > li:hover {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    @media (min-width: 992px) {
      .menu-primary__wrapper > ul > li:hover a {
        transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
        color: #FF9C2A;
        background: none;
        padding: 6px 0 0 0;
        font-weight: bold; }
        .menu-primary__wrapper > ul > li:hover a:after {
          width: 100%;
          transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
      .menu-primary__wrapper > ul > li:hover.li_btn a:after {
        display: none !important; } }
  .menu-primary__wrapper > ul > li > a {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    .menu-primary__wrapper > ul > li > a.dropdown-toggle:after {
      content: "\f107"; }
    @media (min-width: 992px) {
      .menu-primary__wrapper > ul > li > a {
        display: table-cell;
        vertical-align: middle;
        padding-top: 6px; }
        .menu-primary__wrapper > ul > li > a:after {
          content: '';
          display: block;
          width: 0;
          height: 4px;
          margin: 2px auto 0;
          padding: 0;
          background: #FF9C2A;
          transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
        .menu-primary__wrapper > ul > li > a:hover, .menu-primary__wrapper > ul > li > a.hover {
          transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
          padding-top: 6px; } }

@media (min-width: 992px) {
  .menu-primary__wrapper > ul > li.li_btn > a:after {
    display: none !important; }
  .menu-primary__wrapper > ul > li.li_btn > a:hover, .menu-primary__wrapper > ul > li.li_btn > a.hover {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); } }

.menu-primary__wrapper li {
  position: relative; }
  @media (min-width: 992px) {
    .menu-primary__wrapper li {
      float: left; }
      .menu-primary__wrapper li:hover > ul {
        display: block; } }

.menu-primary__wrapper a {
  border: none;
  width: 100%;
  display: block;
  text-decoration: none !important;
  position: relative;
  font-family: 'Roboto', sans-serif;
  font-size: 1.06rem;
  color: #FFFAC2; }
  @media (max-width: 991px) {
    .menu-primary__wrapper a {
      border-bottom: 1px solid rgba(255, 255, 255, 0.1); } }

.menu-primary__wrapper li a.current {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #FF9C2A;
  background: none;
  font-weight: bold; }
  .menu-primary__wrapper li a.current:after {
    width: 100%; }
  @media (min-width: 992px) {
    .menu-primary__wrapper li a.current {
      padding: 6px 0 0 0; } }

.menu-primary__wrapper li.current_page_parent > a,
.menu-primary__wrapper li.current-menu-parent > a {
  background: #FF9C2A;
  color: white; }

@media (min-width: 992px) {
  .menu-primary__wrapper .menu-depth-1 {
    top: 100%;
    left: 0; } }

@media (max-width: 991px) {
  .menu-primary__wrapper .menu-depth-1 {
    background: #16100d; }
  .menu-primary__wrapper .menu-depth-2 {
    background: black; } }

.menu-primary__wrapper .dropdown-toggle:after {
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-decoration: inherit;
  font-size: 18px;
  position: absolute;
  top: calc(70% - 25px) !important;
  right: 12px; }
  @media (max-width: 991px) {
    .menu-primary__wrapper .dropdown-toggle:after {
      content: "\f107"; } }
  @media (min-width: 992px) {
    .menu-primary__wrapper .dropdown-toggle:after {
      content: "\f105"; } }

@media (max-width: 991px) {
  .menu-primary__wrapper .dropdown-toggle.active:after {
    content: "\f106"; } }

@media (min-width: 992px) {
  nav.nav-collapse .menu-primary__wrapper {
    height: 90px; } }

@media (min-width: 992px) {
  nav.nav-collapse .menu-primary__wrapper ul {
    height: 90px; } }

@media (min-width: 992px) {
  nav.nav-collapse .menu-primary__wrapper ul li {
    height: 90px; } }

#back-to-top {
  position: fixed;
  z-index: 9999;
  background: #FF9C2A;
  text-align: center;
  cursor: pointer;
  border-radius: 50%;
  width: 44px;
  height: 44px;
  visibility: hidden;
  opacity: 0;
  transition: all .2s ease-in-out;
  box-shadow: 0 10px 10px rgba(0, 0, 0, 0.05), 0 5px 5px rgba(0, 0, 0, 0.05);
  bottom: 15px;
  right: 15px; }
  #back-to-top.active {
    opacity: 1;
    transition: all .2s ease-in-out;
    visibility: visible; }
  #back-to-top .fa {
    padding: 5px 0;
    color: white;
    font-size: 30px; }
  #back-to-top:hover {
    transition: all .2s ease-in-out;
    background: #f68400; }

@media screen and (min-width: 768px) {
  #back-to-top {
    width: 60px;
    height: 60px;
    bottom: 30px;
    right: 30px; }
    #back-to-top .fa {
      font-size: 45px; } }

.wp-paginate .fa {
  font-size: 19px;
  font-weight: bold; }

.wp-paginate .next, .wp-paginate .previous {
  padding-top: 8px !important; }

.wp-paginate a, .wp-paginate span {
  position: relative;
  overflow: hidden;
  background: white !important;
  text-align: left;
  display: block;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  border-radius: 5px;
  margin-right: 20px;
  display: inline-block;
  width: 40px;
  height: 40px;
  padding-top: 7px !important;
  border: 1px solid #e9e7e7 !important;
  vertical-align: middle;
  color: #e9e7e7;
  font-weight: bold;
  text-align: center;
  padding: 9px 0 10px 0 !important; }
  .wp-paginate a:after, .wp-paginate span:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }

.wp-paginate .current, .wp-paginate a:hover {
  background: #FF9C2A !important;
  border: 1px solid #FF9C2A !important;
  color: white !important; }

.wp-paginate li {
  margin-right: 15px; }
  .wp-paginate li:first-of-type {
    display: none; }

#loading-pane {
  width: 100vw;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  text-align: center; }
  #loading-pane .inner-wrapper {
    width: 100%;
    height: 100%;
    display: table; }
    #loading-pane .inner-wrapper .inner-wrapper-align {
      display: table-cell;
      vertical-align: middle; }
    #loading-pane .inner-wrapper.active {
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
      opacity: 0;
      visibility: hidden; }
  #loading-pane.fade-in.active {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    opacity: 0;
    visibility: hidden; }
  #loading-pane.slide-up.active {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    top: -150%; }
  #loading-pane.slide-down.active {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    top: 100%; }
  #loading-pane.slide-left.active {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    left: -150%; }
  #loading-pane.slide-right.active {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
    left: 100%; }

.loading-text {
  display: inline-block;
  color: white;
  font-weight: bold;
  width: 100%; }

.spinner {
  margin-bottom: 20px !important; }
  .spinner.bars {
    width: 50px;
    height: 40px;
    margin: 0 auto;
    font-size: 10px; }
    .spinner.bars > div {
      height: 100%;
      width: 7px;
      margin: 0 3px 0 0;
      background-color: #fff;
      display: inline-block;
      animation: sk-stretchdelay 1.2s infinite ease-in-out; }
    .spinner.bars .rect2 {
      animation-delay: -1.1s; }
    .spinner.bars .rect3 {
      animation-delay: -1.0s; }
    .spinner.bars .rect4 {
      animation-delay: -0.9s; }
    .spinner.bars .rect5 {
      animation-delay: -0.8s; }
  .spinner.cubes {
    width: 40px;
    height: 40px;
    position: relative;
    margin: 0 auto; }
    .spinner.cubes .cube1, .spinner.cubes .cube2 {
      background-color: white;
      width: 15px;
      height: 15px;
      position: absolute;
      top: 0;
      left: 0;
      animation: sk-cubemove 1.8s infinite ease-in-out; }
    .spinner.cubes .cube2 {
      animation-delay: -0.9s; }
  .spinner.dots {
    width: 70px;
    text-align: center;
    margin: 0 auto; }
    .spinner.dots > div {
      width: 18px;
      height: 18px;
      background-color: white;
      border-radius: 100%;
      display: inline-block;
      animation: sk-bouncedelay 1.4s infinite ease-in-out both; }
    .spinner.dots .bounce1 {
      animation-delay: -0.32s; }
    .spinner.dots .bounce2 {
      animation-delay: -0.16s; }

@keyframes sk-bouncedelay {
  0%, 80%, 100% {
    transform: scale(0); }
  40% {
    transform: scale(1); } }

@keyframes sk-stretchdelay {
  0%, 40%, 100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4); }
  20% {
    transform: scaleY(1);
    -webkit-transform: scaleY(1); } }

@keyframes sk-cubemove {
  25% {
    transform: translateX(42px) rotate(-90deg) scale(0.5);
    -webkit-transform: translateX(42px) rotate(-90deg) scale(0.5); }
  50% {
    transform: translateX(42px) translateY(42px) rotate(-179deg);
    -webkit-transform: translateX(42px) translateY(42px) rotate(-179deg); }
  50.1% {
    transform: translateX(42px) translateY(42px) rotate(-180deg);
    -webkit-transform: translateX(42px) translateY(42px) rotate(-180deg); }
  75% {
    transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5);
    -webkit-transform: translateX(0px) translateY(42px) rotate(-270deg) scale(0.5); }
  100% {
    transform: rotate(-360deg);
    -webkit-transform: rotate(-360deg); } }

#progress {
  position: fixed;
  z-index: 2147483647;
  left: 0px;
  width: 0%;
  height: 2px;
  transition: width 500ms ease-out, opacity 400ms linear; }
  #progress.bottom {
    bottom: 0; }
  #progress.top {
    top: 0; }
  #progress dd, #progress dt {
    position: absolute;
    top: 0;
    height: 2px; }
  #progress dt {
    opacity: .6;
    width: 180px;
    right: -80px;
    clip: rect(-6px, 90px, 14px, -6px); }
  #progress dd {
    opacity: .6;
    width: 20px;
    right: 0;
    clip: rect(-6px, 22px, 14px, 10px); }

.mfp-move-horizontal .mfp-with-anim {
  opacity: 0;
  transition: all 0.3s;
  transform: translateX(-50px); }

.mfp-move-horizontal.mfp-bg {
  opacity: 0;
  transition: all 0.3s; }

.mfp-move-horizontal.mfp-ready .mfp-with-anim {
  opacity: 1;
  transform: translateX(0); }

.mfp-move-horizontal.mfp-ready.mfp-bg {
  opacity: 0.8; }

.mfp-move-horizontal.mfp-removing .mfp-with-anim {
  transform: translateX(50px);
  opacity: 0; }

.mfp-move-horizontal.mfp-removing.mfp-bg {
  opacity: 0; }

.mfp-bottom-bar {
  padding-top: 10px; }

.mfp-figure, .mpf-iframe {
  position: relative;
  opacity: 0; }

.mfp-counter {
  top: 10px; }

.mfp-open .mfp-figure, .mfp-open .mfp-iframe {
  animation-name: imgfadeIn;
  animation-duration: 0.4s;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -moz-backface-visibility: hidden;
  -ms-backface-visibility: hidden; }

@keyframes imgfadeIn {
  0% {
    opacity: 0;
    transform: translate3d(-50px, 0, 0); }
  100% {
    opacity: 1;
    transform: translate3d(0, 0, 0); } }

figure.wp-caption {
  max-width: 100%; }

.wp-caption-text {
  line-height: 1.428571429;
  padding: 5px 0; }

.alignright {
  float: right;
  margin: 0 0 1em 1em; }

.alignleft {
  float: left;
  margin: 0 1em 1em 0; }

.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
  clear: both; }

.wp-playlist {
  padding: 20px !important;
  margin: 0 0 18px !important; }

div.gallery-image {
  display: block;
  background: #f9f9f9;
  text-align: center;
  padding: 4px;
  margin-bottom: 30px;
  height: 100%; }

div.gallery-image img {
  transition: all 0.8s; }
  div.gallery-image img:hover {
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.5);
    transition: all 0.3s; }

@media screen and (min-width: 768px) {
  div.gallery-image {
    padding: 16px; } }

/* Form wrapper */
.gform_wrapper {
  /* HEADING */
  /* BODY */
  /* VALIDATION */
  /* PROGRESS */
  /* STEPS */
  /* PAGES */ }
  .gform_wrapper form:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }
  .gform_wrapper .gform_heading {
    color: #544A4C; }
    .gform_wrapper .gform_heading .gform_title {
      color: #544A4C; }
    .gform_wrapper .gform_heading .gform_description {
      border-bottom: 1px solid #e9e7e7;
      width: 100%;
      display: inline-block; }
  .gform_wrapper .gform_body:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }
  .gform_wrapper .gform_body .gform_fields {
    list-style: none;
    margin: 0;
    padding: 0; }
    .gform_wrapper .gform_body .gform_fields li {
      margin-bottom: 20px;
      float: left;
      width: 100%; }
    .gform_wrapper .gform_body .gform_fields .gfield {
      /* LIST BODY */
      /* INPUTS */
      /* SECTION */
      /* PRODUCT PRICE */
      /* SHIPPING */
      /* RECAPTCHA */
      /* FOOTER */
      /* TEXTAREA */
      /* CHECKBOX AND RADIO BUTTONS */
      /* COMPLEX */
      /* HOUR */
      /* DATEPICKER */
      /* MONTH, DAY AND YEAR */
      /* MULTIFILE UPLOAD */
      /* DROP AREA */
      /* SELECT */ }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_description {
        font-size: 12px;
        font-style: italic; }
      .gform_wrapper .gform_body .gform_fields .gfield .ginput_container {
        display: inline-block;
        vertical-align: middle;
        width: 100%;
        float: left; }
        @media (min-width: 992px) {
          .gform_wrapper .gform_body .gform_fields .gfield .ginput_container {
            width: calc(100% - 160px); } }
        .gform_wrapper .gform_body .gform_fields .gfield .ginput_container:focus, .gform_wrapper .gform_body .gform_fields .gfield .ginput_containeractive {
          outline: none;
          box-shadow: none; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_label {
        color: #544A4C; }
        @media (max-width: 991px) {
          .gform_wrapper .gform_body .gform_fields .gfield .gfield_label {
            margin-bottom: 15px;
            float: left;
            width: 100%;
            text-align: left; } }
        @media (min-width: 992px) {
          .gform_wrapper .gform_body .gform_fields .gfield .gfield_label {
            display: inline-block;
            vertical-align: top;
            margin: 10px 30px 0 0;
            width: 130px;
            max-width: 130px;
            float: left;
            text-align: left; } }
        .gform_wrapper .gform_body .gform_fields .gfield .gfield_label .gfield_required {
          color: #d9534f; }
      .gform_wrapper .gform_body .gform_fields .gfield input:focus, .gform_wrapper .gform_body .gform_fields .gfield inputactive, .gform_wrapper .gform_body .gform_fields .gfield button:focus, .gform_wrapper .gform_body .gform_fields .gfield buttonactive, .gform_wrapper .gform_body .gform_fields .gfield select:focus, .gform_wrapper .gform_body .gform_fields .gfield selectactive, .gform_wrapper .gform_body .gform_fields .gfield textarea:focus, .gform_wrapper .gform_body .gform_fields .gfield textareaactive {
        outline: none;
        box-shadow: none; }
      .gform_wrapper .gform_body .gform_fields .gfield .ginput_listbody .gform_wrapper .gform_body .gform_fields .gfield .ginput_list table.gfield_list {
        border: 1px solid #e9e7e7; }
        .gform_wrapper .gform_body .gform_fields .gfield .ginput_listbody .gform_wrapper .gform_body .gform_fields .gfield .ginput_list table.gfield_list thead thtable.gfield_list thead th {
          color: #544A4C; }
        .gform_wrapper .gform_body .gform_fields .gfield .ginput_listbody .gform_wrapper .gform_body .gform_fields .gfield .ginput_list table.gfield_list tbody tr.gfield_list_row_odd {
          border: 1px solid #e9e7e7; }
        .gform_wrapper .gform_body .gform_fields .gfield .ginput_listbody .gform_wrapper .gform_body .gform_fields .gfield .ginput_list table.gfield_list tbody tr td {
          padding-bottom: 20px; }
          .gform_wrapper .gform_body .gform_fields .gfield .ginput_listbody .gform_wrapper .gform_body .gform_fields .gfield .ginput_list table.gfield_list tbody tr td.gfield_list_cell {
            border: 1px solid #e9e7e7; }
      .gform_wrapper .gform_body .gform_fields .gfield .ginput_listbody .gform_wrapper .gform_body .gform_fields .gfield .ginput_list colgroup col.gfield_list_col_odd {
        border: 1px solid #e9e7e7; }
      .gform_wrapper .gform_body .gform_fields .gfield .ginput_listbody .gform_wrapper .gform_body .gform_fields .gfield .ginput_list colgroup col.gfield_list_col_even {
        border: 1px solid #e9e7e7; }
      .gform_wrapper .gform_body .gform_fields .gfield input[type=email], .gform_wrapper .gform_body .gform_fields .gfield input[type=tel], .gform_wrapper .gform_body .gform_fields .gfield input[type=url], .gform_wrapper .gform_body .gform_fields .gfield input[type=text], .gform_wrapper .gform_body .gform_fields .gfield select {
        border: 1px solid #e9e9e9;
        padding: 10px 8px;
        width: 100%;
        border-radius: 5px; }
      .gform_wrapper .gform_body .gform_fields .gfield .gsection {
        border-top: 1px solid #e9e7e7; }
        .gform_wrapper .gform_body .gform_fields .gfield .gsection .gsection_title {
          color: #544A4C; }
      .gform_wrapper .gform_body .gform_fields .gfield .ginput_product_price_label, .gform_wrapper .gform_body .gform_fields .gfield .ginput_product_price, .gform_wrapper .gform_body .gform_fields .gfield .gfield_price {
        color: #544A4C; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_quantity label {
        color: #544A4C; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_quantity input {
        color: #544A4C; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_shipping label {
        color: #544A4C; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_total span {
        color: #544A4C; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_total label {
        color: #544A4C; }
      .gform_wrapper .gform_body .gform_fields .gfield .recaptcha_widget_div .recaptcha_area {
        border: 1px solid #e9e7e7; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_captcha_container {
        border: 1px solid #e9e7e7; }
        .gform_wrapper .gform_body .gform_fields .gfield .gfield_captcha_container .gfield_captcha {
          border: 1px solid #e9e7e7; }
          .gform_wrapper .gform_body .gform_fields .gfield .gfield_captcha_container .gfield_captcha input {
            border: 1px solid #e9e7e7; }
      .gform_wrapper .gform_body .gform_fields .gfield .gform_footer {
        border: 1px solid #e9e7e7; }
        .gform_wrapper .gform_body .gform_fields .gfield .gform_footer input[type=submit] {
          border: 1px solid #e9e7e7; }
        .gform_wrapper .gform_body .gform_fields .gfield .gform_footer input[type=image] {
          border: 1px solid #e9e7e7; }
      .gform_wrapper .gform_body .gform_fields .gfield textarea {
        border: 1px solid #e9e7e7;
        width: 100%;
        padding: 10px 8px;
        border-radius: 5px; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox, .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio {
        list-style: none;
        margin: 0;
        padding: 0; }
        .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox li label, .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox li input[type=checkbox], .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox li input[type=radio], .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio li label, .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio li input[type=checkbox], .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio li input[type=radio] {
          margin: 0;
          display: inline-block;
          vertical-align: middle; }
        .gform_wrapper .gform_body .gform_fields .gfield .gfield_checkbox li label, .gform_wrapper .gform_body .gform_fields .gfield .gfield_radio li label {
          margin-left: 15px; }
      .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex {
        max-width: 600px; }
        .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex span {
          width: 100%;
          display: block;
          margin-bottom: 20px; }
          .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex span:after {
            visibility: hidden;
            display: block;
            font-size: 0;
            content: " ";
            clear: both;
            height: 0; }
          .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex span:last-of-type {
            margin-bottom: 0; }
        .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex label {
          color: #544A4C; }
          @media (max-width: 991px) {
            .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex label {
              margin-top: 15px; } }
          @media (min-width: 992px) {
            .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex label {
              display: inline-block;
              vertical-align: top;
              margin: 10px 30px 0 0;
              min-width: 180px;
              float: left; } }
          .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex label .gfield_required {
            color: #d9534f; }
        .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex input, .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex select {
          width: 100%; }
          @media (min-width: 992px) {
            .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex input, .gform_wrapper .gform_body .gform_fields .gfield .ginput_complex select {
              max-width: 300px;
              display: inline-block;
              vertical-align: middle; } }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_time_hour label, .gform_wrapper .gform_body .gform_fields .gfield .gfield_time_minute label {
        margin: 15px 0 0 0; }
      .gform_wrapper .gform_body .gform_fields .gfield datepicker {
        border: 1px solid #e9e7e7; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_input_datepicker_icon {
        border: 1px solid #e9e7e7; }
      .gform_wrapper .gform_body .gform_fields .gfield .gfield_date_month label, .gform_wrapper .gform_body .gform_fields .gfield .gfield_date_day label, .gform_wrapper .gform_body .gform_fields .gfield .gfield_date_year label {
        margin: 15px 0 0 0; }
      .gform_wrapper .gform_body .gform_fields .gfield .gform_fileupload_multifile {
        background: white; }
      .gform_wrapper .gform_body .gform_fields .gfield .gform_drop_area {
        color: #544A4C;
        background: white; }
      .gform_wrapper .gform_body .gform_fields .gfield .gform_button_select_files {
        background: white; }
  .gform_wrapper .gform_validation_errors {
    padding: 15px;
    margin-bottom: 15px;
    background: #d9534f;
    color: white;
    display: none; }
  .gform_wrapper .gfield_error .validation_message {
    color: #d9534f;
    font-weight: 700;
    font-size: 13px;
    display: inline-block;
    vertical-align: middle;
    margin-left: 0; }
    @media (min-width: 992px) {
      .gform_wrapper .gfield_error .validation_message {
        margin-left: 160px; } }
  .gform_wrapper .gf_progressbar_wrapper .gf_progressbar_title {
    color: #544A4C; }
  .gform_wrapper .gf_progressbar_wrapper .gf_progressbar {
    background: white; }
  .gform_wrapper .gf_progressbar_wrapper .gf_progressbar_percentage {
    background: #FF9C2A;
    padding: 10px;
    color: white; }
  .gform_wrapper .gf_page_steps {
    border: 1px solid #e9e7e7; }
    .gform_wrapper .gf_page_steps .gf_step {
      color: #544A4C; }
    .gform_wrapper .gf_page_steps .gf_step_active {
      color: #FF9C2A; }
  .gform_wrapper .gform_page_footer {
    padding: 20px; }
    .gform_wrapper .gform_page_footer .gform_next_button, .gform_wrapper .gform_page_footer .gform_previous_button, .gform_wrapper .gform_page_footer .gform_button {
      color: white;
      background-color: #FF9C2A;
      border-color: #f68400; }
      .gform_wrapper .gform_page_footer .gform_next_button:focus, .gform_wrapper .gform_page_footer .gform_next_button.focus, .gform_wrapper .gform_page_footer .gform_previous_button:focus, .gform_wrapper .gform_page_footer .gform_previous_button.focus, .gform_wrapper .gform_page_footer .gform_button:focus, .gform_wrapper .gform_page_footer .gform_button.focus {
        color: white;
        background-color: #f68400;
        border-color: #773f00; }
      .gform_wrapper .gform_page_footer .gform_next_button:hover, .gform_wrapper .gform_page_footer .gform_previous_button:hover, .gform_wrapper .gform_page_footer .gform_button:hover {
        color: white;
        background-color: #f68400;
        border-color: #b96300; }
      .gform_wrapper .gform_page_footer .gform_next_button:active, .gform_wrapper .gform_page_footer .gform_next_button.active,
      .open > .gform_wrapper .gform_page_footer .gform_next_button.dropdown-toggle, .gform_wrapper .gform_page_footer .gform_previous_button:active, .gform_wrapper .gform_page_footer .gform_previous_button.active,
      .open > .gform_wrapper .gform_page_footer .gform_previous_button.dropdown-toggle, .gform_wrapper .gform_page_footer .gform_button:active, .gform_wrapper .gform_page_footer .gform_button.active,
      .open > .gform_wrapper .gform_page_footer .gform_button.dropdown-toggle {
        color: white;
        background-color: #f68400;
        border-color: #b96300; }
        .gform_wrapper .gform_page_footer .gform_next_button:active:hover, .gform_wrapper .gform_page_footer .gform_next_button:active:focus, .gform_wrapper .gform_page_footer .gform_next_button:active.focus, .gform_wrapper .gform_page_footer .gform_next_button.active:hover, .gform_wrapper .gform_page_footer .gform_next_button.active:focus, .gform_wrapper .gform_page_footer .gform_next_button.active.focus,
        .open > .gform_wrapper .gform_page_footer .gform_next_button.dropdown-toggle:hover,
        .open > .gform_wrapper .gform_page_footer .gform_next_button.dropdown-toggle:focus,
        .open > .gform_wrapper .gform_page_footer .gform_next_button.dropdown-toggle.focus, .gform_wrapper .gform_page_footer .gform_previous_button:active:hover, .gform_wrapper .gform_page_footer .gform_previous_button:active:focus, .gform_wrapper .gform_page_footer .gform_previous_button:active.focus, .gform_wrapper .gform_page_footer .gform_previous_button.active:hover, .gform_wrapper .gform_page_footer .gform_previous_button.active:focus, .gform_wrapper .gform_page_footer .gform_previous_button.active.focus,
        .open > .gform_wrapper .gform_page_footer .gform_previous_button.dropdown-toggle:hover,
        .open > .gform_wrapper .gform_page_footer .gform_previous_button.dropdown-toggle:focus,
        .open > .gform_wrapper .gform_page_footer .gform_previous_button.dropdown-toggle.focus, .gform_wrapper .gform_page_footer .gform_button:active:hover, .gform_wrapper .gform_page_footer .gform_button:active:focus, .gform_wrapper .gform_page_footer .gform_button:active.focus, .gform_wrapper .gform_page_footer .gform_button.active:hover, .gform_wrapper .gform_page_footer .gform_button.active:focus, .gform_wrapper .gform_page_footer .gform_button.active.focus,
        .open > .gform_wrapper .gform_page_footer .gform_button.dropdown-toggle:hover,
        .open > .gform_wrapper .gform_page_footer .gform_button.dropdown-toggle:focus,
        .open > .gform_wrapper .gform_page_footer .gform_button.dropdown-toggle.focus {
          color: white;
          background-color: #d27100;
          border-color: #773f00; }
      .gform_wrapper .gform_page_footer .gform_next_button:active, .gform_wrapper .gform_page_footer .gform_next_button.active,
      .open > .gform_wrapper .gform_page_footer .gform_next_button.dropdown-toggle, .gform_wrapper .gform_page_footer .gform_previous_button:active, .gform_wrapper .gform_page_footer .gform_previous_button.active,
      .open > .gform_wrapper .gform_page_footer .gform_previous_button.dropdown-toggle, .gform_wrapper .gform_page_footer .gform_button:active, .gform_wrapper .gform_page_footer .gform_button.active,
      .open > .gform_wrapper .gform_page_footer .gform_button.dropdown-toggle {
        background-image: none; }
      .gform_wrapper .gform_page_footer .gform_next_button.disabled:hover, .gform_wrapper .gform_page_footer .gform_next_button.disabled:focus, .gform_wrapper .gform_page_footer .gform_next_button.disabled.focus, .gform_wrapper .gform_page_footer .gform_next_button[disabled]:hover, .gform_wrapper .gform_page_footer .gform_next_button[disabled]:focus, .gform_wrapper .gform_page_footer .gform_next_button[disabled].focus,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_next_button:hover,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_next_button:focus,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_next_button.focus, .gform_wrapper .gform_page_footer .gform_previous_button.disabled:hover, .gform_wrapper .gform_page_footer .gform_previous_button.disabled:focus, .gform_wrapper .gform_page_footer .gform_previous_button.disabled.focus, .gform_wrapper .gform_page_footer .gform_previous_button[disabled]:hover, .gform_wrapper .gform_page_footer .gform_previous_button[disabled]:focus, .gform_wrapper .gform_page_footer .gform_previous_button[disabled].focus,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_previous_button:hover,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_previous_button:focus,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_previous_button.focus, .gform_wrapper .gform_page_footer .gform_button.disabled:hover, .gform_wrapper .gform_page_footer .gform_button.disabled:focus, .gform_wrapper .gform_page_footer .gform_button.disabled.focus, .gform_wrapper .gform_page_footer .gform_button[disabled]:hover, .gform_wrapper .gform_page_footer .gform_button[disabled]:focus, .gform_wrapper .gform_page_footer .gform_button[disabled].focus,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_button:hover,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_button:focus,
      fieldset[disabled] .gform_wrapper .gform_page_footer .gform_button.focus {
        background-color: #FF9C2A;
        border-color: #f68400; }
      .gform_wrapper .gform_page_footer .gform_next_button .badge, .gform_wrapper .gform_page_footer .gform_previous_button .badge, .gform_wrapper .gform_page_footer .gform_button .badge {
        color: #FF9C2A;
        background-color: white; }

.two-column_wrapper form .gform_body ul:first-of-type {
  display: none; }

.gform_column {
  float: left;
  padding: 0 15px !important; }

@media (min-width: 992px) {
  .two-column .gform_column {
    width: calc(100% / 2) !important; } }

/* Additional styles for file inout field to address iusses on Android native and iOS */
.ginput_container_fileupload {
  line-height: 10px; }

@media only screen and (max-width: 991px) {
  input[type="file"] {
    clear: both;
    width: 100%; } }

.embed-container {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 25px;
  height: 0;
  cursor: pointer; }
  .embed-container iframe, .embed-container video, .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

#contact_map {
  width: 100%;
  height: 500px; }

@media (max-width: 767px) {
  #wpadminbar {
    position: fixed !important; } }

#footer {
  background: #291F18;
  padding: 35px 0;
  text-align: left; }
  @media (min-width: 768px) {
    #footer {
      padding: 70px 0 50px 0; } }
  #footer p {
    font-family: 'Merriweather', serif;
    font-size: 12px;
    color: #FFFAC2; }
  #footer a {
    font-family: 'Merriweather', serif;
    font-size: 12px;
    color: #FFFAC2; }
  #footer img {
    width: 110px;
    height: 42px;
    float: right;
    margin: 50px 0 30px 0; }
  #footer .icon-wrapper {
    display: block;
    width: 40px;
    height: 40px;
    overflow: hidden;
    position: relative;
    background: #FFFAC2;
    margin: 0 0 10px 0;
    border-radius: 50%; }
    #footer .icon-wrapper .fa {
      width: auto;
      max-height: 22px;
      position: absolute;
      top: -100%;
      bottom: -100%;
      left: -100%;
      right: -100%;
      margin: auto;
      text-align: center;
      color: #291F18;
      font-size: 22px; }
  #footer .legal p {
    margin: 0;
    font-size: 12px;
    text-align: right; }
  #footer #dreamsmiths {
    float: right; }
    #footer #dreamsmiths img, #footer #dreamsmiths p {
      display: inline-block;
      vertical-align: middle;
      line-height: 1; }
    #footer #dreamsmiths p {
      margin-right: 10px; }
  #footer .social_footer {
    margin-bottom: 30px; }
  #footer ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    #footer ul li {
      display: inline-block;
      vertical-align: middle;
      margin-right: 20px; }
      @media (max-width: 767px) {
        #footer ul li {
          float: left;
          width: 100%;
          margin: 0 0 20px 0; } }
      #footer ul li a {
        display: block;
        cursor: pointer; }
        #footer ul li a .icon-wrapper {
          transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
        #footer ul li a:hover .icon-wrapper {
          transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
      #footer ul li .fa {
        font-size: 22px;
        color: white; }
  #footer .top-col {
    margin-bottom: 20px; }
  @media (max-width: 767px) {
    #footer .top-col .inner {
      padding-bottom: 20px;
      border-bottom: 1px solid #544A4C;
      float: left;
      width: 100%;
      display: table; }
      #footer .top-col .inner .text {
        display: table-cell;
        vertical-align: middle;
        width: 100%; }
    #footer .top-col .icon-wrapper {
      display: none; }
    #footer .footer-nav-wrapper {
      margin: 0 0 10px 0; }
    #footer .legal p {
      text-align: left; } }

.facebook-share:focus .icon-wrapper,
.facebook-share:hover .icon-wrapper {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 2px solid #3b5998;
  background: #3b5998; }

.facebook-share:focus .fa,
.facebook-share:hover .fa {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #fff !important; }

.google-plus-share:focus .icon-wrapper,
.google-plus-share:hover .icon-wrapper {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 2px solid #dd4b39;
  background: #dd4b39; }

.google-plus-share:focus .fa,
.google-plus-share:hover .fa {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #fff !important; }

.instagram-share:focus .icon-wrapper,
.instagram-share:hover .icon-wrapper {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 2px solid #517fa4;
  background: #517fa4; }

.instagram-share:focus .fa,
.instagram-share:hover .fa {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #fff !important; }

.linkedin-share:focus .icon-wrapper,
.linkedin-share:hover .icon-wrapper {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 2px solid #007bb6;
  background: #007bb6; }

.linkedin-share:focus .fa,
.linkedin-share:hover .fa {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #fff !important; }

.pinterest-share:focus .icon-wrapper,
.pinterest-share:hover .icon-wrapper {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 2px solid #c72527;
  background: #c72527; }

.pinterest-share:focus .fa,
.pinterest-share:hover .fa {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #fff !important; }

.reddit-share:focus .icon-wrapper,
.reddit-share:hover .icon-wrapper {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 2px solid #ff4500;
  background: #ff4500; }

.reddit-share:focus .fa,
.reddit-share:hover .fa {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #fff !important; }

.twitter-share:focus .icon-wrapper,
.twitter-share:hover .icon-wrapper {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  border: 2px solid #00aced;
  background: #00aced; }

.twitter-share:focus .fa,
.twitter-share:hover .fa {
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  color: #fff !important; }

.post_sharing {
  text-align: right;
  float: right;
  width: 100%;
  margin-top: 40px; }
  .post_sharing ul {
    list-style: none;
    margin: 0;
    padding: 0; }
    .post_sharing ul:after {
      visibility: hidden;
      display: block;
      font-size: 0;
      content: " ";
      clear: both;
      height: 0; }
    .post_sharing ul li {
      display: inline-block;
      vertical-align: middle;
      margin-right: 10px; }
      .post_sharing ul li:first-of-type {
        margin-right: 15px;
        font-weight: bold;
        text-transform: uppercase; }
    .post_sharing ul a {
      display: block;
      cursor: pointer;
      color: #544A4C; }
    .post_sharing ul .icon-wrapper {
      display: block;
      width: 42px;
      height: 42px;
      overflow: hidden;
      position: relative;
      border: 2px solid #544A4C;
      border-radius: 50%;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
      background: white; }
      .post_sharing ul .icon-wrapper .fa {
        width: auto;
        max-height: 18px;
        position: absolute;
        top: -100%;
        bottom: -100%;
        left: -100%;
        right: -100%;
        margin: auto;
        text-align: center;
        font-size: 18px;
        color: #544A4C;
        transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }

.btn {
  border: 2px solid #FFFAC2;
  padding: 10px 20px;
  display: inline-block;
  font-weight: 700;
  font-family: 'Roboto', sans-serif;
  background: none;
  font-size: 0.9rem;
  position: relative;
  border-radius: 200px;
  color: #FFFAC2 !important;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  line-height: 1.5;
  cursor: pointer; }
  .btn:focus {
    outline: none !important; }
  .btn .fa, .btn span {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .btn span {
    line-height: 1.5; }
  .btn .fa, .btn span {
    display: inline-block;
    vertical-align: middle; }
  .btn:hover {
    background: #FF9C2A;
    border: 2px solid #FF9C2A; }
    .btn:hover .fa, .btn:hover span {
      color: white !important; }
  @media (min-width: 768px) {
    .btn {
      padding: 15px 30px;
      font-size: 1rem; } }
  @media (max-width: 479px) {
    .btn {
      margin-top: 20px; } }

.cta_btn {
  border: 2px solid #FFFAC2;
  padding: 15px 30px;
  display: inline-block;
  font-weight: 700;
  font-family: 'Roboto', sans-serif;
  background: none;
  position: relative;
  border-radius: 200px;
  margin-top: 40px;
  color: #FFFAC2 !important;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  line-height: 1.5;
  cursor: pointer;
  text-decoration: none !important; }
  .cta_btn:focus {
    outline: none !important; }
  .cta_btn .fa, .cta_btn span {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .cta_btn span {
    line-height: 1.5; }
  .cta_btn .fa, .cta_btn span {
    display: inline-block;
    vertical-align: middle; }
  .cta_btn:hover {
    background: #ffffff;
    border: 2px solid #ffffff;
    color: #FF9C2A !important; }
    .cta_btn:hover .fa, .cta_btn:hover span {
      color: white !important; }
  @media (max-width: 479px) {
    .cta_btn {
      margin-top: 20px; } }

.li_btn a {
  border: 2px solid #FFFAC2;
  padding: 15px 30px !important;
  display: inline-block !important;
  font-weight: 700;
  font-family: 'Roboto', sans-serif;
  position: relative;
  border-radius: 200px;
  color: #FFFAC2 !important;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  line-height: 1.5;
  cursor: pointer; }
  @media (min-width: 992px) {
    .li_btn a {
      margin: 25px 0 0 0; } }
  .li_btn a:focus {
    outline: none !important; }
  .li_btn a .fa, .li_btn a span {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .li_btn a span {
    line-height: 1.5; }
  .li_btn a .fa, .li_btn a span {
    display: inline-block;
    vertical-align: middle; }
  .li_btn a:hover {
    background: #FF9C2A !important;
    border: 2px solid #FF9C2A !important; }
    .li_btn a:hover .fa, .li_btn a:hover span {
      color: white !important; }

.nav-collapse .li_btn a {
  border: 2px solid #FFFAC2;
  padding: 10px 30px !important;
  margin: 20px 0 0 0;
  display: inline-block;
  font-weight: 700;
  font-family: 'Roboto', sans-serif;
  position: relative;
  border-radius: 200px;
  color: #FFFAC2 !important;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  line-height: 1.5;
  cursor: pointer; }
  .nav-collapse .li_btn a:focus {
    outline: none !important; }
  .nav-collapse .li_btn a .fa, .nav-collapse .li_btn a span {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .nav-collapse .li_btn a span {
    line-height: 1.5; }
  .nav-collapse .li_btn a .fa, .nav-collapse .li_btn a span {
    display: inline-block;
    vertical-align: middle; }
  .nav-collapse .li_btn a:hover {
    background: #FF9C2A !important;
    border: 2px solid #FF9C2A !important; }
    .nav-collapse .li_btn a:hover .fa, .nav-collapse .li_btn a:hover span {
      color: white !important; }

.gform_wrapper .gform_footer .gform_button {
  border: 2px solid #FF9C2A;
  padding: 15px 30px;
  float: left;
  font-weight: 700;
  font-family: 'Roboto', sans-serif;
  background: #fff;
  width: 150px;
  position: relative;
  border-radius: 200px;
  color: #FF9C2A !important;
  transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1);
  line-height: 1.5;
  cursor: pointer; }
  @media (min-width: 992px) {
    .gform_wrapper .gform_footer .gform_button {
      margin-left: 160px; } }
  .gform_wrapper .gform_footer .gform_button:focus {
    outline: none !important; }
  .gform_wrapper .gform_footer .gform_button .fa, .gform_wrapper .gform_footer .gform_button span {
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
  .gform_wrapper .gform_footer .gform_button span {
    line-height: 1.5; }
  .gform_wrapper .gform_footer .gform_button .fa, .gform_wrapper .gform_footer .gform_button span {
    display: inline-block;
    vertical-align: middle; }
  .gform_wrapper .gform_footer .gform_button:hover {
    background: #FF9C2A;
    border: 2px solid #FF9C2A;
    color: #FFFAC2 !important; }
    .gform_wrapper .gform_footer .gform_button:hover .fa, .gform_wrapper .gform_footer .gform_button:hover span {
      color: #FFFAC2 !important; }

#page-header__wrapper {
  position: relative; }
  #page-header__wrapper h1, #page-header__wrapper h2, #page-header__wrapper h3, #page-header__wrapper h4, #page-header__wrapper h5, #page-header__wrapper h6, #page-header__wrapper p {
    color: white;
    text-align: left; }
  #page-header__wrapper .hero_text h1, #page-header__wrapper .hero_text h2, #page-header__wrapper .hero_text h3, #page-header__wrapper .hero_text h4, #page-header__wrapper .hero_text h5, #page-header__wrapper .hero_text h6, #page-header__wrapper .hero_text p {
    text-align: center; }
  #page-header__wrapper .outer_container {
    background: rgba(41, 31, 24, 0.5); }
  #page-header__wrapper.page-header__main {
    width: 100%;
    display: table;
    min-height: calc(100vh - 80px);
    margin: 80px auto 0 auto; }
    #page-header__wrapper.page-header__main > * {
      display: table-cell;
      vertical-align: middle;
      height: calc(100vh - 80px); }
    @media (min-width: 992px) {
      #page-header__wrapper.page-header__main {
        margin: 0;
        display: table;
        min-height: calc(100vh - 5px);
        margin: 0 auto; }
        #page-header__wrapper.page-header__main > * {
          display: table-cell;
          vertical-align: middle;
          height: calc(100vh - 5px); } }
  #page-header__wrapper.page-header__blog {
    width: 100%;
    display: table;
    margin: 80px auto 0 auto; }
    @media (min-width: 992px) {
      #page-header__wrapper.page-header__blog {
        margin: 110px auto 0 auto; } }
    #page-header__wrapper.page-header__blog > * {
      display: table-cell;
      vertical-align: middle; }
    #page-header__wrapper.page-header__blog h1, #page-header__wrapper.page-header__blog h2, #page-header__wrapper.page-header__blog h3, #page-header__wrapper.page-header__blog h4, #page-header__wrapper.page-header__blog h5, #page-header__wrapper.page-header__blog h6, #page-header__wrapper.page-header__blog p {
      margin-bottom: 0 !important; }
    @media (min-width: 768px) {
      #page-header__wrapper.page-header__blog {
        min-height: 220px; }
        #page-header__wrapper.page-header__blog > * {
          height: 220px; } }
    #page-header__wrapper.page-header__blog .stripe_pattern {
      background: url(../images/gray-stripe.png) top left repeat;
      padding: 40px 0; }
      @media (min-width: 768px) {
        #page-header__wrapper.page-header__blog .stripe_pattern {
          padding: 0; } }
    #page-header__wrapper.page-header__blog .outer_container {
      background: none; }
  #page-header__wrapper.page-header__minimal {
    display: table;
    min-height: 200px;
    margin: 0 auto; }
    #page-header__wrapper.page-header__minimal > * {
      display: table-cell;
      vertical-align: middle;
      height: 200px; }
  #page-header__wrapper .hero_text {
    max-width: 790px;
    margin: 0 auto; }
  #page-header__wrapper .arrow {
    position: absolute;
    left: 0;
    bottom: 0;
    color: #fff;
    font-size: 2rem;
    width: 100%;
    transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #page-header__wrapper .arrow:hover {
      color: #FF9C2A;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    @media (min-width: 992px) {
      #page-header__wrapper .arrow {
        font-size: 3rem; } }

body.logged-in #page-header__wrapper.page-header__main {
  display: table;
  min-height: calc(100vh - 37px);
  margin: 0 auto; }
  body.logged-in #page-header__wrapper.page-header__main > * {
    display: table-cell;
    vertical-align: middle;
    height: calc(100vh - 37px); }

#approach {
  background: white;
  padding: 30px 0; }
  @media (min-width: 768px) {
    #approach {
      padding: 100px 0 50px 0; } }

#focus {
  background: white; }

#leadership {
  background: white;
  padding: 40px 0; }
  @media (min-width: 992px) {
    #leadership {
      padding: 80px 0 100px 0; } }

#primary {
  padding: 30px 0;
  text-align: left;
  background: #fff; }
  @media (min-width: 768px) {
    #primary {
      padding: 60px 0; } }
  #primary.pattern {
    padding: 0 !important; }
  #primary .stripe_pattern {
    background: url(../images/gray-stripe.png) top left repeat;
    padding: 30px 0; }
    @media (min-width: 768px) {
      #primary .stripe_pattern {
        padding: 60px 0; } }
  #primary.block #main {
    min-height: 50vh; }

span.home {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 10px; }

#testimonials {
  background: #fd9b2b;
  background: radial-gradient(ellipse at center, #fd9b2b 0%, #dc8624 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fd9b2b', endColorstr='#dc8624', GradientType=1 );
  position: relative;
  color: #fff; }
  #testimonials .stripe_pattern {
    background: url(../images/gray-stripe.png) top left repeat; }
  #testimonials .container {
    padding-top: 30px;
    padding-bottom: 30px; }
    #testimonials .container p.detail {
      opacity: 0.6; }
    @media (min-width: 992px) {
      #testimonials .container {
        padding-top: 60px;
        padding-bottom: 60px; } }
    #testimonials .container .name {
      font-weight: bold; }
  #testimonials .slick-arrow {
    display: none !important;
    cursor: pointer; }
  @media (min-width: 768px) {
    #testimonials .slick-arrow {
      position: absolute;
      top: 50%;
      opacity: 0 !important;
      font-size: 2rem !important;
      height: 60px;
      margin: -30px 0 0 0; }
    #testimonials .slick-gal-prev {
      right: -30px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-gal-prev {
      right: 0;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials .slick-gal-next {
      left: -30px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-gal-next {
      left: 0;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-arrow {
      opacity: 1 !important;
      display: block !important; } }
  @media (min-width: 992px) {
    #testimonials .slick-arrow {
      position: absolute;
      top: 50%;
      opacity: 0 !important;
      font-size: 2rem !important;
      height: 60px;
      margin: -30px 0 0 0; }
    #testimonials .slick-gal-prev {
      right: -30px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-gal-prev {
      right: -5px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials .slick-gal-next {
      left: -30px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-gal-next {
      left: -5px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-arrow {
      opacity: 1 !important;
      display: block !important; } }
  @media (min-width: 1200px) {
    #testimonials .slick-arrow {
      position: absolute;
      top: 50%;
      opacity: 0 !important;
      font-size: 2rem !important;
      height: 60px;
      margin: -30px 0 0 0; }
    #testimonials .slick-gal-prev {
      right: -50px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-gal-prev {
      right: -25px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials .slick-gal-next {
      left: -50px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-gal-next {
      left: -25px;
      transition: all 0.2s cubic-bezier(0.215, 0.61, 0.355, 1); }
    #testimonials:hover .slick-arrow {
      opacity: 1 !important;
      display: block !important; } }
  #testimonials .slick-initialized .slick-slide {
    float: none;
    display: inline-block;
    vertical-align: middle; }

#focus .stripe_pattern {
  background: url(../images/gray-stripe.png) top left repeat;
  padding: 30px 0 15px 0; }
  @media (min-width: 768px) {
    #focus .stripe_pattern {
      padding: 80px 0 20px 0; } }

#focus .focus_list {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-top: 1.2rem;
  float: left; }
  #focus .focus_list li {
    width: 100%;
    float: left;
    margin: 0 0 15px 0; }
    @media (min-width: 700px) {
      #focus .focus_list li {
        width: calc(100% / 2 - 15px);
        margin: 0 0 30px 0; }
        #focus .focus_list li:nth-child(odd) {
          margin: 0 30px 30px 0; } }
    @media (min-width: 768px) {
      #focus .focus_list li {
        width: calc(100% / 2 - 15px);
        margin: 0 0 30px 0; }
        #focus .focus_list li:nth-child(odd) {
          margin: 0 30px 30px 0; } }
    #focus .focus_list li .inner {
      padding: 20px;
      background: #fff;
      border: 1px solid #e9e9e9;
      border-radius: 5px;
      height: 100%; }
      @media (min-width: 992px) {
        #focus .focus_list li .inner {
          padding: 60px; } }
    #focus .focus_list li img {
      width: 100px;
      height: 100px; }
      @media (min-width: 992px) {
        #focus .focus_list li img {
          width: 160px;
          height: 160px; } }

#leadership img {
  border-radius: 50%;
  margin-top: 1.2rem;
  width: 160px;
  height: 160px; }
  @media (min-width: 768px) {
    #leadership img {
      width: 206px;
      height: 206px; } }

@media (min-width: 768px) {
  #leadership p.detail {
    line-height: 1.7; } }

#cta_strip {
  position: relative;
  color: #fff;
  background: #fd9b2b;
  background: radial-gradient(ellipse at center, #fd9b2b 0%, #dc8624 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fd9b2b', endColorstr='#dc8624', GradientType=1 ); }
  #cta_strip .stripe_pattern {
    background: url(../images/gray-stripe.png) top left repeat; }
  #cta_strip .container {
    padding-top: 40px;
    padding-bottom: 40px; }
    @media (min-width: 768px) {
      #cta_strip .container {
        padding-top: 80px;
        padding-bottom: 80px; } }
    #cta_strip .container h2 {
      color: #fff; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvX3ZhcmlhYmxlcy5zY3NzIiwiY29tcG9uZW50cy9fbWl4aW5zLnNjc3MiLCJjb21wb25lbnRzL19ib290c3RyYXAuc2NzcyIsImNvbXBvbmVudHMvbWl4aW5zL192ZW5kb3ItcHJlZml4ZXMuc2NzcyIsImNvbXBvbmVudHMvbWl4aW5zL19ncmFkaWVudHMuc2NzcyIsImNvbXBvbmVudHMvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsImNvbXBvbmVudHMvX3R5cG9ncmFwaHkuc2NzcyIsImxheW91dC9fY29tbW9uLnNjc3MiLCJsYXlvdXQvX3NpbmdsZS5zY3NzIiwibGF5b3V0L19jb21tZW50cy5zY3NzIiwiY29tcG9uZW50cy9fbmF2aWdhdGlvbi5zY3NzIiwiY29tcG9uZW50cy9fYmFja190b190b3Auc2NzcyIsImNvbXBvbmVudHMvX3BhZ2luYXRpb24uc2NzcyIsImNvbXBvbmVudHMvX2xvYWRpbmcuc2NzcyIsImNvbXBvbmVudHMvX21hZ25pZmljLnNjc3MiLCJjb21wb25lbnRzL19nYWxsZXJpZXNfYW5kX2VtYmVkcy5zY3NzIiwiY29tcG9uZW50cy9fZ3Jhdml0eV9mb3Jtcy5zY3NzIiwiY29tcG9uZW50cy9taXhpbnMvX2J1dHRvbnMuc2NzcyIsImNvbXBvbmVudHMvX3Jlc3BvbnNpdmVfdmlkZW8uc2NzcyIsImNvbXBvbmVudHMvX21hcC5zY3NzIiwiY29tcG9uZW50cy9fd3BfYWRtaW5fYmFyLnNjc3MiLCJsYXlvdXQvX2Zvb3Rlci5zY3NzIiwibGF5b3V0L19zb2NpYWwtc2hhcmluZy5zY3NzIiwiY29tcG9uZW50cy9fYnV0dG9ucy5zY3NzIiwibGF5b3V0L19wYWdlLWhlYWRlci5zY3NzIiwibGF5b3V0L19jb250ZW50LnNjc3MiLCJsYXlvdXQvX3Rlc3RpbW9uaWFscy5zY3NzIiwibGF5b3V0L19mb2N1cy5zY3NzIiwibGF5b3V0L19sZWFkZXJzaGlwLnNjc3MiLCJsYXlvdXQvX2N0YS1zdHJpcC5zY3NzIl0sIm5h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SDtVQXNDSyxzQkFBc0IsRUFDdEIsRUFBQTtJQXZDTDtNQTJDSSxjQUFjO01BQ2QsaUJBQWlCO01BQ2pCLDBCQUEwQjtNQUMxQixtQkFBbUI7TUFDbkIsYUFBYSxFQUtiO01BSEE7UUFqREo7VUFrREssY0FBYyxFQUVmLEVBQUE7SUFwREo7TUF1REksYUFBYTtNQUNiLGNBQWMsRUFNZDtNQUpBO1FBMURKO1VBMkRLLGFBQWE7VUFDYixjQUFjLEVBRWYsRUFBQTs7QUM5REo7RUFFRSxtQkFBbUI7RUFDaEIsbUJBQW1CO0VBQ25CLGFBQWE7RUFDYixjQUFjLEVBTWpCO0VBSkc7SUFQTDtNQVFNLGFBQWE7TUFDYixjQUFjLEVBRWxCLEVBQUE7O0FBRUQ7RUFiRDtJQWdCSSxpQkFBaUIsRUFDakIsRUFBQTs7QUNqQko7RUFDQyxtQkFBbUI7RUFDbkIsWUFBWTtFQUNaLG9CQUFnQjtFQU1oQix5RUFBMkI7RUFDM0IscUhBQW9ILEVBbUJwSDtFQTdCRDtJQWFFLDJEQUEwRCxFQUMxRDtFQWRGO0lBaUJFLGtCQUFrQjtJQUNsQixxQkFBcUIsRUFVckI7SUFSQTtNQXBCRjtRQXFCRyxrQkFBa0I7UUFDbEIscUJBQXFCLEVBTXRCLEVBQUE7SUE1QkY7TUEwQkcsWUFBWSxFQUNaIiwiZmlsZSI6Im1haW4uY3NzIiwic291cmNlc0NvbnRlbnQiOlsiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vXG4vLyBGb250c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbkBpbXBvcnQgdXJsKCdodHRwczovL2ZvbnRzLmdvb2dsZWFwaXMuY29tL2Nzcz9mYW1pbHk9Um9ib3RvJyk7XG5AaW1wb3J0IHVybCgnaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PU1lcnJpd2VhdGhlcicpO1xuXG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuJGNvbnRlbnQ6IFx0XHQjNTQ0QTRDO1xuJGJvcmRlcjogXHRcdGxpZ2h0ZW4oJGNvbnRlbnQsNjAlKTtcblxuLy89PSBOYXZpZ2F0aW9uXG4kbG9nby13aWR0aDogMjAwcHg7XG5cbiRuYXYtaGVpZ2h0LXNtOiA4MHB4O1xuJGltZy1oZWlnaHQtc206IDQ2cHg7XG4kbmF2LWhlaWdodC1zbS1jb2xsYXBzZWQ6IDUwcHg7XG4kaW1nLWhlaWdodC1zbS1jb2xsYXBzZWQ6IDUwcHg7XG5cbiRuYXYtaGVpZ2h0LW1kOiAxMTBweDtcbiRpbWctaGVpZ2h0LW1kOiA2MnB4O1xuJG5hdi1oZWlnaHQtbWQtY29sbGFwc2VkOiA5MHB4O1xuJGltZy1oZWlnaHQtbWQtY29sbGFwc2VkOiA1MHB4O1xuXG4vLz09IENvbG9yc1xuLy9cbi8vIyMgR3JheSBhbmQgYnJhbmQgY29sb3JzIGZvciB1c2UgYWNyb3NzIEJvb3RzdHJhcC5cblxuJGdyYXktYmFzZTogICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kZ3JheS1kYXJrZXI6ICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAxMy41JSkgIWRlZmF1bHQ7IC8vICMyMjJcbiRncmF5LWRhcms6ICAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDIwJSkgIWRlZmF1bHQ7ICAgLy8gIzMzM1xuJGdyYXk6ICAgICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMzMuNSUpICFkZWZhdWx0OyAvLyAjNTU1XG4kZ3JheS1saWdodDogICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCA0Ni43JSkgIWRlZmF1bHQ7IC8vICM3NzdcbiRncmF5LWxpZ2h0ZXI6ICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDkzLjUlKSAhZGVmYXVsdDsgLy8gI2VlZVxuXG4kYnJhbmQtcHJpbWFyeTogICAgICAgICAjRkY5QzJBO1xuJGJyYW5kLXNlY29uZGFyeTogICAgICAgIzI5MUYxODtcbiRicmFuZC1zdWNjZXNzOiAgICAgICAgICM1Y2I4NWMgIWRlZmF1bHQ7XG4kYnJhbmQtaW5mbzogICAgICAgICAgICAjNWJjMGRlICFkZWZhdWx0O1xuJGJyYW5kLXdhcm5pbmc6ICAgICAgICAgI2YwYWQ0ZSAhZGVmYXVsdDtcbiRicmFuZC1kYW5nZXI6ICAgICAgICAgICNkOTUzNGYgIWRlZmF1bHQ7XG5cbiRwcmltYXJ5OiAgICAgICAgIFx0XHQkYnJhbmQtcHJpbWFyeTtcbiRzZWNvbmRhcnk6ICAgICAgICAgXHQkYnJhbmQtc2Vjb25kYXJ5O1xuJHN1Y2Nlc3M6ICAgICAgICAgXHRcdCRicmFuZC1zdWNjZXNzO1xuJGluZm86ICAgICAgICAgICAgXHRcdCRicmFuZC1pbmZvO1xuJHdhcm5pbmc6ICAgICAgICAgXHRcdCRicmFuZC13YXJuaW5nO1xuJGRhbmdlcjogICAgICAgICAgXHRcdCRicmFuZC1kYW5nZXI7XG5cbiRvcmFuZ2U6XHRcdFx0XHQjRkY5QzJBO1xuJGJyb3duOlx0XHRcdFx0XHQjMjkxRjE4O1xuJHllbGxvdzpcdFx0XHRcdCNGRkZBQzI7XG4kd2hpdGU6XHRcdFx0XHRcdCNmZmZmZmY7XG5cbi8vPT0gTWF4IHNpdGUgd2lkdGhcbiRtYXgtc2l0ZS13aWR0aDogMCAhZGVmYXVsdDsgLy8gU2V0IHRvIHZhbHVlIG90aGVyIHRoYW4gMCB0byB1c2UgZWcuIDE2MDBweFxuJG1heC1zaXRlLWJveC1zaGFkb3c6IDBweCAwcHggMjVweCAwcHggcmdiYSgwLDAsMCwuMykgIWRlZmF1bHQ7IC8vIGJveC1zaGFkb3cgZm9yIGVkZ2VzIG9mIHNpdGUgb24gbWF4IHdpZHRoXG4kbWF4LXNpdGUtYmc6ICRncmF5LWxpZ2h0ZXI7IC8vIGNvbG91ciBvdXRzaWRlIG9mIG1heCB3aWR0aFxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgIzI5MUYxOCAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuLy89PSBUeXBvZ3JhcGh5XG4vL1xuLy8jIyBGb250LCBsaW5lLWhlaWdodCwgYW5kIGNvbG9yIGZvciBib2R5IHRleHQsIGhlYWRpbmdzLCBhbmQgbW9yZS5cblxuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6ICBcIkhpbmRcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiAgICAgICBHZW9yZ2lhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgbW9ub3NwYWNlIGZvbnRzIGZvciBgPGNvZGU+YCwgYDxrYmQ+YCwgYW5kIGA8cHJlPmAuXG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiAgIE1lbmxvLCBNb25hY28sIENvbnNvbGFzLCBcIkNvdXJpZXIgTmV3XCIsIG1vbm9zcGFjZSAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1iYXNlOiAgICAgICAgJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG5cbiRmb250LXNpemUtYmFzZTogICAgICAgICAgMTZweCAhZGVmYXVsdDtcbiRmb250LXNpemUtbGFyZ2U6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1zbWFsbDogICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAwLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDAuODUpKSAhZGVmYXVsdDsgLy8gfjEycHhcblxuLy8qKiBVbml0LWxlc3MgYGxpbmUtaGVpZ2h0YCBmb3IgdXNlIGluIGNvbXBvbmVudHMgbGlrZSBidXR0b25zLlxuJGxpbmUtaGVpZ2h0LWJhc2U6ICAgICAgICAxLjQyODU3MTQyOSAhZGVmYXVsdDsgLy8gMjAvMTRcbi8vKiogQ29tcHV0ZWQgXCJsaW5lLWhlaWdodFwiIChgZm9udC1zaXplYCAqIGBsaW5lLWhlaWdodGApIGZvciB1c2Ugd2l0aCBgbWFyZ2luYCwgYHBhZGRpbmdgLCBldGMuXG4kbGluZS1oZWlnaHQtY29tcHV0ZWQ6ICAgIGZsb29yKCgkZm9udC1zaXplLWJhc2UgKiAkbGluZS1oZWlnaHQtYmFzZSkpICFkZWZhdWx0OyAvLyB+MjBweFxuXG4vLyoqIEJ5IGRlZmF1bHQsIHRoaXMgaW5oZXJpdHMgZnJvbSB0aGUgYDxib2R5PmAuXG4kaGVhZGluZ3MtZm9udC1mYW1pbHk6ICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtZm9udC13ZWlnaHQ6ICAgIDUwMCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1saW5lLWhlaWdodDogICAgMS4xICFkZWZhdWx0O1xuJGhlYWRpbmdzLWNvbG9yOiAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuXG5cbi8vPT0gSWNvbm9ncmFwaHlcbi8vXG4vLyMjIFNwZWNpZnkgY3VzdG9tIGxvY2F0aW9uIGFuZCBmaWxlbmFtZSBvZiB0aGUgaW5jbHVkZWQgR2x5cGhpY29ucyBpY29uIGZvbnQuIFVzZWZ1bCBmb3IgdGhvc2UgaW5jbHVkaW5nIEJvb3RzdHJhcCB2aWEgQm93ZXIuXG5cbi8vKiogTG9hZCBmb250cyBmcm9tIHRoaXMgZGlyZWN0b3J5LlxuXG4vLyBbY29udmVydGVyXSBJZiAkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyIGlmIHVzZWQsIHByb3ZpZGUgcGF0aCByZWxhdGl2ZSB0byB0aGUgYXNzZXRzIGxvYWQgcGF0aC5cbi8vIFtjb252ZXJ0ZXJdIFRoaXMgaXMgYmVjYXVzZSBzb21lIGFzc2V0IGhlbHBlcnMsIHN1Y2ggYXMgU3Byb2NrZXRzLCBkbyBub3Qgd29yayB3aXRoIGZpbGUtcmVsYXRpdmUgcGF0aHMuXG4kaWNvbi1mb250LXBhdGg6IGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIFwiYm9vdHN0cmFwL1wiLCBcIi4uL2ZvbnRzL2Jvb3RzdHJhcC9cIikgIWRlZmF1bHQ7XG5cbi8vKiogRmlsZSBuYW1lIGZvciBhbGwgZm9udCBmaWxlcy5cbiRpY29uLWZvbnQtbmFtZTogICAgICAgICAgXCJnbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyXCIgIWRlZmF1bHQ7XG4vLyoqIEVsZW1lbnQgSUQgd2l0aGluIFNWRyBpY29uIGZpbGUuXG4kaWNvbi1mb250LXN2Zy1pZDogICAgICAgIFwiZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIgIWRlZmF1bHQ7XG5cblxuLy89PSBDb21wb25lbnRzXG4vL1xuLy8jIyBEZWZpbmUgY29tbW9uIHBhZGRpbmcgYW5kIGJvcmRlciByYWRpdXMgc2l6ZXMgYW5kIG1vcmUuIFZhbHVlcyBiYXNlZCBvbiAxNHB4IHRleHQgYW5kIDEuNDI4IGxpbmUtaGVpZ2h0ICh+MjBweCB0byBzdGFydCkuXG5cbiRwYWRkaW5nLWJhc2UtdmVydGljYWw6ICAgICA2cHggIWRlZmF1bHQ7XG4kcGFkZGluZy1iYXNlLWhvcml6b250YWw6ICAgMTJweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctbGFyZ2UtdmVydGljYWw6ICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsOiAgMTZweCAhZGVmYXVsdDtcblxuJHBhZGRpbmctc21hbGwtdmVydGljYWw6ICAgIDVweCAhZGVmYXVsdDtcbiRwYWRkaW5nLXNtYWxsLWhvcml6b250YWw6ICAxMHB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy14cy12ZXJ0aWNhbDogICAgICAgMXB4ICFkZWZhdWx0O1xuJHBhZGRpbmcteHMtaG9yaXpvbnRhbDogICAgIDVweCAhZGVmYXVsdDtcblxuJGxpbmUtaGVpZ2h0LWxhcmdlOiAgICAgICAgIDEuMzMzMzMzMyAhZGVmYXVsdDsgLy8gZXh0cmEgZGVjaW1hbHMgZm9yIFdpbiA4LjEgQ2hyb21lXG4kbGluZS1oZWlnaHQtc21hbGw6ICAgICAgICAgMS41ICFkZWZhdWx0O1xuXG4kYm9yZGVyLXJhZGl1cy1iYXNlOiAgICAgICAgNHB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtbGFyZ2U6ICAgICAgIDZweCAhZGVmYXVsdDtcbiRib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAzcHggIWRlZmF1bHQ7XG5cbi8vKiogR2xvYmFsIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWNvbG9yOiAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBHbG9iYWwgYmFja2dyb3VuZCBjb2xvciBmb3IgYWN0aXZlIGl0ZW1zIChlLmcuLCBuYXZzIG9yIGRyb3Bkb3ducykuXG4kY29tcG9uZW50LWFjdGl2ZS1iZzogICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG5cbi8vKiogV2lkdGggb2YgdGhlIGBib3JkZXJgIGZvciBnZW5lcmF0aW5nIGNhcmV0cyB0aGF0IGluZGljYXRvciBkcm9wZG93bnMuXG4kY2FyZXQtd2lkdGgtYmFzZTogICAgICAgICAgNHB4ICFkZWZhdWx0O1xuLy8qKiBDYXJldHMgaW5jcmVhc2Ugc2xpZ2h0bHkgaW4gc2l6ZSBmb3IgbGFyZ2VyIGNvbXBvbmVudHMuXG4kY2FyZXQtd2lkdGgtbGFyZ2U6ICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVGFibGVzXG4vL1xuLy8jIyBDdXN0b21pemVzIHRoZSBgLnRhYmxlYCBjb21wb25lbnQgd2l0aCBiYXNpYyB2YWx1ZXMsIGVhY2ggdXNlZCBhY3Jvc3MgYWxsIHRhYmxlIHZhcmlhdGlvbnMuXG5cbi8vKiogUGFkZGluZyBmb3IgYDx0aD5gcyBhbmQgYDx0ZD5gcy5cbiR0YWJsZS1jZWxsLXBhZGRpbmc6ICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuLy8qKiBQYWRkaW5nIGZvciBjZWxscyBpbiBgLnRhYmxlLWNvbmRlbnNlZGAuXG4kdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZzogIDVweCAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYWxsIHRhYmxlcy5cbiR0YWJsZS1iZzogICAgICAgICAgICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1zdHJpcGVkYC5cbiR0YWJsZS1iZy1hY2NlbnQ6ICAgICAgICAgICAgICAgI2Y5ZjlmOSAhZGVmYXVsdDtcbi8vKiogQmFja2dyb3VuZCBjb2xvciB1c2VkIGZvciBgLnRhYmxlLWhvdmVyYC5cbiR0YWJsZS1iZy1ob3ZlcjogICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWJsZS1iZy1hY3RpdmU6ICAgICAgICAgICAgICAgJHRhYmxlLWJnLWhvdmVyICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGFibGUgYW5kIGNlbGwgYm9yZGVycy5cbiR0YWJsZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09IEJ1dHRvbnNcbi8vXG4vLyMjIEZvciBlYWNoIG9mIEJvb3RzdHJhcCdzIGJ1dHRvbnMsIGRlZmluZSB0ZXh0LCBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgY29sb3IuXG5cbiRidG4tZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJGJ0bi1kZWZhdWx0LWNvbG9yOiAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRidG4tZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4kYnRuLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXByaW1hcnkgIWRlZmF1bHQ7XG4kYnRuLXByaW1hcnktYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1wcmltYXJ5LWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tc3VjY2Vzcy1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtc3VjY2VzcyAhZGVmYXVsdDtcbiRidG4tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgIGRhcmtlbigkYnRuLXN1Y2Nlc3MtYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi1pbmZvLWNvbG9yOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4taW5mby1iZzogICAgICAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuJGJ0bi1pbmZvLWJvcmRlcjogICAgICAgICAgICAgICAgZGFya2VuKCRidG4taW5mby1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4kYnRuLXdhcm5pbmctYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi13YXJuaW5nLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tZGFuZ2VyLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWRhbmdlci1iZzogICAgICAgICAgICAgICAgICAkYnJhbmQtZGFuZ2VyICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYm9yZGVyOiAgICAgICAgICAgICAgZGFya2VuKCRidG4tZGFuZ2VyLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyBBbGxvd3MgZm9yIGN1c3RvbWl6aW5nIGJ1dHRvbiByYWRpdXMgaW5kZXBlbmRlbnRseSBmcm9tIGdsb2JhbCBib3JkZXIgcmFkaXVzXG4kYnRuLWJvcmRlci1yYWRpdXMtYmFzZTogICAgICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICAgJGJvcmRlci1yYWRpdXMtbGFyZ2UgIWRlZmF1bHQ7XG4kYnRuLWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgICAkYm9yZGVyLXJhZGl1cy1zbWFsbCAhZGVmYXVsdDtcblxuXG4vLz09IEZvcm1zXG4vL1xuLy8jI1xuXG4vLyoqIGA8aW5wdXQ+YCBiYWNrZ3JvdW5kIGNvbG9yXG4kaW5wdXQtYmc6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBgPGlucHV0IGRpc2FibGVkPmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnLWRpc2FibGVkOiAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuLy8qKiBUZXh0IGNvbG9yIGZvciBgPGlucHV0PmBzXG4kaW5wdXQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkZ3JheSAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dD5gIGJvcmRlciBjb2xvclxuJGlucHV0LWJvcmRlcjogICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuLy8gVE9ETzogUmVuYW1lIGAkaW5wdXQtYm9yZGVyLXJhZGl1c2AgdG8gYCRpbnB1dC1ib3JkZXItcmFkaXVzLWJhc2VgIGluIHY0XG4vLyoqIERlZmF1bHQgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbi8vIFRoaXMgaGFzIG5vIGVmZmVjdCBvbiBgPHNlbGVjdD5gcyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgYDxzZWxlY3Q+YHMgaW4gQ1NTLlxuJGlucHV0LWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbi8vKiogTGFyZ2UgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlOiAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuLy8qKiBTbWFsbCBgLmZvcm0tY29udHJvbGAgYm9yZGVyIHJhZGl1c1xuJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cbi8vKiogQm9yZGVyIGNvbG9yIGZvciBpbnB1dHMgb24gZm9jdXNcbiRpbnB1dC1ib3JkZXItZm9jdXM6ICAgICAgICAgICAgICM2NmFmZTkgIWRlZmF1bHQ7XG5cbi8vKiogUGxhY2Vob2xkZXIgdGV4dCBjb2xvclxuJGlucHV0LWNvbG9yLXBsYWNlaG9sZGVyOiAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtYmFzZTogICAgICAgICAgICAgICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtbGFyZ2U6ICAgICAgICAgICAgIChjZWlsKCRmb250LXNpemUtbGFyZ2UgKiAkbGluZS1oZWlnaHQtbGFyZ2UpICsgKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGhlaWdodFxuJGlucHV0LWhlaWdodC1zbWFsbDogICAgICAgICAgICAgKGZsb29yKCRmb250LXNpemUtc21hbGwgKiAkbGluZS1oZWlnaHQtc21hbGwpICsgKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICogMikgKyAyKSAhZGVmYXVsdDtcblxuLy8qKiBgLmZvcm0tZ3JvdXBgIG1hcmdpblxuJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTogICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGxlZ2VuZC1jb2xvcjogICAgICAgICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbiRsZWdlbmQtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1iZzogICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBmb3IgdGV4dHVhbCBpbnB1dCBhZGRvbnNcbiRpbnB1dC1ncm91cC1hZGRvbi1ib3JkZXItY29sb3I6ICRpbnB1dC1ib3JkZXIgIWRlZmF1bHQ7XG5cbi8vKiogRGlzYWJsZWQgY3Vyc29yIGZvciBmb3JtIGNvbnRyb2xzIGFuZCBidXR0b25zLlxuJGN1cnNvci1kaXNhYmxlZDogICAgICAgICAgICAgICAgbm90LWFsbG93ZWQgIWRlZmF1bHQ7XG5cblxuLy89PSBEcm9wZG93bnNcbi8vXG4vLyMjIERyb3Bkb3duIG1lbnUgY29udGFpbmVyIGFuZCBjb250ZW50cy5cblxuLy8qKiBCYWNrZ3JvdW5kIGZvciB0aGUgZHJvcGRvd24gbWVudS5cbiRkcm9wZG93bi1iZzogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAuXG4kZHJvcGRvd24tYm9yZGVyOiAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLC4xNSkgIWRlZmF1bHQ7XG4vLyoqIERyb3Bkb3duIG1lbnUgYGJvcmRlci1jb2xvcmAgKipmb3IgSUU4KiouXG4kZHJvcGRvd24tZmFsbGJhY2stYm9yZGVyOiAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBEaXZpZGVyIGNvbG9yIGZvciBiZXR3ZWVuIGRyb3Bkb3duIGl0ZW1zLlxuJGRyb3Bkb3duLWRpdmlkZXItYmc6ICAgICAgICAgICAgI2U1ZTVlNSAhZGVmYXVsdDtcblxuLy8qKiBEcm9wZG93biBsaW5rIHRleHQgY29sb3IuXG4kZHJvcGRvd24tbGluay1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBjb2xvciBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGdyYXktZGFyaywgNSUpICFkZWZhdWx0O1xuLy8qKiBIb3ZlciBiYWNrZ3JvdW5kIGZvciBkcm9wZG93biBsaW5rcy5cbiRkcm9wZG93bi1saW5rLWhvdmVyLWJnOiAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbi8vKiogQWN0aXZlIGRyb3Bkb3duIG1lbnUgaXRlbSB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZzogICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGRyb3Bkb3duIG1lbnUgaXRlbSBiYWNrZ3JvdW5kIGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgaGVhZGVycyB3aXRoaW4gZHJvcGRvd24gbWVudXMuXG4kZHJvcGRvd24taGVhZGVyLWNvbG9yOiAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8qKiBEZXByZWNhdGVkIGAkZHJvcGRvd24tY2FyZXQtY29sb3JgIGFzIG9mIHYzLjEuMFxuJGRyb3Bkb3duLWNhcmV0LWNvbG9yOiAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcblxuXG4vLy0tIFotaW5kZXggbWFzdGVyIGxpc3Rcbi8vXG4vLyBXYXJuaW5nOiBBdm9pZCBjdXN0b21pemluZyB0aGVzZSB2YWx1ZXMuIFRoZXkncmUgdXNlZCBmb3IgYSBiaXJkJ3MgZXllIHZpZXdcbi8vIG9mIGNvbXBvbmVudHMgZGVwZW5kZW50IG9uIHRoZSB6LWF4aXMgYW5kIGFyZSBkZXNpZ25lZCB0byBhbGwgd29yayB0b2dldGhlci5cbi8vXG4vLyBOb3RlOiBUaGVzZSB2YXJpYWJsZXMgYXJlIG5vdCBnZW5lcmF0ZWQgaW50byB0aGUgQ3VzdG9taXplci5cblxuJHppbmRleC1uYXZiYXI6ICAgICAgICAgICAgMTAwMCAhZGVmYXVsdDtcbiR6aW5kZXgtZHJvcGRvd246ICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LXBvcG92ZXI6ICAgICAgICAgICAxMDYwICFkZWZhdWx0O1xuJHppbmRleC10b29sdGlwOiAgICAgICAgICAgMTA3MCAhZGVmYXVsdDtcbiR6aW5kZXgtbmF2YmFyLWZpeGVkOiAgICAgIDEwMzAgIWRlZmF1bHQ7XG4kemluZGV4LW1vZGFsLWJhY2tncm91bmQ6ICAxMDQwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbDogICAgICAgICAgICAgMTA1MCAhZGVmYXVsdDtcblxuXG4vLz09IE1lZGlhIHF1ZXJpZXMgYnJlYWtwb2ludHNcbi8vXG4vLyMjIERlZmluZSB0aGUgYnJlYWtwb2ludHMgYXQgd2hpY2ggeW91ciBsYXlvdXQgd2lsbCBjaGFuZ2UsIGFkYXB0aW5nIHRvIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIEV4dHJhIHNtYWxsIHNjcmVlbiAvIHBob25lXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHNgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi14czogICAgICAgICAgICAgICAgICA0ODBweCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi14cy1taW5gIGFzIG9mIHYzLjIuMFxuJHNjcmVlbi14cy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXhzICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXBob25lYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tcGhvbmU6ICAgICAgICAgICAgICAgJHNjcmVlbi14cy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXNtYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tc206ICAgICAgICAgICAgICAgICAgNzY4cHggIWRlZmF1bHQ7XG4kc2NyZWVuLXNtLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tc20gIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tdGFibGV0YCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tdGFibGV0OiAgICAgICAgICAgICAgJHNjcmVlbi1zbS1taW4gIWRlZmF1bHQ7XG5cbi8vIE1lZGl1bSBzY3JlZW4gLyBkZXNrdG9wXG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tbWRgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1tZDogICAgICAgICAgICAgICAgICA5OTJweCAhZGVmYXVsdDtcbiRzY3JlZW4tbWQtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1tZCAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tZGVza3RvcDogICAgICAgICAgICAgJHNjcmVlbi1tZC1taW4gIWRlZmF1bHQ7XG5cbi8vIExhcmdlIHNjcmVlbiAvIHdpZGUgZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGc6ICAgICAgICAgICAgICAgICAgMTIwMHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1sZy1taW46ICAgICAgICAgICAgICAkc2NyZWVuLWxnICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLWxnLWRlc2t0b3BgIGFzIG9mIHYzLjAuMVxuJHNjcmVlbi1sZy1kZXNrdG9wOiAgICAgICAgICAkc2NyZWVuLWxnLW1pbiAhZGVmYXVsdDtcblxuLy8gU28gbWVkaWEgcXVlcmllcyBkb24ndCBvdmVybGFwIHdoZW4gcmVxdWlyZWQsIHByb3ZpZGUgYSBtYXhpbXVtXG4kc2NyZWVuLXh4cy1tYXg6ICAgICAgICAgICAgICgkc2NyZWVuLXhzLW1pbiAtIDEpICFkZWZhdWx0O1xuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7IiwiLy8gTWl4aW5zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBVdGlsaXRpZXNcbkBpbXBvcnQgXCJtaXhpbnMvaGlkZS10ZXh0XCI7XG5AaW1wb3J0IFwibWl4aW5zL29wYWNpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvaW1hZ2VcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGFiZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LWZpbHRlclwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzcG9uc2l2ZS12aXNpYmlsaXR5XCI7XG5AaW1wb3J0IFwibWl4aW5zL3NpemVcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFiLWZvY3VzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2V0LXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGV4dC1lbXBoYXNpc1wiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LW92ZXJmbG93XCI7XG5AaW1wb3J0IFwibWl4aW5zL3ZlbmRvci1wcmVmaXhlc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwibWl4aW5zL2FsZXJ0c1wiO1xuQGltcG9ydCBcIm1peGlucy9idXR0b25zXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhbmVsc1wiO1xuQGltcG9ydCBcIm1peGlucy9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwibWl4aW5zL2xpc3QtZ3JvdXBcIjtcbkBpbXBvcnQgXCJtaXhpbnMvbmF2LWRpdmlkZXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZm9ybXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcHJvZ3Jlc3MtYmFyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RhYmxlLXJvd1wiO1xuXG4vLyBTa2luc1xuQGltcG9ydCBcIm1peGlucy9iYWNrZ3JvdW5kLXZhcmlhbnRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvYm9yZGVyLXJhZGl1c1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmFkaWVudHNcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwibWl4aW5zL2NsZWFyZml4XCI7XG5AaW1wb3J0IFwibWl4aW5zL2NlbnRlci1ibG9ja1wiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtdmVydGljYWwtYWxpZ25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZC1mcmFtZXdvcmtcIjtcbkBpbXBvcnQgXCJtaXhpbnMvZ3JpZFwiO1xuXG4vLyBDT01NT04gVEhFTUUgTUlYSU5TXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuQG1peGluIGdsb2JhbF9ib3JkZXJfcmFkaXVzKCkge1xuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDRweDtcblx0LW1vei1ib3JkZXItcmFkaXVzOiA0cHg7XG5cdGJvcmRlci1yYWRpdXM6IDRweDtcbn1cblxuQG1peGluIGNhbGMoJHByb3BlcnR5LCAkZXhwcmVzc2lvbikgeyBcbiAgI3skcHJvcGVydHl9OiAtd2Via2l0LWNhbGMoI3skZXhwcmVzc2lvbn0pICFpbXBvcnRhbnQ7IFxuICAjeyRwcm9wZXJ0eX06IGNhbGMoI3skZXhwcmVzc2lvbn0pICFpbXBvcnRhbnQ7ICBcbn1cblxuQG1peGluIHZlcnRpY2FsX2FsaWdubWVudCgpIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG5AbWl4aW4gc3RhY2soKSB7XG5cdGxpc3Qtc3R5bGU6IG5vbmU7XG5cdG1hcmdpbjogMDtcblx0cGFkZGluZzogMDtcbn1cblxuQG1peGluIGNsZWFyKCkge1xuXHQmOmFmdGVyIHtcblx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Zm9udC1zaXplOiAwO1xuXHRcdGNvbnRlbnQ6IFwiIFwiO1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdGhlaWdodDogMDtcblx0fVxufVxuXG5AbWl4aW4gYW5pbWF0aW9uKCRwcm9wZXJ0eTogYWxsLCAkc3BlZWQ6IC4ycywgJGVhc2luZzogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKSkge1xuXHR0cmFuc2l0aW9uOiAjeyRwcm9wZXJ0eX0gI3skc3BlZWR9ICN7JGVhc2luZ307XG59XG5cblxuLy8gVmVydGljYWwgQWxpZ25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gdXNhZ2U6XG4vLyAud3JhcHBlciB7XG4vLyAgICAgIEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcihoZWlnaHQpO1xuLy8gfVxuLy9cbi8vIDxkaXYgY2xhc3M9XCJ3cmFwcGVyXCI+XG4vLyAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lclwiPiA8IS0tIHRoZSB0eXBlIGFuZCBjbGFzcyBvZiB0aGlzIGVsZW1lbnQgZG9lcyBub3QgbWF0dGVyLiB0aGUgZmlyc3QgY2hpbGQgaW5zaWRlIHRoZSBlbGVtZW50IHdpdGggbWl4aW4gd2lsbCBiZSB0YXJnZXRlZCAtLT5cbi8vICAgICAgICAgPGRpdiBjbGFzcz1cImJveFwiPiA8IS0tIHRoaXMgZWxlbWVudCB3aWxsIHZlZnRpY2FsbHkgY2VudGVyZWQgLS0+XG4vLyAgICAgICAgICAgICAgPCEtLSBjb250ZW50IC0tPlxuLy8gICAgICAgICA8L2Rpdj5cbi8vICAgICA8L2Rpdj5cbi8vIDwvZGl2PlxuLy9cbi8vIHRoZSBoZWlnaHQgdmFsdWUgaXMgYXBwbGllZCBhcyBhIG1pbiBoZWlnaHQgdG8gdGhlIGVsZW1lbnQgd2l0aCB0aGUgbWl4aW5cbi8vIGFuZCBhcyBhIGhlaWdodCB0byB0aGUgY2hpbGQgd2l0aCB0YWJsZS1jZWxsLiBUaGlzIGFsbG93cyB0aGUgdGFibGUgY2VsbCBjb250YWluZXIgdG8gZ3JvdyB3aXRoIGNvbnRlbnRcblxuQG1peGluIHZlcnRpY2FsLWNlbnRlcigkaGVpZ2h0OiAxMDAlKSB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtaW4taGVpZ2h0OiAjeyRoZWlnaHR9O1xuICBtYXJnaW46IDAgYXV0bztcblxuICA+ICoge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBoZWlnaHQ6ICN7JGhlaWdodH07XG4gIH1cbn1cblxuQG1peGluIHZlcnRpY2FsLWNlbnRlci1tb2JpbGUoJGhlaWdodDogMTAwJSkge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgbWluLWhlaWdodDogI3skaGVpZ2h0fTtcbiAgbWFyZ2luOiA4MHB4IGF1dG8gMCBhdXRvO1xuXG4gID4gKiB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIGhlaWdodDogI3skaGVpZ2h0fTtcbiAgfVxufVxuXG4vLyBDT01NT04gVEhFTUUgQ0xBU1NFU1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5hbGlnbm1lbnQtY29udGFpbmVye1xuXHRAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXIoMzUwcHgpO1xufSIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjMuNiAoaHR0cDovL2dldGJvb3RzdHJhcC5jb20pXG4gKiBDb3B5cmlnaHQgMjAxMS0yMDE1IFR3aXR0ZXIsIEluYy5cbiAqIExpY2Vuc2VkIHVuZGVyIE1JVCAoaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2Jsb2IvbWFzdGVyL0xJQ0VOU0UpXG4gKi9cblxuLy9cbi8vIEJ1dHRvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIENvbW1vbiBzdHlsZXNcbi5idG4tZGVmYXVsdCxcbi5idG4tcHJpbWFyeSxcbi5idG4tc3VjY2Vzcyxcbi5idG4taW5mbyxcbi5idG4td2FybmluZyxcbi5idG4tZGFuZ2VyIHtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwwLDAsLjIpO1xuICAkc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjE1KSwgMCAxcHggMXB4IHJnYmEoMCwwLDAsLjA3NSk7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coJHNoYWRvdyk7XG5cbiAgLy8gUmVzZXQgdGhlIHNoYWRvd1xuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwwLDAsLjEyNSkpO1xuICB9XG5cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG5cbiAgLmJhZGdlIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG4vLyBNaXhpbiBmb3IgZ2VuZXJhdGluZyBuZXcgc3R5bGVzXG5AbWl4aW4gYnRuLXN0eWxlcygkYnRuLWNvbG9yOiAjNTU1KSB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogJGJ0bi1jb2xvciwgJGVuZC1jb2xvcjogZGFya2VuKCRidG4tY29sb3IsIDEyJSkpO1xuICBAaW5jbHVkZSByZXNldC1maWx0ZXI7IC8vIERpc2FibGUgZ3JhZGllbnRzIGZvciBJRTkgYmVjYXVzZSBmaWx0ZXIgYmxlZWRzIHRocm91Z2ggcm91bmRlZCBjb3JuZXJzOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDYyMFxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCRidG4tY29sb3IsIDE0JSk7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyAge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnRuLWNvbG9yLCAxMiUpO1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAgLTE1cHg7XG4gIH1cblxuICAmOmFjdGl2ZSxcbiAgJi5hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYnRuLWNvbG9yLCAxMiUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRidG4tY29sb3IsIDE0JSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRidG4tY29sb3IsIDEyJSk7XG4gICAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIH1cbiAgfVxufVxuXG4vLyBDb21tb24gc3R5bGVzXG4uYnRuIHtcbiAgLy8gUmVtb3ZlIHRoZSBncmFkaWVudCBmb3IgdGhlIHByZXNzZWQvYWN0aXZlIHN0YXRlXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTtcbiAgfVxufVxuXG4vLyBBcHBseSB0aGUgbWl4aW4gdG8gdGhlIGJ1dHRvbnNcbi5idG4tZGVmYXVsdCB7IEBpbmNsdWRlIGJ0bi1zdHlsZXMoJGJ0bi1kZWZhdWx0LWJnKTsgdGV4dC1zaGFkb3c6IDAgMXB4IDAgI2ZmZjsgYm9yZGVyLWNvbG9yOiAjY2NjOyB9XG4uYnRuLXByaW1hcnkgeyBAaW5jbHVkZSBidG4tc3R5bGVzKCRidG4tcHJpbWFyeS1iZyk7IH1cbi5idG4tc3VjY2VzcyB7IEBpbmNsdWRlIGJ0bi1zdHlsZXMoJGJ0bi1zdWNjZXNzLWJnKTsgfVxuLmJ0bi1pbmZvICAgIHsgQGluY2x1ZGUgYnRuLXN0eWxlcygkYnRuLWluZm8tYmcpOyB9XG4uYnRuLXdhcm5pbmcgeyBAaW5jbHVkZSBidG4tc3R5bGVzKCRidG4td2FybmluZy1iZyk7IH1cbi5idG4tZGFuZ2VyICB7IEBpbmNsdWRlIGJ0bi1zdHlsZXMoJGJ0bi1kYW5nZXItYmcpOyB9XG5cblxuLy9cbi8vIEltYWdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLnRodW1ibmFpbCxcbi5pbWctdGh1bWJuYWlsIHtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDFweCAycHggcmdiYSgwLDAsMCwuMDc1KSk7XG59XG5cblxuLy9cbi8vIERyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmRyb3Bkb3duLW1lbnUgPiBsaSA+IGE6aG92ZXIsXG4uZHJvcGRvd24tbWVudSA+IGxpID4gYTpmb2N1cyB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItYmcsICRlbmQtY29sb3I6IGRhcmtlbigkZHJvcGRvd24tbGluay1ob3Zlci1iZywgNSUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRkcm9wZG93bi1saW5rLWhvdmVyLWJnLCA1JSk7XG59XG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhLFxuLmRyb3Bkb3duLW1lbnUgPiAuYWN0aXZlID4gYTpob3Zlcixcbi5kcm9wZG93bi1tZW51ID4gLmFjdGl2ZSA+IGE6Zm9jdXMge1xuICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZywgJGVuZC1jb2xvcjogZGFya2VuKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZywgNSUpKTtcbiAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRkcm9wZG93bi1saW5rLWFjdGl2ZS1iZywgNSUpO1xufVxuXG5cbi8vXG4vLyBOYXZiYXJcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIERlZmF1bHQgbmF2YmFyXG4ubmF2YmFyLWRlZmF1bHQge1xuICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6IGxpZ2h0ZW4oJG5hdmJhci1kZWZhdWx0LWJnLCAxMCUpLCAkZW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYmcpO1xuICBAaW5jbHVkZSByZXNldC1maWx0ZXI7IC8vIFJlbW92ZSBncmFkaWVudCBpbiBJRTwxMCB0byBmaXggYnVnIHdoZXJlIGRyb3Bkb3ducyBkb24ndCBnZXQgdHJpZ2dlcmVkXG4gIGJvcmRlci1yYWRpdXM6ICRuYXZiYXItYm9yZGVyLXJhZGl1cztcbiAgJHNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwyNTUsMjU1LC4xNSksIDAgMXB4IDVweCByZ2JhKDAsMCwwLC4wNzUpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuXG4gIC5uYXZiYXItbmF2ID4gLm9wZW4gPiBhLFxuICAubmF2YmFyLW5hdiA+IC5hY3RpdmUgPiBhIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6IGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmcsIDUlKSwgJGVuZC1jb2xvcjogZGFya2VuKCRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1iZywgMiUpKTtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgM3B4IDlweCByZ2JhKDAsMCwwLC4wNzUpKTtcbiAgfVxufVxuLm5hdmJhci1icmFuZCxcbi5uYXZiYXItbmF2ID4gbGkgPiBhIHtcbiAgdGV4dC1zaGFkb3c6IDAgMXB4IDAgcmdiYSgyNTUsMjU1LDI1NSwuMjUpO1xufVxuXG4vLyBJbnZlcnRlZCBuYXZiYXJcbi5uYXZiYXItaW52ZXJzZSB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogbGlnaHRlbigkbmF2YmFyLWludmVyc2UtYmcsIDEwJSksICRlbmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1iZyk7XG4gIEBpbmNsdWRlIHJlc2V0LWZpbHRlcjsgLy8gUmVtb3ZlIGdyYWRpZW50IGluIElFPDEwIHRvIGZpeCBidWcgd2hlcmUgZHJvcGRvd25zIGRvbid0IGdldCB0cmlnZ2VyZWQ7IHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEwMjU3XG4gIGJvcmRlci1yYWRpdXM6ICRuYXZiYXItYm9yZGVyLXJhZGl1cztcbiAgLm5hdmJhci1uYXYgPiAub3BlbiA+IGEsXG4gIC5uYXZiYXItbmF2ID4gLmFjdGl2ZSA+IGEge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnLCAkZW5kLWNvbG9yOiBsaWdodGVuKCRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZywgMi41JSkpO1xuICAgIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggOXB4IHJnYmEoMCwwLDAsLjI1KSk7XG4gIH1cblxuICAubmF2YmFyLWJyYW5kLFxuICAubmF2YmFyLW5hdiA+IGxpID4gYSB7XG4gICAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIHJnYmEoMCwwLDAsLjI1KTtcbiAgfVxufVxuXG4vLyBVbmRvIHJvdW5kZWQgY29ybmVycyBpbiBzdGF0aWMgYW5kIGZpeGVkIG5hdmJhcnNcbi5uYXZiYXItc3RhdGljLXRvcCxcbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuXG4vLyBGaXggYWN0aXZlIHN0YXRlIG9mIGRyb3Bkb3duIGl0ZW1zIGluIGNvbGxhcHNlZCBtb2RlXG5AbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgLm5hdmJhciAubmF2YmFyLW5hdiAub3BlbiAuZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnLCAkZW5kLWNvbG9yOiBkYXJrZW4oJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnLCA1JSkpO1xuICAgIH1cbiAgfVxufVxuXG5cbi8vXG4vLyBBbGVydHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIENvbW1vbiBzdHlsZXNcbi5hbGVydCB7XG4gIHRleHQtc2hhZG93OiAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjIpO1xuICAkc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjI1KSwgMCAxcHggMnB4IHJnYmEoMCwwLDAsLjA1KTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygkc2hhZG93KTtcbn1cblxuLy8gTWl4aW4gZm9yIGdlbmVyYXRpbmcgbmV3IHN0eWxlc1xuQG1peGluIGFsZXJ0LXN0eWxlcygkY29sb3IpIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAkY29sb3IsICRlbmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDcuNSUpKTtcbiAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCAxNSUpO1xufVxuXG4vLyBBcHBseSB0aGUgbWl4aW4gdG8gdGhlIGFsZXJ0c1xuLmFsZXJ0LXN1Y2Nlc3MgICAgeyBAaW5jbHVkZSBhbGVydC1zdHlsZXMoJGFsZXJ0LXN1Y2Nlc3MtYmcpOyB9XG4uYWxlcnQtaW5mbyAgICAgICB7IEBpbmNsdWRlIGFsZXJ0LXN0eWxlcygkYWxlcnQtaW5mby1iZyk7IH1cbi5hbGVydC13YXJuaW5nICAgIHsgQGluY2x1ZGUgYWxlcnQtc3R5bGVzKCRhbGVydC13YXJuaW5nLWJnKTsgfVxuLmFsZXJ0LWRhbmdlciAgICAgeyBAaW5jbHVkZSBhbGVydC1zdHlsZXMoJGFsZXJ0LWRhbmdlci1iZyk7IH1cblxuXG4vL1xuLy8gUHJvZ3Jlc3MgYmFyc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgcHJvZ3Jlc3MgYmFja2dyb3VuZCBzb21lIGRlcHRoXG4ucHJvZ3Jlc3Mge1xuICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6IGRhcmtlbigkcHJvZ3Jlc3MtYmcsIDQlKSwgJGVuZC1jb2xvcjogJHByb2dyZXNzLWJnKVxufVxuXG4vLyBNaXhpbiBmb3IgZ2VuZXJhdGluZyBuZXcgc3R5bGVzXG5AbWl4aW4gcHJvZ3Jlc3MtYmFyLXN0eWxlcygkY29sb3IpIHtcbiAgQGluY2x1ZGUgZ3JhZGllbnQtdmVydGljYWwoJHN0YXJ0LWNvbG9yOiAkY29sb3IsICRlbmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSkpO1xufVxuXG4vLyBBcHBseSB0aGUgbWl4aW4gdG8gdGhlIHByb2dyZXNzIGJhcnNcbi5wcm9ncmVzcy1iYXIgICAgICAgICAgICB7IEBpbmNsdWRlIHByb2dyZXNzLWJhci1zdHlsZXMoJHByb2dyZXNzLWJhci1iZyk7IH1cbi5wcm9ncmVzcy1iYXItc3VjY2VzcyAgICB7IEBpbmNsdWRlIHByb2dyZXNzLWJhci1zdHlsZXMoJHByb2dyZXNzLWJhci1zdWNjZXNzLWJnKTsgfVxuLnByb2dyZXNzLWJhci1pbmZvICAgICAgIHsgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXN0eWxlcygkcHJvZ3Jlc3MtYmFyLWluZm8tYmcpOyB9XG4ucHJvZ3Jlc3MtYmFyLXdhcm5pbmcgICAgeyBAaW5jbHVkZSBwcm9ncmVzcy1iYXItc3R5bGVzKCRwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7IH1cbi5wcm9ncmVzcy1iYXItZGFuZ2VyICAgICB7IEBpbmNsdWRlIHByb2dyZXNzLWJhci1zdHlsZXMoJHByb2dyZXNzLWJhci1kYW5nZXItYmcpOyB9XG5cbi8vIFJlc2V0IHRoZSBzdHJpcGVkIGNsYXNzIGJlY2F1c2Ugb3VyIG1peGlucyBkb24ndCBkbyBtdWx0aXBsZSBncmFkaWVudHMgYW5kXG4vLyB0aGUgYWJvdmUgY3VzdG9tIHN0eWxlcyBvdmVycmlkZSB0aGUgbmV3IGAucHJvZ3Jlc3MtYmFyLXN0cmlwZWRgIGluIHYzLjIuMC5cbi5wcm9ncmVzcy1iYXItc3RyaXBlZCB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXN0cmlwZWQ7XG59XG5cblxuLy9cbi8vIExpc3QgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubGlzdC1ncm91cCB7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAxcHggMnB4IHJnYmEoMCwwLDAsLjA3NSkpO1xufVxuLmxpc3QtZ3JvdXAtaXRlbS5hY3RpdmUsXG4ubGlzdC1ncm91cC1pdGVtLmFjdGl2ZTpob3Zlcixcbi5saXN0LWdyb3VwLWl0ZW0uYWN0aXZlOmZvY3VzIHtcbiAgdGV4dC1zaGFkb3c6IDAgLTFweCAwIGRhcmtlbigkbGlzdC1ncm91cC1hY3RpdmUtYmcsIDEwJSk7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCAkZW5kLWNvbG9yOiBkYXJrZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA3LjUlKSk7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCRsaXN0LWdyb3VwLWFjdGl2ZS1ib3JkZXIsIDcuNSUpO1xuXG4gIC5iYWRnZSB7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG4gIH1cbn1cblxuXG4vL1xuLy8gUGFuZWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBDb21tb24gc3R5bGVzXG4ucGFuZWwge1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDJweCByZ2JhKDAsMCwwLC4wNSkpO1xufVxuXG4vLyBNaXhpbiBmb3IgZ2VuZXJhdGluZyBuZXcgc3R5bGVzXG5AbWl4aW4gcGFuZWwtaGVhZGluZy1zdHlsZXMoJGNvbG9yKSB7XG4gIEBpbmNsdWRlIGdyYWRpZW50LXZlcnRpY2FsKCRzdGFydC1jb2xvcjogJGNvbG9yLCAkZW5kLWNvbG9yOiBkYXJrZW4oJGNvbG9yLCA1JSkpO1xufVxuXG4vLyBBcHBseSB0aGUgbWl4aW4gdG8gdGhlIHBhbmVsIGhlYWRpbmdzIG9ubHlcbi5wYW5lbC1kZWZhdWx0ID4gLnBhbmVsLWhlYWRpbmcgICB7IEBpbmNsdWRlIHBhbmVsLWhlYWRpbmctc3R5bGVzKCRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmcpOyB9XG4ucGFuZWwtcHJpbWFyeSA+IC5wYW5lbC1oZWFkaW5nICAgeyBAaW5jbHVkZSBwYW5lbC1oZWFkaW5nLXN0eWxlcygkcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnKTsgfVxuLnBhbmVsLXN1Y2Nlc3MgPiAucGFuZWwtaGVhZGluZyAgIHsgQGluY2x1ZGUgcGFuZWwtaGVhZGluZy1zdHlsZXMoJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZyk7IH1cbi5wYW5lbC1pbmZvID4gLnBhbmVsLWhlYWRpbmcgICAgICB7IEBpbmNsdWRlIHBhbmVsLWhlYWRpbmctc3R5bGVzKCRwYW5lbC1pbmZvLWhlYWRpbmctYmcpOyB9XG4ucGFuZWwtd2FybmluZyA+IC5wYW5lbC1oZWFkaW5nICAgeyBAaW5jbHVkZSBwYW5lbC1oZWFkaW5nLXN0eWxlcygkcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnKTsgfVxuLnBhbmVsLWRhbmdlciA+IC5wYW5lbC1oZWFkaW5nICAgIHsgQGluY2x1ZGUgcGFuZWwtaGVhZGluZy1zdHlsZXMoJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnKTsgfVxuXG5cbi8vXG4vLyBXZWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLndlbGwge1xuICBAaW5jbHVkZSBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6IGRhcmtlbigkd2VsbC1iZywgNSUpLCAkZW5kLWNvbG9yOiAkd2VsbC1iZyk7XG4gIGJvcmRlci1jb2xvcjogZGFya2VuKCR3ZWxsLWJnLCAxMCUpO1xuICAkc2hhZG93OiBpbnNldCAwIDFweCAzcHggcmdiYSgwLDAsMCwuMDUpLCAwIDFweCAwIHJnYmEoMjU1LDI1NSwyNTUsLjEpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xufVxuIiwiLy8gVmVuZG9yIFByZWZpeGVzXG4vL1xuLy8gQWxsIHZlbmRvciBtaXhpbnMgYXJlIGRlcHJlY2F0ZWQgYXMgb2YgdjMuMi4wIGR1ZSB0byB0aGUgaW50cm9kdWN0aW9uIG9mXG4vLyBBdXRvcHJlZml4ZXIgaW4gb3VyIEdydW50ZmlsZS4gVGhleSBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2NC5cblxuLy8gLSBBbmltYXRpb25zXG4vLyAtIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIC0gQm94IHNoYWRvd1xuLy8gLSBCb3ggc2l6aW5nXG4vLyAtIENvbnRlbnQgY29sdW1uc1xuLy8gLSBIeXBoZW5zXG4vLyAtIFBsYWNlaG9sZGVyIHRleHRcbi8vIC0gVHJhbnNmb3JtYXRpb25zXG4vLyAtIFRyYW5zaXRpb25zXG4vLyAtIFVzZXIgU2VsZWN0XG5cblxuLy8gQW5pbWF0aW9uc1xuQG1peGluIGFuaW1hdGlvbigkYW5pbWF0aW9uKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgIC1vLWFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbiAgICAgICAgICBhbmltYXRpb246ICRhbmltYXRpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLW5hbWUoJG5hbWUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogJG5hbWU7XG4gICAgICAgICAgYW5pbWF0aW9uLW5hbWU6ICRuYW1lO1xufVxuQG1peGluIGFuaW1hdGlvbi1kdXJhdGlvbigkZHVyYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbiAgICAgICAgICBhbmltYXRpb24tZHVyYXRpb246ICRkdXJhdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWRlbGF5KCRkZWxheSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xuICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogJGRlbGF5O1xufVxuQG1peGluIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQoJGl0ZXJhdGlvbi1jb3VudCkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6ICRpdGVyYXRpb24tY291bnQ7XG4gICAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGlyZWN0aW9uKCRkaXJlY3Rpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZGlyZWN0aW9uOiAkZGlyZWN0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG59XG5AbWl4aW4gYW5pbWF0aW9uLWZpbGwtbW9kZSgkZmlsbC1tb2RlKSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogJGZpbGwtbW9kZTtcbiAgICAgICAgICBhbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xufVxuXG4vLyBCYWNrZmFjZSB2aXNpYmlsaXR5XG4vLyBQcmV2ZW50IGJyb3dzZXJzIGZyb20gZmxpY2tlcmluZyB3aGVuIHVzaW5nIENTUyAzRCB0cmFuc2Zvcm1zLlxuLy8gRGVmYXVsdCB2YWx1ZSBpcyBgdmlzaWJsZWAsIGJ1dCBjYW4gYmUgY2hhbmdlZCB0byBgaGlkZGVuYFxuXG5AbWl4aW4gYmFja2ZhY2UtdmlzaWJpbGl0eSgkdmlzaWJpbGl0eSkge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xuICAgICAgICAgIGJhY2tmYWNlLXZpc2liaWxpdHk6ICR2aXNpYmlsaXR5O1xufVxuXG4vLyBEcm9wIHNoYWRvd3Ncbi8vXG4vLyBOb3RlOiBEZXByZWNhdGVkIGAuYm94LXNoYWRvdygpYCBhcyBvZiB2My4xLjAgc2luY2UgYWxsIG9mIEJvb3RzdHJhcCdzXG4vLyBzdXBwb3J0ZWQgYnJvd3NlcnMgdGhhdCBoYXZlIGJveCBzaGFkb3cgY2FwYWJpbGl0aWVzIG5vdyBzdXBwb3J0IGl0LlxuXG5AbWl4aW4gYm94LXNoYWRvdygkc2hhZG93Li4uKSB7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogJHNoYWRvdzsgLy8gaU9TIDw0LjMgJiBBbmRyb2lkIDw0LjFcbiAgICAgICAgICBib3gtc2hhZG93OiAkc2hhZG93O1xufVxuXG4vLyBCb3ggc2l6aW5nXG5AbWl4aW4gYm94LXNpemluZygkYm94bW9kZWwpIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgIC1tb3otYm94LXNpemluZzogJGJveG1vZGVsO1xuICAgICAgICAgIGJveC1zaXppbmc6ICRib3htb2RlbDtcbn1cblxuLy8gQ1NTMyBDb250ZW50IENvbHVtbnNcbkBtaXhpbiBjb250ZW50LWNvbHVtbnMoJGNvbHVtbi1jb3VudCwgJGNvbHVtbi1nYXA6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICAtd2Via2l0LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgLW1vei1jb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gICAgICAgICAgY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAtd2Via2l0LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAtbW96LWNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xuICAgICAgICAgIGNvbHVtbi1nYXA6ICRjb2x1bW4tZ2FwO1xufVxuXG4vLyBPcHRpb25hbCBoeXBoZW5hdGlvblxuQG1peGluIGh5cGhlbnMoJG1vZGU6IGF1dG8pIHtcbiAgd29yZC13cmFwOiBicmVhay13b3JkO1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xufVxuXG4vLyBQbGFjZWhvbGRlciB0ZXh0XG5AbWl4aW4gcGxhY2Vob2xkZXIoJGNvbG9yOiAkaW5wdXQtY29sb3ItcGxhY2Vob2xkZXIpIHtcbiAgLy8gRmlyZWZveFxuICAmOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIG9wYWNpdHk6IDE7IC8vIE92ZXJyaWRlIEZpcmVmb3gncyB1bnVzdWFsIGRlZmF1bHQgb3BhY2l0eTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzExNTI2XG4gIH1cbiAgJjotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbG9yOyB9IC8vIEludGVybmV0IEV4cGxvcmVyIDEwK1xuICAmOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyICB7IGNvbG9yOiAkY29sb3I7IH0gLy8gU2FmYXJpIGFuZCBDaHJvbWVcbn1cblxuLy8gVHJhbnNmb3JtYXRpb25zXG5AbWl4aW4gc2NhbGUoJHJhdGlvLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xuICAgICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pO1xufVxuXG5AbWl4aW4gc2NhbGVYKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG59XG5AbWl4aW4gc2NhbGVZKCRyYXRpbykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG59XG5AbWl4aW4gc2tldygkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpOyAvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy80ODg1OyBJRTkrXG4gICAgICAgLW8tdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUoJHgsICR5KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbn1cbkBtaXhpbiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkeCwgJHksICR6KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xufVxuQG1peGluIHJvdGF0ZSgkZGVncmVlcykge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVYKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiByb3RhdGVZKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZSgkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xuICAgICAtbW96LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiBwZXJzcGVjdGl2ZS1vcmlnaW4oJHBlcnNwZWN0aXZlKSB7XG4gIC13ZWJraXQtcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG4gICAgICAgICAgcGVyc3BlY3RpdmUtb3JpZ2luOiAkcGVyc3BlY3RpdmU7XG59XG5AbWl4aW4gdHJhbnNmb3JtLW9yaWdpbigkb3JpZ2luKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47IC8vIElFOSBvbmx5XG4gICAgICAgICAgdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbn1cblxuXG4vLyBUcmFuc2l0aW9uc1xuXG5AbWl4aW4gdHJhbnNpdGlvbigkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246ICR0cmFuc2l0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tcHJvcGVydHkoJHRyYW5zaXRpb24tcHJvcGVydHkuLi4pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbiAgICAgICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiAkdHJhbnNpdGlvbi1wcm9wZXJ0eTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWRlbGF5KCR0cmFuc2l0aW9uLWRlbGF5KSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG4gICAgICAgICAgdHJhbnNpdGlvbi1kZWxheTogJHRyYW5zaXRpb24tZGVsYXk7XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1kdXJhdGlvbigkdHJhbnNpdGlvbi1kdXJhdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tZHVyYXRpb246ICR0cmFuc2l0aW9uLWR1cmF0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uKCR0aW1pbmctZnVuY3Rpb24pIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLXRyYW5zZm9ybSgkdHJhbnNpdGlvbi4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAtbW96LXRyYW5zaXRpb246IC1tb3otdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgIC1vLXRyYW5zaXRpb246IC1vLXRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB0cmFuc2Zvcm0gJHRyYW5zaXRpb247XG59XG5cblxuLy8gVXNlciBzZWxlY3Rcbi8vIEZvciBzZWxlY3RpbmcgdGV4dCBvbiB0aGUgcGFnZVxuXG5AbWl4aW4gdXNlci1zZWxlY3QoJHNlbGVjdCkge1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAtbW96LXVzZXItc2VsZWN0OiAkc2VsZWN0O1xuICAgICAgLW1zLXVzZXItc2VsZWN0OiAkc2VsZWN0OyAvLyBJRTEwK1xuICAgICAgICAgIHVzZXItc2VsZWN0OiAkc2VsZWN0O1xufVxuIiwiLy8gR3JhZGllbnRzXG5cblxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0xKTsgLy8gSUU5IGFuZCBkb3duXG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTApOyAvLyBJRTkgYW5kIGRvd25cbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IHJlcGVhdC14O1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRkZWcsICRzdGFydC1jb2xvciwgJGVuZC1jb2xvcik7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBTdGFuZGFyZCwgSUUxMCwgRmlyZWZveCAxNissIE9wZXJhIDEyLjEwKywgU2FmYXJpIDcrLCBDaHJvbWUgMjYrXG59XG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xufVxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIFJlc2V0IGZpbHRlcnMgZm9yIElFXG4vL1xuLy8gV2hlbiB5b3UgbmVlZCB0byByZW1vdmUgYSBncmFkaWVudCBiYWNrZ3JvdW5kLCBkbyBub3QgZm9yZ2V0IHRvIHVzZSB0aGlzIHRvIHJlc2V0XG4vLyB0aGUgSUUgZmlsdGVyIGZvciBJRTkgYW5kIGJlbG93LlxuXG5AbWl4aW4gcmVzZXQtZmlsdGVyKCkge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChlbmFibGVkID0gZmFsc2UpO1xufVxuIiwiYm9keSxodG1sIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGZvbnQtZmFtaWx5OiAnTWVycml3ZWF0aGVyJywgc2VyaWY7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgY29sb3I6ICRjb250ZW50O1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0Ym9keSxodG1sIHtcblx0XHRmb250LXNpemU6IDEwMCU7XG5cdH1cbn1cblxuY2FwdGlvbiwgdGgsIHRkLCBpbnB1dCwgdGV4dGFyZWEsIHNlbGVjdCwgb3B0aW9uLCBsZWdlbmQsIGZpZWxkc2V0LCBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwIHtcbiAgbGluZS1oZWlnaHQ6IDEuNjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gIGNhcHRpb24sIHRoLCB0ZCwgaW5wdXQsIHRleHRhcmVhLCBzZWxlY3QsIG9wdGlvbiwgbGVnZW5kLCBmaWVsZHNldCwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG4gICAgLyogZXF1aXZhbGVudCB0byAxNnB4ICovXG4gICAgbGluZS1oZWlnaHQ6IDEuODtcbiAgICAvKiBlcXVpdmFsZW50IHRvIDIycHggKi9cbiAgfVxufVxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8qIEhlYWRpbmdzXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuaDEge1xuXHRmb250LXNpemU6IDEuN3JlbTtcblx0LyogMnggYm9keSBjb3B5IHNpemUgPSAzMnB4ICovXG5cdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHQvKiA0NXB4IC8gMzZweCAqL1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0bWFyZ2luLXRvcDogMDtcblx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0aDEge1xuXHRcdGZvbnQtc2l6ZTogMi41cmVtO1xuXHRcdC8qIDIuNXggYm9keSBjb3B5IHNpemUgPSA0MHB4ICovXG5cdFx0bGluZS1oZWlnaHQ6IDEuMTI1O1xuXHR9XG59XG5cbkBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXh4cy1tYXgpIHtcblx0aDEge1xuXHRcdG1hcmdpbi1ib3R0b206IDAuNXJlbTtcblx0fVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0aDEge1xuXHRcdGZvbnQtc2l6ZTogMi44cmVtO1xuXHRcdC8qIDN4IGJvZHkgY29weSBzaXplID0gNDhweCAqL1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjE7XG5cdFx0Lyoga2VlcCB0byBhIG11bHRpcGxlIG9mIHRoZSAyMHB4IGxpbmUgaGVpZ2h0IGFuZCBzb21ldGhpbmcgbW9yZSBhcHByb3ByaWF0ZSBmb3IgZGlzcGxheSBoZWFkaW5ncyAqL1xuXHR9XG59XG5cbmgyIHtcblx0Zm9udC1zaXplOiAxLjlyZW07XG5cdC8qIDEuOXggYm9keSBjb3B5IHNpemUgPSAzMHB4ICovXG5cdGxpbmUtaGVpZ2h0OiAxLjE1Mzg0NjE1O1xuXHQvKiAzMHB4IC8gMjZweCAqL1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bWFyZ2luLWJvdHRvbTogMS4ycmVtO1xuXHRtYXJnaW4tdG9wOiAwO1xuXHRjb2xvcjogJGJyb3duO1xuXHRmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXHRoMiB7XG5cdFx0Zm9udC1zaXplOiAycmVtO1xuXHRcdC8qIDJ4IGJvZHkgY29weSBzaXplID0gMzJweCAqL1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHR9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRoMiB7XG5cdFx0Zm9udC1zaXplOiAyLjIwcmVtO1xuXHRcdC8qIDIuMjV4IGJvZHkgY29weSBzaXplID0gMzZweCAqL1xuXHRcdGxpbmUtaGVpZ2h0OiAxLjI1O1xuXHR9XG59XG5cbmgzIHtcblx0Zm9udC1zaXplOiAxLjM3NXJlbTtcblx0LyogMS4zNzV4IGJvZHkgY29weSBzaXplID0gMjJweCAqL1xuXHRsaW5lLWhlaWdodDogMS4xMzYzNjM2NDtcblx0LyogMjVweCAvIDIycHggKi9cblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdG1hcmdpbi1ib3R0b206IDAuMnJlbTtcblx0bWFyZ2luLXRvcDogMDtcblx0Y29sb3I6ICRicm93bjtcblx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0aDMge1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdC8qIDEuNXggYm9keSBjb3B5IHNpemUgPSAyNHB4ICovXG5cdFx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdH1cbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdGgzIHtcblx0XHRmb250LXNpemU6IDEuNjVyZW07XG5cdFx0LyogMS43NXggYm9keSBjb3B5IHNpemUgPSAyOHB4ICovXG5cdFx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdH1cbn1cblxuaDQge1xuXHRmb250LXNpemU6IDEuMXJlbTtcblx0LyogMS4xMjV4IGJvZHkgY29weSBzaXplID0gMThweCAqL1xuXHRsaW5lLWhlaWdodDogMS41O1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0bWFyZ2luLWJvdHRvbTogMXJlbTtcblx0bWFyZ2luLXRvcDogMDtcblx0Zm9udC1mYW1pbHk6ICdNZXJyaXdlYXRoZXInLCBzZXJpZjtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cdGg0IHtcblx0XHRsaW5lLWhlaWdodDogMi41O1xuXHRcdC8qICgyMnB4IC8gMThweCAqL1xuXHR9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLyogUGFyYWdyYXBoXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuUCB7XG5cdG1hcmdpbi1ib3R0b206IDEuOXJlbTtcblxuXHQmLmhlYWRpbmcge1xuXHRcdGZvbnQtc2l6ZTogMC45cmVtO1xuXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cdFx0XHRmb250LXNpemU6IDEuMXJlbTtcblx0XHR9XG5cdH1cblxuXHQmLm5vU3BhY2Uge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cblxuXHQmOmxhc3QtY2hpbGQge1xuXHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdH1cbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHhzLW1heCkge1xuXHRwIHtcblx0XHRtYXJnaW4tYm90dG9tOiAxcmVtO1xuXG5cdFx0JjpsYXN0LWNoaWxkIHtcblx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0fVxuXHR9XG59XG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLyogQmxvY2txdW90ZVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuYmxvY2txdW90ZSB7XG5cdGZvbnQtc2l6ZTogMS4yNXJlbTtcblx0LyogMjBweCAvIDE2cHggKi9cblx0bGluZS1oZWlnaHQ6IDEuMjU7XG5cdC8qIDI1cHggLyAyMHB4ICovXG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXHRibG9ja3F1b3RlIHtcblx0XHRmb250LXNpemU6IDEuNXJlbTtcblx0XHQvKiAyNHB4IC8gMTZweCA9ICovXG5cdFx0bGluZS1oZWlnaHQ6IDEuNDU4MzMzMzM7XG5cdFx0LyogMzVweCAvIDI0cHggKi9cblx0fVxufSIsImh0bWwsIFxuYm9keSB7XG5cdGJhY2tncm91bmQ6ICRib2R5LWJnO1xuXHRoZWlnaHQ6IDEwMCU7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG5odG1sLmZyZWV6ZSB7XG5cdG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcbn1cblxuLmZhIHtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAxNHB4LzEgRm9udEF3ZXNvbWU7XG5cdGZvbnQtc2l6ZTogaW5oZXJpdDtcblx0dGV4dC1yZW5kZXJpbmc6IGF1dG87XG5cdC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXHQtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyBNYWtlIHN1cmUgV1AgcmVzcG9uc2l2ZSBpbWFnZXMgd29ya1xuLmVudHJ5LWNvbnRlbnQsICNtYWluIHtcblx0aW1nIHtcblx0XHR3aWR0aDogYXV0bztcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblxuXHRpZnJhbWUsIG9iamVjdCwgZW1iZWQsIGltZyB7XG5cdFx0bWF4LXdpZHRoOiAxMDAlO1xuXHR9XG59IFxuXG4ucGFuZWwge1xuXHRAaW5jbHVkZSBjbGVhcigpO1xuXG5cdC5wYW5lbC1pbm5lciB7XG5cdFx0cGFkZGluZzogMzBweDtcblx0XHRAaW5jbHVkZSBjbGVhcigpO1xuXHR9XG5cblx0LnBhbmVsLXJlYWQtbW9yZSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLXRvcDogMjBweDtcblxuXHRcdHNwYW4sIC5mYSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bGluZS1oZWlnaHQ6IDE7XG5cdFx0fVxuXG5cdFx0LmZhIHtcblx0XHRcdGZvbnQtc2l6ZTogMzBweDtcblx0XHRcdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRcdH1cblx0fVxufVxuXG4ubWV0YS1wb3N0IHtcblx0ZmxvYXQ6IGxlZnQ7IFxuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcblxuXHR1bCB7XG5cdFx0QGluY2x1ZGUgY2xlYXIoKTtcblx0XHRAaW5jbHVkZSBzdGFjaygpO1xuXG5cdFx0bGkge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdG1hcmdpbi1yaWdodDogMjBweDtcblx0XHR9XG5cdH1cblxuXHRzcGFuIHtcblx0XHRtYXJnaW4tcmlnaHQ6IDQwcHg7XG5cdH1cblxuXHRzcGFuLCAmID4gdWwge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG59XG5cbmgyIHtcblx0Jjo6YmVmb3JlIHtcblx0XHRoZWlnaHQ6IDVweDtcblx0XHRiYWNrZ3JvdW5kOiAkb3JhbmdlO1xuXHRcdHdpZHRoOiAxMDBweDtcblx0XHRtYXJnaW46IDAgYXV0byAxMHB4IGF1dG87XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y29udGVudDogJyc7XG5cdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHR9XG5cblx0Ji53aGl0ZV9ib3JkZXIge1xuXHRcdCY6OmJlZm9yZSB7XG5cdFx0XHRoZWlnaHQ6IDVweDtcblx0XHRcdGJhY2tncm91bmQ6ICNmZmY7XG5cdFx0XHR3aWR0aDogMTAwcHg7XG5cdFx0XHRtYXJnaW46IDAgYXV0byAxMHB4IGF1dG87XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdGNvbnRlbnQ6ICcnO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRcdH1cblx0fVxufVxuXG5pbWcge1xuXHRtYXJnaW46IDAgMCAyMHB4IDA7XG5cdGltYWdlLXJlbmRlcmluZzogLXdlYmtpdC1vcHRpbWl6ZS1jb250cmFzdDtcblx0aW1hZ2UtcmVuZGVyaW5nOiBjcmlzcC1lZGdlcztcbn1cblxuaDMge1xuXHRtYXJnaW46IDAgMCAyMHB4IDA7XG59XG5cbmg0LmJvdHRvbV9zcGFjZSB7XG5cdG1hcmdpbjogMCAwIDIwcHggMDtcbn0iLCIucG9zdC1jYXRlZ29yeS1zaW5nbGUge1xuXHR1bCB7XG5cdFx0QGluY2x1ZGUgc3RhY2soKTtcblx0XHRAaW5jbHVkZSBjbGVhcigpO1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cblx0XHRsaSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdG1hcmdpbjowIDAgMjBweCAyMHB4O1xuXG5cdFx0XHQmOmZpcnN0LW9mLXR5cGUge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy9JTUFHRSBcbi5zaW5nbGUtZm9ybWF0LWltYWdlIHtcblx0I2ltYWdlLXdyYXBwZXItc2luZ2xlIHtcblx0XHRiYWNrZ3JvdW5kOiAkZ3JheS1kYXJrO1xuXHR9XG59XG5cbi8vR0FMTEVSWVxuLmxpc3QtZ2FsbGVyeS1zaW5nbGUge1xuXHRiYWNrZ3JvdW5kOiAkZ3JheS1saWdodGVyO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0LmFycm93LXNsaWNrLWdhbGxlcnkge1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogODBweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogOTA7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4zKTtcblx0XHR0b3A6IDA7XG5cdFx0Zm9udC1zaXplOiA0NXB4O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHQuZmEge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRtYXgtaGVpZ2h0OiA0NHB4O1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAtMTAwJTtcblx0XHRcdGJvdHRvbTogLTEwMCU7XG5cdFx0XHRsZWZ0OiAtMTAwJTtcblx0XHRcdHJpZ2h0OiAtMTAwJTtcblx0XHRcdG1hcmdpbjogYXV0bztcblx0XHRcdFxuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNSk7XHRcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stZ2FsLXByZXYge1xuXHRcdHJpZ2h0OiAwO1xuXHR9XG5cblx0LnNsaWNrLWdhbC1uZXh0IHtcblx0XHRsZWZ0OiAwO1xuXHR9XG5cblx0LnNsaWNrLXNsaWRlIHtcblx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0ICAgIGhlaWdodDogNDAwcHg7XG5cdCAgICBwYWRkaW5nOiAxNXB4O1xuXHR9XG5cblx0LnNsaWNrLXNsaWRlOjpiZWZvcmUge1xuXHQgICAgY29udGVudDogJyc7XG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICBoZWlnaHQ6IDEwMCU7XG5cdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cblx0LnNsaWNrLXNsaWRlIGltZyB7XG5cdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgICAgbWF4LWhlaWdodDogMTAwJTtcblx0fVxuXHRcbn1cblxuLnNpbmdsZS1mb3JtYXQtZ2FsbGVyeSB7XG5cdCNnYWxsZXJ5LXdyYXBwZXItc2luZ2xlIHtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHR9XG5cblx0LmdhbGxlcnktcG9zdC13cmFwcGVyIHtcblx0XHRiYWNrZ3JvdW5kOiAkZ3JheS1kYXJrZXI7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR9XG5cblx0LmFycm93LXNsaWNrLWdhbGxlcnkge1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHR3aWR0aDogODBweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0ei1pbmRleDogOTA7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHRcdGJhY2tncm91bmQ6IHJnYmEoMCwwLDAsMC4zKTtcblx0XHR0b3A6IDA7XG5cdFx0Zm9udC1zaXplOiA0NXB4O1xuXHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cblx0XHQuZmEge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRtYXgtaGVpZ2h0OiA0NHB4O1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAtMTAwJTtcblx0XHRcdGJvdHRvbTogLTEwMCU7XG5cdFx0XHRsZWZ0OiAtMTAwJTtcblx0XHRcdHJpZ2h0OiAtMTAwJTtcblx0XHRcdG1hcmdpbjogYXV0bztcblx0XHRcdFxuXHRcdH1cblxuXHRcdCY6aG92ZXIge1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNSk7XHRcblx0XHR9XG5cdH1cblxuXHQuc2xpY2stZ2FsLXByZXYge1xuXHRcdHJpZ2h0OiAwO1xuXHR9XG5cblx0LnNsaWNrLWdhbC1uZXh0IHtcblx0XHRsZWZ0OiAwO1xuXHR9XG5cblx0LnNsaWNrLXNsaWRlIHtcblx0ICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblx0ICAgIGhlaWdodDogNDAwcHg7XG5cdCAgICBwYWRkaW5nOiAxNXB4O1xuXHR9XG5cblx0LnNsaWNrLXNsaWRlOjpiZWZvcmUge1xuXHQgICAgY29udGVudDogJyc7XG5cdCAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdCAgICBoZWlnaHQ6IDEwMCU7XG5cdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cblx0LnNsaWNrLXNsaWRlIGltZyB7XG5cdCAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHQgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHQgICAgbWF4LWhlaWdodDogMTAwJTtcblx0fVxufVxuXG4vL1ZJREVPXG4uc2luZ2xlLWZvcm1hdC12aWRlbyB7XG5cdCN2aWRlby13cmFwcGVyLXNpbmdsZSB7XG5cdFx0YmFja2dyb3VuZDogJHByaW1hcnk7XG5cdH1cbn1cblxuLy9BVURJT1xuLnNpbmdsZS1mb3JtYXQtYXVkaW8ge1xuXHQjYXVkaW8td3JhcHBlciB7XG5cdFx0cGFkZGluZzogMjBweCAwO1xuXHRcdGJhY2tncm91bmQ6IGRhcmtlbigkcHJpbWFyeSwxMCUpO1xuXG5cdFx0YXVkaW8ge1xuXHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblxuXHRcdFx0cCB7XG5cdFx0XHRcdGNvbG9yOiB3aGl0ZTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQud3AtcGxheWxpc3Qge1xuXHRcdGJhY2tncm91bmQ6IGRhcmtlbigkcHJpbWFyeSwxMCUpO1x0XG5cdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyOiBub25lICFpbXBvcnRhbnQ7XG5cblx0XHQud3AtcGxheWxpc3QtY3VycmVudC1pdGVtIHtcblx0XHRcdC53cC1wbGF5bGlzdC1pdGVtLXRpdGxlIHtcblx0XHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtaDQ7XG5cdFx0XHR9XG5cblx0XHRcdC53cC1wbGF5bGlzdC1pdGVtLW1ldGEge1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XHRcblx0XHRcdH1cblx0XHR9XG5cblx0XHQud3AtcGxheWxpc3QtY3VycmVudC1pdGVtIHtcblx0XHRcdEhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuXG5cdFx0XHRpbWcge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdC53cC1wbGF5bGlzdC10cmFja3Mge1xuXG5cdFx0XHQud3AtcGxheWxpc3QtaXRlbSB7XG5cdFx0XHRcdHBhZGRpbmc6IDA7XG5cblx0XHRcdFx0Ji53cC1wbGF5bGlzdC1wbGF5aW5nIHtcblx0XHRcdFx0XHRjb2xvcjogJGNvbnRlbnQ7XG5cblx0XHRcdFx0XHQud3AtcGxheWxpc3QtaXRlbS10aXRsZSwgLndwLXBsYXlsaXN0LWl0ZW0tbGVuZ3RoIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29udGVudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LndwLXBsYXlsaXN0LWNhcHRpb24sIC53cC1wbGF5bGlzdC1pdGVtLWxlbmd0aCB7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0fVxuXG5cdFx0XHQud3AtcGxheWxpc3QtY2FwdGlvbiB7XG5cdFx0XHRcdEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiMTAwJSAtIDEwNHB4XCIpO1x0XG5cdFx0XHR9XG5cblx0XHRcdC53cC1wbGF5bGlzdC1pdGVtLWxlbmd0aCB7XG5cdFx0XHRcdHdpZHRoOiAxMDBweDtcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdFx0XHR9XG5cblx0XHRcdC53cC1wbGF5bGlzdC1pdGVtLXRpdGxlLCAud3AtcGxheWxpc3QtaXRlbS1sZW5ndGgge1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdFx0XHRmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcblx0XHRcdFx0Y29sb3I6IHdoaXRlO1xuXHRcdFx0fVx0XG5cdFx0fVxuXHR9XHRcbn0iLCIuY29tbWVudHMtYXJlYSB7XG5cdG1hcmdpbi10b3A6IDQwcHg7XG59IiwiLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vKiBNYWluIG5hdmlnYXRpb24gY29udGFpbmVyXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qL1xuXG4ubmF2aWdhdGlvbl9iYXJfbWFpbiB7XG5cdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRwYWRkaW5nOiAwICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuXHRtYXgtaGVpZ2h0OiAkbmF2LWhlaWdodC1zbTtcblx0YmFja2dyb3VuZDogJGJyb3duO1xuXHRib3gtc2hhZG93OiAwcHggNXB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC4yKTtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHR6LWluZGV4OiAyMDA7XG5cdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXG5cdCYubmF2LWNvbGxhcHNlIHtcblx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHRtYXgtaGVpZ2h0OiAkbmF2LWhlaWdodC1zbS1jb2xsYXBzZWQ7XG5cdFx0bWFyZ2luOiAwICFpbXBvcnRhbnQ7XG5cdFx0YmFja2dyb3VuZDogJGJyb3duO1xuXHRcdGJveC1zaGFkb3c6IDBweCA1cHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjIpO1xuXHR9XG5cblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0bWF4LWhlaWdodDogJG5hdi1oZWlnaHQtbWQ7XG5cblx0XHQmLm5hdi1jb2xsYXBzZSB7XG5cdFx0XHRtYXgtaGVpZ2h0OiAkbmF2LWhlaWdodC1tZC1jb2xsYXBzZWQ7XG5cdFx0fVxuXHR9XG5cblx0Ji5mbG9hdCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdHotaW5kZXg6IDkwO1xuXHRcdGJveC1zaGFkb3c6IDBweCA1cHggMTBweCAwcHggcmdiYSgwLDAsMCwwLjIpO1xuXHRcdG1pbi1oZWlnaHQ6ICRuYXYtaGVpZ2h0LXNtO1xuXHR9XG5cblx0QG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7IC8vIHJlbW92ZSBwYWRkaW5nIHRvIG1ha2UgbWVudSBlZGdlIHRvIGVkZ2Ugb24gbW9iaWxlXG5cdFx0LnJvdyB7XG5cdFx0XHQmID4gZGl2IHtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQjbmF2aWdhdGlvbi13cmFwcGVyIHtcblx0XHRAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHsgLy8gbWFrZSBtb2JpbGUgbWVudSBmaXhlZCBwb3NpdGlvblxuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0bWluLWhlaWdodDogJG5hdi1oZWlnaHQtc207XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHotaW5kZXg6IDkwO1xuXHRcdFx0bGVmdDogMDtcblx0XHRcdGJhY2tncm91bmQ6ICRicm93bjtcblx0XHR9XG5cdH1cbn1cblxuYm9keS5ob21lIHtcblx0Lm5hdmlnYXRpb25fYmFyX21haW4ge1xuXHRcdG1hcmdpbjogMCAhaW1wb3J0YW50O1xuXHRcdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0XHRib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcblx0XHRtYXgtaGVpZ2h0OiAkbmF2LWhlaWdodC1zbTtcblx0XHRiYWNrZ3JvdW5kOiAkYnJvd247XG5cdFx0Ym94LXNoYWRvdzogbm9uZTtcblx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ei1pbmRleDogMjAwO1xuXHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXG5cdFx0Ji5uYXYtY29sbGFwc2Uge1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRtYXgtaGVpZ2h0OiAkbmF2LWhlaWdodC1zbS1jb2xsYXBzZWQ7XG5cdFx0XHRtYXJnaW46IDAgIWltcG9ydGFudDtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoNDEsIDMxLCAyNCwgMSk7XG5cdFx0XHRib3gtc2hhZG93OiAwcHggNXB4IDEwcHggMHB4IHJnYmEoMCwwLDAsMC4yKTtcblx0XHR9XG5cblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdGJhY2tncm91bmQ6IHJnYmEoNDEsIDMxLCAyNCwgMCk7XG5cdFx0XHRtYXgtaGVpZ2h0OiAkbmF2LWhlaWdodC1tZDtcblxuXHRcdFx0Ji5uYXYtY29sbGFwc2Uge1xuXHRcdFx0XHRtYXgtaGVpZ2h0OiAkbmF2LWhlaWdodC1tZC1jb2xsYXBzZWQ7XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0Ji5mbG9hdCB7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHotaW5kZXg6IDkwO1xuXHRcdFx0Ym94LXNoYWRvdzogMHB4IDVweCAxMHB4IDBweCByZ2JhKDAsMCwwLDAuMik7XG5cdFx0XHRtaW4taGVpZ2h0OiAkbmF2LWhlaWdodC1zbTtcblx0XHR9XG5cblx0XHRAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHsgLy8gcmVtb3ZlIHBhZGRpbmcgdG8gbWFrZSBtZW51IGVkZ2UgdG8gZWRnZSBvbiBtb2JpbGVcblx0XHRcdC5yb3cge1xuXHRcdFx0XHQmID4gZGl2IHtcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0I25hdmlnYXRpb24td3JhcHBlciB7XG5cdFx0XHRAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHsgLy8gbWFrZSBtb2JpbGUgbWVudSBmaXhlZCBwb3NpdGlvblxuXHRcdFx0XHRwb3NpdGlvbjogZml4ZWQ7XG5cdFx0XHRcdG1pbi1oZWlnaHQ6ICRuYXYtaGVpZ2h0LXNtO1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0ei1pbmRleDogOTA7XG5cdFx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICRicm93bjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuYm9keS5sb2dnZWQtaW4ge1xuXHQubmF2aWdhdGlvbl9iYXJfbWFpbiB7XG5cdFx0dG9wOiAzMnB4O1xuXHR9XG5cblx0QG1lZGlhIChtYXgtd2lkdGg6IDc4MnB4KSB7XG5cdFx0Lm5hdmlnYXRpb25fYmFyX21haW4ge1xuXHRcdFx0dG9wOiA0NnB4O1xuXHRcdH1cdFx0XG5cdH1cbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8qIE1vYmlsZSBtZW51IHRvZ2dsZVxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuI25hdmlnYXRpb24tbW9iaWxlX19jb250cm9sIHsgLy8gbm8gbmVlZCBmb3IgbWVkaWEgcXVlcmllcyBoZXJlIGl0IGlzIGhpZGRlbiBmb3IgbGFyZ2VyIHNpemVzIGJ5IGEgYm9vdHN0cmFwIGNsYXNzXHRcblx0ZmxvYXQ6IHJpZ2h0O1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdHBhZGRpbmc6IDI4cHggMjBweCAyMnB4IDIwcHg7XG5cdGNvbG9yOiAkeWVsbG93O1xuXG5cdGkge1xuXHRcdGZvbnQtc2l6ZTogMjVweFxuXHR9XG59XG5cblxuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vKiBIZWFkZXIgbG9nb1xuLyotLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tKi9cblxuLmxvZ28ge1x0XG5cdEBpbmNsdWRlIGNsZWFyKCk7XG5cdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXG5cdEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdHBhZGRpbmctbGVmdDogMjBweDtcblx0XHRoZWlnaHQ6ICRuYXYtaGVpZ2h0LXNtO1xuXHRcdGxpbmUtaGVpZ2h0OiAkbmF2LWhlaWdodC1zbTtcblx0fVxuXHRcblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0d2lkdGg6ICRsb2dvLXdpZHRoO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRtaW4taGVpZ2h0OiAkbmF2LWhlaWdodC1zbTtcblx0XHRsaW5lLWhlaWdodDogJG5hdi1oZWlnaHQtbWQ7XG5cdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0fVxufVxuXG4ubG9nbyBpbWcge1xuXHRoZWlnaHQ6ICRpbWctaGVpZ2h0LXNtO1xuXHR3aWR0aDogYXV0bztcblx0bWFyZ2luOiAxN3B4IGF1dG8gMCBhdXRvO1xuXHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XG5cdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRcdGhlaWdodDogJGltZy1oZWlnaHQtbWQ7XG5cdFx0bWFyZ2luOiAyNHB4IGF1dG8gMCBhdXRvO1xuXHR9XG59XG5cbm5hdi5uYXYtY29sbGFwc2Uge1xuXHQubG9nbyB7XG5cdFx0QG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG5cdFx0XHRoZWlnaHQ6ICRuYXYtaGVpZ2h0LXNtLWNvbGxhcHNlZDtcblx0XHRcdGxpbmUtaGVpZ2h0OiAkbmF2LWhlaWdodC1zbS1jb2xsYXBzZWQ7XG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHR9XG5cblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdG1pbi1oZWlnaHQ6ICRuYXYtaGVpZ2h0LXNtO1x0XG5cdFx0XHRsaW5lLWhlaWdodDogJG5hdi1oZWlnaHQtbWQtY29sbGFwc2VkO1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0fVxuXG5cdFx0aW1nIHtcblx0XHRcdGhlaWdodDogJGltZy1oZWlnaHQtc20tY29sbGFwc2VkO1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRtYXJnaW46IDI0cHggYXV0byAwIGF1dG87XG5cblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRcdFx0XHRoZWlnaHQ6ICRpbWctaGVpZ2h0LW1kLWNvbGxhcHNlZDtcblx0XHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRcdG1hcmdpbjogMjFweCBhdXRvIDAgYXV0bztcblx0XHRcdH1cblx0XHR9XHRcblx0fVxufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLyogTW9iaWxlIGJhY2tkcm9wXG4vKiBUaGUgb3ZlcmxheSB0aGF0IGNvdmVycyB0aGUgY29udGVudCB3aGVuIHRoZSBtb2JpbGUgbWVudSBpcyBvcGVuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBcblxuLm5hdmlnYXRpb25fX21vYmlsZS0tYmFja2Ryb3Age1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHotaW5kZXg6IDkwMDA7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgYmFja2dyb3VuZDogcmdiYSgwLDAsMCwuNyk7XG4gICAgQGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cbiAgICAmLm9wZW4geyAvLyBvcGVuIHN0YXRlXG5cdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0b3BhY2l0eTogMTtcblx0fVxufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLyogTW9iaWxlIG1lbnVcbi8qIFRoZSBjb250YWluZXIgdGhhdCBob2xkcyB0aGUgbW9iaWxlIG1lbnVcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIFxuXG4jbmF2aWdhdGlvbi1tb2JpbGUge1xuXHRiYWNrZ3JvdW5kOiAkc2Vjb25kYXJ5O1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGxlZnQ6IC0xMDAlO1xuXHR0b3A6IDA7XG5cdHdpZHRoOiAxMDAlO1xuXHR6LWluZGV4OiA5OTk5O1xuXHRoZWlnaHQ6IDEwMCU7XG5cdG92ZXJmbG93LXk6IHNjcm9sbDtcblx0b3ZlcmZsb3cteDogaGlkZGVuO1xuXHRib3gtc2hhZG93OiAwcHggNXB4IDEwcHggMHB4IHJnYmEoMCwwLDAsLjIpO1xuXHRib3JkZXItcmlnaHQ6IDFweCBzb2xpZCByZ2JhKDAsMCwwLC4yKTtcblx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cblx0Ji5vcGVuIHsgLy8gb3BlbiBzdGF0ZVxuXHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRcdGxlZnQ6IDA7XG5cdH1cblx0XG5cdEBpbmNsdWRlIGNhbGMod2lkdGgsIFwiMTAwJSAtIDYzcHhcIik7IC8vbWFrZSB0aGUgbWVudSB1c2UgdGhlIGZ1bGwgc2NyZWVuLCBidXQgbGVhdmUgYSBnYXAgZm9yIGNvbnRlbnQgdG8gc2hvd1xuXHRtYXgtd2lkdGg6IDQwMHB4OyAvLyBsaW1pdCB3aWR0aCBzbyBtZW51IGRvZXMgbm90IGJlY29tZSBzdHVwaWRseSB3aWRlIG9uIHRhYmxldHNcbn1cblxuLy8gQWRqdXN0IG1vYmlsZSBuYXYgdG9wIGFuZCBoZWlnaHQgdG8gYWNjb3VudCBmb3IgV29yZHByZXNzIGJhciB3aGVuIGl0IGlzIHZpc2libGVcbi5hZG1pbi1iYXIgI25hdmlnYXRpb24tbW9iaWxlIHtcblx0dG9wOiA0NnB4ICFpbXBvcnRhbnQ7XG5cdGhlaWdodDogY2FsYygxMDAlIC0gNDZweCkgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzgzcHgpIHtcblx0LmFkbWluLWJhciAjbmF2aWdhdGlvbi1tb2JpbGUge1xuXHRcdHRvcDogMzJweCAhaW1wb3J0YW50O1xuXHRcdGhlaWdodDogY2FsYygxMDAlIC0gMzJweCkgIWltcG9ydGFudDtcblx0fVxufVxuXG5cbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLyogVUwgdGhhdCBob2xkcyBtZW51IGl0ZW1zXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0qLyBcblxuI21lbnUtbWFpbiB7IC8vIFRoaXMgaXMgaW5zaWRlIC5tZW51LXByaW1hcnlfX3dyYXBwZXJcblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0Ly8gbW92ZSB0aGUgbWVudSB0byB0aGUgcmlnaHQgZm9yIGRlc2t0b3AgYnV0IGtlZXAgdGhlIGNvbnRlbnQgZmxvYXRlZCBsZWZ0LiBUaGF0IGtlZXBzIHRoZSBjb3JyZWN0IG9yZGVyIGZvciBMSXMgd2hpbGUgc3RpbGwgcHV0dGluZyB0aGUgbWVudSBvbiB0aGUgcmlnaHRcblx0XHRmbG9hdDogcmlnaHQ7XG5cdH1cbn1cblxuXG4vKi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi8qIFRoZSBtYWluIG1lbnVcbi8qLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLSovIFxuXG4ubWVudS1wcmltYXJ5X193cmFwcGVyIHtcblx0QGluY2x1ZGUgY2xlYXIoKTtcblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0dHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDsgLy8gdG8gbWFrZSBzdXJlIHZlcnRpY2FsbHkgY2VudHJlZCBlbGVtZW50cyBhcmUgbm90IGJsdXJyeSB3aGVuIHRoZXkgbGFuZCBvbiBmcmFjdGlvbmFsIHBpeGVsc1xuXHRcdHdpZHRoOiBjYWxjKDEwMCUgLSAjeyRsb2dvLXdpZHRofSk7IC8vbWFrZSBpdCB0YWtlIGFsbCB0aGUgc3BhY2UgZXhjZXB0IHRoZSBsb2dvIHdpZHRoLiBOb3RlIHRoZSAjLiBUaGlzIGlzIGhvdyB0byBtYWtlIFNBU1MgdXNlIHRoZSB2YWx1ZSBvZiB0aGUgdmFyaWFibGUgYW5kIG5vdCB0cnkgdG8gZG8gaXRzIG93biBjYWxjdWxhdGlvblxuXHRcdGZsb2F0OiByaWdodDtcblx0XHRoZWlnaHQ6ICRuYXYtaGVpZ2h0LW1kO1xuXHR9XG5cblx0Ly8vLyBhbGwgVUxzIGluIG5hdlxuXHR1bCB7IFxuXHRcdEBpbmNsdWRlIHN0YWNrKCk7XG5cdFx0QGluY2x1ZGUgY2xlYXIoKTtcblxuXHRcdGxpIHtcblxuXHRcdFx0Ji5saV9idG4ge1xuXHRcdFx0XHRtYXJnaW46IDIwcHggMCAwIDA7XG5cdFx0XHRcdHBhZGRpbmc6IDAgMjBweDtcblx0XHQgICAgfVxuXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdFx0bWFyZ2luOiAwIDE1cHg7XG5cdFx0XHQgICAgZGlzcGxheTogdGFibGU7XG5cdFx0XHQgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdCAgICBoZWlnaHQ6ICRuYXYtaGVpZ2h0LW1kO1xuXG5cdFx0XHQgICAgJi5saV9idG4ge1xuXHRcdFx0ICAgIFx0bWFyZ2luOiAwO1xuXHRcdFx0ICAgIH1cblx0XHRcdH0gICBcblxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG5cdFx0ICAgIFx0bWFyZ2luOiAwIDMwcHg7XG5cdFx0ICAgIH0gXG5cblx0XHRcdGEge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0cGFkZGluZzogMjBweCAzMHB4O1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHRcblxuXHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdFx0XHRjb2xvcjogJHllbGxvdztcblx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG5cdFx0XHRcdFx0Y29sb3I6ICR5ZWxsb3c7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvLy8vIHRvcCBsZXZlbCBtYW51XG5cdCYgPiB1bCB7XG5cdFx0Ly8gY2VudHJlIG1lbnUgdmVydGljYWxseS4gd2lsbCBvbmx5IHdvcmsgaWYgdGhlIG5hdiBoYXMgYSBoZWlnaHRcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcdFxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdCAgXHR0b3A6IDUwJTtcblx0XHQgIFx0dHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXHRcdCAgXHRoZWlnaHQ6ICRuYXYtaGVpZ2h0LW1kO1xuXHRcdCAgXHRmbG9hdDogcmlnaHQ7XG5cdFx0fVxuXHRcdFxuXHRcdC8vLy8gZHJvcCBkb3duc1xuXHRcdHVsIHtcdFxuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0bWF4LWhlaWdodDogMDsgLy8gbWF4IGhlaWdodCBpcyB1c2VkIHRvIGNvbnRyb2wgZGlzcGxheSBvZiBtb2JpbGUgc3ViLW1lbnVzLiBTZXQgdG8gMCBmb3IgY2xvc2VkIHN0YXRlXG5cdFx0XHRcdG92ZXJmbG93OiBoaWRkZW47XG5cblx0XHRcdFx0Ji5hY3RpdmUge1xuXHRcdFx0XHRcdG1heC1oZWlnaHQ6IDk5OXB4OyAvLyBzZXQgbWF4IGhlaWdodCB0byBhIGhpZ2ggbnVtYmVydG8gb3BlbiBtZW51LiBOb3RlOiBUaGlzIHdpbGwgY3V0IG9mZiBtZW51cyBsb25nZXIgdGhhbiA5OTlweFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiB3aGl0ZTtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHR0b3A6IDA7XG5cdFx0XHRcdGxlZnQ6IDI1MHB4O1xuXHRcdFx0XHR3aWR0aDogMjUwcHg7XG5cdFx0XHRcdHotaW5kZXg6IDEwMDtcblx0XHRcdH1cblxuXHRcdFx0bGkge1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0ZmxvYXQ6IG5vbmU7XG5cdFx0XHR9XG5cblx0XHRcdGEge1xuXHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdFx0XHRib3JkZXItdG9wOiAxcHggc29saWQgbGlnaHRlbigkc2Vjb25kYXJ5LDcwJSk7XG5cblx0XHRcdFx0XHQmOmhvdmVyLFxuXHRcdFx0XHRcdCYuaG92ZXIge1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XHRcdFxuXHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHQvLy8vIG1haW4gbWVudSBtZW51IGl0ZW1zXG5cdFx0JiA+IGxpIHtcblx0XHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRcdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdFx0XHRhIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRvcmFuZ2U7XG5cdFx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBub25lO1xuXHRcdFx0XHRcdFx0cGFkZGluZzogNnB4IDAgMCAwO1xuXHRcdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cblx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Ji5saV9idG4ge1xuXHRcdFx0XHRcdFx0YSB7XG5cdFx0XHRcdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVx0XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdCY+IGEge1xuXHRcdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHRcdFx0Ly8vLyBkcm9wZG93biBpbmRpY2F0b3IgZm9yIG1haW4gbWVudSBpdGVtc1xuXHRcdFx0XHQmLmRyb3Bkb3duLXRvZ2dsZSB7XG5cdFx0XHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiBcIlxcZjEwN1wiOyAvL2Rvd24gYXJyb3dcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdCAgICBcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHQgICAgXHRcdFx0cGFkZGluZy10b3A6IDZweDtcblxuXHQgICAgXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdFx0XHRjb250ZW50OiAnJztcblx0XHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdFx0d2lkdGg6IDA7XG5cdFx0XHRcdFx0XHRoZWlnaHQ6IDRweDtcdFx0XG5cdFx0XHRcdFx0XHRtYXJnaW46IDJweCBhdXRvIDA7XG5cdFx0XHRcdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0XHRcdFx0YmFja2dyb3VuZDogJG9yYW5nZTtcblx0XHRcdFx0XHQgICAgQGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0Jjpob3ZlciwgLy8gaG92ZXIgc3RhdGUgZm9yIG1haW4gbWVudSBpdGVtc1xuXHRcdFx0XHRcdCYuaG92ZXIgeyAvLyAuaG92ZXIgaXMgYWRkZWQgYnkgLmpzIHdoZW4geW91IGFyZSBvbiB0aGUgY2hpbGQgbWVudVxuXHRcdFx0XHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRcdFx0XHRwYWRkaW5nLXRvcDogNnB4O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXG5cdFx0JiA+IGxpLmxpX2J0biA+IGEge1xuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRcdCY6YWZ0ZXIge1xuXHRcdFx0XHRcdGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdCY6aG92ZXIsIC8vIGhvdmVyIHN0YXRlIGZvciBtYWluIG1lbnUgaXRlbXNcblx0XHRcdFx0Ji5ob3ZlciB7IC8vIC5ob3ZlciBpcyBhZGRlZCBieSAuanMgd2hlbiB5b3UgYXJlIG9uIHRoZSBjaGlsZCBtZW51XG5cdFx0XHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cblx0fVxuXG5cdC8vLy8gYWxsIG1lbnUgaXRlbXNcblx0bGkge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcblx0XHRcdC8vIHNob3cgY2hpbGQgbWVudSBvbiBob3ZlclxuXHRcdFx0Jjpob3ZlciB7XG5cdFx0XHRcdCYgPiB1bCB7XG5cdFx0XHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdC8vLy8gYWxsIG1lbnUgaXRlbXNcblx0YSB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG5cdFx0Zm9udC1zaXplOiAxLjA2cmVtO1xuXHRcdGNvbG9yOiAkeWVsbG93O1xuXG5cdFx0Ly8gYWRkIGEgYm90dG9tIGJvcmRlciB0byBkaXZpZGUgbWVudSBpdGVtcyBvbiBtb2JpbGVcblx0XHRAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHsgXG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgcmdiYSgyNTUsMjU1LDI1NSwuMSk7XG5cdFx0fVxuXHR9XG5cblx0Ly8vLyBjdXJyZW50IHBhZ2UgaW5kaWNhdG9yXG5cdGxpIHtcblx0XHRhLmN1cnJlbnQge1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRjb2xvcjogJG9yYW5nZTtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0XHRmb250LXdlaWdodDogYm9sZDtcblxuXHRcdFx0JjphZnRlciB7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdFx0cGFkZGluZzogNnB4IDAgMCAwO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vLy8gcGFyZW50cyBvZiBjdXJyZW50IHBhZ2Vcblx0bGkuY3VycmVudF9wYWdlX3BhcmVudCA+IGEsXG5cdGxpLmN1cnJlbnQtbWVudS1wYXJlbnQgPiBhIHtcblx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcblx0XHRjb2xvcjogd2hpdGU7XG5cdH1cblxuXHQvLyBQb3N0aW9uIGZpcnN0IGxldmVsIGRyb3Bkb3dzIGF0IGJvdHRvbSBvZiBwYXJlbnRzIGZvciBtZWRpdW0gZGV2aWNlcyBhbmQgdXBcblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0Lm1lbnUtZGVwdGgtMSB7XG5cdFx0XHR0b3A6IDEwMCU7XG5cdFx0XHRsZWZ0OiAwO1xuXHRcdH1cblx0fVxuXHRcblx0Ly8gQmFja2dyb3VuZCBjb2xvdXJzIGZvciBtb2JpbGUgbWVudSBcblx0QG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG5cdFx0Lm1lbnUtZGVwdGgtMSB7IC8vIG1haW5cblx0XHRcdGJhY2tncm91bmQ6IGRhcmtlbigkc2Vjb25kYXJ5LDYlKTtcblx0XHR9XG5cblx0XHQubWVudS1kZXB0aC0yIHtcblx0XHRcdGJhY2tncm91bmQ6IGRhcmtlbigkc2Vjb25kYXJ5LDMwJSk7XHRcblx0XHR9XG5cdH1cblxuXHQvLy8vIGluZGljYXRvcnMgZm9yIGRyb3Bkb3duIG1lbnVzXG5cdC5kcm9wZG93bi10b2dnbGUge1xuXHRcdCY6YWZ0ZXIge1xuXHRcdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuXHRcdFx0Zm9udC1zdHlsZTogbm9ybWFsO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IG5vcm1hbDtcblx0XHRcdHRleHQtZGVjb3JhdGlvbjogaW5oZXJpdDtcblxuXHRcdFx0Zm9udC1zaXplOiAxOHB4O1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0QGluY2x1ZGUgY2FsYyh0b3AsIFwiNzAlIC0gMjVweFwiKTtcdFxuXHRcdFx0cmlnaHQ6IDEycHg7XG5cblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkgeyBcblx0XHRcdFx0Y29udGVudDogXCJcXGYxMDdcIjsgLy8gbGVmdCBhcnJvd3MgZm9yIGxhcmdlIHNjcmVlbnNcblx0XHRcdH1cblxuXHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMTA1XCI7IC8vIGRvd24gYXJyb3dzIGZvciBtb2JpbGVcblx0XHRcdH1cblx0XHR9XG5cblx0XHQvLyBmbGlwIHRoZSBhcnJvdyBmb3Igb3BlbiBtb2JpbGUgbWVudXNcblx0XHQmLmFjdGl2ZSB7XG5cdFx0XHQmOmFmdGVyIHtcblx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7IFxuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMTA2XCI7IC8vdXAgYXJyb3dcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG5uYXYubmF2LWNvbGxhcHNlIHtcblx0Lm1lbnUtcHJpbWFyeV9fd3JhcHBlciB7XG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRoZWlnaHQ6ICRuYXYtaGVpZ2h0LW1kLWNvbGxhcHNlZDtcblx0XHR9XG5cblx0XHR1bCB7XG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdFx0aGVpZ2h0OiAkbmF2LWhlaWdodC1tZC1jb2xsYXBzZWQ7XG5cdFx0XHR9XG5cdFx0XHRcblx0XHRcdGxpIHtcblx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRcdFx0aGVpZ2h0OiAkbmF2LWhlaWdodC1tZC1jb2xsYXBzZWQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cdFxufSIsIiNiYWNrLXRvLXRvcCB7XG5cdHBvc2l0aW9uOiBmaXhlZDtcblx0ei1pbmRleDogOTk5OTtcblx0YmFja2dyb3VuZDogJHByaW1hcnk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRib3JkZXItcmFkaXVzOiA1MCU7XG5cdHdpZHRoOiA0NHB4O1xuXHRoZWlnaHQ6IDQ0cHg7XG5cdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0b3BhY2l0eTogMDtcblx0dHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcblx0Ym94LXNoYWRvdzogMCAxMHB4IDEwcHggcmdiYSgwLCAwLCAwLCAwLjA1KSwgMCA1cHggNXB4IHJnYmEoMCwgMCwgMCwgMC4wNSk7XG5cdGJvdHRvbTogMTVweDtcblx0cmlnaHQ6IDE1cHg7XG5cblx0Ji5hY3RpdmUge1xuXHRcdG9wYWNpdHk6IDE7XG5cdFx0dHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcblx0XHR2aXNpYmlsaXR5OiB2aXNpYmxlO1xuXHR9XG5cblx0LmZhIHtcblx0XHRwYWRkaW5nOiA1cHggMDtcblx0XHRjb2xvcjogd2hpdGU7XG5cdFx0Zm9udC1zaXplOiAzMHB4O1xuXHR9XG5cblx0Jjpob3ZlciB7XG5cdFx0dHJhbnNpdGlvbjogYWxsIC4ycyBlYXNlLWluLW91dDtcblx0XHRiYWNrZ3JvdW5kOiBkYXJrZW4oJHByaW1hcnksMTAlKTtcblx0fVxufVxuXG4vLyBTY2FsZSB1cCBjb250cm9scyBmb3IgdGFibGV0cyBhbmQgdXBcbkBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cdCNiYWNrLXRvLXRvcCB7XG5cdFx0d2lkdGg6IDYwcHg7XG5cdFx0aGVpZ2h0OiA2MHB4O1xuXHRcdGJvdHRvbTogMzBweDtcblx0XHRyaWdodDogMzBweDtcblxuXHRcdC5mYSB7XG5cdFx0XHRmb250LXNpemU6IDQ1cHg7XG5cdFx0fVxuXHR9XG59IiwiLndwLXBhZ2luYXRlIHtcblxuXHQuZmEge1xuXHRcdGZvbnQtc2l6ZTogMTlweDtcbiAgICBcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG5cblx0Lm5leHQsIC5wcmV2aW91cyB7XG5cdFx0cGFkZGluZy10b3A6IDhweCAhaW1wb3J0YW50O1xuXHR9XG5cblx0YSwgc3BhbiB7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdEBpbmNsdWRlIGNsZWFyKCk7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRiYWNrZ3JvdW5kOiB3aGl0ZSAhaW1wb3J0YW50O1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0LXdlYmtpdC1ib3JkZXItcmFkaXVzOiA1cHg7XG5cdFx0LW1vei1ib3JkZXItcmFkaXVzOiA1cHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRcdG1hcmdpbi1yaWdodDogMjBweDtcdFxuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR3aWR0aDogNDBweDtcblx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0cGFkZGluZy10b3A6IDdweCAhaW1wb3J0YW50O1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXIgIWltcG9ydGFudDtcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdGNvbG9yOiAkYm9yZGVyO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRwYWRkaW5nOiA5cHggMCAxMHB4IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdC5jdXJyZW50LCBhOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeSAhaW1wb3J0YW50O1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRwcmltYXJ5ICFpbXBvcnRhbnQ7XG5cdFx0Y29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG5cdH1cblxuXHRsaSB7XG5cdFx0JjpmaXJzdC1vZi10eXBlIHtcblx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0fVxuXG5cdFx0bWFyZ2luLXJpZ2h0OiAxNXB4O1xuXHR9XG59IiwiI2xvYWRpbmctcGFuZSB7XG5cdHdpZHRoOiAxMDB2dztcblx0aGVpZ2h0OiAxMDB2aDtcblx0cG9zaXRpb246IGZpeGVkO1xuXHR0b3A6IDA7XG5cdGxlZnQ6IDA7XG5cdHotaW5kZXg6IDk5OTk7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblxuXHQuaW5uZXItd3JhcHBlciB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGRpc3BsYXk6IHRhYmxlO1xuXG5cdFx0LmlubmVyLXdyYXBwZXItYWxpZ24ge1xuXHRcdFx0ZGlzcGxheTogdGFibGUtY2VsbDtcblx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHRcblx0XHR9XG5cblx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHRcdG9wYWNpdHk6IDA7XG5cdFx0XHR2aXNpYmlsaXR5OiBoaWRkZW47XHRcblx0XHR9XG5cdH1cblxuXHQmLmZhZGUtaW4ge1xuXHRcdCYuYWN0aXZlIHtcblx0XHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRcdFx0b3BhY2l0eTogMDtcblx0XHRcdHZpc2liaWxpdHk6IGhpZGRlbjtcblx0XHR9XG5cdH1cblxuXHQmLnNsaWRlLXVwIHtcblx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHRcdHRvcDogLTE1MCU7XG5cdFx0fVxuXHR9XG5cblx0Ji5zbGlkZS1kb3duIHtcblx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHRcdHRvcDogMTAwJTtcblx0XHR9XG5cdH1cblxuXHQmLnNsaWRlLWxlZnQge1x0XG5cdFx0Ji5hY3RpdmUge1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRsZWZ0OiAtMTUwJTtcblx0XHR9XG5cdH1cblxuXHQmLnNsaWRlLXJpZ2h0IHtcblx0XHQmLmFjdGl2ZSB7XG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHRcdGxlZnQ6IDEwMCU7XG5cdFx0fVxuXHR9XG59XG5cbi5sb2FkaW5nLXRleHQge1xuXHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdGNvbG9yOiB3aGl0ZTtcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdHdpZHRoOiAxMDAlO1xufVxuXG4vLy8vLy8vL1NQSU5ORVJTXG4uc3Bpbm5lciB7XG5cdCYuYmFycyB7XG5cdFx0d2lkdGg6IDUwcHg7XG5cdFx0aGVpZ2h0OiA0MHB4O1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdGZvbnQtc2l6ZTogMTBweDtcblxuXHRcdCYgPiBkaXYge1xuXHRcdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdFx0d2lkdGg6IDdweDtcblx0XHRcdG1hcmdpbjogMCAzcHggMCAwO1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuXHRcdFx0LXdlYmtpdC1hbmltYXRpb246IHNrLXN0cmV0Y2hkZWxheSAxLjJzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuXHRcdFx0YW5pbWF0aW9uOiBzay1zdHJldGNoZGVsYXkgMS4ycyBpbmZpbml0ZSBlYXNlLWluLW91dDtcblx0XHR9XG5cblx0XHQucmVjdDIge1xuXHRcdCAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjFzO1xuXHRcdCAgYW5pbWF0aW9uLWRlbGF5OiAtMS4xcztcblx0XHR9XG5cblx0XHQucmVjdDMge1xuXHRcdCAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0xLjBzO1xuXHRcdCAgYW5pbWF0aW9uLWRlbGF5OiAtMS4wcztcblx0XHR9XG5cblx0XHQucmVjdDQge1xuXHRcdCAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjlzO1xuXHRcdCAgYW5pbWF0aW9uLWRlbGF5OiAtMC45cztcblx0XHR9XG5cblx0XHQucmVjdDUge1xuXHRcdCAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjhzO1xuXHRcdCAgYW5pbWF0aW9uLWRlbGF5OiAtMC44cztcblx0XHR9XG5cdH1cblxuXHQmLmN1YmVzIHtcblx0XHR3aWR0aDogNDBweDtcblx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXG5cdFx0LmN1YmUxLCAuY3ViZTIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cdFx0XHR3aWR0aDogMTVweDtcblx0XHRcdGhlaWdodDogMTVweDtcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cblx0XHRcdC13ZWJraXQtYW5pbWF0aW9uOiBzay1jdWJlbW92ZSAxLjhzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuXHRcdFx0YW5pbWF0aW9uOiBzay1jdWJlbW92ZSAxLjhzIGluZmluaXRlIGVhc2UtaW4tb3V0O1xuXHRcdH1cblxuXHRcdC5jdWJlMiB7XG5cdFx0ICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTAuOXM7XG5cdFx0ICBhbmltYXRpb24tZGVsYXk6IC0wLjlzO1xuXHRcdH1cblx0fVxuXG5cdCYuZG90cyB7XG5cdFx0d2lkdGg6IDcwcHg7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1x0XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cblx0XHQmID4gZGl2IHtcblx0XHRcdHdpZHRoOiAxOHB4O1xuXHRcdFx0aGVpZ2h0OiAxOHB4O1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG5cblx0XHRcdGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHQtd2Via2l0LWFuaW1hdGlvbjogc2stYm91bmNlZGVsYXkgMS40cyBpbmZpbml0ZSBlYXNlLWluLW91dCBib3RoO1xuXHRcdFx0YW5pbWF0aW9uOiBzay1ib3VuY2VkZWxheSAxLjRzIGluZmluaXRlIGVhc2UtaW4tb3V0IGJvdGg7XG5cdFx0fVxuXG5cdFx0LmJvdW5jZTEge1xuXHRcdFx0LXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC0wLjMycztcblx0XHRcdGFuaW1hdGlvbi1kZWxheTogLTAuMzJzO1xuXHRcdH1cblxuXHRcdC5ib3VuY2UyIHtcblx0XHRcdC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMC4xNnM7XG5cdFx0XHRhbmltYXRpb24tZGVsYXk6IC0wLjE2cztcblx0XHR9XG5cdH1cblxuXHRtYXJnaW4tYm90dG9tOiAyMHB4ICFpbXBvcnRhbnQ7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1ib3VuY2VkZWxheSB7XG4gIDAlLCA4MCUsIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMCkgfVxuICA0MCUgeyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4wKSB9XG59XG5cbkBrZXlmcmFtZXMgc2stYm91bmNlZGVsYXkge1xuICAwJSwgODAlLCAxMDAlIHsgXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDApO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMCk7XG4gIH0gNDAlIHsgXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEuMCk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjApO1xuICB9XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBzay1zdHJldGNoZGVsYXkge1xuICAwJSwgNDAlLCAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlWSgwLjQpIH0gIFxuICAyMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEuMCkgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLXN0cmV0Y2hkZWxheSB7XG4gIDAlLCA0MCUsIDEwMCUgeyBcbiAgICB0cmFuc2Zvcm06IHNjYWxlWSgwLjQpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoMC40KTtcbiAgfSAgMjAlIHsgXG4gICAgdHJhbnNmb3JtOiBzY2FsZVkoMS4wKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGVZKDEuMCk7XG4gIH1cbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIHNrLWN1YmVtb3ZlIHtcbiAgMjUlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDJweCkgcm90YXRlKC05MGRlZykgc2NhbGUoMC41KSB9XG4gIDUwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQycHgpIHRyYW5zbGF0ZVkoNDJweCkgcm90YXRlKC0xODBkZWcpIH1cbiAgNzUlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSB0cmFuc2xhdGVZKDQycHgpIHJvdGF0ZSgtMjcwZGVnKSBzY2FsZSgwLjUpIH1cbiAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZykgfVxufVxuXG5Aa2V5ZnJhbWVzIHNrLWN1YmVtb3ZlIHtcbiAgMjUlIHsgXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDQycHgpIHJvdGF0ZSgtOTBkZWcpIHNjYWxlKDAuNSk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDJweCkgcm90YXRlKC05MGRlZykgc2NhbGUoMC41KTtcbiAgfSA1MCUgeyBcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDJweCkgdHJhbnNsYXRlWSg0MnB4KSByb3RhdGUoLTE3OWRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDJweCkgdHJhbnNsYXRlWSg0MnB4KSByb3RhdGUoLTE3OWRlZyk7XG4gIH0gNTAuMSUgeyBcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDJweCkgdHJhbnNsYXRlWSg0MnB4KSByb3RhdGUoLTE4MGRlZyk7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNDJweCkgdHJhbnNsYXRlWSg0MnB4KSByb3RhdGUoLTE4MGRlZyk7XG4gIH0gNzUlIHsgXG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgdHJhbnNsYXRlWSg0MnB4KSByb3RhdGUoLTI3MGRlZykgc2NhbGUoMC41KTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHRyYW5zbGF0ZVkoNDJweCkgcm90YXRlKC0yNzBkZWcpIHNjYWxlKDAuNSk7XG4gIH0gMTAwJSB7IFxuICAgIHRyYW5zZm9ybTogcm90YXRlKC0zNjBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTM2MGRlZyk7XG4gIH1cbn1cblxuXG4jcHJvZ3Jlc3Mge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDIxNDc0ODM2NDc7XG4gIGxlZnQ6IDBweDtcbiAgd2lkdGg6IDAlO1xuICBoZWlnaHQ6IDJweDtcblxuICAtbW96LXRyYW5zaXRpb246IHdpZHRoIDUwMG1zIGVhc2Utb3V0LCBvcGFjaXR5IDQwMG1zIGxpbmVhcjtcbiAgLW1zLXRyYW5zaXRpb246IHdpZHRoIDUwMG1zIGVhc2Utb3V0LCBvcGFjaXR5IDQwMG1zIGxpbmVhcjtcbiAgLW8tdHJhbnNpdGlvbjogd2lkdGggNTAwbXMgZWFzZS1vdXQsIG9wYWNpdHkgNDAwbXMgbGluZWFyO1xuICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIDUwMG1zIGVhc2Utb3V0LCBvcGFjaXR5IDQwMG1zIGxpbmVhcjtcbiAgdHJhbnNpdGlvbjogd2lkdGggNTAwbXMgZWFzZS1vdXQsIG9wYWNpdHkgNDAwbXMgbGluZWFyO1xuXG5cdCYuYm90dG9tIHtcblx0XHRib3R0b206IDA7XG5cdH1cblxuXHQmLnRvcCB7XG5cdFx0dG9wOiAwO1x0XG5cdH1cblxuXHRkZCwgZHQge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHR0b3A6IDA7XG5cdFx0aGVpZ2h0OiAycHg7XG5cdH1cblxuXHRkdCB7XG5cdFx0b3BhY2l0eTogLjY7XG5cdFx0d2lkdGg6IDE4MHB4O1xuXHRcdHJpZ2h0OiAtODBweDtcblx0XHRjbGlwOiByZWN0KC02cHgsIDkwcHgsIDE0cHgsIC02cHgpO1xuXHR9XG5cblx0ZGQge1xuXHRcdG9wYWNpdHk6IC42O1xuXHRcdHdpZHRoOiAyMHB4O1xuXHRcdHJpZ2h0OiAwO1xuXHRcdGNsaXA6IHJlY3QoLTZweCwgMjJweCwgMTRweCwgMTBweCk7XG5cdH1cblxufVxuXG4iLCIubWZwLW1vdmUtaG9yaXpvbnRhbCB7XG5cbiAgLm1mcC13aXRoLWFuaW0ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01MHB4KTtcbiAgfVxuICBcbiAgJi5tZnAtYmcge1xuICAgIG9wYWNpdHk6IDA7XG5cdCAgdHJhbnNpdGlvbjogYWxsIDAuM3M7XG4gIH1cbiAgXG4gICYubWZwLXJlYWR5IHtcbiAgICAubWZwLXdpdGgtYW5pbSB7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cblxuICAgICYubWZwLWJnIHtcbiAgICAgIG9wYWNpdHk6IDAuODtcbiAgICB9XG4gIH1cbiAgXG4gICYubWZwLXJlbW92aW5nIHtcbiAgICBcbiAgICAubWZwLXdpdGgtYW5pbSB7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNTBweCk7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cblxuICAgICYubWZwLWJnIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICB9XG59XG5cbi5tZnAtYm90dG9tLWJhciB7XG4gIHBhZGRpbmctdG9wOiAxMHB4O1xufVxuXG4ubWZwLWZpZ3VyZSwgLm1wZi1pZnJhbWUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ubWZwLWNvdW50ZXIge1xuICB0b3A6IDEwcHg7XG59XG5cbi5tZnAtb3BlbiAubWZwLWZpZ3VyZSwgLm1mcC1vcGVuIC5tZnAtaWZyYW1lIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBpbWdmYWRlSW47XG4gICAgLW1vei1hbmltYXRpb24tbmFtZTogaW1nZmFkZUluO1xuICAgIC1vLWFuaW1hdGlvbi1uYW1lOiBpbWdmYWRlSW47XG4gICAgYW5pbWF0aW9uLW5hbWU6IGltZ2ZhZGVJbjtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbiAgICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbiAgICAtbXMtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjRzO1xuICAgIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogMC40cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuNHM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAtbXMtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICAtby1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gICAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiAgICBoaWRkZW47XG4gICAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6ICAgICBoaWRkZW47XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBpbWdmYWRlSW4ge1xuICAgIDAlIHtvcGFjaXR5OiAwOyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MHB4LDAsMCk7fVxuICAgIDEwMCUge29wYWNpdHk6IDE7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO31cbn1cblxuQC1tb3ota2V5ZnJhbWVzIGltZ2ZhZGVJbiB7XG4gICAgMCUge29wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwcHgsMCwwKTt9XG4gICAgMTAwJSB7b3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7fVxufVxuXG5ALW8ta2V5ZnJhbWVzIGltZ2ZhZGVJbiB7XG4gICAgMCUge29wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwcHgsMCwwKTt9XG4gICAgMTAwJSB7b3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7fVxufVxuXG5Aa2V5ZnJhbWVzIGltZ2ZhZGVJbiB7XG4gICAgMCUge29wYWNpdHk6IDA7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwcHgsMCwwKTt9XG4gICAgMTAwJSB7b3BhY2l0eTogMTsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7fVxufVxuIiwiLy8gTWFrZSBzdXJlIHRoZSBpbmxpbmUgc3R5bGUgb24gZmlndXJlcyBhZGRlZCBieSBXUCBjYW5ub3Qgb3ZlcnJ1biBjb250ZW50XG5maWd1cmUud3AtY2FwdGlvbiB7XG5cdG1heC13aWR0aDogMTAwJTtcbn1cblxuLndwLWNhcHRpb24tdGV4dCB7XG5cdGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcblx0cGFkZGluZzogNXB4IDA7XG59XG5cbi5hbGlnbnJpZ2h0IHtcblx0ZmxvYXQ6cmlnaHQ7IFxuXHRtYXJnaW46MCAwIDFlbSAxZW07XG59XG4uYWxpZ25sZWZ0IHtcblx0ZmxvYXQ6bGVmdDsgXG5cdG1hcmdpbjowIDFlbSAxZW0gMDtcbn1cbi5hbGlnbmNlbnRlciB7XG5cdGRpc3BsYXk6IGJsb2NrOyBcblx0bWFyZ2luLWxlZnQ6IGF1dG87IFxuXHRtYXJnaW4tcmlnaHQ6IGF1dG87XG5cdGNsZWFyOiBib3RoO1xufVxuXG4ud3AtcGxheWxpc3Qge1xuICAgIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgMCAxOHB4ICFpbXBvcnRhbnQ7XG59XG5cbmRpdi5nYWxsZXJ5LWltYWdlIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGdyYXktbGlnaHRlciwgNCUpO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcvMjtcblx0bWFyZ2luLWJvdHRvbTogMzBweDtcblx0aGVpZ2h0OiAxMDAlO1xufVxuXG5kaXYuZ2FsbGVyeS1pbWFnZSBpbWcge1xuXHR0cmFuc2l0aW9uOiBhbGwgMC44cztcblxuXHQmOmhvdmVyIHtcblx0XHRib3gtc2hhZG93OiAwIDJweCAxMnB4IHJnYmEoMCwwLDAsMC41KTtcblx0XHR0cmFuc2l0aW9uOiBhbGwgMC4zcztcblx0fVxufVxuXG4vLyBTY2FsZSB1cCBwYWRkaW5nIGZvciB0YWJsZXRzIGFuZCB1cFxuQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0ZGl2LmdhbGxlcnktaW1hZ2Uge1xuXHRcdHBhZGRpbmc6ICR0YWJsZS1jZWxsLXBhZGRpbmcgKiAyO1xuXHR9XG59IiwiLyogRm9ybSB3cmFwcGVyICovXG5cbi5nZm9ybV93cmFwcGVyIHtcblxuXHRmb3JtIHtcblx0XHRAaW5jbHVkZSBjbGVhcigpO1xuXHR9XG5cblx0LyogSEVBRElORyAqL1xuXHQuZ2Zvcm1faGVhZGluZyB7XG5cdFx0Y29sb3I6ICRjb250ZW50O1xuXG5cdFx0Lmdmb3JtX3RpdGxlIHtcblx0XHRcdGNvbG9yOiAkY29udGVudDtcblx0XHR9XG5cblx0XHQuZ2Zvcm1fZGVzY3JpcHRpb24ge1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXI7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9ja1xuXHRcdH1cblx0fVxuXG5cdC8qIEJPRFkgKi9cblx0Lmdmb3JtX2JvZHkge1xuXHRcdEBpbmNsdWRlIGNsZWFyKCk7XG5cblx0XHQuZ2Zvcm1fZmllbGRzIHtcblx0XHRcdEBpbmNsdWRlIHN0YWNrKCk7XG5cblx0XHRcdGxpIHtcblx0XHRcdFx0bWFyZ2luLWJvdHRvbTogMjBweDtcblx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0fVxuXG5cdFx0XHQuZ2ZpZWxkIHtcblxuXHRcdFx0XHQuZ2ZpZWxkX2Rlc2NyaXB0aW9uIHtcblx0XHRcdFx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0XHRcdFx0Zm9udC1zdHlsZTogaXRhbGljO1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LmdpbnB1dF9jb250YWluZXIge1xuXHRcdFx0XHRcdEBpbmNsdWRlIHZlcnRpY2FsX2FsaWdubWVudCgpO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXG5cdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRcdFx0XHR3aWR0aDogY2FsYygxMDAlIC0gMTYwcHgpO1xuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdCY6Zm9jdXMsICZhY3RpdmUge1xuXHRcdFx0XHRcdFx0b3V0bGluZTogbm9uZTtcblx0XHRcdFx0XHRcdC13ZWJraXQtYm94LXNoYWRvdzogbm9uZTtcblx0XHRcdFx0XHRcdC1tb3otYm94LXNoYWRvdzogbm9uZTtcblx0XHRcdFx0XHRcdGJveC1zaGFkb3c6IG5vbmU7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cblx0XHRcdFx0LmdmaWVsZF9sYWJlbCB7XG5cdFx0XHRcdFx0Y29sb3I6ICRjb250ZW50O1xuXG5cdFx0XHRcdFx0QG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG5cdFx0XHRcdFx0XHRtYXJnaW4tYm90dG9tOiAxNXB4O1xuXHRcdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cdFx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdFx0XHR2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAxMHB4IDMwcHggMCAwOyBcblx0XHRcdFx0XHRcdHdpZHRoOiAxMzBweDtcblx0XHRcdFx0XHRcdG1heC13aWR0aDogMTMwcHg7XG5cdFx0XHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0LmdmaWVsZF9yZXF1aXJlZCB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJGRhbmdlcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRpbnB1dCwgYnV0dG9uLCBzZWxlY3QsIHRleHRhcmVhIHtcblx0XHRcdFx0XHQmOmZvY3VzLCAmYWN0aXZlIHtcblx0XHRcdFx0XHRcdG91dGxpbmU6IG5vbmU7XG5cdFx0XHRcdFx0XHQtd2Via2l0LWJveC1zaGFkb3c6IG5vbmU7XG5cdFx0XHRcdFx0XHQtbW96LWJveC1zaGFkb3c6IG5vbmU7XG5cdFx0XHRcdFx0XHRib3gtc2hhZG93OiBub25lO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIExJU1QgQk9EWSAqL1xuXHRcdFx0XHQuZ2lucHV0X2xpc3Rib2R5IHtcblx0XHRcdFx0XHQuZ2Zvcm1fd3JhcHBlciB7IFxuXHRcdFx0XHRcdFx0Lmdmb3JtX2JvZHkge1xuXHRcdFx0XHRcdFx0XHQuZ2Zvcm1fZmllbGRzIHtcblx0XHRcdFx0XHRcdFx0XHQuZ2ZpZWxkIHtcblx0XHRcdFx0XHRcdFx0XHRcdC5naW5wdXRfbGlzdCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCB0YWJsZSB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdCYuZ2ZpZWxkX2xpc3Qge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG5cblx0XHRcdFx0XHRcdFx0XHRcdFx0IFx0XHR0aGVhZCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHR0aHRhYmxlIHtcblx0XHRcdFx0XHRcdFx0XHRcdFx0IFx0XHRcdFx0Ji5nZmllbGRfbGlzdCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHRcdFx0dGhlYWQge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0XHRcdFx0dGgge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0XHRcdFx0XHRjb2xvcjogJGNvbnRlbnQ7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0fVxuXG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0dGJvZHkge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0dHIge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0XHQmLmdmaWVsZF9saXN0X3Jvd19vZGQge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0XHR0ZCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHRcdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cblx0XHRcdFx0XHRcdFx0XHRcdFx0IFx0XHRcdFx0XHQmLmdmaWVsZF9saXN0X2NlbGwge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcblx0XHRcdFx0XHRcdFx0XHRcdFx0IFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdFx0IFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHRcdFx0IFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdH1cblx0XHRcdFx0XHRcdFx0XHRcdFx0IH1cblxuXHRcdFx0XHRcdFx0XHRcdFx0XHQgY29sZ3JvdXAge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRjb2wge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdCYuZ2ZpZWxkX2xpc3RfY29sX29kZCB7XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyO1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdH1cblxuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdCYuZ2ZpZWxkX2xpc3RfY29sX2V2ZW4ge1xuXHRcdFx0XHRcdFx0XHRcdFx0XHQgXHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcblx0XHRcdFx0XHRcdFx0XHRcdFx0IFx0XHR9XG5cdFx0XHRcdFx0XHRcdFx0XHRcdCBcdH1cblx0XHRcdFx0XHRcdFx0XHRcdFx0IH1cblxuXHRcdFx0XHRcdFx0XHRcdFx0XHRcblx0XHRcdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBJTlBVVFMgKi9cblx0XHRcdFx0aW5wdXRbdHlwZT1lbWFpbF0sIGlucHV0W3R5cGU9dGVsXSwgaW5wdXRbdHlwZT11cmxdLCBpbnB1dFt0eXBlPXRleHRdLCBzZWxlY3Qge1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICNlOWU5ZTk7XG5cdFx0XHRcdFx0cGFkZGluZzogMTBweCA4cHg7XG5cdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdFx0Ym9yZGVyLXJhZGl1czogNXB4O1xuXHRcdFx0XHR9XG5cblx0XHRcdFx0LyogU0VDVElPTiAqL1xuXHRcdFx0XHQuZ3NlY3Rpb24ge1xuXHRcdFx0XHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyO1xuXG5cdFx0XHRcdFx0LmdzZWN0aW9uX3RpdGxlIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29udGVudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBQUk9EVUNUIFBSSUNFICovXG5cdFx0XHRcdC5naW5wdXRfcHJvZHVjdF9wcmljZV9sYWJlbCwgLmdpbnB1dF9wcm9kdWN0X3ByaWNlLCAuZ2ZpZWxkX3ByaWNlIHtcblx0XHRcdFx0XHRjb2xvcjogJGNvbnRlbnQ7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuZ2ZpZWxkX3F1YW50aXR5IHtcblx0XHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XHRjb2xvcjogJGNvbnRlbnQ7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aW5wdXQge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRjb250ZW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIFNISVBQSU5HICovXG5cdFx0XHRcdC5nZmllbGRfc2hpcHBpbmcge1xuXHRcdFx0XHRcdGxhYmVsIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29udGVudDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuZ2ZpZWxkX3RvdGFsIHtcblx0XHRcdFx0XHRzcGFuIHtcblx0XHRcdFx0XHRcdGNvbG9yOiAkY29udGVudDtcblx0XHRcdFx0XHR9XG5cblx0XHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XHRjb2xvcjogICRjb250ZW50O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIFJFQ0FQVENIQSAqL1xuXHRcdFx0XHQucmVjYXB0Y2hhX3dpZGdldF9kaXYge1xuXHRcdFx0XHRcdC5yZWNhcHRjaGFfYXJlYSB7XG5cdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC5nZmllbGRfY2FwdGNoYV9jb250YWluZXIge1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG5cblx0XHRcdFx0XHQuZ2ZpZWxkX2NhcHRjaGEge1xuXHRcdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcblxuXHRcdFx0XHRcdFx0aW5wdXQge1xuXHRcdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIEZPT1RFUiAqL1xuXHRcdFx0XHQuZ2Zvcm1fZm9vdGVyIHtcblx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkYm9yZGVyO1xuXG5cdFx0XHRcdFx0aW5wdXRbdHlwZT1zdWJtaXRdIHtcblx0XHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0aW5wdXRbdHlwZT1pbWFnZV0ge1xuXHRcdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBURVhUQVJFQSAqL1xuXHRcdFx0XHR0ZXh0YXJlYSB7XG5cdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0XHRwYWRkaW5nOiAxMHB4IDhweDtcblx0XHRcdFx0XHRib3JkZXItcmFkaXVzOiA1cHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBDSEVDS0JPWCBBTkQgUkFESU8gQlVUVE9OUyAqL1xuXHRcdFx0XHQuZ2ZpZWxkX2NoZWNrYm94LCAuZ2ZpZWxkX3JhZGlvIHtcblx0XHRcdFx0XHRAaW5jbHVkZSBzdGFjaygpO1xuXG5cdFx0XHRcdFx0bGkge1x0XG5cdFx0XHRcdFx0XHRsYWJlbCwgaW5wdXRbdHlwZT1jaGVja2JveF0sIGlucHV0W3R5cGU9cmFkaW9dIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAwO1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSB2ZXJ0aWNhbF9hbGlnbm1lbnQoKTtcblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0bGFiZWwge1xuXHRcdFx0XHRcdFx0XHRtYXJnaW4tbGVmdDogMTVweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBDT01QTEVYICovXG5cdFx0XHRcdC5naW5wdXRfY29tcGxleCB7XG5cdFx0XHRcdFx0bWF4LXdpZHRoOiA2MDBweDtcblxuXHRcdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG4gICBcdFx0XHRcdFx0XHRkaXNwbGF5OiBibG9jaztcbiAgIFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICBcdFx0XHRcdFx0XHRAaW5jbHVkZSBjbGVhcigpO1xuXG4gICBcdFx0XHRcdFx0XHQmOmxhc3Qtb2YtdHlwZSB7XG4gICBcdFx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG4gICBcdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXG5cdFx0XHRcdFx0bGFiZWwge1xuXHRcdFx0XHRcdFx0Y29sb3I6ICRjb250ZW50O1xuXG5cdFx0XHRcdFx0XHRAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcblx0XHRcdFx0XHRcdFx0bWFyZ2luLXRvcDogMTVweDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdFxuXHRcdFx0XHRcdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHRcdFx0XHRcdFx0bWFyZ2luOiAxMHB4IDMwcHggMCAwOyBcblx0XHRcdFx0XHRcdFx0bWluLXdpZHRoOiAxODBweDtcblx0XHRcdFx0XHRcdFx0ZmxvYXQ6IGxlZnQ7XG5cblx0XHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdFx0LmdmaWVsZF9yZXF1aXJlZCB7XG5cdFx0XHRcdFx0XHRcdGNvbG9yOiAkZGFuZ2VyO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblxuXHRcdFx0XHRcdGlucHV0LCBzZWxlY3Qge1xuXHRcdFx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRcdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRcdFx0XHRcdFx0XHRtYXgtd2lkdGg6IDMwMHB4O1xuXHRcdFx0XHRcdFx0XHRAaW5jbHVkZSB2ZXJ0aWNhbF9hbGlnbm1lbnQoKTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBIT1VSICovXG5cdFx0XHRcdC5nZmllbGRfdGltZV9ob3VyLCAuZ2ZpZWxkX3RpbWVfbWludXRlIHtcblx0XHRcdFx0XHRsYWJlbCB7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDE1cHggMCAwIDA7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XHRcblxuXHRcdFx0XHQvKiBEQVRFUElDS0VSICovXG5cdFx0XHRcdGRhdGVwaWNrZXIge1xuXHRcdFx0XHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQuZ2ZpZWxkX2lucHV0X2RhdGVwaWNrZXJfaWNvbiB7XG5cdFx0XHRcdFx0Ym9yZGVyOiAxcHggc29saWQgJGJvcmRlcjtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIE1PTlRILCBEQVkgQU5EIFlFQVIgKi9cblx0XHRcdFx0LmdmaWVsZF9kYXRlX21vbnRoLCAuZ2ZpZWxkX2RhdGVfZGF5LCAuZ2ZpZWxkX2RhdGVfeWVhciB7XG5cdFx0XHRcdFx0bGFiZWwge1xuXHRcdFx0XHRcdFx0bWFyZ2luOiAxNXB4IDAgMCAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIE1VTFRJRklMRSBVUExPQUQgKi9cblx0XHRcdFx0Lmdmb3JtX2ZpbGV1cGxvYWRfbXVsdGlmaWxlIHtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kOiBsaWdodGVuKCRjb250ZW50LDc1JSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQvKiBEUk9QIEFSRUEgKi9cblx0XHRcdFx0Lmdmb3JtX2Ryb3BfYXJlYSB7XG5cdFx0XHRcdFx0Y29sb3I6ICRjb250ZW50O1xuXHRcdFx0XHRcdGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbnRlbnQsNzUlKTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC8qIFNFTEVDVCAqL1xuXHRcdFx0XHQuZ2Zvcm1fYnV0dG9uX3NlbGVjdF9maWxlcyB7XG5cdFx0XHRcdFx0YmFja2dyb3VuZDogbGlnaHRlbigkY29udGVudCw3NSUpO1xuXHRcdFx0XHR9XG5cblx0XHRcdH1cblx0XHR9XG5cdH1cblx0XG5cdC8qIFZBTElEQVRJT04gKi9cblx0LnZhbGlkYXRpb25fZXJyb3Ige1xuXHRcdHBhZGRpbmc6IDE1cHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTVweDtcblx0XHRiYWNrZ3JvdW5kOiAkYnJhbmQtZGFuZ2VyO1xuXHRcdGNvbG9yOiB3aGl0ZTtcblx0fVxuXG5cdC5nZmllbGRfZXJyb3Ige1xuXG5cdFx0LnZhbGlkYXRpb25fbWVzc2FnZSB7XG5cdFx0XHRjb2xvcjogJGRhbmdlcjtcblx0XHRcdGZvbnQtd2VpZ2h0OiA3MDA7XG5cdFx0XHRmb250LXNpemU6IDEzcHg7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bWFyZ2luLWxlZnQ6IDA7XG5cblx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xuXHRcdFx0XHRtYXJnaW4tbGVmdDogMTYwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LyogUFJPR1JFU1MgKi9cblx0LmdmX3Byb2dyZXNzYmFyX3dyYXBwZXIge1xuXHRcdC5nZl9wcm9ncmVzc2Jhcl90aXRsZSB7XG5cdFx0XHRjb2xvcjogJGNvbnRlbnQ7XG5cdFx0fVxuXG5cdFx0LmdmX3Byb2dyZXNzYmFyIHtcblx0XHRcdGJhY2tncm91bmQ6IGxpZ2h0ZW4oJGNvbnRlbnQsNzUlKTtcblx0XHR9XG5cblx0XHQuZ2ZfcHJvZ3Jlc3NiYXJfcGVyY2VudGFnZSB7XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeTtcblx0XHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0fVxuXHR9XG5cblx0LyogU1RFUFMgKi9cblx0LmdmX3BhZ2Vfc3RlcHMge1xuXHRcdGJvcmRlcjogMXB4IHNvbGlkICRib3JkZXI7XG5cblx0XHQuZ2Zfc3RlcCB7XG5cdFx0XHRjb2xvcjogJGNvbnRlbnQ7XG5cdFx0fVxuXG5cdFx0LmdmX3N0ZXBfYWN0aXZlIHtcblx0XHRcdGNvbG9yOiAkcHJpbWFyeTtcblx0XHR9XG5cdH1cblxuXHQvKiBQQUdFUyAqL1xuXHQuZ2Zvcm1fcGFnZV9mb290ZXIge1xuXHRcdHBhZGRpbmc6IDIwcHg7XG5cblx0XHQuZ2Zvcm1fbmV4dF9idXR0b24sIC5nZm9ybV9wcmV2aW91c19idXR0b24sIC5nZm9ybV9idXR0b24ge1xuXHRcdFx0QGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQod2hpdGUsICRwcmltYXJ5LCBkYXJrZW4oJHByaW1hcnksMTAlKSk7XG5cdFx0fVxuXHR9XG59XG5cbi50d28tY29sdW1uX3dyYXBwZXIge1xuXHRmb3JtIHtcblx0XHQuZ2Zvcm1fYm9keSB7XG5cdFx0XHR1bCB7XG5cdFx0XHRcdCY6Zmlyc3Qtb2YtdHlwZSB7XG5cdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cdFxuXHR9XG59XG5cbi5nZm9ybV9jb2x1bW4ge1xuXHRmbG9hdDogbGVmdDtcblx0cGFkZGluZzogMCAxNXB4ICFpbXBvcnRhbnQ7XG59XG5cbi50d28tY29sdW1uIHtcblx0Lmdmb3JtX2NvbHVtbiB7XG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRAaW5jbHVkZSBjYWxjKHdpZHRoLCBcIjEwMCUgLyAyXCIpO1xuXHRcdH1cblx0fVx0XG59XG5cbi8qIEFkZGl0aW9uYWwgc3R5bGVzIGZvciBmaWxlIGlub3V0IGZpZWxkIHRvIGFkZHJlc3MgaXVzc2VzIG9uIEFuZHJvaWQgbmF0aXZlIGFuZCBpT1MgKi9cbi5naW5wdXRfY29udGFpbmVyX2ZpbGV1cGxvYWQge1xuXHRsaW5lLWhlaWdodDogMTBweDtcbn1cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1taW4gLSAxcHgpIHtcblx0aW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuXHRcdGNsZWFyOiBib3RoO1xuXHRcdHdpZHRoOiAxMDAlOyBcblx0fVxufVxuIiwiLy8gQnV0dG9uIHZhcmlhbnRzXG4vL1xuLy8gRWFzaWx5IHB1bXAgb3V0IGRlZmF1bHQgc3R5bGVzLCBhcyB3ZWxsIGFzIDpob3ZlciwgOmZvY3VzLCA6YWN0aXZlLFxuLy8gYW5kIGRpc2FibGVkIG9wdGlvbnMgZm9yIGFsbCBidXR0b25zXG5cbkBtaXhpbiBidXR0b24tdmFyaWFudCgkY29sb3IsICRiYWNrZ3JvdW5kLCAkYm9yZGVyKSB7XG4gIGNvbG9yOiAkY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICBib3JkZXItY29sb3I6ICRib3JkZXI7XG5cbiAgJjpmb2N1cyxcbiAgJi5mb2N1cyB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDI1JSk7XG4gIH1cbiAgJjpob3ZlciB7XG4gICAgY29sb3I6ICRjb2xvcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDEwJSk7XG4gICAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMTIlKTtcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyxcbiAgICAmLmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDE3JSk7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICB9XG4gICYuZGlzYWJsZWQsXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgfVxuXG4gIC5iYWRnZSB7XG4gICAgY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgfVxufVxuXG4vLyBCdXR0b24gc2l6ZXNcbkBtaXhpbiBidXR0b24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemU7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQ7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xufVxuIiwiLmVtYmVkLWNvbnRhaW5lciB7XG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0cGFkZGluZy1ib3R0b206IDU2LjI1JTtcblx0cGFkZGluZy10b3A6IDI1cHg7XG5cdGhlaWdodDogMDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdGlmcmFtZSwgdmlkZW8sIGVtYmVkIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHR9XG59IiwiXG4jY29udGFjdF9tYXAge1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiA1MDBweDsgXG59IiwiQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG5cdCN3cGFkbWluYmFyIHtcblx0XHQvLyBmaXggdGhlIGFkbWluIGJhciBmb3IgbW9iaWxlIHNpemUgdG8gYXZvaWQgYSBnYXAgd2l0aCBzdGlja3kgaGVhZGVyXG5cdFx0cG9zaXRpb246IGZpeGVkICFpbXBvcnRhbnQ7XG5cdH1cdFxufSIsIiNmb290ZXIge1xuXHRiYWNrZ3JvdW5kOiAkYnJvd247XG5cdHBhZGRpbmc6IDM1cHggMDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblxuXHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0XHRwYWRkaW5nOiA3MHB4IDAgNTBweCAwO1xuXHR9XG5cblx0cCB7XG5cdFx0Zm9udC1mYW1pbHk6ICdNZXJyaXdlYXRoZXInLCBzZXJpZjtcblx0XHRmb250LXNpemU6IDEycHg7XG5cdFx0Y29sb3I6ICR5ZWxsb3c7XG5cdH1cblxuXHRhIHtcblx0XHRmb250LWZhbWlseTogJ01lcnJpd2VhdGhlcicsIHNlcmlmO1xuXHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRjb2xvcjogJHllbGxvdztcdFxuXHR9XG5cblx0aW1nIHtcblx0XHR3aWR0aDogMTEwcHg7XG5cdFx0aGVpZ2h0OiA0MnB4O1xuXHRcdGZsb2F0OiByaWdodDtcblx0XHRtYXJnaW46IDUwcHggMCAzMHB4IDA7XG5cdH1cblxuXHQuaWNvbi13cmFwcGVyIHtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0XHR3aWR0aDogNDBweDtcblx0XHRoZWlnaHQ6IDQwcHg7XG5cdFx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0YmFja2dyb3VuZDogJHllbGxvdztcblx0XHRtYXJnaW46IDAgMCAxMHB4IDA7XG5cblx0XHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHQtbW96LWJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRib3JkZXItcmFkaXVzOiA1MCU7XG5cblx0XHQuZmEge1xuXHRcdFx0d2lkdGg6IGF1dG87XG5cdFx0XHRtYXgtaGVpZ2h0OiAyMnB4O1xuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0dG9wOiAtMTAwJTtcblx0XHRcdGJvdHRvbTogLTEwMCU7XG5cdFx0XHRsZWZ0OiAtMTAwJTtcblx0XHRcdHJpZ2h0OiAtMTAwJTtcblx0XHRcdG1hcmdpbjogYXV0bztcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdGNvbG9yOiAkYnJvd247XG5cdFx0XHRmb250LXNpemU6IDIycHg7XG5cdFx0fVxuXHR9XG5cblx0LmxlZ2FsIHtcblx0XHRwIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHRcdHRleHQtYWxpZ246IHJpZ2h0O1x0XG5cdFx0fVxuXHR9XG5cblx0I2RyZWFtc21pdGhzIHtcblx0XHRmbG9hdDogcmlnaHQ7XG5cblx0XHRpbWcsIHAge1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdGxpbmUtaGVpZ2h0OiAxO1xuXHRcdH1cblxuXHRcdHAge1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXHRcdH1cblx0fVxuXG5cdC5zb2NpYWxfZm9vdGVyIHtcblx0XHRtYXJnaW4tYm90dG9tOiAzMHB4O1xuXHR9XG5cblx0dWwge1xuXHRcdEBpbmNsdWRlIHN0YWNrKCk7XG5cblx0XHRsaSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAyMHB4O1xuXHRcdFx0XG5cblx0XHRcdEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdG1hcmdpbjogMCAwIDIwcHggMDtcblx0XHRcdH1cblxuXHRcdFx0YSB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0XHRcdFx0Lmljb24td3JhcHBlciB7XG5cdFx0XHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQmOmhvdmVyIHtcblx0XHRcdFx0XHQuaWNvbi13cmFwcGVyIHtcblx0XHRcdFx0XHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRcdFx0XHRcdH0gXG5cdFx0XHRcdH1cblx0XHRcdH1cblxuXHRcdFx0LmZhIHtcblx0XHRcdFx0Zm9udC1zaXplOiAyMnB4O1xuXHRcdFx0XHRjb2xvcjogd2hpdGU7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LnRvcC1jb2wge1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdH1cblxuXHRAbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcblx0XHQudG9wLWNvbCB7XG5cdFx0XHQuaW5uZXIge1xuXHRcdFx0XHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICM1NDRBNEM7XG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0ZGlzcGxheTogdGFibGU7XG5cblx0XHRcdFx0LnRleHQge1xuXHRcdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0XHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXG5cdFx0XHQuaWNvbi13cmFwcGVyIHtcblx0XHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQuZm9vdGVyLW5hdi13cmFwcGVyIHtcblx0XHRcdG1hcmdpbjogMCAwIDEwcHggMDtcblx0XHR9XG5cblx0XHQubGVnYWwge1xuXHRcdFx0cCB7XG5cdFx0XHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiJHByb2ZpbGVzOiAoXG5cdGZhY2Vib29rOiAjM2I1OTk4LFxuXHRnb29nbGUtcGx1czogI2RkNGIzOSxcblx0aW5zdGFncmFtOiAjNTE3ZmE0LFxuXHRsaW5rZWRpbjogIzAwN2JiNixcblx0cGludGVyZXN0OiAjYzcyNTI3LFxuXHRyZWRkaXQ6ICNmZjQ1MDAsXG5cdHR3aXR0ZXI6ICMwMGFjZWQsXG4pO1xuXG5AZWFjaCAkcHJvZmlsZSwgJGJnY29sb3IgaW4gJHByb2ZpbGVzIHtcblx0LiN7JHByb2ZpbGV9LXNoYXJlOmZvY3VzLFxuXHQuI3skcHJvZmlsZX0tc2hhcmU6aG92ZXIge1xuXHRcdC5pY29uLXdyYXBwZXIge1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0XHRib3JkZXI6IDJweCBzb2xpZCAkYmdjb2xvcjtcblx0XHRcdGJhY2tncm91bmQ6ICRiZ2NvbG9yO1xuXHRcdH1cblxuXHRcdC5mYSB7XG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHRcdGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XG5cdFx0fVxuXHR9XG59XG5cbi5wb3N0X3NoYXJpbmcge1xuXHR0ZXh0LWFsaWduOiByaWdodDtcblx0ZmxvYXQ6IHJpZ2h0O1xuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luLXRvcDogNDBweDtcblx0XG5cdHVsIHtcblx0XHRAaW5jbHVkZSBjbGVhcigpO1xuXHRcdEBpbmNsdWRlIHN0YWNrKCk7XG5cblx0XHRsaSB7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bWFyZ2luLXJpZ2h0OiAxMHB4O1xuXG5cdFx0XHQmOmZpcnN0LW9mLXR5cGUge1xuXHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDE1cHg7XG5cdFx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGEge1xuXHRcdCAgICBkaXNwbGF5OiBibG9jaztcblx0XHQgICAgY3Vyc29yOiBwb2ludGVyO1xuXHRcdCAgICBjb2xvcjogJGNvbnRlbnQ7XG5cdFx0fVxuXG5cdFx0Lmljb24td3JhcHBlciB7XG5cdFx0ICAgIGRpc3BsYXk6IGJsb2NrO1xuXHRcdCAgICB3aWR0aDogNDJweDtcblx0XHQgICAgaGVpZ2h0OiA0MnB4O1xuXHRcdCAgICBvdmVyZmxvdzogaGlkZGVuO1xuXHRcdCAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0ICAgIGJvcmRlcjogMnB4IHNvbGlkICRjb250ZW50O1xuXHRcdCAgICBib3JkZXItcmFkaXVzOiA1MCU7XG5cdFx0ICAgIEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRcdCAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcblxuXHRcdCAgICAgLmZhIHtcblx0XHRcdCAgICB3aWR0aDogYXV0bztcblx0XHRcdCAgICBtYXgtaGVpZ2h0OiAxOHB4O1xuXHRcdFx0ICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdCAgICB0b3A6IC0xMDAlO1xuXHRcdFx0ICAgIGJvdHRvbTogLTEwMCU7XG5cdFx0XHQgICAgbGVmdDogLTEwMCU7XG5cdFx0XHQgICAgcmlnaHQ6IC0xMDAlO1xuXHRcdFx0ICAgIG1hcmdpbjogYXV0bztcblx0XHRcdCAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XHQgICAgZm9udC1zaXplOiAxOHB4O1xuXHRcdFx0ICAgIGNvbG9yOiAkY29udGVudDtcblx0XHRcdCAgICBAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCJAbWl4aW4gYnV0dG9uKCRob3ZlciwkdGV4dGNvbG9yKSB7XG4gIFxuXHRib3JkZXI6IDJweCBzb2xpZCAkdGV4dGNvbG9yO1xuXG5cdHBhZGRpbmc6IDEwcHggMjBweDtcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdGZvbnQtc2l6ZTogMC45cmVtO1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuXHQtbW96LWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuXHRib3JkZXItcmFkaXVzOiAyMDBweDtcblxuXHRjb2xvcjogJHRleHRjb2xvciAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuICBcblx0LmZhLCBzcGFuIHtcblx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0fVxuICBcblx0c3BhbiB7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTsgXG5cdH1cblxuXHQuZmEsIHNwYW4ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAkaG92ZXI7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGhvdmVyO1xuXG5cdFx0LmZhLCBzcGFuIHtcblx0XHRcdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50OyAgXG5cdFx0fVxuXHR9XG5cblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cdFx0cGFkZGluZzogMTVweCAzMHB4O1xuXHRcdGZvbnQtc2l6ZTogMXJlbTtcblx0fVxuXG5cdEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXh4cy1tYXgpIHtcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHR9XG59XG5cbkBtaXhpbiBjdGFfYnV0dG9uKCRob3ZlciwkdGV4dGNvbG9yLCRhbHRjb2xvcikge1xuICBcblx0Ym9yZGVyOiAycHggc29saWQgJHRleHRjb2xvcjtcblxuXHRwYWRkaW5nOiAxNXB4IDMwcHg7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuXHRiYWNrZ3JvdW5kOiBub25lO1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuXHQtbW96LWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuXHRib3JkZXItcmFkaXVzOiAyMDBweDtcblx0bWFyZ2luLXRvcDogNDBweDtcblxuXHRjb2xvcjogJHRleHRjb2xvciAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50O1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuICBcblx0LmZhLCBzcGFuIHtcblx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0fVxuICBcblx0c3BhbiB7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTsgXG5cdH1cblxuXHQuZmEsIHNwYW4ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAkaG92ZXI7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJGhvdmVyO1xuXHRcdGNvbG9yOiAkYWx0Y29sb3IgIWltcG9ydGFudDtcblxuXHRcdC5mYSwgc3BhbiB7XG5cdFx0XHRjb2xvcjogd2hpdGUgIWltcG9ydGFudDsgIFxuXHRcdH1cblx0fVxuXG5cdEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXh4cy1tYXgpIHtcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHR9XG59XG5cbkBtaXhpbiBsaV9idXR0b24oJGhvdmVyLCR0ZXh0Y29sb3IpIHtcbiAgXG5cdGJvcmRlcjogMnB4IHNvbGlkICR0ZXh0Y29sb3I7XG5cblx0cGFkZGluZzogMTVweCAzMHB4ICFpbXBvcnRhbnQ7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuXHRmb250LXdlaWdodDogNzAwO1xuXHRmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7XG5cblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0bWFyZ2luOiAyNXB4IDAgMCAwO1xuXHR9XG5cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjAwcHg7XG5cdC1tb3otYm9yZGVyLXJhZGl1czogMjAwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDIwMHB4O1xuXG5cdGNvbG9yOiAkdGV4dGNvbG9yICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRsaW5lLWhlaWdodDogMS41O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG4gIFxuXHQuZmEsIHNwYW4ge1xuXHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHR9XG4gIFxuXHRzcGFuIHtcblx0XHRsaW5lLWhlaWdodDogMS41OyBcblx0fVxuXG5cdC5mYSwgc3BhbiB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdH1cblxuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6ICRob3ZlciAhaW1wb3J0YW50O1xuXHRcdGJvcmRlcjogMnB4IHNvbGlkICRob3ZlciAhaW1wb3J0YW50O1xuXG5cdFx0LmZhLCBzcGFuIHtcblx0XHRcdGNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50OyAgXG5cdFx0fVxuXHR9XG59XG5cbkBtaXhpbiBjb2xsYXBzZWRfbGlfYnV0dG9uKCRob3ZlciwkdGV4dGNvbG9yKSB7XG4gIFxuXHRib3JkZXI6IDJweCBzb2xpZCAkdGV4dGNvbG9yO1xuXG5cdHBhZGRpbmc6IDEwcHggMzBweCAhaW1wb3J0YW50O1xuXHRtYXJnaW46IDIwcHggMCAwIDA7XG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuXHQtd2Via2l0LWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuXHQtbW96LWJvcmRlci1yYWRpdXM6IDIwMHB4O1xuXHRib3JkZXItcmFkaXVzOiAyMDBweDtcblxuXHRjb2xvcjogJHRleHRjb2xvciAhaW1wb3J0YW50O1xuXHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0bGluZS1oZWlnaHQ6IDEuNTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXG5cdCY6Zm9jdXMge1xuXHRcdG91dGxpbmU6IG5vbmUgIWltcG9ydGFudDtcblx0fVxuICBcblx0LmZhLCBzcGFuIHtcblx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcblx0fVxuICBcblx0c3BhbiB7XG5cdFx0bGluZS1oZWlnaHQ6IDEuNTsgXG5cdH1cblxuXHQuZmEsIHNwYW4ge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHR9XG5cblxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAkaG92ZXIgIWltcG9ydGFudDtcblx0XHRib3JkZXI6IDJweCBzb2xpZCAkaG92ZXIgIWltcG9ydGFudDtcblxuXHRcdC5mYSwgc3BhbiB7XG5cdFx0XHRjb2xvcjogd2hpdGUgIWltcG9ydGFudDsgIFxuXHRcdH1cblx0fVxufVxuXG5AbWl4aW4gZm9ybV9idXR0b24oJGhvdmVyLCR0ZXh0Y29sb3IpIHtcbiAgXG5cdGJvcmRlcjogMnB4IHNvbGlkICR0ZXh0Y29sb3I7XG5cblx0cGFkZGluZzogMTVweCAzMHB4O1xuXHRmbG9hdDogbGVmdDtcblx0Zm9udC13ZWlnaHQ6IDcwMDtcblx0Zm9udC1mYW1pbHk6ICdSb2JvdG8nLCBzYW5zLXNlcmlmO1xuXHRiYWNrZ3JvdW5kOiAjZmZmO1xuXHR3aWR0aDogMTUwcHg7XG5cblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0bWFyZ2luLWxlZnQ6IDE2MHB4O1xuXHR9XG5cblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMjAwcHg7XG5cdC1tb3otYm9yZGVyLXJhZGl1czogMjAwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDIwMHB4O1xuXG5cdGNvbG9yOiAkdGV4dGNvbG9yICFpbXBvcnRhbnQ7XG5cdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHRsaW5lLWhlaWdodDogMS41O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG5cblx0Jjpmb2N1cyB7XG5cdFx0b3V0bGluZTogbm9uZSAhaW1wb3J0YW50O1xuXHR9XG4gIFxuXHQuZmEsIHNwYW4ge1xuXHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xuXHR9XG4gIFxuXHRzcGFuIHtcblx0XHRsaW5lLWhlaWdodDogMS41OyBcblx0fVxuXG5cdC5mYSwgc3BhbiB7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdH1cblxuXG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQ6ICR0ZXh0Y29sb3I7XG5cdFx0Ym9yZGVyOiAycHggc29saWQgJHRleHRjb2xvcjtcblxuXHRcdGNvbG9yOiAkaG92ZXIgIWltcG9ydGFudDtcblxuXHRcdC5mYSwgc3BhbiB7XG5cdFx0XHRjb2xvcjogJGhvdmVyICFpbXBvcnRhbnQ7ICBcblx0XHR9XG5cdH1cbn1cblxuLmJ0biB7XG4gIFx0QGluY2x1ZGUgYnV0dG9uKCRvcmFuZ2UsICR5ZWxsb3cpO1xufVxuXG4uY3RhX2J0biB7XG5cdEBpbmNsdWRlIGN0YV9idXR0b24oJHdoaXRlLCAkeWVsbG93LCAkb3JhbmdlKTtcbn1cblxuLmxpX2J0biB7XG5cdGEge1xuXHRcdEBpbmNsdWRlIGxpX2J1dHRvbigkb3JhbmdlLCAkeWVsbG93KTtcblx0fVxufVxuXG4ubmF2LWNvbGxhcHNlIHtcblx0LmxpX2J0biB7XG5cdFx0YSB7XG5cdFx0XHRAaW5jbHVkZSBjb2xsYXBzZWRfbGlfYnV0dG9uKCRvcmFuZ2UsICR5ZWxsb3cpO1xuXHRcdH1cblx0fVxufVxuXG4uZ2Zvcm1fd3JhcHBlciB7XG5cdC5nZm9ybV9mb290ZXIge1xuXHRcdC5nZm9ybV9idXR0b24ge1xuXHRcdFx0QGluY2x1ZGUgZm9ybV9idXR0b24oJHllbGxvdywgJG9yYW5nZSk7XG5cdFx0fVxuXHR9XG59IiwiI3BhZ2UtaGVhZGVyX193cmFwcGVyIHtcblxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cblx0aDEsIGgyLCBoMywgaDQsIGg1LCBoNiwgcCB7XG5cdFx0Y29sb3I6IHdoaXRlO1xuXHRcdHRleHQtYWxpZ246IGxlZnQ7XG5cdH1cblxuXHQuaGVyb190ZXh0IHtcblx0XHRoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwIHtcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHR9XG5cdH1cblxuXHQub3V0ZXJfY29udGFpbmVyIHtcblx0XHRiYWNrZ3JvdW5kOiByZ2JhKDQxLCAzMSwgMjQsIDAuNSk7XG5cdH1cblxuXHQmLnBhZ2UtaGVhZGVyX19tYWluIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRAaW5jbHVkZSB2ZXJ0aWNhbC1jZW50ZXItbW9iaWxlKGNhbGMoMTAwdmggLSA4MHB4KSk7XG5cblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdG1hcmdpbjogMDtcblx0XHRcdEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcihjYWxjKDEwMHZoIC0gNXB4KSk7XG5cdFx0fVxuXHR9XG5cblx0Ji5wYWdlLWhlYWRlcl9fYmxvZyB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cblx0XHRkaXNwbGF5OiB0YWJsZTtcblx0XHRtYXJnaW46IDgwcHggYXV0byAwIGF1dG87XG5cblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRcdG1hcmdpbjogMTEwcHggYXV0byAwIGF1dG87XG5cdFx0fVxuXG5cdFx0PiAqIHtcblx0XHQgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdFx0ICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdH1cblxuXHRcdGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAge1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuXHRcdH1cblxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXHRcdFx0bWluLWhlaWdodDogMjIwcHg7XG5cblx0XHRcdD4gKiB7XG5cdFx0XHQgIGhlaWdodDogMjIwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdFxuXHRcdC5zdHJpcGVfcGF0dGVybiB7XG5cdFx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2dyYXktc3RyaXBlLnBuZykgdG9wIGxlZnQgcmVwZWF0O1xuXHRcdFx0cGFkZGluZzogNDBweCAwO1xuXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0XHRcdFx0cGFkZGluZzogMDtcblx0XHRcdH1cblx0XHR9XG5cblx0XHQub3V0ZXJfY29udGFpbmVyIHtcblx0XHRcdGJhY2tncm91bmQ6IG5vbmU7XG5cdFx0fVxuXHR9XG5cblx0Ji5wYWdlLWhlYWRlcl9fbWluaW1hbCB7XG5cdFx0QGluY2x1ZGUgdmVydGljYWwtY2VudGVyKDIwMHB4KTtcblx0fVxuXG5cdC5oZXJvX3RleHQge1xuXHRcdG1heC13aWR0aDogNzkwcHg7XG5cdFx0bWFyZ2luOiAwIGF1dG87XG5cdH1cblxuXHQuYXJyb3cge1xuXHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRsZWZ0OiAwO1xuXHRcdGJvdHRvbTogMDtcblx0XHRjb2xvcjogI2ZmZjtcblx0XHRmb250LXNpemU6IDJyZW07XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cblx0XHQmOmhvdmVyIHtcblx0XHRcdGNvbG9yOiAkb3JhbmdlO1xuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XG5cdFx0fVxuXG5cdFx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG5cdFx0XHRmb250LXNpemU6IDNyZW07XG5cdFx0fVxuXHR9XG59XG5cbmJvZHkubG9nZ2VkLWluIHtcblx0I3BhZ2UtaGVhZGVyX193cmFwcGVyIHtcblx0XHQmLnBhZ2UtaGVhZGVyX19tYWluIHtcblx0XHRcdEBpbmNsdWRlIHZlcnRpY2FsLWNlbnRlcihjYWxjKDEwMHZoIC0gMzdweCkpO1xuXHRcdH1cblx0fVxufSIsIiNhcHByb2FjaCB7XG5cdGJhY2tncm91bmQ6IHdoaXRlO1xuXHRwYWRkaW5nOiAzMHB4IDA7XG5cblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG5cdFx0cGFkZGluZzogMTAwcHggMCA1MHB4IDA7XG5cdH1cbn1cblxuI2ZvY3VzIHtcblx0YmFja2dyb3VuZDogd2hpdGU7XG59XG5cbiNsZWFkZXJzaGlwIHtcblx0YmFja2dyb3VuZDogd2hpdGU7XG5cdHBhZGRpbmc6IDQwcHggMDtcblxuXHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcblx0XHRwYWRkaW5nOiA4MHB4IDAgMTAwcHggMDtcblx0fVxufVxuXG4jcHJpbWFyeSB7XG5cdHBhZGRpbmc6IDMwcHggMDtcblx0dGV4dC1hbGlnbjogbGVmdDtcblx0YmFja2dyb3VuZDogI2ZmZjtcblxuXHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0XHRwYWRkaW5nOiA2MHB4IDA7XG5cdH1cblxuXHQmLnBhdHRlcm4ge1xuXHRcdHBhZGRpbmc6IDAgIWltcG9ydGFudDtcblx0fVxuXG5cdC5zdHJpcGVfcGF0dGVybiB7XG5cdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9ncmF5LXN0cmlwZS5wbmcpIHRvcCBsZWZ0IHJlcGVhdDtcblx0XHRwYWRkaW5nOiAzMHB4IDA7XG5cblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcblx0XHRcdHBhZGRpbmc6IDYwcHggMDtcblx0XHR9XG5cdH1cblxuXHQmLmJsb2NrIHtcblx0XHQjbWFpbiB7XG5cdFx0XHRtaW4taGVpZ2h0OiA1MHZoO1xuXHRcdH1cblx0fVxufVxuXG5zcGFuIHtcblx0Ji5ob21lIHtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0dG9wOiAwO1xuXHRcdGxlZnQ6IDA7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMHB4O1xuXHR9XG59IiwiI3Rlc3RpbW9uaWFscyB7XHJcblx0YmFja2dyb3VuZDogcmdiYSgyNTMsMTU1LDQzLDEpO1xyXG5cdGJhY2tncm91bmQ6IC1tb3otcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSBjb3ZlciwgcmdiYSgyNTMsMTU1LDQzLDEpIDAlLCByZ2JhKDIyMCwxMzQsMzYsMSkgMTAwJSk7XHJcblx0YmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChyYWRpYWwsIGNlbnRlciBjZW50ZXIsIDBweCwgY2VudGVyIGNlbnRlciwgMTAwJSwgY29sb3Itc3RvcCgwJSwgcmdiYSgyNTMsMTU1LDQzLDEpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDIyMCwxMzQsMzYsMSkpKTtcclxuXHRiYWNrZ3JvdW5kOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsIHJnYmEoMjUzLDE1NSw0MywxKSAwJSwgcmdiYSgyMjAsMTM0LDM2LDEpIDEwMCUpO1xyXG5cdGJhY2tncm91bmQ6IC1vLXJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsIHJnYmEoMjUzLDE1NSw0MywxKSAwJSwgcmdiYSgyMjAsMTM0LDM2LDEpIDEwMCUpO1xyXG5cdGJhY2tncm91bmQ6IC1tcy1yYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlIGNvdmVyLCByZ2JhKDI1MywxNTUsNDMsMSkgMCUsIHJnYmEoMjIwLDEzNCwzNiwxKSAxMDAlKTtcclxuXHRiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCBjZW50ZXIsIHJnYmEoMjUzLDE1NSw0MywxKSAwJSwgcmdiYSgyMjAsMTM0LDM2LDEpIDEwMCUpO1xyXG5cdGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZmQ5YjJiJywgZW5kQ29sb3JzdHI9JyNkYzg2MjQnLCBHcmFkaWVudFR5cGU9MSApO1xyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRjb2xvcjogI2ZmZjtcclxuXHJcblx0LnN0cmlwZV9wYXR0ZXJuIHtcclxuXHRcdGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvZ3JheS1zdHJpcGUucG5nKSB0b3AgbGVmdCByZXBlYXQ7XHJcblx0fVxyXG5cclxuXHQuY29udGFpbmVyIHtcclxuXHRcdHBhZGRpbmctdG9wOiAzMHB4O1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDMwcHg7XHJcblxyXG5cdFx0cCB7XHJcblx0XHRcdCYuZGV0YWlsIHtcclxuXHRcdFx0XHRvcGFjaXR5OiAwLjY7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcclxuXHRcdFx0cGFkZGluZy10b3A6IDYwcHg7XHJcblx0XHRcdHBhZGRpbmctYm90dG9tOiA2MHB4O1xyXG5cdFx0fVxyXG5cclxuXHRcdC5uYW1lIHtcclxuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc2xpY2stYXJyb3cge1xyXG5cdFx0ZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xyXG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdH1cclxuXHJcblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcblx0XHQuc2xpY2stYXJyb3cge1xyXG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRcdHRvcDogNTAlO1xyXG5cdFx0XHRvcGFjaXR5OiAwICFpbXBvcnRhbnQ7XHJcblx0XHRcdGZvbnQtc2l6ZTogMnJlbSAhaW1wb3J0YW50O1xyXG5cdFx0XHRoZWlnaHQ6IDYwcHg7XHJcblx0XHRcdG1hcmdpbjogLTMwcHggMCAwIDA7XHJcblx0XHR9XHJcblxyXG5cdFx0LnNsaWNrLWdhbC1wcmV2IHtcclxuXHRcdFx0cmlnaHQ6IC0zMHB4O1xyXG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0LnNsaWNrLWdhbC1wcmV2IHtcclxuXHRcdFx0XHRyaWdodDogMDtcclxuXHRcdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5zbGljay1nYWwtbmV4dCB7XHJcblx0XHRcdGxlZnQ6IC0zMHB4O1xyXG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0LnNsaWNrLWdhbC1uZXh0IHtcclxuXHRcdFx0XHRsZWZ0OiAwO1xyXG5cdFx0XHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdC5zbGljay1hcnJvdyB7XHJcblx0XHRcdFx0b3BhY2l0eTogMSAhaW1wb3J0YW50O1xyXG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcblxyXG5cdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG5cdFx0LnNsaWNrLWFycm93IHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDUwJTtcclxuXHRcdFx0b3BhY2l0eTogMCAhaW1wb3J0YW50O1xyXG5cdFx0XHRmb250LXNpemU6IDJyZW0gIWltcG9ydGFudDtcclxuXHRcdFx0aGVpZ2h0OiA2MHB4O1xyXG5cdFx0XHRtYXJnaW46IC0zMHB4IDAgMCAwO1xyXG5cdFx0fVxyXG5cclxuXHRcdC5zbGljay1nYWwtcHJldiB7XHJcblx0XHRcdHJpZ2h0OiAtMzBweDtcclxuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdC5zbGljay1nYWwtcHJldiB7XHJcblx0XHRcdFx0cmlnaHQ6IC01cHg7XHJcblx0XHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHJcblx0XHQuc2xpY2stZ2FsLW5leHQge1xyXG5cdFx0XHRsZWZ0OiAtMzBweDtcclxuXHRcdFx0QGluY2x1ZGUgYW5pbWF0aW9uKCk7XHJcblx0XHR9XHJcblxyXG5cdFx0Jjpob3ZlciB7XHJcblx0XHRcdC5zbGljay1nYWwtbmV4dCB7XHJcblx0XHRcdFx0bGVmdDogLTVweDtcclxuXHRcdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHQuc2xpY2stYXJyb3cge1xyXG5cdFx0XHRcdG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcclxuXHRcdC5zbGljay1hcnJvdyB7XHJcblx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuXHRcdFx0dG9wOiA1MCU7XHJcblx0XHRcdG9wYWNpdHk6IDAgIWltcG9ydGFudDtcclxuXHRcdFx0Zm9udC1zaXplOiAycmVtICFpbXBvcnRhbnQ7XHJcblx0XHRcdGhlaWdodDogNjBweDtcclxuXHRcdFx0bWFyZ2luOiAtMzBweCAwIDAgMDtcclxuXHRcdH1cclxuXHJcblx0XHQuc2xpY2stZ2FsLXByZXYge1xyXG5cdFx0XHRyaWdodDogLTUwcHg7XHJcblx0XHRcdEBpbmNsdWRlIGFuaW1hdGlvbigpO1xyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHQuc2xpY2stZ2FsLXByZXYge1xyXG5cdFx0XHRcdHJpZ2h0OiAtMjVweDtcclxuXHRcdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5zbGljay1nYWwtbmV4dCB7XHJcblx0XHRcdGxlZnQ6IC01MHB4O1xyXG5cdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcclxuXHRcdH1cclxuXHJcblx0XHQmOmhvdmVyIHtcclxuXHRcdFx0LnNsaWNrLWdhbC1uZXh0IHtcclxuXHRcdFx0XHRsZWZ0OiAtMjVweDtcclxuXHRcdFx0XHRAaW5jbHVkZSBhbmltYXRpb24oKTtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdCY6aG92ZXIge1xyXG5cdFx0XHQuc2xpY2stYXJyb3cge1xyXG5cdFx0XHRcdG9wYWNpdHk6IDEgIWltcG9ydGFudDtcclxuXHRcdFx0XHRkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc2xpY2staW5pdGlhbGl6ZWQgLnNsaWNrLXNsaWRlIHtcclxuXHQgICAgZmxvYXQ6IG5vbmU7XHJcblx0ICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuXHR9XHJcbn0iLCIjZm9jdXMge1xyXG5cclxuXHQuc3RyaXBlX3BhdHRlcm4ge1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9ncmF5LXN0cmlwZS5wbmcpIHRvcCBsZWZ0IHJlcGVhdDtcclxuXHJcblx0XHRwYWRkaW5nOiAzMHB4IDAgMTVweCAwO1xyXG5cclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG5cdFx0XHRwYWRkaW5nOiA4MHB4IDAgMjBweCAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmZvY3VzX2xpc3Qge1xyXG5cdFx0bGlzdC1zdHlsZTogbm9uZTtcclxuXHRcdG1hcmdpbjogMDtcclxuXHRcdHBhZGRpbmc6IDA7XHJcblx0ICAgIG1hcmdpbi10b3A6IDEuMnJlbTtcclxuXHRcdGZsb2F0OiBsZWZ0O1xyXG5cclxuXHRcdGxpIHtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRtYXJnaW46IDAgMCAxNXB4IDA7XHJcblxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogNzAwcHgpIHtcclxuXHRcdFx0XHR3aWR0aDogY2FsYygxMDAlIC8gMiAtIDE1cHgpO1xyXG5cdFx0XHRcdG1hcmdpbjogMCAwIDMwcHggMDtcclxuXHJcblx0XHRcdFx0JjpudGgtY2hpbGQob2RkKSB7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgMzBweCAzMHB4IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHRAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuXHRcdFx0XHR3aWR0aDogY2FsYygxMDAlIC8gMiAtIDE1cHgpO1xyXG5cdFx0XHRcdG1hcmdpbjogMCAwIDMwcHggMDtcclxuXHJcblx0XHRcdFx0JjpudGgtY2hpbGQob2RkKSB7XHJcblx0XHRcdFx0XHRtYXJnaW46IDAgMzBweCAzMHB4IDA7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuaW5uZXIge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDIwcHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogI2ZmZjtcclxuXHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAjZTllOWU5O1xyXG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDVweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDEwMCU7XHJcblxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG5cdFx0XHRcdFx0cGFkZGluZzogNjBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHJcblx0XHRcdGltZyB7XHJcblx0XHRcdFx0d2lkdGg6IDEwMHB4O1xyXG5cdFx0XHRcdGhlaWdodDogMTAwcHg7XHJcblxyXG5cdFx0XHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikge1xyXG5cdFx0XHRcdFx0d2lkdGg6IDE2MHB4O1xyXG5cdFx0XHRcdFx0aGVpZ2h0OiAxNjBweDtcclxuXHRcdFx0XHR9XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIjbGVhZGVyc2hpcCB7XHJcblx0aW1nIHtcclxuXHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcclxuXHQgICAgbWFyZ2luLXRvcDogMS4ycmVtO1xyXG5cdCAgICB3aWR0aDogMTYwcHg7XHJcbiAgICBcdGhlaWdodDogMTYwcHg7XHJcblxyXG5cdCAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcclxuXHQgICAgXHR3aWR0aDogMjA2cHg7XHJcblx0ICAgIFx0aGVpZ2h0OiAyMDZweDtcclxuXHQgICAgfVxyXG5cdH1cclxuXHJcblx0QG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XHJcblx0XHRwIHtcclxuXHRcdFx0Ji5kZXRhaWwge1xyXG5cdFx0XHRcdGxpbmUtaGVpZ2h0OiAxLjc7XHJcblx0XHRcdH1cclxuXHRcdH1cclxuXHR9XHJcbn0iLCIjY3RhX3N0cmlwIHtcclxuXHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0Y29sb3I6ICNmZmY7XHJcblx0YmFja2dyb3VuZDogcmdiYSgyNTMsMTU1LDQzLDEpO1xyXG5cdGJhY2tncm91bmQ6IC1tb3otcmFkaWFsLWdyYWRpZW50KGNlbnRlciwgZWxsaXBzZSBjb3ZlciwgcmdiYSgyNTMsMTU1LDQzLDEpIDAlLCByZ2JhKDIyMCwxMzQsMzYsMSkgMTAwJSk7XHJcblx0YmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChyYWRpYWwsIGNlbnRlciBjZW50ZXIsIDBweCwgY2VudGVyIGNlbnRlciwgMTAwJSwgY29sb3Itc3RvcCgwJSwgcmdiYSgyNTMsMTU1LDQzLDEpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKDIyMCwxMzQsMzYsMSkpKTtcclxuXHRiYWNrZ3JvdW5kOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsIHJnYmEoMjUzLDE1NSw0MywxKSAwJSwgcmdiYSgyMjAsMTM0LDM2LDEpIDEwMCUpO1xyXG5cdGJhY2tncm91bmQ6IC1vLXJhZGlhbC1ncmFkaWVudChjZW50ZXIsIGVsbGlwc2UgY292ZXIsIHJnYmEoMjUzLDE1NSw0MywxKSAwJSwgcmdiYSgyMjAsMTM0LDM2LDEpIDEwMCUpO1xyXG5cdGJhY2tncm91bmQ6IC1tcy1yYWRpYWwtZ3JhZGllbnQoY2VudGVyLCBlbGxpcHNlIGNvdmVyLCByZ2JhKDI1MywxNTUsNDMsMSkgMCUsIHJnYmEoMjIwLDEzNCwzNiwxKSAxMDAlKTtcclxuXHRiYWNrZ3JvdW5kOiByYWRpYWwtZ3JhZGllbnQoZWxsaXBzZSBhdCBjZW50ZXIsIHJnYmEoMjUzLDE1NSw0MywxKSAwJSwgcmdiYSgyMjAsMTM0LDM2LDEpIDEwMCUpO1xyXG5cdGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KCBzdGFydENvbG9yc3RyPScjZmQ5YjJiJywgZW5kQ29sb3JzdHI9JyNkYzg2MjQnLCBHcmFkaWVudFR5cGU9MSApO1xyXG5cclxuXHQuc3RyaXBlX3BhdHRlcm4ge1xyXG5cdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9ncmF5LXN0cmlwZS5wbmcpIHRvcCBsZWZ0IHJlcGVhdDtcclxuXHR9XHJcblx0XHJcblx0LmNvbnRhaW5lciB7XHJcblx0XHRwYWRkaW5nLXRvcDogNDBweDtcclxuXHRcdHBhZGRpbmctYm90dG9tOiA0MHB4O1xyXG5cclxuXHRcdEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xyXG5cdFx0XHRwYWRkaW5nLXRvcDogODBweDtcclxuXHRcdFx0cGFkZGluZy1ib3R0b206IDgwcHg7XHJcblx0XHR9XHJcblxyXG5cdFx0aDIge1xyXG5cdFx0XHRjb2xvcjogI2ZmZjtcclxuXHRcdH1cclxuXHR9XHJcbn0iXX0= */
