@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Open+Sans|Volkhov:700");
/* MAIN COLOR */
/* SECONDARY COLOR */
/* DARK GRAY, REASON WHY IT'S SET TO #333 IS SO YOU CAN DARKEN IT IF NEEDED USING darken($blk, 10%); FOR EXAMPLE. YOU COULD ALSO USE 2 VARIABLES INSTEAD */
/* USE THIS TO SET THE BORDER RADIUS FOR BUTTONS */
* {
  font-family: 'Open Sans', sans-serif;
}

html, body {
  height: 100%;
}

html {
  font-size: 15px;
}

@media screen and (min-width: 320px) {
  html {
    font-size: calc(15px + 7 * ((100vw - 320px) / 1600));
  }
}

@media screen and (min-width: 1920px) {
  html {
    font-size: 22px;
  }
}

p {
  font-size: 1rem;
}

h1 {
  font-size: 2.0736rem;
}

h1 {
  font-size: 25.92px;
}

@media screen and (min-width: 320px) {
  h1 {
    font-size: calc(25.92px + 24.705 * ((100vw - 320px) / 1600));
  }
}

@media screen and (min-width: 1920px) {
  h1 {
    font-size: 50.625px;
  }
}

h2 {
  font-size: 1.728rem;
}

h2 {
  font-size: 25.92px;
}

@media screen and (min-width: 320px) {
  h2 {
    font-size: calc(25.92px + 24.705 * ((100vw - 320px) / 1600));
  }
}

@media screen and (min-width: 1920px) {
  h2 {
    font-size: 50.625px;
  }
}

h3 {
  font-size: 1.44rem;
}

h3 {
  font-size: 21.6px;
}

@media screen and (min-width: 320px) {
  h3 {
    font-size: calc(21.6px + 12.15 * ((100vw - 320px) / 1600));
  }
}

@media screen and (min-width: 1920px) {
  h3 {
    font-size: 33.75px;
  }
}

body {
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}

.flash {
  display: none;
}

q,
blockquote {
  quotes: "“" "”";
}

.navbarFixed {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 999;
}

/* Change autocomplete styles in WebKit */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus input:-webkit-autofill,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  border: 1px solid #0065dd;
  -webkit-text-fill-color: #0065dd;
  -webkit-box-shadow: 0 0 0px 1000px #000 inset;
  transition: background-color 5000s ease-in-out 0s;
}

nav.navbar {
  z-index: 1000;
  border: none;
  border-radius: 0px;
  border-bottom: 4px solid #333;
}

nav.navbar .navbar-nav > li > a {
  text-align: center;
  margin-top: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fafafa;
  background: #333;
  margin-left: 10px;
  border-radius: 20px;
}

@media (max-width: 767px) {
  nav.navbar .navbar-nav > li > a {
    background: transparent;
    color: #333;
    margin-top: 0;
    padding: 6px 0px;
    display: inline-block;
    text-align: center;
  }
}

nav.navbar .navbar-nav > li > a:focus, nav.navbar .navbar-nav > li > a:active {
  background: #333;
  color: #fafafa;
  outline: 0;
}

nav.navbar .navbar-nav > li > a:hover {
  background: #000;
  color: #fafafa;
}

@media (max-width: 1024px) {
  nav.navbar .navbar-nav > li > a:hover {
    background: transparent;
    color: #333;
    outline: 0;
  }
}

.navbar-right {
  margin-top: 0px;
}

.navbar-toggle {
  margin: 20px 15px 8px 0px;
  border: 1px solid transparent;
  border-radius: 4px;
}

/** LOGIN FORM **/
.btn-default {
  border: none;
  border-radius: 0px;
  background: #000;
  color: #fafafa;
  padding: 0.5em 2em;
  font-size: 1.25em;
  font-weight: bold;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  display: inline-block;
  margin: 2em 0em;
  transition: 0.7s ease all;
}

.btn-default:hover {
  background: #1a1a1a;
  color: white;
  text-decoration: none;
}

@media (max-width: 1024px) {
  .btn-default:hover {
    background: #007999;
    color: #fafafa;
    box-shadow: 0px 0px 5px #333;
  }
}

.modal-dialog {
  max-width: 500px;
  width: 100%;
  text-align: center;
  margin: 6em auto;
}

.modal-dialog .close {
  display: none;
}

.modal-dialog .modal-content {
  color: #000;
}

.modal-dialog .modal-content h2 {
  text-align: center;
  font-size: 25px;
}

.modal-dialog a.btn, .modal-dialog a.btn-default, .modal-dialog button {
  border: none;
  border-radius: 0px;
  background: #000;
  color: #fafafa;
  padding: 0.5em 2em;
  font-size: 1.25em;
  font-weight: bold;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 1px;
  display: inline-block;
  margin: 2em 0em;
  transition: 0.7s ease all;
  margin: 0;
  display: block;
}

.modal-dialog a.btn:hover, .modal-dialog a.btn-default:hover, .modal-dialog button:hover {
  background: #1a1a1a;
  color: white;
  text-decoration: none;
}

@media (max-width: 1024px) {
  .modal-dialog a.btn:hover, .modal-dialog a.btn-default:hover, .modal-dialog button:hover {
    background: #007999;
    color: #fafafa;
    box-shadow: 0px 0px 5px #333;
  }
}

.modal-header, .modal-footer {
  background: #000;
  color: #fafafa;
}

.modal-open {
  overflow: auto;
  padding-right: 0px !important;
}

/** END LOGIN FORM **/
footer {
  padding: 50px 0px 20px;
  background: #000;
  color: #fafafa;
  font-size: 15px;
}

footer a {
  color: #fafafa;
  white-space: nowrap;
  font-size: 15px;
}

@media (max-width: 990px) {
  footer a {
    font-size: 13px;
  }
}

footer a:hover {
  color: white;
  outline: 0 !important;
  text-decoration: none;
}

footer a:focus {
  color: #fafafa;
  outline: 0 !important;
  text-decoration: none;
}

footer p {
  font-size: 15px;
}

@media (max-width: 990px) {
  footer p {
    font-size: 13px;
  }
}

input#username,
input#password {
  width: 100%;
}

@media (max-width: 1024px) {
  input#username,
  input#password {
    font-size: 16px;
  }
}

select {
  -moz-appearance: none;
  text-indent: 0.01px;
  text-overflow: '';
}

a,
a:hover,
a:focus,
a:active {
  outline: 0 !important;
}

.logo {
  max-width: 250px;
  padding: 0.5em;
}

@media (max-width: 767px) {
  .logo {
    max-width: 175px;
  }
  .navbar-header a {
    float: left;
  }
}

