@charset "US-ASCII";
/* ==========================================================================
Application Manifest.
========================================================================== */
/*
* Variables
*/
/* ==========================================================================
Variables
========================================================================== */
/*
* Paths
*/
/*
* Colors
*/
/*
* Global
*/
/*
* Bourbon
*/
/*
* Components
*/
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
  display: block;
}
audio, canvas, video {
  display: inline-block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden] {
  display: none;
}
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
a:focus {
  outline: thin dotted;
}
a:active, a:hover {
  outline: 0;
  text-decoration: none;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
abbr[title] {
  border-bottom: 1px dotted;
}
b, strong {
  font-weight: bold;
}
dfn {
  font-style: italic;
}
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}
mark {
  background: #ff0;
  color: #000;
}
code, kbd, pre, samp {
  font-family: monospace, serif;
  font-size: 1em;
}
pre {
  white-space: pre-wrap;
}
q {
  quotes: '\201C' '\201D' '\2018' '\2019';
}
small {
  font-size: 80%;
}
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
img {
  border: 0;
}
svg:not(:root) {
  overflow: hidden;
}
figure {
  margin: 0;
}
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
legend {
  border: 0;
  padding: 0;
}
button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0;
}
button, input {
  line-height: normal;
}
button, select {
  text-transform: none;
}
button, html input[type='button'], input[type='reset'], input[type='submit'] {
  -webkit-appearance: button;
  cursor: pointer;
}
button[disabled], html input[disabled] {
  cursor: default;
}
input[type='checkbox'], input[type='radio'] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}
input[type='search'] {
  -webkit-appearance: textfield;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
input[type='search']::-webkit-search-cancel-button, input[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}
button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
textarea {
  overflow: auto;
  vertical-align: top;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* ==========================================================================
Neat Grid Styles.
========================================================================== */
/* Neat 1.7.0
* http://neat.bourbon.io
* Copyright 2012-2014 thoughtbot, inc.
* MIT License */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
*, *:before, *:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}
@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
  }
}
@-ms-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -ms-transform: translateY(0);
  }
  40% {
    -ms-transform: translateY(-30px);
  }
  60% {
    -ms-transform: translateY(-15px);
  }
}
@-o-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -o-transform: translateY(0);
  }
  40% {
    -o-transform: translateY(-30px);
  }
  60% {
    -o-transform: translateY(-15px);
  }
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  40% {
    -webkit-transform: translateY(-30px);
    -o-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  60% {
    -webkit-transform: translateY(-15px);
    -o-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}
@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@-ms-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@-o-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@-ms-keyframes pulse {
  0% {
    -ms-transform: scale(1);
  }
  50% {
    -ms-transform: scale(1.1);
  }
  100% {
    -ms-transform: scale(1);
  }
}
@-o-keyframes pulse {
  0% {
    -o-transform: scale(1);
  }
  50% {
    -o-transform: scale(1.1);
  }
  100% {
    -o-transform: scale(1);
  }
}
@keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  50% {
    -webkit-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
  }
}
@-ms-keyframes shake {
  0%, 100% {
    -ms-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -ms-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -ms-transform: translateX(10px);
  }
}
@-o-keyframes shake {
  0%, 100% {
    -o-transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -o-transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -o-transform: translateX(10px);
  }
}
@keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
    -o-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
    -o-transform: translateX(10px);
    transform: translateX(10px);
  }
}
@-webkit-keyframes swing {
  20%, 40%, 60%, 80%, 100% {
    -webkit-transform-origin: top center;
  }
  20% {
    -webkit-transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}
@-ms-keyframes swing {
  20% {
    -ms-transform: rotate(15deg);
  }
  40% {
    -ms-transform: rotate(-10deg);
  }
  60% {
    -ms-transform: rotate(5deg);
  }
  80% {
    -ms-transform: rotate(-5deg);
  }
  100% {
    -ms-transform: rotate(0deg);
  }
}
@-o-keyframes swing {
  20% {
    -o-transform: rotate(15deg);
  }
  40% {
    -o-transform: rotate(-10deg);
  }
  60% {
    -o-transform: rotate(5deg);
  }
  80% {
    -o-transform: rotate(-5deg);
  }
  100% {
    -o-transform: rotate(0deg);
  }
}
@keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    -o-transform: rotate(15deg);
    transform: rotate(15deg);
  }
  40% {
    -webkit-transform: rotate(-10deg);
    -o-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }
  60% {
    -webkit-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    transform: rotate(5deg);
  }
  80% {
    -webkit-transform: rotate(-5deg);
    -o-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}
@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1);
  }
  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(0);
  }
}
@-ms-keyframes tada {
  0% {
    -ms-transform: scale(1);
  }
  10%, 20% {
    -ms-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -ms-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -ms-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -ms-transform: scale(1) rotate(0);
  }
}
@-o-keyframes tada {
  0% {
    -o-transform: scale(1);
  }
  10%, 20% {
    -o-transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -o-transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -o-transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -o-transform: scale(1) rotate(0);
  }
}
@keyframes tada {
  0% {
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
    -o-transform: scale(0.9) rotate(-3deg);
    transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
    -o-transform: scale(1.1) rotate(3deg);
    transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
    -o-transform: scale(1.1) rotate(-3deg);
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    -webkit-transform: scale(1) rotate(0);
    -o-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}
@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
  }
  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -webkit-transform: translateX(0%);
  }
}
@-ms-keyframes wobble {
  0% {
    -ms-transform: translateX(0%);
  }
  15% {
    -ms-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -ms-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -ms-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -ms-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -ms-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -ms-transform: translateX(0%);
  }
}
@-o-keyframes wobble {
  0% {
    -o-transform: translateX(0%);
  }
  15% {
    -o-transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -o-transform: translateX(20%) rotate(3deg);
  }
  45% {
    -o-transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -o-transform: translateX(10%) rotate(2deg);
  }
  75% {
    -o-transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -o-transform: translateX(0%);
  }
}
@keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
    -o-transform: translateX(0%);
    transform: translateX(0%);
  }
  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
    -o-transform: translateX(-25%) rotate(-5deg);
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
    -o-transform: translateX(20%) rotate(3deg);
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
    -o-transform: translateX(-15%) rotate(-3deg);
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
    -o-transform: translateX(10%) rotate(2deg);
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
    -o-transform: translateX(-5%) rotate(-1deg);
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    -webkit-transform: translateX(0%);
    -o-transform: translateX(0%);
    transform: translateX(0%);
  }
}
@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
  }
  70% {
    -webkit-transform: scale(0.9);
  }
  100% {
    -webkit-transform: scale(1);
  }
}
@-ms-keyframes bounceIn {
  0% {
    opacity: 0;
    -ms-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -ms-transform: scale(1.05);
  }
  70% {
    -ms-transform: scale(0.9);
  }
  100% {
    -ms-transform: scale(1);
  }
}
@-o-keyframes bounceIn {
  0% {
    opacity: 0;
    -o-transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -o-transform: scale(1.05);
  }
  70% {
    -o-transform: scale(0.9);
  }
  100% {
    -o-transform: scale(1);
  }
}
@keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.3);
    -o-transform: scale(0.3);
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
    -o-transform: scale(1.05);
    transform: scale(1.05);
  }
  70% {
    -webkit-transform: scale(0.9);
    -o-transform: scale(0.9);
    transform: scale(0.9);
  }
  100% {
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
}
@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
  }
  80% {
    -webkit-transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@-ms-keyframes bounceInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -ms-transform: translateY(30px);
  }
  80% {
    -ms-transform: translateY(-10px);
  }
  100% {
    -ms-transform: translateY(0);
  }
}
@-o-keyframes bounceInDown {
  0% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateY(30px);
  }
  80% {
    -o-transform: translateY(-10px);
  }
  100% {
    -o-transform: translateY(0);
  }
}
@keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -o-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    -o-transform: translateY(30px);
    transform: translateY(30px);
  }
  80% {
    -webkit-transform: translateY(-10px);
    -o-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  100% {
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}
@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
  }
  80% {
    -webkit-transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-ms-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -ms-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -ms-transform: translateX(30px);
  }
  80% {
    -ms-transform: translateX(-10px);
  }
  100% {
    -ms-transform: translateX(0);
  }
}
@-o-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateX(30px);
  }
  80% {
    -o-transform: translateX(-10px);
  }
  100% {
    -o-transform: translateX(0);
  }
}
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -o-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    -o-transform: translateX(30px);
    transform: translateX(30px);
  }
  80% {
    -webkit-transform: translateX(-10px);
    -o-transform: translateX(-10px);
    transform: translateX(-10px);
  }
  100% {
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
  }
  80% {
    -webkit-transform: translateX(10px);
  }
  100% {
    -webkit-transform: translateX(0);
  }
}
@-ms-keyframes bounceInRight {
  0% {
    opacity: 0;
    -ms-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -ms-transform: translateX(-30px);
  }
  80% {
    -ms-transform: translateX(10px);
  }
  100% {
    -ms-transform: translateX(0);
  }
}
@-o-keyframes bounceInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateX(-30px);
  }
  80% {
    -o-transform: translateX(10px);
  }
  100% {
    -o-transform: translateX(0);
  }
}
@keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -o-transform: translateX(2000px);
    transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    -o-transform: translateX(-30px);
    transform: translateX(-30px);
  }
  80% {
    -webkit-transform: translateX(10px);
    -o-transform: translateX(10px);
    transform: translateX(10px);
  }
  100% {
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
  }
  80% {
    -webkit-transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@-ms-keyframes bounceInUp {
  0% {
    opacity: 0;
    -ms-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -ms-transform: translateY(-30px);
  }
  80% {
    -ms-transform: translateY(10px);
  }
  100% {
    -ms-transform: translateY(0);
  }
}
@-o-keyframes bounceInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -o-transform: translateY(-30px);
  }
  80% {
    -o-transform: translateY(10px);
  }
  100% {
    -o-transform: translateY(0);
  }
}
@keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -o-transform: translateY(2000px);
    transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    -o-transform: translateY(-30px);
    transform: translateY(-30px);
  }
  80% {
    -webkit-transform: translateY(10px);
    -o-transform: translateY(10px);
    transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}
@-webkit-keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
  }
  25% {
    -webkit-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.3);
  }
}
@-ms-keyframes bounceOut {
  0% {
    -ms-transform: scale(1);
  }
  25% {
    -ms-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -ms-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -ms-transform: scale(0.3);
  }
}
@-o-keyframes bounceOut {
  0% {
    -o-transform: scale(1);
  }
  25% {
    -o-transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -o-transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -o-transform: scale(0.3);
  }
}
@keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
  }
  25% {
    -webkit-transform: scale(0.95);
    -o-transform: scale(0.95);
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale(0.3);
    -o-transform: scale(0.3);
    transform: scale(0.3);
  }
}
@-webkit-keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@-ms-keyframes bounceOutDown {
  0% {
    -ms-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -ms-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(2000px);
  }
}
@-o-keyframes bounceOutDown {
  0% {
    -o-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
}
@keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
    -o-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -o-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}
@-webkit-keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@-ms-keyframes bounceOutLeft {
  0% {
    -ms-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -ms-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-2000px);
  }
}
@-o-keyframes bounceOutLeft {
  0% {
    -o-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
}
@keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
    -o-transform: translateX(20px);
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -o-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}
@-webkit-keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@-ms-keyframes bounceOutRight {
  0% {
    -ms-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -ms-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(2000px);
  }
}
@-o-keyframes bounceOutRight {
  0% {
    -o-transform: translateX(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
}
@keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
    -o-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -o-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}
@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@-ms-keyframes bounceOutUp {
  0% {
    -ms-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -ms-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(-2000px);
  }
}
@-o-keyframes bounceOutUp {
  0% {
    -o-transform: translateY(0);
  }
  20% {
    opacity: 1;
    -o-transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
}
@keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
    -o-transform: translateY(20px);
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -o-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-ms-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-o-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-ms-keyframes fadeInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@-o-keyframes fadeInDown {
  0% {
    opacity: 0;
    -ms-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -o-transform: translateY(-20px);
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-ms-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -ms-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@-o-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -o-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-ms-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -ms-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
}
@-o-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -o-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    -o-transform: translateX(-20px);
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-ms-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -ms-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
}
@-o-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -o-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-ms-keyframes fadeInRight {
  0% {
    opacity: 0;
    -ms-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
}
@-o-keyframes fadeInRight {
  0% {
    opacity: 0;
    -o-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    -o-transform: translateX(20px);
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
@-ms-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -ms-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
}
@-o-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0);
  }
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -o-transform: translateX(2000px);
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-ms-keyframes fadeInUp {
  0% {
    opacity: 0;
    -ms-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@-o-keyframes fadeInUp {
  0% {
    opacity: 0;
    -o-transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -o-transform: translateY(20px);
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
@-ms-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -ms-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
}
@-o-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -o-transform: translateY(0);
  }
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -o-transform: translateY(2000px);
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
}
@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-ms-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-o-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
  }
}
@-ms-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(20px);
  }
}
@-o-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(20px);
  }
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -o-transform: translateY(20px);
    transform: translateY(20px);
  }
}
@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
  }
}
@-ms-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(2000px);
  }
}
@-o-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(2000px);
  }
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -o-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}
@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
}
@-ms-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-20px);
  }
}
@-o-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-20px);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    -o-transform: translateX(-20px);
    transform: translateX(-20px);
  }
}
@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
  }
}
@-ms-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(-2000px);
  }
}
@-o-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(-2000px);
  }
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -o-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}
@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
}
@-ms-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(20px);
  }
}
@-o-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(20px);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    -o-transform: translateX(20px);
    transform: translateX(20px);
  }
}
@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
  }
}
@-ms-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -ms-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(2000px);
  }
}
@-o-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -o-transform: translateX(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(2000px);
  }
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -o-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}
@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
}
@-ms-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -ms-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -ms-transform: translateY(-20px);
  }
}
@-o-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-20px);
  }
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -o-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}
@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
  }
}
@-o-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -o-transform: translateY(0);
  }
  100% {
    opacity: 0;
    -o-transform: translateY(-2000px);
  }
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -o-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}
@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(0);
    -webkit-animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -webkit-animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in;
  }
  100% {
    -webkit-transform: perspective(400px) scale(1);
    -webkit-animation-timing-function: ease-in;
  }
}
@-o-keyframes flip {
  0% {
    -o-transform: perspective(400px) rotateY(0);
    -o-animation-timing-function: ease-out;
  }
  40% {
    -o-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -o-animation-timing-function: ease-out;
  }
  50% {
    -o-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -o-animation-timing-function: ease-in;
  }
  80% {
    -o-transform: perspective(400px) rotateY(360deg) scale(0.95);
    -o-animation-timing-function: ease-in;
  }
  100% {
    -o-transform: perspective(400px) scale(1);
    -o-animation-timing-function: ease-in;
  }
}
@keyframes flip {
  0% {
    -webkit-transform: perspective(400px) rotateY(0);
    transform: perspective(400px) rotateY(0);
    -webkit-animation-timing-function: ease-out;
    -o-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg);
    transform: perspective(400px) translateZ(150px) rotateY(170deg);
    -webkit-animation-timing-function: ease-out;
    -o-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }
  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    -o-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  80% {
    -webkit-transform: perspective(400px) rotateY(360deg) scale(0.95);
    transform: perspective(400px) rotateY(360deg) scale(0.95);
    -webkit-animation-timing-function: ease-in;
    -o-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
  100% {
    -webkit-transform: perspective(400px) scale(1);
    transform: perspective(400px) scale(1);
    -webkit-animation-timing-function: ease-in;
    -o-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}
@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@-o-keyframes flipInX {
  0% {
    -o-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -o-transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -o-transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -o-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-ms-keyframes flipInY {
  0% {
    -ms-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -ms-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -ms-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -ms-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-o-keyframes flipInY {
  0% {
    -o-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -o-transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -o-transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -o-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-ms-keyframes flipOutX {
  0% {
    -ms-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -ms-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-o-keyframes flipOutX {
  0% {
    -o-transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-ms-keyframes flipOutY {
  0% {
    -ms-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -ms-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-o-keyframes flipOutY {
  0% {
    -o-transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-ms-keyframes lightSpeedIn {
  0% {
    -ms-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -ms-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -ms-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -ms-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-o-keyframes lightSpeedIn {
  0% {
    -o-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -o-transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -o-transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -o-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    -o-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    -o-transform: translateX(-20%) skewX(30deg);
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    -o-transform: translateX(0%) skewX(-15deg);
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    -o-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
@-webkit-keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-ms-keyframes lightSpeedOut {
  0% {
    -ms-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -ms-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-o-keyframes lightSpeedOut {
  0% {
    -o-transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -o-transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    -o-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    -o-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateIn {
  0% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateIn {
  0% {
    -o-transform-origin: center center;
    -o-transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: center center;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    -o-transform: rotate(-200deg);
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateInDownLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInDownLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateInDownRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInDownRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -o-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -o-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateInUpLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInUpLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
}
@-ms-keyframes rotateInUpRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
}
@-o-keyframes rotateInUpRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
}
@keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -o-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -o-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}
@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: center center;
    -webkit-transform: rotate(200deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOut {
  0% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: center center;
    -ms-transform: rotate(200deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOut {
  0% {
    -o-transform-origin: center center;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: center center;
    -o-transform: rotate(200deg);
    opacity: 0;
  }
}
@keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: center center;
    -o-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(200deg);
    -o-transform: rotate(200deg);
    transform: rotate(200deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOutDownLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutDownLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOutDownRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutDownRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -o-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -o-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOutUpLeft {
  0% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: left bottom;
    -ms-transform: rotate(-90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutUpLeft {
  0% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: left bottom;
    -o-transform: rotate(-90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: left bottom;
    -o-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}
@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    opacity: 0;
  }
}
@-ms-keyframes rotateOutUpRight {
  0% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -ms-transform-origin: right bottom;
    -ms-transform: rotate(90deg);
    opacity: 0;
  }
}
@-o-keyframes rotateOutUpRight {
  0% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(0);
    opacity: 1;
  }
  100% {
    -o-transform-origin: right bottom;
    -o-transform: rotate(90deg);
    opacity: 0;
  }
}
@keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -o-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    -webkit-transform-origin: right bottom;
    -o-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    -o-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}
@-webkit-keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate(80deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  40% {
    -webkit-transform: rotate(60deg);
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -webkit-transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
  }
  100% {
    -webkit-transform: translateY(700px);
    opacity: 0;
  }
}
@-ms-keyframes hinge {
  0% {
    -ms-transform: rotate(0);
    -ms-transform-origin: top left;
    -ms-animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -ms-transform: rotate(80deg);
    -ms-transform-origin: top left;
    -ms-animation-timing-function: ease-in-out;
  }
  40% {
    -ms-transform: rotate(60deg);
    -ms-transform-origin: top left;
    -ms-animation-timing-function: ease-in-out;
  }
  80% {
    -ms-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -ms-transform-origin: top left;
    -ms-animation-timing-function: ease-in-out;
  }
  100% {
    -ms-transform: translateY(700px);
    opacity: 0;
  }
}
@-o-keyframes hinge {
  0% {
    -o-transform: rotate(0);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -o-transform: rotate(80deg);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  40% {
    -o-transform: rotate(60deg);
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  80% {
    -o-transform: rotate(60deg) translateY(0);
    opacity: 1;
    -o-transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
  }
  100% {
    -o-transform: translateY(700px);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    -o-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: top left;
    -o-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    -webkit-transform: rotate(80deg);
    -o-transform: rotate(80deg);
    transform: rotate(80deg);
    -webkit-transform-origin: top left;
    -o-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  40% {
    -webkit-transform: rotate(60deg);
    -o-transform: rotate(60deg);
    transform: rotate(60deg);
    -webkit-transform-origin: top left;
    -o-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    -o-transform: rotate(60deg) translateY(0);
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    -webkit-transform-origin: top left;
    -o-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    -o-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }
  100% {
    -webkit-transform: translateY(700px);
    -o-transform: translateY(700px);
    transform: translateY(700px);
    opacity: 0;
  }
}
@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
}
@-ms-keyframes rollIn {
  0% {
    opacity: 0;
    -ms-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -ms-transform: translateX(0px) rotate(0deg);
  }
}
@-o-keyframes rollIn {
  0% {
    opacity: 0;
    -o-transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -o-transform: translateX(0px) rotate(0deg);
  }
}
@keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
    -o-transform: translateX(-100%) rotate(-120deg);
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    -o-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }
}
@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
  }
}
@-ms-keyframes rollOut {
  0% {
    opacity: 1;
    -ms-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -ms-transform: translateX(100%) rotate(120deg);
  }
}
@-o-keyframes rollOut {
  0% {
    opacity: 1;
    -o-transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -o-transform: translateX(100%) rotate(120deg);
  }
}
@keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    -o-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
    -o-transform: translateX(100%) rotate(120deg);
    transform: translateX(100%) rotate(120deg);
  }
}

/*
* Core
*/
/* ==========================================================================
Local fonts.
========================================================================== */
@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon/fonts/icomoon.eot");
  src: url("../fonts/icomoon/fonts/icomoond41d.eot?#iefix") format("embedded-opentype"), url("../fonts/icomoon/fonts/icomoon.woff") format("woff"), url("../fonts/icomoon/fonts/icomoon.ttf") format("truetype"), url("../fonts/icomoon/fonts/icomoon.svg#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

/* ==========================================================================
Mixins.
========================================================================== */
/*
* Global
*/
/*
* Fonts
*/
/*
* List Reset
*/
/*
* Omega Reset
* http://joshfry.me/notes/omega-reset-for-bourbon-neat/
*/
/*
* Placeholder mixin
* https://gist.github.com/antsa/2170024
*/
/*
* Hide from both screenreaders and browsers:h5bp.com/u
*/
/*
* Hide only visually, but have it available for screenreaders:h5bp.com/v
*/
/*
* Font Antialising
*/
/* ==========================================================================
Base Styles (mostly from HTML5BP).
========================================================================== */
/*
* Apply a natural box layout model to all elements:http://paulirish.com/2012/box-sizing-border-box-ftw/
*/
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/*
* Sensible defaults
*/
html {
  color: #4d4d4d;
  font-family: "proxima-nova", "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: 300;
  font-size: 16px;
  line-height: 1.5;
}
body {
  background-color: #eaeaea;
  -webkit-backface-visibility: hidden;
}

/*
* Remove text-shadow in selection highlight:h5bp.com/i
* These selection rule sets have to be separate.
* Customize the background color to match your design.
*/
::-moz-selection {
  background: #ea008a;
  color: white;
  text-shadow: none;
}
::selection {
  background: #ea008a;
  color: white;
  text-shadow: none;
}

/*
* A better looking default horizontal rule
*/
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

/*
* Remove the gap between images, videos, audio and canvas and the bottom of
* their containers:h5bp.com/i/440
*/
audio, canvas, img, svg, video {
  vertical-align: middle;
}

/*
* Remove default fieldset styles.
*/
fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

/*
* Allow only vertical resizing of textareas.
*/
textarea {
  resize: vertical;
}

/*
* Responsive images and other embedded objects
* Note:keeping IMG here will cause problems if you're using foreground images as sprites.
* If this default setting for images is causing issues, you might want to replace it with a .responsive class instead.
*/
img, picture, object, embed {
  margin: 0;
  max-width: 100%;
  height: auto;
}

/* ==========================================================================
Browser Upgrade
========================================================================== */
.browserupgrade {
  position: absolute;
  z-index: 99;
  top: 0;
  width: 100%;
  text-align: center;
  background: #e2403e;
  color: white;
  padding: 1em 0;
  margin: 0;
}
.browserupgrade a {
  font-weight: bold;
  color: white;
  text-decoration: underline;
}
.browserupgrade a:hover {
  color: #f3aead;
}

/* ==========================================================================
Basic Type Styles.
========================================================================== */
/*
* Links
*/
a {
  text-decoration: none;
  color: #ea008a;
  -webkit-transition: color 0.25s ease-in-out;
  -o-transition: color 0.25s ease-in-out;
  transition: color 0.25s ease-in-out;
}
a:hover {
  color: #4d4d4d;
}
a:link {
  -webkit-tap-highlight-color: #16163a;
}
strong, b {
  font-weight: 600;
}

/*
* Headings
*/
h1, h2, h3, h4, h5, h6 {
  font-weight: 100;
  text-rendering: optimizeLegibility;
}
h1:first-child, h2:first-child, h3:first-child, h4:first-child, h5:first-child, h6:first-child {
  margin-top: 0;
}
h1 {
  font-size: 2.5em;
  line-height: 1.25em;
}
@media screen and (max-width:560px) {
  h1 {
    font-size: 2em;
  }
}
h2 {
  font-size: 2.125em;
  line-height: 1.375em;
  color: #ea008a;
}
@media screen and (max-width:960px) {
  h2 {
    font-size: 1.75em;
  }
}
@media screen and (max-width:768px) {
  h2 {
    font-size: 1.375em;
  }
}
h3 {
  font-size: 1.875em;
  line-height: 1.375em;
  color: #ea008a;
}
h4 {
  font-size: 1.625em;
  line-height: 1.375em;
  color: #4d4d4d;
}
blockquote {
  font-weight: 100;
  font-size: 2.125em;
  margin: 1em 0;
}
@media screen and (max-width:960px) {
  blockquote {
    font-size: 1.75em;
  }
}
@media screen and (max-width:560px) {
  blockquote {
    font-size: 1.375em;
  }
}
dl {
  margin: 2em 0;
}
dl dt {
  text-transform: uppercase;
  letter-spacing: 1px;
}
dl dd {
  margin-left: 0;
  margin-bottom: 2em;
}
dl dd ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.accordion__item__header {
  position: relative;
  font-weight: 100;
  font-size: 1.75em;
  line-height: 1.25em;
  text-transform: none;
  letter-spacing: normal;
  cursor: pointer;
  margin-bottom: .75em;
  padding-left: 50px;
}
.accordion__item__header:before {
  position: absolute;
  left: 0;
  top: 0;
  font-family: 'icomoon';
  content: attr(data-icon);
  speak: none;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  content: '\e00d';
}
@media screen and (max-width:560px) {
  .accordion__item__header {
    font-size: 1.375em;
    padding-left: 40px;
  }
}
.-open .accordion__item__header {
  color: #ea008a;
  cursor: default;
}
.-open .accordion__item__header:before {
  content: '\e00e';
}
.accordion__item__content {
  display: none;
  margin-left: 50px;
}
@media screen and (max-width:560px) {
  .accordion__item__content {
    margin-left: 40px;
  }
}

/* ==========================================================================
Icon fonts.
========================================================================== */
[class*="icon-"] {
  font-family: 'icomoon';
  content: attr(data-icon);
  speak: none;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.icon-facebook:before {
  content: "\e000";
}
.icon-twitter:before {
  content: "\e001";
}
.icon-linkedin:before {
  content: "\e002";
}
.icon-search:before {
  content: "\e003";
}
.icon-list:before {
  content: "\e004";
}
.icon-eye:before {
  content: "\e005";
}
.icon-pencil:before {
  content: "\e006";
}
.icon-clipboard:before {
  content: "\e007";
}
.icon-chart:before {
  content: "\e008";
}
.icon-newspaper:before {
  content: "\e009";
}
.icon-chat:before {
  content: "\e00a";
}
.icon-people:before {
  content: "\e00b";
}
.icon-briefcase:before {
  content: "\e00c";
}
.icon-plus:before {
  content: "\e00d";
}
.icon-minus:before {
  content: "\e00e";
}

/* ==========================================================================
Global Styles.
========================================================================== */
.wrapper {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
  width: 90%;
}
.wrapper:after {
  content: "";
  display: table;
  clear: both;
}
.wrapper:after {
  content: "";
  display: table;
  clear: both;
}
.wrapper__inner {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 82.94039%;
  margin-left: 8.5298%;
  margin-right: 0;
}
.wrapper__inner:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .wrapper__inner {
    width: 100%;
    margin-left: 0%;
  }
}
.screen-reader-text {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  /*
  * Extends the .visuallyhidden class to allow the element to be focusable
  * when navigated to via the keyboard: h5bp.com/p
  */
}
.screen-reader-text.focusable:active, .screen-reader-text.focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
}
.btn.-default {
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  display: inline-block;
  padding: .625em 2.25em;
  border-radius: 2px;
  color: #ea008a;
  background-color: transparent;
  border: 2px solid #ea008a;
  font-weight: 600;
}
.btn.-default:hover {
  color: white;
  background-color: #ea008a;
  border-color: #ea008a;
}
.btn.-blue {
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  display: inline-block;
  padding: .625em 2.25em;
  border-radius: 2px;
  color: #16163a;
  background-color: transparent;
  border: 2px solid #16163a;
  font-weight: 600;
}
.btn.-blue:hover {
  color: white;
  background-color: #16163a;
  border-color: #16163a;
}
.checklist {
  list-style: none;
  padding-left: 0;
  margin: 0;
  color: #ea008a;
  background: url("../img/bg-checklist.png") no-repeat 0 50%;
  -webkit-background-size: 82px 94px;
  background-size: 82px 94px;
  padding-left: 122px;
}
.svg .checklist {
  background-image: url("../img/bg-checklist.svg");
}
.checklist li {
  margin-bottom: .25em;
}
.checklist li:before {
  content: '• ';
  margin-right: .25em;
}
@-webkit-keyframes animatedGradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@-o-keyframes animatedGradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
@keyframes animatedGradient {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/* ==========================================================================
Form Styles.
========================================================================== */
.form__row {
  display: block;
  margin-bottom: 1em;
}
.form__row:after {
  content: "";
  display: table;
  clear: both;
}
.form__row__input {
  margin-bottom: .75em;
}
.form__row__input.-span-1 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 6.17215%;
}
.form__row__input.-span-1:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-1 {
    width: 100%;
  }
}
.form__row__input.-span-2 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 14.70196%;
}
.form__row__input.-span-2:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-2 {
    width: 100%;
  }
}
.form__row__input.-span-3 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 23.23176%;
}
.form__row__input.-span-3:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-3 {
    width: 100%;
  }
}
.form__row__input.-span-4 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 31.76157%;
}
.form__row__input.-span-4:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-4 {
    width: 100%;
  }
}
.form__row__input.-span-5 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 40.29137%;
}
.form__row__input.-span-5:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-5 {
    width: 100%;
  }
}
.form__row__input.-span-6 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
}
.form__row__input.-span-6:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-6 {
    width: 100%;
  }
}
.form__row__input.-span-7 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 57.35098%;
}
.form__row__input.-span-7:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-7 {
    width: 100%;
  }
}
.form__row__input.-span-8 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 65.88078%;
}
.form__row__input.-span-8:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-8 {
    width: 100%;
  }
}
.form__row__input.-span-9 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 74.41059%;
}
.form__row__input.-span-9:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-9 {
    width: 100%;
  }
}
.form__row__input.-span-10 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 82.94039%;
}
.form__row__input.-span-10:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-10 {
    width: 100%;
  }
}
.form__row__input.-span-11 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 91.4702%;
}
.form__row__input.-span-11:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .form__row__input.-span-11 {
    width: 100%;
  }
}
.form__row__input label {
  display: block;
  margin-bottom: .25em;
}
.form__row__input label sup {
  color: #e2403e;
  font-weight: 600;
}
.form__row__input input, .form__row__input textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  border: 2px solid #eaeaea;
  border-radius: 3px;
  background-color: #f7f7f7;
  line-height: 1.25em;
  padding: .75em;
  width: 100%;
  outline: none;
}
.form__row__input input:focus, .form__row__input textarea:focus {
  border-color: #ababab;
}
.form__row__input input.parsley-error, .form__row__input textarea.parsley-error {
  border-color: #e2403e;
}
.form__row__input .parsley-errors-list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  color: #e2403e;
}
.form__row__input .parsley-errors-list.filled {
  margin: .5em 0;
}
.form__row [type="submit"] {
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
  display: inline-block;
  padding: .625em 2.25em;
  border-radius: 2px;
  color: #ea008a;
  background-color: transparent;
  border: 2px solid #ea008a;
  font-weight: 600;
}
.form__row [type="submit"]:hover {
  color: white;
  background-color: #ea008a;
  border-color: #ea008a;
}

/* ==========================================================================
Main Styles.
========================================================================== */
.header {
  background-color: white;
  padding: 1em 0 .5em 0;
  -webkit-box-shadow: 0 0 5px #ababab;
  box-shadow: 0 0 5px #ababab;
}
.header.-stuck {
  position: fixed;
  z-index: 3;
  top: 0;
  left: 0;
  width: 100%;
}
.header__logo {
  float: left;
  width: 128px;
  margin: 12px 50px 0 0;
}
.header__logo a {
  display: block;
  overflow: hidden;
  background: url("../img/logo.png") no-repeat 0 0;
  -webkit-background-size: 100% 100%;
  background-size: 100%;
  height: 35px;
}
.header__logo a:before {
  content: "";
  display: block;
  width: 0;
  height: 100%;
}
.svg .header__logo a {
  background-image: url("../img/logo.svg");
}
.header__navigation-toggle {
  display: none;
  float: right;
  font-size: 1.75em;
  line-height: 1ex;
  vertical-align: middle;
}
@media screen and (max-width:960px) {
  .header__navigation-toggle {
    display: block;
  }
}
@media screen and (max-width:960px) {
  .header__navigation {
    display: none;
  }
}
.header__navigation__list {
  float: left;
  list-style: none;
  padding-left: 0;
  margin: 0;
  font-size: 0.875em;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: .25em 0;
}
.header__navigation__list.-secondary {
  float: right;
}
#jPanelMenu-menu .header__navigation__list {
  float: none;
  margin-bottom: 1.5em;
  text-align: center;
}
#jPanelMenu-menu .header__navigation__list.-primary {
  padding-bottom: 1em;
  border-bottom: 1px solid #323284;
}
.header__navigation__list__item {
  float: left;
  margin-right: 2em;
}
.header__navigation__list__item:last-of-type {
  margin-right: 0;
}
.header__navigation__list__item.-social, .header__navigation__list__item.-divider {
  margin-right: 1em;
}
.header__navigation__list__item.-social a, .header__navigation__list__item.-divider a {
  color: #ababab;
}
.header__navigation__list__item.-divider {
  padding-left: 1em;
  border-left: 1px solid #ababab;
  margin-right: 0;
}
.header__navigation__list__item a {
  color: #808184;
}
.header__navigation__list__item a:hover, .header__navigation__list__item a.active {
  color: #ea008a;
}
#jPanelMenu-menu .header__navigation__list__item {
  float: none;
  margin: 0 0 .5em 0;
}
#jPanelMenu-menu .header__navigation__list__item.-social, #jPanelMenu-menu .header__navigation__list__item.-divider {
  display: inline-block;
  margin: 0 1em;
}
#jPanelMenu-menu .header__navigation__list__item.-divider {
  border-left: none;
  padding-left: 0;
}
#jPanelMenu-menu .header__navigation__list__item a {
  color: white;
}
#jPanelMenu-menu .header__navigation__list__item a:hover, #jPanelMenu-menu .header__navigation__list__item a.active {
  color: #ea008a;
}
.zs-content {
  position: relative;
  z-index: 0;
  background-color: white;
  overflow: hidden;
  margin-top: 0px;
}
.zs-content .hero {
  position: relative;
  z-index: 0;
  background: #ea008c;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMTAwJSIgeDI9IjEwMCUiIHkyPSIwJSI+CiAgICA8c3RvcCBvZmZzZXQ9IjAlIiBzdG9wLWNvbG9yPSIjZWEwMDhjIiBzdG9wLW9wYWNpdHk9IjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2VjN2UyMCIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
  background: -moz-linear-gradient(45deg, #ea008c 0%, #ec7e20 100%);
  background: -webkit-gradient(linear, left bottom, right top, color-stop(0%, #ea008c), color-stop(100%, #ec7e20));
  background: -webkit-linear-gradient(45deg, #ea008c 0%, #ec7e20 100%);
  background: -o-linear-gradient(45deg, #ea008c 0%, #ec7e20 100%);
  background: -ms-linear-gradient(45deg, #ea008c 0%, #ec7e20 100%);
  background: linear-gradient(45deg, #ea008c 0%, #ec7e20 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ea008c', endColorstr='#ec7e20', GradientType=1 );
}
.zs-product .zs-content .hero {
  background-color: #eb008b;
  background-image: -webkit-linear-gradient(-570deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: -webkit-linear-gradient(150deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: -o-linear-gradient(150deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: linear-gradient(300deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
}

/* .page .zs-content .hero {
  background-color: white;
}
*/
.zs-content .hero__message {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 10% 0;
}

/* .page .zs-content .hero__message {
  padding: 8% 0 4% 0;
  text-align: center;
}
.page .zs-content .hero__message .wrapper {
  max-width: 560px;
}
*/
@media screen and (max-width:768px) {
  .zs-content .hero__message {
    text-align: center;
  }
}
.zs-product .zs-content .hero__message {
  padding: 0;
}
.zs-product .zs-content .hero__message .wrapper {
  padding: 10% 0;
  background: url("../img/bg-hero-wrapper.png") no-repeat 0 0;
  -webkit-background-size: contain;
  background-size: contain;
}
.svg .zs-product .zs-content .hero__message .wrapper {
  background-image: url("../img/bg-hero-wrapper.svg");
}
.zs-content .hero__message__header {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
  font-size: 3.25em;
  line-height: 1em;
  color: #16163a;
  margin-top: 0;
  margin-bottom: .5em;
  -webkit-animation-name: fadeInDown;
  -ms-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-content .hero__message__header:last-child {
  margin-right: 0;
}
.zs-content .hero__message__header.-sub {
  width: 100%;
  text-align: center;
  color: white;
  margin-bottom: 0;
}
.zs-company .zs-content .hero__message__header.-sub {
  text-shadow: 0 0 5px #4d4d4d;
}

/* .page .zs-content .hero__message__header {
  width: 100%;
  font-size: 2.625em;
  margin-bottom: .75em;
  color: #4d4d4d;
}
*/
@media screen and (max-width:768px) {
  /* .page .zs-content .hero__message__header {
    font-size: 1.75em;
  }
  */
}
@media screen and (max-width:768px) {
  .zs-content .hero__message__header {
    width: 100%;
  }
}
@media screen and (max-width:560px) {
  .zs-content .hero__message__header {
    font-size: 2.25em;
  }
}
.zs-content .hero__message__intro {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
  color: white;
  -webkit-animation-name: fadeInRight;
  -ms-animation-name: fadeInRight;
  -o-animation-name: fadeInRight;
  animation-name: fadeInRight;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.5s;
  -ms-animation-delay: 0.5s;
  -o-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-content .hero__message__intro:last-child {
  margin-right: 0;
}

/* .page .zs-content .hero__message__intro {
  width: 100%;
  color: #4d4d4d;
}
*/
@media screen and (max-width:768px) {
  .zs-content .hero__message__intro {
    width: 100%;
  }
}
.zs-content .hero__message__intro p {
  font-size: 1.4em;
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-bottom: 2em;
}

/* .page .zs-content .hero__message__intro p {
  font-size: 1em;
}
*/
.zs-content .hero__message__intro p:first-of-type {
  margin-top: 0;
}
.zs-content .hero__message__intro p .btn {
  font-size: 1rem;
}
.zs-content .hero__bg {
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url("../img/bg-hero.png") no-repeat 50% 50%;
  -webkit-background-size: 120% 120%;
  background-size: 120%;
}
.svg .zs-content .hero__bg {
  background-image: url("../img/bg-hero.svg");
}
.zs-company .zs-content .hero__bg {
  background-image: url("../img/bg-hero-company.jpg");
  -webkit-background-size: cover;
  background-size: cover;
}

/* .page .zs-content .hero__bg {
  background-image: none;
}
*/
.zs-content .content-navigation {
  background-color: #16163a;
  -webkit-transition: background-image 0.25s ease-in-out;
  -o-transition: background-image 0.25s ease-in-out;
  transition: background-image 0.25s ease-in-out;
  width: 100%;
}
.zs-content .content-navigation.-stuck {
  position: fixed;
  z-index: 3;
  left: 0;
}
.zs-content .content-navigation__list {
  list-style: none;
  padding: 0;
  margin-top: 0;
  margin-bottom: 0;
}
.zs-content .content-navigation__list:after {
  content: "";
  display: table;
  clear: both;
}
.zs-content .content-navigation__list__item {
  float: left;
  width: 25%;
}
.zs-content .content-navigation__list__item:last-of-type {
  background: url("../img/bg-content-navigation-divider.png") no-repeat 100% 50%;
}
.svg .zs-content .content-navigation__list__item:last-of-type {
  background-image: url("../img/bg-content-navigation-divider.svg");
}
.zs-content .content-navigation__list__item a {
  display: block;
  padding: .5em 0;
  text-align: center;
  color: white;
  background: url("../img/bg-content-navigation-divider.png") no-repeat 0 50%;
}
.svg .zs-content .content-navigation__list__item a {
  background-image: url("../img/bg-content-navigation-divider.svg");
}
.zs-content .content-navigation__list__item a .icon {
  opacity: .5;
  font-size: 1.375em;
  line-height: .8125em;
  margin-right: .25em;
  vertical-align: text-top;
  -webkit-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.zs-content .content-navigation__list__item a.active, .zs-content .content-navigation__list__item a:hover {
  color: #ea008a;
}
.zs-content .content-navigation__list__item a.active .icon, .zs-content .content-navigation__list__item a:hover .icon {
  opacity: 1;
}
@media screen and (max-width:560px) {
  .zs-content .content-navigation__list__item a .icon {
    opacity: 1;
  }
  .zs-content .content-navigation__list__item a .label {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    /*
    * Extends the .visuallyhidden class to allow the element to be focusable
    * when navigated to via the keyboard: h5bp.com/p
    */
  }
  .zs-content .content-navigation__list__item a .label.focusable:active, .zs-content .content-navigation__list__item a .label.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
  }
}
.zs-content .section {
  padding: 6% 0;
}
.zs-company .-about.section {
  background: url("../img/bg-section-about.png") no-repeat 0 0;
  -webkit-background-size: 211px 337px;
  background-size: 211px 337px;
  -webkit-animation-name: fadeInDown;
  -ms-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.svg .zs-content .section.-about {
  background-image: url("../img/bg-section-about.svg");
}
@media screen and (max-width:768px) {
  .zs-content .section.-about {
    background-image: none !important;
  }
}
.zs-content .section.-faqs {
  background-color: #f7f7f7;
}
.zs-content .section.-jobs-intro {
  position: relative;
  overflow: visible;
  background-color: #f7f7f7;
}
.zs-content .section.-jobs-intro:before {
  position: absolute;
  top: -42%;
  left: 0;
  content: '';
  width: 284px;
  height: 515px;
  background: url("../img/bg-section-jobs.png") no-repeat 0 0;
  -webkit-background-size: 100% 100%;
  background-size: 100%;
}
.svg .zs-content .section.-jobs-intro:before {
  background-image: url("../img/bg-section-jobs.svg");
}
@media screen and (max-width:768px) {
  .zs-content .section.-jobs-intro:before {
    display: none;
  }
}
.zs-content .section.-jobs-intro:after {
  position: absolute;
  content: '';
  left: 50%;
  top: 100%;
  height: 0;
  width: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 20px solid #f7f7f7;
  margin-left: -20px;
}
.zs-content .section__content:after {
  content: "";
  display: table;
  clear: both;
}
.zs-content .section__content__main {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
}
.zs-content .section__content__main:last-child {
  margin-right: 0;
}
.zs-content .section__content__side {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
}
.zs-content .section__content__side:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .zs-content .section__content__main, .zs-content .section__content__side {
    width: 100%;
  }
  .zs-content .section__content__main {
    margin-bottom: 2.5em;
  }
}
.zs-content .intro {
  text-align: center;
  padding: 8% 0;
}
@media screen and (max-width:480px) {
  .zs-content .intro {
    padding: 40px 0;
  }
}
.zs-product .zs-content .intro.wrapper {
  margin-top: 40px;
  margin-bottom: 40px;
  background: url("../img/bg-intro-wrapper.png") no-repeat 0 0;
}
.svg .zs-product .zs-content .intro.wrapper {
  background-image: url("../img/bg-intro-wrapper.svg");
}
@media screen and (max-width:560px) {
  .zs-product .zs-content .intro.wrapper {
    margin-top: 0;
    margin-bottom: 0;
    background-image: none !important;
  }
}
.zs-content .intro__header img {
  display: block;
  margin: auto;
}
.zs-content .intro__content {
  max-width: 520px;
  margin: auto;
}
.zs-content .intro__content > p {
  line-height: 1.75em;
  margin-bottom: 2em;
}
.zs-content .process {
  position: relative;
  overflow: visible;
  padding: 8% 0;
  background-color: #ea008a;
  background-color: #eb008b;
  background-image: -webkit-linear-gradient(-570deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: -webkit-linear-gradient(150deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: -o-linear-gradient(150deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: linear-gradient(300deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
}
.zs-content .process:before {
  content: '';
  position: absolute;
  top: -40%;
  right: 0;
  width: 337px;
  height: 610px;
  background: url("../img/bg-process.png") no-repeat 0 0;
}
.svg .zs-content .process:before {
  background-image: url("../img/bg-process.svg");
}
@media screen and (max-width:560px) {
  .zs-content .process:before {
    display: none;
  }
}
.zs-content .process:after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  height: 0;
  width: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid #e20e83;
  margin-left: -30px;
  margin-top: -1px;
}
.zs-content .process__header {
  color: white;
}
.zs-content .process__content {
  display: block;
}
.zs-content .process__content:after {
  content: "";
  display: table;
  clear: both;
}
.zs-content .process__content__main {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 57.35098%;
  color: white;
}
.zs-content .process__content__main:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .zs-content .process__content__main {
    width: 100%;
    margin-bottom: 20px;
  }
}
.zs-content .process__content__aside {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 31.76157%;
  margin-left: 8.5298%;
}
.zs-content .process__content__aside:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .zs-content .process__content__aside {
    width: 100%;
    margin-left: 0%;
  }
}
.zs-content blockquote {
  color: #16163a;
  border:0px;
  margin:0px;
  line-height: 1em;
  font-size: 2em;
  text-indent: -21px;
}
.zs-content .offerings {
  text-align: center;
}
.zs-content .offerings.-alt {
  padding: 8% 0 4% 0;
  background-color: #f7f7f7;
}
.zs-content .offerings__figure {
  position: relative;
  padding-top: 40%;
  margin-bottom: 80px;
  overflow: hidden;
  z-index: 0;
}
@media screen and (max-width:768px) {
  .zs-content .offerings__figure {
    padding-top: 56.25%;
    margin-bottom: 40px;
  }
}
.zs-content .offerings__figure__image {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}
.zs-content .offerings__header {
  margin-bottom: 80px;
}
@media screen and (max-width:560px) {
  .zs-content .offerings__header {
    margin-bottom: 40px;
  }
  .zs-content .offerings__header h1 {
    font-size: 1.875em;
  }
}
.zs-content .offerings__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: block;
  -webkit-animation-name: fadeInDown;
  -ms-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-content .offerings__list:after {
  content: "";
  display: table;
  clear: both;
}
.zs-content .offerings__list__item {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
  margin-bottom: 80px;
}
.zs-content .offerings__list__item:last-child {
  margin-right: 0;
}
.zs-content .offerings__list__item:nth-child(2n) {
  margin-right: 0;
}
.zs-content .offerings__list__item:nth-child(2n+1) {
  clear: left;
}
@media screen and (max-width:560px) {
  .zs-content .offerings__list__item {
    width: 100%;
    margin-bottom: 40px;
  }
}
.zs-content .offerings__list__item__icon {
  margin-bottom: 30px;
}
.zs-content .offerings__list__item__content {
  max-width: 240px;
  margin: auto;
}
.zs-content .offerings__list__item__content h2 {
  font-size: 1.125em;
  line-height: 1em;
  font-weight: 600;
}
.zs-content .overview {
  position: relative;
  background-color: #16163a;
  color: #eaeaea;
  text-align: center;
  padding: 125px 0 80px 0;
  overflow: visible;
}
@media screen and (max-width:560px) {
  .zs-content .overview {
    padding: 40px 0;
  }
}
.zs-content .overview:before {
  position: absolute;
  z-index: 0;
  left: -10%;
  right: -10%;
  top: -20%;
  bottom: 0;
  content: '';
  background: url("../img/bg-overview.png") no-repeat 0 0;
  -webkit-background-size: cover;
  background-size: cover;
}
@media screen and (max-width:560px) {
  .zs-content .overview:before {
    top: 0;
    opacity: .5;
  }
}
.svg .zs-content .overview:before {
  background-image: url("../img/bg-overview.svg");
}
.zs-content .overview__header {
  -webkit-animation-name: bounceInUp;
  -ms-animation-name: bounceInUp;
  -o-animation-name: bounceInUp;
  animation-name: bounceInUp;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-content .overview__list {
  position: relative;
  z-index: 1;
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: block;
  margin-bottom: 40px;
  -webkit-animation-name: fadeInDown;
  -ms-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-content .overview__list:after {
  content: "";
  display: table;
  clear: both;
}
@media screen and (max-width:560px) {
  .zs-content .overview__list {
    margin-bottom: 0;
  }
}
.zs-content .overview__list__item {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 31.76157%;
}
.zs-content .overview__list__item:last-child {
  margin-right: 0;
}
.zs-content .overview__list__item:nth-child(3n) {
  margin-right: 0;
}
.zs-content .overview__list__item:nth-child(3n+1) {
  clear: left;
}
@media screen and (max-width:560px) {
  .zs-content .overview__list__item {
    width: 100%;
    margin-bottom: 40px;
  }
}
.zs-content .overview__list__item.-col2 {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
}
.zs-content .overview__list__item.-col2:last-child {
  margin-right: 0;
}
.zs-content .overview__list__item.-col2:nth-child(2n) {
  margin-right: 0;
}
.zs-content .overview__list__item.-col2:nth-child(2n+1) {
  clear: left;
}
.zs-content .overview__content {
  position: relative;
  z-index: 1;
  max-width: 500px;
  margin: auto;
}
.zs-content .overview__content .btn {
  margin-top: 40px;
}
.zs-content .partners {
  padding: 80px 0;
  text-align: center;
}
.zs-content .partners__header {
  margin-bottom: 40px;
}
.zs-content .partners__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  display: block;
  margin-bottom: 20px;
}
.zs-content .partners__list:after {
  content: "";
  display: table;
  clear: both;
}
.zs-content .partners__list__item {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 14.70196%;
  margin-bottom: 40px;
}
.zs-content .partners__list__item:last-child {
  margin-right: 0;
}
.zs-content .partners__list__item:nth-child(6n) {
  margin-right: 0;
}
.zs-content .partners__list__item:nth-child(6n+1) {
  clear: left;
}
@media screen and (max-width:960px) {
  .zs-content .partners__list__item {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 23.23176%;
  }
  .zs-content .partners__list__item:last-child {
    margin-right: 0;
  }
  .zs-content .partners__list__item:nth-child(6n) {
    margin-right: 2.35765%;
  }
  .zs-content .partners__list__item:nth-child(6n+1) {
    clear: none;
  }
  .zs-content .partners__list__item:nth-child(4n) {
    margin-right: 0;
  }
  .zs-content .partners__list__item:nth-child(4n+1) {
    clear: left;
  }
}
@media screen and (max-width:768px) {
  .zs-content .partners__list__item {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 31.76157%;
  }
  .zs-content .partners__list__item:last-child {
    margin-right: 0;
  }
  .zs-content .partners__list__item:nth-child(4n) {
    margin-right: 2.35765%;
  }
  .zs-content .partners__list__item:nth-child(4n+1) {
    clear: none;
  }
  .zs-content .partners__list__item:nth-child(3n) {
    margin-right: 0;
  }
  .zs-content .partners__list__item:nth-child(3n+1) {
    clear: left;
  }
}
@media screen and (max-width:560px) {
  .zs-content .partners__list__item {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%;
  }
  .zs-content .partners__list__item:last-child {
    margin-right: 0;
  }
  .zs-content .partners__list__item:nth-child(3n) {
    margin-right: 2.35765%;
  }
  .zs-content .partners__list__item:nth-child(3n+1) {
    clear: none;
  }
  .zs-content .partners__list__item:nth-child(2n) {
    margin-right: 0;
  }
  .zs-content .partners__list__item:nth-child(2n+1) {
    clear: left;
  }
}
@media screen and (max-width:480px) {
  .zs-content .partners__list__item {
    width: 100%;
    margin-bottom: 20px;
  }
}
.zs-content .intro-dmp {
  max-width: 640px;
  margin: auto;
  width: 90%;
  text-align: center;
  padding: 8% 0 4% 0;
}
@media screen and (max-width:480px) {
  .zs-content .intro-dmp {
    padding: 40px 0;
  }
}
.zs-content .intro-dmp__header img {
  display: block;
  margin: auto;
}
.zs-content .intro-dmp__content > p {
  line-height: 1.75em;
  margin-bottom: 2em;
}
.zs-content .video-dmp {
  position: relative;
  overflow: visible;
  padding: 10% 0;
  background-color: #16163a;
  background-image: -webkit-linear-gradient(-570deg, #16163a 60%, #ea008a 120%);
  background-image: -webkit-linear-gradient(150deg, #16163a 60%, #ea008a 120%);
  background-image: -o-linear-gradient(150deg, #16163a 60%, #ea008a 120%);
  background-image: linear-gradient(300deg, #16163a 60%, #ea008a 120%);
  color: white;
}
.zs-content .video-dmp:after {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  height: 0;
  width: 0;
  border-left: 30px solid transparent;
  border-right: 30px solid transparent;
  border-top: 30px solid white;
  margin-left: -30px;
}
.zs-content .video-dmp .wrapper {
  max-width: 660px;
  text-align: center;
}
.zs-content .video-dmp__content {
  color: #ababab;
  margin-bottom: 60px;
}
@media screen and (max-width:560px) {
  .zs-content .video-dmp__content {
    margin-bottom: 0;
  }
}
.zs-content .steps__step {
  margin: 20% 0;
}
.zs-content .steps__step:after {
  content: "";
  display: table;
  clear: both;
}
.zs-content .steps__step__header {
  float: left;
  width: 40%;
}
.zs-content .steps__step__header.-right {
  float: right;
}
@media screen and (max-width:768px) {
  .zs-content .steps__step__header {
    float: none !important;
    width: auto;
    margin-bottom: 20px;
  }
}
.zs-content .steps__step__header__circle {
  display: table;
  width: 250px;
  height: 250px;
  background-color: #ea008a;
  background-image: -webkit-linear-gradient(bottom, #e85146, #eb008b);
  background-image: -webkit-gradient(linear, left bottom, left top, from(#e85146), to(#eb008b));
  background-image: -o-linear-gradient(bottom, #e85146, #eb008b);
  background-image: linear-gradient(to top, #e85146, #eb008b);
  color: white;
  border-radius: 50%;
  margin: auto;
  -webkit-box-shadow: 0 0 5px #ababab;
  box-shadow: 0 0 5px #ababab;
}
.zs-content .steps__step__header__circle.-analyze {
  background-color: #e85146;
  background-image: -webkit-linear-gradient(bottom, #e85146, #e52e61);
  background-image: -webkit-gradient(linear, left bottom, left top, from(#e85146), to(#e52e61));
  background-image: -o-linear-gradient(bottom, #e85146, #e52e61);
  background-image: linear-gradient(to top, #e85146, #e52e61);
}
.zs-content .steps__step__header__circle.-activate {
  background-color: #ec7e20;
  background-image: -webkit-linear-gradient(bottom, #ec7e20, #e85146);
  background-image: -webkit-gradient(linear, left bottom, left top, from(#ec7e20), to(#e85146));
  background-image: -o-linear-gradient(bottom, #ec7e20, #e85146);
  background-image: linear-gradient(to top, #ec7e20, #e85146);
}
.zs-content .steps__step__header__circle__wrapper {
  display: table-cell;
  width: 100%;
  vertical-align: middle;
  text-align: center;
}
.zs-content .steps__step__header__circle__wrapper h1 {
  font-size: 1.625em;
}
.zs-content .steps__step__header__circle__wrapper h2 {
  font-size: 1em;
  color: white;
}
.zs-content .steps__step__content {
  float: right;
  width: 50%;
}
.zs-content .steps__step__content.-left {
  float: left;
}
@media screen and (max-width:768px) {
  .zs-content .steps__step__content {
    float: none !important;
    width: auto;
    text-align: center;
  }
}
.zs-content .steps__step__content > h3 {
  font-size: 2.5em;
  margin: 0 0 .5em 0;
}
.zs-content .steps__step__content ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.zs-content .steps__step__content ul li:before {
  content: '- ';
}
.zs-content .steps__step__content .btn {
  margin: 1em 0;
}
.zs-content .culture {
  position: relative;
  overflow: visible;
  padding: 8% 0;
  background-color: #f7f7f7;
  color: #4d4d4d;
}
.zs-content .culture:before {
  content: '';
  position: absolute;
  top: -20%;
  right: 0;
  width: 337px;
  height: 610px;
  background: url("../img/bg-process.png") no-repeat 0 0;
}
.svg .zs-content .culture:before {
  background-image: url("../img/bg-process.svg");
}
@media screen and (max-width:768px) {
  .zs-content .culture:before {
    display: none;
  }
}
.zs-content .culture__content {
  border-bottom: 1px solid #ababab;
  padding-bottom: 8%;
  margin-bottom: 8%;
  display: block;
}
.zs-content .culture__content:after {
  content: "";
  display: table;
  clear: both;
}
.zs-content .culture__content__main {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 57.35098%;
  -webkit-animation-name: fadeInLeft;
  -ms-animation-name: fadeInLeft;
  -o-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-content .culture__content__main:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .zs-content .culture__content__main {
    width: 100%;
    margin-bottom: 20px;
  }
}
.zs-content .culture__content__aside {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 31.76157%;
  margin-left: 8.5298%;
  -webkit-animation-name: fadeInRight;
  -ms-animation-name: fadeInRight;
  -o-animation-name: fadeInRight;
  animation-name: fadeInRight;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-content .culture__content__aside:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .zs-content .culture__content__aside {
    width: 100%;
    margin-left: 0%;
  }
}
.zs-content .culture__content__aside blockquote {
  color: #ea008a;
}
.zs-company .twitter-timeline.twitter-timeline-rendered {
  height: 513px;
}
.zs-content .culture__social-media {
  display: block;
  -webkit-animation-name: fadeIn;
  -ms-animation-name: fadeIn;
  -o-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-content .culture__social-media:after {
  content: "";
  display: table;
  clear: both;
}
.zs-content .culture__social-media__header {
  font-size: 2.5em;
  color: #4d4d4d;
}
.zs-content .culture__social-media__twitter {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 31.76157%;
  margin-left: 17.05961%;
}
.zs-content .culture__social-media__twitter:last-child {
  margin-right: 0;
}
.zs-content .culture__social-media__instagram {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 31.76157%;
}
.zs-content .culture__social-media__instagram:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .zs-content .culture__social-media__header {
    text-align: center;
  }
  .zs-content .culture__social-media__twitter, .zs-content .culture__social-media__instagram {
    width: 100%;
    margin-left: 0%;
    margin-bottom: 2.5em;
  }
  .zs-content .culture__social-media__twitter img, .zs-content .culture__social-media__instagram img {
    display: block;
    margin: auto;
  }
}
.zs-company .zs-content .team {
  padding-top: 8%;
  background-color: white;
}
.zs-company .zs-content .team__profiles {
  clear: left;
  padding: 8% 0;
  display: block;
}
.zs-company .zs-content .team__profiles:after {
  content: "";
  display: table;
  clear: both;
}
.zs-company .zs-content .team__profiles__profile {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 31.76157%;
  margin-bottom: 1.25em;
}
.zs-company .zs-content .team__profiles__profile:last-child {
  margin-right: 0;
}
.zs-company .zs-content .team__profiles__profile:nth-child(3n) {
  margin-right: 0;
}
.zs-company .zs-content .team__profiles__profile:nth-child(3n+1) {
  clear: left;
}
@media screen and (max-width:768px) {
  .zs-company .zs-content .team__profiles__profile {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%;
  }
  .zs-company .zs-content .team__profiles__profile:last-child {
    margin-right: 0;
  }
  .zs-company .zs-content .team__profiles__profile:nth-child(3n) {
    margin-right: 2.35765%;
  }
  .zs-company .zs-content .team__profiles__profile:nth-child(3n+1) {
    clear: none;
  }
  .zs-company .zs-content .team__profiles__profile:nth-child(2n) {
    margin-right: 0;
  }
  .zs-company .zs-content .team__profiles__profile:nth-child(2n+1) {
    clear: left;
  }
}
@media screen and (max-width:560px) {
  .zs-company .zs-content .team__profiles__profile {
    width: 100%;
  }
  .zs-company .zs-content .team__profiles__profile:nth-child(2n) {
    margin-right: 2.35765%;
  }
  .zs-company .zs-content .team__profiles__profile:nth-child(2n+1) {
    clear: none;
  }
}
.zs-company .zs-content .team__profiles__profile__summary {
  display: block;
  position: relative;
  z-index: 1;
  text-align: center;
  padding-bottom: 1.25em;
}
.zs-company .zs-content .team__profiles__profile__summary figure {
  display: block;
  max-width: 260px;
  margin: 0 auto 2em auto;
  -webkit-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.zs-company .zs-content .team__profiles__profile__summary figure img {
  border-radius: 50%;
  width:100%;
}
.zs-company .zs-content .team__profiles__profile__summary h1 {
  font-size: 1.125em;
  color: #4d4d4d;
}
.zs-company .zs-content .team__profiles__profile__summary p {
  font-weight: 600;
}
.zs-company .zs-content .team__profiles__profile__summary:hover figure {
  opacity: .75;
}
.zs-company .zs-content .team__profiles__profile__details {
  position: absolute;
  z-index: 0;
  left: 0;
  width: 100%;
  background-color: #ea008a;
  background-color: #eb008b;
  background-image: -webkit-linear-gradient(-570deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: -webkit-linear-gradient(150deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: -o-linear-gradient(150deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  background-image: linear-gradient(300deg, #eb008b, #e20e83, #e41d6f, #e52e61, #e85146, #ec7e20);
  -webkit-transition: min-height 0.25s ease;
  -o-transition: min-height 0.25s ease;
  transition: min-height 0.25s ease;
}
.csstransitions .zs-company .zs-content .team__profiles__profile__details {
  visibility: hidden;
}
.zs-company .zs-content .team__profiles__profile__details .profile {
  position: relative;
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 82.94039%;
  margin-left: 8.5298%;
  padding: 10% 0;
}
.zs-company .zs-content .team__profiles__profile__details .profile:last-child {
  margin-right: 0;
}
.zs-company .zs-content .team__profiles__profile__details .profile__close {
  position: absolute;
  width: 2.5em;
  height: 2.5em;
  top: 1.25em;
  right: 0;
  cursor: pointer;
}
@media screen and (max-width:560px) {
  .zs-company .zs-content .team__profiles__profile__details .profile__close {
    width: 1.25em;
    height: 1.25em;
    top: 0.625em;
    right: 0.625em;
  }
}
.zs-company .zs-content .team__profiles__profile__details .profile__close::before, .zs-company .zs-content .team__profiles__profile__details .profile__close::after {
  content: '';
  position: absolute;
  width: 100%;
  top: 50%;
  height: 1px;
  background: white;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.zs-company .zs-content .team__profiles__profile__details .profile__close::after {
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.zs-company .zs-content .team__profiles__profile__details .profile__close:hover::before, .zs-company .zs-content .team__profiles__profile__details .profile__close:hover::after {
  background: #16163a;
}
.zs-company .zs-content .team__profiles__profile__details .profile__header h1 {
  font-size: 2.125em;
  color: white;
  margin: 0;
}
.zs-company .zs-content .team__profiles__profile__details .profile__header h2 {
  font-size: 1.75em;
  color: #16163a;
  margin: 0;
}
.zs-company .zs-content .team__profiles__profile__details .profile__content {
  color: white;
}
.zs-company .zs-content .team__profiles__profile__details .profile__social-media {
  list-style: none;
  padding-left: 0;
  margin: 0;
  font-size: 1.875em;
}
.zs-company .zs-content .team__profiles__profile__details .profile__social-media li {
  display: inline-block;
  margin-right: .5em;
}
.zs-company .zs-content .team__profiles__profile__details .profile__social-media li a {
  color: #16163a;
}
.zs-company .zs-content .team__profiles__profile.-expanded .team__profiles__profile__summary:after {
  position: absolute;
  left: 50%;
  top: 100%;
  content: '';
  height: 0;
  width: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 20px solid white;
  margin-left: -20px;
}
.zs-content .partners-grid {
  margin-bottom: 6%;
}
.zs-content .partners-grid ul {
  list-style: none;
  padding-left: 0;
  margin: 0;
}
.zs-content .partners-grid ul li {
  float: left;
  width: 20%;
  background-color: #eaeaea;
  border: 5px solid white;
  padding: 40px;
}
@media screen and (max-width:960px) {
  .zs-content .partners-grid ul li {
    width: 25%;
  }
}
@media screen and (max-width:768px) {
  .zs-content .partners-grid ul li {
    width: 33.3333333%;
  }
}
@media screen and (max-width:560px) {
  .zs-content .partners-grid ul li {
    width: 50%;
  }
}
.zs-content .partners-grid ul li img {
  filter: gray;
  -webkit-filter: grayscale(100%);
  filter: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale");
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity: .5;
  -webkit-transition: opacity 0.25s ease-in-out;
  -o-transition: opacity 0.25s ease-in-out;
  transition: opacity 0.25s ease-in-out;
}
.zs-content .partners-grid ul li:hover img {
  opacity: .75;
}
.footer {
  padding: 60px 0;
  color: #808184;
  font-size: 0.875em;
}
@media screen and (max-width:480px) {
  .footer {
    padding: 40px 0;
  }
}
.footer a {
  color: #808184;
}
.footer a:hover, .footer a.active {
  color: #ea008a;
}
.footer__logo {
  display: block;
  margin-bottom: 20px;
  overflow: hidden;
  width: 92px;
  height: 25px;
  background: url("../img/logo.png") no-repeat 0 0;
  -webkit-background-size: 100% 100%;
  background-size: 100%;
}
.footer__logo:before {
  content: "";
  display: block;
  width: 0;
  height: 100%;
}
.svg .footer__logo {
  background-image: url("../img/logo.svg");
}
.footer__columns {
  display: block;
}
.footer__columns:after {
  content: "";
  display: table;
  clear: both;
}
.footer__columns__column {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 23.23176%;
}
.footer__columns__column:last-child {
  margin-right: 0;
}
@media screen and (max-width:768px) {
  .footer__columns__column {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%;
    margin-bottom: 20px;
  }
  .footer__columns__column:last-child {
    margin-right: 0;
  }
  .footer__columns__column:nth-child(2n) {
    margin-right: 0;
  }
  .footer__columns__column:nth-child(2n+1) {
    clear: left;
  }
}
@media screen and (max-width:480px) {
  .footer__columns__column {
    width: 100%;
  }
}
.footer__columns__column__header {
  font-size: 1em;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.footer__columns__column__list {
  list-style: none;
  padding-left: 0;
  margin: 0;
  margin-bottom: 1em;
}
.footer__columns__column__list.-posts li {
  margin-bottom: 1em;
}
.footer__columns__column__content address {
  font-style: normal;
}
#jPanelMenu-menu {
  padding: 20px;
  background-color: #16163a;
}

/*
* Print Style Overrides
*/
/* ==========================================================================
Print styles.
Inlined to avoid required HTTP connection:h5bp.com/r
========================================================================== */
@media print {
  *{background: transparent !important;
    color: #000 !important; /* Black prints faster: h5bp.com/s */
    -webkit-box-shadow:none !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a, a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  
  /*
  * Don't show links for images, or javascript/internal links
  */
  a[href^="javascript:"]:after, a[href^="#"]:after {
    content: "";
  }
  pre, blockquote {
    /*border: 1px solid gray;*/
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group; /* h5bp.com/t */
  }
  tr, img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p, h2, h3 {
    orphans: 3;
    widows: 3;
  }
  h2, h3 {
    page-break-after: avoid;
  }
}

/* # sourceMappingURL=data: application/json;
base64, eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcGxpY2F0aW9uLmNzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvc2Nzcy1ub3JtYWxpemUvX25vcm1hbGl6ZS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fZ3JpZC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fdmlzdWFsLWdyaWQuc2NzcyIsIi4uL3Njc3MvX2dyaWQtc2V0dGluZ3Muc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvbmVhdC9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2dyaWQvX21lZGlhLnNjc3MiLCIuLi9zY3NzL19iYXNlLnNjc3MiLCIuLi9zY3NzL19taXhpbnMuc2NzcyIsIi4uL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vc2Nzcy9fdHlwb2dyYXBoeS5zY3NzIiwiLi4vc2Nzcy9fbWFpbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy9uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fb3V0ZXItY29udGFpbmVyLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL2JvdXJib24vZGlzdC9hZGRvbnMvX2NsZWFyZml4LnNjc3MiLCIuLi9zY3NzL19wcmludC5zY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHFCQUFBO0FBQ0E7O2lGQUVBO0FBQ0E7O0lBRUE7QUFDQTs7aUZBRUE7QUFDQTs7SUFFQTtBQUNBOztJQ1RBO0FEWUE7O0lBRUc7QUFDSDs7SUFFRztBQUNIOztJQUVHO0FBQ0g7Ozs7Ozs7Ozs7OztFQ1NFLGdCQUFhO0VESWQ7O0FBRUQ7OztFQUdDLHVCQUFBO0VBQ0E7O0FBRUQ7RUNNRSxlQUFBO0VBQ0EsV0FBQTtFREpEOztBQ1FEO0VBQ0UsZUFBUztFRExWOztBQ1dDO0VBQ0UseUJBQW9CO0VEUnZCLDRCQUFBO0VDVUMsZ0NBQUE7RURSRDs7QUFFRDtFQ2NBLFdBQUE7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QzlCOztFQUVEO0lBQ0UsK0JBQThCO0lBQy9COztFQUVEOztNQUVHO0VBQ0g7O0lBRUUsYUFBWTtJQUNiOztFQUVEOztJQUVFLHdCQUF1QjtJQUN2QiwwQkFBeUI7SUFDMUI7O0VBRUQ7SUFDRSw2QkFBNEI7SUFDNUIsaUJBQWdCO0lBQ2pCOztFQUVEOztJQUVFLDBCQUF5QjtJQUMxQjs7RUFFRDtJQUNFLDRCQUEyQjtJQUM1Qjs7RUFFRDs7O0lBR0UsWUFBVztJQUNYLFdBQVU7SUFDWDs7RUFFRDs7SUFFRSx5QkFBd0I7SUFDekI7RUFDRiIsImZpbGUiOiJhcHBsaWNhdGlvbi5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyJAY2hhcnNldCBcIlVTLUFTQ0lJXCI7XG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQXBwbGljYXRpb24gTWFuaWZlc3QuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFZhcmlhYmxlc1xuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgVmFyaWFibGVzXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIFBhdGhzXG4gKi9cbi8qXG4gKiBDb2xvcnNcbiAqL1xuLypcbiAqIEdsb2JhbFxuICovXG4vKlxuICogQm91cmJvblxuICovXG4vKlxuICogQ29tcG9uZW50c1xuICovXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbmhncm91cCxcbm1haW4sXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuXG5hdWRpbyxcbmNhbnZhcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xufVxuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbltoaWRkZW5dIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmO1xuICAtbXMtdGV4dC1zaXplLWFkanVzdDogMTAwJTtcbiAgLXdlYmtpdC10ZXh0LXNpemUtYWRqdXN0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgbWFyZ2luOiAwO1xufVxuXG5hOmZvY3VzIHtcbiAgb3V0bGluZTogdGhpbiBkb3R0ZWQ7XG59XG5hOmFjdGl2ZSwgYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDtcbn1cblxuYixcbnN0cm9uZyB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG5kZm4ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7XG59XG5cbmhyIHtcbiAgLW1vei1ib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIGhlaWdodDogMDtcbn1cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiBtb25vc3BhY2UsIHNlcmlmO1xuICBmb250LXNpemU6IDFlbTtcbn1cblxucHJlIHtcbiAgd2hpdGUtc3BhY2U6IHByZS13cmFwO1xufVxuXG5xIHtcbiAgcXVvdGVzOiAnXFwyMDFDJyAnXFwyMDFEJyAnXFwyMDE4JyAnXFwyMDE5Jztcbn1cblxuc21hbGwge1xuICBmb250LXNpemU6IDgwJTtcbn1cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMDtcbn1cblxuZmllbGRzZXQge1xuICBib3JkZXI6IDFweCBzb2xpZCAjYzBjMGMwO1xuICBtYXJnaW46IDAgMnB4O1xuICBwYWRkaW5nOiAwLjM1ZW0gMC42MjVlbSAwLjc1ZW07XG59XG5cbmxlZ2VuZCB7XG4gIGJvcmRlcjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuYnV0dG9uLFxuaW5wdXQsXG5zZWxlY3QsXG50ZXh0YXJlYSB7XG4gIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICBmb250LXNpemU6IDEwMCU7XG4gIG1hcmdpbjogMDtcbn1cblxuYnV0dG9uLFxuaW5wdXQge1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xufVxuXG5idXR0b24sXG5zZWxlY3Qge1xuICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbn1cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPSdidXR0b24nXSxcbmlucHV0W3R5cGU9J3Jlc2V0J10sXG5pbnB1dFt0eXBlPSdzdWJtaXQnXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogYnV0dG9uO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cbmJ1dHRvbltkaXNhYmxlZF0sXG5odG1sIGlucHV0W2Rpc2FibGVkXSB7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cblxuaW5wdXRbdHlwZT0nY2hlY2tib3gnXSxcbmlucHV0W3R5cGU9J3JhZGlvJ10ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBwYWRkaW5nOiAwO1xufVxuXG5pbnB1dFt0eXBlPSdzZWFyY2gnXSB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAtbW96LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAtd2Via2l0LWJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbn1cblxuaW5wdXRbdHlwZT0nc2VhcmNoJ106Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG5pbnB1dFt0eXBlPSdzZWFyY2gnXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbnRleHRhcmVhIHtcbiAgb3ZlcmZsb3c6IGF1dG87XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbnRhYmxlIHtcbiAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgYm9yZGVyLXNwYWNpbmc6IDA7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBOZWF0IEdyaWQgU3R5bGVzLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi8qIE5lYXQgMS43LjBcbiAqIGh0dHA6Ly9uZWF0LmJvdXJib24uaW9cbiAqIENvcHlyaWdodCAyMDEyLTIwMTQgdGhvdWdodGJvdCwgaW5jLlxuICogTUlUIExpY2Vuc2UgKi9cbmh0bWwge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbn1cblxuKiwgKjpiZWZvcmUsICo6YWZ0ZXIge1xuICAtd2Via2l0LWJveC1zaXppbmc6IGluaGVyaXQ7XG4gIC1tb3otYm94LXNpemluZzogaW5oZXJpdDtcbiAgYm94LXNpemluZzogaW5oZXJpdDtcbn1cblxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZSB7XG4gIDAlLCAyMCUsIDUwJSwgODAlLCAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTMwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBib3VuY2Uge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICA0MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBib3VuY2Uge1xuICAwJSwgMjAlLCA1MCUsIDgwJSwgMTAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTE1cHgpO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGJvdW5jZSB7XG4gIDAlLCAyMCUsIDUwJSwgODAlLCAxMDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICA0MCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTVweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgMCUsIDIwJSwgNTAlLCA4MCUsIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xNXB4KTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZsYXNoIHtcbiAgMCUsIDUwJSwgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDI1JSwgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmxhc2gge1xuICAwJSwgNTAlLCAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMjUlLCA3NSUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZsYXNoIHtcbiAgMCUsIDUwJSwgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDI1JSwgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGZsYXNoIHtcbiAgMCUsIDUwJSwgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDI1JSwgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsYXNoIHtcbiAgMCUsIDUwJSwgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDI1JSwgNzUlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIHB1bHNlIHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgcHVsc2Uge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgc2hha2Uge1xuICAwJSwgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG5cbiAgMjAlLCA0MCUsIDYwJSwgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHNoYWtlIHtcbiAgMCUsIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuXG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIHNoYWtlIHtcbiAgMCUsIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cblxuICAyMCUsIDQwJSwgNjAlLCA4MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgc2hha2Uge1xuICAwJSwgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cblxuICAyMCUsIDQwJSwgNjAlLCA4MCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBzaGFrZSB7XG4gIDAlLCAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuXG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgc3dpbmcge1xuICAyMCUsIDQwJSwgNjAlLCA4MCUsIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGNlbnRlcjtcbiAgfVxuXG4gIDIwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg1ZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgc3dpbmcge1xuICAyMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMTVkZWcpO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTVkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgc3dpbmcge1xuICAyMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgc3dpbmcge1xuICAyMCUge1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDE1ZGVnKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoNWRlZyk7XG4gIH1cblxuICA4MCUge1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC01ZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHN3aW5nIHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgxNWRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDVkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtNWRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG5cbiAgMTAlLCAyMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjkpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIDQwJSwgNjAlLCA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgdGFkYSB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMCUsIDIwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKDNkZWcpO1xuICB9XG5cbiAgNDAlLCA2MCUsIDgwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMCUsIDIwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC45KSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIDQwJSwgNjAlLCA4MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpIHJvdGF0ZSgwKTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyB0YWRhIHtcbiAgMCUge1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAxMCUsIDIwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwLjkpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoM2RlZyk7XG4gIH1cblxuICA0MCUsIDYwJSwgODAlIHtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuMSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSkgcm90YXRlKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHRhZGEge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDEwJSwgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjEpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIDQwJSwgNjAlLCA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMS4xKSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKSByb3RhdGUoMCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyB3b2JibGUge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG5cbiAgMTUlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjUlKSByb3RhdGUoLTVkZWcpO1xuICB9XG5cbiAgMzAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMCUpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIDQ1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1JSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAlKSByb3RhdGUoMmRlZyk7XG4gIH1cblxuICA3NSUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSkgcm90YXRlKC0xZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHdvYmJsZSB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cblxuICAxNSUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpIHJvdGF0ZSgtNWRlZyk7XG4gIH1cblxuICAzMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwJSkgcm90YXRlKDNkZWcpO1xuICB9XG5cbiAgNDUlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTUlKSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpIHJvdGF0ZSgyZGVnKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUlKSByb3RhdGUoLTFkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyB3b2JibGUge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cblxuICAxNSUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSkgcm90YXRlKC01ZGVnKTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMCUpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIDQ1JSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTUlKSByb3RhdGUoLTNkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSkgcm90YXRlKDJkZWcpO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSkgcm90YXRlKC0xZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIHdvYmJsZSB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICB9XG5cbiAgMTUlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTI1JSkgcm90YXRlKC01ZGVnKTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwJSkgcm90YXRlKDNkZWcpO1xuICB9XG5cbiAgNDUlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTE1JSkgcm90YXRlKC0zZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwJSkgcm90YXRlKDJkZWcpO1xuICB9XG5cbiAgNzUlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTUlKSByb3RhdGUoLTFkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxufVxuQGtleWZyYW1lcyB3b2JibGUge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKTtcbiAgfVxuXG4gIDE1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yNSUpIHJvdGF0ZSgtNWRlZyk7XG4gIH1cblxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMCUpIHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIDQ1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xNSUpIHJvdGF0ZSgtM2RlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMCUpIHJvdGF0ZSgyZGVnKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01JSkgcm90YXRlKC0xZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjMpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBib3VuY2VJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwLjMpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuOSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGJvdW5jZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGJvdW5jZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwLjMpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMS4wNSk7XG4gIH1cblxuICA3MCUge1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMC45KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMyk7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjkpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgYm91bmNlSW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgYm91bmNlSW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgzMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDMwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBib3VuY2VJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBib3VuY2VJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGJvdW5jZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTMwcHgpO1xuICB9XG5cbiAgODAlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGJvdW5jZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgYm91bmNlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgYm91bmNlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMzBweCk7XG4gIH1cblxuICA4MCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQGtleWZyYW1lcyBib3VuY2VJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0zMHB4KTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDAuOTUpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjEpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMC4zKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGJvdW5jZU91dCB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cblxuICAyNSUge1xuICAgIC1tb3otdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHNjYWxlKDAuMyk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGJvdW5jZU91dCB7XG4gIDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC45NSk7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMS4xKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogc2NhbGUoMC4zKTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBib3VuY2VPdXQge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgLW8tdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtby10cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoMC4zKTtcbiAgfVxufVxuQGtleWZyYW1lcyBib3VuY2VPdXQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgfVxuXG4gIDI1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk1KTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4zKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgYm91bmNlT3V0RG93biB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBib3VuY2VPdXRVcCB7XG4gIDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGJvdW5jZU91dFVwIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgZmFkZUluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGZhZGVJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBmYWRlSW5Eb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjAwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZUluTGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZUluVXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZUluVXBCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgZmFkZUluVXBCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZUluVXBCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGZhZGVPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMHB4KTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmYWRlT3V0RG93biB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDIwMDBweCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgyMDAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMjAwMHB4KTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0TGVmdCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMHB4KTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAwMHB4KTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMDAwcHgpO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwMDBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDIwMDBweCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZU91dFJpZ2h0QmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMjAwMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgyMDAwcHgpO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwcHgpO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0yMHB4KTtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0VXAge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMjBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTIwMDBweCk7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTcwZGVnKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG5cbiAgNTAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTkwZGVnKSBzY2FsZSgxKTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgzNjBkZWcpIHNjYWxlKDAuOTUpO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUoMSk7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmxpcCB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMCk7XG4gICAgLW1vei1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE3MGRlZyk7XG4gICAgLW1vei1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGVaKDE1MHB4KSByb3RhdGVZKDE5MGRlZykgc2NhbGUoMSk7XG4gICAgLW1vei1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgODAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSgwLjk1KTtcbiAgICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlKDEpO1xuICAgIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmbGlwIHtcbiAgMCUge1xuICAgIC1vLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMCk7XG4gICAgLW8tYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cblxuICA0MCUge1xuICAgIC1vLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTcwZGVnKTtcbiAgICAtby1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgxOTBkZWcpIHNjYWxlKDEpO1xuICAgIC1vLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA4MCUge1xuICAgIC1vLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSgwLjk1KTtcbiAgICAtby1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUoMSk7XG4gICAgLW8tYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGlwIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZVooMTUwcHgpIHJvdGF0ZVkoMTcwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlWigxNTBweCkgcm90YXRlWSgxOTBkZWcpIHNjYWxlKDEpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMzYwZGVnKSBzY2FsZSgwLjk1KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUoMSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblgge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoLTEwZGVnKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmxpcEluWCB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMTBkZWcpO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMTBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmxpcEluWCB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKC0xMGRlZyk7XG4gIH1cblxuICA3MCUge1xuICAgIC1vLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMTBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsaXBJblgge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgtMTBkZWcpO1xuICB9XG5cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDEwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBJblkge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoLTEwZGVnKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmxpcEluWSB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMTBkZWcpO1xuICB9XG5cbiAgNzAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZsaXBJblkge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gIH1cblxuICA3MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmxpcEluWSB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKC0xMGRlZyk7XG4gIH1cblxuICA3MCUge1xuICAgIC1vLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMTBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsaXBJblkge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgtMTBkZWcpO1xuICB9XG5cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDEwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgZmxpcE91dFgge1xuICAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWCg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBmbGlwT3V0WCB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtby10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVYKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVgoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGZsaXBPdXRZIHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZVkoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgZmxpcE91dFkge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlWSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGVZKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgbGlnaHRTcGVlZEluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTIwJSkgc2tld1goMzBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgtMTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA2MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMCUpIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goLTE1ZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMjAlKSBza2V3WCgzMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goLTE1ZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBsaWdodFNwZWVkSW4ge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDYwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMCUpIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKC0xNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyBsaWdodFNwZWVkSW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0yMCUpIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKC0xNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDAlKSBza2V3WCgwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcbiAgMCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSkgc2tld1goMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSBza2V3WCgtMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpIHNrZXdYKDBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW4ge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyByb3RhdGVJbiB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgcm90YXRlSW4ge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC0yMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyByb3RhdGVJbiB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC0yMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlSW4ge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XG4gIDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcbiAgMCUge1xuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xuICAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtbXMta2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgcm90YXRlSW5VcExlZnQge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tb3ota2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cbkAtby1rZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgMCUge1xuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuQGtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgyMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyByb3RhdGVPdXQge1xuICAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgcm90YXRlT3V0IHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgY2VudGVyO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyByb3RhdGVPdXQge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGNlbnRlcjtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgyMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlT3V0IHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyByb3RhdGVPdXREb3duTGVmdCB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQge1xuICAwJSB7XG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xuICAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHtcbiAgMCUge1xuICAgIC1tb3otdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG4gIDAlIHtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgcm90YXRlT3V0VXBSaWdodCB7XG4gIDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcbiAgMCUge1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcbiAgMCUge1xuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cbkAtd2Via2l0LWtleWZyYW1lcyBoaW5nZSB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDIwJSwgNjAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDgwZGVnKTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICA0MCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDgwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZykgdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDEwMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgaGluZ2Uge1xuICAwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgwKTtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAyMCUsIDYwJSB7XG4gICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg4MGRlZyk7XG4gICAgLW1vei10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgNDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDYwZGVnKTtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICA4MCUge1xuICAgIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpIHRyYW5zbGF0ZVkoMCk7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWSg3MDBweCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgaGluZ2Uge1xuICAwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtbXMtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAyMCUsIDYwJSB7XG4gICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKDgwZGVnKTtcbiAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgLW1zLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgNDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtbXMtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICA4MCUge1xuICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZykgdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtbXMtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIH1cblxuICAxMDAlIHtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIGhpbmdlIHtcbiAgMCUge1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC1vLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgMjAlLCA2MCUge1xuICAgIC1vLXRyYW5zZm9ybTogcm90YXRlKDgwZGVnKTtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICAtby1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC1vLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgODAlIHtcbiAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZykgdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIC1vLXRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIC1vLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGhpbmdlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgMjAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDgwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoNjBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSg2MGRlZykgdHJhbnNsYXRlWSgwKTtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgMTAwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDcwMHB4KTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5ALXdlYmtpdC1rZXlmcmFtZXMgcm9sbEluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpIHJvdGF0ZSgtMTIwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSByb3RhdGUoMGRlZyk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyByb2xsSW4ge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgcm90YXRlKC0xMjBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuQC1tcy1rZXlmcmFtZXMgcm9sbEluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgcm90YXRlKC0xMjBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpO1xuICB9XG59XG5ALW8ta2V5ZnJhbWVzIHJvbGxJbiB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1vLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSkgcm90YXRlKC0xMjBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSByb3RhdGUoMGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm9sbEluIHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKSByb3RhdGUoLTEyMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgfVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHJvbGxPdXQge1xuICAwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgcm90YXRlKDEyMGRlZyk7XG4gIH1cbn1cbkAtbW96LWtleWZyYW1lcyByb2xsT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1vei10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMHB4KSByb3RhdGUoMGRlZyk7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHJvdGF0ZSgxMjBkZWcpO1xuICB9XG59XG5ALW1zLWtleWZyYW1lcyByb2xsT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKSByb3RhdGUoMTIwZGVnKTtcbiAgfVxufVxuQC1vLWtleWZyYW1lcyByb2xsT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDBweCkgcm90YXRlKDBkZWcpO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSkgcm90YXRlKDEyMGRlZyk7XG4gIH1cbn1cbkBrZXlmcmFtZXMgcm9sbE91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwcHgpIHJvdGF0ZSgwZGVnKTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDEwMCUpIHJvdGF0ZSgxMjBkZWcpO1xuICB9XG59XG4vKlxuICogQ29yZVxuICovXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTG9jYWwgZm9udHMuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQGZvbnQtZmFjZSB7XG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gIHNyYzogdXJsKFwiLi4vZm9udHMvaWNvbW9vbi9mb250cy9pY29tb29uLmVvdFwiKTtcbiAgc3JjOiB1cmwoXCIuLi9mb250cy9pY29tb29uL2ZvbnRzL2ljb21vb24uZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi9mb250cy9pY29tb29uLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi9mb250cy9pY29tb29uLnR0ZlwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiLi4vZm9udHMvaWNvbW9vbi9mb250cy9pY29tb29uLnN2ZyNpY29tb29uXCIpIGZvcm1hdChcInN2Z1wiKTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIE1peGlucy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogR2xvYmFsXG4gKi9cbi8qXG4gKiBGb250c1xuICovXG4vKlxuICogTGlzdCBSZXNldFxuICovXG4vKlxuICogT21lZ2EgUmVzZXRcbiAqIGh0dHA6Ly9qb3NoZnJ5Lm1lL25vdGVzL29tZWdhLXJlc2V0LWZvci1ib3VyYm9uLW5lYXQvXG4gKi9cbi8qXG4gKiBQbGFjZWhvbGRlciBtaXhpblxuICogaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vYW50c2EvMjE3MDAyNFxuICovXG4vKlxuICogSGlkZSBmcm9tIGJvdGggc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnM6IGg1YnAuY29tL3VcbiAqL1xuLypcbiAqIEhpZGUgb25seSB2aXN1YWxseSwgYnV0IGhhdmUgaXQgYXZhaWxhYmxlIGZvciBzY3JlZW5yZWFkZXJzOiBoNWJwLmNvbS92XG4gKi9cbi8qXG4gKiBGb250IEFudGlhbGlzaW5nXG4gKi9cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNlIFN0eWxlcyAobW9zdGx5IGZyb20gSFRNTDVCUCkuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLypcbiAqIEFwcGx5IGEgbmF0dXJhbCBib3ggbGF5b3V0IG1vZGVsIHRvIGFsbCBlbGVtZW50czogaHR0cDovL3BhdWxpcmlzaC5jb20vMjAxMi9ib3gtc2l6aW5nLWJvcmRlci1ib3gtZnR3L1xuICovXG4qLCAqOmJlZm9yZSwgKjphZnRlciB7XG4gIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgLW1vei1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKlxuICogU2Vuc2libGUgZGVmYXVsdHNcbiAqL1xuaHRtbCB7XG4gIGNvbG9yOiAjNGQ0ZDRkO1xuICBmb250LWZhbWlseTogXCJwcm94aW1hLW5vdmFcIiwgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIFJvYm90bywgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgbGluZS1oZWlnaHQ6IDEuNTtcbn1cblxuYm9keSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYWVhZWE7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuXG4vKlxuICogUmVtb3ZlIHRleHQtc2hhZG93IGluIHNlbGVjdGlvbiBoaWdobGlnaHQ6IGg1YnAuY29tL2lcbiAqIFRoZXNlIHNlbGVjdGlvbiBydWxlIHNldHMgaGF2ZSB0byBiZSBzZXBhcmF0ZS5cbiAqIEN1c3RvbWl6ZSB0aGUgYmFja2dyb3VuZCBjb2xvciB0byBtYXRjaCB5b3VyIGRlc2lnbi5cbiAqL1xuOjotbW96LXNlbGVjdGlvbiB7XG4gIGJhY2tncm91bmQ6ICNlYTAwOGE7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cbjo6c2VsZWN0aW9uIHtcbiAgYmFja2dyb3VuZDogI2VhMDA4YTtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuLypcbiAqIEEgYmV0dGVyIGxvb2tpbmcgZGVmYXVsdCBob3Jpem9udGFsIHJ1bGVcbiAqL1xuaHIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgaGVpZ2h0OiAxcHg7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICNjY2NjY2M7XG4gIG1hcmdpbjogMWVtIDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8qXG4gKiBSZW1vdmUgdGhlIGdhcCBiZXR3ZWVuIGltYWdlcywgdmlkZW9zLCBhdWRpbyBhbmQgY2FudmFzIGFuZCB0aGUgYm90dG9tIG9mXG4gKiB0aGVpciBjb250YWluZXJzOiBoNWJwLmNvbS9pLzQ0MFxuICovXG5hdWRpbyxcbmNhbnZhcyxcbmltZyxcbnN2ZyxcbnZpZGVvIHtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLypcbiAqIFJlbW92ZSBkZWZhdWx0IGZpZWxkc2V0IHN0eWxlcy5cbiAqL1xuZmllbGRzZXQge1xuICBib3JkZXI6IDA7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDtcbn1cblxuLypcbiAqIEFsbG93IG9ubHkgdmVydGljYWwgcmVzaXppbmcgb2YgdGV4dGFyZWFzLlxuICovXG50ZXh0YXJlYSB7XG4gIHJlc2l6ZTogdmVydGljYWw7XG59XG5cbi8qXG4gKiBSZXNwb25zaXZlIGltYWdlcyBhbmQgb3RoZXIgZW1iZWRkZWQgb2JqZWN0c1xuICogTm90ZToga2VlcGluZyBJTUcgaGVyZSB3aWxsIGNhdXNlIHByb2JsZW1zIGlmIHlvdSdyZSB1c2luZyBmb3JlZ3JvdW5kIGltYWdlcyBhcyBzcHJpdGVzLlxuICogSWYgdGhpcyBkZWZhdWx0IHNldHRpbmcgZm9yIGltYWdlcyBpcyBjYXVzaW5nIGlzc3VlcywgeW91IG1pZ2h0IHdhbnQgdG8gcmVwbGFjZSBpdCB3aXRoIGEgLnJlc3BvbnNpdmUgY2xhc3MgaW5zdGVhZC5cbiAqL1xuaW1nLFxucGljdHVyZSxcbm9iamVjdCxcbmVtYmVkIHtcbiAgbWFyZ2luOiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bztcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEJyb3dzZXIgVXBncmFkZVxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5icm93c2VydXBncmFkZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogOTk7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZDogI2UyNDAzZTtcbiAgY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxZW0gMDtcbiAgbWFyZ2luOiAwO1xufVxuLmJyb3dzZXJ1cGdyYWRlIGEge1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbi5icm93c2VydXBncmFkZSBhOmhvdmVyIHtcbiAgY29sb3I6ICNmM2FlYWQ7XG59XG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBCYXNpYyBUeXBlIFN0eWxlcy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG4vKlxuICogTGlua3NcbiAqL1xuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICNlYTAwOGE7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogY29sb3IgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGNvbG9yIDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuYTpob3ZlciB7XG4gIGNvbG9yOiAjNGQ0ZDRkO1xufVxuYTpsaW5rIHtcbiAgLXdlYmtpdC10YXAtaGlnaGxpZ2h0LWNvbG9yOiAjMTYxNjNhO1xufVxuXG5zdHJvbmcsIGIge1xuICBmb250LXdlaWdodDogNjAwO1xufVxuXG4vKlxuICogSGVhZGluZ3NcbiAqL1xuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIHRleHQtcmVuZGVyaW5nOiBvcHRpbWl6ZUxlZ2liaWxpdHk7XG59XG5oMTpmaXJzdC1jaGlsZCwgaDI6Zmlyc3QtY2hpbGQsIGgzOmZpcnN0LWNoaWxkLCBoNDpmaXJzdC1jaGlsZCwgaDU6Zmlyc3QtY2hpbGQsIGg2OmZpcnN0LWNoaWxkIHtcbiAgbWFyZ2luLXRvcDogMDtcbn1cblxuaDEge1xuICBmb250LXNpemU6IDIuNWVtO1xuICBsaW5lLWhlaWdodDogMS4yNWVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICB9XG59XG5cbmgyIHtcbiAgZm9udC1zaXplOiAyLjEyNWVtO1xuICBsaW5lLWhlaWdodDogMS4zNzVlbTtcbiAgY29sb3I6ICNlYTAwOGE7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5NjBweCkge1xuICBoMiB7XG4gICAgZm9udC1zaXplOiAxLjc1ZW07XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIGgyIHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gIH1cbn1cblxuaDMge1xuICBmb250LXNpemU6IDEuODc1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM3NWVtO1xuICBjb2xvcjogI2VhMDA4YTtcbn1cblxuaDQge1xuICBmb250LXNpemU6IDEuNjI1ZW07XG4gIGxpbmUtaGVpZ2h0OiAxLjM3NWVtO1xuICBjb2xvcjogIzRkNGQ0ZDtcbn1cblxuYmxvY2txdW90ZSB7XG4gIGZvbnQtd2VpZ2h0OiAxMDA7XG4gIGZvbnQtc2l6ZTogMi4xMjVlbTtcbiAgbWFyZ2luOiAxZW0gMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIGJsb2NrcXVvdGUge1xuICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICBibG9ja3F1b3RlIHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gIH1cbn1cblxuZGwge1xuICBtYXJnaW46IDJlbSAwO1xufVxuZGwgZHQge1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuZGwgZGQge1xuICBtYXJnaW4tbGVmdDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMmVtO1xufVxuZGwgZGQgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbn1cblxuLmFjY29yZGlvbl9faXRlbV9faGVhZGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBmb250LXdlaWdodDogMTAwO1xuICBmb250LXNpemU6IDEuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogLjc1ZW07XG4gIHBhZGRpbmctbGVmdDogNTBweDtcbn1cbi5hY2NvcmRpb25fX2l0ZW1fX2hlYWRlcjpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgY29udGVudDogYXR0cihkYXRhLWljb24pO1xuICBzcGVhazogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG4gIGNvbnRlbnQ6ICdcXGUwMGQnO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgLmFjY29yZGlvbl9faXRlbV9faGVhZGVyIHtcbiAgICBmb250LXNpemU6IDEuMzc1ZW07XG4gICAgcGFkZGluZy1sZWZ0OiA0MHB4O1xuICB9XG59XG4uLW9wZW4gLmFjY29yZGlvbl9faXRlbV9faGVhZGVyIHtcbiAgY29sb3I6ICNlYTAwOGE7XG4gIGN1cnNvcjogZGVmYXVsdDtcbn1cbi4tb3BlbiAuYWNjb3JkaW9uX19pdGVtX19oZWFkZXI6YmVmb3JlIHtcbiAgY29udGVudDogJ1xcZTAwZSc7XG59XG4uYWNjb3JkaW9uX19pdGVtX19jb250ZW50IHtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWFyZ2luLWxlZnQ6IDUwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuYWNjb3JkaW9uX19pdGVtX19jb250ZW50IHtcbiAgICBtYXJnaW4tbGVmdDogNDBweDtcbiAgfVxufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgSWNvbiBmb250cy5cbiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5bY2xhc3MqPVwiaWNvbi1cIl0ge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBjb250ZW50OiBhdHRyKGRhdGEtaWNvbik7XG4gIHNwZWFrOiBub25lO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTtcbn1cblxuLmljb24tZmFjZWJvb2s6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDBcIjtcbn1cblxuLmljb24tdHdpdHRlcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwMVwiO1xufVxuXG4uaWNvbi1saW5rZWRpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwMlwiO1xufVxuXG4uaWNvbi1zZWFyY2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDNcIjtcbn1cblxuLmljb24tbGlzdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwNFwiO1xufVxuXG4uaWNvbi1leWU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDVcIjtcbn1cblxuLmljb24tcGVuY2lsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDA2XCI7XG59XG5cbi5pY29uLWNsaXBib2FyZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwN1wiO1xufVxuXG4uaWNvbi1jaGFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwOFwiO1xufVxuXG4uaWNvbi1uZXdzcGFwZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDlcIjtcbn1cblxuLmljb24tY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTAwYVwiO1xufVxuXG4uaWNvbi1wZW9wbGU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMGJcIjtcbn1cblxuLmljb24tYnJpZWZjYXNlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlMDBjXCI7XG59XG5cbi5pY29uLXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMGRcIjtcbn1cblxuLmljb24tbWludXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMGVcIjtcbn1cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEdsb2JhbCBTdHlsZXMuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLndyYXBwZXIge1xuICBtYXgtd2lkdGg6IDk2MHB4O1xuICBtYXJnaW4tbGVmdDogYXV0bztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICB3aWR0aDogOTAlO1xufVxuLndyYXBwZXI6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG4ud3JhcHBlcjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cbi53cmFwcGVyX19pbm5lciB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDgyLjk0MDM5JTtcbiAgbWFyZ2luLWxlZnQ6IDguNTI5OCU7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi53cmFwcGVyX19pbm5lcjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLndyYXBwZXJfX2lubmVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMCU7XG4gIH1cbn1cblxuLnNjcmVlbi1yZWFkZXItdGV4dCB7XG4gIGJvcmRlcjogMDtcbiAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgaGVpZ2h0OiAxcHg7XG4gIG1hcmdpbjogLTFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICAvKlxuICAgKiBFeHRlbmRzIHRoZSAudmlzdWFsbHloaWRkZW4gY2xhc3MgdG8gYWxsb3cgdGhlIGVsZW1lbnQgdG8gYmUgZm9jdXNhYmxlXG4gICAqIHdoZW4gbmF2aWdhdGVkIHRvIHZpYSB0aGUga2V5Ym9hcmQ6IGg1YnAuY29tL3BcbiAgICovXG59XG4uc2NyZWVuLXJlYWRlci10ZXh0LmZvY3VzYWJsZTphY3RpdmUsIC5zY3JlZW4tcmVhZGVyLXRleHQuZm9jdXNhYmxlOmZvY3VzIHtcbiAgY2xpcDogYXV0bztcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwb3NpdGlvbjogc3RhdGljO1xuICB3aWR0aDogYXV0bztcbn1cblxuLmJ0bi4tZGVmYXVsdCB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgbGV0dGVyLXNwYWNpbmc6IDFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBwYWRkaW5nOiAuNjI1ZW0gMi4yNWVtO1xuICBib3JkZXItcmFkaXVzOiAycHg7XG4gIGNvbG9yOiAjZWEwMDhhO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAycHggc29saWQgI2VhMDA4YTtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbn1cbi5idG4uLWRlZmF1bHQ6aG92ZXIge1xuICBjb2xvcjogd2hpdGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYTAwOGE7XG4gIGJvcmRlci1jb2xvcjogI2VhMDA4YTtcbn1cbi5idG4uLWJsdWUge1xuICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGxldHRlci1zcGFjaW5nOiAxcHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZzogLjYyNWVtIDIuMjVlbTtcbiAgYm9yZGVyLXJhZGl1czogMnB4O1xuICBjb2xvcjogIzE2MTYzYTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMnB4IHNvbGlkICMxNjE2M2E7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uYnRuLi1ibHVlOmhvdmVyIHtcbiAgY29sb3I6IHdoaXRlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTYxNjNhO1xuICBib3JkZXItY29sb3I6ICMxNjE2M2E7XG59XG5cbi5jaGVja2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgY29sb3I6ICNlYTAwOGE7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9iZy1jaGVja2xpc3QucG5nXCIpIG5vLXJlcGVhdCAwIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiA4MnB4IDk0cHg7XG4gIHBhZGRpbmctbGVmdDogMTIycHg7XG59XG4uc3ZnIC5jaGVja2xpc3Qge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYmctY2hlY2tsaXN0LnN2Z1wiKTtcbn1cbi5jaGVja2xpc3QgbGkge1xuICBtYXJnaW4tYm90dG9tOiAuMjVlbTtcbn1cbi5jaGVja2xpc3QgbGk6YmVmb3JlIHtcbiAgY29udGVudDogJ+KAoiAnO1xuICBtYXJnaW4tcmlnaHQ6IC4yNWVtO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgYW5pbWF0ZWRHcmFkaWVudCB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XG4gIH1cblxuICA1MCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xuICB9XG59XG5ALW1vei1rZXlmcmFtZXMgYW5pbWF0ZWRHcmFkaWVudCB7XG4gIDAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAwJSA1MCU7XG4gIH1cblxuICA1MCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDEwMCUgNTAlO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xuICB9XG59XG5Aa2V5ZnJhbWVzIGFuaW1hdGVkR3JhZGllbnQge1xuICAwJSB7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCUgNTAlO1xuICB9XG5cbiAgNTAlIHtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAxMDAlIDUwJTtcbiAgfVxuXG4gIDEwMCUge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDAlIDUwJTtcbiAgfVxufVxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIEZvcm0gU3R5bGVzLlxuICAgPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cbi5mb3JtX19yb3cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMWVtO1xufVxuLmZvcm1fX3JvdzphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cbi5mb3JtX19yb3dfX2lucHV0IHtcbiAgbWFyZ2luLWJvdHRvbTogLjc1ZW07XG59XG4uZm9ybV9fcm93X19pbnB1dC4tc3Bhbi0xIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogNi4xNzIxNSU7XG59XG4uZm9ybV9fcm93X19pbnB1dC4tc3Bhbi0xOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZm9ybV9fcm93X19pbnB1dC4tc3Bhbi0xIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDE0LjcwMTk2JTtcbn1cbi5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTI6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTIge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZm9ybV9fcm93X19pbnB1dC4tc3Bhbi0zIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogMjMuMjMxNzYlO1xufVxuLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tMzpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tMyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTQge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIHdpZHRoOiAzMS43NjE1NyU7XG59XG4uZm9ybV9fcm93X19pbnB1dC4tc3Bhbi00Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZm9ybV9fcm93X19pbnB1dC4tc3Bhbi00IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tNSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDQwLjI5MTM3JTtcbn1cbi5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTUge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZm9ybV9fcm93X19pbnB1dC4tc3Bhbi02IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogNDguODIxMTclO1xufVxuLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tNjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tNiB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTcge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIHdpZHRoOiA1Ny4zNTA5OCU7XG59XG4uZm9ybV9fcm93X19pbnB1dC4tc3Bhbi03Omxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZm9ybV9fcm93X19pbnB1dC4tc3Bhbi03IHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tOCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDY1Ljg4MDc4JTtcbn1cbi5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTg6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTgge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZm9ybV9fcm93X19pbnB1dC4tc3Bhbi05IHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogNzQuNDEwNTklO1xufVxuLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tOTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tOSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTEwIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogODIuOTQwMzklO1xufVxuLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tMTA6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTEwIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuLmZvcm1fX3Jvd19faW5wdXQuLXNwYW4tMTEge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIHdpZHRoOiA5MS40NzAyJTtcbn1cbi5mb3JtX19yb3dfX2lucHV0Li1zcGFuLTExOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuZm9ybV9fcm93X19pbnB1dC4tc3Bhbi0xMSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cbi5mb3JtX19yb3dfX2lucHV0IGxhYmVsIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IC4yNWVtO1xufVxuLmZvcm1fX3Jvd19faW5wdXQgbGFiZWwgc3VwIHtcbiAgY29sb3I6ICNlMjQwM2U7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uZm9ybV9fcm93X19pbnB1dCBpbnB1dCwgLmZvcm1fX3Jvd19faW5wdXQgdGV4dGFyZWEge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgLW1zLWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1vLWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG4gIGJvcmRlcjogMnB4IHNvbGlkICNlYWVhZWE7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2Y3ZjdmNztcbiAgbGluZS1oZWlnaHQ6IDEuMjVlbTtcbiAgcGFkZGluZzogLjc1ZW07XG4gIHdpZHRoOiAxMDAlO1xuICBvdXRsaW5lOiBub25lO1xufVxuLmZvcm1fX3Jvd19faW5wdXQgaW5wdXQ6Zm9jdXMsIC5mb3JtX19yb3dfX2lucHV0IHRleHRhcmVhOmZvY3VzIHtcbiAgYm9yZGVyLWNvbG9yOiAjYWJhYmFiO1xufVxuLmZvcm1fX3Jvd19faW5wdXQgaW5wdXQucGFyc2xleS1lcnJvciwgLmZvcm1fX3Jvd19faW5wdXQgdGV4dGFyZWEucGFyc2xleS1lcnJvciB7XG4gIGJvcmRlci1jb2xvcjogI2UyNDAzZTtcbn1cbi5mb3JtX19yb3dfX2lucHV0IC5wYXJzbGV5LWVycm9ycy1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIGNvbG9yOiAjZTI0MDNlO1xufVxuLmZvcm1fX3Jvd19faW5wdXQgLnBhcnNsZXktZXJyb3JzLWxpc3QuZmlsbGVkIHtcbiAgbWFyZ2luOiAuNWVtIDA7XG59XG4uZm9ybV9fcm93IFt0eXBlPVwic3VibWl0XCJdIHtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmc6IC42MjVlbSAyLjI1ZW07XG4gIGJvcmRlci1yYWRpdXM6IDJweDtcbiAgY29sb3I6ICNlYTAwOGE7XG4gIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXI6IDJweCBzb2xpZCAjZWEwMDhhO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLmZvcm1fX3JvdyBbdHlwZT1cInN1Ym1pdFwiXTpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhMDA4YTtcbiAgYm9yZGVyLWNvbG9yOiAjZWEwMDhhO1xufVxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgTWFpbiBTdHlsZXMuXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuLmhlYWRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xuICBwYWRkaW5nOiAxZW0gMCAuNWVtIDA7XG4gIGJveC1zaGFkb3c6IDAgMCA1cHggI2FiYWJhYjtcbn1cbi5oZWFkZXIuLXN0dWNrIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAzO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmhlYWRlcl9fbG9nbyB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMTI4cHg7XG4gIG1hcmdpbjogMCA1MHB4IDAgMDtcbn1cbi5oZWFkZXJfX2xvZ28gYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvbG9nby5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuICBoZWlnaHQ6IDM1cHg7XG59XG4uaGVhZGVyX19sb2dvIGE6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG59XG4uc3ZnIC5oZWFkZXJfX2xvZ28gYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9sb2dvLnN2Z1wiKTtcbn1cbi5oZWFkZXJfX25hdmlnYXRpb24tdG9nZ2xlIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBmb250LXNpemU6IDEuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDFleDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIC5oZWFkZXJfX25hdmlnYXRpb24tdG9nZ2xlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTYwcHgpIHtcbiAgLmhlYWRlcl9fbmF2aWdhdGlvbiB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdCB7XG4gIGZsb2F0OiBsZWZ0O1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xuICBmb250LXdlaWdodDogNDAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICBtYXJnaW46IC4yNWVtIDA7XG59XG4uaGVhZGVyX19uYXZpZ2F0aW9uX19saXN0Li1zZWNvbmRhcnkge1xuICBmbG9hdDogcmlnaHQ7XG59XG4jalBhbmVsTWVudS1tZW51IC5oZWFkZXJfX25hdmlnYXRpb25fX2xpc3Qge1xuICBmbG9hdDogbm9uZTtcbiAgbWFyZ2luLWJvdHRvbTogMS41ZW07XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cbiNqUGFuZWxNZW51LW1lbnUgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdC4tcHJpbWFyeSB7XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMzIzMjg0O1xufVxuLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdF9faXRlbSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW4tcmlnaHQ6IDJlbTtcbn1cbi5oZWFkZXJfX25hdmlnYXRpb25fX2xpc3RfX2l0ZW06bGFzdC1vZi10eXBlIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdF9faXRlbS4tc29jaWFsLCAuaGVhZGVyX19uYXZpZ2F0aW9uX19saXN0X19pdGVtLi1kaXZpZGVyIHtcbiAgbWFyZ2luLXJpZ2h0OiAxZW07XG59XG4uaGVhZGVyX19uYXZpZ2F0aW9uX19saXN0X19pdGVtLi1zb2NpYWwgYSwgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdF9faXRlbS4tZGl2aWRlciBhIHtcbiAgY29sb3I6ICNhYmFiYWI7XG59XG4uaGVhZGVyX19uYXZpZ2F0aW9uX19saXN0X19pdGVtLi1kaXZpZGVyIHtcbiAgcGFkZGluZy1sZWZ0OiAxZW07XG4gIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2FiYWJhYjtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdF9faXRlbSBhIHtcbiAgY29sb3I6ICM4MDgxODQ7XG59XG4uaGVhZGVyX19uYXZpZ2F0aW9uX19saXN0X19pdGVtIGE6aG92ZXIsIC5oZWFkZXJfX25hdmlnYXRpb25fX2xpc3RfX2l0ZW0gYS5hY3RpdmUge1xuICBjb2xvcjogI2VhMDA4YTtcbn1cbiNqUGFuZWxNZW51LW1lbnUgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdF9faXRlbSB7XG4gIGZsb2F0OiBub25lO1xuICBtYXJnaW46IDAgMCAuNWVtIDA7XG59XG4jalBhbmVsTWVudS1tZW51IC5oZWFkZXJfX25hdmlnYXRpb25fX2xpc3RfX2l0ZW0uLXNvY2lhbCwgI2pQYW5lbE1lbnUtbWVudSAuaGVhZGVyX19uYXZpZ2F0aW9uX19saXN0X19pdGVtLi1kaXZpZGVyIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBtYXJnaW46IDAgMWVtO1xufVxuI2pQYW5lbE1lbnUtbWVudSAuaGVhZGVyX19uYXZpZ2F0aW9uX19saXN0X19pdGVtLi1kaXZpZGVyIHtcbiAgYm9yZGVyLWxlZnQ6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbn1cbiNqUGFuZWxNZW51LW1lbnUgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdF9faXRlbSBhIHtcbiAgY29sb3I6IHdoaXRlO1xufVxuI2pQYW5lbE1lbnUtbWVudSAuaGVhZGVyX19uYXZpZ2F0aW9uX19saXN0X19pdGVtIGE6aG92ZXIsICNqUGFuZWxNZW51LW1lbnUgLmhlYWRlcl9fbmF2aWdhdGlvbl9fbGlzdF9faXRlbSBhLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZWEwMDhhO1xufVxuXG4uY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG4uY29udGVudCAuaGVybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhMDA4YTtcbn1cbi5wcm9kdWN0IC5jb250ZW50IC5oZXJvIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMDA4YjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoLTU3MGRlZywgI2ViMDA4YiwgI2UyMGU4MywgI2U0MWQ2ZiwgI2U1MmU2MSwgI2U4NTE0NiwgI2VjN2UyMCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgzMDBkZWcsI2ViMDA4YiwgI2UyMGU4MywgI2U0MWQ2ZiwgI2U1MmU2MSwgI2U4NTE0NiwgI2VjN2UyMCk7XG59XG4ucGFnZSAuY29udGVudCAuaGVybyB7XG4gIGJhY2tncm91bmQtY29sb3I6IHdoaXRlO1xufVxuLmNvbnRlbnQgLmhlcm9fX21lc3NhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDI7XG4gIHdpZHRoOiAxMDAlO1xuICBwYWRkaW5nOiAxMCUgMDtcbn1cbi5wYWdlIC5jb250ZW50IC5oZXJvX19tZXNzYWdlIHtcbiAgcGFkZGluZzogOCUgMCA0JSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4ucGFnZSAuY29udGVudCAuaGVyb19fbWVzc2FnZSAud3JhcHBlciB7XG4gIG1heC13aWR0aDogNTYwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29udGVudCAuaGVyb19fbWVzc2FnZSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG59XG4ucHJvZHVjdCAuY29udGVudCAuaGVyb19fbWVzc2FnZSB7XG4gIHBhZGRpbmc6IDA7XG59XG4ucHJvZHVjdCAuY29udGVudCAuaGVyb19fbWVzc2FnZSAud3JhcHBlciB7XG4gIHBhZGRpbmc6IDEwJSAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYmctaGVyby13cmFwcGVyLnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG59XG4uc3ZnIC5wcm9kdWN0IC5jb250ZW50IC5oZXJvX19tZXNzYWdlIC53cmFwcGVyIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2JnLWhlcm8td3JhcHBlci5zdmdcIik7XG59XG4uY29udGVudCAuaGVyb19fbWVzc2FnZV9faGVhZGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogNDguODIxMTclO1xuICBmb250LXNpemU6IDMuNzVlbTtcbiAgbGluZS1oZWlnaHQ6IDFlbTtcbiAgY29sb3I6ICMxNjE2M2E7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1ib3R0b206IC41ZW07XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC1tcy1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbiAgLW8tYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLW1zLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC1tcy1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtby1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLW1zLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1vLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW8tYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uY29udGVudCAuaGVyb19fbWVzc2FnZV9faGVhZGVyOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uY29udGVudCAuaGVyb19fbWVzc2FnZV9faGVhZGVyLi1zdWIge1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogd2hpdGU7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG4uY29tcGFueSAuY29udGVudCAuaGVyb19fbWVzc2FnZV9faGVhZGVyLi1zdWIge1xuICB0ZXh0LXNoYWRvdzogMCAwIDVweCAjNGQ0ZDRkO1xufVxuLnBhZ2UgLmNvbnRlbnQgLmhlcm9fX21lc3NhZ2VfX2hlYWRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBmb250LXNpemU6IDIuNjI1ZW07XG4gIG1hcmdpbi1ib3R0b206IC43NWVtO1xuICBjb2xvcjogIzRkNGQ0ZDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5wYWdlIC5jb250ZW50IC5oZXJvX19tZXNzYWdlX19oZWFkZXIge1xuICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29udGVudCAuaGVyb19fbWVzc2FnZV9faGVhZGVyIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgLmNvbnRlbnQgLmhlcm9fX21lc3NhZ2VfX2hlYWRlciB7XG4gICAgZm9udC1zaXplOiAyLjI1ZW07XG4gIH1cbn1cbi5jb250ZW50IC5oZXJvX19tZXNzYWdlX19pbnRybyB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDQ4LjgyMTE3JTtcbiAgY29sb3I6IHdoaXRlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbiAgLW1vei1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIC1tcy1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIC1vLWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLW1zLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogMC41cztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAwLjVzO1xuICBhbmltYXRpb24tZGVsYXk6IDAuNXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLW1vei1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtbXMtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLW8tYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tcy1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtby1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1vLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLmNvbnRlbnQgLmhlcm9fX21lc3NhZ2VfX2ludHJvOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4ucGFnZSAuY29udGVudCAuaGVyb19fbWVzc2FnZV9faW50cm8ge1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICM0ZDRkNGQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29udGVudCAuaGVyb19fbWVzc2FnZV9faW50cm8ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uY29udGVudCAuaGVyb19fbWVzc2FnZV9faW50cm8gcCB7XG4gIGZvbnQtc2l6ZTogMS41ZW07XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG59XG4ucGFnZSAuY29udGVudCAuaGVyb19fbWVzc2FnZV9faW50cm8gcCB7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuLmNvbnRlbnQgLmhlcm9fX21lc3NhZ2VfX2ludHJvIHA6Zmlyc3Qtb2YtdHlwZSB7XG4gIG1hcmdpbi10b3A6IDA7XG59XG4uY29udGVudCAuaGVyb19fbWVzc2FnZV9faW50cm8gcCAuYnRuIHtcbiAgZm9udC1zaXplOiAxcmVtO1xufVxuLmNvbnRlbnQgLmhlcm9fX2JnIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxO1xuICBsZWZ0OiAwO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9iZy1oZXJvLnBuZ1wiKSBuby1yZXBlYXQgNTAlIDUwJTtcbiAgYmFja2dyb3VuZC1zaXplOiAxMjAlO1xufVxuLnN2ZyAuY29udGVudCAuaGVyb19fYmcge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYmctaGVyby5zdmdcIik7XG59XG4uY29tcGFueSAuY29udGVudCAuaGVyb19fYmcge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYmctaGVyby1jb21wYW55LmpwZ1wiKTtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbi5wYWdlIC5jb250ZW50IC5oZXJvX19iZyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG59XG4uY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzE2MTYzYTtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kLWltYWdlIDAuMjVzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGJhY2tncm91bmQtaW1hZ2UgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGJhY2tncm91bmQtaW1hZ2UgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIHdpZHRoOiAxMDAlO1xufVxuLmNvbnRlbnQgLmNvbnRlbnQtbmF2aWdhdGlvbi4tc3R1Y2sge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHotaW5kZXg6IDM7XG4gIGxlZnQ6IDA7XG59XG4uY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uX19saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogMDtcbn1cbi5jb250ZW50IC5jb250ZW50LW5hdmlnYXRpb25fX2xpc3Q6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG4uY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uX19saXN0X19pdGVtIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAyNSU7XG59XG4uY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uX19saXN0X19pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gIGJhY2tncm91bmQ6IHVybChcIi4uL2ltZy9iZy1jb250ZW50LW5hdmlnYXRpb24tZGl2aWRlci5wbmdcIikgbm8tcmVwZWF0IDEwMCUgNTAlO1xufVxuLnN2ZyAuY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uX19saXN0X19pdGVtOmxhc3Qtb2YtdHlwZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9iZy1jb250ZW50LW5hdmlnYXRpb24tZGl2aWRlci5zdmdcIik7XG59XG4uY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uX19saXN0X19pdGVtIGEge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogLjVlbSAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JnLWNvbnRlbnQtbmF2aWdhdGlvbi1kaXZpZGVyLnBuZ1wiKSBuby1yZXBlYXQgMCA1MCU7XG59XG4uc3ZnIC5jb250ZW50IC5jb250ZW50LW5hdmlnYXRpb25fX2xpc3RfX2l0ZW0gYSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9iZy1jb250ZW50LW5hdmlnYXRpb24tZGl2aWRlci5zdmdcIik7XG59XG4uY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uX19saXN0X19pdGVtIGEgLmljb24ge1xuICBvcGFjaXR5OiAuNTtcbiAgZm9udC1zaXplOiAxLjM3NWVtO1xuICBsaW5lLWhlaWdodDogLjgxMjVlbTtcbiAgbWFyZ2luLXJpZ2h0OiAuMjVlbTtcbiAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xuICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbn1cbi5jb250ZW50IC5jb250ZW50LW5hdmlnYXRpb25fX2xpc3RfX2l0ZW0gYS5hY3RpdmUsIC5jb250ZW50IC5jb250ZW50LW5hdmlnYXRpb25fX2xpc3RfX2l0ZW0gYTpob3ZlciB7XG4gIGNvbG9yOiAjZWEwMDhhO1xufVxuLmNvbnRlbnQgLmNvbnRlbnQtbmF2aWdhdGlvbl9fbGlzdF9faXRlbSBhLmFjdGl2ZSAuaWNvbiwgLmNvbnRlbnQgLmNvbnRlbnQtbmF2aWdhdGlvbl9fbGlzdF9faXRlbSBhOmhvdmVyIC5pY29uIHtcbiAgb3BhY2l0eTogMTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDU2MHB4KSB7XG4gIC5jb250ZW50IC5jb250ZW50LW5hdmlnYXRpb25fX2xpc3RfX2l0ZW0gYSAuaWNvbiB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuICAuY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uX19saXN0X19pdGVtIGEgLmxhYmVsIHtcbiAgICBib3JkZXI6IDA7XG4gICAgY2xpcDogcmVjdCgwIDAgMCAwKTtcbiAgICBoZWlnaHQ6IDFweDtcbiAgICBtYXJnaW46IC0xcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB3aWR0aDogMXB4O1xuICAgIC8qXG4gICAgICogRXh0ZW5kcyB0aGUgLnZpc3VhbGx5aGlkZGVuIGNsYXNzIHRvIGFsbG93IHRoZSBlbGVtZW50IHRvIGJlIGZvY3VzYWJsZVxuICAgICAqIHdoZW4gbmF2aWdhdGVkIHRvIHZpYSB0aGUga2V5Ym9hcmQ6IGg1YnAuY29tL3BcbiAgICAgKi9cbiAgfVxuICAuY29udGVudCAuY29udGVudC1uYXZpZ2F0aW9uX19saXN0X19pdGVtIGEgLmxhYmVsLmZvY3VzYWJsZTphY3RpdmUsIC5jb250ZW50IC5jb250ZW50LW5hdmlnYXRpb25fX2xpc3RfX2l0ZW0gYSAubGFiZWwuZm9jdXNhYmxlOmZvY3VzIHtcbiAgICBjbGlwOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICBtYXJnaW46IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgfVxufVxuLmNvbnRlbnQgLnNlY3Rpb24ge1xuICBwYWRkaW5nOiA2JSAwO1xufVxuLmNvbnRlbnQgLnNlY3Rpb24uLWFib3V0IHtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JnLXNlY3Rpb24tYWJvdXQucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG4gIGJhY2tncm91bmQtc2l6ZTogMjExcHggMzM3cHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC1tcy1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbiAgLW8tYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLW1zLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC1tcy1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtby1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLW1zLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1vLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW8tYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uc3ZnIC5jb250ZW50IC5zZWN0aW9uLi1hYm91dCB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9iZy1zZWN0aW9uLWFib3V0LnN2Z1wiKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5zZWN0aW9uLi1hYm91dCB7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogbm9uZSAhaW1wb3J0YW50O1xuICB9XG59XG4uY29udGVudCAuc2VjdGlvbi4tZmFxcyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG59XG4uY29udGVudCAuc2VjdGlvbi4tam9icy1pbnRybyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG59XG4uY29udGVudCAuc2VjdGlvbi4tam9icy1pbnRybzpiZWZvcmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTQyJTtcbiAgbGVmdDogMDtcbiAgY29udGVudDogJyc7XG4gIHdpZHRoOiAyODRweDtcbiAgaGVpZ2h0OiA1MTVweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JnLXNlY3Rpb24tam9icy5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuLnN2ZyAuY29udGVudCAuc2VjdGlvbi4tam9icy1pbnRybzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYmctc2VjdGlvbi1qb2JzLnN2Z1wiKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5zZWN0aW9uLi1qb2JzLWludHJvOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmNvbnRlbnQgLnNlY3Rpb24uLWpvYnMtaW50cm86YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGNvbnRlbnQ6ICcnO1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogMTAwJTtcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMjBweCBzb2xpZCAjZjdmN2Y3O1xuICBtYXJnaW4tbGVmdDogLTIwcHg7XG59XG4uY29udGVudCAuc2VjdGlvbl9fY29udGVudDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cbi5jb250ZW50IC5zZWN0aW9uX19jb250ZW50X19tYWluIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogNDguODIxMTclO1xufVxuLmNvbnRlbnQgLnNlY3Rpb25fX2NvbnRlbnRfX21haW46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5jb250ZW50IC5zZWN0aW9uX19jb250ZW50X19zaWRlIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogNDguODIxMTclO1xufVxuLmNvbnRlbnQgLnNlY3Rpb25fX2NvbnRlbnRfX3NpZGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5zZWN0aW9uX19jb250ZW50X19tYWluLCAuY29udGVudCAuc2VjdGlvbl9fY29udGVudF9fc2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgLmNvbnRlbnQgLnNlY3Rpb25fX2NvbnRlbnRfX21haW4ge1xuICAgIG1hcmdpbi1ib3R0b206IDIuNWVtO1xuICB9XG59XG4uY29udGVudCAuaW50cm8ge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDglIDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuY29udGVudCAuaW50cm8ge1xuICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgfVxufVxuLnByb2R1Y3QgLmNvbnRlbnQgLmludHJvLndyYXBwZXIge1xuICBtYXJnaW4tdG9wOiA0MHB4O1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYmctaW50cm8td3JhcHBlci5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbn1cbi5zdmcgLnByb2R1Y3QgLmNvbnRlbnQgLmludHJvLndyYXBwZXIge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYmctaW50cm8td3JhcHBlci5zdmdcIik7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAucHJvZHVjdCAuY29udGVudCAuaW50cm8ud3JhcHBlciB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxufVxuLmNvbnRlbnQgLmludHJvX19oZWFkZXIgaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogYXV0bztcbn1cbi5jb250ZW50IC5pbnRyb19fY29udGVudCB7XG4gIG1heC13aWR0aDogNTIwcHg7XG4gIG1hcmdpbjogYXV0bztcbn1cbi5jb250ZW50IC5pbnRyb19fY29udGVudCA+IHAge1xuICBsaW5lLWhlaWdodDogMS43NWVtO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG59XG4uY29udGVudCAucHJvY2VzcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIHBhZGRpbmc6IDglIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYTAwOGE7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlYjAwOGI7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KC01NzBkZWcsICNlYjAwOGIsICNlMjBlODMsICNlNDFkNmYsICNlNTJlNjEsICNlODUxNDYsICNlYzdlMjApO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMzAwZGVnLCNlYjAwOGIsICNlMjBlODMsICNlNDFkNmYsICNlNTJlNjEsICNlODUxNDYsICNlYzdlMjApO1xufVxuLmNvbnRlbnQgLnByb2Nlc3M6YmVmb3JlIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAtNDAlO1xuICByaWdodDogMDtcbiAgd2lkdGg6IDMzN3B4O1xuICBoZWlnaHQ6IDYxMHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvYmctcHJvY2Vzcy5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbn1cbi5zdmcgLmNvbnRlbnQgLnByb2Nlc3M6YmVmb3JlIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiLi4vaW1nL2JnLXByb2Nlc3Muc3ZnXCIpO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgLmNvbnRlbnQgLnByb2Nlc3M6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG59XG4uY29udGVudCAucHJvY2VzczphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMTAwJTtcbiAgbGVmdDogNTAlO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBib3JkZXItbGVmdDogMzBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJpZ2h0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItdG9wOiAzMHB4IHNvbGlkICNlMjBlODM7XG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcbiAgbWFyZ2luLXRvcDogLTFweDtcbn1cbi5jb250ZW50IC5wcm9jZXNzX19oZWFkZXIge1xuICBjb2xvcjogd2hpdGU7XG59XG4uY29udGVudCAucHJvY2Vzc19fY29udGVudCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xufVxuLmNvbnRlbnQgLnByb2Nlc3NfX2NvbnRlbnQ6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG4uY29udGVudCAucHJvY2Vzc19fY29udGVudF9fbWFpbiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDU3LjM1MDk4JTtcbiAgY29sb3I6IHdoaXRlO1xufVxuLmNvbnRlbnQgLnByb2Nlc3NfX2NvbnRlbnRfX21haW46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5wcm9jZXNzX19jb250ZW50X19tYWluIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG4uY29udGVudCAucHJvY2Vzc19fY29udGVudF9fYXNpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIHdpZHRoOiAzMS43NjE1NyU7XG4gIG1hcmdpbi1sZWZ0OiA4LjUyOTglO1xufVxuLmNvbnRlbnQgLnByb2Nlc3NfX2NvbnRlbnRfX2FzaWRlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29udGVudCAucHJvY2Vzc19fY29udGVudF9fYXNpZGUge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1sZWZ0OiAwJTtcbiAgfVxufVxuLmNvbnRlbnQgLnByb2Nlc3NfX2NvbnRlbnRfX2FzaWRlIGJsb2NrcXVvdGUge1xuICBjb2xvcjogIzE2MTYzYTtcbn1cbi5jb250ZW50IC5vZmZlcmluZ3Mge1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29udGVudCAub2ZmZXJpbmdzLi1hbHQge1xuICBwYWRkaW5nOiA4JSAwIDQlIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICNmN2Y3Zjc7XG59XG4uY29udGVudCAub2ZmZXJpbmdzX19maWd1cmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctdG9wOiA0MCU7XG4gIG1hcmdpbi1ib3R0b206IDgwcHg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHotaW5kZXg6IDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29udGVudCAub2ZmZXJpbmdzX19maWd1cmUge1xuICAgIHBhZGRpbmctdG9wOiA1Ni4yNSU7XG4gICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgfVxufVxuLmNvbnRlbnQgLm9mZmVyaW5nc19fZmlndXJlX19pbWFnZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogLTE7XG4gIGxlZnQ6IDA7XG4gIHRvcDogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgYmFja2dyb3VuZC1zaXplOiBjb3Zlcjtcbn1cbi5jb250ZW50IC5vZmZlcmluZ3NfX2hlYWRlciB7XG4gIG1hcmdpbi1ib3R0b206IDgwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAub2ZmZXJpbmdzX19oZWFkZXIge1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbiAgLmNvbnRlbnQgLm9mZmVyaW5nc19faGVhZGVyIGgxIHtcbiAgICBmb250LXNpemU6IDEuODc1ZW07XG4gIH1cbn1cbi5jb250ZW50IC5vZmZlcmluZ3NfX2xpc3Qge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC1tcy1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbiAgLW8tYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLW1zLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC1tcy1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtby1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLW1zLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1vLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW8tYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uY29udGVudCAub2ZmZXJpbmdzX19saXN0OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuLmNvbnRlbnQgLm9mZmVyaW5nc19fbGlzdF9faXRlbSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDQ4LjgyMTE3JTtcbiAgbWFyZ2luLWJvdHRvbTogODBweDtcbn1cbi5jb250ZW50IC5vZmZlcmluZ3NfX2xpc3RfX2l0ZW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5jb250ZW50IC5vZmZlcmluZ3NfX2xpc3RfX2l0ZW06bnRoLWNoaWxkKDJuKSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5jb250ZW50IC5vZmZlcmluZ3NfX2xpc3RfX2l0ZW06bnRoLWNoaWxkKDJuKzEpIHtcbiAgY2xlYXI6IGxlZnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAub2ZmZXJpbmdzX19saXN0X19pdGVtIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICB9XG59XG4uY29udGVudCAub2ZmZXJpbmdzX19saXN0X19pdGVtX19pY29uIHtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbn1cbi5jb250ZW50IC5vZmZlcmluZ3NfX2xpc3RfX2l0ZW1fX2NvbnRlbnQge1xuICBtYXgtd2lkdGg6IDI0MHB4O1xuICBtYXJnaW46IGF1dG87XG59XG4uY29udGVudCAub2ZmZXJpbmdzX19saXN0X19pdGVtX19jb250ZW50IGgyIHtcbiAgZm9udC1zaXplOiAxLjEyNWVtO1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBmb250LXdlaWdodDogNjAwO1xufVxuLmNvbnRlbnQgLm92ZXJ2aWV3IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTYxNjNhO1xuICBjb2xvcjogI2VhZWFlYTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxMjVweCAwIDgwcHggMDtcbiAgb3ZlcmZsb3c6IHZpc2libGU7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAub3ZlcnZpZXcge1xuICAgIHBhZGRpbmc6IDQwcHggMDtcbiAgfVxufVxuLmNvbnRlbnQgLm92ZXJ2aWV3OmJlZm9yZSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogMDtcbiAgbGVmdDogLTEwJTtcbiAgcmlnaHQ6IC0xMCU7XG4gIHRvcDogLTIwJTtcbiAgYm90dG9tOiAwO1xuICBjb250ZW50OiAnJztcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JnLW92ZXJ2aWV3LnBuZ1wiKSBuby1yZXBlYXQgMCAwO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgLmNvbnRlbnQgLm92ZXJ2aWV3OmJlZm9yZSB7XG4gICAgdG9wOiAwO1xuICAgIG9wYWNpdHk6IC41O1xuICB9XG59XG4uc3ZnIC5jb250ZW50IC5vdmVydmlldzpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoXCIuLi9pbWcvYmctb3ZlcnZpZXcuc3ZnXCIpO1xufVxuLmNvbnRlbnQgLm92ZXJ2aWV3X19oZWFkZXIge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xuICAtbW96LWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xuICAtbXMtYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7XG4gIC1vLWFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5VcDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1tcy1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtby1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLW1vei1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtbXMtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLW8tYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tcy1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtby1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1vLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLmNvbnRlbnQgLm92ZXJ2aWV3X19saXN0IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIC1tcy1hbmltYXRpb24tbmFtZTogZmFkZUluRG93bjtcbiAgLW8tYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLW1zLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC1tcy1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtby1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLW1zLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1vLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW8tYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uY29udGVudCAub3ZlcnZpZXdfX2xpc3Q6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAub3ZlcnZpZXdfX2xpc3Qge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cbi5jb250ZW50IC5vdmVydmlld19fbGlzdF9faXRlbSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDMxLjc2MTU3JTtcbn1cbi5jb250ZW50IC5vdmVydmlld19fbGlzdF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmNvbnRlbnQgLm92ZXJ2aWV3X19saXN0X19pdGVtOm50aC1jaGlsZCgzbikge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uY29udGVudCAub3ZlcnZpZXdfX2xpc3RfX2l0ZW06bnRoLWNoaWxkKDNuKzEpIHtcbiAgY2xlYXI6IGxlZnQ7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAub3ZlcnZpZXdfX2xpc3RfX2l0ZW0ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gIH1cbn1cbi5jb250ZW50IC5vdmVydmlld19fbGlzdF9faXRlbS4tY29sMiB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDQ4LjgyMTE3JTtcbn1cbi5jb250ZW50IC5vdmVydmlld19fbGlzdF9faXRlbS4tY29sMjpsYXN0LWNoaWxkIHtcbiAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuLmNvbnRlbnQgLm92ZXJ2aWV3X19saXN0X19pdGVtLi1jb2wyOm50aC1jaGlsZCgybikge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uY29udGVudCAub3ZlcnZpZXdfX2xpc3RfX2l0ZW0uLWNvbDI6bnRoLWNoaWxkKDJuKzEpIHtcbiAgY2xlYXI6IGxlZnQ7XG59XG4uY29udGVudCAub3ZlcnZpZXdfX2NvbnRlbnQge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHotaW5kZXg6IDE7XG4gIG1heC13aWR0aDogNTAwcHg7XG4gIG1hcmdpbjogYXV0bztcbn1cbi5jb250ZW50IC5vdmVydmlld19fY29udGVudCAuYnRuIHtcbiAgbWFyZ2luLXRvcDogNDBweDtcbn1cbi5jb250ZW50IC5wYXJ0bmVycyB7XG4gIHBhZGRpbmc6IDgwcHggMDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNvbnRlbnQgLnBhcnRuZXJzX19oZWFkZXIge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xufVxuLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0OmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0X19pdGVtIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogMTQuNzAxOTYlO1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xufVxuLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0X19pdGVtOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uY29udGVudCAucGFydG5lcnNfX2xpc3RfX2l0ZW06bnRoLWNoaWxkKDZuKSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5jb250ZW50IC5wYXJ0bmVyc19fbGlzdF9faXRlbTpudGgtY2hpbGQoNm4rMSkge1xuICBjbGVhcjogbGVmdDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIC5jb250ZW50IC5wYXJ0bmVyc19fbGlzdF9faXRlbSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogMjMuMjMxNzYlO1xuICB9XG4gIC5jb250ZW50IC5wYXJ0bmVyc19fbGlzdF9faXRlbTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0X19pdGVtOm50aC1jaGlsZCg2bikge1xuICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIH1cbiAgLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0X19pdGVtOm50aC1jaGlsZCg2bisxKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0X19pdGVtOm50aC1jaGlsZCg0bikge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuY29udGVudCAucGFydG5lcnNfX2xpc3RfX2l0ZW06bnRoLWNoaWxkKDRuKzEpIHtcbiAgICBjbGVhcjogbGVmdDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0X19pdGVtIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICAgIHdpZHRoOiAzMS43NjE1NyU7XG4gIH1cbiAgLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0X19pdGVtOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuY29udGVudCAucGFydG5lcnNfX2xpc3RfX2l0ZW06bnRoLWNoaWxkKDRuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgfVxuICAuY29udGVudCAucGFydG5lcnNfX2xpc3RfX2l0ZW06bnRoLWNoaWxkKDRuKzEpIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxuICAuY29udGVudCAucGFydG5lcnNfX2xpc3RfX2l0ZW06bnRoLWNoaWxkKDNuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5jb250ZW50IC5wYXJ0bmVyc19fbGlzdF9faXRlbTpudGgtY2hpbGQoM24rMSkge1xuICAgIGNsZWFyOiBsZWZ0O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAucGFydG5lcnNfX2xpc3RfX2l0ZW0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gICAgd2lkdGg6IDQ4LjgyMTE3JTtcbiAgfVxuICAuY29udGVudCAucGFydG5lcnNfX2xpc3RfX2l0ZW06bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5jb250ZW50IC5wYXJ0bmVyc19fbGlzdF9faXRlbTpudGgtY2hpbGQoM24pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB9XG4gIC5jb250ZW50IC5wYXJ0bmVyc19fbGlzdF9faXRlbTpudGgtY2hpbGQoM24rMSkge1xuICAgIGNsZWFyOiBub25lO1xuICB9XG4gIC5jb250ZW50IC5wYXJ0bmVyc19fbGlzdF9faXRlbTpudGgtY2hpbGQoMm4pIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmNvbnRlbnQgLnBhcnRuZXJzX19saXN0X19pdGVtOm50aC1jaGlsZCgybisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7XG4gIH1cbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQ4MHB4KSB7XG4gIC5jb250ZW50IC5wYXJ0bmVyc19fbGlzdF9faXRlbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxufVxuLmNvbnRlbnQgLmludHJvLWRtcCB7XG4gIG1heC13aWR0aDogNjQwcHg7XG4gIG1hcmdpbjogYXV0bztcbiAgd2lkdGg6IDkwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiA4JSAwIDQlIDA7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuY29udGVudCAuaW50cm8tZG1wIHtcbiAgICBwYWRkaW5nOiA0MHB4IDA7XG4gIH1cbn1cbi5jb250ZW50IC5pbnRyby1kbXBfX2hlYWRlciBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiBhdXRvO1xufVxuLmNvbnRlbnQgLmludHJvLWRtcF9fY29udGVudCA+IHAge1xuICBsaW5lLWhlaWdodDogMS43NWVtO1xuICBtYXJnaW4tYm90dG9tOiAyZW07XG59XG4uY29udGVudCAudmlkZW8tZG1wIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgcGFkZGluZzogMTAlIDA7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjE2M2E7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KC01NzBkZWcsICMxNjE2M2EgNjAlLCAjZWEwMDhhIDEyMCUpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoMzAwZGVnLCMxNjE2M2EgNjAlLCAjZWEwMDhhIDEyMCUpO1xuICBjb2xvcjogd2hpdGU7XG59XG4uY29udGVudCAudmlkZW8tZG1wOmFmdGVyIHtcbiAgY29udGVudDogJyc7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBsZWZ0OiA1MCU7XG4gIGhlaWdodDogMDtcbiAgd2lkdGg6IDA7XG4gIGJvcmRlci1sZWZ0OiAzMHB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItcmlnaHQ6IDMwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3A6IDMwcHggc29saWQgd2hpdGU7XG4gIG1hcmdpbi1sZWZ0OiAtMzBweDtcbn1cbi5jb250ZW50IC52aWRlby1kbXAgLndyYXBwZXIge1xuICBtYXgtd2lkdGg6IDY2MHB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG4uY29udGVudCAudmlkZW8tZG1wX19jb250ZW50IHtcbiAgY29sb3I6ICNhYmFiYWI7XG4gIG1hcmdpbi1ib3R0b206IDYwcHg7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAudmlkZW8tZG1wX19jb250ZW50IHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICB9XG59XG4uY29udGVudCAuc3RlcHNfX3N0ZXAge1xuICBtYXJnaW46IDIwJSAwO1xufVxuLmNvbnRlbnQgLnN0ZXBzX19zdGVwOmFmdGVyIHtcbiAgY29udGVudDogXCJcIjtcbiAgZGlzcGxheTogdGFibGU7XG4gIGNsZWFyOiBib3RoO1xufVxuLmNvbnRlbnQgLnN0ZXBzX19zdGVwX19oZWFkZXIge1xuICBmbG9hdDogbGVmdDtcbiAgd2lkdGg6IDQwJTtcbn1cbi5jb250ZW50IC5zdGVwc19fc3RlcF9faGVhZGVyLi1yaWdodCB7XG4gIGZsb2F0OiByaWdodDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5zdGVwc19fc3RlcF9faGVhZGVyIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbn1cbi5jb250ZW50IC5zdGVwc19fc3RlcF9faGVhZGVyX19jaXJjbGUge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDI1MHB4O1xuICBoZWlnaHQ6IDI1MHB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWEwMDhhO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudChib3R0b20sICNlODUxNDYsICNlYjAwOGIpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCNlODUxNDYsICNlYjAwOGIpO1xuICBjb2xvcjogd2hpdGU7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgbWFyZ2luOiBhdXRvO1xuICBib3gtc2hhZG93OiAwIDAgNXB4ICNhYmFiYWI7XG59XG4uY29udGVudCAuc3RlcHNfX3N0ZXBfX2hlYWRlcl9fY2lyY2xlLi1hbmFseXplIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2U4NTE0NjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjZTg1MTQ2LCAjZTUyZTYxKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwjZTg1MTQ2LCAjZTUyZTYxKTtcbn1cbi5jb250ZW50IC5zdGVwc19fc3RlcF9faGVhZGVyX19jaXJjbGUuLWFjdGl2YXRlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VjN2UyMDtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoYm90dG9tLCAjZWM3ZTIwLCAjZTg1MTQ2KTtcbiAgYmFja2dyb3VuZC1pbWFnZTogbGluZWFyLWdyYWRpZW50KHRvIHRvcCwjZWM3ZTIwLCAjZTg1MTQ2KTtcbn1cbi5jb250ZW50IC5zdGVwc19fc3RlcF9faGVhZGVyX19jaXJjbGVfX3dyYXBwZXIge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICB3aWR0aDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLmNvbnRlbnQgLnN0ZXBzX19zdGVwX19oZWFkZXJfX2NpcmNsZV9fd3JhcHBlciBoMSB7XG4gIGZvbnQtc2l6ZTogMS42MjVlbTtcbn1cbi5jb250ZW50IC5zdGVwc19fc3RlcF9faGVhZGVyX19jaXJjbGVfX3dyYXBwZXIgaDIge1xuICBmb250LXNpemU6IDEuMTI1ZW07XG4gIGNvbG9yOiB3aGl0ZTtcbn1cbi5jb250ZW50IC5zdGVwc19fc3RlcF9fY29udGVudCB7XG4gIGZsb2F0OiByaWdodDtcbiAgd2lkdGg6IDUwJTtcbn1cbi5jb250ZW50IC5zdGVwc19fc3RlcF9fY29udGVudC4tbGVmdCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgLmNvbnRlbnQgLnN0ZXBzX19zdGVwX19jb250ZW50IHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuLmNvbnRlbnQgLnN0ZXBzX19zdGVwX19jb250ZW50ID4gaDMge1xuICBmb250LXNpemU6IDIuNWVtO1xuICBtYXJnaW46IDAgMCAuNWVtIDA7XG59XG4uY29udGVudCAuc3RlcHNfX3N0ZXBfX2NvbnRlbnQgdWwge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbjogMDtcbn1cbi5jb250ZW50IC5zdGVwc19fc3RlcF9fY29udGVudCB1bCBsaTpiZWZvcmUge1xuICBjb250ZW50OiAnLSAnO1xufVxuLmNvbnRlbnQgLnN0ZXBzX19zdGVwX19jb250ZW50IC5idG4ge1xuICBtYXJnaW46IDFlbSAwO1xufVxuLmNvbnRlbnQgLmN1bHR1cmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBwYWRkaW5nOiA4JSAwO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjdmN2Y3O1xuICBjb2xvcjogIzRkNGQ0ZDtcbn1cbi5jb250ZW50IC5jdWx0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTIwJTtcbiAgcmlnaHQ6IDA7XG4gIHdpZHRoOiAzMzdweDtcbiAgaGVpZ2h0OiA2MTBweDtcbiAgYmFja2dyb3VuZDogdXJsKFwiLi4vaW1nL2JnLXByb2Nlc3MucG5nXCIpIG5vLXJlcGVhdCAwIDA7XG59XG4uc3ZnIC5jb250ZW50IC5jdWx0dXJlOmJlZm9yZSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9iZy1wcm9jZXNzLnN2Z1wiKTtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5jdWx0dXJlOmJlZm9yZSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuLmNvbnRlbnQgLmN1bHR1cmVfX2NvbnRlbnQge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI2FiYWJhYjtcbiAgcGFkZGluZy1ib3R0b206IDglO1xuICBtYXJnaW4tYm90dG9tOiA4JTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uY29udGVudCAuY3VsdHVyZV9fY29udGVudDphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cbi5jb250ZW50IC5jdWx0dXJlX19jb250ZW50X19tYWluIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogNTcuMzUwOTglO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xuICAtbW96LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xuICAtbXMtYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG4gIC1vLWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdDtcbiAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtbW96LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1tcy1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtby1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC1tb3otYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW1zLWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC1vLWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIGFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLW1vei1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtbXMtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLW8tYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtbW96LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tcy1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtby1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1vei1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tcy1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1vLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLmNvbnRlbnQgLmN1bHR1cmVfX2NvbnRlbnRfX21haW46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5jdWx0dXJlX19jb250ZW50X19tYWluIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICB9XG59XG4uY29udGVudCAuY3VsdHVyZV9fY29udGVudF9fYXNpZGUge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIHdpZHRoOiAzMS43NjE1NyU7XG4gIG1hcmdpbi1sZWZ0OiA4LjUyOTglO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbiAgLW1vei1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIC1tcy1hbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG4gIC1vLWFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0O1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1tb3otYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLW1zLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC1vLWFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW1vei1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtbXMtYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLW8tYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgYW5pbWF0aW9uLWRlbGF5OiAwcztcbiAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtbW96LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC1tcy1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtby1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlO1xuICAtd2Via2l0LWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1tb3otYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLW1zLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC1vLWFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbW96LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW1zLWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgLW8tYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG59XG4uY29udGVudCAuY3VsdHVyZV9fY29udGVudF9fYXNpZGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5jdWx0dXJlX19jb250ZW50X19hc2lkZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICB9XG59XG4uY29udGVudCAuY3VsdHVyZV9fY29udGVudF9fYXNpZGUgYmxvY2txdW90ZSB7XG4gIGNvbG9yOiAjZWEwMDhhO1xufVxuLmNvbnRlbnQgLmN1bHR1cmVfX3NvY2lhbC1tZWRpYSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIC1tb3otYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbiAgLW1zLWFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIC1vLWFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW47XG4gIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLW1vei1hbmltYXRpb24tZHVyYXRpb246IDFzO1xuICAtbXMtYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLW8tYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtbW96LWFuaW1hdGlvbi1kZWxheTogMHM7XG4gIC1tcy1hbmltYXRpb24tZGVsYXk6IDBzO1xuICAtby1hbmltYXRpb24tZGVsYXk6IDBzO1xuICBhbmltYXRpb24tZGVsYXk6IDBzO1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC1tb3otYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZTtcbiAgLW1zLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC1vLWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2U7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLW1vei1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICAtbXMtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLW8tYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtbXMtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtby1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5jb250ZW50IC5jdWx0dXJlX19zb2NpYWwtbWVkaWE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG4uY29udGVudCAuY3VsdHVyZV9fc29jaWFsLW1lZGlhX19oZWFkZXIge1xuICBmb250LXNpemU6IDIuNWVtO1xuICBjb2xvcjogIzRkNGQ0ZDtcbn1cbi5jb250ZW50IC5jdWx0dXJlX19zb2NpYWwtbWVkaWFfX3R3aXR0ZXIge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIHdpZHRoOiAzMS43NjE1NyU7XG4gIG1hcmdpbi1sZWZ0OiAxNy4wNTk2MSU7XG59XG4uY29udGVudCAuY3VsdHVyZV9fc29jaWFsLW1lZGlhX190d2l0dGVyOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uY29udGVudCAuY3VsdHVyZV9fc29jaWFsLW1lZGlhX19pbnN0YWdyYW0ge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIHdpZHRoOiAzMS43NjE1NyU7XG59XG4uY29udGVudCAuY3VsdHVyZV9fc29jaWFsLW1lZGlhX19pbnN0YWdyYW06bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC5jdWx0dXJlX19zb2NpYWwtbWVkaWFfX2hlYWRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG4gIC5jb250ZW50IC5jdWx0dXJlX19zb2NpYWwtbWVkaWFfX3R3aXR0ZXIsIC5jb250ZW50IC5jdWx0dXJlX19zb2NpYWwtbWVkaWFfX2luc3RhZ3JhbSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDAlO1xuICAgIG1hcmdpbi1ib3R0b206IDIuNWVtO1xuICB9XG4gIC5jb250ZW50IC5jdWx0dXJlX19zb2NpYWwtbWVkaWFfX3R3aXR0ZXIgaW1nLCAuY29udGVudCAuY3VsdHVyZV9fc29jaWFsLW1lZGlhX19pbnN0YWdyYW0gaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW46IGF1dG87XG4gIH1cbn1cbi5jb250ZW50IC50ZWFtIHtcbiAgcGFkZGluZy10b3A6IDglO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTtcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlcyB7XG4gIGNsZWFyOiBsZWZ0O1xuICBwYWRkaW5nOiA4JSAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlczphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBjbGVhcjogYm90aDtcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZSB7XG4gIGZsb2F0OiBsZWZ0O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgd2lkdGg6IDMxLjc2MTU3JTtcbiAgbWFyZ2luLWJvdHRvbTogMS4yNWVtO1xufVxuLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlOmxhc3QtY2hpbGQge1xuICBtYXJnaW4tcmlnaHQ6IDA7XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGU6bnRoLWNoaWxkKDNuKSB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZTpudGgtY2hpbGQoM24rMSkge1xuICBjbGVhcjogbGVmdDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogNDguODIxMTclO1xuICB9XG4gIC5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZTpsYXN0LWNoaWxkIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gIH1cbiAgLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlOm50aC1jaGlsZCgzbikge1xuICAgIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIH1cbiAgLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlOm50aC1jaGlsZCgzbisxKSB7XG4gICAgY2xlYXI6IG5vbmU7XG4gIH1cbiAgLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlOm50aC1jaGlsZCgybikge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGU6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICBjbGVhcjogbGVmdDtcbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTYwcHgpIHtcbiAgLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAuY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGU6bnRoLWNoaWxkKDJuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgfVxuICAuY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGU6bnRoLWNoaWxkKDJuKzEpIHtcbiAgICBjbGVhcjogbm9uZTtcbiAgfVxufVxuLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlX19zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nLWJvdHRvbTogMS4yNWVtO1xufVxuLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlX19zdW1tYXJ5IGZpZ3VyZSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXgtd2lkdGg6IDI2MHB4O1xuICBtYXJnaW46IDAgYXV0byAyZW0gYXV0bztcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgMC4yNXMgZWFzZS1pbi1vdXQ7XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX3N1bW1hcnkgZmlndXJlIGltZyB7XG4gIGJvcmRlci1yYWRpdXM6IDUwJTtcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZV9fc3VtbWFyeSBoMSB7XG4gIGZvbnQtc2l6ZTogMS4xMjVlbTtcbiAgY29sb3I6ICM0ZDRkNGQ7XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX3N1bW1hcnkgcCB7XG4gIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX3N1bW1hcnk6aG92ZXIgZmlndXJlIHtcbiAgb3BhY2l0eTogLjc1O1xufVxuLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlX19kZXRhaWxzIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VhMDA4YTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2ViMDA4YjtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoLTU3MGRlZywgI2ViMDA4YiwgI2UyMGU4MywgI2U0MWQ2ZiwgI2U1MmU2MSwgI2U4NTE0NiwgI2VjN2UyMCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgzMDBkZWcsI2ViMDA4YiwgI2UyMGU4MywgI2U0MWQ2ZiwgI2U1MmU2MSwgI2U4NTE0NiwgI2VjN2UyMCk7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogbWluLWhlaWdodCAwLjI1cyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IG1pbi1oZWlnaHQgMC4yNXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogbWluLWhlaWdodCAwLjI1cyBlYXNlO1xufVxuLmNzc3RyYW5zaXRpb25zIC5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZV9fZGV0YWlscyB7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZV9fZGV0YWlscyAucHJvZmlsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuICB3aWR0aDogODIuOTQwMzklO1xuICBtYXJnaW4tbGVmdDogOC41Mjk4JTtcbiAgcGFkZGluZzogMTAlIDA7XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX2RldGFpbHMgLnByb2ZpbGU6bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZV9fZGV0YWlscyAucHJvZmlsZV9fY2xvc2Uge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAyLjVlbTtcbiAgaGVpZ2h0OiAyLjVlbTtcbiAgdG9wOiAxLjI1ZW07XG4gIHJpZ2h0OiAwO1xuICBjdXJzb3I6IHBvaW50ZXI7XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX2RldGFpbHMgLnByb2ZpbGVfX2Nsb3NlIHtcbiAgICB3aWR0aDogMS4yNWVtO1xuICAgIGhlaWdodDogMS4yNWVtO1xuICAgIHRvcDogMC42MjVlbTtcbiAgICByaWdodDogMC42MjVlbTtcbiAgfVxufVxuLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlX19kZXRhaWxzIC5wcm9maWxlX19jbG9zZTo6YmVmb3JlLCAuY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX2RldGFpbHMgLnByb2ZpbGVfX2Nsb3NlOjphZnRlciB7XG4gIGNvbnRlbnQ6ICcnO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDUwJTtcbiAgaGVpZ2h0OiAxcHg7XG4gIGJhY2tncm91bmQ6IHdoaXRlO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSg0NWRlZyk7XG4gIC1vLXRyYW5zZm9ybTogcm90YXRlKDQ1ZGVnKTtcbiAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xufVxuLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlX19kZXRhaWxzIC5wcm9maWxlX19jbG9zZTo6YWZ0ZXIge1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC1tb3otdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgLW1zLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIC1vLXRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG4gIHRyYW5zZm9ybTogcm90YXRlKC00NWRlZyk7XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX2RldGFpbHMgLnByb2ZpbGVfX2Nsb3NlOmhvdmVyOjpiZWZvcmUsIC5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZV9fZGV0YWlscyAucHJvZmlsZV9fY2xvc2U6aG92ZXI6OmFmdGVyIHtcbiAgYmFja2dyb3VuZDogIzE2MTYzYTtcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZV9fZGV0YWlscyAucHJvZmlsZV9faGVhZGVyIGgxIHtcbiAgZm9udC1zaXplOiAyLjEyNWVtO1xuICBjb2xvcjogd2hpdGU7XG4gIG1hcmdpbjogMDtcbn1cbi5jb250ZW50IC50ZWFtX19wcm9maWxlc19fcHJvZmlsZV9fZGV0YWlscyAucHJvZmlsZV9faGVhZGVyIGgyIHtcbiAgZm9udC1zaXplOiAxLjc1ZW07XG4gIGNvbG9yOiAjMTYxNjNhO1xuICBtYXJnaW46IDA7XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX2RldGFpbHMgLnByb2ZpbGVfX2NvbnRlbnQge1xuICBjb2xvcjogd2hpdGU7XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX2RldGFpbHMgLnByb2ZpbGVfX3NvY2lhbC1tZWRpYSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIHBhZGRpbmctbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xuICBmb250LXNpemU6IDEuODc1ZW07XG59XG4uY29udGVudCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX2RldGFpbHMgLnByb2ZpbGVfX3NvY2lhbC1tZWRpYSBsaSB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiAuNWVtO1xufVxuLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlX19kZXRhaWxzIC5wcm9maWxlX19zb2NpYWwtbWVkaWEgbGkgYSB7XG4gIGNvbG9yOiAjMTYxNjNhO1xufVxuLmNvbnRlbnQgLnRlYW1fX3Byb2ZpbGVzX19wcm9maWxlLi1leHBhbmRlZCAudGVhbV9fcHJvZmlsZXNfX3Byb2ZpbGVfX3N1bW1hcnk6YWZ0ZXIge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiAxMDAlO1xuICBjb250ZW50OiAnJztcbiAgaGVpZ2h0OiAwO1xuICB3aWR0aDogMDtcbiAgYm9yZGVyLWxlZnQ6IDIwcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yaWdodDogMjBweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXRvcDogMjBweCBzb2xpZCB3aGl0ZTtcbiAgbWFyZ2luLWxlZnQ6IC0yMHB4O1xufVxuLmNvbnRlbnQgLnBhcnRuZXJzLWdyaWQge1xuICBtYXJnaW4tYm90dG9tOiA2JTtcbn1cbi5jb250ZW50IC5wYXJ0bmVycy1ncmlkIHVsIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7XG59XG4uY29udGVudCAucGFydG5lcnMtZ3JpZCB1bCBsaSB7XG4gIGZsb2F0OiBsZWZ0O1xuICB3aWR0aDogMjAlO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWFlYWVhO1xuICBib3JkZXI6IDVweCBzb2xpZCB3aGl0ZTtcbiAgcGFkZGluZzogNDBweDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIC5jb250ZW50IC5wYXJ0bmVycy1ncmlkIHVsIGxpIHtcbiAgICB3aWR0aDogMjUlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA3NjhweCkge1xuICAuY29udGVudCAucGFydG5lcnMtZ3JpZCB1bCBsaSB7XG4gICAgd2lkdGg6IDMzLjMzMzMzMzMlO1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA1NjBweCkge1xuICAuY29udGVudCAucGFydG5lcnMtZ3JpZCB1bCBsaSB7XG4gICAgd2lkdGg6IDUwJTtcbiAgfVxufVxuLmNvbnRlbnQgLnBhcnRuZXJzLWdyaWQgdWwgbGkgaW1nIHtcbiAgZmlsdGVyOiBncmF5O1xuICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDEwMCUpO1xuICBmaWx0ZXI6IHVybChcImRhdGE6aW1hZ2Uvc3ZnK3htbDt1dGY4LDxzdmcgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48ZmlsdGVyIGlkPSdncmF5c2NhbGUnPjxmZUNvbG9yTWF0cml4IHR5cGU9J21hdHJpeCcgdmFsdWVzPScwLjMzMzMgMC4zMzMzIDAuMzMzMyAwIDAgMC4zMzMzIDAuMzMzMyAwLjMzMzMgMCAwIDAuMzMzMyAwLjMzMzMgMC4zMzMzIDAgMCAwIDAgMCAxIDAnLz48L2ZpbHRlcj48L3N2Zz4jZ3JheXNjYWxlXCIpO1xuICBmaWx0ZXI6IGdyYXlzY2FsZSgxMDAlKTtcbiAgb3BhY2l0eTogLjU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjI1cyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMjVzIGVhc2UtaW4tb3V0O1xufVxuLmNvbnRlbnQgLnBhcnRuZXJzLWdyaWQgdWwgbGk6aG92ZXIgaW1nIHtcbiAgb3BhY2l0eTogLjc1O1xufVxuXG4uZm9vdGVyIHtcbiAgcGFkZGluZzogNjBweCAwO1xuICBjb2xvcjogIzgwODE4NDtcbiAgZm9udC1zaXplOiAwLjg3NWVtO1xufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbiAgLmZvb3RlciB7XG4gICAgcGFkZGluZzogNDBweCAwO1xuICB9XG59XG4uZm9vdGVyIGEge1xuICBjb2xvcjogIzgwODE4NDtcbn1cbi5mb290ZXIgYTpob3ZlciwgLmZvb3RlciBhLmFjdGl2ZSB7XG4gIGNvbG9yOiAjZWEwMDhhO1xufVxuLmZvb3Rlcl9fbG9nbyB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogOTJweDtcbiAgaGVpZ2h0OiAyNXB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCIuLi9pbWcvbG9nby5wbmdcIikgbm8tcmVwZWF0IDAgMDtcbiAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xufVxuLmZvb3Rlcl9fbG9nbzpiZWZvcmUge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMTAwJTtcbn1cbi5zdmcgLmZvb3Rlcl9fbG9nbyB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltZy9sb2dvLnN2Z1wiKTtcbn1cbi5mb290ZXJfX2NvbHVtbnMge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5mb290ZXJfX2NvbHVtbnM6YWZ0ZXIge1xuICBjb250ZW50OiBcIlwiO1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgY2xlYXI6IGJvdGg7XG59XG4uZm9vdGVyX19jb2x1bW5zX19jb2x1bW4ge1xuICBmbG9hdDogbGVmdDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1yaWdodDogMi4zNTc2NSU7XG4gIHdpZHRoOiAyMy4yMzE3NiU7XG59XG4uZm9vdGVyX19jb2x1bW5zX19jb2x1bW46bGFzdC1jaGlsZCB7XG4gIG1hcmdpbi1yaWdodDogMDtcbn1cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5mb290ZXJfX2NvbHVtbnNfX2NvbHVtbiB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbiAgICB3aWR0aDogNDguODIxMTclO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIH1cbiAgLmZvb3Rlcl9fY29sdW1uc19fY29sdW1uOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgfVxuICAuZm9vdGVyX19jb2x1bW5zX19jb2x1bW46bnRoLWNoaWxkKDJuKSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICB9XG4gIC5mb290ZXJfX2NvbHVtbnNfX2NvbHVtbjpudGgtY2hpbGQoMm4rMSkge1xuICAgIGNsZWFyOiBsZWZ0O1xuICB9XG59XG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAuZm9vdGVyX19jb2x1bW5zX19jb2x1bW4ge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4uZm9vdGVyX19jb2x1bW5zX19jb2x1bW5fX2hlYWRlciB7XG4gIGZvbnQtc2l6ZTogMWVtO1xuICBmb250LXdlaWdodDogNjAwO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBsZXR0ZXItc3BhY2luZzogMXB4O1xufVxuLmZvb3Rlcl9fY29sdW1uc19fY29sdW1uX19saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46IDA7XG4gIG1hcmdpbi1ib3R0b206IDFlbTtcbn1cbi5mb290ZXJfX2NvbHVtbnNfX2NvbHVtbl9fbGlzdC4tcG9zdHMgbGkge1xuICBtYXJnaW4tYm90dG9tOiAxZW07XG59XG4uZm9vdGVyX19jb2x1bW5zX19jb2x1bW5fX2NvbnRlbnQgYWRkcmVzcyB7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuI2pQYW5lbE1lbnUtbWVudSB7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMxNjE2M2E7XG59XG5cbi8qXG4gKiBQcmludCBTdHlsZSBPdmVycmlkZXNcbiAqL1xuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIFByaW50IHN0eWxlcy5cbiAgIElubGluZWQgdG8gYXZvaWQgcmVxdWlyZWQgSFRUUCBjb25uZWN0aW9uOiBoNWJwLmNvbS9yXG4gICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuQG1lZGlhIHByaW50IHtcbiAgKiB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBjb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIC8qIEJsYWNrIHByaW50cyBmYXN0ZXI6IGg1YnAuY29tL3MgKi9cbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgfVxuXG4gIGEsXG4gIGE6dmlzaXRlZCB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gIH1cblxuICBhW2hyZWZdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cihocmVmKSBcIilcIjtcbiAgfVxuXG4gIGFiYnJbdGl0bGVdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIiAoXCIgYXR0cih0aXRsZSkgXCIpXCI7XG4gIH1cblxuICAvKlxuICAgKiBEb24ndCBzaG93IGxpbmtzIGZvciBpbWFnZXMsIG9yIGphdmFzY3JpcHQvaW50ZXJuYWwgbGlua3NcbiAgICovXG4gIGFbaHJlZl49XCJqYXZhc2NyaXB0OlwiXTphZnRlcixcbiAgYVtocmVmXj1cIiNcIl06YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gIH1cblxuICBwcmUsXG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkIGdyYXk7XG4gICAgcGFnZS1icmVhay1pbnNpZGU6IGF2b2lkO1xuICB9XG5cbiAgdGhlYWQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDtcbiAgICAvKiBoNWJwLmNvbS90ICovXG4gIH1cblxuICB0cixcbiAgaW1nIHtcbiAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gIH1cblxuICBpbWcge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICB9XG5cbiAgcCxcbiAgaDIsXG4gIGgzIHtcbiAgICBvcnBoYW5zOiAzO1xuICAgIHdpZG93czogMztcbiAgfVxuXG4gIGgyLFxuICBoMyB7XG4gICAgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7XG4gIH1cbn1cbiIsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbCxudWxsLG51bGwsbnVsbF19 */

/* ZS Less Overrides */
.home .zs-content {
  margin-top: 56px;
}
.zs-product .sliderContainer {
  display: none;
}
.zs-product .zs-content {
  padding-bottom:0px;
}
.zs-clients .zs-content .hero__message {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: 10% 0;
}
.zs-clients .zs-content .hero__message {
  padding: 8% 0 4% 0;
  text-align: center;
}
.zs-clients .zs-content .hero__message .wrapper {
  max-width: 560px;
}
@media screen and (max-width:768px) {
  .zs-clients .zs-content .hero__message {
    text-align: center;
  }
}
.zs-product .zs-clients .zs-content .hero__message {
  padding: 0;
}
.zs-product .zs-clients .zs-content .hero__message .wrapper {
  padding: 10% 0;
  background: url("../img/bg-hero-wrapper.png") no-repeat 0 0;
  -webkit-background-size: contain;
  background-size: contain;
}
.svg .zs-product .zs-clients .zs-content .hero__message .wrapper {
  background-image: url("../img/bg-hero-wrapper.svg");
}
.zs-clients .zs-content .hero__message__header {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
  font-size: 3.75em;
  line-height: 1em;
  color: #16163a;
  margin-top: 0;
  margin-bottom: .5em;
  -webkit-animation-name: fadeInDown;
  -ms-animation-name: fadeInDown;
  -o-animation-name: fadeInDown;
  animation-name: fadeInDown;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0s;
  -ms-animation-delay: 0s;
  -o-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-clients .zs-content .hero__message__header:last-child {
  margin-right: 0;
}
.zs-clients .zs-content .hero__message__header.-sub {
  width: 100%;
  text-align: center;
  color: white;
  margin-bottom: 0;
}
.zs-company .zs-clients .zs-content .hero__message__header.-sub {
  text-shadow: 0 0 5px #4d4d4d;
}
.zs-clients .zs-content .hero__message__header {
  width: 100%;
  font-size: 2.625em;
  margin-bottom: .75em;
  color: #4d4d4d;
}
@media screen and (max-width:768px) {
  .zs-clients .zs-content .hero__message__header {
    font-size: 1.75em;
  }
}
@media screen and (max-width:768px) {
  .zs-clients .zs-content .hero__message__header {
    width: 100%;
  }
}
@media screen and (max-width:560px) {
  .zs-clients .zs-content .hero__message__header {
    font-size: 2.25em;
  }
}
.zs-clients .zs-content .hero__message__intro {
  float: left;
  display: block;
  margin-right: 2.35765%;
  width: 48.82117%;
  color: white;
  -webkit-animation-name: fadeInRight;
  -ms-animation-name: fadeInRight;
  -o-animation-name: fadeInRight;
  animation-name: fadeInRight;
  -webkit-animation-duration: 1s;
  -ms-animation-duration: 1s;
  -o-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-delay: 0.5s;
  -ms-animation-delay: 0.5s;
  -o-animation-delay: 0.5s;
  animation-delay: 0.5s;
  -webkit-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  -o-animation-timing-function: ease;
  animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
  -ms-backface-visibility: hidden;
  -o-backface-visibility: hidden;
  backface-visibility: hidden;
}
.zs-clients .zs-content .hero__message__intro:last-child {
  margin-right: 0;
}
.zs-clients .zs-content .hero__message__intro {
  width: 100%;
  color: #4d4d4d;
}
@media screen and (max-width:768px) {
  .zs-clients .zs-content .hero__message__intro {
    width: 100%;
  }
}
.zs-clients .zs-content .hero__message__intro p {
  font-size: 1.5em;
  font-weight: 300;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-bottom: 2em;
}
.zs-clients .zs-content .hero__message__intro p {
  font-size: 1em;
}
.zs-clients .zs-content .hero__message__intro p:first-of-type {
  margin-top: 0;
}
.zs-clients .zs-content .hero__message__intro p .btn {
  font-size: 1rem;
}

/*added on 4/1/2016 for minor edits to site*/
.zs-black {color:#000;}

.zs-graphic-bubbles {display:block;background: url("../img/graphic_bubbles.png");width:388px;height:332px;}
.zs-graphic-ecosystem {display:block;background: url("../img/graphic_ecosystem.png");width:480px;height:480px;}


.gform_wrapper .left_label .gfield_label {
    font-family: "proxima-nova", "Helvetica Neue", Helvetica, Arial, sans-serif;
    padding-top: 5px;
    font-size: 15px !important;
    font-weight: normal !important;
    float: left;
    width: 130px;
    text-align: right;
    color: #3d3d3d !important;
}

/*
----------------------------------------------------------------

Gravity Forms Front End Form Styles
Version 1.8
http: //www.gravityforms.com
updated: January 31, 2014 3:35 PM

Gravity Forms is a Rocketgenius project
copyright 2008-2014 Rocketgenius Inc.
http: //www.rocketgenius.com
this may not be redistributed without the
express written permission of the author.

NOTE: DO NOT EDIT THIS FILE! MAKE ANY MODIFICATIONS IN YOUR
THEME STYLESHEET. THIS FILE IS REPLACED DURING AUTO-UPDATES
AND ANY CHANGES MADE HERE WILL BE OVERWRITTEN.

If you need to make extensive customizations,
copy the contents of this file to your theme
style sheet for editing. Then, go to the form
settings page & set the 'output CSS' option
to no.

----------------------------------------------------------------
*/

.gform_wrapper {
  overflow: inherit;
  margin: 10px 0;
  max-width: 98%
}

.gform_wrapper h1,
.gform_wrapper h2,
.gform_wrapper h3 {
  font-weight: normal;
  border: none;
  outline: none;
  background: none;
}

.gform_wrapper :focus {
  outline: 0;
}

.gform_wrapper form {
  text-align: left;
}

.gform_wrapper input[type=text],
.gform_wrapper input[type=url],
.gform_wrapper input[type=email],
.gform_wrapper input[type=tel],
.gform_wrapper input[type=number],
.gform_wrapper input[type=password] {
  outline-style: none;
  font-size: 11px;
  font-family: inherit;
  padding: 5px 2px 5px 2px;
  letter-spacing: normal;
}

.gform_wrapper input[type=image] {
  border: none !important;
  padding: 0 !important;
  width: auto !important;
}

.gform_wrapper textarea {
  outline-style: none;
  font-size: 11px;
  font-family: inherit;
  letter-spacing: normal;
  padding: 4px 2px 4px 2px;
  resize: none;
}

.gform_wrapper ul {
  margin: 0 !important;
  list-style-type: none;
}

html>body .entry ul,
.gform_wrapper ul {
  text-indent: 0;
}

.gform_wrapper li,
.gform_wrapper form li {
  margin-left: 0 !important;
  list-style-type: none !important;
  list-style-image: none !important;
  list-style: none !important;
  overflow: visible;
}

.gform_wrapper ul li.gfield {
  clear: both;
}

.gform_wrapper ul.gfield_radio li,
.gform_wrapper ul.gfield_checkbox li {
  overflow: hidden;
}

.gform_wrapper ul.right_label li,
.gform_wrapper form ul.right_label li,
.gform_wrapper ul.left_label li,
.gform_wrapper form ul.left_label li {
  margin-bottom: 14px;
}

.gform_wrapper ul.right_label li ul.gfield_radio li,
.gform_wrapper form ul.right_label li ul.gfield_radio li,
.gform_wrapper ul.left_label li ul.gfield_radio li,
.gform_wrapper form ul.left_label li ul.gfield_radio li,
.gform_wrapper ul.right_label li ul.gfield_checkbox li,
.gform_wrapper form ul.right_label li ul.gfield_checkbox li,
.gform_wrapper ul.left_label li ul.gfield_checkbox li,
.gform_wrapper form ul.left_label li ul.gfield_checkbox li {
  margin-bottom: 10px;
}

.gform_wrapper ul li:before,
.gform_wrapper ul li:after,
.gform_wrapper ul.gform_fields {
  padding: 0;
  margin: 0;
  overflow: visible;
}

.gform_wrapper select {
  font-size: 11px;
  font-family: inherit;
  padding: 5px 0 5px 0;
  letter-spacing: normal;
}

.gform_wrapper select option {
  padding: 2px 2px;
  display: block;
}

.gform_wrapper .inline {
  display: inline !important;
}

.gform_wrapper .gform_heading {
  width: 98%;
  margin-bottom: 18px;
}

.gform_wrapper .gfield_time_hour,
.gform_wrapper .gfield_time_minute,
.gform_wrapper .gfield_date_month,
.gform_wrapper .gfield_date_day,
.gform_wrapper .gfield_date_year {
  width: 70px;
  vertical-align: top;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
}

.gform_wrapper .gfield_date_month,
.gform_wrapper .gfield_date_day,
.gform_wrapper .gfield_date_year {
  margin-right: 12px;
}

.gform_wrapper .gfield_date_dropdown_month,
.gform_wrapper .gfield_date_dropdown_day,
.gform_wrapper .gfield_date_dropdown_year {
  vertical-align: top;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
}

.gform_wrapper .gfield_date_dropdown_month,
.gform_wrapper .gfield_date_dropdown_day,
.gform_wrapper .gfield_date_dropdown_year {
  margin-right: 6px;
}

.gform_wrapper .gfield_time_ampm {
  vertical-align: top;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
}

.gform_wrapper .gfield_time_ampm select {
  width: 60px !important;
}

.gform_wrapper .gfield_time_hour input,
.gform_wrapper .gfield_time_minute input,
.gform_wrapper .gfield_date_month input,
.gform_wrapper .gfield_date_day input,
.gform_wrapper .gfield_date_year input {
  width: 70% !important;
}

.gform_wrapper .gfield_date_month,
.gform_wrapper .gfield_date_day,
.gform_wrapper .gfield_date_year {
  width: 50px;
  float: left;
}

.gform_wrapper .gfield_date_month input,
.gform_wrapper .gfield_date_day input,
.gform_wrapper .gfield_date_year input {
  width: 85% !important;
}

.gform_wrapper .field_hover {
  border: 1px dashed #2175A9;
  cursor: pointer;
}

.gform_wrapper .field_selected {
  background-color: #DFEFFF;
  border: 1px solid #C2D7EF;
}

.gform_wrapper .field_name_first,
.gform_wrapper .field_name_last {
  width: 50%;
  float: left;
}

.gform_wrapper .ginput_complex {
  overflow: hidden;
}

.gform_wrapper .ginput_left input:focus+label,
.gform_wrapper .ginput_right input:focus+label,
.gform_wrapper .ginput_full input:focus+label {
  font-weight: bold;
}

.gform_wrapper .field_name_first input,
.gform_wrapper .ginput_complex .ginput_left input {
  width: 95% !important;
}

.gform_wrapper .field_name_last input {
  width: 93% !important;
}

.gform_wrapper .datepicker {
  width: 100px !important;
}

.gform_wrapper .ginput_complex .ginput_left  {
  width: 50%;
  float: left;
}

.gform_wrapper .ginput_complex .ginput_right {
  width: 49%;
  float: right;
}

.gform_wrapper .gfield_error .ginput_complex .ginput_left,
.gform_wrapper .gfield_error .ginput_complex .ginput_right {
  width: 50%;
}

.gform_wrapper .gfield_error .ginput_complex .ginput_left input[type=text],
.gform_wrapper .gfield_error .ginput_complex .ginput_left input[type=url],
.gform_wrapper .gfield_error .ginput_complex .ginput_left input[type=email],
.gform_wrapper .gfield_error .ginput_complex .ginput_left input[type=tel],
.gform_wrapper .gfield_error .ginput_complex .ginput_left input[type=number],
.gform_wrapper .gfield_error .ginput_complex .ginput_left input[type=password] {
  width: 90% !important;
}

.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=text],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=url],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=email],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=tel],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=number],
.gform_wrapper .gfield_error .ginput_complex .ginput_right input[type=password] {
  width: 95% !important;
}

.gform_wrapper .ginput_complex input[type=text],
.gform_wrapper .ginput_complex input[type=url],
.gform_wrapper .ginput_complex input[type=email],
.gform_wrapper .ginput_complex input[type=tel],
.gform_wrapper .ginput_complex input[type=number],
.gform_wrapper .ginput_complex input[type=password],
.gform_wrapper .ginput_complex select {
  width: 95% !important;
}

.gform_wrapper .ginput_complex .ginput_right input[type=text],
.gform_wrapper .ginput_complex .ginput_right input[type=url],
.gform_wrapper .ginput_complex .ginput_right input[type=email],
.gform_wrapper .ginput_complex .ginput_right input[type=tel],
.gform_wrapper .ginput_complex .ginput_right input[type=number],
.gform_wrapper .ginput_complex .ginput_right input[type=password],
.gform_wrapper .ginput_complex .ginput_right select {
  width: 95% !important;
}

.gform_wrapper .ginput_complex label,
.gform_wrapper .gfield_time_hour label,
.gform_wrapper .gfield_time_minute label,
.gform_wrapper .gfield_date_month label,
.gform_wrapper .gfield_date_day label,
.gform_wrapper .gfield_date_year label,
.gform_wrapper .instruction {
  display: block;
  margin: 3px 0;
  font-size: 11px;
  letter-spacing: 0.5pt;
}

.gform_wrapper .ginput_complex .name_prefix {
  float: left;
  width: 30px !important;
  margin-right: 14px;
}

.gform_wrapper .ginput_complex .name_suffix {
  float: left;
  width: 30px !important;
}

.gform_wrapper .ginput_complex .name_first,
.gform_wrapper .ginput_complex .name_last {
  float: left;
  width: 100px;
  margin-right: 8px;
}

.gform_wrapper .top_label .gfield_label {
  margin: 10px 0 4px 0;
  font-weight: bold;
  display: -moz-inline-stack;
  display: inline-block;
  line-height: 1.3em;
  clear: both;
}

.gform_wrapper .left_label .gfield_label {
  float: left;
  margin: 0 15px 0 0;
  width: 29%;
  font-weight: bold;
}

.gform_wrapper .right_label .gfield_label {
  float: left;
  margin: 0 15px 0 0;
  width: 29%;
  font-weight: bold;
  text-align: right;
}

.gform_wrapper .left_label ul.gfield_checkbox,
.gform_wrapper .right_label ul.gfield_checkbox,
.gform_wrapper .left_label ul.gfield_radio,
.gform_wrapper .right_label ul.gfield_radio {
  margin-left: 32%;
  overflow: hidden;
}

.gform_wrapper .top_label input.small,
.gform_wrapper .top_label select.small {
  width: 25%;
}

.gform_wrapper .top_label input.medium,
.gform_wrapper .top_label select.medium {
  width: 47%;
}

.gform_wrapper .top_label input.medium {
  padding-right: 2px;
}

.gform_wrapper .top_label input.large,
.gform_wrapper .top_label select.large,
.gform_wrapper .top_label textarea.textarea {
  width: 99.2%;
}

.gform_wrapper .right_label input.small,
.gform_wrapper .right_label select.small,
.gform_wrapper .left_label input.small,
.gform_wrapper .left_label select.small {
  width: 15%;
}

.gform_wrapper .right_label input.medium,
.gform_wrapper .right_label select.medium,
.gform_wrapper .left_label input.medium,
.gform_wrapper .left_label select.medium {
  width: 35%;
}

.gform_wrapper .right_label input.large,
.gform_wrapper .right_label select.large,
.gform_wrapper .left_label input.large,
.gform_wrapper .left_label select.large,
.gform_wrapper textarea.textarea {
  width: 63%;
}

.gform_wrapper .right_label div.ginput_complex,
.gform_wrapper .left_label div.ginput_complex {
  width: 64%;
}

.gform_wrapper h2.gsection_title {
  margin: 0 !important;
  padding: 0 !important;
  letter-spacing: normal !important;
}

.gform_wrapper .gsection .gfield_label,
.gform_wrapper h2.gsection_title,
.gform_wrapper h3.gform_title {
  font-weight: bold;
  font-size: 1.3em;
}

.gform_wrapper h3.gform_title {
  letter-spacing: normal !important;
  margin: 10px 0 6px 0;
}

.gform_wrapper span.gform_description {
  font-weight: normal;
}

.gform_wrapper h2.gsection_title,
.gform_wrapper .gsection_description,
.gform_wrapper h3.gform_title {
  width: 98%;
}

.gform_wrapper .gsection {
  border-bottom: 1px dotted #CCC;
  padding: 0 0 8px 0;
  margin: 16px 0;
  clear: both;
}

.gform_wrapper ul.gfield_checkbox li input[type=checkbox],
.gform_wrapper ul.gfield_radio li input[type=radio] {
  width: auto !important;
}

/* radio and checkbox styling - justifies lenghty labels ------------------------------------------------------*/


.gform_wrapper .gfield_checkbox li,
.gform_wrapper .gfield_radio li {
  position: relative;
}

.gform_wrapper ul.gfield_checkbox,
.gform_wrapper ul.gfield_radio {
  margin: 6px 0;
  padding: 0;
}

.gform_wrapper .gfield_checkbox li label,
.gform_wrapper .gfield_radio li label {
  display: block;
  margin: 0 0 0 24px;
  padding: 0;
  width: auto;
  line-height: 1.5;
  vertical-align: top;
}

.gform_wrapper .gfield_checkbox li input[type=checkbox],
.gform_wrapper .gfield_radio li input[type=radio],
.gform_wrapper .gfield_checkbox li input {
  float: left;
  margin-top: 2px;
}

.gform_wrapper .description,
.gform_wrapper .gfield_description,
.gform_wrapper .gsection_description,
.gform_wrapper .instruction {
  font-size: 0.85em;
  line-height: 1.5em;
  clear: both;
  font-family: sans-serif;
  letter-spacing: normal;
}

.gform_wrapper .description,
.gform_wrapper .gfield_description,
.gform_wrapper .gsection_description {
  padding: 4px 0 8px 0;
}

.gform_wrapper .gfield_description {
  padding: 10px 0 0 0;
  width: 99.8%;
}

.gform_wrapper .left_label .gfield_description,
.gform_wrapper .right_label .gfield_description {
  width: 63%;
}

.gform_wrapper .description_above .gfield_description {
  padding: 0 0 10px 0;
}

.gfield_date_year+.gfield_description {
  padding: 0;
}

.gform_wrapper .right_label .gfield_description,
.gform_wrapper .left_label .gfield_description,
.gform_wrapper .left_label .instruction,
.gform_wrapper .right_label .instruction {
  margin-left: 31%;
}

.gform_wrapper .left_label .gsection .gsection_description,
.gform_wrapper .right_label .gsection .gsection_description {
  margin-left: 0;
  padding-top: 4px;
  padding-left: 0;
  line-height: 1.5em;
}

.gform_wrapper .gfield_required {
  color: #790000;
  margin-left: 4px;
}

.gform_wrapper textarea.small {
  height: 80px;
}

.gform_wrapper textarea.medium {
  height: 150px;
}

.gform_wrapper textarea.large {
  height: 250px;
}

.gform_wrapper li.gfield.gfield_error,
.gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {
  background-color: #FFDFE0;
  margin-bottom: 6px !important;
  padding: 6px 6px 4px 6px !important;
  border-top: 1px solid #C89797;
  border-bottom: 1px solid #C89797;
}

.gform_wrapper li.gfield.gfield_creditcard_warning {
  margin-bottom: 6px !important;
  padding: 6px 6px 4px 6px !important;
  border: 1px dashed #C89797;
}

.gform_wrapper li.gfield.gfield_creditcard_warning div.gfield_creditcard_warning_message {
  font-size:1em;
  font-family: "Lucida Grande", "Lucida Sans", "Lucida Sans Unicode", "DejaVu Sans", "Bitstream Vera Sans", "Liberation Sans", Verdana, "Verdana Ref", sans-serif;
  padding: 10px 20px 10px 45px;
  min-height: 25px;
  background-image: url(../images/stopbanner.html);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-color: #790000;
  border-bottom: 1px solid #620101;
  color: #FFF;
  text-shadow: 0 1px 1px rgba(0,0,0,0.50);
  line-height: 1.3em;
  letter-spacing: 0.2pt;
}

li.gfield + li.gfield.gfield_creditcard_warning {
  margin-top: 14px !important;
}

.gform_wrapper .top_label .gfield_error .ginput_container {
  max-width: 99%;
}

.gform_wrapper .top_label .gfield_error {
  width: 97%;
}

.gform_wrapper .top_label .gfield_error input.large,
.gform_wrapper .top_label .gfield_error select.large,
.gform_wrapper .top_label .gfield_error textarea.textarea {
  width: 100%;
}

.gform_wrapper .right_label .gfield_error input.large,
.gform_wrapper .right_label .gfield_error select.large,
.gform_wrapper .right_label .gfield_error textarea.textarea,
.gform_wrapper .left_label .gfield_error input.large,
.gform_wrapper .left_label .gfield_error select.large,
.gform_wrapper .left_label .gfield_error textarea.textarea {
  width: 66%;
}

.gform_wrapper .gfield_error .gfield_label {
  color: #790000;
}

.gform_wrapper li.gfield.gfield_error.gfield_contains_required {
  margin-top: 12px;
  margin-bottom: 12px !important;
  padding-left: 10px !important;
}

.gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label,
.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container  {
  margin-top: 12px;
}

.gform_wrapper div.validation_error {
  color: #790000;
  font-size: 1.2em;
  font-weight: bold;
  margin-bottom: 1.6em;
}

.gform_wrapper div.validation_error {
  color: #790000;
  font-size: 1.2em;
  font-weight: bold;
}

div.gf_page_steps+div.validation_error {
  margin-top: 16px;
}

.gform_wrapper div.gfield_description.validation_error {
  color: #790000;
  font-weight: bold;
  font-size: 14px;
  line-height: 1.2em;
  margin-bottom: 16px;
}

.gform_wrapper .validation_message {
  color: #790000;
  font-weight: bold;
  letter-spacing: normal;
}

.gform_wrapper li.gfield_error input[type=text],
.gform_wrapper li.gfield_error input[type=url],
.gform_wrapper li.gfield_error input[type=email],
.gform_wrapper li.gfield_error input[type=tel],
.gform_wrapper li.gfield_error input[type=number],
.gform_wrapper li.gfield_error input[type=password],
.gform_wrapper li.gfield_error textarea {
  border: 1px solid #790000;
}

.gform_wrapper li.gfield_error div.ginput_complex.ginput_container label,
.gform_wrapper li.gfield_error ul.gfield_checkbox,
.gform_wrapper li.gfield_error ul.gfield_radio {
  color: #790000;
}

.gform_wrapper .gform_footer {
  padding: 16px 0 10px 0;
  margin: 16px 0 0 0;
  clear: both;
}

.gform_wrapper .gform_footer.right_label,
.gform_wrapper .gform_footer.left_label {
  padding: 16px 0 10px 31%;
}

.gform_wrapper .gform_footer input.button,
.gform_wrapper .gform_footer input[type=submit] {
  font-size: 1em;
}

.gform_wrapper .gform_footer input[type=image] {
  padding: 0;
  width: auto !important;
  background: none !important;
  border: none !important;
}

.gform_wrapper .ginput_complex .ginput_left,
.gform_wrapper .ginput_complex .ginput_right,
.gform_wrapper .ginput_complex .ginput_full {
  min-height: 43px;
  display: block;
  overflow: hidden;
}

.gform_wrapper .ginput_complex .ginput_full input[type=text],
.gform_wrapper .ginput_complex .ginput_full input[type=url],
.gform_wrapper .ginput_complex .ginput_full input[type=email],
.gform_wrapper .ginput_complex .ginput_full input[type=tel],
.gform_wrapper .ginput_complex .ginput_full input[type=number],
.gform_wrapper .ginput_complex .ginput_full input[type=password] {
  width: 97% !important;
}

.gform_wrapper .gfield_checkbox li,
.gform_wrapper .gfield_radio li {
  margin: 0 0 8px 0;
  line-height: 1.3em;
}

.gform_wrapper ul.gfield_radio li input[type="radio"]:checked+label,
.gform_wrapper ul.gfield_checkbox li input[type="checkbox"]:checked+label {
    font-weight: bold;
}

.gform_wrapper input.datepicker.datepicker_with_icon {
  margin-right: 4px !important;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
}

/* tame those pesky hidden fields ------------------------------------------------------*/


.gform_wrapper input[type=hidden],
.gform_wrapper input.gform_hidden,
.gform_wrapper .gform_hidden,
.gform_wrapper .gf_hidden {
  display: none !important;
  max-height: 1px !important;
  overflow: hidden;
}

.gform_wrapper .ginput_full br,
.gform_wrapper .ginput_left br,
.gform_wrapper .ginput_right br {
  display: none !important;
}

/* additional spacing and padding tweaks ------------------------------------------------------*/


.gform_wrapper ul.gfield_checkbox li,
.gform_wrapper ul.gfield_radio li {
  padding: 0 !important;
}

.gform_wrapper ul.gfield_radio li input+input {
  margin-left: 4px;
}

.gform_wrapper ul.gfield_radio li input[value=gf_other_choice] {
  margin-right: 6px;
  margin-top: 4px;
}

.gform_wrapper .top_label .gfield_description, {
  padding: 10px 0 0 0;
}

.gform_wrapper .top_label .gfield_description.validation_message,
.gform_wrapper .gfield_description.validation_message {
  padding: 10px 0 !important;
}

.gform_wrapper .ginput_container + .gfield_description.validation_message {
  margin-top: 6px;
}

.gform_wrapper .gfield_description + .gform_wrapper .gfield_description.validation_message {
  margin-top: 6px;
}

.gform_wrapper .ginput_container.ginput_list + .gfield_description.validation_message {
  margin-top: 0;
}

/* HTML field default margins -----------------------------------------------------*/


.gform_wrapper .left_label li.gfield_html_formatted,
.gform_wrapper .right_label li.gfield_html_formatted {
  margin-left: 32%;
}

.gform_wrapper .gfield_html.gfield_no_follows_desc {
  margin-top: 10px;
}

/* ajax forms ------------------------------------------------------*/


.gform_wrapper .gform_ajax_spinner {
  padding-left: 10px;
}

/* hide the honeypot field  ------------------------------------------------------*/


.gform_validation_container,
.gform_wrapper .gform_validation_container,
body .gform_wrapper li.gform_validation_container,
body .gform_wrapper .gform_body ul.gform_fields li.gfield.gform_validation_container,
body .gform_wrapper ul.gform_fields li.gfield.gform_validation_container {
  display: none !important;
  position: absolute !important;
  left: -9000px;
}

/* Really Simple Captcha ------------------------------------------------------*/


.gform_wrapper .gfield_captcha_input_container {
  padding-top: 3px;
}

.gform_wrapper .simple_captcha_small input {
  width: 100px;
}

.gform_wrapper .simple_captcha_medium input {
  width: 150px;
}

.gform_wrapper .simple_captcha_large input {
  width: 200px;
}

.gform_wrapper .gform_wrapper .left_label .simple_captcha_small,
.gform_wrapper .right_label .simple_captcha_small,
.gform_wrapper .left_label .simple_captcha_medium,
.gform_wrapper .right_label .simple_captcha_medium,
.gform_wrapper .left_label .simple_captcha_large,
.gform_wrapper .right_label .simple_captcha_large {
  margin-left: 32%;
}

.gform_wrapper .gfield_captcha_container img.gfield_captcha {
  border: none !important;
  background: none !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* math challenge ------------------------------------------------------*/


.gform_wrapper .math_small input {
  width: 69px;
}

.gform_wrapper .math_medium input {
  width: 90px;
}

.gform_wrapper .math_large input {
  width: 108px;
}

.gform_wrapper .left_label .math_small,
.gform_wrapper .right_label .math_small,
.gform_wrapper .left_label .math_medium,
.gform_wrapper .right_label .math_medium,
.gform_wrapper .left_label .math_large,
.gform_wrapper .right_label .math_large {
  margin-left: 32%;
}

/* textarea character counter ------------------------------------------------------*/


.gform_wrapper div.charleft {
  font-size: 11px;
  margin-top: 4px;
  color: #B7B7B7;
  width: 92% !important;
  white-space: nowrap !important;
}

.gform_wrapper div.charleft[style] {
  width: 92% !important;
}

.gform_wrapper .left_label div.charleft,
.gform_wrapper .right_label div.charleft {
  margin-left: 32%;
}

.gform_wrapper div.charleft.warningTextareaInfo {
  color: #A1A1A1;
}

.gform_wrapper li.gf_hide_charleft div.charleft  {
  display: none !important;
}

/* submission limit message ------------------------------------------------------*/

.gf_submission_limit_message {
  color: #790000;
  font-size: 1.4em;
}

/* pricing fields ------------------------------------------------------*/


.gform_wrapper .ginput_price {
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  -khtml-opacity: 0.7;
  opacity: 0.7;
}

.gform_wrapper span.ginput_total {
  color: #060;
  font-size: 1.2em;
}

.gform_wrapper .top_label span.ginput_total {
  margin: 8px 0;
}

.gform_wrapper span.ginput_product_price_label {
  margin-right: 2px;
}

.gform_wrapper span.ginput_product_price {
  color: #900
}

.gform_wrapper span.ginput_quantity_label {
  margin-left: 10px;
  margin-right: 2px;
}

.gform_wrapper input.ginput_quantity {
  width: 40px;
}

/* multi-page form paging ------------------------------------------------------*/

.gform_wrapper .gform_page_footer {
  margin: 20px 0;
  width: 99%;
  border-top: 1px dotted #CCC;
  padding: 16px 0 0 0;
}

.gform_wrapper .gform_page_footer .button.gform_button  {
  margin-right: 10px;
}

/* multi-page progress bar  ------------------------------------------------------*/


.gform_wrapper .gf_progressbar_wrapper {
  clear: both;
  width: 99%;
  margin: 0 0 8px 0;
  padding: 0 0 16px 0;
  border-bottom: 1px dotted #CCC;
}

.gform_wrapper .gf_progressbar_wrapper h3.gf_progressbar_title {
  font-size: 13px;
  line-height: 1em !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  clear: both;
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  -khtml-opacity: 0.6;
  opacity: 0.6;
}

.gform_wrapper .gf_progressbar {
  width: 99%;
  height: 20px;
  overflow: hidden;
  line-height: 20px !important;
  border: 1px solid #EEE;
  background-image: url(../images/gf-percentbar-bg.html);
  background-repeat: repeat-x;
  background-position: bottom;
  background-color: #FFF;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -moz-box-shadow: 0 0 4px 0 rgba(0,0,0,0.2);
  -webkit-box-shadow: 0 0 4px 0 rgba(0,0,0,0.2);
  box-shadow: 0 0 4px 0 rgba(0,0,0,0.2);
}

.gform_wrapper .gf_progressbar_percentage {
  height: 20px;
  text-align: right;
  font-family: helvetica,arial,sans-serif;
  font-size: 13px !important;
  text-shadow: 0 1px 1px rgba(0,0,0,0.50);
}

.gform_wrapper .gf_progressbar_percentage span {
  display: block;
  width: auto;
  float: right;
  margin-right: 5px;
  margin-left: 5px;
}

.gform_wrapper .gf_progressbar_percentage.percentbar_0 span {
  color: #959595;
  text-shadow: none;
}

.gform_wrapper .percentbar_blue {
  background-image: url(../images/gf-percentbar-blue.html);
  background-repeat: repeat-x;
  background-color: #0072BC;
  color: #FFF;
}

.gform_wrapper .percentbar_gray {
  background-image: url(../images/gf-percentbar-gray.html);
  background-repeat: repeat-x;
  background-color: #666;
  color: #FFF;
}

.gform_wrapper .percentbar_green {
  background-image: url(../images/gf-percentbar-green.html);
  background-repeat: repeat-x;
  background-color: #94DC21;
  color: #FFF;
}

.gform_wrapper .percentbar_orange {
  background-image: url(../images/gf-percentbar-orange.html);
  background-repeat: repeat-x;
  background-color: #DC7021;
  color: #FFF;
}

.gform_wrapper .percentbar_red {
  background-image: url(../images/gf-percentbar-red.html);
  background-repeat: repeat-x;
  background-color: #DC2521;
  color: #FFF;
}

.gform_wrapper .percentbar_custom {
  background-image: url(../images/gf-percentbar-custom.html);
  background-repeat: repeat-x;
}

/* multi-page steps ------------------------------------------------------*/


.gform_wrapper .gf_page_steps {
  width: 99%;
  margin: 0 0 8px 0;
  padding: 0 0 4px 0;
  border-bottom: 1px dotted #CCC;
}

.gform_wrapper .gf_step {
  width: auto !important;
  margin: 0 10px 10px 0;
  font-size: 14px;
  height: 20px;
  line-height: 20px !important;
  filter: alpha(opacity=20);
  -moz-opacity: 0.2;
  -khtml-opacity: 0.2;
  opacity: 0.2;
  font-family: arial,sans-serif;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
}

.gform_wrapper .gf_step span.gf_step_number {
  font-size: 20px;
  float: left;
  font-family: arial,sans-serif;
}

.gform_wrapper .gf_step.gf_step_active {
  filter: alpha(opacity=100);
  -moz-opacity: 1.0;
  -khtml-opacity: 1.0;
  opacity: 1.0;
}

.gform_wrapper .gf_step_clear {
  display: block;
  clear: both;
  height: 1px;
  overflow: hidden;
}

/* password strength indicator -----------------------------------------------------------------*/


.gform_wrapper .gfield_password_strength {
  border: 1px solid #DDD;
  margin: 0;
  padding: 3px 5px;
  text-align: center;
  width: 200px;
  background-color: #EEE;
}

.gform_wrapper .gfield_password_strength.bad {
  background-color: #FFB78C;
  border-color: #FF853C;
}

.gform_wrapper .gfield_password_strength.good {
  background-color: #FFEC8b;
  border-color: #FC0;
}

.gform_wrapper .gfield_password_strength.short,
.gform_wrapper .gfield_password_strength.mismatch {
  background-color: #FFA0A0;
  border-color: #f04040;
}

.gform_wrapper .gfield_password_strength.strong {
  background-color: #C3FF88;
  border-color: #8DFF1C;
}

/* reset the default list styles for the HTML blocks -----------------------------------------------------------------*/


body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ul li,
body .gform_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ul li {
  list-style-type: disc !important;
  margin: 0 0 0.5em;
  overflow: visible;
  padding-left: 0;
}

body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ul,
body .gform_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ul {
  list-style-type: disc !important;
  margin: 1em 0 1em 1.5em;
  padding-left: 0;
}

body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ol li,
body .gform_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ol li {
  list-style-type: decimal!important;
  overflow:visible;
  margin: 0 0 0.5em;
  padding-left: 0;
}

body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ol,
body .gform_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ol {
  list-style-type: decimal!important;
  margin: 1em 0 1.5em 2.0em;
  padding-left: 0;
}

body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ol li ul,
body .gform_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ol li ul li {
    list-style-type: disc !important;
    padding-left: 0;
}

body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ol li ul {
  margin: 1em 0 1em 1.5em;
}

body .gform_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ol li ul li {
  margin: 0 0 0.5em;
}

body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html dl {
  margin: 0 0 1.5em 0;
  padding-left: 0;
}

body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html dl dt {
  font-weight: bold;
}

body .gform_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html dl dd {
  margin: 0 0 1em 1.5em;
}

/* list fields added in v.1.6 -----------------------------------------------------------------*/


.gform_wrapper table.gfield_list,
.gform_wrapper table.gfield_list caption,
.gform_wrapper table.gfield_list tbody,
.gform_wrapper table.gfield_list tfoot,
.gform_wrapper table.gfield_list thead,
.gform_wrapper table.gfield_list tr,
.gform_wrapper table.gfield_list th,
.gform_wrapper table.gfield_list td {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

.gform_wrapper table.gfield_list {
  border-spacing: 0;
  border-collapse:collapse;
}

.gform_wrapper table.gfield_list thead th {
  font-weight: bold;
  text-align: left;
}

.gform_wrapper li.gfield.gfield_error table.gfield_list thead th {
  color: #790000;
}

.gform_wrapper table.gfield_list thead,
.gform_wrapper table.gfield_list tr {
  padding: 0;
  margin: 0;
}

.gform_wrapper table.gfield_list th,
.gform_wrapper table.gfield_list td {
  padding:0 0 0.5em 0;
}

.gform_wrapper table.gfield_list th + th,
.gform_wrapper table.gfield_list td + td {
  padding:0 0 0.5em 0.7em;
}

.gform_wrapper .left_label .gfield_list, .gform_wrapper .right_label .gfield_list {
  width: 64%;
}

.gform_wrapper .top_label .gfield_list {
  width: 99%;
}

.gform_wrapper .left_label .gf_list_one_column, .gform_wrapper .right_label .gf_list_one_column {
  width: 45%;
}

.gform_wrapper .top_label .gf_list_one_column {
  width: 46%;
}

.gform_wrapper .gfield_list input{
  width: 98%;
}

.gfield_icon_disabled {
  cursor: default !important;
  filter: alpha(opacity=60);
  -moz-opacity: 0.6;
  -khtml-opacity: 0.6;
  opacity: 0.6;
}

.gform_wrapper table.gfield_list td.gfield_list_icons {
  min-width: 45px !important;
}

/* enhanced UI/select styles added in v.1.6 -----------------------------------------------------------------*/


.gform_wrapper select.chzn-select {
  visibility: hidden;
  height: 28px !important;
  min-height: 28px !important;
}

.gform_wrapper .chzn-container {
  font-size: 13px;
  position: relative;
  margin-bottom: 4px;
  display: inline-block;
  zoom: 1;
}

.gform_wrapper .chzn-container .chzn-drop {
  background-color: #FFF;
  border: 1px solid #AAA;
  border-top: 0;
  position: absolute;
  top: 29px;
  left: 0;
  -webkit-box-shadow: 0 4px 5px rgba(0,0,0,.15);
  -moz-box-shadow: 0 4px 5px rgba(0,0,0,.15);
  -o-box-shadow: 0 4px 5px rgba(0,0,0,.15);
  box-shadow: 0 4px 5px rgba(0,0,0,.15);
  z-index: 999;
}

.gform_wrapper .chzn-container-single .chzn-single {
  background-color: #FFF;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #EEE), color-stop(0.5, white));
  background-image: -webkit-linear-gradient(center bottom, #EEE 0%, white 50%);
  background-image: -moz-linear-gradient(center bottom, #EEE 0%, white 50%);
  background-image: -o-linear-gradient(top, #EEE 0%,#FFF 50%);
  background-image: -ms-linear-gradient(top, #EEE 0%,#FFF 50%); filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#EEE', endColorstr='#FFF',GradientType=0 );
  background-image: linear-gradient(top, #EEE 0%,#FFF 50%);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  border: 1px solid #AAA;
  display: block; overflow: hidden;
  white-space: nowrap;
  position: relative;
  height: 26px;
  line-height: 26px;
  padding: 0 0 0 8px;
  color: #444;
  text-decoration: none;
}

.gform_wrapper .chzn-container-single .chzn-single span {
  margin-right: 26px;
  display: block;
  overflow: hidden;
  white-space: nowrap;
  -o-text-overflow: ellipsis;
  -ms-text-overflow: ellipsis;
  text-overflow: ellipsis;
}

.gform_wrapper .chzn-container-single .chzn-single div {
  -webkit-border-radius: 0 4px 4px 0;
  -moz-border-radius: 0 4px 4px 0;
  border-radius: 0 4px 4px 0;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  background-color: #CCC;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #CCC), color-stop(0.6, #EEE));
  background-image: -webkit-linear-gradient(center bottom, #CCC 0%, #EEE 60%);
  background-image: -moz-linear-gradient(center bottom, #CCC 0%, #EEE 60%);
  background-image: -o-linear-gradient(bottom, #CCC 0%, #EEE 60%);
  background-image: -ms-linear-gradient(top, #CCC 0%,#EEE 60%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#CCC', endColorstr='#EEE',GradientType=0 );
  background-image: linear-gradient(top, #CCC 0%,#EEE 60%);
  border-left: 1px solid #AAA;
  position: absolute;
  right: 0;
  top: 0;
  display: block;
  height: 100%;
  width: 18px;
}

.gform_wrapper .chzn-container-single .chzn-single div b {
  background-image: url(../images/chosen-sprite.html);
  background-position:  0 1px;
  background-repeat: no-repeat;
  display: block;
  width: 100%;
  height: 100%;
}

.gform_wrapper .chzn-container-single .chzn-search {
  padding: 3px 4px;
  margin: 0;
  white-space: nowrap;
}

.gform_wrapper .chzn-container-single .chzn-search input {
  background: #FFF url(../images/chosen-sprite.html) 100% -20px no-repeat;
  background: url(../images/chosen-sprite.html) 100% -20px no-repeat, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #EEE));
  background: url(../images/chosen-sprite.html) 100% -20px no-repeat, -webkit-linear-gradient(center bottom, white 85%, #EEE 99%);
  background: url(../images/chosen-sprite.html) 100% -20px no-repeat, -moz-linear-gradient(center bottom, white 85%, #EEE 99%);
  background: url(../images/chosen-sprite.html) 100% -20px no-repeat, -o-linear-gradient(bottom, white 85%, #EEE 99%);
  background: url(../images/chosen-sprite.html) 100% -20px no-repeat, -ms-linear-gradient(top, #FFF 85%,#EEE 99%);
  background: url(../images/chosen-sprite.html) 100% -20px no-repeat, -ms-linear-gradient(top, #FFF 85%,#EEE 99%);
  background: url(../images/chosen-sprite.html) 100% -20px no-repeat, linear-gradient(top, #FFF 85%,#EEE 99%);
  margin: 1px 0;
  padding: 4px 20px 4px 5px;
  outline: 0;
  border: 1px solid #AAA;
  font-family: sans-serif;
  font-size: 1em;
}

.gform_wrapper .chzn-container-single .chzn-drop {
  -webkit-border-radius: 0 0 4px 4px;
  -moz-border-radius: 0 0 4px 4px;
  border-radius: 0 0 4px 4px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
}

.gform_wrapper .chzn-container-multi .chzn-choices {
  background-color: #FFF;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #EEE));
  background-image: -webkit-linear-gradient(center bottom, white 85%, #EEE 99%);
  background-image: -moz-linear-gradient(center bottom, white 85%, #EEE 99%);
  background-image: -o-linear-gradient(bottom, white 85%, #EEE 99%);
  background-image: -ms-linear-gradient(top, #FFF 85%,#EEE 99%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFF', endColorstr='#EEE',GradientType=0 );
  background-image: linear-gradient(top, #FFF 85%,#EEE 99%);
  border: 1px solid #AAA;
  margin: 0;
  padding: 0;
  cursor: text;
  overflow: hidden;
  height: auto !important;
  height: 1%; position: relative;
}

.gform_wrapper .chzn-container-multi .chzn-choices li {
  float: left;
  list-style: none;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-field {
  white-space: nowrap;
  margin: 0;
  padding: 0;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-field input {
  color: #666;
  background: transparent !important;
  border: 0 !important;
  padding: 5px;
  margin: 1px 0;
  outline: 0;
  -webkit-box-shadow: none;
  -moz-box-shadow: none;
  -o-box-shadow: none;
  box-shadow: none;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-field .default {
  color: #999;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-choice {
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  -moz-background-clip: padding;
  -webkit-background-clip: padding-box;
  background-clip: padding-box;
  background-color: #E4E4E4;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, #E4E4E4), color-stop(0.7, #EEE));
  background-image: -webkit-linear-gradient(center bottom, #E4E4E4 0%, #EEE 70%);
  background-image: -moz-linear-gradient(center bottom, #E4E4E4 0%, #EEE 70%);
  background-image: -o-linear-gradient(bottom, #E4E4E4 0%, #EEE 70%);
  background-image: -ms-linear-gradient(top, #E4E4E4 0%,#EEE 70%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#E4E4E4', endColorstr='#EEE',GradientType=0 );
  background-image: linear-gradient(top, #E4E4E4 0%,#EEE 70%);
  color: #333;
  border: 1px solid #B4B4B4;
  line-height: 13px;
  padding: 3px 19px 3px 6px;
  margin: 3px 0 3px 5px;
  position: relative;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-choice span {
  cursor: default;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-choice-focus {
  background-color: #D4D4D4;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-choice .search-choice-close {
  display: block;
  position: absolute;
  right: 5px;
  top: 6px;
  width: 8px;
  height: 9px;
  font-size: 1px;
  background-image: url(../images/chosen-sprite.html);
  background-position: right top;
  background-repeat: no-repeat;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-choice .search-choice-close:hover {
  background-position: right -9px;
}

.gform_wrapper .chzn-container-multi .chzn-choices .search-choice-focus .search-choice-close {
  background-position: right -9px;
}

.gform_wrapper .chzn-container .chzn-results {
  margin: 0 4px 4px 0;
  max-height: 190px;
  padding: 0 0 0 4px;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
}

.gform_wrapper .chzn-container-multi .chzn-results {
  margin: -1px 0 0;
  padding: 0;
}

.gform_wrapper .chzn-container .chzn-results li {
    display:none;
  line-height: 80%;
  padding: 7px 7px 8px;
  margin: 0;
  list-style: none;
}

.gform_wrapper .chzn-container .chzn-results .active-result {
  cursor: pointer;
  display: list-item;
}

.gform_wrapper .chzn-container .chzn-results .highlighted {
  background-color: #F0F0F0;
}

.gform_wrapper .chzn-container .chzn-results li em {
  background-color: #FEFFDE;
  font-style: normal;
}

.gform_wrapper .chzn-container .chzn-results .highlighted em {
  background: transparent;
}

.gform_wrapper .chzn-container .chzn-results .no-results {
  background-color: #F4F4F4;
}

.gform_wrapper .chzn-container .chzn-results .group-result {
  cursor: default;
  color: #999;
  font-weight: bold;
}

.gform_wrapper .chzn-container .chzn-results .group-option {
  padding-left: 20px;
}

.gform_wrapper .chzn-container-multi .chzn-drop .result-selected {
  display: none;
}

.gform_wrapper .chzn-container-active .chzn-single {
  -webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
  -moz-box-shadow: 0 0 5px rgba(0,0,0,.3);
  -o-box-shadow: 0 0 5px rgba(0,0,0,.3);
  box-shadow: 0 0 5px rgba(0,0,0,.3);
}

.gform_wrapper .chzn-container-active .chzn-single-with-drop {
  border: 1px solid #AAA;
  -webkit-box-shadow: 0 1px 0 #FFF inset;
  -moz-box-shadow: 0 1px 0 #FFF inset;
  -o-box-shadow: 0 1px 0 #FFF inset;
  box-shadow: 0 1px 0 #FFF inset;
  background-color: #EEE;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(0, white), color-stop(0.5, #EEE));
  background-image: -webkit-linear-gradient(center bottom, white 0%, #EEE 50%);
  background-image: -moz-linear-gradient(center bottom, white 0%, #EEE 50%);
  background-image: -o-linear-gradient(bottom, white 0%, #EEE 50%);
  background-image: -ms-linear-gradient(top, #FFF 0%,#EEE 50%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFF', endColorstr='#EEE',GradientType=0 );
  background-image: linear-gradient(top, #FFF 0%,#EEE 50%);
  -webkit-border-bottom-left-radius : 0;
  -webkit-border-bottom-right-radius: 0;
  -moz-border-radius-bottomleft : 0;
  -moz-border-radius-bottomright: 0;
  border-bottom-left-radius : 0;
  border-bottom-right-radius: 0;
}

.gform_wrapper .chzn-container-active .chzn-single-with-drop div {
  background: transparent;
  border-left: none;
}

.gform_wrapper .chzn-container-active .chzn-single-with-drop div b {
  background-position: -18px 1px;
}

.gform_wrapper .chzn-container-active .chzn-choices {
  -webkit-box-shadow: 0 0 5px rgba(0,0,0,.3);
  -moz-box-shadow: 0 0 5px rgba(0,0,0,.3);
  -o-box-shadow: 0 0 5px rgba(0,0,0,.3);
  box-shadow: 0 0 5px rgba(0,0,0,.3);
}

.gform_wrapper .chzn-container-active .chzn-choices .search-field input {
  color: #111 !important;
}

.gform_wrapper .chzn-rtl {
  direction: rtl;
  text-align: right;
}

.gform_wrapper .chzn-rtl .chzn-single {
  padding-left: 0;
  padding-right: 8px;
}

.gform_wrapper .chzn-rtl .chzn-single span {
  margin-left: 26px;
  margin-right: 0;
}

.gform_wrapper .chzn-rtl .chzn-single div {
  left: 0;
  right: auto;
  border-left: none;
  border-right: 1px solid #AAA;
  -webkit-border-radius: 4px 0 0 4px;
  -moz-border-radius: 4px 0 0 4px;
  border-radius: 4px 0 0 4px;
}

.gform_wrapper .chzn-rtl .chzn-choices li {
  float: right;
}

.gform_wrapper .chzn-rtl .chzn-choices .search-choice {
  padding: 3px 6px 3px 19px;
  margin: 3px 5px 3px 0;
}

.gform_wrapper .chzn-rtl .chzn-choices .search-choice .search-choice-close {
  left: 5px;
  right: auto;
  background-position: right top;
}

.gform_wrapper .chzn-rtl.chzn-container-single .chzn-results {
  margin-left: 4px;
  margin-right: 0;
  padding-left: 0;
  padding-right: 4px;
}

.gform_wrapper .chzn-rtl .chzn-results .group-option {
  padding-left: 0;
  padding-right: 20px;
}

.gform_wrapper .chzn-rtl.chzn-container-active .chzn-single-with-drop div {
  border-right: none;
}

.gform_wrapper .chzn-rtl .chzn-search input {
  background: url(../images/chosen-sprite.html) -38px -20px no-repeat, #FFF;
  background: url(../images/chosen-sprite.html) -38px -20px no-repeat, -webkit-gradient(linear, left bottom, left top, color-stop(0.85, white), color-stop(0.99, #EEE));
  background: url(../images/chosen-sprite.html) -38px -20px no-repeat, -webkit-linear-gradient(center bottom, white 85%, #EEE 99%);
  background: url(../images/chosen-sprite.html) -38px -20px no-repeat, -moz-linear-gradient(center bottom, white 85%, #EEE 99%);
  background: url(../images/chosen-sprite.html) -38px -20px no-repeat, -o-linear-gradient(bottom, white 85%, #EEE 99%);
  background: url(../images/chosen-sprite.html) -38px -20px no-repeat, -ms-linear-gradient(top, #FFF 85%,#EEE 99%);
  background: url(../images/chosen-sprite.html) -38px -20px no-repeat, -ms-linear-gradient(top, #FFF 85%,#EEE 99%);
  background: url(../images/chosen-sprite.html) -38px -20px no-repeat, linear-gradient(top, #FFF 85%,#EEE 99%);
  padding: 4px 5px 4px 20px;
}

/* credit card icons ------------------------------------------------------*/


.gform_wrapper .gform_card_icon_container {
  margin: 8px 0 6px 0;
  height: 32px;
}

.gform_wrapper div.gform_card_icon {
  margin-right: 4px;
  text-indent: -9000px;
  background-image: url(../images/gf-creditcard-icons.html);
  background-repeat: no-repeat;
  width: 36px;
  height: 32px;
  float: left;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_visa {
  background-position: 0 0;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_visa {
  background-position: 0 -32px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_visa {
  background-position: 0 -64px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_mastercard {
  background-position: -36px 0;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_mastercard {
  background-position: -36px -32px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_mastercard {
  background-position: -36px -64px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_amex {
  background-position: -72px 0;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_amex {
  background-position: -72px -32px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_amex {
  background-position: -72px -64px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_discover {
  background-position: -108px 0;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_discover {
  background-position: -108px -32px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_discover {
  background-position: -108px -64px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_maestro {
  background-position: -144px 0;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_maestro {
  background-position: -144px -32px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_maestro {
  background-position: -144px -64px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_jcb {
  background-position: -180px 0;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_jcb {
  background-position: -180px -32px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style1 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_jcb {
  background-position: -180px -64px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_visa {
  background-position: 0 -192px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_visa {
  background-position: 0 -224px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_visa {
  background-position: 0 -256px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_mastercard {
  background-position: -36px -192px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_mastercard {
  background-position: -36px -224px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_mastercard {
  background-position: -36px -256px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_amex {
  background-position: -72px -192px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_amex {
  background-position: -72px -224px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_amex {
  background-position: -72px -256px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_discover {
  background-position: -108px -192px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_discover {
  background-position: -108px -224px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_discover {
  background-position: -108px -256px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_maestro {
  background-position: -144px -192px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_maestro {
  background-position: -144px -224px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_maestro {
  background-position: -144px -256px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_jcb {
  background-position: -180px -192px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_selected.gform_card_icon_jcb {
  background-position: -180px -224px;
}

.gform_wrapper .gform_card_icon_container.gform_card_icon_style2 div.gform_card_icon.gform_card_icon_inactive.gform_card_icon_jcb {
  background-position: -180px -256px;
}

/* credit card fields ------------------------------------------------------*/


.gform_card_icon_container input[type=radio]#gform_payment_method_creditcard {
  float: left;
  position: relative;
  top: 4px!important
}

.gform_wrapper .ginput_complex .ginput_cardinfo_left,
.gform_wrapper .ginput_complex .ginput_cardinfo_right {
  min-height: 43px;
  position: relative;
  float: left;
}

.gform_wrapper .ginput_complex .ginput_cardinfo_left {
  width: 50%;
  margin-right: 1%;
}

.gform_wrapper .ginput_complex .ginput_cardinfo_right {
  min-width: 85px !important;
}

.gform_wrapper .ginput_complex .ginput_cardinfo_left label,
.gform_wrapper .ginput_complex .ginput_cardinfo_right label {
  white-space: nowrap !important;
}

.gform_wrapper .ginput_complex span.ginput_cardextras {
  display: block;
  overflow: hidden;
}

.gform_wrapper .ginput_complex .ginput_cardinfo_left span.ginput_card_expiration_container {
  position: relative;
  display: block;
  min-width: 160px !important;
}

.gform_wrapper .ginput_complex select.ginput_card_expiration.ginput_card_expiration_month,
.gform_wrapper .ginput_complex select.ginput_card_expiration.ginput_card_expiration_year {
  width: 48% !important;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
}

.gform_wrapper .ginput_complex .ginput_cardinfo_left select.ginput_card_expiration.ginput_card_expiration_month {
  margin-right: 4px;
}

.gform_wrapper .ginput_complex .ginput_cardinfo_right input.ginput_card_security_code {
  max-width: 50% !important;
}

.gform_wrapper .ginput_complex .ginput_cardinfo_right span.ginput_card_security_code_icon {
  width: 32px;
  height: 23px;
  background-image: url(../images/gf-creditcard-icons.html);
  background-repeat: no-repeat;
  background-position: 0 -128px;
  position: relative;
  top: -1px;
  left: 6px;
  display: -moz-inline-stack;
  display: inline-block;
  zoom: 1;
}

.gform_wrapper .gform_fileupload_multifile .gform_drop_area {
  padding: 25px;
  border: 2px dashed #ddd;
  text-align: center;
  color: #aaa;
  margin-bottom: 10px;
}

.right_label .gform_fileupload_multifile,
.left_label .gform_fileupload_multifile{
    margin-left: 31%;
}

.gform_delete{
    vertical-align:middle;
    cursor:pointer;
}

/* fix recaptcha line height issue ------------------------------------------------------*/

body #content .entry-content .gform_wrapper form .gform_body .gform_fields .gfield .ginput_container #recaptcha_widget_div #recaptcha_area .recaptchatable tbody tr td .recaptcha_input_area,
body .gform_wrapper form .gform_body .gform_fields .gfield .ginput_container #recaptcha_widget_div #recaptcha_area .recaptchatable tbody tr td .recaptcha_input_area {
  line-height: 1em !important;
}