@media (max-width: 600px) {
  .logo {
    max-width: 125px;
  }
  .navbar-toggle {
    margin-top: 5px;
  }
}

.top-pad {
  padding: 3em;
  background: white;
}

@media (max-width: 990px) {
  .top-pad {
    padding: 1em;
  }
}

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (max-width: 1024px) {
  .flex {
    display: block;
    /* may need to be inline-block */
  }
}

.terms p,
.privacy p {
  font-size: 1rem;
}

.terms ol li,
.privacy ol li {
  font-size: 1rem;
}

.terms ol ol li,
.privacy ol ol li {
  font-size: 0.85rem;
}

/* SLIDESHOW */
.untitled {
  position: relative;
  overflow: hidden;
  height: 100%;
  width: 100%;
  overflow: hidden;
  -webkit-animation: rotateHue infinite 20s linear;
          animation: rotateHue infinite 20s linear;
  -webkit-animation-delay: 0.625s;
          animation-delay: 0.625s;
}

@-webkit-keyframes rotateHue {
  0% {
    -webkit-filter: hue-rotate(0deg);
            filter: hue-rotate(0deg);
  }
  20% {
    -webkit-filter: hue-rotate(0deg);
            filter: hue-rotate(0deg);
  }
  25% {
    -webkit-filter: hue-rotate(90deg);
            filter: hue-rotate(90deg);
  }
  45% {
    -webkit-filter: hue-rotate(90deg);
            filter: hue-rotate(90deg);
  }
  50% {
    -webkit-filter: hue-rotate(180deg);
            filter: hue-rotate(180deg);
  }
  70% {
    -webkit-filter: hue-rotate(180deg);
            filter: hue-rotate(180deg);
  }
  75% {
    -webkit-filter: hue-rotate(270deg);
            filter: hue-rotate(270deg);
  }
  95% {
    -webkit-filter: hue-rotate(270deg);
            filter: hue-rotate(270deg);
  }
  100% {
    -webkit-filter: hue-rotate(360deg);
            filter: hue-rotate(360deg);
  }
}

@keyframes rotateHue {
  0% {
    -webkit-filter: hue-rotate(0deg);
            filter: hue-rotate(0deg);
  }
  20% {
    -webkit-filter: hue-rotate(0deg);
            filter: hue-rotate(0deg);
  }
  25% {
    -webkit-filter: hue-rotate(90deg);
            filter: hue-rotate(90deg);
  }
  45% {
    -webkit-filter: hue-rotate(90deg);
            filter: hue-rotate(90deg);
  }
  50% {
    -webkit-filter: hue-rotate(180deg);
            filter: hue-rotate(180deg);
  }
  70% {
    -webkit-filter: hue-rotate(180deg);
            filter: hue-rotate(180deg);
  }
  75% {
    -webkit-filter: hue-rotate(270deg);
            filter: hue-rotate(270deg);
  }
  95% {
    -webkit-filter: hue-rotate(270deg);
            filter: hue-rotate(270deg);
  }
  100% {
    -webkit-filter: hue-rotate(360deg);
            filter: hue-rotate(360deg);
  }
}

.untitled__shutters {
  position: relative;
  height: 150vmax;
  width: 150vmax;
  overflow: hidden;
  left: calc(50% - 75vmax);
  top: calc(50% - 75vmax);
  overflow: hidden;
  pointer-events: none;
  z-index: 2;
  -webkit-animation: rotateFrame 10s linear infinite;
          animation: rotateFrame 10s linear infinite;
}

@-webkit-keyframes rotateFrame {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
}

@keyframes rotateFrame {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
}

.untitled__shutters:before, .untitled__shutters:after {
  content: '';
  position: absolute;
  height: 100%;
  width: 100%;
  left: 50%;
  -webkit-transform: translate3d(-50%, 0, 0);
          transform: translate3d(-50%, 0, 0);
  background-color: #b3401a;
  pointer-events: auto;
}

.untitled__shutters:before {
  bottom: 50%;
  -webkit-animation: openTop 5s infinite;
          animation: openTop 5s infinite;
}

@-webkit-keyframes openTop {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
            animation-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
  }
  40% {
    -webkit-transform: translate3d(-50%, -65vmax, 0);
            transform: translate3d(-50%, -65vmax, 0);
    animation-timing-functon: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
  70% {
    -webkit-transform: translate3d(-50%, -65vmax, 0);
            transform: translate3d(-50%, -65vmax, 0);
    animation-timing-functon: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
  100% {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
            animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
}

@keyframes openTop {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
            animation-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
  }
  40% {
    -webkit-transform: translate3d(-50%, -65vmax, 0);
            transform: translate3d(-50%, -65vmax, 0);
    animation-timing-functon: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
  70% {
    -webkit-transform: translate3d(-50%, -65vmax, 0);
            transform: translate3d(-50%, -65vmax, 0);
    animation-timing-functon: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
  100% {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
            animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
}

.untitled__shutters:after {
  top: 50%;
  -webkit-animation: openBottom 5s infinite;
          animation: openBottom 5s infinite;
}

@-webkit-keyframes openBottom {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
            animation-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
  }
  40% {
    -webkit-transform: translate3d(-50%, 65vmax, 0);
            transform: translate3d(-50%, 65vmax, 0);
    animation-timing-functon: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
  70% {
    -webkit-transform: translate3d(-50%, 65vmax, 0);
            transform: translate3d(-50%, 65vmax, 0);
    animation-timing-functon: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
  100% {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
            animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
}

@keyframes openBottom {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
            animation-timing-function: cubic-bezier(0.8, 0, 0.1, 1);
  }
  40% {
    -webkit-transform: translate3d(-50%, 65vmax, 0);
            transform: translate3d(-50%, 65vmax, 0);
    animation-timing-functon: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
  70% {
    -webkit-transform: translate3d(-50%, 65vmax, 0);
            transform: translate3d(-50%, 65vmax, 0);
    animation-timing-functon: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
  100% {
    -webkit-transform: translate3d(-50%, 0, 0);
            transform: translate3d(-50%, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
            animation-timing-function: cubic-bezier(0.6, 0.04, 0.98, 0.335);
  }
}

.untitled__slides {
  position: absolute;
  overflow: hidden;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: #b3401a;
}

.untitled__slide {
  position: absolute;
  height: 100%;
  width: 100%;
  opacity: 0;
  -webkit-animation: showHideSlide infinite 20s steps(1);
          animation: showHideSlide infinite 20s steps(1);
}

@-webkit-keyframes showHideSlide {
  0% {
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
  }
  25% {
    opacity: 0;
    pointer-events: none;
    z-index: -1;
  }
  100% {
    opacity: 0;
    pointer-events: none;
    z-index: -1;
  }
}

@keyframes showHideSlide {
  0% {
    opacity: 1;
    pointer-events: auto;
    z-index: 1;
  }
  25% {
    opacity: 0;
    pointer-events: none;
    z-index: -1;
  }
  100% {
    opacity: 0;
    pointer-events: none;
    z-index: -1;
  }
}

.untitled__slide:nth-child(1) {
  -webkit-animation-delay: 0s;
          animation-delay: 0s;
}

.untitled__slide:nth-child(1) .untitled__slideBg {
  background-image: url(../img/slide1.jpg);
}

.untitled__slide:nth-child(2) {
  -webkit-animation-delay: 5s;
          animation-delay: 5s;
}

.untitled__slide:nth-child(2) .untitled__slideBg {
  background-image: url(../img/slide2.jpg);
}

.untitled__slide:nth-child(3) {
  -webkit-animation-delay: 10s;
          animation-delay: 10s;
}

.untitled__slide:nth-child(3) .untitled__slideBg {
  background-image: url(../img/slide3.jpg);
}

.untitled__slide:nth-child(4) {
  -webkit-animation-delay: 15s;
          animation-delay: 15s;
}

.untitled__slide:nth-child(4) .untitled__slideBg {
  background-image: url(../img/slide4.jpg);
}

.untitled__slideBg {
  position: relative;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center;
  background-color: #b3401a;
  background-blend-mode: hard-light;
  opacity: 1;
  z-index: -1;
  -webkit-animation: bgInOut 5s infinite;
          animation: bgInOut 5s infinite;
}

@-webkit-keyframes bgInOut {
  0% {
    -webkit-transform: rotate(-45deg) scale(1.1);
            transform: rotate(-45deg) scale(1.1);
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
            animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  33% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  66% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-animation-timing-function: cubic-bezier(0.895, 0.03, 0.685, 0.22);
            animation-timing-function: cubic-bezier(0.895, 0.03, 0.685, 0.22);
  }
  100% {
    -webkit-transform: rotate(45deg) scale(0.9);
            transform: rotate(45deg) scale(0.9);
  }
}

@keyframes bgInOut {
  0% {
    -webkit-transform: rotate(-45deg) scale(1.1);
            transform: rotate(-45deg) scale(1.1);
    -webkit-animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
            animation-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  33% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  66% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-animation-timing-function: cubic-bezier(0.895, 0.03, 0.685, 0.22);
            animation-timing-function: cubic-bezier(0.895, 0.03, 0.685, 0.22);
  }
  100% {
    -webkit-transform: rotate(45deg) scale(0.9);
            transform: rotate(45deg) scale(0.9);
  }
}

.untitled__slideContent {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0);
  color: white;
  font-family: "Abril Fatface", sans-serif;
  line-height: 0.8;
  letter-spacing: -0.025em;
  z-index: 2;
  opacity: 1;
  text-shadow: 0 0 0.5em rgba(179, 64, 26, 0.25);
  mix-blend-mode: lighten;
}

.untitled__slideContent span {
  display: block;
  font-size: 15vmin;
}

.button {
  font-family: 'Roboto Mono', sans-serif;
  text-decoration: none;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 2vmin;
  display: inline-block;
  position: relative;
  border: 3px solid white;
  box-shadow: -0.5vmin 0.5vmin 0 rgba(255, 255, 255, 0.5);
  background: transparent;
  margin-top: 5vmin;
  mix-blend-mode: lighten;
  color: white;
  padding: 2vmin 2vmin 1.8vmin 2vmin;
  letter-spacing: 0.1em;
  text-shadow: none;
  line-height: 1;
  -webkit-transform: translate3d(0.5vmin, -0.5vmin, 0);
          transform: translate3d(0.5vmin, -0.5vmin, 0);
  transition: all 100ms linear;
}

.button:hover {
  -webkit-transform: translate3d(1vmin, -1vmin, 0);
          transform: translate3d(1vmin, -1vmin, 0);
  box-shadow: -1vmin 1vmin 0 rgba(255, 255, 255, 0.5);
  background: white;
  color: black;
}

.button:active {
  -webkit-transform: translate3d(0px, 0px, 0);
          transform: translate3d(0px, 0px, 0);
  box-shadow: 0px 0px 0 rgba(255, 255, 255, 0.5);
}

/* END OF SLIDESHOW */
.section-a {
  background: #333;
  color: #fafafa;
  padding: 75px 0;
}

.sectTitle {
  font-weight: 700;
}

.aboutTxt {
  font-size: 14px;
}

@media screen and (min-width: 320px) {
  .aboutTxt {
    font-size: calc(14px + 4 * ((100vw - 320px) / 1600));
  }
}

@media screen and (min-width: 1920px) {
  .aboutTxt {
    font-size: 18px;
  }
}

hr {
  border-bottom: 5px solid #000;
  width: 10%;
}

.servTitle {
  font-weight: 700;
  text-align: center;
}

.servTitle {
  font-size: 24px;
}

@media screen and (min-width: 320px) {
  .servTitle {
    font-size: calc(24px + 4 * ((100vw - 320px) / 1600));
  }
}

@media screen and (min-width: 1920px) {
  .servTitle {
    font-size: 28px;
  }
}

.servTxt {
  text-align: center;
}

.servTxt {
  font-size: 14px;
}

@media screen and (min-width: 320px) {
  .servTxt {
    font-size: calc(14px + 4 * ((100vw - 320px) / 1600));
  }
}

@media screen and (min-width: 1920px) {
  .servTxt {
    font-size: 18px;
  }
}

.pad {
  padding: 75px 0;
}

.item {
  padding: 35px 15px 35px 15px;
  border-radius: 5px;
  height: 350px;
  transition: all ease 0.5s 0s;
  margin-top: 10px;
}

.item:hover {
  background-color: #fff;
  padding: 35px 15px 35px 15px;
  box-shadow: 0px 5px 25px 0px rgba(204, 204, 204, 0.55);
  cursor: pointer;
}

.center {
  display: block;
  margin: 0 auto;
}

.contact {
  background: url("../img/contact-bg.jpg");
  background-position: center center;
  padding: 100px 0;
  color: #fafafa;
}

.row {
  margin-left: 0;
  margin-right: 0;
}

.backing {
  background: rgba(0, 0, 0, 0.7);
}

.backing a {
  color: #fafafa;
  text-decoration: none;
}

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsIm1vZHVsZXMvcmVzcG9uc2l2ZS10eXBlLnNjc3MiXSwic291cmNlc0NvbnRlbnQiOlsiQGltcG9ydCBcIm1vZHVsZXMvcmVzcG9uc2l2ZS10eXBlLnNjc3NcIjtcclxuQGltcG9ydCB1cmwoJ2h0dHBzOi8vZm9udHMuZ29vZ2xlYXBpcy5jb20vY3NzP2ZhbWlseT1PcGVuK1NhbnN8Vm9sa2hvdjo3MDAnKTtcclxuXHJcbiRwcmltYXJ5OiAjMDAwOy8qIE1BSU4gQ09MT1IgKi9cclxuJHNlY29uZGFyeTogIzAwNzk5OTsgLyogU0VDT05EQVJZIENPTE9SICovXHJcbiRibGs6ICMzMzM7IC8qIERBUksgR1JBWSwgUkVBU09OIFdIWSBJVCdTIFNFVCBUTyAjMzMzIElTIFNPIFlPVSBDQU4gREFSS0VOIElUIElGIE5FRURFRCBVU0lORyBkYXJrZW4oJGJsaywgMTAlKTsgRk9SIEVYQU1QTEUuIFlPVSBDT1VMRCBBTFNPIFVTRSAyIFZBUklBQkxFUyBJTlNURUFEICovXHJcbiR3aHQ6ICNmYWZhZmE7XHJcbiRib3JkZXItcmFkaXVzOiAwcHg7IC8qIFVTRSBUSElTIFRPIFNFVCBUSEUgQk9SREVSIFJBRElVUyBGT1IgQlVUVE9OUyAqL1xyXG4kZm9vdGVyTGlua3M6ICNmYWZhZmE7XHJcblxyXG4vLyBTZXQgeW91ciBtYXhpbXVtIGFuZCBtaW5pbXVtIHNjcmVlbiBzaXplcy5cclxuJG1pbl93aWR0aDogMzIwcHg7XHJcbiRtYXhfd2lkdGg6IDE5MjBweDtcclxuXHJcbi8vIEZvbnQgc2l6ZXMgd2lsbCByYW5nZSBiZXR3ZWVuIHRoZSAkbWluX2ZvbnQgYW5kICRtYXhfZm9udC5cclxuJG1pbl9mb250OiAxNXB4O1xyXG4kbWF4X2ZvbnQ6IDIycHg7XHJcblxyXG4vLyBDaGFuZ2UgdGhlc2UgdmFsdWVzIHRvIGNoYW5nZSB0aGUgXCJzY2FsZVwiIGJldHdlZW4gZGlmZmVyZW50IGhlYWRlcnNcclxuLy8gKGgxLGgyLGgzLCBldGMuKS4gTGFyZ2VyIG51bWJlcnMgPSBsYXJnZXIgZm9udC1zaXplcy4gXHJcblxyXG4kbW9kXzE6IDEuMjsgLy8gbW9iaWxlXHJcbiRtb2RfMjogMS41OyAvLyBkZXNrdG9wXHJcblxyXG4qIHtcclxuICAgIGZvbnQtZmFtaWx5OiAnT3BlbiBTYW5zJywgc2Fucy1zZXJpZjtcclxufVxyXG5cclxuaHRtbCwgYm9keSB7XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbn1cclxuXHJcbmh0bWwge1xyXG4gIEBpbmNsdWRlIGZsdWlkLXR5cGUoJG1pbl93aWR0aCwgJG1heF93aWR0aCwgJG1pbl9mb250LCAkbWF4X2ZvbnQpO1xyXG59XHJcblxyXG5wIHtcclxuICAgIGZvbnQtc2l6ZTogMXJlbTtcclxufVxyXG5cclxuaDEgeyAgXHJcbiAgZm9udC1zaXplOiAkbW9kXzEqJG1vZF8xKiRtb2RfMSokbW9kXzEgKjFyZW07IFxyXG4gIEBpbmNsdWRlIGZsdWlkLXR5cGUoJG1pbl93aWR0aCwgJG1heF93aWR0aCwgJG1vZF8xKiRtb2RfMSokbW9kXzEgKiRtaW5fZm9udCwgJG1vZF8yKiRtb2RfMiokbW9kXzIgKiRtaW5fZm9udCk7XHJcbn1cclxuaDIgeyAgXHJcbiAgZm9udC1zaXplOiAkbW9kXzEqJG1vZF8xKiRtb2RfMSAqMXJlbTsgXHJcbiAgQGluY2x1ZGUgZmx1aWQtdHlwZSgkbWluX3dpZHRoLCAkbWF4X3dpZHRoLCAkbW9kXzEqJG1vZF8xKiRtb2RfMSAqJG1pbl9mb250LCAkbW9kXzIqJG1vZF8yKiRtb2RfMiAqJG1pbl9mb250KTtcclxufVxyXG5oMyB7IFxyXG4gIGZvbnQtc2l6ZTogJG1vZF8xKiRtb2RfMSAqMXJlbTtcclxuICBAaW5jbHVkZSBmbHVpZC10eXBlKCRtaW5fd2lkdGgsICRtYXhfd2lkdGgsICRtb2RfMSokbW9kXzEgKiRtaW5fZm9udCwgJG1vZF8yKiRtb2RfMiAqJG1pbl9mb250KTtcclxufVxyXG5cclxuYm9keSB7XHJcbiAgICBvdmVyZmxvdy15OiBzY3JvbGw7XHJcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XHJcbn1cclxuXHJcbi5mbGFzaCB7XHJcbiAgICBkaXNwbGF5OiBub25lO1xyXG59XHJcblxyXG5xLFxyXG5ibG9ja3F1b3RlIHtcclxuICAgIHF1b3RlczogXCLigJxcIiBcIuKAnVwiO1xyXG59IFxyXG5cclxuLm5hdmJhckZpeGVkIHtcclxuICAgIHBvc2l0aW9uOiBmaXhlZDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdG9wOiAwO1xyXG4gICAgei1pbmRleDogOTk5O1xyXG59XHJcblxyXG4vKiBDaGFuZ2UgYXV0b2NvbXBsZXRlIHN0eWxlcyBpbiBXZWJLaXQgKi9cclxuXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGwsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6aG92ZXIsXHJcbmlucHV0Oi13ZWJraXQtYXV0b2ZpbGw6Zm9jdXMgaW5wdXQ6LXdlYmtpdC1hdXRvZmlsbCxcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbCxcclxudGV4dGFyZWE6LXdlYmtpdC1hdXRvZmlsbDpob3ZlciB0ZXh0YXJlYTotd2Via2l0LWF1dG9maWxsOmZvY3VzLFxyXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbCwgXHJcbnNlbGVjdDotd2Via2l0LWF1dG9maWxsOmhvdmVyLFxyXG5zZWxlY3Q6LXdlYmtpdC1hdXRvZmlsbDpmb2N1cyB7XHJcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjMDA2NWRkO1xyXG4gICAgLXdlYmtpdC10ZXh0LWZpbGwtY29sb3I6ICMwMDY1ZGQ7XHJcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IDAgMCAwcHggMTAwMHB4ICMwMDAgaW5zZXQ7XHJcbiAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWNvbG9yIDUwMDBzIGVhc2UtaW4tb3V0IDBzO1xyXG59XHJcblxyXG5uYXYubmF2YmFyIHtcclxuICAgIHotaW5kZXg6IDEwMDA7XHJcbiAgICBib3JkZXI6IG5vbmU7XHJcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcclxuICAgIGJvcmRlci1ib3R0b206IDRweCBzb2xpZCAkYmxrO1xyXG5cclxuICAgIC5uYXZiYXItbmF2IHtcclxuICAgICAgICA+bGk+YSB7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcclxuICAgICAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcclxuICAgICAgICAgICAgY29sb3I6ICR3aHQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6ICRibGs7XHJcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMHB4O1xyXG4gICAgICAgICAgICBib3JkZXItcmFkaXVzOiAyMHB4O1xyXG4gICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICRibGs7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzogNnB4IDBweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAmOmZvY3VzLFxyXG4gICAgICAgICAgICAmOmFjdGl2ZSB7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkYmxrO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICR3aHQ7XHJcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXIge1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHByaW1hcnk7XHJcbiAgICAgICAgICAgICAgICBjb2xvcjogJHdodDtcclxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJGJsaztcclxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lOiAwO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4ubmF2YmFyLXJpZ2h0IHtcclxuICAgIG1hcmdpbi10b3A6IDBweDtcclxufVxyXG5cclxuLm5hdmJhci10b2dnbGUge1xyXG4gICAgbWFyZ2luOiAyMHB4IDE1cHggOHB4IDBweDtcclxuICAgIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xyXG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xyXG59XHJcblxyXG5cclxuLyoqIExPR0lOIEZPUk0gKiovXHJcblxyXG5AbWl4aW4gYnRuIHtcclxuICAgIGJvcmRlcjogbm9uZTtcclxuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xyXG4gICAgYmFja2dyb3VuZDogJHByaW1hcnk7XHJcbiAgICBjb2xvcjogJHdodDtcclxuICAgIHBhZGRpbmc6IDAuNWVtIDJlbTtcclxuICAgIGZvbnQtc2l6ZTogMS4yNWVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDFweDtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIG1hcmdpbjogMmVtIDBlbTtcclxuICAgIHRyYW5zaXRpb246IDAuN3MgZWFzZSBhbGw7XHJcbiAgICAmOmhvdmVyIHtcclxuICAgICAgICBiYWNrZ3JvdW5kOiBsaWdodGVuKCRwcmltYXJ5LCAxMCUpO1xyXG4gICAgICAgIGNvbG9yOiBsaWdodGVuKCR3aHQsIDEwJSk7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogJHNlY29uZGFyeTtcclxuICAgICAgICAgICAgY29sb3I6ICR3aHQ7XHJcbiAgICAgICAgICAgIGJveC1zaGFkb3c6IDBweCAwcHggNXB4ICRibGs7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uYnRuLWRlZmF1bHQge1xyXG4gICAgQGluY2x1ZGUgYnRuO1xyXG59XHJcbi5tb2RhbC1kaWFsb2cge1xyXG4gICAgbWF4LXdpZHRoOiA1MDBweDtcclxuICAgIHdpZHRoOiAxMDAlO1xyXG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgbWFyZ2luOiA2ZW0gYXV0bztcclxuXHJcbiAgICAuY2xvc2Uge2Rpc3BsYXk6IG5vbmU7fVxyXG5cclxuICAgIC5tb2RhbC1jb250ZW50IHtcclxuICAgICAgICBjb2xvcjogJHByaW1hcnk7XHJcblxyXG4gICAgICAgIGgyIHtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjVweDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgYS5idG4sIGEuYnRuLWRlZmF1bHQsIGJ1dHRvbiB7XHJcbiAgICAgICAgQGluY2x1ZGUgYnRuXHJcbiAgICAgICAgbWFyZ2luOiAwO1xyXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgfVxyXG59XHJcblxyXG4ubW9kYWwtaGVhZGVyLCAubW9kYWwtZm9vdGVyIHtcclxuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xyXG4gICAgY29sb3I6ICR3aHQ7XHJcbn1cclxuXHJcbi5tb2RhbC1vcGVuIHtcclxuICBvdmVyZmxvdzogYXV0bztcclxuICBwYWRkaW5nLXJpZ2h0OiAwcHggIWltcG9ydGFudDtcclxufVxyXG5cclxuXHJcblxyXG4vKiogRU5EIExPR0lOIEZPUk0gKiovXHJcblxyXG5mb290ZXIge1xyXG4gICAgcGFkZGluZzogNTBweCAwcHggMjBweDtcclxuICAgIGJhY2tncm91bmQ6ICRwcmltYXJ5O1xyXG4gICAgY29sb3I6ICRmb290ZXJMaW5rcztcclxuICAgIGZvbnQtc2l6ZTogMTVweDtcclxuICAgIGEge1xyXG4gICAgICAgIGNvbG9yOiAkZm9vdGVyTGlua3M7XHJcbiAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcclxuICAgICAgICBmb250LXNpemU6IDE1cHg7XHJcbiAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6IDk5MHB4KSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpob3ZlciB7XHJcbiAgICAgICAgICAgIGNvbG9yOiBsaWdodGVuKCRmb290ZXJMaW5rcywgMTAlKTtcclxuICAgICAgICAgICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6Zm9jdXMge1xyXG4gICAgICAgICAgICBjb2xvcjogJHdodDtcclxuICAgICAgICAgICAgb3V0bGluZTogMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xyXG4gICAgICAgIEBtZWRpYSAobWF4LXdpZHRoOiA5OTBweCkge1xyXG4gICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5pbnB1dCN1c2VybmFtZSxcclxuaW5wdXQjcGFzc3dvcmQge1xyXG4gICAgd2lkdGg6IDEwMCU7XHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogMTAyNHB4KSB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxNnB4O1xyXG4gICAgfVxyXG59XHJcblxyXG5zZWxlY3Qge1xyXG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG4gICAgdGV4dC1pbmRlbnQ6IDAuMDFweDtcclxuICAgIHRleHQtb3ZlcmZsb3c6ICcnO1xyXG59XHJcblxyXG5hLFxyXG5hOmhvdmVyLFxyXG5hOmZvY3VzLFxyXG5hOmFjdGl2ZSB7XHJcbiAgICBvdXRsaW5lOiAwICFpbXBvcnRhbnQ7XHJcbn1cclxuXHJcbi5sb2dvIHtcclxuICAgIG1heC13aWR0aDogMjUwcHg7XHJcbiAgICBwYWRkaW5nOiAwLjVlbTtcclxufVxyXG5cclxuQG1lZGlhKG1heC13aWR0aDogNzY3cHgpIHtcclxuICAgIC5sb2dvIHtcclxuICAgICAgICBtYXgtd2lkdGg6IDE3NXB4O1xyXG4gICAgfVxyXG4gICAgLm5hdmJhci1oZWFkZXIgYSB7XHJcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiA2MDBweCkge1xyXG4gICAgLmxvZ28ge1xyXG4gICAgICAgIG1heC13aWR0aDogMTI1cHg7XHJcbiAgICB9XHJcbiAgICAubmF2YmFyLXRvZ2dsZSB7XHJcbiAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xyXG4gICAgfVxyXG59XHJcblxyXG4udG9wLXBhZCB7XHJcbiAgICBwYWRkaW5nOiAzZW07XHJcbiAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuXHJcbiAgICBAbWVkaWEgKG1heC13aWR0aDogOTkwcHgpIHtcclxuICAgICAgICBwYWRkaW5nOiAxZW07XHJcbiAgICB9ICAgIFxyXG59XHJcblxyXG4uZmxleCB7XHJcbiAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XHJcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xyXG4gICAgQG1lZGlhICAobWF4LXdpZHRoOiAxMDI0cHgpIHtcclxuICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAvKiBtYXkgbmVlZCB0byBiZSBpbmxpbmUtYmxvY2sgKi8gXHJcbiAgICB9XHJcbn1cclxuXHJcbi50ZXJtcyxcclxuLnByaXZhY3kge1xyXG4gICAgcCB7XHJcbiAgICAgICAgZm9udC1zaXplOiAxcmVtO1xyXG4gICAgfVxyXG4gICAgXHJcbiAgICAmIG9sIHtcclxuICAgICAgICBsaSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMXJlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJiBvbCBsaSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMC44NXJlbTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi8qIFNMSURFU0hPVyAqL1xyXG5cclxuJHQ6IDIuNXM7XHJcbiRlMTogY3ViaWMtYmV6aWVyKDAuOCwgMC4wMCwgMC4xLCAxKTtcclxuJGUyOiBjdWJpYy1iZXppZXIoMC42MDAsIDAuMDQwLCAwLjk4MCwgMC4zMzUpO1xyXG4kZXI6IGxpbmVhcjtcclxuXHJcbiRjb2xvcjogaHNsKDE1LDc1JSw0MCUpO1xyXG4kZm9udDogJ0FicmlsIEZhdGZhY2UnLCBzYW5zLXNlcmlmO1xyXG5cclxuJHNsaWRlczogNDtcclxuJGltYWdlczogdXJsKC4uL2ltZy9zbGlkZTEuanBnKSB1cmwoLi4vaW1nL3NsaWRlMi5qcGcpIHVybCguLi9pbWcvc2xpZGUzLmpwZykgIHVybCguLi9pbWcvc2xpZGU0LmpwZyk7XHJcblxyXG4udW50aXRsZWR7ICBcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICB3aWR0aDogMTAwJTtcclxuICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICBAa2V5ZnJhbWVzIHJvdGF0ZUh1ZSB7XHJcbiAgICAgICAgMCV7IGZpbHRlcjogaHVlLXJvdGF0ZSgwZGVnKTsgfVxyXG4gICAgICAgIDIwJXsgZmlsdGVyOiBodWUtcm90YXRlKDBkZWcpOyB9XHJcbiAgICAgICAgMjUleyBmaWx0ZXI6IGh1ZS1yb3RhdGUoOTBkZWcpOyB9XHJcbiAgICAgICAgNDUleyBmaWx0ZXI6IGh1ZS1yb3RhdGUoOTBkZWcpOyB9XHJcbiAgICAgICAgNTAleyBmaWx0ZXI6IGh1ZS1yb3RhdGUoMTgwZGVnKTsgfVxyXG4gICAgICAgIDcwJXsgZmlsdGVyOiBodWUtcm90YXRlKDE4MGRlZyk7IH1cclxuICAgICAgICA3NSV7IGZpbHRlcjogaHVlLXJvdGF0ZSgyNzBkZWcpOyB9XHJcbiAgICAgICAgOTUleyBmaWx0ZXI6IGh1ZS1yb3RhdGUoMjcwZGVnKTsgfVxyXG4gICAgICAgIDEwMCV7IGZpbHRlcjogaHVlLXJvdGF0ZSgzNjBkZWcpOyB9XHJcbiAgICB9XHJcbiAgICBhbmltYXRpb246IHJvdGF0ZUh1ZSBpbmZpbml0ZSAkdCokc2xpZGVzKjIgbGluZWFyO1xyXG4gICAgYW5pbWF0aW9uLWRlbGF5OiAkdC80O1xyXG4gICAgXHJcbiAgICAmX19zaHV0dGVyc3tcclxuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgaGVpZ2h0OiAxNTB2bWF4O1xyXG4gICAgICAgIHdpZHRoOiAxNTB2bWF4O1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgbGVmdDogY2FsYyg1MCUgLSA3NXZtYXgpO1xyXG4gICAgICAgIHRvcDogY2FsYyg1MCUgLSA3NXZtYXgpO1xyXG4gICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICBAa2V5ZnJhbWVzIHJvdGF0ZUZyYW1le1xyXG4gICAgICAgICAgICAwJXsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxyXG4gICAgICAgICAgICAxMDAleyB0cmFuc2Zvcm06IHJvdGF0ZSgxODBkZWcpO31cclxuICAgICAgICB9XHJcbiAgICAgICAgYW5pbWF0aW9uOiByb3RhdGVGcmFtZSAkdCo0ICRlciBpbmZpbml0ZTtcclxuXHJcbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgIGxlZnQ6IDUwJTtcclxuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwLCAwKTtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgICAgICAgICBwb2ludGVyLWV2ZW50czogYXV0bztcclxuICAgICAgICB9XHJcbiAgICAgICAgJjpiZWZvcmV7XHJcbiAgICAgICAgICAgIGJvdHRvbTogNTAlO1xyXG4gICAgICAgICAgICBAa2V5ZnJhbWVzIG9wZW5Ub3B7XHJcbiAgICAgICAgICAgICAgICAwJXsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCAwLCAwKTsgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJGUxOyB9XHJcbiAgICAgICAgICAgICAgICA0MCV7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTY1dm1heCwgMCk7IGFuaW1hdGlvbi10aW1pbmctZnVuY3RvbjogJGUyOyB9XHJcbiAgICAgICAgICAgICAgICA3MCV7IHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwgLTY1dm1heCwgMCk7IGFuaW1hdGlvbi10aW1pbmctZnVuY3RvbjogJGUyOyB9XHJcbiAgICAgICAgICAgICAgICAxMDAleyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApOyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkZTI7IH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhbmltYXRpb246IG9wZW5Ub3AgJHQqMiBpbmZpbml0ZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgICAgIEBrZXlmcmFtZXMgb3BlbkJvdHRvbXtcclxuICAgICAgICAgICAgICAgIDAleyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApOyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkZTE7IH1cclxuICAgICAgICAgICAgICAgIDQwJXsgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNTAlLCA2NXZtYXgsIDApOyBhbmltYXRpb24tdGltaW5nLWZ1bmN0b246ICRlMjsgfVxyXG4gICAgICAgICAgICAgICAgNzAleyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDY1dm1heCwgMCk7IGFuaW1hdGlvbi10aW1pbmctZnVuY3RvbjogJGUyOyB9XHJcbiAgICAgICAgICAgICAgICAxMDAleyB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01MCUsIDAsIDApOyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkZTI7IH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBhbmltYXRpb246IG9wZW5Cb3R0b20gJHQqMiBpbmZpbml0ZTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBcclxuICAgICZfX3NsaWRlc3tcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcclxuICAgICAgICBoZWlnaHQ6IDEwMCU7XHJcbiAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgdG9wOiAwO1xyXG4gICAgICAgIGxlZnQ6IDA7XHJcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xyXG4gICAgfVxyXG4gICAgJl9fc2xpZGV7XHJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgIEBrZXlmcmFtZXMgc2hvd0hpZGVTbGlkZXtcclxuICAgICAgICAgICAgMCV7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAxOyBcclxuICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBhdXRvO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAjezEwMCUgLyAkc2xpZGVzfXtcclxuICAgICAgICAgICAgICAgIG9wYWNpdHk6IDA7XHJcbiAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IC0xO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIDEwMCV7XHJcbiAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xyXG4gICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBhbmltYXRpb246IHNob3dIaWRlU2xpZGUgaW5maW5pdGUgJHQqJHNsaWRlcyoyIHN0ZXBzKDEpO1xyXG4gICAgICAgIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHNsaWRlc3tcclxuICAgICAgICAgICAgJjpudGgtY2hpbGQoI3skaX0peyBcclxuICAgICAgICAgICAgICAgIGFuaW1hdGlvbi1kZWxheTogJHQgKiAoJGkgLSAxKSAqIDI7XHJcbiAgICAgICAgICAgICAgICAudW50aXRsZWRfX3NsaWRlQmd7XHJcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogbnRoKCRpbWFnZXMsICRpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSAgIFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICZfX3NsaWRlQmd7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICB3aWR0aDogMTAwJTtcclxuICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgbGVmdDogMDtcclxuICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcclxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XHJcbiAgICAgICAgYmFja2dyb3VuZC1ibGVuZC1tb2RlOiBoYXJkLWxpZ2h0O1xyXG4gICAgICAgIG9wYWNpdHk6IDE7XHJcbiAgICAgICAgei1pbmRleDogLTE7XHJcbiAgICAgICAgQGtleWZyYW1lcyBiZ0luT3V0e1xyXG4gICAgICAgICAgICAwJXsgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKSBzY2FsZSgxLjEpOyBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNjUsIDAuODQwLCAwLjQ0MCwgMS4wMDApO31cclxuICAgICAgICAgICAgMzMleyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTt9XHJcbiAgICAgICAgICAgIDUwJXsgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cclxuICAgICAgICAgICAgNjYleyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuODk1LCAwLjAzMCwgMC42ODUsIDAuMjIwKTsgfVxyXG4gICAgICAgICAgICAxMDAleyB0cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZykgc2NhbGUoMC45KTt9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGFuaW1hdGlvbjogYmdJbk91dCAkdCo0IC0kdCoyIGluZmluaXRlOyBcclxuICAgIH1cclxuICAgICZfX3NsaWRlQ29udGVudHtcclxuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgdG9wOiA1MCU7XHJcbiAgICAgICAgbGVmdDogNTAlO1xyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUwJSwtNTAlLDApO1xyXG4gICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICBmb250LWZhbWlseTogJGZvbnQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6IDAuODtcclxuICAgICAgICBsZXR0ZXItc3BhY2luZzogLTAuMDI1ZW07XHJcbiAgICAgICAgei1pbmRleDogMjtcclxuICAgICAgICBvcGFjaXR5OiAxO1xyXG4gICAgICAgIHRleHQtc2hhZG93OiAwIDAgMC41ZW0gcmdiYSgkY29sb3IsMC4yNSk7XHJcbiAgICAgICAgbWl4LWJsZW5kLW1vZGU6IGxpZ2h0ZW47XHJcbiAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTV2bWluO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4uYnV0dG9ue1xyXG4gICAgZm9udC1mYW1pbHk6J1JvYm90byBNb25vJywgc2Fucy1zZXJpZjtcclxuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcclxuICAgIGZvbnQtd2VpZ2h0OiA4MDA7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC1zaXplOiAydm1pbjtcclxuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgIGJvcmRlcjogM3B4IHNvbGlkIHdoaXRlO1xyXG4gICAgYm94LXNoYWRvdzogLTAuNXZtaW4gMC41dm1pbiAwIHJnYmEod2hpdGUsIDAuNSk7XHJcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcclxuICAgIG1hcmdpbi10b3A6IDV2bWluO1xyXG4gICAgbWl4LWJsZW5kLW1vZGU6IGxpZ2h0ZW47XHJcbiAgICBjb2xvcjogd2hpdGU7XHJcbiAgICBwYWRkaW5nOiAydm1pbiAydm1pbiAxLjh2bWluIDJ2bWluO1xyXG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xyXG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XHJcbiAgICBsaW5lLWhlaWdodDogMTtcclxuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMC41dm1pbiwgLTAuNXZtaW4sIDApO1xyXG4gICAgdHJhbnNpdGlvbjogYWxsIDEwMG1zIGxpbmVhcjtcclxuICAgICY6aG92ZXJ7IFxyXG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMXZtaW4sIC0xdm1pbiwgMCk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogLTF2bWluIDF2bWluIDAgcmdiYSh3aGl0ZSwgMC41KTtcclxuICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcclxuICAgICAgICBjb2xvcjogYmxhY2s7XHJcbiAgICB9XHJcbiAgICAmOmFjdGl2ZXsgXHJcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwcHgsIDBweCwgMCk7XHJcbiAgICAgICAgYm94LXNoYWRvdzogLTBweCAwcHggMCByZ2JhKHdoaXRlLCAwLjUpO1xyXG4gICAgfVxyXG59XHJcblxyXG4vKiBFTkQgT0YgU0xJREVTSE9XICovXHJcblxyXG4uc2VjdGlvbi1hIHtcclxuICAgIGJhY2tncm91bmQ6ICRibGs7XHJcbiAgICBjb2xvcjogJHdodDtcclxuICAgIHBhZGRpbmc6IDc1cHggMDtcclxufVxyXG5cclxuLnNlY3RUaXRsZSB7XHJcbiAgICBmb250LXdlaWdodDogNzAwO1xyXG59XHJcblxyXG4uYWJvdXRUeHQge1xyXG4gICAgQGluY2x1ZGUgZmx1aWQtdHlwZSgkbWluX3dpZHRoLCAkbWF4X3dpZHRoLCAxNHB4LCAxOHB4KTtcclxufVxyXG5cclxuaHIge1xyXG4gICAgYm9yZGVyLWJvdHRvbTogNXB4IHNvbGlkICMwMDA7XHJcbiAgICB3aWR0aDogMTAlO1xyXG59XHJcblxyXG4uc2VydlRpdGxlIHtcclxuICAgIGZvbnQtd2VpZ2h0OiA3MDA7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBmbHVpZC10eXBlKCRtaW5fd2lkdGgsICRtYXhfd2lkdGgsIDI0cHgsIDI4cHgpO1xyXG59XHJcblxyXG4uc2VydlR4dCB7XHJcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICBAaW5jbHVkZSBmbHVpZC10eXBlKCRtaW5fd2lkdGgsICRtYXhfd2lkdGgsIDE0cHgsIDE4cHgpO1xyXG59XHJcblxyXG4ucGFkIHtcclxuICAgIHBhZGRpbmc6IDc1cHggMDtcclxufVxyXG5cclxuLml0ZW0ge1xyXG4gICAgcGFkZGluZzogMzVweCAxNXB4IDM1cHggMTVweDtcclxuICAgIGJvcmRlci1yYWRpdXM6IDVweDtcclxuICAgIGhlaWdodDogMzUwcHg7XHJcbiAgICB0cmFuc2l0aW9uOiBhbGwgZWFzZSAwLjVzIDBzO1xyXG4gICAgbWFyZ2luLXRvcDogMTBweDtcclxuXHJcbiAgICAmOmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmY7XHJcbiAgICBwYWRkaW5nOiAzNXB4IDE1cHggMzVweCAxNXB4O1xyXG4gICAgYm94LXNoYWRvdzogMHB4IDVweCAyNXB4IDBweCByZ2JhKDIwNCwgMjA0LCAyMDQsIDAuNTUpO1xyXG4gICAgY3Vyc29yOiBwb2ludGVyO1xyXG4gICAgfVxyXG59XHJcblxyXG4uY2VudGVyIHtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgbWFyZ2luOiAwIGF1dG87XHJcbn1cclxuXHJcbi5jb250YWN0IHtcclxuICAgIGJhY2tncm91bmQ6IHVybCgnLi4vaW1nL2NvbnRhY3QtYmcuanBnJyk7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xyXG4gICAgcGFkZGluZzogMTAwcHggMDtcclxuICAgIGNvbG9yOiAkd2h0O1xyXG59XHJcblxyXG4ucm93IHtcclxuICAgIG1hcmdpbi1sZWZ0OiAwO1xyXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xyXG59XHJcblxyXG4uYmFja2luZyB7XHJcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNyk7XHJcblxyXG4gICAgYSB7XHJcbiAgICAgICAgY29sb3I6ICR3aHQ7XHJcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG4gICAgfVxyXG59IiwiQGZ1bmN0aW9uIHN0cmlwLXVuaXQoJHZhbHVlKSB7XG4gIEByZXR1cm4gJHZhbHVlIC8gKCR2YWx1ZSAqIDAgKyAxKTtcbn1cblxuQG1peGluIGZsdWlkLXR5cGUoJG1pbi12dywgJG1heC12dywgJG1pbi1mb250LXNpemUsICRtYXgtZm9udC1zaXplKSB7XG4gICR1MTogdW5pdCgkbWluLXZ3KTtcbiAgJHUyOiB1bml0KCRtYXgtdncpO1xuICAkdTM6IHVuaXQoJG1pbi1mb250LXNpemUpO1xuICAkdTQ6IHVuaXQoJG1heC1mb250LXNpemUpO1xuXG4gIEBpZiAkdTEgPT0gJHUyIGFuZCAkdTEgPT0gJHUzIGFuZCAkdTEgPT0gJHU0IHtcbiAgICAmIHtcbiAgICAgIGZvbnQtc2l6ZTogJG1pbi1mb250LXNpemU7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbWluLXZ3KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogY2FsYygjeyRtaW4tZm9udC1zaXplfSArICN7c3RyaXAtdW5pdCgkbWF4LWZvbnQtc2l6ZSAtICRtaW4tZm9udC1zaXplKX0gKiAoKDEwMHZ3IC0gI3skbWluLXZ3fSkgLyAje3N0cmlwLXVuaXQoJG1heC12dyAtICRtaW4tdncpfSkpO1xuICAgICAgfVxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1heC12dykge1xuICAgICAgICBmb250LXNpemU6ICRtYXgtZm9udC1zaXplO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4iXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLENBQUMsb0VBQUk7QUFFRyxnQkFBZ0I7QUFDVixxQkFBcUI7QUFDOUIsMkpBQTJKO0FBRWxKLG1EQUFtRDtBQWlCeEUsQUFBQSxDQUFDLENBQUM7RUFDRSxXQUFX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 */
