/*
@import "menu-color";
$bodyHeight: 54px;
$subTitle: block;
$brand: 5px;
$search: 0px;
*/
.sub-title {
  background-color: #FFF;
  display: none;
  clear: both; }

.navbar-nav {
  padding-top: 8px; }

.navbar-brand {
  margin-top: 10px;
  padding-right: 10px; }

.button.navbar-toggle {
  color: #2980b9; }

.navbar-default .navbar-toggle {
  background-color: #FFF;
  color: #ECF0F1; }

#navbar {
  background-color: #FFF;
  -webkit-box-shadow: -1px 3px 18px -9px #a3a3a3;
  box-shadow: -1px 3px 18px -9px #a3a3a3; }
  #navbar .navbar-toggle .icon-bar {
    color: #2980b9 !important; }
  #navbar a {
    color: #2980b9;
    font-weight: bold;
    font-size: 16px; }
    #navbar a:hover {
      background-color: #FFF;
      color: #20638f; }
    #navbar a .is-active {
      background-color: #FFF;
      color: #409ad5; }
  #navbar a.dropdown-toggle a.is-active {
    background-color: #409ad5; }
  #navbar a.is-active {
    background-color: #FFF;
    color: #2980b9; }
  #navbar .navbar-collapse {
    background-color: #FFF; }
  #navbar .dropdown-menu {
    margin-top: 10px;
    background-color: #FFF;
    opacity: .9;
    border: none;
    -webkit-box-shadow: -1px 3px 18px -9px #a3a3a3;
    box-shadow: -1px 3px 18px -9px #a3a3a3; }
    #navbar .dropdown-menu a:hover {
      background-color: #409ad5;
      color: #FFF; }
  #navbar .input-group {
    max-width: 200px;
    padding-top: 10px; }

.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active, .navbar-default .navbar-nav > .active {
  background-color: #FFF;
  color: #2980b9; }

.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
  background-color: #FFF;
  color: #2980b9; }

.navbar-default .navbar-text {
  color: #FFF !important;
  font-size: 24px; }

/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.2
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2017 Daniel Eden
 */
.animated {
  -webkit-animation-duration: 1s;
       -o-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: both;
       -o-animation-fill-mode: both;
          animation-fill-mode: both; }

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
       -o-animation-iteration-count: infinite;
          animation-iteration-count: infinite; }

.animated.hinge {
  -webkit-animation-duration: 2s;
       -o-animation-duration: 2s;
          animation-duration: 2s; }

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: .75s;
       -o-animation-duration: .75s;
          animation-duration: .75s; }

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
            transform: translate3d(0, -30px, 0); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
            transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
            transform: translate3d(0, -4px, 0); } }

@-o-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
       animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    transform: translate3d(0, 0, 0); }
  40%, 43% {
    -o-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
       animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -30px, 0); }
  70% {
    -o-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
       animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    transform: translate3d(0, -15px, 0); }
  90% {
    transform: translate3d(0, -4px, 0); } }

@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
         -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
         -o-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
            transform: translate3d(0, -30px, 0); }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
         -o-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
            animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
            transform: translate3d(0, -15px, 0); }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
            transform: translate3d(0, -4px, 0); } }

.bounce {
  -webkit-animation-name: bounce;
       -o-animation-name: bounce;
          animation-name: bounce;
  -webkit-transform-origin: center bottom;
       -o-transform-origin: center bottom;
          transform-origin: center bottom; }

@-webkit-keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }

@-o-keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }

@keyframes flash {
  from, 50%, to {
    opacity: 1; }
  25%, 75% {
    opacity: 0; } }

.flash {
  -webkit-animation-name: flash;
       -o-animation-name: flash;
          animation-name: flash; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }
@-o-keyframes pulse {
  from {
    transform: scale3d(1, 1, 1); }
  50% {
    transform: scale3d(1.05, 1.05, 1.05); }
  to {
    transform: scale3d(1, 1, 1); } }
@keyframes pulse {
  from {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }
  50% {
    -webkit-transform: scale3d(1.05, 1.05, 1.05);
            transform: scale3d(1.05, 1.05, 1.05); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

.pulse {
  -webkit-animation-name: pulse;
       -o-animation-name: pulse;
          animation-name: pulse; }

@-webkit-keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

@-o-keyframes rubberBand {
  from {
    transform: scale3d(1, 1, 1); }
  30% {
    transform: scale3d(1.25, 0.75, 1); }
  40% {
    transform: scale3d(0.75, 1.25, 1); }
  50% {
    transform: scale3d(1.15, 0.85, 1); }
  65% {
    transform: scale3d(0.95, 1.05, 1); }
  75% {
    transform: scale3d(1.05, 0.95, 1); }
  to {
    transform: scale3d(1, 1, 1); } }

@keyframes rubberBand {
  from {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }
  30% {
    -webkit-transform: scale3d(1.25, 0.75, 1);
            transform: scale3d(1.25, 0.75, 1); }
  40% {
    -webkit-transform: scale3d(0.75, 1.25, 1);
            transform: scale3d(0.75, 1.25, 1); }
  50% {
    -webkit-transform: scale3d(1.15, 0.85, 1);
            transform: scale3d(1.15, 0.85, 1); }
  65% {
    -webkit-transform: scale3d(0.95, 1.05, 1);
            transform: scale3d(0.95, 1.05, 1); }
  75% {
    -webkit-transform: scale3d(1.05, 0.95, 1);
            transform: scale3d(1.05, 0.95, 1); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

.rubberBand {
  -webkit-animation-name: rubberBand;
       -o-animation-name: rubberBand;
          animation-name: rubberBand; }

@-webkit-keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0); } }

@-o-keyframes shake {
  from, to {
    transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    transform: translate3d(10px, 0, 0); } }

@keyframes shake {
  from, to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0); }
  20%, 40%, 60%, 80% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0); } }

.shake {
  -webkit-animation-name: shake;
       -o-animation-name: shake;
          animation-name: shake; }

@-webkit-keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
            transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
            transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
            transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
            transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

@-o-keyframes headShake {
  0% {
    -o-transform: translateX(0);
       transform: translateX(0); }
  6.5% {
    transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    transform: translateX(5px) rotateY(7deg); }
  31.5% {
    transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    transform: translateX(2px) rotateY(3deg); }
  50% {
    -o-transform: translateX(0);
       transform: translateX(0); } }

@keyframes headShake {
  0% {
    -webkit-transform: translateX(0);
         -o-transform: translateX(0);
            transform: translateX(0); }
  6.5% {
    -webkit-transform: translateX(-6px) rotateY(-9deg);
            transform: translateX(-6px) rotateY(-9deg); }
  18.5% {
    -webkit-transform: translateX(5px) rotateY(7deg);
            transform: translateX(5px) rotateY(7deg); }
  31.5% {
    -webkit-transform: translateX(-3px) rotateY(-5deg);
            transform: translateX(-3px) rotateY(-5deg); }
  43.5% {
    -webkit-transform: translateX(2px) rotateY(3deg);
            transform: translateX(2px) rotateY(3deg); }
  50% {
    -webkit-transform: translateX(0);
         -o-transform: translateX(0);
            transform: translateX(0); } }

.headShake {
  -webkit-animation-timing-function: ease-in-out;
       -o-animation-timing-function: ease-in-out;
          animation-timing-function: ease-in-out;
  -webkit-animation-name: headShake;
       -o-animation-name: headShake;
          animation-name: headShake; }

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
            transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
            transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
            transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
            transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
            transform: rotate3d(0, 0, 1, 0deg); } }

@-o-keyframes swing {
  20% {
    transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    transform: rotate3d(0, 0, 1, -5deg); }
  to {
    transform: rotate3d(0, 0, 1, 0deg); } }

@keyframes swing {
  20% {
    -webkit-transform: rotate3d(0, 0, 1, 15deg);
            transform: rotate3d(0, 0, 1, 15deg); }
  40% {
    -webkit-transform: rotate3d(0, 0, 1, -10deg);
            transform: rotate3d(0, 0, 1, -10deg); }
  60% {
    -webkit-transform: rotate3d(0, 0, 1, 5deg);
            transform: rotate3d(0, 0, 1, 5deg); }
  80% {
    -webkit-transform: rotate3d(0, 0, 1, -5deg);
            transform: rotate3d(0, 0, 1, -5deg); }
  to {
    -webkit-transform: rotate3d(0, 0, 1, 0deg);
            transform: rotate3d(0, 0, 1, 0deg); } }

.swing {
  -webkit-transform-origin: top center;
       -o-transform-origin: top center;
          transform-origin: top center;
  -webkit-animation-name: swing;
       -o-animation-name: swing;
          animation-name: swing; }

@-webkit-keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

@-o-keyframes tada {
  from {
    transform: scale3d(1, 1, 1); }
  10%, 20% {
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    transform: scale3d(1, 1, 1); } }

@keyframes tada {
  from {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); }
  10%, 20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); }
  30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); }
  40%, 60%, 80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
            transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); }
  to {
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

.tada {
  -webkit-animation-name: tada;
       -o-animation-name: tada;
          animation-name: tada; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes wobble {
  from {
    -webkit-transform: none;
            transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
            transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
            transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
            transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
            transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
            transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: none;
            transform: none; } }
@-o-keyframes wobble {
  from {
    -o-transform: none;
       transform: none; }
  15% {
    transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -o-transform: none;
       transform: none; } }
@keyframes wobble {
  from {
    -webkit-transform: none;
         -o-transform: none;
            transform: none; }
  15% {
    -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
            transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); }
  30% {
    -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
            transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); }
  45% {
    -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
            transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); }
  60% {
    -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
            transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); }
  75% {
    -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
            transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); }
  to {
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.wobble {
  -webkit-animation-name: wobble;
       -o-animation-name: wobble;
          animation-name: wobble; }

@-webkit-keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
            transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
            transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
            transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
            transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
            transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
            transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
            transform: skewX(0.39062deg) skewY(0.39062deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
            transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

@-o-keyframes jello {
  from, 11.1%, to {
    -o-transform: none;
       transform: none; }
  22.2% {
    -o-transform: skewX(-12.5deg) skewY(-12.5deg);
       transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -o-transform: skewX(6.25deg) skewY(6.25deg);
       transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -o-transform: skewX(-3.125deg) skewY(-3.125deg);
       transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -o-transform: skewX(1.5625deg) skewY(1.5625deg);
       transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -o-transform: skewX(-0.78125deg) skewY(-0.78125deg);
       transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -o-transform: skewX(0.39062deg) skewY(0.39062deg);
       transform: skewX(0.39062deg) skewY(0.39062deg); }
  88.8% {
    -o-transform: skewX(-0.19531deg) skewY(-0.19531deg);
       transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

@keyframes jello {
  from, 11.1%, to {
    -webkit-transform: none;
         -o-transform: none;
            transform: none; }
  22.2% {
    -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
         -o-transform: skewX(-12.5deg) skewY(-12.5deg);
            transform: skewX(-12.5deg) skewY(-12.5deg); }
  33.3% {
    -webkit-transform: skewX(6.25deg) skewY(6.25deg);
         -o-transform: skewX(6.25deg) skewY(6.25deg);
            transform: skewX(6.25deg) skewY(6.25deg); }
  44.4% {
    -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
         -o-transform: skewX(-3.125deg) skewY(-3.125deg);
            transform: skewX(-3.125deg) skewY(-3.125deg); }
  55.5% {
    -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
         -o-transform: skewX(1.5625deg) skewY(1.5625deg);
            transform: skewX(1.5625deg) skewY(1.5625deg); }
  66.6% {
    -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
         -o-transform: skewX(-0.78125deg) skewY(-0.78125deg);
            transform: skewX(-0.78125deg) skewY(-0.78125deg); }
  77.7% {
    -webkit-transform: skewX(0.39062deg) skewY(0.39062deg);
         -o-transform: skewX(0.39062deg) skewY(0.39062deg);
            transform: skewX(0.39062deg) skewY(0.39062deg); }
  88.8% {
    -webkit-transform: skewX(-0.19531deg) skewY(-0.19531deg);
         -o-transform: skewX(-0.19531deg) skewY(-0.19531deg);
            transform: skewX(-0.19531deg) skewY(-0.19531deg); } }

.jello {
  -webkit-animation-name: jello;
       -o-animation-name: jello;
          animation-name: jello;
  -webkit-transform-origin: center;
       -o-transform-origin: center;
          transform-origin: center; }

@-webkit-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
            transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
            transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

@-o-keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
       animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    transform: scale3d(1, 1, 1); } }

@keyframes bounceIn {
  from, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
         -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3); }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1); }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
            transform: scale3d(1.03, 1.03, 1.03); }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
            transform: scale3d(0.97, 0.97, 0.97); }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
            transform: scale3d(1, 1, 1); } }

.bounceIn {
  -webkit-animation-name: bounceIn;
       -o-animation-name: bounceIn;
          animation-name: bounceIn; }

@-webkit-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
            transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
            transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
            transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
            transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
       animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    transform: translate3d(0, 25px, 0); }
  75% {
    transform: translate3d(0, -10px, 0); }
  90% {
    transform: translate3d(0, 5px, 0); }
  to {
    -o-transform: none;
       transform: none; } }

@keyframes bounceInDown {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
         -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -3000px, 0);
            transform: translate3d(0, -3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, 25px, 0);
            transform: translate3d(0, 25px, 0); }
  75% {
    -webkit-transform: translate3d(0, -10px, 0);
            transform: translate3d(0, -10px, 0); }
  90% {
    -webkit-transform: translate3d(0, 5px, 0);
            transform: translate3d(0, 5px, 0); }
  to {
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.bounceInDown {
  -webkit-animation-name: bounceInDown;
       -o-animation-name: bounceInDown;
          animation-name: bounceInDown; }

@-webkit-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
            transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
            transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
            transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
       animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    transform: translate3d(25px, 0, 0); }
  75% {
    transform: translate3d(-10px, 0, 0); }
  90% {
    transform: translate3d(5px, 0, 0); }
  to {
    -o-transform: none;
       transform: none; } }

@keyframes bounceInLeft {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
         -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-3000px, 0, 0);
            transform: translate3d(-3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(25px, 0, 0);
            transform: translate3d(25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(-10px, 0, 0);
            transform: translate3d(-10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(5px, 0, 0);
            transform: translate3d(5px, 0, 0); }
  to {
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
       -o-animation-name: bounceInLeft;
          animation-name: bounceInLeft; }

@-webkit-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
            transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
            transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
            transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
       animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    transform: translate3d(-25px, 0, 0); }
  75% {
    transform: translate3d(10px, 0, 0); }
  90% {
    transform: translate3d(-5px, 0, 0); }
  to {
    -o-transform: none;
       transform: none; } }

@keyframes bounceInRight {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
         -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(3000px, 0, 0);
            transform: translate3d(3000px, 0, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(-25px, 0, 0);
            transform: translate3d(-25px, 0, 0); }
  75% {
    -webkit-transform: translate3d(10px, 0, 0);
            transform: translate3d(10px, 0, 0); }
  90% {
    -webkit-transform: translate3d(-5px, 0, 0);
            transform: translate3d(-5px, 0, 0); }
  to {
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.bounceInRight {
  -webkit-animation-name: bounceInRight;
       -o-animation-name: bounceInRight;
          animation-name: bounceInRight; }

@-webkit-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
            transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
            transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
            transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
            transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

@-o-keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
       animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    transform: translate3d(0, -20px, 0); }
  75% {
    transform: translate3d(0, 10px, 0); }
  90% {
    transform: translate3d(0, -5px, 0); }
  to {
    transform: translate3d(0, 0, 0); } }

@keyframes bounceInUp {
  from, 60%, 75%, 90%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
         -o-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
            animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 3000px, 0);
            transform: translate3d(0, 3000px, 0); }
  60% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
            transform: translate3d(0, -20px, 0); }
  75% {
    -webkit-transform: translate3d(0, 10px, 0);
            transform: translate3d(0, 10px, 0); }
  90% {
    -webkit-transform: translate3d(0, -5px, 0);
            transform: translate3d(0, -5px, 0); }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

.bounceInUp {
  -webkit-animation-name: bounceInUp;
       -o-animation-name: bounceInUp;
          animation-name: bounceInUp; }

@-webkit-keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3); } }

@-o-keyframes bounceOut {
  20% {
    transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3); } }

@keyframes bounceOut {
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
            transform: scale3d(0.9, 0.9, 0.9); }
  50%, 55% {
    opacity: 1;
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
            transform: scale3d(1.1, 1.1, 1.1); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3); } }

.bounceOut {
  -webkit-animation-name: bounceOut;
       -o-animation-name: bounceOut;
          animation-name: bounceOut; }

@-webkit-keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
            transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
            transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0); } }

@-o-keyframes bounceOutDown {
  20% {
    transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0); } }

@keyframes bounceOutDown {
  20% {
    -webkit-transform: translate3d(0, 10px, 0);
            transform: translate3d(0, 10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, -20px, 0);
            transform: translate3d(0, -20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0); } }

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
       -o-animation-name: bounceOutDown;
          animation-name: bounceOutDown; }

@-webkit-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
            transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0); } }

@-o-keyframes bounceOutLeft {
  20% {
    opacity: 1;
    transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0); } }

@keyframes bounceOutLeft {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(20px, 0, 0);
            transform: translate3d(20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0); } }

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
       -o-animation-name: bounceOutLeft;
          animation-name: bounceOutLeft; }

@-webkit-keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
            transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0); } }

@-o-keyframes bounceOutRight {
  20% {
    opacity: 1;
    transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0); } }

@keyframes bounceOutRight {
  20% {
    opacity: 1;
    -webkit-transform: translate3d(-20px, 0, 0);
            transform: translate3d(-20px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0); } }

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
       -o-animation-name: bounceOutRight;
          animation-name: bounceOutRight; }

@-webkit-keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
            transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
            transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0); } }

@-o-keyframes bounceOutUp {
  20% {
    transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0); } }

@keyframes bounceOutUp {
  20% {
    -webkit-transform: translate3d(0, -10px, 0);
            transform: translate3d(0, -10px, 0); }
  40%, 45% {
    opacity: 1;
    -webkit-transform: translate3d(0, 20px, 0);
            transform: translate3d(0, 20px, 0); }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0); } }

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
       -o-animation-name: bounceOutUp;
          animation-name: bounceOutUp; }

@-webkit-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@-o-keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

.fadeIn {
  -webkit-animation-name: fadeIn;
       -o-animation-name: fadeIn;
          animation-name: fadeIn; }

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }

@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.fadeInDown {
  -webkit-animation-name: fadeInDown;
       -o-animation-name: fadeInDown;
          animation-name: fadeInDown; }

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes fadeInDownBig {
  from {
    opacity: 0;
    transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }

@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
       -o-animation-name: fadeInDownBig;
          animation-name: fadeInDownBig; }

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }

@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
       -o-animation-name: fadeInLeft;
          animation-name: fadeInLeft; }

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }

@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
       -o-animation-name: fadeInLeftBig;
          animation-name: fadeInLeftBig; }

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }

@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.fadeInRight {
  -webkit-animation-name: fadeInRight;
       -o-animation-name: fadeInRight;
          animation-name: fadeInRight; }

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes fadeInRightBig {
  from {
    opacity: 0;
    transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }

@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
       -o-animation-name: fadeInRightBig;
          animation-name: fadeInRightBig; }

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }

@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.fadeInUp {
  -webkit-animation-name: fadeInUp;
       -o-animation-name: fadeInUp;
          animation-name: fadeInUp; }

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }

@-o-keyframes fadeInUpBig {
  from {
    opacity: 0;
    transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }

@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
       -o-animation-name: fadeInUpBig;
          animation-name: fadeInUpBig; }

@-webkit-keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@-o-keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

@keyframes fadeOut {
  from {
    opacity: 1; }
  to {
    opacity: 0; } }

.fadeOut {
  -webkit-animation-name: fadeOut;
       -o-animation-name: fadeOut;
          animation-name: fadeOut; }

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0); } }

@-o-keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(0, 100%, 0); } }

@keyframes fadeOutDown {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0); } }

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
       -o-animation-name: fadeOutDown;
          animation-name: fadeOutDown; }

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0); } }

@-o-keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(0, 2000px, 0); } }

@keyframes fadeOutDownBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
            transform: translate3d(0, 2000px, 0); } }

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
       -o-animation-name: fadeOutDownBig;
          animation-name: fadeOutDownBig; }

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0); } }

@-o-keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(-100%, 0, 0); } }

@keyframes fadeOutLeft {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0); } }

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
       -o-animation-name: fadeOutLeft;
          animation-name: fadeOutLeft; }

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0); } }

@-o-keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(-2000px, 0, 0); } }

@keyframes fadeOutLeftBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
            transform: translate3d(-2000px, 0, 0); } }

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
       -o-animation-name: fadeOutLeftBig;
          animation-name: fadeOutLeftBig; }

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0); } }

@-o-keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0); } }

@keyframes fadeOutRight {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0); } }

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
       -o-animation-name: fadeOutRight;
          animation-name: fadeOutRight; }

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0); } }

@-o-keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(2000px, 0, 0); } }

@keyframes fadeOutRightBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
            transform: translate3d(2000px, 0, 0); } }

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
       -o-animation-name: fadeOutRightBig;
          animation-name: fadeOutRightBig; }

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0); } }

@-o-keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(0, -100%, 0); } }

@keyframes fadeOutUp {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0); } }

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
       -o-animation-name: fadeOutUp;
          animation-name: fadeOutUp; }

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0); } }

@-o-keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(0, -2000px, 0); } }

@keyframes fadeOutUpBig {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
            transform: translate3d(0, -2000px, 0); } }

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
       -o-animation-name: fadeOutUpBig;
          animation-name: fadeOutUpBig; }

@-webkit-keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
            transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
            transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
            transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; } }

@-o-keyframes flip {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -o-animation-timing-function: ease-out;
       animation-timing-function: ease-out; }
  40% {
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -o-animation-timing-function: ease-out;
       animation-timing-function: ease-out; }
  50% {
    transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -o-animation-timing-function: ease-in;
       animation-timing-function: ease-in; }
  80% {
    transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -o-animation-timing-function: ease-in;
       animation-timing-function: ease-in; }
  to {
    transform: perspective(400px);
    -o-animation-timing-function: ease-in;
       animation-timing-function: ease-in; } }

@keyframes flip {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -360deg);
    -webkit-animation-timing-function: ease-out;
         -o-animation-timing-function: ease-out;
            animation-timing-function: ease-out; }
  40% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
            transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg);
    -webkit-animation-timing-function: ease-out;
         -o-animation-timing-function: ease-out;
            animation-timing-function: ease-out; }
  50% {
    -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
            transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg);
    -webkit-animation-timing-function: ease-in;
         -o-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  80% {
    -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
            transform: perspective(400px) scale3d(0.95, 0.95, 0.95);
    -webkit-animation-timing-function: ease-in;
         -o-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  to {
    -webkit-transform: perspective(400px);
            transform: perspective(400px);
    -webkit-animation-timing-function: ease-in;
         -o-animation-timing-function: ease-in;
            animation-timing-function: ease-in; } }

.animated.flip {
  -webkit-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
       -o-animation-name: flip;
          animation-name: flip; }

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
            transform: perspective(400px); } }

@-o-keyframes flipInX {
  from {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -o-animation-timing-function: ease-in;
       animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -o-animation-timing-function: ease-in;
       animation-timing-function: ease-in; }
  60% {
    transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    transform: perspective(400px); } }

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
         -o-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
         -o-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
            transform: perspective(400px); } }

.flipInX {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
       -o-animation-name: flipInX;
          animation-name: flipInX; }

@-webkit-keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
            transform: perspective(400px); } }

@-o-keyframes flipInY {
  from {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -o-animation-timing-function: ease-in;
       animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -o-animation-timing-function: ease-in;
       animation-timing-function: ease-in; }
  60% {
    transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    transform: perspective(400px); } }

@keyframes flipInY {
  from {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
         -o-animation-timing-function: ease-in;
            animation-timing-function: ease-in;
    opacity: 0; }
  40% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    -webkit-animation-timing-function: ease-in;
         -o-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  60% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    opacity: 1; }
  80% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -5deg); }
  to {
    -webkit-transform: perspective(400px);
            transform: perspective(400px); } }

.flipInY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
       -o-animation-name: flipInY;
          animation-name: flipInY; }

@-webkit-keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
            transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

@-o-keyframes flipOutX {
  from {
    transform: perspective(400px); }
  30% {
    transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutX {
  from {
    -webkit-transform: perspective(400px);
            transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
            transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
            transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    opacity: 0; } }

.flipOutX {
  -webkit-animation-name: flipOutX;
       -o-animation-name: flipOutX;
          animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important; }

@-webkit-keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
            transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

@-o-keyframes flipOutY {
  from {
    transform: perspective(400px); }
  30% {
    transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

@keyframes flipOutY {
  from {
    -webkit-transform: perspective(400px);
            transform: perspective(400px); }
  30% {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
            transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    opacity: 1; }
  to {
    -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
            transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    opacity: 0; } }

.flipOutY {
  -webkit-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
       -o-animation-name: flipOutY;
          animation-name: flipOutY; }

@-webkit-keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
            transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
            transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
            transform: skewX(-5deg);
    opacity: 1; }
  to {
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

@-o-keyframes lightSpeedIn {
  from {
    transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -o-transform: skewX(20deg);
       transform: skewX(20deg);
    opacity: 1; }
  80% {
    -o-transform: skewX(-5deg);
       transform: skewX(-5deg);
    opacity: 1; }
  to {
    -o-transform: none;
       transform: none;
    opacity: 1; } }

@keyframes lightSpeedIn {
  from {
    -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
            transform: translate3d(100%, 0, 0) skewX(-30deg);
    opacity: 0; }
  60% {
    -webkit-transform: skewX(20deg);
         -o-transform: skewX(20deg);
            transform: skewX(20deg);
    opacity: 1; }
  80% {
    -webkit-transform: skewX(-5deg);
         -o-transform: skewX(-5deg);
            transform: skewX(-5deg);
    opacity: 1; }
  to {
    -webkit-transform: none;
         -o-transform: none;
            transform: none;
    opacity: 1; } }

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
       -o-animation-name: lightSpeedIn;
          animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
       -o-animation-timing-function: ease-out;
          animation-timing-function: ease-out; }

@-webkit-keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
            transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

@-o-keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

@keyframes lightSpeedOut {
  from {
    opacity: 1; }
  to {
    -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
            transform: translate3d(100%, 0, 0) skewX(30deg);
    opacity: 0; } }

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
       -o-animation-name: lightSpeedOut;
          animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
       -o-animation-timing-function: ease-in;
          animation-timing-function: ease-in; }

@-webkit-keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
            transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

@-o-keyframes rotateIn {
  from {
    -o-transform-origin: center;
       transform-origin: center;
    transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -o-transform-origin: center;
       transform-origin: center;
    -o-transform: none;
       transform: none;
    opacity: 1; } }

@keyframes rotateIn {
  from {
    -webkit-transform-origin: center;
         -o-transform-origin: center;
            transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, -200deg);
            transform: rotate3d(0, 0, 1, -200deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: center;
         -o-transform-origin: center;
            transform-origin: center;
    -webkit-transform: none;
         -o-transform: none;
            transform: none;
    opacity: 1; } }

.rotateIn {
  -webkit-animation-name: rotateIn;
       -o-animation-name: rotateIn;
          animation-name: rotateIn; }

@-webkit-keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

@-o-keyframes rotateInDownLeft {
  from {
    -o-transform-origin: left bottom;
       transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -o-transform-origin: left bottom;
       transform-origin: left bottom;
    -o-transform: none;
       transform: none;
    opacity: 1; } }

@keyframes rotateInDownLeft {
  from {
    -webkit-transform-origin: left bottom;
         -o-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
         -o-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: none;
         -o-transform: none;
            transform: none;
    opacity: 1; } }

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
       -o-animation-name: rotateInDownLeft;
          animation-name: rotateInDownLeft; }

@-webkit-keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

@-o-keyframes rotateInDownRight {
  from {
    -o-transform-origin: right bottom;
       transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -o-transform-origin: right bottom;
       transform-origin: right bottom;
    -o-transform: none;
       transform: none;
    opacity: 1; } }

@keyframes rotateInDownRight {
  from {
    -webkit-transform-origin: right bottom;
         -o-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
         -o-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: none;
         -o-transform: none;
            transform: none;
    opacity: 1; } }

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
       -o-animation-name: rotateInDownRight;
          animation-name: rotateInDownRight; }

@-webkit-keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

@-o-keyframes rotateInUpLeft {
  from {
    -o-transform-origin: left bottom;
       transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -o-transform-origin: left bottom;
       transform-origin: left bottom;
    -o-transform: none;
       transform: none;
    opacity: 1; } }

@keyframes rotateInUpLeft {
  from {
    -webkit-transform-origin: left bottom;
         -o-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: left bottom;
         -o-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: none;
         -o-transform: none;
            transform: none;
    opacity: 1; } }

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
       -o-animation-name: rotateInUpLeft;
          animation-name: rotateInUpLeft; }

@-webkit-keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
            transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: none;
            transform: none;
    opacity: 1; } }

@-o-keyframes rotateInUpRight {
  from {
    -o-transform-origin: right bottom;
       transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -o-transform-origin: right bottom;
       transform-origin: right bottom;
    -o-transform: none;
       transform: none;
    opacity: 1; } }

@keyframes rotateInUpRight {
  from {
    -webkit-transform-origin: right bottom;
         -o-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -90deg);
            transform: rotate3d(0, 0, 1, -90deg);
    opacity: 0; }
  to {
    -webkit-transform-origin: right bottom;
         -o-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: none;
         -o-transform: none;
            transform: none;
    opacity: 1; } }

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
       -o-animation-name: rotateInUpRight;
          animation-name: rotateInUpRight; }

@-webkit-keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
            transform-origin: center;
    opacity: 1; }
  to {
    -webkit-transform-origin: center;
            transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
            transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }

@-o-keyframes rotateOut {
  from {
    -o-transform-origin: center;
       transform-origin: center;
    opacity: 1; }
  to {
    -o-transform-origin: center;
       transform-origin: center;
    transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }

@keyframes rotateOut {
  from {
    -webkit-transform-origin: center;
         -o-transform-origin: center;
            transform-origin: center;
    opacity: 1; }
  to {
    -webkit-transform-origin: center;
         -o-transform-origin: center;
            transform-origin: center;
    -webkit-transform: rotate3d(0, 0, 1, 200deg);
            transform: rotate3d(0, 0, 1, 200deg);
    opacity: 0; } }

.rotateOut {
  -webkit-animation-name: rotateOut;
       -o-animation-name: rotateOut;
          animation-name: rotateOut; }

@-webkit-keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }

@-o-keyframes rotateOutDownLeft {
  from {
    -o-transform-origin: left bottom;
       transform-origin: left bottom;
    opacity: 1; }
  to {
    -o-transform-origin: left bottom;
       transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }

@keyframes rotateOutDownLeft {
  from {
    -webkit-transform-origin: left bottom;
         -o-transform-origin: left bottom;
            transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
         -o-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, 45deg);
            transform: rotate3d(0, 0, 1, 45deg);
    opacity: 0; } }

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
       -o-animation-name: rotateOutDownLeft;
          animation-name: rotateOutDownLeft; }

@-webkit-keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

@-o-keyframes rotateOutDownRight {
  from {
    -o-transform-origin: right bottom;
       transform-origin: right bottom;
    opacity: 1; }
  to {
    -o-transform-origin: right bottom;
       transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

@keyframes rotateOutDownRight {
  from {
    -webkit-transform-origin: right bottom;
         -o-transform-origin: right bottom;
            transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
         -o-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
       -o-animation-name: rotateOutDownRight;
          animation-name: rotateOutDownRight; }

@-webkit-keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

@-o-keyframes rotateOutUpLeft {
  from {
    -o-transform-origin: left bottom;
       transform-origin: left bottom;
    opacity: 1; }
  to {
    -o-transform-origin: left bottom;
       transform-origin: left bottom;
    transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

@keyframes rotateOutUpLeft {
  from {
    -webkit-transform-origin: left bottom;
         -o-transform-origin: left bottom;
            transform-origin: left bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: left bottom;
         -o-transform-origin: left bottom;
            transform-origin: left bottom;
    -webkit-transform: rotate3d(0, 0, 1, -45deg);
            transform: rotate3d(0, 0, 1, -45deg);
    opacity: 0; } }

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
       -o-animation-name: rotateOutUpLeft;
          animation-name: rotateOutUpLeft; }

@-webkit-keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
            transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }

@-o-keyframes rotateOutUpRight {
  from {
    -o-transform-origin: right bottom;
       transform-origin: right bottom;
    opacity: 1; }
  to {
    -o-transform-origin: right bottom;
       transform-origin: right bottom;
    transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }

@keyframes rotateOutUpRight {
  from {
    -webkit-transform-origin: right bottom;
         -o-transform-origin: right bottom;
            transform-origin: right bottom;
    opacity: 1; }
  to {
    -webkit-transform-origin: right bottom;
         -o-transform-origin: right bottom;
            transform-origin: right bottom;
    -webkit-transform: rotate3d(0, 0, 1, 90deg);
            transform: rotate3d(0, 0, 1, 90deg);
    opacity: 0; } }

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
       -o-animation-name: rotateOutUpRight;
          animation-name: rotateOutUpRight; }

@-webkit-keyframes hinge {
  0% {
    -webkit-transform-origin: top left;
            transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out; }
  20%, 60% {
    -webkit-transform: rotate3d(0, 0, 1, 80deg);
            transform: rotate3d(0, 0, 1, 80deg);
    -webkit-transform-origin: top left;
            transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out; }
  40%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
            transform: rotate3d(0, 0, 1, 60deg);
    -webkit-transform-origin: top left;
            transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
            transform: translate3d(0, 700px, 0);
    opacity: 0; } }

@-o-keyframes hinge {
  0% {
    -o-transform-origin: top left;
       transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
       animation-timing-function: ease-in-out; }
  20%, 60% {
    transform: rotate3d(0, 0, 1, 80deg);
    -o-transform-origin: top left;
       transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
       animation-timing-function: ease-in-out; }
  40%, 80% {
    transform: rotate3d(0, 0, 1, 60deg);
    -o-transform-origin: top left;
       transform-origin: top left;
    -o-animation-timing-function: ease-in-out;
       animation-timing-function: ease-in-out;
    opacity: 1; }
  to {
    transform: translate3d(0, 700px, 0);
    opacity: 0; } }

@keyframes hinge {
  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: rotate3d(0, 0, 1, 80deg);
            transform: rotate3d(0, 0, 1, 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%, 80% {
    -webkit-transform: rotate3d(0, 0, 1, 60deg);
            transform: rotate3d(0, 0, 1, 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;
    opacity: 1; }
  to {
    -webkit-transform: translate3d(0, 700px, 0);
            transform: translate3d(0, 700px, 0);
    opacity: 0; } }

.hinge {
  -webkit-animation-name: hinge;
       -o-animation-name: hinge;
          animation-name: hinge; }

@-webkit-keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
            transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom; }
  50% {
    -webkit-transform: rotate(-10deg);
            transform: rotate(-10deg); }
  70% {
    -webkit-transform: rotate(3deg);
            transform: rotate(3deg); }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
            transform: scale(1); } }

@-o-keyframes jackInTheBox {
  from {
    opacity: 0;
    -o-transform: scale(0.1) rotate(30deg);
       transform: scale(0.1) rotate(30deg);
    -o-transform-origin: center bottom;
       transform-origin: center bottom; }
  50% {
    -o-transform: rotate(-10deg);
       transform: rotate(-10deg); }
  70% {
    -o-transform: rotate(3deg);
       transform: rotate(3deg); }
  to {
    opacity: 1;
    -o-transform: scale(1);
       transform: scale(1); } }

@keyframes jackInTheBox {
  from {
    opacity: 0;
    -webkit-transform: scale(0.1) rotate(30deg);
         -o-transform: scale(0.1) rotate(30deg);
            transform: scale(0.1) rotate(30deg);
    -webkit-transform-origin: center bottom;
         -o-transform-origin: center bottom;
            transform-origin: center bottom; }
  50% {
    -webkit-transform: rotate(-10deg);
         -o-transform: rotate(-10deg);
            transform: rotate(-10deg); }
  70% {
    -webkit-transform: rotate(3deg);
         -o-transform: rotate(3deg);
            transform: rotate(3deg); }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
         -o-transform: scale(1);
            transform: scale(1); } }

.jackInTheBox {
  -webkit-animation-name: jackInTheBox;
       -o-animation-name: jackInTheBox;
          animation-name: jackInTheBox; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
            transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none; } }
@-o-keyframes rollIn {
  from {
    opacity: 0;
    transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -o-transform: none;
       transform: none; } }
@keyframes rollIn {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
            transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); }
  to {
    opacity: 1;
    -webkit-transform: none;
         -o-transform: none;
            transform: none; } }

.rollIn {
  -webkit-animation-name: rollIn;
       -o-animation-name: rollIn;
          animation-name: rollIn; }

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@-webkit-keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
            transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }
@-o-keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }
@keyframes rollOut {
  from {
    opacity: 1; }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
            transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); } }

.rollOut {
  -webkit-animation-name: rollOut;
       -o-animation-name: rollOut;
          animation-name: rollOut; }

@-webkit-keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

@-o-keyframes zoomIn {
  from {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

@keyframes zoomIn {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3); }
  50% {
    opacity: 1; } }

.zoomIn {
  -webkit-animation-name: zoomIn;
       -o-animation-name: zoomIn;
          animation-name: zoomIn; }

@-webkit-keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@-o-keyframes zoomInDown {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
       animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
       animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInDown {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
         -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
         -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInDown {
  -webkit-animation-name: zoomInDown;
       -o-animation-name: zoomInDown;
          animation-name: zoomInDown; }

@-webkit-keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@-o-keyframes zoomInLeft {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
       animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
       animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInLeft {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
         -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
         -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInLeft {
  -webkit-animation-name: zoomInLeft;
       -o-animation-name: zoomInLeft;
          animation-name: zoomInLeft; }

@-webkit-keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@-o-keyframes zoomInRight {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
       animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
       animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInRight {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
         -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
         -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInRight {
  -webkit-animation-name: zoomInRight;
       -o-animation-name: zoomInRight;
          animation-name: zoomInRight; }

@-webkit-keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@-o-keyframes zoomInUp {
  from {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
       animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
       animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomInUp {
  from {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
         -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  60% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
         -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomInUp {
  -webkit-animation-name: zoomInUp;
       -o-animation-name: zoomInUp;
          animation-name: zoomInUp; }

@-webkit-keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }

@-o-keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }

@keyframes zoomOut {
  from {
    opacity: 1; }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.3, 0.3, 0.3);
            transform: scale3d(0.3, 0.3, 0.3); }
  to {
    opacity: 0; } }

.zoomOut {
  -webkit-animation-name: zoomOut;
       -o-animation-name: zoomOut;
          animation-name: zoomOut; }

@-webkit-keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@-o-keyframes zoomOutDown {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
       animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -o-transform-origin: center bottom;
       transform-origin: center bottom;
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
       animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutDown {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
         -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    -webkit-transform-origin: center bottom;
         -o-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
         -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomOutDown {
  -webkit-animation-name: zoomOutDown;
       -o-animation-name: zoomOutDown;
          animation-name: zoomOutDown; }

@-webkit-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
            transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
            transform-origin: left center; } }

@-o-keyframes zoomOutLeft {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    transform: scale(0.1) translate3d(-2000px, 0, 0);
    -o-transform-origin: left center;
       transform-origin: left center; } }

@keyframes zoomOutLeft {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
            transform: scale(0.1) translate3d(-2000px, 0, 0);
    -webkit-transform-origin: left center;
         -o-transform-origin: left center;
            transform-origin: left center; } }

.zoomOutLeft {
  -webkit-animation-name: zoomOutLeft;
       -o-animation-name: zoomOutLeft;
          animation-name: zoomOutLeft; }

@-webkit-keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
            transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
            transform-origin: right center; } }

@-o-keyframes zoomOutRight {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    transform: scale(0.1) translate3d(2000px, 0, 0);
    -o-transform-origin: right center;
       transform-origin: right center; } }

@keyframes zoomOutRight {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); }
  to {
    opacity: 0;
    -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
            transform: scale(0.1) translate3d(2000px, 0, 0);
    -webkit-transform-origin: right center;
         -o-transform-origin: right center;
            transform-origin: right center; } }

.zoomOutRight {
  -webkit-animation-name: zoomOutRight;
       -o-animation-name: zoomOutRight;
          animation-name: zoomOutRight; }

@-webkit-keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@-o-keyframes zoomOutUp {
  40% {
    opacity: 1;
    transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
       animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -o-transform-origin: center bottom;
       transform-origin: center bottom;
    -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
       animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

@keyframes zoomOutUp {
  40% {
    opacity: 1;
    -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
            transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
         -o-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
            animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); }
  to {
    opacity: 0;
    -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
            transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    -webkit-transform-origin: center bottom;
         -o-transform-origin: center bottom;
            transform-origin: center bottom;
    -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
         -o-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
            animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); } }

.zoomOutUp {
  -webkit-animation-name: zoomOutUp;
       -o-animation-name: zoomOutUp;
          animation-name: zoomOutUp; }

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

@-o-keyframes slideInDown {
  from {
    transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    transform: translate3d(0, 0, 0); } }

@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

.slideInDown {
  -webkit-animation-name: slideInDown;
       -o-animation-name: slideInDown;
          animation-name: slideInDown; }

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

@-o-keyframes slideInLeft {
  from {
    transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    transform: translate3d(0, 0, 0); } }

@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

.slideInLeft {
  -webkit-animation-name: slideInLeft;
       -o-animation-name: slideInLeft;
          animation-name: slideInLeft; }

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

@-o-keyframes slideInRight {
  from {
    transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    transform: translate3d(0, 0, 0); } }

@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

.slideInRight {
  -webkit-animation-name: slideInRight;
       -o-animation-name: slideInRight;
          animation-name: slideInRight; }

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

@-o-keyframes slideInUp {
  from {
    transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    transform: translate3d(0, 0, 0); } }

@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0);
    visibility: visible; }
  to {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); } }

.slideInUp {
  -webkit-animation-name: slideInUp;
       -o-animation-name: slideInUp;
          animation-name: slideInUp; }

@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0); } }

@-o-keyframes slideOutDown {
  from {
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    transform: translate3d(0, 100%, 0); } }

@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
            transform: translate3d(0, 100%, 0); } }

.slideOutDown {
  -webkit-animation-name: slideOutDown;
       -o-animation-name: slideOutDown;
          animation-name: slideOutDown; }

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0); } }

@-o-keyframes slideOutLeft {
  from {
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    transform: translate3d(-100%, 0, 0); } }

@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0); } }

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
       -o-animation-name: slideOutLeft;
          animation-name: slideOutLeft; }

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0); } }

@-o-keyframes slideOutRight {
  from {
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    transform: translate3d(100%, 0, 0); } }

@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
            transform: translate3d(100%, 0, 0); } }

.slideOutRight {
  -webkit-animation-name: slideOutRight;
       -o-animation-name: slideOutRight;
          animation-name: slideOutRight; }

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0); } }

@-o-keyframes slideOutUp {
  from {
    transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    transform: translate3d(0, -100%, 0); } }

@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0); }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0); } }

.slideOutUp {
  -webkit-animation-name: slideOutUp;
       -o-animation-name: slideOutUp;
          animation-name: slideOutUp; }

#pgraph {
  padding: 10px;
  border: 1px solid #379683;
  border-radius: 6px;
  margin: 10px 0px;
  background-color: #2980b9;
  color: #FFF; }

.p-tip .fontawesome-icons {
  font-size: 3em;
  padding: 20px;
  border-radius: 50px;
  background-color: #2980b9; }

.p-tip .field--name-field-tip-title {
  font-size: 2em;
  font-weight: bold; }

.p-tip .field--name-field-tip-body p {
  color: #FFF; }

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  color: #2980b9; }

#turnkey-credit {
  display: none; }

@media (min-width: 1200px) {
  .auto-clear .col-lg-1:nth-child(12n+1) {
    clear: left; }
  .auto-clear .col-lg-2:nth-child(6n+1) {
    clear: left; }
  .auto-clear .col-lg-3:nth-child(4n+1) {
    clear: left; }
  .auto-clear .col-lg-4:nth-child(3n+1) {
    clear: left; }
  .auto-clear .col-lg-6:nth-child(odd) {
    clear: left; }
  .custom-carousel-caption {
    left: 10%; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .auto-clear .col-md-1:nth-child(12n+1) {
    clear: left; }
  .auto-clear .col-md-2:nth-child(6n+1) {
    clear: left; }
  .auto-clear .col-md-3:nth-child(4n+1) {
    clear: left; }
  .auto-clear .col-md-4:nth-child(3n+1) {
    clear: left; }
  .auto-clear .col-md-6:nth-child(odd) {
    clear: left; }
  .custom-carousel-caption {
    left: 5%; } }

@media (min-width: 768px) and (max-width: 991px) {
  .auto-clear .col-sm-1:nth-child(12n+1) {
    clear: left; }
  .auto-clear .col-sm-2:nth-child(6n+1) {
    clear: left; }
  .auto-clear .col-sm-3:nth-child(4n+1) {
    clear: left; }
  .auto-clear .col-sm-4:nth-child(3n+1) {
    clear: left; }
  .auto-clear .col-sm-6:nth-child(odd) {
    clear: left; }
  .custom-carousel-caption {
    left: 3%; }
  .horz-row-front .news-thumb {
    display: none; } }

@media (max-width: 767px) {
  .auto-clear .col-xs-1:nth-child(12n+1) {
    clear: left; }
  .auto-clear .col-xs-2:nth-child(6n+1) {
    clear: left; }
  .auto-clear .col-xs-3:nth-child(4n+1) {
    clear: left; }
  .auto-clear .col-xs-4:nth-child(3n+1) {
    clear: left; }
  .auto-clear .col-xs-6:nth-child(odd) {
    clear: left; }
  .custom-carousel-caption {
    left: 0%; } }

.block-views-blockduplicate-of-front-categories-block-1 {
  margin-top: 4%; }

.row-centered {
  text-align: center; }

.col-centered {
  display: inline-block;
  float: none;
  /* reset the text-align */
  text-align: left;
  /* inline-block space fix */
  margin-right: -4px; }

@media only screen and (max-width: 768px) {
  .grid {
    height: auto; }
  .sub-title {
    display: none !important; }
  .category-block .img-responsive {
    max-width: 65%; }
  .slide .carousel-caption {
    height: auto; }
    .slide .carousel-caption p {
      font-size: 1em !important; }
    .slide .carousel-caption h2 {
      font-size: 2em !important;
      font-weight: bold; }
  .highlighted {
    margin-top: 8px; }
    .highlighted .img-responsive {
      height: 400px;
      -o-object-fit: cover;
         object-fit: cover; }
  ul.header-options {
    display: none; }
  .bar-default .navbar-text {
    display: none; }
  .navbar-is-fixed-top {
    margin-top: 180px !important; }
  .region-content-front-left .img-responsive {
    display: none; }
  .page-node-type-page .region-content {
    padding: 0px; } }

.video-responsive {
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
  height: 0; }

.video-responsive iframe {
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  position: absolute; }

@media only screen and (min-width: 769px) and (max-width: 992px) {
  .grid {
    height: auto; }
  .navbar-default .navbar-text {
    display: none; }
  #block-cires-bootstrap-search {
    display: none; }
  ul.header-options {
    display: none; }
  .slide .carousel-caption {
    height: auto; }
    .slide .carousel-caption p {
      font-size: 1em !important; }
    .slide .carousel-caption h2 {
      font-size: 2em !important;
      font-weight: bold; } }

@media only screen and (min-width: 993px) {
  .grid {
    height: 300px; }
  .navbar-default .navbar-text {
    display: none; }
  #matt-search .form-search.form-control {
    width: 100%; } }

#primary-holder {
  background-color: #2980b9;
  color: #FFF;
  margin-bottom: 3%;
  border-bottom: 2px solid #20638f; }
  #primary-holder h1 {
    color: #FFF;
    font-size: 2.5em;
    margin-bottom: 0px;
    margin-top: 0px;
    padding: 10px 0px;
    text-align: center; }

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

.path-frontpage h1.page-header {
  display: none; }

.page-header {
  display: none; }

.fa {
  padding: 10px; }
  .fa:hover {
    background-color: #ECF0F1;
    padding: 10px;
    border-radius: 25px; }
  .fa:active {
    -webkit-transform: scale(0.95);
         -o-transform: scale(0.95);
            transform: scale(0.95); }

.footer i.fa:hover {
  background-color: none;
  padding: 10px;
  border-radius: 25px; }

.fa-tag {
  padding-right: 3px; }

.fa.fa-tag:hover {
  background-color: none; }

.tooltip-arrow,
+ .tooltip > .tooltip-inner {
  background-color: #2980b9; }

.tooltip-inner {
  background-color: #2980b9;
  color: #fff; }

.tooltip.top .tooltip-arrow {
  border-top-color: #2980b9; }

.tooltip.right .tooltip-arrow {
  border-right-color: #2980b9; }

.tooltip.bottom .tooltip-arrow {
  border-bottom-color: #2980b9; }

.tooltip.left .tooltip-arrow {
  border-left-color: #2980b9; }

h1.page-header {
  font-size: 4rem;
  margin-left: 0px;
  margin-top: 20px; }

.page-header {
  border-bottom: none; }

.path-frontpage .region-content {
  padding: 0px !important; }

.fatfont {
  color: #777777;
  font-size: 2rem; }

.category-tag {
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  min-height: 140px;
  padding: 20px;
  border-radius: 6px; }
  .category-tag .h4 {
    font-weight: bold; }
  .category-tag p {
    font-size: 12px; }
  .category-tag:hover {
    background-color: #ECF0F1; }

img.desk-img {
  width: 50%; }

p {
  color: #676767;
  font-size: 26px;
  font-size: 1.625rem; }

a:link, a:visited {
  color: #2980b9;
  font-weight: bold;
  text-decoration: none !important; }

a:hover {
  text-decoration: underline; }

/*
.date-stamp, time {
	font-size: 1.8rem;
	color: darken($color-gray, 15%);
	text-transform: uppercase;
}
*/
h1 {
  font-size: 96px;
  font-size: 6rem; }

.page-intro {
  margin-bottom: 5%;
  margin-left: 2%;
  font-size: 32px;
  font-size: 2rem;
  color: #77939a;
  font-weight: 300; }

h1 {
  font-weight: 300; }

.read-more {
  -webkit-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  border-bottom: none; }

.read-more:after {
  content: "\00279E";
  color: #2980b9;
  padding-left: 5px;
  -webkit-transition: all .4s .4s;
  -o-transition: all .4s .4s;
  transition: all .4s .4s;
  position: relative;
  -webkit-transition: all .256s ease-in-out;
  -o-transition: all .256s ease-in-out;
  transition: all .256s ease-in-out;
  border-bottom: none; }

.read-more:hover:after {
  right: -2px;
  border-bottom: none; }

.border-left {
  border-left: 2px solid #ECF0F1;
  padding-left: 20px; }

.custom-carousel-caption {
  position: absolute;
  text-align: left;
  padding: 5px 20px;
  color: #FFF;
  bottom: 0px;
  opacity: .8;
  max-width: 60%; }
  .custom-carousel-caption h2 {
    color: #FFF;
    font-size: 70px;
    font-size: 4.375rem;
    text-shadow: 0px 0px 12px rgba(0, 0, 0, 0.8); }
  .custom-carousel-caption p {
    background-color: #2980b9;
    opacity: 1;
    color: #FFF;
    font-size: 26px;
    text-align: left;
    font-style: italic;
    padding: 20px; }

.slide-button {
  padding: 8px 20px 8px 20px;
  border-radius: 20px;
  border: 1px solid #FFF;
  color: #FFF;
  background-color: none;
  margin-top: 5px;
  display: inline-block; }
  .slide-button:hover {
    background-color: #FFF;
    color: #2980b9;
    text-decoration: none; }
  .slide-button a {
    color: #FFF; }

.slide-credit {
  position: absolute;
  right: 5px;
  bottom: 25px;
  font-style: italic;
  font-size: .95em;
  color: #fff; }

.sub-title {
  background-color: #000;
  display: block;
  clear: both;
  padding: .8rem; }
  .sub-title p {
    color: #FFF;
    padding: 4px;
    margin-top: 4px;
    font-size: 22px;
    font-size: 1.375rem; }
  .sub-title h2 {
    color: #FFF;
    font-weight: bold; }
  .sub-title h3 {
    color: #FFF;
    font-weight: bold; }

.navbar-brand {
  margin-top: 0px;
  display: none; }

header#navbar.navbar.navbar-default.navbar-static-top {
  margin-bottom: 0px;
  margin: 0px; }

.header-options {
  -webkit-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s;
  list-style: none;
  float: right;
  padding-bottom: 3px;
  margin-top: 10px; }
  .header-options li {
    display: inline-block;
    text-align: center;
    margin: 0px auto;
    padding-right: 5px; }
  .header-options fa {
    background-color: #ECF0F1; }
    .header-options fa:hover {
      background-color: white !important; }
  .header-options:hover {
    background-color: #ECF0F1;
    border-radius: 12px; }

.header-options:active .fa {
  -webkit-transform: scale(0.9, 0.9);
       -o-transform: scale(0.9, 0.9);
          transform: scale(0.9, 0.9); }

.modal {
  text-align: center;
  padding: 0 !important; }

.modal:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
  margin-right: -4px;
  /* Adjusts for spacing */ }

.modal-dialog {
  display: inline-block;
  text-align: left;
  vertical-align: middle; }

#edit-keys--2 {
  background: none;
  border-radius: 0px;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  height: 65px;
  font-size: 4rem;
  font-weight: 200;
  overflow: visible;
  width: 100%; }

div.input-group {
  width: 100%; }

.toggle-search-close .glyphicon {
  cursor: pointer; }

.toggle-search-close .glyphicon span:hover {
  color: #2980b9;
  cursor: pointer; }

.footer-logos img {
  max-width: 200px;
  height: auto; }

#mission-block {
  background-color: #20638f;
  padding: 5px;
  overflow: auto;
  text-align: center;
  color: #2980b9 !important; }
  #mission-block p {
    color: #474747; }
  #mission-block h2 {
    color: #474747; }
  #mission-block h3 {
    color: #2980b9; }

#cta-block {
  background-color: #d6d6d6;
  overflow: auto;
  margin-bottom: 3%;
  margin-bottom: 30px;
  border-bottom: 2px solid #c9c9c9;
  position: relative;
  top: -40px;
  padding-bottom: 30px; }
  #cta-block .region-cta {
    text-align: center;
    margin-top: 40px; }
    #cta-block .region-cta h3 {
      margin-top: 0px; }

.foot-two {
  color: #fff;
  background-color: #2980b9;
  background-color: #efefef;
  height: auto;
  margin: 0px auto;
  text-align: center;
  padding: 3%;
  border-top: 2px solid #d6d6d6;
  text-align: center; }
  .foot-two p {
    color: #FFF; }
  .foot-two .fontawesome-icon {
    font-size: 25px;
    padding: 10px; }

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

.foot-one {
  color: #474747;
  background-color: #efefef;
  height: auto;
  margin: 0px auto;
  text-align: center;
  padding: 3%;
  border-top: 2px solid #d6d6d6; }
  .foot-one p {
    color: #474747; }

.front-category {
  min-height: 120px;
  margin-bottom: 30px; }

.front-spacer {
  margin: 2% 0px 2% 0px; }

.main-container {
  background-color: #FFF;
  padding-bottom: 3%; }

.region-content .not-front {
  padding-bottom: 10%; }

.img-sidebar {
  padding-left: 20px; }
  .img-sidebar img {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: 20px; }

body p, body h1, body h2, body h3, body li, body ul {
  color: #7b7b7b; }

body img.align-center {
  width: 100%;
  height: auto; }

body.navbar-is-fixed-top {
  margin-top: 180px; }

a.logo.navbar-btn.pull-left {
  display: none; }
  a.logo.navbar-btn.pull-left img {
    width: 130px; }
    a.logo.navbar-btn.pull-left img:hover {
      fill: #2980b9; }

.made-with {
  color: #216693;
  font-size: .95rem;
  -webkit-transition: all 5s;
  -o-transition: all 5s;
  transition: all 5s; }
  .made-with:hover {
    color: #FFF; }
  .made-with:hover > .fa-heart {
    color: red !important;
    background-color: #2980b9;
    border-radius: none !important;
    padding: none;
    -webkit-transition: all 5s;
    -o-transition: all 5s;
    transition: all 5s; }
  .made-with .fa-heart {
    padding: 0px !important;
    color: #216693 !important; }

.copyright {
  color: #FFF;
  font-size: 1rem; }

#Layer_0 img {
  fill: #379683; }

.container.foot {
  background: #2980b9; }

.spotlight-block {
  background-color: #e3e9eb;
  border-radius: 6px;
  padding-bottom: 15px; }
  .spotlight-block .spotlight-header {
    border-bottom: 1px solid #d2dbde;
    padding-bottom: 5px;
    margin-bottom: 5px;
    background-color: #c9d4d7;
    padding: 5px;
    border-top-left-radius: 6px;
    border-top-right-radius: 6px;
    padding-left: 25px; }
  .spotlight-block .spotlight-body {
    padding: 10px 10px 25px 10px; }
  .spotlight-block .border-bottom-white {
    border-bottom: 1px solid white;
    padding-bottom: 2px;
    margin-bottom: 2px; }

.footer {
  background: #2980b9;
  bottom: 0px;
  text-align: center;
  border: none;
  border-bottom: none;
  border-top: 2px solid #20638f; }
  .footer .nav {
    margin-bottom: 20px;
    padding-bottom: 20px; }
  .footer .nav > li > a {
    padding: 10px;
    margin: 5px;
    position: relative;
    display: inline; }
    .footer .nav > li > a:hover {
      background-color: none;
      border-radius: 6px;
      color: #2980b9; }
  .footer .col-md-12 {
    margin-bottom: 30px; }
  .footer h3 {
    color: #FFF;
    padding-bottom: 5px; }
  .footer .social-icons {
    text-align: center; }
    .footer .social-icons li {
      display: inline-block;
      list-style: none;
      padding: 10px; }
      .footer .social-icons li:hover {
        border-radius: 6px;
        background-color: #2980b9; }
    .footer .social-icons a {
      text-decoration: underline;
      margin: 10px; }
      .footer .social-icons a:hover {
        border-radius: 6px;
        background-color: #2980b9; }
  .footer ul {
    margin: 0px auto !important;
    padding: 0px; }
  .footer .fa {
    color: #FFF; }
  .footer a {
    color: #FFF;
    text-decoration: none; }
  .footer p {
    color: #FFF; }
  .footer h2 {
    color: #FFF; }

.footer {
  margin-top: 0px; }

.footer.footer.container {
  background: #2980b9;
  width: 100%; }

.indented {
  margin-left: 10px;
  border-left: 3px solid #379683; }
  .indented .comment-box {
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px; }

.comment-box {
  background-color: #f9f9f9;
  border-radius: 6px;
  border: 1px solid #ECF0F1;
  padding: 10px;
  margin-bottom: 10px; }
  .comment-box h3 {
    color: #000;
    border-bottom: 1px solid #ECF0F1; }
  .comment-box:hover {
    background-color: #ededed; }
  .comment-box ul.links.list-inline {
    border-top: 1px solid #ECF0F1;
    padding-top: 15px; }
  .comment-box .comment__author {
    float: right; }
  .comment-box .data-comment-timestamp {
    color: red; }

.context-event {
  margin: 20px 0px 20px 0px;
  border-top: #ECF0F1 solid 1px;
  text-align: center; }

#cal-day {
  padding: 10px;
  border-radius: 6px;
  border: 1px solid #ECF0F1;
  overflow: hidden;
  display: block;
  background-color: #2980b9;
  border-bottom: #2472a4;
  color: #FFF;
  text-align: center;
  font-size: 2rem; }
  #cal-day .field {
    background-color: none !important;
    border-bottom: none; }
    #cal-day .field:hover {
      background-color: none !important;
      border-bottom: none; }
  #cal-day .month {
    background-color: #2980b9;
    border-bottom: #2472a4;
    color: #FFF;
    width: 120%;
    position: relative;
    right: 10%;
    top: -10px;
    text-align: center; }
    #cal-day .month p {
      left: 10px; }
    #cal-day .month:hover {
      background-color: #2980b9; }
  #cal-day .day {
    color: #2980b9;
    text-align: center;
    font-size: 4rem;
    padding-top: 20px; }

.sidebar {
  color: darken #ECF0F1, 5%;
  font-size: 22px;
  font-size: 1.375rem; }
  .sidebar .field {
    padding: 10px 0px 10px 0px;
    border-bottom: 1px solid #ECF0F1; }
  .sidebar .field:hover {
    background-color: #fbfcfc; }
  .sidebar p {
    margin-left: 10px; }
  .sidebar .field--name-field-tag {
    border-bottom: none; }

.full-profile-pill {
  border-radius: 6px;
  padding: 5px;
  background-color: #eff2f3;
  float: right; }
  .full-profile-pill:hover {
    background-color: #f5f7f7; }

.explode-row {
  margin-bottom: 40px;
  padding-bottom: 40px; }

.member-info {
  padding: 20px;
  font-weight: bold;
  background-color: #FFF;
  display: block;
  min-height: 2em; }

.projects-views-row {
  margin-bottom: 20px;
  padding-bottom: 20px; }

.image-round-300 {
  border-radius: 150px;
  margin: 0px auto;
  text-align: center; }
  .image-round-300 img {
    border-radius: 150px;
    margin: 0px auto; }
  .image-round-300:active {
    -webkit-transform: scale(0.98);
         -o-transform: scale(0.98);
            transform: scale(0.98); }

.image-round-150 {
  border-radius: 75px;
  margin: 0px auto;
  text-align: center; }
  .image-round-150 .field:hover {
    background-color: none; }
  .image-round-150 img {
    border-radius: 75px;
    margin: 0px auto; }
  .image-round-150:active {
    -webkit-transform: scale(0.98);
         -o-transform: scale(0.98);
            transform: scale(0.98); }

.image-round-100 {
  border-radius: 50px;
  margin: 0px auto;
  text-align: center; }
  .image-round-100 .field:hover {
    background-color: none; }
  .image-round-100 img {
    border-radius: 75px;
    margin: 0px auto; }
  .image-round-100:active {
    -webkit-transform: scale(0.98);
         -o-transform: scale(0.98);
            transform: scale(0.98); }

.chu-row {
  text-align: center; }

.horz-row {
  border-bottom: 1px solid #ECF0F1;
  padding: 5% 0 5% 0;
  margin-top: 1%; }
  .horz-row .info-bar {
    background-color: #ECF0F1;
    border-radius: 6px;
    padding: 6px; }
  .horz-row .date-stamp {
    font-size: 45px;
    font-size: 2.8125rem;
    padding-top: 20px !important; }
  .horz-row .title {
    font-size: 3rem;
    padding-bottom: 10px; }
    .horz-row .title a:link {
      color: #2980b9; }
  .horz-row a:link {
    color: #2980b9; }
  .horz-row .news-thumb img {
    padding: 0px;
    border-radius: 16px; }
    .horz-row .news-thumb img:hover {
      padding: 1px; }
    .horz-row .news-thumb img:active {
      -webkit-transform: scale(0.98);
           -o-transform: scale(0.98);
              transform: scale(0.98); }
  .horz-row .fatfont {
    font-size: 38px;
    font-size: 2.375rem;
    color: #495d62; }

.news-thumb img {
  padding: 0px;
  border-radius: 16px; }
  .news-thumb img:hover {
    padding: 1px; }

.rounded-corner img {
  padding: 0px;
  border-radius: 16px; }

.news-thumb-front img {
  padding: 0px;
  border-radius: 16px;
  width: 75%;
  height: auto; }
  .news-thumb-front img:hover {
    background-color: #2980b9; }

.vid-thumb img {
  padding: 0px;
  border-radius: 6px;
  overflow: hidden; }
  .vid-thumb img:hover {
    background-color: #FFF;
    cursor: pointer; }
  .vid-thumb img:active {
    -webkit-transform: scale(0.98);
         -o-transform: scale(0.98);
            transform: scale(0.98); }

.horz-row-sm {
  border-bottom: 1px solid #ECF0F1;
  padding: 1% 0 1% 0;
  clear: both;
  display: block;
  margin-bottom: 10px; }
  .horz-row-sm:hover {
    background-color: white; }
  .horz-row-sm h3 {
    border-bottom: none !important;
    padding: 0px !important; }

.grid {
  width: 100%;
  margin: 4%;
  padding: 20px;
  background-color: none; }
  .grid:hover {
    border-radius: 6px;
    background-color: #f8f9fa; }
  .grid .grid-image .img-responsive {
    width: 100%;
    border-radius: 6px; }
  .grid .grid-info {
    height: 100%;
    padding: 10px; }
  .grid .grid-title {
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 500;
    color: #636363; }
  .grid .grid-tag {
    width: 100%;
    display: block;
    color: #2980b9;
    border-top: 1px solid #ECF0F1;
    margin-top: 5px; }
  .grid a:hover {
    text-decoration: none; }
  .grid a:visited, .grid a:link {
    color: #2980b9; }

.member-grid {
  padding: 10px;
  text-align: center;
  margin-bottom: 2rem;
  min-height: 350px; }
  .member-grid:hover {
    background-color: #f8f9fa; }
  .member-grid .mem-title {
    font-size: 1.1em; }
  .member-grid .mem-info {
    font-size: .9em;
    color: #536b71; }
  .member-grid img {
    max-width: 200px;
    height: auto;
    padding: 10px; }

.grid-clean {
  width: 100%;
  margin: 2%;
  overflow: hidden;
  background-color: none;
  min-height: 280px;
  padding-top: 10px;
  border-radius: 6px;
  vertical-align: middle; }
  .grid-clean:hover {
    background-color: #f8f9fa; }
  .grid-clean .grid-info {
    padding: 10px;
    top: 5%;
    margin: 0px auto;
    text-align: center;
    min-height: 70px;
    padding: 0 5% 0 5%; }
  .grid-clean .grid-title {
    font-size: 34px;
    font-size: 2.125rem;
    overflow: hidden;
    width: 100%; }
    .grid-clean .grid-title a {
      color: #495d62 !important; }
  .grid-clean .grid-email {
    font-size: 20px;
    font-size: 1.25rem;
    text-transform: uppercase;
    color: #77939a !important; }
  .grid-clean .grid-tag {
    width: 100%;
    display: block;
    color: #2980b9;
    border-top: 1px solid #ECF0F1;
    margin-top: 5px; }
  .grid-clean a:hover {
    text-decoration: none; }
  .grid-clean a:visited, .grid-clean a:link {
    color: #2980b9; }

.view-content h3 {
  width: 100%;
  display: block;
  font-size: 60px;
  font-size: 3.75rem;
  border-bottom: 1px solid #ECF0F1;
  float: left;
  margin: 20px 0 20px 0;
  font-weight: 300;
  color: #686868; }

.committee {
  font-size: 26px;
  font-size: 1.625rem; }

.view-content h3 {
  padding: 15px; }

.highlighted-interior .slide-credit {
  position: absolute;
  right: 5px;
  top: 150px;
  font-style: italic;
  font-size: .95em;
  color: #fff; }

.highlighted-interior img.img-responsive {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  max-height: 202px; }

.highlighted {
  margin-right: auto;
  margin-left: auto; }
  .highlighted img.img-responsive {
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    max-height: 350px; }

.owl-pagination {
  position: relative;
  top: -50px; }

.chimp .campaign {
  border-bottom: 1px solid #ECF0F1;
  padding: 25px 10px 25px 10px;
  min-height: 100px;
  overflow: hidden; }
  .chimp .campaign:last-child {
    border-bottom: none; }
  .chimp .campaign:hover {
    background-color: #fbfcfc;
    border-radius: 6px; }

.horz-row-front {
  border-bottom: 1px solid #ECF0F1;
  padding: 25px 10px 25px 10px;
  min-height: 100px;
  overflow: hidden; }
  .horz-row-front:last-child {
    border-bottom: none; }
  .horz-row-front:hover {
    background-color: #f5f7f7;
    border-radius: 6px; }
  .horz-row-front .title {
    font-weight: 300;
    font-size: 1.5em;
    clear: right; }

.tag ul, .tag {
  list-style: none;
  margin-top: 5px;
  margin-bottom: 5px;
  margin-left: 0px;
  padding-left: 0px; }
  .tag ul li, .tag ul .field--item, .tag li, .tag .field--item {
    border: 1px solid #474747;
    color: #474747;
    padding: 5px;
    font-size: .8em;
    border-radius: 12px;
    padding-right: 5px;
    float: left;
    margin-right: 5px; }

.label {
  border: 1px solid #474747;
  color: #474747;
  padding: 5px;
  margin-top: 5px;
  margin-bottom: 5px;
  font-size: .9em;
  border-radius: 12px; }

.front-block {
  margin-top: 10px;
  padding-bottom: 10px; }
  .front-block h2 {
    text-align: left;
    font-weight: 250;
    font-size: 40px;
    font-size: 2.5rem; }
  .front-block .date-stamp {
    font-size: .9em;
    color: #474747;
    text-transform: uppercase; }

.front-block-right {
  margin-top: 10px;
  padding-bottom: 10px; }
  .front-block-right a {
    color: #2980b9; }
  .front-block-right .label {
    background-color: #379683;
    color: #FFF; }

a.btn.btn-default {
  color: #FFF !important;
  background-color: #2980b9;
  border: none;
  padding: 10px; }
  a.btn.btn-default a:link {
    padding: 10px;
    color: #FFF !important; }
  a.btn.btn-default:hover {
    background-color: #409ad5; }

a.btn-primary {
  background-color: #ceb87c !important;
  border: none;
  -webkit-transition: all .4s ease-in-out;
  -o-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out; }
  a.btn-primary:hover {
    background-color: #a68a3e !important;
    top: -1px !important; }

a.btn.btn-primary.pull-right {
  color: #FFF; }

a.btn.btn-primary {
  color: #FFF; }

.slide-responsive {
  width: 100%;
  height: auto; }

.partner-img {
  padding: 10px; }
  .partner-img img {
    height: auto;
    max-width: 150px; }
  .partner-img .views-field-title {
    padding-top: 15px; }
  .partner-img:hover {
    background-color: #ECF0F1; }

.event-block {
  overflow: hidden;
  width: 100%;
  height: auto; }
  .event-block img {
    width: 100%;
    height: auto; }
  .event-block .event-block-overlay {
    position: relative;
    top: -50px;
    background-color: #2980b9;
    height: 50px; }

.flex-container {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-content: center;
      -ms-flex-line-pack: center;
          align-content: center;
  -webkit-justify-content: space-around;
      -ms-flex-pack: distribute;
          justify-content: space-around; }

.card {
  border-radius: 6px;
  background-color: #2980b9;
  overflow: hidden;
  text-align: center;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  color: #FFF;
  margin-top: 3%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  .card a {
    color: #FFF; }
  .card .card-img-top {
    height: 200px;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover; }
    .card .card-img-top img {
      width: 100%; }
  .card .card-icon {
    text-align: center;
    font-size: 2em;
    color: #2980b9;
    border-radius: 75px;
    border: 1px solid #2980b9;
    background-color: #FFF;
    width: 75px;
    height: 75px;
    margin: 0px auto;
    margin-top: 20px;
    margin-bottom: 10px;
    -webkit-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    -webkit-align-self: center;
        -ms-flex-item-align: center;
            align-self: center;
    top: 150px;
    position: absolute; }
    .card .card-icon .fontawesome-icon {
      padding-top: 15px; }
  .card .card-block {
    padding: 10px;
    padding-top: 40px;
    min-height: 200px; }
  .card .card-title {
    color: #FFF;
    font-size: 2.5em;
    font-weight: bold; }
  .card .card-text p {
    color: #FFF;
    padding-top: 10px; }
  .card .card-action {
    border-top: 1px solid #2472a4;
    padding-top: 5px;
    margin-top: 5px;
    background-color: #20638f;
    -webkit-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    min-height: 50px;
    padding-top: 5px;
    display: block;
    width: 100%; }
    .card .card-action a {
      display: block;
      margin-top: 5px;
      font-size: 1.5em;
      font-weight: bold;
      -webkit-align-self: center;
          -ms-flex-item-align: center;
              align-self: center; }
    .card .card-action:hover {
      background-color: #164666; }

.category-block {
  margin: 0px auto;
  text-align: center;
  overflow: hidden !important; }
  .category-block .cat-img-bg {
    position: absolute; }
  .category-block .cat-icon {
    text-align: center;
    font-size: 2em;
    color: #2980b9;
    border-radius: 75px;
    border: 1px solid #2980b9;
    background-color: #FFF;
    width: 75px;
    height: 75px;
    margin: 0px auto;
    margin-top: 20px;
    margin-bottom: 10px;
    -webkit-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out; }
  .category-block .fontawesome-icon {
    padding-top: 5px; }
  .category-block .category-block-text {
    padding: 5px;
    border: 1px solid #2980b9;
    border-radius: 6px;
    background-color: #379683;
    padding: 10px;
    margin-top: 30px;
    color: #fff;
    min-height: 200px;
    overflow: hidden; }
    .category-block .category-block-text a {
      color: #FFF;
      font-size: 1.5em; }
    .category-block .category-block-text:hover {
      background-color: #2980b9;
      color: #FFF; }
      .category-block .category-block-text:hover h3 {
        color: #FFF; }
      .category-block .category-block-text:hover .fontawesome-icon {
        -webkit-transition: all .5s ease-in-out;
        -o-transition: all .5s ease-in-out;
        transition: all .5s ease-in-out;
        -webkit-transform: scale(1.1, 1.1);
             -o-transform: scale(1.1, 1.1);
                transform: scale(1.1, 1.1); }
      .category-block .category-block-text:hover .cat-icon {
        -webkit-transition: all .5s ease-in-out;
        -o-transition: all .5s ease-in-out;
        transition: all .5s ease-in-out;
        -webkit-box-shadow: 0px 2px 18px 0px rgba(0, 0, 0, 0.75);
        box-shadow: 0px 2px 18px 0px rgba(0, 0, 0, 0.75); }
  .category-block h3 {
    border: none;
    border-bottom: none;
    margin-bottom: 0px;
    margin-top: 0px;
    color: #FFF; }
    .category-block h3 a {
      color: #FFF;
      border-bottom: none;
      font-weight: 500; }

.front-news {
  background-color: #379683;
  margin: 10px 0px 20px 0px;
  height: 400px;
  color: #FFF;
  padding: 20px 20px 20px 20px;
  overflow: hidden; }
  .front-news p {
    color: #FFF;
    padding-top: 5px; }
  .front-news img {
    padding-top: 30px;
    width: 100%;
    height: auto; }
  .front-news h2 {
    font-size: 72px;
    font-size: 4.5rem;
    padding-top: 30px; }

@media only screen and (max-width: 992px) {
  .front-news {
    text-align: center;
    height: 600px; }
    .front-news img {
      margin: 0px auto;
      width: 80%; }
    .front-news h2 {
      padding-top: 0px; } }

.event-type {
  font-size: 1.25rem;
  color: #6ab0de; }

ul.sponsor-list {
  text-align: center; }
  ul.sponsor-list li {
    list-style: none;
    display: inline-block; }
    ul.sponsor-list li:hover {
      border-radius: 6px;
      background-color: #2980b9; }
  ul.sponsor-list img {
    margin: 10px;
    text-align: center; }

::-webkit-input-placeholder {
  color: red; }

:-moz-placeholder {
  /* Firefox 18- */
  color: red; }

::-moz-placeholder {
  /* Firefox 19+ */
  color: red; }

:-ms-input-placeholder {
  color: red; }

h2 {
  font-weight: 300; }

@media screen and (max-width: 995px) {
  .toggle-search-close .glyphicon {
    float: right;
    cursor: pointer;
    top: -60px; } }

#toggle-search {
  text-align: center; }
  #toggle-search .glyphicon {
    padding: 15px;
    color: #2980b9;
    cursor: pointer;
    text-align: center; }

#matt-search {
  background-color: #2e8ece;
  -webkit-box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 0px 1px 10px 0px rgba(0, 0, 0, 0.1);
  position: absolute;
  left: 0px;
  width: 100%;
  height: 100px;
  top: -190px;
  z-index: 99999;
  margin: 0px;
  padding-top: 10px;
  -webkit-transition: all 600ms;
  -o-transition: all 600ms;
  transition: all 600ms; }
  #matt-search .glyphicon {
    color: #000; }
  #matt-search .form-search.form-control {
    width: 100%;
    width: 600px;
    background-color: #fff;
    color: #2980b9;
    overflow-x: hidden; }
  #matt-search .placeholder {
    color: #2980b9; }
  #matt-search span.input-group-btn {
    display: none; }

#edit-keys--2 {
  background: none;
  border-radius: 0px;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  height: 65px;
  font-size: 4rem;
  font-weight: 200;
  overflow: visible;
  width: 100%; }

div.input-group {
  width: 100%; }

.toggle-search-close .glyphicon {
  float: right;
  margin-top: 8px;
  cursor: pointer; }

.toggle-search-close .glyphicon span:hover {
  color: #2980b9;
  cursor: pointer; }

.dropdown-submenu {
  position: relative; }

.dropdown-submenu > .dropdown-menu {
  top: 0;
  left: 100%;
  padding: 0px; }

.dropdown-submenu:hover > .dropdown-menu {
  display: block; }

.dropdown-submenu > a:after {
  content: "\e080";
  display: inline-block;
  font-family: 'Glyphicons Halflings';
  font-style: normal;
  font-size: 10px;
  float: right;
  margin-top: 5px; }

.dropdown-submenu:hover > a:after {
  border-left-color: #fff; }

.dropdown-submenu.pull-left {
  float: none; }

.dropdown-submenu.pull-left > .dropdown-menu {
  left: -100%;
  margin-left: 10px;
  border-radius: 6px 0 6px 6px; }

.navbar-nav li:last-child > .dropdown-menu {
  left: auto;
  right: 0px; }

.navbar-nav li:last-child > .dropdown-menu .dropdown-submenu > a:after {
  float: left;
  content: "\e079"; }

.navbar-nav li:last-child > .dropdown-menu .dropdown-submenu > .dropdown-menu {
  left: -100%; }

#player {
  border-radius: 6px; }

.media-grid {
  display: block;
  margin: 10px 0 10px 0; }

#off-white {
  background-color: #efefef;
  color: #474747; }

.nl-card {
  overflow: hidden; }
  .nl-card h2 {
    padding-left: 10px; }
  .nl-card .stream-row {
    overflow: hidden;
    border-radius: 6px;
    border: 1px solid #ECF0F1;
    padding-bottom: 10px;
    margin: 10px;
    vertical-align: middle;
    background-color: #FFF;
    text-align: center; }
  .nl-card .stream-info {
    padding: 5px; }
  .nl-card .stream-image {
    overflow: hidden; }
    .nl-card .stream-image img {
      position: static;
      -webkit-transform: scale(1.25);
           -o-transform: scale(1.25);
              transform: scale(1.25);
      overflow: hidden;
      z-index: -1; }
  .nl-card .stream-title {
    font-size: 2rem; }

#publications-list {
  width: 100%;
  margin-bottom: 20px; }
  #publications-list ul {
    padding: 0;
    list-style-type: none; }
  #publications-list li {
    border-bottom: 1px solid #ECF0F1;
    padding: 10px;
    min-height: 75px;
    overflow-x: hidden;
    width: 100%;
    padding-left: 10px;
    padding-right: 10px; }
  #publications-list li:nth-child(even) {
    background-color: white; }
  #publications-list::before {
    display: none; }
  #publications-list::after {
    display: none; }
  #publications-list a {
    font-weight: bold;
    text-decoration: underline; }
  #publications-list .panel-body::before {
    display: none; }
  #publications-list .panel-body::after {
    display: none; }

#publications-list li:hover {
  background-color: white; }

.resource-card {
  overflow: hidden;
  border-radius: 6px;
  min-height: 200px;
  padding: 20px;
  margin: 10px;
  vertical-align: middle;
  -webkit-box-shadow: -1px 2px 10px 2px #d4d4d4;
  box-shadow: -1px 2px 10px 2px #d4d4d4;
  background-color: #FFF; }
  .resource-card .tags {
    margin-top: 5px;
    padding-left: 0px; }
    .resource-card .tags ul {
      padding-left: 0em;
      list-style: none; }
      .resource-card .tags ul li {
        font-size: .75em;
        border: 1px solid #2980b9;
        color: #2980b9;
        padding: 5px;
        border-radius: 6px;
        width: -webkit-fit-content;
        float: left;
        margin-right: 5px; }

/* WEBINAR CONTAINER */
.webinar-container {
  border-bottom: 1px solid #ECF0F1;
  padding: 2% 0 2% 0; }
  .webinar-container .webinar-body {
    padding-right: 10%; }

/* ACCORDIONS 





#accordion .panel-heading { padding: 0;}
#accordion .panel-title > a {
	display: block;
	padding: 0.4em 0.6em;
    outline: none;
    font-weight:bold;
    text-decoration: none;
}

#views-bootstrap-accordion .panel-title > a.accordion-toggle::after, #views-bootstrap-accordion a[data-toggle="collapse"]::after  {
    content:"\e113";
    float: right;
    font-family: 'Glyphicons Halflings';
	margin-right :1em;
	
	&:active {
		background-color: $color-gray;
		padding: 10px;
		border-radius: 6px;
	}
	
}

#views-bootstrap-accordion panel-title > a.accordion-toggle.collapsed::after, #views-bootstrap-accordion a.collapsed[data-toggle="collapse"]::after  {
    content:"\e114";
}


#accordion .panel-title > a.accordion-toggle::after, #accordion a[data-toggle="collapse"]::after  {
    content:"\e113";
    float: right;
    font-family: 'Glyphicons Halflings';
	margin-right :1em;
	
	&:active {
		background-color: $color-gray;
		padding: 10px;
		border-radius: 6px;
	}
	
}
#accordion .panel-title > a.accordion-toggle.collapsed::after, #accordion a.collapsed[data-toggle="collapse"]::after  {
    content:"\e114";
      -moz-transform:rotate(180deg)!important;
    -webkit-transform:rotate(180deg)!important;
    transform:rotate(180deg)!important;
}

#accordion {
	padding: 10px 5px 10px 5px;
	border-bottom: 1px solid $color-gray;
	
	div.accordion-heading {
		font-size: 1.5rem;
	}
	
	.accordion-inner {
		padding: 10px 0px;
	}
	
}


.panel-group {
	
	border-color: #FFF !important;
	transition: all .4s transform ease-in-out;
	padding: 10px 5px 10px 8px;
	&:hover {
		//background-color: #f4f4f4;
	}
	
	
	.panel-heading {
		background-color: #FFF !important;
		
	}
	
	
	.panel {
		border-radius: none !important;	
	}
	
	.panel-default{
		border-color: #FFF !important;
	}
	
	h4.panel-title {
		font-size: 1.5rem;
		font-weight: 250;
		border-color: #FFF !important;
		border-bottom: none !important;
		padding: 2% 0% 2% 0;
	}
	
}

.accordion-toggle {
	transition: all .4s transform ease-in-out;
	 -moz-transition: all 2s linear;
    -webkit-transition: all 2s linear;
    transition: all .4s transform ease-in-out;

}

.accordion-toggle:after {
    font-family: 'FontAwesome';
    content: "\f063";    
    float: right;
    font-weight: 200;
 }

.accordion-opened .accordion-toggle {
	transition: all .4s transform ease-in-out;
}

.accordion-opened .accordion-toggle:after {    
    content: "\f063" !important;   
    font-weight: 200;
    -moz-transform:rotate(180deg)!important;
    -webkit-transform:rotate(180deg)!important;
    transform:rotate(180deg)!important;
}

*/
.doc-row {
  border: 1px solid #ECF0F1;
  padding: 20px;
  margin-top: 30px;
  border-radius: 6px;
  text-align: center;
  width: 400px; }
  .doc-row a {
    color: #474747;
    text-decoration: none; }
  .doc-row .h3 a {
    text-decoration: none; }
  .doc-row .fa-file {
    font-size: 2.5em;
    margin-top: 10px; }

.photo-gallery
.img-responsive {
  max-width: 250px;
  float: left;
  padding: 20px; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJzdHlsZS5jc3MiLCJfbWVudS13aGl0ZS5zY3NzIiwiX2FuaW1hdGUuc2NzcyIsIl9wYXJhZ3JhcGhzLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBaUJBOzs7Ozs7Q0NYQztBQ0lEO0VBQ0Msc0JBQXNCO0VBQ3RCLGFBQWE7RUFDYixXQUFXLEVBQUE7O0FBR1o7RUFDQyxnQkFBZ0IsRUFBQTs7QUFHakI7RUFDQyxnQkFBZ0I7RUFDaEIsbUJBQW1CLEVBQUE7O0FBS3BCO0VBQ0MsY0Z6QnNCLEVBQUE7O0FFNEJ2QjtFQUNDLHNCQUFzQjtFQUN0QixjRjVCbUIsRUFBQTs7QUU0Q3BCO0VBSUMsc0JBQXNCO0VBRXRCLDhDQUEwRDtFQUUzRCxzQ0FBa0QsRUFBQTtFQVJsRDtJQWlCRSx5QkFBZ0MsRUFBQTtFQWpCbEM7SUF1QkMsY0ZyRXNCO0lFc0V0QixpQkFBaUI7SUFDakIsZUFBZSxFQUFBO0lBekJoQjtNQThCRyxzQkFBc0I7TUFDdEIsY0FBaUMsRUFBQTtJQS9CcEM7TUFtQ0csc0JBQXNCO01BQ3RCLGNBQWtDLEVBQUE7RUFwQ3JDO0lBMENFLHlCQUE4QyxFQUFBO0VBMUNoRDtJQWlERSxzQkFBc0I7SUFDdEIsY0ZoR3FCLEVBQUE7RUU4Q3ZCO0lBc0RFLHNCQUFzQixFQUFBO0VBdER4QjtJQTJERSxnQkFBZ0I7SUFDaEIsc0JBQXNCO0lBQ3JCLFdBQVc7SUFDWCxZQUFZO0lBQ1gsOENBQTBEO0lBRTlELHNDQUFrRCxFQUFBO0lBakVsRDtNQXFFRyx5QkFBOEM7TUFDOUMsV0FBVyxFQUFBO0VBdEVkO0lBNEVFLGdCQUFnQjtJQUNoQixpQkFBaUIsRUFBQTs7QUFTbkI7RUFFQyxzQkFBc0I7RUFDdEIsY0Z2SXNCLEVBQUE7O0FFK0l2QjtFQUVDLHNCQUFzQjtFQUN0QixjRmxKc0IsRUFBQTs7QUV3SnZCO0VBQ0csc0JBQXNCO0VBQ3RCLGVBQWMsRUFBQTs7QUMzSmpCOzs7Ozs7RUZpRkU7QUV6RUY7RUFDRSw4QkFBc0I7T0FBdEIseUJBQXNCO1VBQXRCLHNCQUFzQjtFQUN0QixpQ0FBeUI7T0FBekIsNEJBQXlCO1VBQXpCLHlCQUF5QixFQUFBOztBQUczQjtFQUNFLDJDQUFtQztPQUFuQyxzQ0FBbUM7VUFBbkMsbUNBQW1DLEVBQUE7O0FBR3JDO0VBQ0UsOEJBQXNCO09BQXRCLHlCQUFzQjtVQUF0QixzQkFBc0IsRUFBQTs7QUFHeEI7Ozs7RUFJRSxnQ0FBd0I7T0FBeEIsMkJBQXdCO1VBQXhCLHdCQUF3QixFQUFBOztBQUcxQjtFQUNFO0lBQ0Usc0VBQW1FO1lBQW5FLDhEQUFtRTtJQUNuRSx1Q0FBNkI7WUFBN0IsK0JBQTZCLEVBQUE7RUFHL0I7SUFDRSx5RUFBbUU7WUFBbkUsaUVBQW1FO0lBQ25FLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLHlFQUFtRTtZQUFuRSxpRUFBbUU7SUFDbkUsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsMENBQWdDO1lBQWhDLGtDQUFnQyxFQUFBLEVBQUE7O0FBakJwQztFQUNFO0lBQ0UsaUVBQW1FO09BQW5FLDhEQUFtRTtJQUNuRSwrQkFBNkIsRUFBQTtFQUcvQjtJQUNFLG9FQUFtRTtPQUFuRSxpRUFBbUU7SUFDbkUsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxvRUFBbUU7T0FBbkUsaUVBQW1FO0lBQ25FLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0Usa0NBQWdDLEVBQUEsRUFBQTs7QUFqQnBDO0VBQ0U7SUFDRSxzRUFBbUU7U0FBbkUsaUVBQW1FO1lBQW5FLDhEQUFtRTtJQUNuRSx1Q0FBNkI7WUFBN0IsK0JBQTZCLEVBQUE7RUFHL0I7SUFDRSx5RUFBbUU7U0FBbkUsb0VBQW1FO1lBQW5FLGlFQUFtRTtJQUNuRSwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSx5RUFBbUU7U0FBbkUsb0VBQW1FO1lBQW5FLGlFQUFtRTtJQUNuRSwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSwwQ0FBZ0M7WUFBaEMsa0NBQWdDLEVBQUEsRUFBQTs7QUFJcEM7RUFDRSw4QkFBc0I7T0FBdEIseUJBQXNCO1VBQXRCLHNCQUFzQjtFQUN0Qix1Q0FBK0I7T0FBL0Isa0NBQStCO1VBQS9CLCtCQUErQixFQUFBOztBQUdqQztFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFOZDtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFOZDtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLDZCQUFxQjtPQUFyQix3QkFBcUI7VUFBckIscUJBQXFCLEVBQUE7O0FBR3ZCLDZFQUFBO0FBRUE7RUFDRTtJQUNFLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQTtFQUc3QjtJQUNFLDRDQUFvQztZQUFwQyxvQ0FBb0MsRUFBQTtFQUd0QztJQUNFLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQSxFQUFBO0FBVi9CO0VBQ0U7SUFDRSwyQkFBMkIsRUFBQTtFQUc3QjtJQUNFLG9DQUFvQyxFQUFBO0VBR3RDO0lBQ0UsMkJBQTJCLEVBQUEsRUFBQTtBQVYvQjtFQUNFO0lBQ0UsbUNBQTJCO1lBQTNCLDJCQUEyQixFQUFBO0VBRzdCO0lBQ0UsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBO0VBR3RDO0lBQ0UsbUNBQTJCO1lBQTNCLDJCQUEyQixFQUFBLEVBQUE7O0FBSS9CO0VBQ0UsNkJBQXFCO09BQXJCLHdCQUFxQjtVQUFyQixxQkFBcUIsRUFBQTs7QUFHdkI7RUFDRTtJQUNFLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQTtFQUc3QjtJQUNFLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQTtFQUduQztJQUNFLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQTtFQUduQztJQUNFLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQTtFQUduQztJQUNFLHlDQUFnQztZQUFoQyxpQ0FBZ0MsRUFBQTtFQUdsQztJQUNFLHlDQUFnQztZQUFoQyxpQ0FBZ0MsRUFBQTtFQUdsQztJQUNFLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQSxFQUFBOztBQTFCL0I7RUFDRTtJQUNFLDJCQUEyQixFQUFBO0VBRzdCO0lBQ0UsaUNBQWlDLEVBQUE7RUFHbkM7SUFDRSxpQ0FBaUMsRUFBQTtFQUduQztJQUNFLGlDQUFpQyxFQUFBO0VBR25DO0lBQ0UsaUNBQWdDLEVBQUE7RUFHbEM7SUFDRSxpQ0FBZ0MsRUFBQTtFQUdsQztJQUNFLDJCQUEyQixFQUFBLEVBQUE7O0FBMUIvQjtFQUNFO0lBQ0UsbUNBQTJCO1lBQTNCLDJCQUEyQixFQUFBO0VBRzdCO0lBQ0UseUNBQWlDO1lBQWpDLGlDQUFpQyxFQUFBO0VBR25DO0lBQ0UseUNBQWlDO1lBQWpDLGlDQUFpQyxFQUFBO0VBR25DO0lBQ0UseUNBQWlDO1lBQWpDLGlDQUFpQyxFQUFBO0VBR25DO0lBQ0UseUNBQWdDO1lBQWhDLGlDQUFnQyxFQUFBO0VBR2xDO0lBQ0UseUNBQWdDO1lBQWhDLGlDQUFnQyxFQUFBO0VBR2xDO0lBQ0UsbUNBQTJCO1lBQTNCLDJCQUEyQixFQUFBLEVBQUE7O0FBSS9CO0VBQ0Usa0NBQTBCO09BQTFCLDZCQUEwQjtVQUExQiwwQkFBMEIsRUFBQTs7QUFHNUI7RUFDRTtJQUNFLHVDQUErQjtZQUEvQiwrQkFBK0IsRUFBQTtFQUdqQztJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQSxFQUFBOztBQVZ0QztFQUNFO0lBQ0UsK0JBQStCLEVBQUE7RUFHakM7SUFDRSxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLGtDQUFrQyxFQUFBLEVBQUE7O0FBVnRDO0VBQ0U7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUE7RUFHakM7SUFDRSwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUEsRUFBQTs7QUFJdEM7RUFDRSw2QkFBcUI7T0FBckIsd0JBQXFCO1VBQXJCLHFCQUFxQixFQUFBOztBQUd2QjtFQUNFO0lBQ0UsZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzFCO0lBQ0Usa0RBQTBDO1lBQTFDLDBDQUEwQyxFQUFBO0VBRzVDO0lBQ0UsZ0RBQXdDO1lBQXhDLHdDQUF3QyxFQUFBO0VBRzFDO0lBQ0Usa0RBQTBDO1lBQTFDLDBDQUEwQyxFQUFBO0VBRzVDO0lBQ0UsZ0RBQXdDO1lBQXhDLHdDQUF3QyxFQUFBO0VBRzFDO0lBQ0UsZ0NBQXdCO1lBQXhCLHdCQUF3QixFQUFBLEVBQUE7O0FBdEI1QjtFQUNFO0lBQ0UsMkJBQXdCO09BQXhCLHdCQUF3QixFQUFBO0VBRzFCO0lBQ0UsMENBQTBDLEVBQUE7RUFHNUM7SUFDRSx3Q0FBd0MsRUFBQTtFQUcxQztJQUNFLDBDQUEwQyxFQUFBO0VBRzVDO0lBQ0Usd0NBQXdDLEVBQUE7RUFHMUM7SUFDRSwyQkFBd0I7T0FBeEIsd0JBQXdCLEVBQUEsRUFBQTs7QUF0QjVCO0VBQ0U7SUFDRSxnQ0FBd0I7U0FBeEIsMkJBQXdCO1lBQXhCLHdCQUF3QixFQUFBO0VBRzFCO0lBQ0Usa0RBQTBDO1lBQTFDLDBDQUEwQyxFQUFBO0VBRzVDO0lBQ0UsZ0RBQXdDO1lBQXhDLHdDQUF3QyxFQUFBO0VBRzFDO0lBQ0Usa0RBQTBDO1lBQTFDLDBDQUEwQyxFQUFBO0VBRzVDO0lBQ0UsZ0RBQXdDO1lBQXhDLHdDQUF3QyxFQUFBO0VBRzFDO0lBQ0UsZ0NBQXdCO1NBQXhCLDJCQUF3QjtZQUF4Qix3QkFBd0IsRUFBQSxFQUFBOztBQUk1QjtFQUNFLDhDQUFzQztPQUF0Qyx5Q0FBc0M7VUFBdEMsc0NBQXNDO0VBQ3RDLGlDQUF5QjtPQUF6Qiw0QkFBeUI7VUFBekIseUJBQXlCLEVBQUE7O0FBRzNCO0VBQ0U7SUFDRSwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSw0Q0FBb0M7WUFBcEMsb0NBQW9DLEVBQUE7RUFHdEM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUEsRUFBQTs7QUFsQnRDO0VBQ0U7SUFDRSxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLG9DQUFvQyxFQUFBO0VBR3RDO0lBQ0Usa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLGtDQUFrQyxFQUFBLEVBQUE7O0FBbEJ0QztFQUNFO0lBQ0UsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBO0VBR3RDO0lBQ0UsMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0UsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBLEVBQUE7O0FBSXRDO0VBQ0Usb0NBQTRCO09BQTVCLCtCQUE0QjtVQUE1Qiw0QkFBNEI7RUFDNUIsNkJBQXFCO09BQXJCLHdCQUFxQjtVQUFyQixxQkFBcUIsRUFBQTs7QUFHdkI7RUFDRTtJQUNFLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQTtFQUc3QjtJQUNFLGtFQUF1RDtZQUF2RCwwREFBdUQsRUFBQTtFQUd6RDtJQUNFLGlFQUF5RDtZQUF6RCx5REFBeUQsRUFBQTtFQUczRDtJQUNFLGtFQUEwRDtZQUExRCwwREFBMEQsRUFBQTtFQUc1RDtJQUNFLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQSxFQUFBOztBQWxCL0I7RUFDRTtJQUNFLDJCQUEyQixFQUFBO0VBRzdCO0lBQ0UsMERBQXVELEVBQUE7RUFHekQ7SUFDRSx5REFBeUQsRUFBQTtFQUczRDtJQUNFLDBEQUEwRCxFQUFBO0VBRzVEO0lBQ0UsMkJBQTJCLEVBQUEsRUFBQTs7QUFsQi9CO0VBQ0U7SUFDRSxtQ0FBMkI7WUFBM0IsMkJBQTJCLEVBQUE7RUFHN0I7SUFDRSxrRUFBdUQ7WUFBdkQsMERBQXVELEVBQUE7RUFHekQ7SUFDRSxpRUFBeUQ7WUFBekQseURBQXlELEVBQUE7RUFHM0Q7SUFDRSxrRUFBMEQ7WUFBMUQsMERBQTBELEVBQUE7RUFHNUQ7SUFDRSxtQ0FBMkI7WUFBM0IsMkJBQTJCLEVBQUEsRUFBQTs7QUFJL0I7RUFDRSw0QkFBb0I7T0FBcEIsdUJBQW9CO1VBQXBCLG9CQUFvQixFQUFBOztBQUd0Qiw2RUFBQTtBQUVBO0VBQ0U7SUFDRSx1QkFBZTtZQUFmLGVBQWUsRUFBQTtFQUdqQjtJQUNFLG1FQUEyRDtZQUEzRCwyREFBMkQsRUFBQTtFQUc3RDtJQUNFLGlFQUF5RDtZQUF6RCx5REFBeUQsRUFBQTtFQUczRDtJQUNFLG1FQUEyRDtZQUEzRCwyREFBMkQsRUFBQTtFQUc3RDtJQUNFLGlFQUF5RDtZQUF6RCx5REFBeUQsRUFBQTtFQUczRDtJQUNFLGtFQUEwRDtZQUExRCwwREFBMEQsRUFBQTtFQUc1RDtJQUNFLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7QUExQm5CO0VBQ0U7SUFDRSxrQkFBZTtPQUFmLGVBQWUsRUFBQTtFQUdqQjtJQUNFLDJEQUEyRCxFQUFBO0VBRzdEO0lBQ0UseURBQXlELEVBQUE7RUFHM0Q7SUFDRSwyREFBMkQsRUFBQTtFQUc3RDtJQUNFLHlEQUF5RCxFQUFBO0VBRzNEO0lBQ0UsMERBQTBELEVBQUE7RUFHNUQ7SUFDRSxrQkFBZTtPQUFmLGVBQWUsRUFBQSxFQUFBO0FBMUJuQjtFQUNFO0lBQ0UsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQTtFQUdqQjtJQUNFLG1FQUEyRDtZQUEzRCwyREFBMkQsRUFBQTtFQUc3RDtJQUNFLGlFQUF5RDtZQUF6RCx5REFBeUQsRUFBQTtFQUczRDtJQUNFLG1FQUEyRDtZQUEzRCwyREFBMkQsRUFBQTtFQUc3RDtJQUNFLGlFQUF5RDtZQUF6RCx5REFBeUQsRUFBQTtFQUczRDtJQUNFLGtFQUEwRDtZQUExRCwwREFBMEQsRUFBQTtFQUc1RDtJQUNFLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlLEVBQUEsRUFBQTs7QUFJbkI7RUFDRSw4QkFBc0I7T0FBdEIseUJBQXNCO1VBQXRCLHNCQUFzQixFQUFBOztBQUd4QjtFQUNFO0lBQ0UsdUJBQWU7WUFBZixlQUFlLEVBQUE7RUFHakI7SUFDRSxrREFBMEM7WUFBMUMsMENBQTBDLEVBQUE7RUFHNUM7SUFDRSxnREFBd0M7WUFBeEMsd0NBQXdDLEVBQUE7RUFHMUM7SUFDRSxvREFBNEM7WUFBNUMsNENBQTRDLEVBQUE7RUFHOUM7SUFDRSxvREFBNEM7WUFBNUMsNENBQTRDLEVBQUE7RUFHOUM7SUFDRSx3REFBZ0Q7WUFBaEQsZ0RBQWdELEVBQUE7RUFHbEQ7SUFDRSxzREFBZ0Q7WUFBaEQsOENBQWdELEVBQUE7RUFHbEQ7SUFDRSx3REFBb0Q7WUFBcEQsZ0RBQW9ELEVBQUEsRUFBQTs7QUE5QnhEO0VBQ0U7SUFDRSxrQkFBZTtPQUFmLGVBQWUsRUFBQTtFQUdqQjtJQUNFLDZDQUEwQztPQUExQywwQ0FBMEMsRUFBQTtFQUc1QztJQUNFLDJDQUF3QztPQUF4Qyx3Q0FBd0MsRUFBQTtFQUcxQztJQUNFLCtDQUE0QztPQUE1Qyw0Q0FBNEMsRUFBQTtFQUc5QztJQUNFLCtDQUE0QztPQUE1Qyw0Q0FBNEMsRUFBQTtFQUc5QztJQUNFLG1EQUFnRDtPQUFoRCxnREFBZ0QsRUFBQTtFQUdsRDtJQUNFLGlEQUFnRDtPQUFoRCw4Q0FBZ0QsRUFBQTtFQUdsRDtJQUNFLG1EQUFvRDtPQUFwRCxnREFBb0QsRUFBQSxFQUFBOztBQTlCeEQ7RUFDRTtJQUNFLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlLEVBQUE7RUFHakI7SUFDRSxrREFBMEM7U0FBMUMsNkNBQTBDO1lBQTFDLDBDQUEwQyxFQUFBO0VBRzVDO0lBQ0UsZ0RBQXdDO1NBQXhDLDJDQUF3QztZQUF4Qyx3Q0FBd0MsRUFBQTtFQUcxQztJQUNFLG9EQUE0QztTQUE1QywrQ0FBNEM7WUFBNUMsNENBQTRDLEVBQUE7RUFHOUM7SUFDRSxvREFBNEM7U0FBNUMsK0NBQTRDO1lBQTVDLDRDQUE0QyxFQUFBO0VBRzlDO0lBQ0Usd0RBQWdEO1NBQWhELG1EQUFnRDtZQUFoRCxnREFBZ0QsRUFBQTtFQUdsRDtJQUNFLHNEQUFnRDtTQUFoRCxpREFBZ0Q7WUFBaEQsOENBQWdELEVBQUE7RUFHbEQ7SUFDRSx3REFBb0Q7U0FBcEQsbURBQW9EO1lBQXBELGdEQUFvRCxFQUFBLEVBQUE7O0FBSXhEO0VBQ0UsNkJBQXFCO09BQXJCLHdCQUFxQjtVQUFyQixxQkFBcUI7RUFDckIsZ0NBQXdCO09BQXhCLDJCQUF3QjtVQUF4Qix3QkFBd0IsRUFBQTs7QUFHMUI7RUFDRTtJQUNFLHNFQUFtRTtZQUFuRSw4REFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVix5Q0FBOEI7WUFBOUIsaUNBQThCLEVBQUE7RUFHaEM7SUFDRSx5Q0FBaUM7WUFBakMsaUNBQWlDLEVBQUE7RUFHbkM7SUFDRSx5Q0FBOEI7WUFBOUIsaUNBQThCLEVBQUE7RUFHaEM7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBO0VBR3RDO0lBQ0UsNENBQWlDO1lBQWpDLG9DQUFpQyxFQUFBO0VBR25DO0lBQ0UsVUFBVTtJQUNWLG1DQUEyQjtZQUEzQiwyQkFBMkIsRUFBQSxFQUFBOztBQTdCL0I7RUFDRTtJQUNFLGlFQUFtRTtPQUFuRSw4REFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVixpQ0FBOEIsRUFBQTtFQUdoQztJQUNFLGlDQUFpQyxFQUFBO0VBR25DO0lBQ0UsaUNBQThCLEVBQUE7RUFHaEM7SUFDRSxVQUFVO0lBQ1Ysb0NBQW9DLEVBQUE7RUFHdEM7SUFDRSxvQ0FBaUMsRUFBQTtFQUduQztJQUNFLFVBQVU7SUFDViwyQkFBMkIsRUFBQSxFQUFBOztBQTdCL0I7RUFDRTtJQUNFLHNFQUFtRTtTQUFuRSxpRUFBbUU7WUFBbkUsOERBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YseUNBQThCO1lBQTlCLGlDQUE4QixFQUFBO0VBR2hDO0lBQ0UseUNBQWlDO1lBQWpDLGlDQUFpQyxFQUFBO0VBR25DO0lBQ0UseUNBQThCO1lBQTlCLGlDQUE4QixFQUFBO0VBR2hDO0lBQ0UsVUFBVTtJQUNWLDRDQUFvQztZQUFwQyxvQ0FBb0MsRUFBQTtFQUd0QztJQUNFLDRDQUFpQztZQUFqQyxvQ0FBaUMsRUFBQTtFQUduQztJQUNFLFVBQVU7SUFDVixtQ0FBMkI7WUFBM0IsMkJBQTJCLEVBQUEsRUFBQTs7QUFJL0I7RUFDRSxnQ0FBd0I7T0FBeEIsMkJBQXdCO1VBQXhCLHdCQUF3QixFQUFBOztBQUcxQjtFQUNFO0lBQ0Usc0VBQW1FO1lBQW5FLDhEQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLDZDQUFxQztZQUFyQyxxQ0FBcUMsRUFBQTtFQUd2QztJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSx5Q0FBaUM7WUFBakMsaUNBQWlDLEVBQUE7RUFHbkM7SUFDRSx1QkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQXhCbkI7RUFDRTtJQUNFLGlFQUFtRTtPQUFuRSw4REFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVixxQ0FBcUMsRUFBQTtFQUd2QztJQUNFLFVBQVU7SUFDVixrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsaUNBQWlDLEVBQUE7RUFHbkM7SUFDRSxrQkFBZTtPQUFmLGVBQWUsRUFBQSxFQUFBOztBQXhCbkI7RUFDRTtJQUNFLHNFQUFtRTtTQUFuRSxpRUFBbUU7WUFBbkUsOERBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YsNkNBQXFDO1lBQXJDLHFDQUFxQyxFQUFBO0VBR3ZDO0lBQ0UsVUFBVTtJQUNWLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQTtFQUduQztJQUNFLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlLEVBQUEsRUFBQTs7QUFJbkI7RUFDRSxvQ0FBNEI7T0FBNUIsK0JBQTRCO1VBQTVCLDRCQUE0QixFQUFBOztBQUc5QjtFQUNFO0lBQ0Usc0VBQW1FO1lBQW5FLDhEQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLDZDQUFxQztZQUFyQyxxQ0FBcUMsRUFBQTtFQUd2QztJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSx5Q0FBaUM7WUFBakMsaUNBQWlDLEVBQUE7RUFHbkM7SUFDRSx1QkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQXhCbkI7RUFDRTtJQUNFLGlFQUFtRTtPQUFuRSw4REFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVixxQ0FBcUMsRUFBQTtFQUd2QztJQUNFLFVBQVU7SUFDVixrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsaUNBQWlDLEVBQUE7RUFHbkM7SUFDRSxrQkFBZTtPQUFmLGVBQWUsRUFBQSxFQUFBOztBQXhCbkI7RUFDRTtJQUNFLHNFQUFtRTtTQUFuRSxpRUFBbUU7WUFBbkUsOERBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YsNkNBQXFDO1lBQXJDLHFDQUFxQyxFQUFBO0VBR3ZDO0lBQ0UsVUFBVTtJQUNWLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQTtFQUduQztJQUNFLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlLEVBQUEsRUFBQTs7QUFJbkI7RUFDRSxvQ0FBNEI7T0FBNUIsK0JBQTRCO1VBQTVCLDRCQUE0QixFQUFBOztBQUc5QjtFQUNFO0lBQ0Usc0VBQW1FO1lBQW5FLDhEQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLDRDQUFvQztZQUFwQyxvQ0FBb0MsRUFBQTtFQUd0QztJQUNFLFVBQVU7SUFDViwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSx1QkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQXhCbkI7RUFDRTtJQUNFLGlFQUFtRTtPQUFuRSw4REFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVixvQ0FBb0MsRUFBQTtFQUd0QztJQUNFLFVBQVU7SUFDVixtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0Usa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxrQkFBZTtPQUFmLGVBQWUsRUFBQSxFQUFBOztBQXhCbkI7RUFDRTtJQUNFLHNFQUFtRTtTQUFuRSxpRUFBbUU7WUFBbkUsOERBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBO0VBR3RDO0lBQ0UsVUFBVTtJQUNWLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlLEVBQUEsRUFBQTs7QUFJbkI7RUFDRSxxQ0FBNkI7T0FBN0IsZ0NBQTZCO1VBQTdCLDZCQUE2QixFQUFBOztBQUcvQjtFQUNFO0lBQ0Usc0VBQW1FO1lBQW5FLDhEQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLDRDQUFvQztZQUFwQyxvQ0FBb0MsRUFBQTtFQUd0QztJQUNFLFVBQVU7SUFDViwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUEsRUFBQTs7QUF4Qm5DO0VBQ0U7SUFDRSxpRUFBbUU7T0FBbkUsOERBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1Ysb0NBQW9DLEVBQUE7RUFHdEM7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0UsK0JBQStCLEVBQUEsRUFBQTs7QUF4Qm5DO0VBQ0U7SUFDRSxzRUFBbUU7U0FBbkUsaUVBQW1FO1lBQW5FLDhEQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLDRDQUFvQztZQUFwQyxvQ0FBb0MsRUFBQTtFQUd0QztJQUNFLFVBQVU7SUFDViwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUEsRUFBQTs7QUFJbkM7RUFDRSxrQ0FBMEI7T0FBMUIsNkJBQTBCO1VBQTFCLDBCQUEwQixFQUFBOztBQUc1QjtFQUNFO0lBQ0UseUNBQThCO1lBQTlCLGlDQUE4QixFQUFBO0VBR2hDO0lBQ0UsVUFBVTtJQUNWLHlDQUFpQztZQUFqQyxpQ0FBaUMsRUFBQTtFQUduQztJQUNFLFVBQVU7SUFDVix5Q0FBOEI7WUFBOUIsaUNBQThCLEVBQUEsRUFBQTs7QUFabEM7RUFDRTtJQUNFLGlDQUE4QixFQUFBO0VBR2hDO0lBQ0UsVUFBVTtJQUNWLGlDQUFpQyxFQUFBO0VBR25DO0lBQ0UsVUFBVTtJQUNWLGlDQUE4QixFQUFBLEVBQUE7O0FBWmxDO0VBQ0U7SUFDRSx5Q0FBOEI7WUFBOUIsaUNBQThCLEVBQUE7RUFHaEM7SUFDRSxVQUFVO0lBQ1YseUNBQWlDO1lBQWpDLGlDQUFpQyxFQUFBO0VBR25DO0lBQ0UsVUFBVTtJQUNWLHlDQUE4QjtZQUE5QixpQ0FBOEIsRUFBQSxFQUFBOztBQUlsQztFQUNFLGlDQUF5QjtPQUF6Qiw0QkFBeUI7VUFBekIseUJBQXlCLEVBQUE7O0FBRzNCO0VBQ0U7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1YsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsVUFBVTtJQUNWLDRDQUFvQztZQUFwQyxvQ0FBb0MsRUFBQSxFQUFBOztBQVp4QztFQUNFO0lBQ0Usa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1Ysb0NBQW9DLEVBQUEsRUFBQTs7QUFaeEM7RUFDRTtJQUNFLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLFVBQVU7SUFDViwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBLEVBQUE7O0FBSXhDO0VBQ0UscUNBQTZCO09BQTdCLGdDQUE2QjtVQUE3Qiw2QkFBNkIsRUFBQTs7QUFHL0I7RUFDRTtJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1YsNkNBQXFDO1lBQXJDLHFDQUFxQyxFQUFBLEVBQUE7O0FBUnpDO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1YscUNBQXFDLEVBQUEsRUFBQTs7QUFSekM7RUFDRTtJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1YsNkNBQXFDO1lBQXJDLHFDQUFxQyxFQUFBLEVBQUE7O0FBSXpDO0VBQ0UscUNBQTZCO09BQTdCLGdDQUE2QjtVQUE3Qiw2QkFBNkIsRUFBQTs7QUFHL0I7RUFDRTtJQUNFLFVBQVU7SUFDViwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBLEVBQUE7O0FBUnhDO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1Ysb0NBQW9DLEVBQUEsRUFBQTs7QUFSeEM7RUFDRTtJQUNFLFVBQVU7SUFDViwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBLEVBQUE7O0FBSXhDO0VBQ0Usc0NBQThCO09BQTlCLGlDQUE4QjtVQUE5Qiw4QkFBOEIsRUFBQTs7QUFHaEM7RUFDRTtJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1YsNkNBQXFDO1lBQXJDLHFDQUFxQyxFQUFBLEVBQUE7O0FBWnpDO0VBQ0U7SUFDRSxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLFVBQVU7SUFDVixrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLFVBQVU7SUFDVixxQ0FBcUMsRUFBQSxFQUFBOztBQVp6QztFQUNFO0lBQ0UsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsVUFBVTtJQUNWLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLFVBQVU7SUFDViw2Q0FBcUM7WUFBckMscUNBQXFDLEVBQUEsRUFBQTs7QUFJekM7RUFDRSxtQ0FBMkI7T0FBM0IsOEJBQTJCO1VBQTNCLDJCQUEyQixFQUFBOztBQUc3QjtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFOZDtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFOZDtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLDhCQUFzQjtPQUF0Qix5QkFBc0I7VUFBdEIsc0JBQXNCLEVBQUE7O0FBR3hCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7O0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1Ysa0JBQWU7T0FBZixlQUFlLEVBQUEsRUFBQTs7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1YsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQUluQjtFQUNFLGtDQUEwQjtPQUExQiw2QkFBMEI7VUFBMUIsMEJBQTBCLEVBQUE7O0FBRzVCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsNkNBQXFDO1lBQXJDLHFDQUFxQyxFQUFBO0VBR3ZDO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7O0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1YscUNBQXFDLEVBQUE7RUFHdkM7SUFDRSxVQUFVO0lBQ1Ysa0JBQWU7T0FBZixlQUFlLEVBQUEsRUFBQTs7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViw2Q0FBcUM7WUFBckMscUNBQXFDLEVBQUE7RUFHdkM7SUFDRSxVQUFVO0lBQ1YsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQUluQjtFQUNFLHFDQUE2QjtPQUE3QixnQ0FBNkI7VUFBN0IsNkJBQTZCLEVBQUE7O0FBRy9CO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7O0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1Ysa0JBQWU7T0FBZixlQUFlLEVBQUEsRUFBQTs7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxVQUFVO0lBQ1YsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQUluQjtFQUNFLGtDQUEwQjtPQUExQiw2QkFBMEI7VUFBMUIsMEJBQTBCLEVBQUE7O0FBRzVCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsNkNBQXFDO1lBQXJDLHFDQUFxQyxFQUFBO0VBR3ZDO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7O0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1YscUNBQXFDLEVBQUE7RUFHdkM7SUFDRSxVQUFVO0lBQ1Ysa0JBQWU7T0FBZixlQUFlLEVBQUEsRUFBQTs7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViw2Q0FBcUM7WUFBckMscUNBQXFDLEVBQUE7RUFHdkM7SUFDRSxVQUFVO0lBQ1YsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQUluQjtFQUNFLHFDQUE2QjtPQUE3QixnQ0FBNkI7VUFBN0IsNkJBQTZCLEVBQUE7O0FBRy9CO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7O0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1Ysa0JBQWU7T0FBZixlQUFlLEVBQUEsRUFBQTs7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1YsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQUluQjtFQUNFLG1DQUEyQjtPQUEzQiw4QkFBMkI7VUFBM0IsMkJBQTJCLEVBQUE7O0FBRzdCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBO0VBR3RDO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7O0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysb0NBQW9DLEVBQUE7RUFHdEM7SUFDRSxVQUFVO0lBQ1Ysa0JBQWU7T0FBZixlQUFlLEVBQUEsRUFBQTs7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViw0Q0FBb0M7WUFBcEMsb0NBQW9DLEVBQUE7RUFHdEM7SUFDRSxVQUFVO0lBQ1YsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQUluQjtFQUNFLHNDQUE4QjtPQUE5QixpQ0FBOEI7VUFBOUIsOEJBQThCLEVBQUE7O0FBR2hDO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7O0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1Ysa0JBQWU7T0FBZixlQUFlLEVBQUEsRUFBQTs7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxVQUFVO0lBQ1YsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQUluQjtFQUNFLGdDQUF3QjtPQUF4QiwyQkFBd0I7VUFBeEIsd0JBQXdCLEVBQUE7O0FBRzFCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBO0VBR3RDO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7O0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysb0NBQW9DLEVBQUE7RUFHdEM7SUFDRSxVQUFVO0lBQ1Ysa0JBQWU7T0FBZixlQUFlLEVBQUEsRUFBQTs7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViw0Q0FBb0M7WUFBcEMsb0NBQW9DLEVBQUE7RUFHdEM7SUFDRSxVQUFVO0lBQ1YsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWUsRUFBQSxFQUFBOztBQUluQjtFQUNFLG1DQUEyQjtPQUEzQiw4QkFBMkI7VUFBM0IsMkJBQTJCLEVBQUE7O0FBRzdCO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVUsRUFBQSxFQUFBOztBQU5kO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVUsRUFBQSxFQUFBOztBQU5kO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVUsRUFBQSxFQUFBOztBQUlkO0VBQ0UsK0JBQXVCO09BQXZCLDBCQUF1QjtVQUF2Qix1QkFBdUIsRUFBQTs7QUFHekI7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQSxFQUFBOztBQVB0QztFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1Ysa0NBQWtDLEVBQUEsRUFBQTs7QUFQdEM7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQSxFQUFBOztBQUl0QztFQUNFLG1DQUEyQjtPQUEzQiw4QkFBMkI7VUFBM0IsMkJBQTJCLEVBQUE7O0FBRzdCO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDViw0Q0FBb0M7WUFBcEMsb0NBQW9DLEVBQUEsRUFBQTs7QUFQeEM7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLG9DQUFvQyxFQUFBLEVBQUE7O0FBUHhDO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDViw0Q0FBb0M7WUFBcEMsb0NBQW9DLEVBQUEsRUFBQTs7QUFJeEM7RUFDRSxzQ0FBOEI7T0FBOUIsaUNBQThCO1VBQTlCLDhCQUE4QixFQUFBOztBQUdoQztFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1YsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBLEVBQUE7O0FBUHZDO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDVixtQ0FBbUMsRUFBQSxFQUFBOztBQVB2QztFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1YsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBLEVBQUE7O0FBSXZDO0VBQ0UsbUNBQTJCO09BQTNCLDhCQUEyQjtVQUEzQiwyQkFBMkIsRUFBQTs7QUFHN0I7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLDZDQUFxQztZQUFyQyxxQ0FBcUMsRUFBQSxFQUFBOztBQVB6QztFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1YscUNBQXFDLEVBQUEsRUFBQTs7QUFQekM7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLDZDQUFxQztZQUFyQyxxQ0FBcUMsRUFBQSxFQUFBOztBQUl6QztFQUNFLHNDQUE4QjtPQUE5QixpQ0FBOEI7VUFBOUIsOEJBQThCLEVBQUE7O0FBR2hDO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUEsRUFBQTs7QUFQdEM7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLGtDQUFrQyxFQUFBLEVBQUE7O0FBUHRDO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDViwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUEsRUFBQTs7QUFJdEM7RUFDRSxvQ0FBNEI7T0FBNUIsK0JBQTRCO1VBQTVCLDRCQUE0QixFQUFBOztBQUc5QjtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBLEVBQUE7O0FBUHhDO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDVixvQ0FBb0MsRUFBQSxFQUFBOztBQVB4QztFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1YsNENBQW9DO1lBQXBDLG9DQUFvQyxFQUFBLEVBQUE7O0FBSXhDO0VBQ0UsdUNBQStCO09BQS9CLGtDQUErQjtVQUEvQiwrQkFBK0IsRUFBQTs7QUFHakM7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQSxFQUFBOztBQVB2QztFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1YsbUNBQW1DLEVBQUEsRUFBQTs7QUFQdkM7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQSxFQUFBOztBQUl2QztFQUNFLGlDQUF5QjtPQUF6Qiw0QkFBeUI7VUFBekIseUJBQXlCLEVBQUE7O0FBRzNCO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDViw2Q0FBcUM7WUFBckMscUNBQXFDLEVBQUEsRUFBQTs7QUFQekM7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLHFDQUFxQyxFQUFBLEVBQUE7O0FBUHpDO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDViw2Q0FBcUM7WUFBckMscUNBQXFDLEVBQUEsRUFBQTs7QUFJekM7RUFDRSxvQ0FBNEI7T0FBNUIsK0JBQTRCO1VBQTVCLDRCQUE0QixFQUFBOztBQUc5QjtFQUNFO0lBQ0UsZ0VBQXdEO1lBQXhELHdEQUF3RDtJQUN4RCwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSx5RkFBaUY7WUFBakYsaUZBQWlGO0lBQ2pGLDJDQUFtQztZQUFuQyxtQ0FBbUMsRUFBQTtFQUdyQztJQUNFLHlGQUFpRjtZQUFqRixpRkFBaUY7SUFDakYsMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0UsK0RBQW9EO1lBQXBELHVEQUFvRDtJQUNwRCwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSxxQ0FBNkI7WUFBN0IsNkJBQTZCO0lBQzdCLDBDQUFrQztZQUFsQyxrQ0FBa0MsRUFBQSxFQUFBOztBQXZCdEM7RUFDRTtJQUNFLHdEQUF3RDtJQUN4RCxzQ0FBbUM7T0FBbkMsbUNBQW1DLEVBQUE7RUFHckM7SUFDRSxpRkFBaUY7SUFDakYsc0NBQW1DO09BQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UsaUZBQWlGO0lBQ2pGLHFDQUFrQztPQUFsQyxrQ0FBa0MsRUFBQTtFQUdwQztJQUNFLHVEQUFvRDtJQUNwRCxxQ0FBa0M7T0FBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSw2QkFBNkI7SUFDN0IscUNBQWtDO09BQWxDLGtDQUFrQyxFQUFBLEVBQUE7O0FBdkJ0QztFQUNFO0lBQ0UsZ0VBQXdEO1lBQXhELHdEQUF3RDtJQUN4RCwyQ0FBbUM7U0FBbkMsc0NBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UseUZBQWlGO1lBQWpGLGlGQUFpRjtJQUNqRiwyQ0FBbUM7U0FBbkMsc0NBQW1DO1lBQW5DLG1DQUFtQyxFQUFBO0VBR3JDO0lBQ0UseUZBQWlGO1lBQWpGLGlGQUFpRjtJQUNqRiwwQ0FBa0M7U0FBbEMscUNBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0UsK0RBQW9EO1lBQXBELHVEQUFvRDtJQUNwRCwwQ0FBa0M7U0FBbEMscUNBQWtDO1lBQWxDLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QjtJQUM3QiwwQ0FBa0M7U0FBbEMscUNBQWtDO1lBQWxDLGtDQUFrQyxFQUFBLEVBQUE7O0FBSXRDO0VBQ0Usb0NBQW9DO0VBQ3BDLDRCQUE0QjtFQUM1Qiw0QkFBb0I7T0FBcEIsdUJBQW9CO1VBQXBCLG9CQUFvQixFQUFBOztBQUd0QjtFQUNFO0lBQ0UsOERBQXNEO1lBQXRELHNEQUFzRDtJQUN0RCwwQ0FBa0M7WUFBbEMsa0NBQWtDO0lBQ2xDLFVBQVUsRUFBQTtFQUdaO0lBQ0UsK0RBQXVEO1lBQXZELHVEQUF1RDtJQUN2RCwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSw4REFBc0Q7WUFBdEQsc0RBQXNEO0lBQ3RELFVBQVUsRUFBQTtFQUdaO0lBQ0UsOERBQXNEO1lBQXRELHNEQUFzRCxFQUFBO0VBR3hEO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QixFQUFBLEVBQUE7O0FBdEJqQztFQUNFO0lBQ0Usc0RBQXNEO0lBQ3RELHFDQUFrQztPQUFsQyxrQ0FBa0M7SUFDbEMsVUFBVSxFQUFBO0VBR1o7SUFDRSx1REFBdUQ7SUFDdkQscUNBQWtDO09BQWxDLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0Usc0RBQXNEO0lBQ3RELFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0RBQXNELEVBQUE7RUFHeEQ7SUFDRSw2QkFBNkIsRUFBQSxFQUFBOztBQXRCakM7RUFDRTtJQUNFLDhEQUFzRDtZQUF0RCxzREFBc0Q7SUFDdEQsMENBQWtDO1NBQWxDLHFDQUFrQztZQUFsQyxrQ0FBa0M7SUFDbEMsVUFBVSxFQUFBO0VBR1o7SUFDRSwrREFBdUQ7WUFBdkQsdURBQXVEO0lBQ3ZELDBDQUFrQztTQUFsQyxxQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSw4REFBc0Q7WUFBdEQsc0RBQXNEO0lBQ3RELFVBQVUsRUFBQTtFQUdaO0lBQ0UsOERBQXNEO1lBQXRELHNEQUFzRCxFQUFBO0VBR3hEO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QixFQUFBLEVBQUE7O0FBSWpDO0VBQ0UsK0NBQStDO0VBQy9DLHVDQUF1QztFQUN2QywrQkFBdUI7T0FBdkIsMEJBQXVCO1VBQXZCLHVCQUF1QixFQUFBOztBQUd6QjtFQUNFO0lBQ0UsOERBQXNEO1lBQXRELHNEQUFzRDtJQUN0RCwwQ0FBa0M7WUFBbEMsa0NBQWtDO0lBQ2xDLFVBQVUsRUFBQTtFQUdaO0lBQ0UsK0RBQXVEO1lBQXZELHVEQUF1RDtJQUN2RCwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSw4REFBc0Q7WUFBdEQsc0RBQXNEO0lBQ3RELFVBQVUsRUFBQTtFQUdaO0lBQ0UsOERBQXNEO1lBQXRELHNEQUFzRCxFQUFBO0VBR3hEO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QixFQUFBLEVBQUE7O0FBdEJqQztFQUNFO0lBQ0Usc0RBQXNEO0lBQ3RELHFDQUFrQztPQUFsQyxrQ0FBa0M7SUFDbEMsVUFBVSxFQUFBO0VBR1o7SUFDRSx1REFBdUQ7SUFDdkQscUNBQWtDO09BQWxDLGtDQUFrQyxFQUFBO0VBR3BDO0lBQ0Usc0RBQXNEO0lBQ3RELFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0RBQXNELEVBQUE7RUFHeEQ7SUFDRSw2QkFBNkIsRUFBQSxFQUFBOztBQXRCakM7RUFDRTtJQUNFLDhEQUFzRDtZQUF0RCxzREFBc0Q7SUFDdEQsMENBQWtDO1NBQWxDLHFDQUFrQztZQUFsQyxrQ0FBa0M7SUFDbEMsVUFBVSxFQUFBO0VBR1o7SUFDRSwrREFBdUQ7WUFBdkQsdURBQXVEO0lBQ3ZELDBDQUFrQztTQUFsQyxxQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUE7RUFHcEM7SUFDRSw4REFBc0Q7WUFBdEQsc0RBQXNEO0lBQ3RELFVBQVUsRUFBQTtFQUdaO0lBQ0UsOERBQXNEO1lBQXRELHNEQUFzRCxFQUFBO0VBR3hEO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QixFQUFBLEVBQUE7O0FBSWpDO0VBQ0UsK0NBQStDO0VBQy9DLHVDQUF1QztFQUN2QywrQkFBdUI7T0FBdkIsMEJBQXVCO1VBQXZCLHVCQUF1QixFQUFBOztBQUd6QjtFQUNFO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QixFQUFBO0VBRy9CO0lBQ0UsK0RBQXVEO1lBQXZELHVEQUF1RDtJQUN2RCxVQUFVLEVBQUE7RUFHWjtJQUNFLDhEQUFzRDtZQUF0RCxzREFBc0Q7SUFDdEQsVUFBVSxFQUFBLEVBQUE7O0FBWmQ7RUFDRTtJQUNFLDZCQUE2QixFQUFBO0VBRy9CO0lBQ0UsdURBQXVEO0lBQ3ZELFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0RBQXNEO0lBQ3RELFVBQVUsRUFBQSxFQUFBOztBQVpkO0VBQ0U7SUFDRSxxQ0FBNkI7WUFBN0IsNkJBQTZCLEVBQUE7RUFHL0I7SUFDRSwrREFBdUQ7WUFBdkQsdURBQXVEO0lBQ3ZELFVBQVUsRUFBQTtFQUdaO0lBQ0UsOERBQXNEO1lBQXRELHNEQUFzRDtJQUN0RCxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLGdDQUF3QjtPQUF4QiwyQkFBd0I7VUFBeEIsd0JBQXdCO0VBQ3hCLCtDQUErQztFQUMvQyx1Q0FBdUMsRUFBQTs7QUFHekM7RUFDRTtJQUNFLHFDQUE2QjtZQUE3Qiw2QkFBNkIsRUFBQTtFQUcvQjtJQUNFLCtEQUF1RDtZQUF2RCx1REFBdUQ7SUFDdkQsVUFBVSxFQUFBO0VBR1o7SUFDRSw4REFBc0Q7WUFBdEQsc0RBQXNEO0lBQ3RELFVBQVUsRUFBQSxFQUFBOztBQVpkO0VBQ0U7SUFDRSw2QkFBNkIsRUFBQTtFQUcvQjtJQUNFLHVEQUF1RDtJQUN2RCxVQUFVLEVBQUE7RUFHWjtJQUNFLHNEQUFzRDtJQUN0RCxVQUFVLEVBQUEsRUFBQTs7QUFaZDtFQUNFO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QixFQUFBO0VBRy9CO0lBQ0UsK0RBQXVEO1lBQXZELHVEQUF1RDtJQUN2RCxVQUFVLEVBQUE7RUFHWjtJQUNFLDhEQUFzRDtZQUF0RCxzREFBc0Q7SUFDdEQsVUFBVSxFQUFBLEVBQUE7O0FBSWQ7RUFDRSwrQ0FBK0M7RUFDL0MsdUNBQXVDO0VBQ3ZDLGdDQUF3QjtPQUF4QiwyQkFBd0I7VUFBeEIsd0JBQXdCLEVBQUE7O0FBRzFCO0VBQ0U7SUFDRSx3REFBZ0Q7WUFBaEQsZ0RBQWdEO0lBQ2hELFVBQVUsRUFBQTtFQUdaO0lBQ0UsK0JBQXVCO1lBQXZCLHVCQUF1QjtJQUN2QixVQUFVLEVBQUE7RUFHWjtJQUNFLCtCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsVUFBVSxFQUFBO0VBR1o7SUFDRSx1QkFBZTtZQUFmLGVBQWU7SUFDZixVQUFVLEVBQUEsRUFBQTs7QUFsQmQ7RUFDRTtJQUNFLGdEQUFnRDtJQUNoRCxVQUFVLEVBQUE7RUFHWjtJQUNFLDBCQUF1QjtPQUF2Qix1QkFBdUI7SUFDdkIsVUFBVSxFQUFBO0VBR1o7SUFDRSwwQkFBdUI7T0FBdkIsdUJBQXVCO0lBQ3ZCLFVBQVUsRUFBQTtFQUdaO0lBQ0Usa0JBQWU7T0FBZixlQUFlO0lBQ2YsVUFBVSxFQUFBLEVBQUE7O0FBbEJkO0VBQ0U7SUFDRSx3REFBZ0Q7WUFBaEQsZ0RBQWdEO0lBQ2hELFVBQVUsRUFBQTtFQUdaO0lBQ0UsK0JBQXVCO1NBQXZCLDBCQUF1QjtZQUF2Qix1QkFBdUI7SUFDdkIsVUFBVSxFQUFBO0VBR1o7SUFDRSwrQkFBdUI7U0FBdkIsMEJBQXVCO1lBQXZCLHVCQUF1QjtJQUN2QixVQUFVLEVBQUE7RUFHWjtJQUNFLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlO0lBQ2YsVUFBVSxFQUFBLEVBQUE7O0FBSWQ7RUFDRSxvQ0FBNEI7T0FBNUIsK0JBQTRCO1VBQTVCLDRCQUE0QjtFQUM1QiwyQ0FBbUM7T0FBbkMsc0NBQW1DO1VBQW5DLG1DQUFtQyxFQUFBOztBQUdyQztFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSx1REFBK0M7WUFBL0MsK0NBQStDO0lBQy9DLFVBQVUsRUFBQSxFQUFBOztBQVBkO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLCtDQUErQztJQUMvQyxVQUFVLEVBQUEsRUFBQTs7QUFQZDtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSx1REFBK0M7WUFBL0MsK0NBQStDO0lBQy9DLFVBQVUsRUFBQSxFQUFBOztBQUlkO0VBQ0UscUNBQTZCO09BQTdCLGdDQUE2QjtVQUE3Qiw2QkFBNkI7RUFDN0IsMENBQWtDO09BQWxDLHFDQUFrQztVQUFsQyxrQ0FBa0MsRUFBQTs7QUFHcEM7RUFDRTtJQUNFLGdDQUF3QjtZQUF4Qix3QkFBd0I7SUFDeEIsNkNBQXFDO1lBQXJDLHFDQUFxQztJQUNyQyxVQUFVLEVBQUE7RUFHWjtJQUNFLGdDQUF3QjtZQUF4Qix3QkFBd0I7SUFDeEIsdUJBQWU7WUFBZixlQUFlO0lBQ2YsVUFBVSxFQUFBLEVBQUE7O0FBVmQ7RUFDRTtJQUNFLDJCQUF3QjtPQUF4Qix3QkFBd0I7SUFDeEIscUNBQXFDO0lBQ3JDLFVBQVUsRUFBQTtFQUdaO0lBQ0UsMkJBQXdCO09BQXhCLHdCQUF3QjtJQUN4QixrQkFBZTtPQUFmLGVBQWU7SUFDZixVQUFVLEVBQUEsRUFBQTs7QUFWZDtFQUNFO0lBQ0UsZ0NBQXdCO1NBQXhCLDJCQUF3QjtZQUF4Qix3QkFBd0I7SUFDeEIsNkNBQXFDO1lBQXJDLHFDQUFxQztJQUNyQyxVQUFVLEVBQUE7RUFHWjtJQUNFLGdDQUF3QjtTQUF4QiwyQkFBd0I7WUFBeEIsd0JBQXdCO0lBQ3hCLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlO0lBQ2YsVUFBVSxFQUFBLEVBQUE7O0FBSWQ7RUFDRSxnQ0FBd0I7T0FBeEIsMkJBQXdCO1VBQXhCLHdCQUF3QixFQUFBOztBQUcxQjtFQUNFO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QjtJQUM3Qiw0Q0FBb0M7WUFBcEMsb0NBQW9DO0lBQ3BDLFVBQVUsRUFBQTtFQUdaO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QjtJQUM3Qix1QkFBZTtZQUFmLGVBQWU7SUFDZixVQUFVLEVBQUEsRUFBQTs7QUFWZDtFQUNFO0lBQ0UsZ0NBQTZCO09BQTdCLDZCQUE2QjtJQUM3QixvQ0FBb0M7SUFDcEMsVUFBVSxFQUFBO0VBR1o7SUFDRSxnQ0FBNkI7T0FBN0IsNkJBQTZCO0lBQzdCLGtCQUFlO09BQWYsZUFBZTtJQUNmLFVBQVUsRUFBQSxFQUFBOztBQVZkO0VBQ0U7SUFDRSxxQ0FBNkI7U0FBN0IsZ0NBQTZCO1lBQTdCLDZCQUE2QjtJQUM3Qiw0Q0FBb0M7WUFBcEMsb0NBQW9DO0lBQ3BDLFVBQVUsRUFBQTtFQUdaO0lBQ0UscUNBQTZCO1NBQTdCLGdDQUE2QjtZQUE3Qiw2QkFBNkI7SUFDN0IsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWU7SUFDZixVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLHdDQUFnQztPQUFoQyxtQ0FBZ0M7VUFBaEMsZ0NBQWdDLEVBQUE7O0FBR2xDO0VBQ0U7SUFDRSxzQ0FBOEI7WUFBOUIsOEJBQThCO0lBQzlCLDJDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsVUFBVSxFQUFBO0VBR1o7SUFDRSxzQ0FBOEI7WUFBOUIsOEJBQThCO0lBQzlCLHVCQUFlO1lBQWYsZUFBZTtJQUNmLFVBQVUsRUFBQSxFQUFBOztBQVZkO0VBQ0U7SUFDRSxpQ0FBOEI7T0FBOUIsOEJBQThCO0lBQzlCLG1DQUFtQztJQUNuQyxVQUFVLEVBQUE7RUFHWjtJQUNFLGlDQUE4QjtPQUE5Qiw4QkFBOEI7SUFDOUIsa0JBQWU7T0FBZixlQUFlO0lBQ2YsVUFBVSxFQUFBLEVBQUE7O0FBVmQ7RUFDRTtJQUNFLHNDQUE4QjtTQUE5QixpQ0FBOEI7WUFBOUIsOEJBQThCO0lBQzlCLDJDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsVUFBVSxFQUFBO0VBR1o7SUFDRSxzQ0FBOEI7U0FBOUIsaUNBQThCO1lBQTlCLDhCQUE4QjtJQUM5Qix1QkFBZTtTQUFmLGtCQUFlO1lBQWYsZUFBZTtJQUNmLFVBQVUsRUFBQSxFQUFBOztBQUlkO0VBQ0UseUNBQWlDO09BQWpDLG9DQUFpQztVQUFqQyxpQ0FBaUMsRUFBQTs7QUFHbkM7RUFDRTtJQUNFLHFDQUE2QjtZQUE3Qiw2QkFBNkI7SUFDN0IsMkNBQW1DO1lBQW5DLG1DQUFtQztJQUNuQyxVQUFVLEVBQUE7RUFHWjtJQUNFLHFDQUE2QjtZQUE3Qiw2QkFBNkI7SUFDN0IsdUJBQWU7WUFBZixlQUFlO0lBQ2YsVUFBVSxFQUFBLEVBQUE7O0FBVmQ7RUFDRTtJQUNFLGdDQUE2QjtPQUE3Qiw2QkFBNkI7SUFDN0IsbUNBQW1DO0lBQ25DLFVBQVUsRUFBQTtFQUdaO0lBQ0UsZ0NBQTZCO09BQTdCLDZCQUE2QjtJQUM3QixrQkFBZTtPQUFmLGVBQWU7SUFDZixVQUFVLEVBQUEsRUFBQTs7QUFWZDtFQUNFO0lBQ0UscUNBQTZCO1NBQTdCLGdDQUE2QjtZQUE3Qiw2QkFBNkI7SUFDN0IsMkNBQW1DO1lBQW5DLG1DQUFtQztJQUNuQyxVQUFVLEVBQUE7RUFHWjtJQUNFLHFDQUE2QjtTQUE3QixnQ0FBNkI7WUFBN0IsNkJBQTZCO0lBQzdCLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlO0lBQ2YsVUFBVSxFQUFBLEVBQUE7O0FBSWQ7RUFDRSxzQ0FBOEI7T0FBOUIsaUNBQThCO1VBQTlCLDhCQUE4QixFQUFBOztBQUdoQztFQUNFO0lBQ0Usc0NBQThCO1lBQTlCLDhCQUE4QjtJQUM5Qiw0Q0FBb0M7WUFBcEMsb0NBQW9DO0lBQ3BDLFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0NBQThCO1lBQTlCLDhCQUE4QjtJQUM5Qix1QkFBZTtZQUFmLGVBQWU7SUFDZixVQUFVLEVBQUEsRUFBQTs7QUFWZDtFQUNFO0lBQ0UsaUNBQThCO09BQTlCLDhCQUE4QjtJQUM5QixvQ0FBb0M7SUFDcEMsVUFBVSxFQUFBO0VBR1o7SUFDRSxpQ0FBOEI7T0FBOUIsOEJBQThCO0lBQzlCLGtCQUFlO09BQWYsZUFBZTtJQUNmLFVBQVUsRUFBQSxFQUFBOztBQVZkO0VBQ0U7SUFDRSxzQ0FBOEI7U0FBOUIsaUNBQThCO1lBQTlCLDhCQUE4QjtJQUM5Qiw0Q0FBb0M7WUFBcEMsb0NBQW9DO0lBQ3BDLFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0NBQThCO1NBQTlCLGlDQUE4QjtZQUE5Qiw4QkFBOEI7SUFDOUIsdUJBQWU7U0FBZixrQkFBZTtZQUFmLGVBQWU7SUFDZixVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLHVDQUErQjtPQUEvQixrQ0FBK0I7VUFBL0IsK0JBQStCLEVBQUE7O0FBR2pDO0VBQ0U7SUFDRSxnQ0FBd0I7WUFBeEIsd0JBQXdCO0lBQ3hCLFVBQVUsRUFBQTtFQUdaO0lBQ0UsZ0NBQXdCO1lBQXhCLHdCQUF3QjtJQUN4Qiw0Q0FBb0M7WUFBcEMsb0NBQW9DO0lBQ3BDLFVBQVUsRUFBQSxFQUFBOztBQVRkO0VBQ0U7SUFDRSwyQkFBd0I7T0FBeEIsd0JBQXdCO0lBQ3hCLFVBQVUsRUFBQTtFQUdaO0lBQ0UsMkJBQXdCO09BQXhCLHdCQUF3QjtJQUN4QixvQ0FBb0M7SUFDcEMsVUFBVSxFQUFBLEVBQUE7O0FBVGQ7RUFDRTtJQUNFLGdDQUF3QjtTQUF4QiwyQkFBd0I7WUFBeEIsd0JBQXdCO0lBQ3hCLFVBQVUsRUFBQTtFQUdaO0lBQ0UsZ0NBQXdCO1NBQXhCLDJCQUF3QjtZQUF4Qix3QkFBd0I7SUFDeEIsNENBQW9DO1lBQXBDLG9DQUFvQztJQUNwQyxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLGlDQUF5QjtPQUF6Qiw0QkFBeUI7VUFBekIseUJBQXlCLEVBQUE7O0FBRzNCO0VBQ0U7SUFDRSxxQ0FBNkI7WUFBN0IsNkJBQTZCO0lBQzdCLFVBQVUsRUFBQTtFQUdaO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QjtJQUM3QiwyQ0FBbUM7WUFBbkMsbUNBQW1DO0lBQ25DLFVBQVUsRUFBQSxFQUFBOztBQVRkO0VBQ0U7SUFDRSxnQ0FBNkI7T0FBN0IsNkJBQTZCO0lBQzdCLFVBQVUsRUFBQTtFQUdaO0lBQ0UsZ0NBQTZCO09BQTdCLDZCQUE2QjtJQUM3QixtQ0FBbUM7SUFDbkMsVUFBVSxFQUFBLEVBQUE7O0FBVGQ7RUFDRTtJQUNFLHFDQUE2QjtTQUE3QixnQ0FBNkI7WUFBN0IsNkJBQTZCO0lBQzdCLFVBQVUsRUFBQTtFQUdaO0lBQ0UscUNBQTZCO1NBQTdCLGdDQUE2QjtZQUE3Qiw2QkFBNkI7SUFDN0IsMkNBQW1DO1lBQW5DLG1DQUFtQztJQUNuQyxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLHlDQUFpQztPQUFqQyxvQ0FBaUM7VUFBakMsaUNBQWlDLEVBQUE7O0FBR25DO0VBQ0U7SUFDRSxzQ0FBOEI7WUFBOUIsOEJBQThCO0lBQzlCLFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0NBQThCO1lBQTlCLDhCQUE4QjtJQUM5Qiw0Q0FBb0M7WUFBcEMsb0NBQW9DO0lBQ3BDLFVBQVUsRUFBQSxFQUFBOztBQVRkO0VBQ0U7SUFDRSxpQ0FBOEI7T0FBOUIsOEJBQThCO0lBQzlCLFVBQVUsRUFBQTtFQUdaO0lBQ0UsaUNBQThCO09BQTlCLDhCQUE4QjtJQUM5QixvQ0FBb0M7SUFDcEMsVUFBVSxFQUFBLEVBQUE7O0FBVGQ7RUFDRTtJQUNFLHNDQUE4QjtTQUE5QixpQ0FBOEI7WUFBOUIsOEJBQThCO0lBQzlCLFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0NBQThCO1NBQTlCLGlDQUE4QjtZQUE5Qiw4QkFBOEI7SUFDOUIsNENBQW9DO1lBQXBDLG9DQUFvQztJQUNwQyxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLDBDQUFrQztPQUFsQyxxQ0FBa0M7VUFBbEMsa0NBQWtDLEVBQUE7O0FBR3BDO0VBQ0U7SUFDRSxxQ0FBNkI7WUFBN0IsNkJBQTZCO0lBQzdCLFVBQVUsRUFBQTtFQUdaO0lBQ0UscUNBQTZCO1lBQTdCLDZCQUE2QjtJQUM3Qiw0Q0FBb0M7WUFBcEMsb0NBQW9DO0lBQ3BDLFVBQVUsRUFBQSxFQUFBOztBQVRkO0VBQ0U7SUFDRSxnQ0FBNkI7T0FBN0IsNkJBQTZCO0lBQzdCLFVBQVUsRUFBQTtFQUdaO0lBQ0UsZ0NBQTZCO09BQTdCLDZCQUE2QjtJQUM3QixvQ0FBb0M7SUFDcEMsVUFBVSxFQUFBLEVBQUE7O0FBVGQ7RUFDRTtJQUNFLHFDQUE2QjtTQUE3QixnQ0FBNkI7WUFBN0IsNkJBQTZCO0lBQzdCLFVBQVUsRUFBQTtFQUdaO0lBQ0UscUNBQTZCO1NBQTdCLGdDQUE2QjtZQUE3Qiw2QkFBNkI7SUFDN0IsNENBQW9DO1lBQXBDLG9DQUFvQztJQUNwQyxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLHVDQUErQjtPQUEvQixrQ0FBK0I7VUFBL0IsK0JBQStCLEVBQUE7O0FBR2pDO0VBQ0U7SUFDRSxzQ0FBOEI7WUFBOUIsOEJBQThCO0lBQzlCLFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0NBQThCO1lBQTlCLDhCQUE4QjtJQUM5QiwyQ0FBbUM7WUFBbkMsbUNBQW1DO0lBQ25DLFVBQVUsRUFBQSxFQUFBOztBQVRkO0VBQ0U7SUFDRSxpQ0FBOEI7T0FBOUIsOEJBQThCO0lBQzlCLFVBQVUsRUFBQTtFQUdaO0lBQ0UsaUNBQThCO09BQTlCLDhCQUE4QjtJQUM5QixtQ0FBbUM7SUFDbkMsVUFBVSxFQUFBLEVBQUE7O0FBVGQ7RUFDRTtJQUNFLHNDQUE4QjtTQUE5QixpQ0FBOEI7WUFBOUIsOEJBQThCO0lBQzlCLFVBQVUsRUFBQTtFQUdaO0lBQ0Usc0NBQThCO1NBQTlCLGlDQUE4QjtZQUE5Qiw4QkFBOEI7SUFDOUIsMkNBQW1DO1lBQW5DLG1DQUFtQztJQUNuQyxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLHdDQUFnQztPQUFoQyxtQ0FBZ0M7VUFBaEMsZ0NBQWdDLEVBQUE7O0FBR2xDO0VBQ0U7SUFDRSxrQ0FBMEI7WUFBMUIsMEJBQTBCO0lBQzFCLDhDQUFzQztZQUF0QyxzQ0FBc0MsRUFBQTtFQUd4QztJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsa0NBQTBCO1lBQTFCLDBCQUEwQjtJQUMxQiw4Q0FBc0M7WUFBdEMsc0NBQXNDLEVBQUE7RUFHeEM7SUFDRSwyQ0FBbUM7WUFBbkMsbUNBQW1DO0lBQ25DLGtDQUEwQjtZQUExQiwwQkFBMEI7SUFDMUIsOENBQXNDO1lBQXRDLHNDQUFzQztJQUN0QyxVQUFVLEVBQUE7RUFHWjtJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsVUFBVSxFQUFBLEVBQUE7O0FBckJkO0VBQ0U7SUFDRSw2QkFBMEI7T0FBMUIsMEJBQTBCO0lBQzFCLHlDQUFzQztPQUF0QyxzQ0FBc0MsRUFBQTtFQUd4QztJQUNFLG1DQUFtQztJQUNuQyw2QkFBMEI7T0FBMUIsMEJBQTBCO0lBQzFCLHlDQUFzQztPQUF0QyxzQ0FBc0MsRUFBQTtFQUd4QztJQUNFLG1DQUFtQztJQUNuQyw2QkFBMEI7T0FBMUIsMEJBQTBCO0lBQzFCLHlDQUFzQztPQUF0QyxzQ0FBc0M7SUFDdEMsVUFBVSxFQUFBO0VBR1o7SUFDRSxtQ0FBbUM7SUFDbkMsVUFBVSxFQUFBLEVBQUE7O0FBckJkO0VBQ0U7SUFDRSxrQ0FBMEI7U0FBMUIsNkJBQTBCO1lBQTFCLDBCQUEwQjtJQUMxQiw4Q0FBc0M7U0FBdEMseUNBQXNDO1lBQXRDLHNDQUFzQyxFQUFBO0VBR3hDO0lBQ0UsMkNBQW1DO1lBQW5DLG1DQUFtQztJQUNuQyxrQ0FBMEI7U0FBMUIsNkJBQTBCO1lBQTFCLDBCQUEwQjtJQUMxQiw4Q0FBc0M7U0FBdEMseUNBQXNDO1lBQXRDLHNDQUFzQyxFQUFBO0VBR3hDO0lBQ0UsMkNBQW1DO1lBQW5DLG1DQUFtQztJQUNuQyxrQ0FBMEI7U0FBMUIsNkJBQTBCO1lBQTFCLDBCQUEwQjtJQUMxQiw4Q0FBc0M7U0FBdEMseUNBQXNDO1lBQXRDLHNDQUFzQztJQUN0QyxVQUFVLEVBQUE7RUFHWjtJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsVUFBVSxFQUFBLEVBQUE7O0FBSWQ7RUFDRSw2QkFBcUI7T0FBckIsd0JBQXFCO1VBQXJCLHFCQUFxQixFQUFBOztBQUd2QjtFQUNFO0lBQ0UsVUFBVTtJQUNWLDJDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsdUNBQStCO1lBQS9CLCtCQUErQixFQUFBO0VBR2pDO0lBQ0UsaUNBQXlCO1lBQXpCLHlCQUF5QixFQUFBO0VBRzNCO0lBQ0UsK0JBQXVCO1lBQXZCLHVCQUF1QixFQUFBO0VBR3pCO0lBQ0UsVUFBVTtJQUNWLDJCQUFtQjtZQUFuQixtQkFBbUIsRUFBQSxFQUFBOztBQWpCdkI7RUFDRTtJQUNFLFVBQVU7SUFDVixzQ0FBbUM7T0FBbkMsbUNBQW1DO0lBQ25DLGtDQUErQjtPQUEvQiwrQkFBK0IsRUFBQTtFQUdqQztJQUNFLDRCQUF5QjtPQUF6Qix5QkFBeUIsRUFBQTtFQUczQjtJQUNFLDBCQUF1QjtPQUF2Qix1QkFBdUIsRUFBQTtFQUd6QjtJQUNFLFVBQVU7SUFDVixzQkFBbUI7T0FBbkIsbUJBQW1CLEVBQUEsRUFBQTs7QUFqQnZCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMkNBQW1DO1NBQW5DLHNDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsdUNBQStCO1NBQS9CLGtDQUErQjtZQUEvQiwrQkFBK0IsRUFBQTtFQUdqQztJQUNFLGlDQUF5QjtTQUF6Qiw0QkFBeUI7WUFBekIseUJBQXlCLEVBQUE7RUFHM0I7SUFDRSwrQkFBdUI7U0FBdkIsMEJBQXVCO1lBQXZCLHVCQUF1QixFQUFBO0VBR3pCO0lBQ0UsVUFBVTtJQUNWLDJCQUFtQjtTQUFuQixzQkFBbUI7WUFBbkIsbUJBQW1CLEVBQUEsRUFBQTs7QUFJdkI7RUFDRSxvQ0FBNEI7T0FBNUIsK0JBQTRCO1VBQTVCLDRCQUE0QixFQUFBOztBQUc5Qiw2RUFBQTtBQUVBO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysc0VBQThEO1lBQTlELDhEQUE4RCxFQUFBO0VBR2hFO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1lBQWYsZUFBZSxFQUFBLEVBQUE7QUFSbkI7RUFDRTtJQUNFLFVBQVU7SUFDViw4REFBOEQsRUFBQTtFQUdoRTtJQUNFLFVBQVU7SUFDVixrQkFBZTtPQUFmLGVBQWUsRUFBQSxFQUFBO0FBUm5CO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysc0VBQThEO1lBQTlELDhEQUE4RCxFQUFBO0VBR2hFO0lBQ0UsVUFBVTtJQUNWLHVCQUFlO1NBQWYsa0JBQWU7WUFBZixlQUFlLEVBQUEsRUFBQTs7QUFJbkI7RUFDRSw4QkFBc0I7T0FBdEIseUJBQXNCO1VBQXRCLHNCQUFzQixFQUFBOztBQUd4Qiw2RUFBQTtBQUVBO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDVixvRUFBNEQ7WUFBNUQsNERBQTRELEVBQUEsRUFBQTtBQVBoRTtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1YsNERBQTRELEVBQUEsRUFBQTtBQVBoRTtFQUNFO0lBQ0UsVUFBVSxFQUFBO0VBR1o7SUFDRSxVQUFVO0lBQ1Ysb0VBQTREO1lBQTVELDREQUE0RCxFQUFBLEVBQUE7O0FBSWhFO0VBQ0UsK0JBQXVCO09BQXZCLDBCQUF1QjtVQUF2Qix1QkFBdUIsRUFBQTs7QUFHekI7RUFDRTtJQUNFLFVBQVU7SUFDVix5Q0FBOEI7WUFBOUIsaUNBQThCLEVBQUE7RUFHaEM7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFQZDtFQUNFO0lBQ0UsVUFBVTtJQUNWLGlDQUE4QixFQUFBO0VBR2hDO0lBQ0UsVUFBVSxFQUFBLEVBQUE7O0FBUGQ7RUFDRTtJQUNFLFVBQVU7SUFDVix5Q0FBOEI7WUFBOUIsaUNBQThCLEVBQUE7RUFHaEM7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLDhCQUFzQjtPQUF0Qix5QkFBc0I7VUFBdEIsc0JBQXNCLEVBQUE7O0FBR3hCO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysb0VBQXlEO1lBQXpELDREQUF5RDtJQUN6RCx5RUFBbUU7WUFBbkUsaUVBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YsdUVBQTREO1lBQTVELCtEQUE0RDtJQUM1RCxzRUFBK0Q7WUFBL0QsOERBQStELEVBQUEsRUFBQTs7QUFWbkU7RUFDRTtJQUNFLFVBQVU7SUFDViw0REFBeUQ7SUFDekQsb0VBQW1FO09BQW5FLGlFQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLCtEQUE0RDtJQUM1RCxpRUFBK0Q7T0FBL0QsOERBQStELEVBQUEsRUFBQTs7QUFWbkU7RUFDRTtJQUNFLFVBQVU7SUFDVixvRUFBeUQ7WUFBekQsNERBQXlEO0lBQ3pELHlFQUFtRTtTQUFuRSxvRUFBbUU7WUFBbkUsaUVBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YsdUVBQTREO1lBQTVELCtEQUE0RDtJQUM1RCxzRUFBK0Q7U0FBL0QsaUVBQStEO1lBQS9ELDhEQUErRCxFQUFBLEVBQUE7O0FBSW5FO0VBQ0Usa0NBQTBCO09BQTFCLDZCQUEwQjtVQUExQiwwQkFBMEIsRUFBQTs7QUFHNUI7RUFDRTtJQUNFLFVBQVU7SUFDVixvRUFBeUQ7WUFBekQsNERBQXlEO0lBQ3pELHlFQUFtRTtZQUFuRSxpRUFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVix1RUFBNEQ7WUFBNUQsK0RBQTREO0lBQzVELHNFQUErRDtZQUEvRCw4REFBK0QsRUFBQSxFQUFBOztBQVZuRTtFQUNFO0lBQ0UsVUFBVTtJQUNWLDREQUF5RDtJQUN6RCxvRUFBbUU7T0FBbkUsaUVBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YsK0RBQTREO0lBQzVELGlFQUErRDtPQUEvRCw4REFBK0QsRUFBQSxFQUFBOztBQVZuRTtFQUNFO0lBQ0UsVUFBVTtJQUNWLG9FQUF5RDtZQUF6RCw0REFBeUQ7SUFDekQseUVBQW1FO1NBQW5FLG9FQUFtRTtZQUFuRSxpRUFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVix1RUFBNEQ7WUFBNUQsK0RBQTREO0lBQzVELHNFQUErRDtTQUEvRCxpRUFBK0Q7WUFBL0QsOERBQStELEVBQUEsRUFBQTs7QUFJbkU7RUFDRSxrQ0FBMEI7T0FBMUIsNkJBQTBCO1VBQTFCLDBCQUEwQixFQUFBOztBQUc1QjtFQUNFO0lBQ0UsVUFBVTtJQUNWLG1FQUF3RDtZQUF4RCwyREFBd0Q7SUFDeEQseUVBQW1FO1lBQW5FLGlFQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLHdFQUE2RDtZQUE3RCxnRUFBNkQ7SUFDN0Qsc0VBQStEO1lBQS9ELDhEQUErRCxFQUFBLEVBQUE7O0FBVm5FO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsMkRBQXdEO0lBQ3hELG9FQUFtRTtPQUFuRSxpRUFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVixnRUFBNkQ7SUFDN0QsaUVBQStEO09BQS9ELDhEQUErRCxFQUFBLEVBQUE7O0FBVm5FO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsbUVBQXdEO1lBQXhELDJEQUF3RDtJQUN4RCx5RUFBbUU7U0FBbkUsb0VBQW1FO1lBQW5FLGlFQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLHdFQUE2RDtZQUE3RCxnRUFBNkQ7SUFDN0Qsc0VBQStEO1NBQS9ELGlFQUErRDtZQUEvRCw4REFBK0QsRUFBQSxFQUFBOztBQUluRTtFQUNFLG1DQUEyQjtPQUEzQiw4QkFBMkI7VUFBM0IsMkJBQTJCLEVBQUE7O0FBRzdCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsbUVBQXdEO1lBQXhELDJEQUF3RDtJQUN4RCx5RUFBbUU7WUFBbkUsaUVBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1Ysd0VBQTZEO1lBQTdELGdFQUE2RDtJQUM3RCxzRUFBK0Q7WUFBL0QsOERBQStELEVBQUEsRUFBQTs7QUFWbkU7RUFDRTtJQUNFLFVBQVU7SUFDViwyREFBd0Q7SUFDeEQsb0VBQW1FO09BQW5FLGlFQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLGdFQUE2RDtJQUM3RCxpRUFBK0Q7T0FBL0QsOERBQStELEVBQUEsRUFBQTs7QUFWbkU7RUFDRTtJQUNFLFVBQVU7SUFDVixtRUFBd0Q7WUFBeEQsMkRBQXdEO0lBQ3hELHlFQUFtRTtTQUFuRSxvRUFBbUU7WUFBbkUsaUVBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1Ysd0VBQTZEO1lBQTdELGdFQUE2RDtJQUM3RCxzRUFBK0Q7U0FBL0QsaUVBQStEO1lBQS9ELDhEQUErRCxFQUFBLEVBQUE7O0FBSW5FO0VBQ0UsZ0NBQXdCO09BQXhCLDJCQUF3QjtVQUF4Qix3QkFBd0IsRUFBQTs7QUFHMUI7RUFDRTtJQUNFLFVBQVUsRUFBQTtFQUdaO0lBQ0UsVUFBVTtJQUNWLHlDQUE4QjtZQUE5QixpQ0FBOEIsRUFBQTtFQUdoQztJQUNFLFVBQVUsRUFBQSxFQUFBOztBQVhkO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDVixpQ0FBOEIsRUFBQTtFQUdoQztJQUNFLFVBQVUsRUFBQSxFQUFBOztBQVhkO0VBQ0U7SUFDRSxVQUFVLEVBQUE7RUFHWjtJQUNFLFVBQVU7SUFDVix5Q0FBOEI7WUFBOUIsaUNBQThCLEVBQUE7RUFHaEM7SUFDRSxVQUFVLEVBQUEsRUFBQTs7QUFJZDtFQUNFLCtCQUF1QjtPQUF2QiwwQkFBdUI7VUFBdkIsdUJBQXVCLEVBQUE7O0FBR3pCO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysd0VBQTZEO1lBQTdELGdFQUE2RDtJQUM3RCx5RUFBbUU7WUFBbkUsaUVBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YsbUVBQXdEO1lBQXhELDJEQUF3RDtJQUN4RCx1Q0FBK0I7WUFBL0IsK0JBQStCO0lBQy9CLHNFQUErRDtZQUEvRCw4REFBK0QsRUFBQSxFQUFBOztBQVhuRTtFQUNFO0lBQ0UsVUFBVTtJQUNWLGdFQUE2RDtJQUM3RCxvRUFBbUU7T0FBbkUsaUVBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1YsMkRBQXdEO0lBQ3hELGtDQUErQjtPQUEvQiwrQkFBK0I7SUFDL0IsaUVBQStEO09BQS9ELDhEQUErRCxFQUFBLEVBQUE7O0FBWG5FO0VBQ0U7SUFDRSxVQUFVO0lBQ1Ysd0VBQTZEO1lBQTdELGdFQUE2RDtJQUM3RCx5RUFBbUU7U0FBbkUsb0VBQW1FO1lBQW5FLGlFQUFtRSxFQUFBO0VBR3JFO0lBQ0UsVUFBVTtJQUNWLG1FQUF3RDtZQUF4RCwyREFBd0Q7SUFDeEQsdUNBQStCO1NBQS9CLGtDQUErQjtZQUEvQiwrQkFBK0I7SUFDL0Isc0VBQStEO1NBQS9ELGlFQUErRDtZQUEvRCw4REFBK0QsRUFBQSxFQUFBOztBQUluRTtFQUNFLG1DQUEyQjtPQUEzQiw4QkFBMkI7VUFBM0IsMkJBQTJCLEVBQUE7O0FBRzdCO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsdUVBQTREO1lBQTVELCtEQUE0RCxFQUFBO0VBRzlEO0lBQ0UsVUFBVTtJQUNWLHdEQUErQztZQUEvQyxnREFBK0M7SUFDL0MscUNBQTZCO1lBQTdCLDZCQUE2QixFQUFBLEVBQUE7O0FBVGpDO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsK0RBQTRELEVBQUE7RUFHOUQ7SUFDRSxVQUFVO0lBQ1YsZ0RBQStDO0lBQy9DLGdDQUE2QjtPQUE3Qiw2QkFBNkIsRUFBQSxFQUFBOztBQVRqQztFQUNFO0lBQ0UsVUFBVTtJQUNWLHVFQUE0RDtZQUE1RCwrREFBNEQsRUFBQTtFQUc5RDtJQUNFLFVBQVU7SUFDVix3REFBK0M7WUFBL0MsZ0RBQStDO0lBQy9DLHFDQUE2QjtTQUE3QixnQ0FBNkI7WUFBN0IsNkJBQTZCLEVBQUEsRUFBQTs7QUFJakM7RUFDRSxtQ0FBMkI7T0FBM0IsOEJBQTJCO1VBQTNCLDJCQUEyQixFQUFBOztBQUc3QjtFQUNFO0lBQ0UsVUFBVTtJQUNWLHdFQUE2RDtZQUE3RCxnRUFBNkQsRUFBQTtFQUcvRDtJQUNFLFVBQVU7SUFDVix1REFBOEM7WUFBOUMsK0NBQThDO0lBQzlDLHNDQUE4QjtZQUE5Qiw4QkFBOEIsRUFBQSxFQUFBOztBQVRsQztFQUNFO0lBQ0UsVUFBVTtJQUNWLGdFQUE2RCxFQUFBO0VBRy9EO0lBQ0UsVUFBVTtJQUNWLCtDQUE4QztJQUM5QyxpQ0FBOEI7T0FBOUIsOEJBQThCLEVBQUEsRUFBQTs7QUFUbEM7RUFDRTtJQUNFLFVBQVU7SUFDVix3RUFBNkQ7WUFBN0QsZ0VBQTZELEVBQUE7RUFHL0Q7SUFDRSxVQUFVO0lBQ1YsdURBQThDO1lBQTlDLCtDQUE4QztJQUM5QyxzQ0FBOEI7U0FBOUIsaUNBQThCO1lBQTlCLDhCQUE4QixFQUFBLEVBQUE7O0FBSWxDO0VBQ0Usb0NBQTRCO09BQTVCLCtCQUE0QjtVQUE1Qiw0QkFBNEIsRUFBQTs7QUFHOUI7RUFDRTtJQUNFLFVBQVU7SUFDVix1RUFBNEQ7WUFBNUQsK0RBQTREO0lBQzVELHlFQUFtRTtZQUFuRSxpRUFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDVixvRUFBeUQ7WUFBekQsNERBQXlEO0lBQ3pELHVDQUErQjtZQUEvQiwrQkFBK0I7SUFDL0Isc0VBQStEO1lBQS9ELDhEQUErRCxFQUFBLEVBQUE7O0FBWG5FO0VBQ0U7SUFDRSxVQUFVO0lBQ1YsK0RBQTREO0lBQzVELG9FQUFtRTtPQUFuRSxpRUFBbUUsRUFBQTtFQUdyRTtJQUNFLFVBQVU7SUFDViw0REFBeUQ7SUFDekQsa0NBQStCO09BQS9CLCtCQUErQjtJQUMvQixpRUFBK0Q7T0FBL0QsOERBQStELEVBQUEsRUFBQTs7QUFYbkU7RUFDRTtJQUNFLFVBQVU7SUFDVix1RUFBNEQ7WUFBNUQsK0RBQTREO0lBQzVELHlFQUFtRTtTQUFuRSxvRUFBbUU7WUFBbkUsaUVBQW1FLEVBQUE7RUFHckU7SUFDRSxVQUFVO0lBQ1Ysb0VBQXlEO1lBQXpELDREQUF5RDtJQUN6RCx1Q0FBK0I7U0FBL0Isa0NBQStCO1lBQS9CLCtCQUErQjtJQUMvQixzRUFBK0Q7U0FBL0QsaUVBQStEO1lBQS9ELDhEQUErRCxFQUFBLEVBQUE7O0FBSW5FO0VBQ0UsaUNBQXlCO09BQXpCLDRCQUF5QjtVQUF6Qix5QkFBeUIsRUFBQTs7QUFHM0I7RUFDRTtJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsbUJBQW1CLEVBQUE7RUFHckI7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUEsRUFBQTs7QUFQbkM7RUFDRTtJQUNFLG1DQUFtQztJQUNuQyxtQkFBbUIsRUFBQTtFQUdyQjtJQUNFLCtCQUErQixFQUFBLEVBQUE7O0FBUG5DO0VBQ0U7SUFDRSwyQ0FBbUM7WUFBbkMsbUNBQW1DO0lBQ25DLG1CQUFtQixFQUFBO0VBR3JCO0lBQ0UsdUNBQStCO1lBQS9CLCtCQUErQixFQUFBLEVBQUE7O0FBSW5DO0VBQ0UsbUNBQTJCO09BQTNCLDhCQUEyQjtVQUEzQiwyQkFBMkIsRUFBQTs7QUFHN0I7RUFDRTtJQUNFLDJDQUFtQztZQUFuQyxtQ0FBbUM7SUFDbkMsbUJBQW1CLEVBQUE7RUFHckI7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUEsRUFBQTs7QUFQbkM7RUFDRTtJQUNFLG1DQUFtQztJQUNuQyxtQkFBbUIsRUFBQTtFQUdyQjtJQUNFLCtCQUErQixFQUFBLEVBQUE7O0FBUG5DO0VBQ0U7SUFDRSwyQ0FBbUM7WUFBbkMsbUNBQW1DO0lBQ25DLG1CQUFtQixFQUFBO0VBR3JCO0lBQ0UsdUNBQStCO1lBQS9CLCtCQUErQixFQUFBLEVBQUE7O0FBSW5DO0VBQ0UsbUNBQTJCO09BQTNCLDhCQUEyQjtVQUEzQiwyQkFBMkIsRUFBQTs7QUFHN0I7RUFDRTtJQUNFLDBDQUFrQztZQUFsQyxrQ0FBa0M7SUFDbEMsbUJBQW1CLEVBQUE7RUFHckI7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUEsRUFBQTs7QUFQbkM7RUFDRTtJQUNFLGtDQUFrQztJQUNsQyxtQkFBbUIsRUFBQTtFQUdyQjtJQUNFLCtCQUErQixFQUFBLEVBQUE7O0FBUG5DO0VBQ0U7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDO0lBQ2xDLG1CQUFtQixFQUFBO0VBR3JCO0lBQ0UsdUNBQStCO1lBQS9CLCtCQUErQixFQUFBLEVBQUE7O0FBSW5DO0VBQ0Usb0NBQTRCO09BQTVCLCtCQUE0QjtVQUE1Qiw0QkFBNEIsRUFBQTs7QUFHOUI7RUFDRTtJQUNFLDBDQUFrQztZQUFsQyxrQ0FBa0M7SUFDbEMsbUJBQW1CLEVBQUE7RUFHckI7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUEsRUFBQTs7QUFQbkM7RUFDRTtJQUNFLGtDQUFrQztJQUNsQyxtQkFBbUIsRUFBQTtFQUdyQjtJQUNFLCtCQUErQixFQUFBLEVBQUE7O0FBUG5DO0VBQ0U7SUFDRSwwQ0FBa0M7WUFBbEMsa0NBQWtDO0lBQ2xDLG1CQUFtQixFQUFBO0VBR3JCO0lBQ0UsdUNBQStCO1lBQS9CLCtCQUErQixFQUFBLEVBQUE7O0FBSW5DO0VBQ0UsaUNBQXlCO09BQXpCLDRCQUF5QjtVQUF6Qix5QkFBeUIsRUFBQTs7QUFHM0I7RUFDRTtJQUNFLHVDQUErQjtZQUEvQiwrQkFBK0IsRUFBQTtFQUdqQztJQUNFLGtCQUFrQjtJQUNsQiwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUEsRUFBQTs7QUFQdEM7RUFDRTtJQUNFLCtCQUErQixFQUFBO0VBR2pDO0lBQ0Usa0JBQWtCO0lBQ2xCLGtDQUFrQyxFQUFBLEVBQUE7O0FBUHRDO0VBQ0U7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUE7RUFHakM7SUFDRSxrQkFBa0I7SUFDbEIsMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBLEVBQUE7O0FBSXRDO0VBQ0Usb0NBQTRCO09BQTVCLCtCQUE0QjtVQUE1Qiw0QkFBNEIsRUFBQTs7QUFHOUI7RUFDRTtJQUNFLHVDQUErQjtZQUEvQiwrQkFBK0IsRUFBQTtFQUdqQztJQUNFLGtCQUFrQjtJQUNsQiwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUEsRUFBQTs7QUFQdkM7RUFDRTtJQUNFLCtCQUErQixFQUFBO0VBR2pDO0lBQ0Usa0JBQWtCO0lBQ2xCLG1DQUFtQyxFQUFBLEVBQUE7O0FBUHZDO0VBQ0U7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUE7RUFHakM7SUFDRSxrQkFBa0I7SUFDbEIsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBLEVBQUE7O0FBSXZDO0VBQ0Usb0NBQTRCO09BQTVCLCtCQUE0QjtVQUE1Qiw0QkFBNEIsRUFBQTs7QUFHOUI7RUFDRTtJQUNFLHVDQUErQjtZQUEvQiwrQkFBK0IsRUFBQTtFQUdqQztJQUNFLGtCQUFrQjtJQUNsQiwwQ0FBa0M7WUFBbEMsa0NBQWtDLEVBQUEsRUFBQTs7QUFQdEM7RUFDRTtJQUNFLCtCQUErQixFQUFBO0VBR2pDO0lBQ0Usa0JBQWtCO0lBQ2xCLGtDQUFrQyxFQUFBLEVBQUE7O0FBUHRDO0VBQ0U7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUE7RUFHakM7SUFDRSxrQkFBa0I7SUFDbEIsMENBQWtDO1lBQWxDLGtDQUFrQyxFQUFBLEVBQUE7O0FBSXRDO0VBQ0UscUNBQTZCO09BQTdCLGdDQUE2QjtVQUE3Qiw2QkFBNkIsRUFBQTs7QUFHL0I7RUFDRTtJQUNFLHVDQUErQjtZQUEvQiwrQkFBK0IsRUFBQTtFQUdqQztJQUNFLGtCQUFrQjtJQUNsQiwyQ0FBbUM7WUFBbkMsbUNBQW1DLEVBQUEsRUFBQTs7QUFQdkM7RUFDRTtJQUNFLCtCQUErQixFQUFBO0VBR2pDO0lBQ0Usa0JBQWtCO0lBQ2xCLG1DQUFtQyxFQUFBLEVBQUE7O0FBUHZDO0VBQ0U7SUFDRSx1Q0FBK0I7WUFBL0IsK0JBQStCLEVBQUE7RUFHakM7SUFDRSxrQkFBa0I7SUFDbEIsMkNBQW1DO1lBQW5DLG1DQUFtQyxFQUFBLEVBQUE7O0FBSXZDO0VBQ0Usa0NBQTBCO09BQTFCLDZCQUEwQjtVQUExQiwwQkFBMEIsRUFBQTs7QUNyaUQ1QjtFQUVDLGFBQWE7RUFDYix5QkpId0I7RUlJeEIsa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQix5QkpQc0I7RUlRdEIsV0FBVyxFQUFBOztBQUdaO0VBR0csY0FBYztFQUNkLGFBQWE7RUFDYixtQkFBbUI7RUFDbkIseUJKakJvQixFQUFBOztBSVd2QjtFQVdHLGNBQWM7RUFDZCxpQkFBaUIsRUFBQTs7QUFacEI7RUFnQkcsV0FBVyxFQUFBOztBSk9kO0VBQ0MsaUJBQWlCO0VBQ2pCLGNBcENzQixFQUFBOztBQXdDdkI7RUFDQyxhQUFhLEVBQUE7O0FBT2Q7RUFDSTtJQUF1QyxXQUFVLEVBQUE7RUFDakQ7SUFBc0MsV0FBVSxFQUFBO0VBQ2hEO0lBQXNDLFdBQVUsRUFBQTtFQUNoRDtJQUFzQyxXQUFVLEVBQUE7RUFDaEQ7SUFBcUMsV0FBVSxFQUFBO0VBRS9DO0lBQ0MsU0FBUyxFQUFBLEVBQ1Q7O0FBR0w7RUFDSTtJQUF1QyxXQUFVLEVBQUE7RUFDakQ7SUFBc0MsV0FBVSxFQUFBO0VBQ2hEO0lBQXNDLFdBQVUsRUFBQTtFQUNoRDtJQUFzQyxXQUFVLEVBQUE7RUFDaEQ7SUFBcUMsV0FBVSxFQUFBO0VBRTdDO0lBQ0QsUUFBUSxFQUFBLEVBQ1I7O0FBR0w7RUFDSTtJQUF1QyxXQUFVLEVBQUE7RUFDakQ7SUFBc0MsV0FBVSxFQUFBO0VBQ2hEO0lBQXNDLFdBQVUsRUFBQTtFQUNoRDtJQUFzQyxXQUFVLEVBQUE7RUFDaEQ7SUFBcUMsV0FBVSxFQUFBO0VBRTdDO0lBQ0QsUUFBUSxFQUFBO0VBR1Q7SUFDQyxhQUFhLEVBQUEsRUFDYjs7QUFHTDtFQUNJO0lBQXVDLFdBQVUsRUFBQTtFQUNqRDtJQUFzQyxXQUFVLEVBQUE7RUFDaEQ7SUFBc0MsV0FBVSxFQUFBO0VBQ2hEO0lBQXNDLFdBQVUsRUFBQTtFQUNoRDtJQUFxQyxXQUFVLEVBQUE7RUFFN0M7SUFDRCxRQUFRLEVBQUEsRUFDUjs7QUFLTDtFQUNDLGNBQWMsRUFBQTs7QUFJZjtFQUNHLGtCQUFpQixFQUFBOztBQUlwQjtFQUNHLHFCQUFvQjtFQUNwQixXQUFVO0VBQ1YseUJBQUE7RUFDQSxnQkFBZTtFQUNmLDJCQUFBO0VBQ0Esa0JBQWlCLEVBQUE7O0FBNkJwQjtFQUVJO0lBQ0MsWUFBWSxFQUFBO0VBR2I7SUFDQyx3QkFBd0IsRUFBQTtFQUkxQjtJQUdFLGNBQWMsRUFBQTtFQUtkO0lBRUQsWUFBWSxFQUFBO0lBRlg7TUFLRCx5QkFBMEIsRUFBQTtJQUx6QjtNQVNBLHlCQUF5QjtNQUN6QixpQkFBaUIsRUFBQTtFQVFsQjtJQUNDLGVBQWUsRUFBQTtJQURoQjtNQUlFLGFBQWE7TUFDaEIsb0JBQWlCO1NBQWpCLGlCQUFpQixFQUFBO0VBS2Y7SUFDQyxhQUFhLEVBQUE7RUFHZjtJQUNJLGFBQWEsRUFBQTtFQUdqQjtJQUNDLDRCQUFrQyxFQUFBO0VBZXRDO0lBR0UsYUFBYSxFQUFBO0VBSWY7SUFDQSxZQUFZLEVBQUEsRUFDWDs7QUFLRjtFQUNJLGdCQUFlO0VBQ2Ysc0JBQXFCO0VBQ3JCLGtCQUFpQjtFQUNqQixTQUFRLEVBQUE7O0FBRVo7RUFDSSxPQUFNO0VBQ04sTUFBSztFQUNMLFlBQVc7RUFDWCxXQUFVO0VBQ1Ysa0JBQWlCLEVBQUE7O0FBTXJCO0VBRUM7SUFDQyxZQUFZLEVBQUE7RUFHYjtJQUNFLGFBQWEsRUFBQTtFQUdmO0lBQ0MsYUFBYSxFQUFBO0VBUWI7SUFDSSxhQUFhLEVBQUE7RUFHZDtJQUVELFlBQVksRUFBQTtJQUZYO01BS0QseUJBQTBCLEVBQUE7SUFMekI7TUFTQSx5QkFBeUI7TUFDekIsaUJBQWlCLEVBQUEsRUFDaEI7O0FBU047RUFFQztJQUNDLGFBQWEsRUFBQTtFQUdkO0lBQ0UsYUFBYSxFQUFBO0VBR2Y7SUFDQSxXQUFXLEVBQUEsRUFHVjs7QUFXRjtFQUdDLHlCQWhVc0I7RUFpVXRCLFdBQVc7RUFDWCxpQkFBaUI7RUFDakIsZ0NBQW9ELEVBQUE7RUFOckQ7SUFRRSxXQUFXO0lBQ1gsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsaUJBQWlCO0lBQ2pCLGtCQUFrQixFQUFBOztBQVFwQjtFQUNHLHFCQUFxQjtFQUNyQixvQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNYLDJCQUEyQjtFQUM3Qix5QkFBbUI7TUFBbkIsc0JBQW1CO1VBQW5CLG1CQUFtQjtFQUNuQiwrQkFBK0I7RUFDL0Isd0JBQXVCO01BQXZCLHFCQUF1QjtVQUF2Qix1QkFBdUIsRUFBQTs7QUFJMUI7RUFDQyxhQUFhLEVBQUE7O0FBR2Q7RUFDQyxhQUFhLEVBQUE7O0FBR2Q7RUFDQyxhQUFhLEVBQUE7RUFEZDtJQUlFLHlCQXRXa0I7SUF1V2xCLGFBQWE7SUFDYixtQkFBbUIsRUFBQTtFQU5yQjtJQVdFLDhCQUFxQjtTQUFyQix5QkFBcUI7WUFBckIsc0JBQXFCLEVBQUE7O0FBS3ZCO0VBR0Usc0JBQXNCO0VBQ3RCLGFBQWE7RUFDYixtQkFBbUIsRUFBQTs7QUFLckI7RUFDQyxrQkFBa0IsRUFBQTs7QUFHbkI7RUFDQyxzQkFBc0IsRUFBQTs7QUFJdkI7O0VBR0MseUJBMVlzQixFQUFBOztBQWdadkI7RUFDSSx5QkFqWm1CO0VBa1puQixXQUFXLEVBQUE7O0FBR2Y7RUFDSSx5QkF0Wm1CLEVBQUE7O0FBeVp2QjtFQUNJLDJCQTFabUIsRUFBQTs7QUE2WnZCO0VBQ0ksNEJBOVptQixFQUFBOztBQWlhdkI7RUFDSSwwQkFsYW1CLEVBQUE7O0FBdWF2QjtFQUNDLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsZ0JBQWdCLEVBQUE7O0FBR2pCO0VBQ0MsbUJBQW1CLEVBQUE7O0FBR3BCO0VBQ0MsdUJBQXVCLEVBQUE7O0FBUXhCO0VBQ0MsY0FBYztFQUNkLGVBQWUsRUFBQTs7QUFLaEI7RUFDRSx1Q0FBK0I7RUFBL0Isa0NBQStCO0VBQS9CLCtCQUErQjtFQUMvQixpQkFBaUI7RUFDakIsYUFBYTtFQUNiLGtCQUFrQixFQUFBO0VBSnBCO0lBT0csaUJBQWlCLEVBQUE7RUFQcEI7SUFXRyxlQUFlLEVBQUE7RUFYbEI7SUFlRSx5QkE5Y2tCLEVBQUE7O0FBZ2VwQjtFQUNDLFVBQVUsRUFBQTs7QUFHWDtFQUNDLGNBQWM7RUFuV2IsZUFvV3FCO0VBbldyQixtQkFQeUIsRUFBQTs7QUE4VzNCO0VBQ0MsY0E3ZXNCO0VBOGV0QixpQkFBaUI7RUFDakIsZ0NBQWdDLEVBQUE7O0FBR2pDO0VBRUMsMEJBQTBCLEVBQUE7O0FBRzNCOzs7Ozs7Q0MrM0JDO0FEdjNCRDtFQTNYRSxlQTRYcUI7RUEzWHJCLGVBUHlCLEVBQUE7O0FBc1kzQjtFQUVDLGlCQUFpQjtFQUNqQixlQUFlO0VBbllkLGVBcVlxQjtFQXBZckIsZUFQeUI7RUE0WTFCLGNBQThCO0VBQzlCLGdCQUFnQixFQUFBOztBQUtqQjtFQUVHLGdCQUFnQixFQUFBOztBQUluQjtFQUNDLHNDQUFzQztFQUVwQyxpQ0FBaUM7RUFDakMsOEJBQThCO0VBQzlCLG1CQUFtQixFQUFBOztBQUl0QjtFQUNDLGtCQUFrQjtFQUNsQixjQWppQnNCO0VBa2lCdEIsaUJBQWlCO0VBQ2pCLCtCQUF1QjtFQUF2QiwwQkFBdUI7RUFBdkIsdUJBQXVCO0VBQ3ZCLGtCQUFrQjtFQUNsQix5Q0FBeUM7RUFFekMsb0NBQW9DO0VBQ3BDLGlDQUFpQztFQUNqQyxtQkFBbUIsRUFBQTs7QUFHcEI7RUFDQyxXQUFXO0VBQ1gsbUJBQW1CLEVBQUE7O0FBUXBCO0VBRUMsOEJBdGpCbUI7RUF1akJuQixrQkFBa0IsRUFBQTs7QUFVbEI7RUFHRCxrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLGlCQUFpQjtFQUNqQixXQUFXO0VBQ1gsV0FBVztFQUNYLFdBQVc7RUFDWCxjQUFjLEVBQUE7RUFUYjtJQVlFLFdBQVc7SUEzY1osZUE0Y3VCO0lBM2N2QixtQkFQeUI7SUFtZHhCLDRDQUE0QyxFQUFBO0VBZDlDO0lBa0JDLHlCQXJsQnFCO0lBc2xCckIsVUFBVTtJQUNWLFdBQVc7SUFDWCxlQUFlO0lBQ2YsZ0JBQWdCO0lBQ2hCLGtCQUFrQjtJQUNsQixhQUFhLEVBQUE7O0FBS2Q7RUFFQywwQkFBMEI7RUFDMUIsbUJBQW1CO0VBQ25CLHNCQUFzQjtFQUN0QixXQUFXO0VBQ1gsc0JBQXNCO0VBQ3RCLGVBQWM7RUFDZCxxQkFBcUIsRUFBQTtFQVJ0QjtJQVdHLHNCQUFzQjtJQUN0QixjQTVtQm1CO0lBNm1CbkIscUJBQXFCLEVBQUE7RUFieEI7SUFpQkcsV0FBVyxFQUFBOztBQUtmO0VBRUMsa0JBQWtCO0VBQ2xCLFVBQVU7RUFDVixZQUFZO0VBQ1osa0JBQWtCO0VBQ2xCLGdCQUFnQjtFQUNoQixXQUFXLEVBQUE7O0FBVVo7RUFDQyxzQkFBc0I7RUFDdEIsY0E5bUJlO0VBK21CZixXQUFXO0VBQ1gsY0FBYyxFQUFBO0VBSmY7SUFPRSxXQUFXO0lBQ1gsWUFBWTtJQUNaLGVBQWU7SUE1Z0JmLGVBNmdCc0I7SUE1Z0J0QixtQkFQeUIsRUFBQTtFQXlnQjNCO0lBY0UsV0FBVztJQUNYLGlCQUFpQixFQUFBO0VBZm5CO0lBbUJFLFdBQVc7SUFDWCxpQkFBaUIsRUFBQTs7QUFNbkI7RUFDQyxlQXRvQlU7RUF3b0JWLGFBQWEsRUFBQTs7QUFRZDtFQUNDLGtCQUFrQjtFQUNsQixXQUFXLEVBQUE7O0FBUVo7RUFDQywwQkFBa0I7RUFBbEIscUJBQWtCO0VBQWxCLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFFaEIsWUFBWTtFQUtaLG1CQUFtQjtFQUNuQixnQkFBZ0IsRUFBQTtFQVZqQjtJQWFFLHFCQUFxQjtJQUNyQixrQkFBa0I7SUFDbEIsZ0JBQWdCO0lBQ2hCLGtCQUFpQixFQUFBO0VBaEJuQjtJQW9CRSx5QkF4c0JrQixFQUFBO0lBb3JCcEI7TUF1Qkcsa0NBQWtDLEVBQUE7RUF2QnJDO0lBOEJFLHlCQWx0QmtCO0lBbXRCbEIsbUJBQW1CLEVBQUE7O0FBUXJCO0VBQ0Msa0NBQXVCO09BQXZCLDZCQUF1QjtVQUF2QiwwQkFBdUIsRUFBQTs7QUFLeEI7RUFDRSxrQkFBa0I7RUFDbEIscUJBQW9CLEVBQUE7O0FBR3RCO0VBQ0UsV0FBVztFQUNYLHFCQUFxQjtFQUNyQixZQUFZO0VBQ1osc0JBQXNCO0VBQ3RCLGtCQUFrQjtFQUFFLHdCQUFBLEVBQXlCOztBQUcvQztFQUNFLHFCQUFxQjtFQUNyQixnQkFBZ0I7RUFDaEIsc0JBQXNCLEVBQUE7O0FBSXhCO0VBQ0MsZ0JBQWdCO0VBRWhCLGtCQUFrQjtFQUNsQixZQUFZO0VBQ1osd0JBQWdCO1VBQWhCLGdCQUFnQjtFQUNoQixZQUFZO0VBQ1osZUFBZTtFQUNmLGdCQUFnQjtFQUNoQixpQkFBaUI7RUFDakIsV0FBVyxFQUFBOztBQUdaO0VBQ0UsV0FBVyxFQUFBOztBQUdiO0VBR0MsZUFBZSxFQUFBOztBQUdoQjtFQUNDLGNBL3dCc0I7RUFneEJ0QixlQUFlLEVBQUE7O0FBT2hCO0VBRUUsZ0JBQWdCO0VBQ2hCLFlBQVksRUFBQTs7QUFZZDtFQUdDLHlCQUE2QztFQUM3QyxZQUFZO0VBQ1osY0FBYztFQUdkLGtCQUFrQjtFQUNsQix5QkFBZ0MsRUFBQTtFQVRqQztJQVlFLGNBN3lCc0IsRUFBQTtFQWl5QnhCO0lBaUJFLGNBbHpCc0IsRUFBQTtFQWl5QnhCO0lBc0JFLGNBNXpCcUIsRUFBQTs7QUF5MEJ2QjtFQUVDLHlCQUE4QztFQUM5QyxjQUFjO0VBQ2QsaUJBQWlCO0VBQ2pCLG1CQUFtQjtFQUNuQixnQ0FBcUQ7RUFDckQsa0JBQWtCO0VBQ2xCLFVBQVM7RUFDVCxvQkFBb0IsRUFBQTtFQVRyQjtJQWdCRSxrQkFBa0I7SUFDbEIsZ0JBQWdCLEVBQUE7SUFqQmxCO01Bb0JFLGVBQWUsRUFBQTs7QUFhakI7RUFDQyxXQUFXO0VBQ1gseUJBNTJCc0I7RUE2MkJ0Qix5QkF6MkJ1QjtFQTAyQnZCLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCw2QkFBa0Q7RUFDbEQsa0JBQWtCLEVBQUE7RUFUbkI7SUFjRyxXQUFXLEVBQUE7RUFkZDtJQWtCRSxlQUFlO0lBQ2YsYUFBYSxFQUFBOztBQUtmO0VBQ0Usb0JBQWE7RUFBYixxQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLHdCQUF1QjtFQUF2QiwrQkFBdUI7TUFBdkIscUJBQXVCO1VBQXZCLHVCQUF1QixFQUFBOztBQUl6QjtFQUNDLGNBcDRCdUI7RUFxNEJ2Qix5QkF0NEJ1QjtFQXU0QnZCLFlBQVk7RUFDWixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLFdBQVc7RUFDWCw2QkFBa0QsRUFBQTtFQVBuRDtJQVVFLGNBNzRCc0IsRUFBQTs7QUFpNUJ4QjtFQUlBLGlCQUFpQjtFQUNoQixtQkFBbUIsRUFBQTs7QUFPcEI7RUFDQyxxQkFBcUIsRUFBQTs7QUFRdEI7RUFFQyxzQkFBc0I7RUFHdEIsa0JBQWtCLEVBQUE7O0FBZW5CO0VBR0MsbUJBQW1CLEVBQUE7O0FBTXBCO0VBQ0Msa0JBQWtCLEVBQUE7RUFEbkI7SUFJQyxrQkFBa0I7SUFDbEIsbUJBQW1CO0lBQ25CLG9CQUFvQixFQUFBOztBQVNyQjtFQU9FLGNBQWMsRUFBQTs7QUFQaEI7RUFXRSxXQUFXO0VBQ1gsWUFBWSxFQUFBOztBQVNkO0VBQ0MsaUJBbjlCaUIsRUFBQTs7QUF1OUJsQjtFQUdDLGFBQWEsRUFBQTtFQUhkO0lBTUUsWUFBWSxFQUFBO0lBTmQ7TUFTRSxhQTEvQnFCLEVBQUE7O0FBc2dDdkI7RUFDQyxjQUFpQztFQUNqQyxpQkFBaUI7RUFDakIsMEJBQWtCO0VBQWxCLHFCQUFrQjtFQUFsQixrQkFBa0IsRUFBQTtFQUhuQjtJQU9FLFdBQVcsRUFBQTtFQVBiO0lBV0UscUJBQXFCO0lBQ3BCLHlCQWxoQ29CO0lBbWhDcEIsOEJBQThCO0lBQzlCLGFBQWE7SUFDYiwwQkFBa0I7SUFBbEIscUJBQWtCO0lBQWxCLGtCQUFrQixFQUFBO0VBZnJCO0lBbUJDLHVCQUF1QjtJQUN2Qix5QkFBNEMsRUFBQTs7QUFLN0M7RUFDQyxXQUFXO0VBQ1gsZUFBZSxFQUFBOztBQUloQjtFQUNDLGFBcmlDd0IsRUFBQTs7QUEyaUN6QjtFQUNBLG1CQTdpQ3VCLEVBQUE7O0FBbWpDdkI7RUFDQyx5QkFBd0M7RUFDeEMsa0JBQWtCO0VBSWxCLG9CQUFvQixFQUFBO0VBTnJCO0lBU0UsZ0NBQStDO0lBQy9DLG1CQUFtQjtJQUNuQixrQkFBa0I7SUFDbEIseUJBQXlDO0lBQ3pDLFlBQVk7SUFDWiwyQkFBMkI7SUFDM0IsNEJBQTRCO0lBQzVCLGtCQUFrQixFQUFBO0VBaEJwQjtJQXFCRSw0QkFBNEIsRUFBQTtFQXJCOUI7SUE2QkUsOEJBQThCO0lBQzlCLG1CQUFtQjtJQUNuQixrQkFBa0IsRUFBQTs7QUFPcEI7RUFFQSxtQkEzbEN1QjtFQTRsQ3RCLFdBQVc7RUFDWCxrQkFBa0I7RUFFbEIsWUFBWTtFQUNaLG1CQUFtQjtFQUNuQiw2QkFBaUQsRUFBQTtFQVJsRDtJQVdFLG1CQUFtQjtJQUNuQixvQkFBb0IsRUFBQTtFQVp0QjtJQWlCRSxhQUFhO0lBQ2IsV0FBVztJQUNYLGtCQUFrQjtJQUNsQixlQUFlLEVBQUE7SUFwQmpCO01BdUJHLHNCQUFzQjtNQUN0QixrQkFBa0I7TUFDbEIsY0FsbkNvQixFQUFBO0VBeWxDdkI7SUErQkUsbUJBQW1CLEVBQUE7RUEvQnJCO0lBbUNFLFdBQVc7SUFDWCxtQkFBbUIsRUFBQTtFQXBDckI7SUEwQ0Usa0JBQWtCLEVBQUE7SUExQ3BCO01BNkNFLHFCQUFxQjtNQUNyQixnQkFBZ0I7TUFDaEIsYUFBYSxFQUFBO01BL0NmO1FBa0RJLGtCQUFrQjtRQUNsQix5QkE1b0NtQixFQUFBO0lBeWxDdkI7TUEwREcsMEJBQTBCO01BQzFCLFlBQVksRUFBQTtNQTNEZjtRQThESyxrQkFBa0I7UUFDbEIseUJBeHBDa0IsRUFBQTtFQXlsQ3ZCO0lBeUVFLDJCQUEyQjtJQUMzQixZQUFZLEVBQUE7RUExRWQ7SUE4RUUsV0FBVyxFQUFBO0VBOUViO0lBbUZFLFdBQVc7SUFDWCxxQkFBcUIsRUFBQTtFQXBGdkI7SUF1RkUsV0FBVyxFQUFBO0VBdkZiO0lBMEZFLFdBQVcsRUFBQTs7QUFJYjtFQUNDLGVBQWUsRUFBQTs7QUFHaEI7RUFFQyxtQkE3ckNzQjtFQThyQ3RCLFdBQVcsRUFBQTs7QUFVWjtFQUNDLGlCQUFpQjtFQUNqQiw4QkF6c0N3QixFQUFBO0VBdXNDekI7SUFLRSwyQkFBMkI7SUFDM0IsOEJBQThCLEVBQUE7O0FBSWhDO0VBQ0MseUJBQXlCO0VBQ3pCLGtCQUFrQjtFQUNsQix5QkFudENtQjtFQW90Q25CLGFBQWE7RUFDYixtQkFBbUIsRUFBQTtFQUxwQjtJQVFFLFdBQVc7SUFDWCxnQ0F6dENrQixFQUFBO0VBZ3RDcEI7SUFhRSx5QkFBeUIsRUFBQTtFQWIzQjtJQWlCRSw2QkFqdUNrQjtJQWt1Q2xCLGlCQUFpQixFQUFBO0VBbEJuQjtJQXdCRSxZQUFZLEVBQUE7RUF4QmQ7SUE0QkUsVUFBVSxFQUFBOztBQVNaO0VBQ0MseUJBQXlCO0VBQ3pCLDZCQUFpQztFQUNqQyxrQkFBa0IsRUFBQTs7QUFJbkI7RUFFQyxhQUFhO0VBQ2Isa0JBQWtCO0VBQ2xCLHlCQWh3Q21CO0VBaXdDbkIsZ0JBQWdCO0VBSWhCLGNBQWM7RUFDZCx5QkF4d0NzQjtFQXl3Q3JCLHNCQUF5QztFQUN6QyxXQUFXO0VBS1gsa0JBQWtCO0VBQ25CLGVBQWUsRUFBQTtFQWxCaEI7SUF1QkMsaUNBQWlDO0lBQ2pDLG1CQUFtQixFQUFBO0lBeEJwQjtNQTRCQyxpQ0FBaUM7TUFDakMsbUJBQW1CLEVBQUE7RUE3QnBCO0lBc0NFLHlCQXB5Q3FCO0lBcXlDckIsc0JBQXlDO0lBQ3pDLFdBQVc7SUFDWCxXQUFXO0lBQ1gsa0JBQWtCO0lBQ2xCLFVBQVU7SUFDVixVQUFVO0lBQ1Ysa0JBQWtCLEVBQUE7SUE3Q3BCO01BZ0RHLFVBQVUsRUFBQTtJQWhEYjtNQW9ERyx5QkFsekNvQixFQUFBO0VBOHZDdkI7SUEwREUsY0F4ekNxQjtJQXl6Q3JCLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsaUJBQWlCLEVBQUE7O0FBVW5CO0VBRUMseUJBQThCO0VBbnNDN0IsZUFvc0NxQjtFQW5zQ3JCLG1CQVB5QixFQUFBO0VBdXNDM0I7SUFNRSwwQkFBMEI7SUFDMUIsZ0NBMTBDa0IsRUFBQTtFQW0wQ3BCO0lBV0UseUJBQTBDLEVBQUE7RUFYNUM7SUFlRSxpQkFBaUIsRUFBQTtFQWZuQjtJQW1CRSxtQkFBbUIsRUFBQTs7QUFVckI7RUFDQyxrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLHlCQUF5QztFQUN6QyxZQUFZLEVBQUE7RUFKYjtJQU9FLHlCQUEwQyxFQUFBOztBQUs1QztFQUNDLG1CQUFtQjtFQUNuQixvQkFBb0IsRUFBQTs7QUFHckI7RUFDQyxhQUFhO0VBQ2IsaUJBQWlCO0VBQ2pCLHNCQUFzQjtFQUN0QixjQUFjO0VBQ2QsZUFBZSxFQUFBOztBQUdoQjtFQUNDLG1CQUFtQjtFQUNuQixvQkFBb0IsRUFBQTs7QUFJckI7RUFDQyxvQkFBb0I7RUFDcEIsZ0JBQWdCO0VBRWhCLGtCQUFrQixFQUFBO0VBSm5CO0lBT0Msb0JBQW9CO0lBQ3BCLGdCQUFnQixFQUFBO0VBUmpCO0lBWUUsOEJBQXFCO1NBQXJCLHlCQUFxQjtZQUFyQixzQkFBcUIsRUFBQTs7QUFLdkI7RUFFQyxtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBRWhCLGtCQUFrQixFQUFBO0VBTG5CO0lBUUUsc0JBQXNCLEVBQUE7RUFSeEI7SUFZQyxtQkFBbUI7SUFDbkIsZ0JBQWdCLEVBQUE7RUFiakI7SUFpQkUsOEJBQXFCO1NBQXJCLHlCQUFxQjtZQUFyQixzQkFBcUIsRUFBQTs7QUFJdkI7RUFFQyxtQkFBbUI7RUFDbkIsZ0JBQWdCO0VBRWhCLGtCQUFrQixFQUFBO0VBTG5CO0lBUUUsc0JBQXNCLEVBQUE7RUFSeEI7SUFZQyxtQkFBbUI7SUFDbkIsZ0JBQWdCLEVBQUE7RUFiakI7SUFpQkUsOEJBQXFCO1NBQXJCLHlCQUFxQjtZQUFyQixzQkFBcUIsRUFBQTs7QUFVdkI7RUFDRSxrQkFBa0IsRUFBQTs7QUFHcEI7RUFDQyxnQ0FyOENtQjtFQXM4Q25CLGtCQUFrQjtFQUNsQixjQUFjLEVBQUE7RUFIZjtJQU9FLHlCQTM4Q2tCO0lBNDhDbEIsa0JBQWtCO0lBQ2xCLFlBQVksRUFBQTtFQVRkO0lBbDBDRSxlQWcxQ3NCO0lBLzBDdEIsb0JBUHlCO0lBdTFDekIsNEJBQTRCLEVBQUE7RUFmOUI7SUFxQkUsZUFBZTtJQUNmLG9CQUFvQixFQUFBO0lBdEJ0QjtNQXlCRyxjQS85Q29CLEVBQUE7RUFzOEN2QjtJQWdDRSxjQXQrQ3FCLEVBQUE7RUFzOEN2QjtJQXlDQyxZQUFZO0lBQ1osbUJBQW1CLEVBQUE7SUExQ3BCO01BNkNDLFlBQVcsRUFBQTtJQTdDWjtNQWtERSw4QkFBcUI7V0FBckIseUJBQXFCO2NBQXJCLHNCQUFxQixFQUFBO0VBbER2QjtJQWwwQ0UsZUEwM0NzQjtJQXozQ3RCLG1CQVB5QjtJQWk0Q3pCLGNBQStCLEVBQUE7O0FBS2pDO0VBQ0MsWUFBWTtFQUNaLG1CQUFtQixFQUFBO0VBRnBCO0lBS0MsWUFBVyxFQUFBOztBQUtaO0VBQ0MsWUFBWTtFQUNaLG1CQUFtQixFQUFBOztBQUtwQjtFQUNDLFlBQVk7RUFDWixtQkFBbUI7RUFDbkIsVUFBVTtFQUNWLFlBQVksRUFBQTtFQUpiO0lBUUMseUJBN2hEc0IsRUFBQTs7QUFraUR2QjtFQUNDLFlBQVk7RUFDWixrQkFBa0I7RUFDbEIsZ0JBQWdCLEVBQUE7RUFIakI7SUFPQyxzQkFBc0I7SUFDdEIsZUFBZSxFQUFBO0VBUmhCO0lBWUUsOEJBQXFCO1NBQXJCLHlCQUFxQjtZQUFyQixzQkFBcUIsRUFBQTs7QUFRdkI7RUFDQyxnQ0FyakRtQjtFQXNqRG5CLGtCQUFrQjtFQUNsQixXQUFXO0VBQ1gsY0FBYztFQUNkLG1CQUFtQixFQUFBO0VBTHBCO0lBUUUsdUJBQTJDLEVBQUE7RUFSN0M7SUFZRSw4QkFBOEI7SUFDOUIsdUJBQXVCLEVBQUE7O0FBUXpCO0VBQ0MsV0FBVztFQUlYLFVBQVU7RUFDVixhQUFhO0VBQ2Isc0JBQXNCLEVBQUE7RUFQdkI7SUFVRSxrQkFBa0I7SUFDbEIseUJBQTBDLEVBQUE7RUFYNUM7SUFlRSxXQUFXO0lBQ1gsa0JBQWtCLEVBQUE7RUFoQnBCO0lBb0JFLFlBQVk7SUFDWixhQUFhLEVBQUE7RUFyQmY7SUF2OENFLGVBZytDc0I7SUEvOUN0QixrQkFQeUI7SUF1K0N6QixnQkFBZ0I7SUFDaEIsY0FBYyxFQUFBO0VBM0JoQjtJQStCRSxXQUFXO0lBQ1gsY0FBYztJQUNkLGNBNW1EcUI7SUE2bURyQiw2QkEzbURrQjtJQTRtRGxCLGVBQWUsRUFBQTtFQW5DakI7SUF1Q0UscUJBQXFCLEVBQUE7RUF2Q3ZCO0lBMENFLGNBcm5EcUIsRUFBQTs7QUFtb0R2QjtFQUVDLGFBQWE7RUFDYixrQkFBa0I7RUFDbEIsbUJBQW1CO0VBQ25CLGlCQUFpQixFQUFBO0VBTGxCO0lBUUUseUJBQTBDLEVBQUE7RUFSNUM7SUFZRSxnQkFBZ0IsRUFBQTtFQVpsQjtJQWdCRSxlQUFlO0lBQ2YsY0FBK0IsRUFBQTtFQWpCakM7SUFzQkMsZ0JBQWdCO0lBQ2hCLFlBQVk7SUFDWixhQUFZLEVBQUE7O0FBUWI7RUFDQyxXQUFXO0VBQ1gsVUFBVTtFQUNWLGdCQUFnQjtFQUNoQixzQkFBc0I7RUFDdEIsaUJBQWlCO0VBQ2pCLGlCQUFpQjtFQUNqQixrQkFBa0I7RUFDbEIsc0JBQXNCLEVBQUE7RUFSdkI7SUFXRSx5QkFBMEMsRUFBQTtFQVg1QztJQWlCRSxhQUFhO0lBQ2IsT0FBTztJQUNQLGdCQUFnQjtJQUNoQixrQkFBa0I7SUFDbEIsZ0JBQWdCO0lBQ2hCLGtCQUFrQixFQUFBO0VBdEJwQjtJQS9oREUsZUF5akRzQjtJQXhqRHRCLG1CQVB5QjtJQWdrRHpCLGdCQUFnQjtJQUNoQixXQUFXLEVBQUE7SUE1QmI7TUErQkUseUJBQTBDLEVBQUE7RUEvQjVDO0lBL2hERSxlQW1rRHNCO0lBbGtEdEIsa0JBUHlCO0lBMGtEekIseUJBQXlCO0lBQ3pCLHlCQUEwQyxFQUFBO0VBdEM1QztJQTJDRSxXQUFXO0lBQ1gsY0FBYztJQUNkLGNBaHREcUI7SUFpdERyQiw2QkEvc0RrQjtJQWd0RGxCLGVBQWUsRUFBQTtFQS9DakI7SUFtREUscUJBQXFCLEVBQUE7RUFuRHZCO0lBc0RFLGNBenREcUIsRUFBQTs7QUFrdUR2QjtFQUdFLFdBQVc7RUFDWCxjQUFjO0VBbG1EZCxlQW1tRHNCO0VBbG1EdEIsa0JBUHlCO0VBMG1EekIsZ0NBdHVEa0I7RUF1dURsQixXQUFXO0VBQ1gscUJBQXFCO0VBQ3JCLGdCQUFnQjtFQUNoQixjQUFjLEVBQUE7O0FBT2hCO0VBL21ERSxlQWduRHFCO0VBL21EckIsbUJBUHlCLEVBQUE7O0FBeW5EM0I7RUFDQyxhQUFhLEVBQUE7O0FBVWQ7RUFPRSxrQkFBa0I7RUFDbEIsVUFBVTtFQUNWLFVBQVU7RUFDVixrQkFBa0I7RUFDbEIsZ0JBQWdCO0VBQ2hCLFdBQVcsRUFBQTs7QUFaYjtFQWdCRSxXQUFXO0VBRVgsb0JBQWdCO0tBQWhCLGlCQUFnQjtFQUNoQixpQkFBaUIsRUFBQTs7QUFLbkI7RUFDQSxrQkFBa0I7RUFDbEIsaUJBQWlCLEVBQUE7RUFGakI7SUFNRSxXQUFXO0lBRVosb0JBQWdCO09BQWhCLGlCQUFnQjtJQUNoQixpQkFBaUIsRUFBQTs7QUFNbEI7RUFDQyxrQkFBa0I7RUFDbEIsVUFBVSxFQUFBOztBQVFYO0VBQ0MsZ0NBbHpEbUI7RUFtekRsQiw0QkFBNEI7RUFDNUIsaUJBQWlCO0VBQ2pCLGdCQUFnQixFQUFBO0VBSmxCO0lBT0csbUJBQW1CLEVBQUE7RUFQdEI7SUFXRyx5QkFBeUM7SUFDekMsa0JBQWtCLEVBQUE7O0FBSXJCO0VBQ0UsZ0NBbDBEa0I7RUFtMERsQiw0QkFBNEI7RUFDNUIsaUJBQWlCO0VBQ2pCLGdCQUFnQixFQUFBO0VBSmxCO0lBT0csbUJBQW1CLEVBQUE7RUFQdEI7SUFXRyx5QkFBeUM7SUFDekMsa0JBQWtCLEVBQUE7RUFackI7SUFpQkcsZ0JBQWdCO0lBQ2hCLGdCQUFnQjtJQUNoQixZQUFZLEVBQUE7O0FBTWY7RUFFQyxnQkFBZ0I7RUFDaEIsZUFBYztFQUNkLGtCQUFrQjtFQUNsQixnQkFBZ0I7RUFDaEIsaUJBQWlCLEVBQUE7RUFObEI7SUFTRSx5QkFoMkRzQjtJQWkyRHJCLGNBajJEcUI7SUFrMkRyQixZQUFZO0lBQ1osZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixrQkFBaUI7SUFDakIsV0FBVztJQUNYLGlCQUFnQixFQUFBOztBQVluQjtFQUNFLHlCQXAzRHNCO0VBcTNEckIsY0FyM0RxQjtFQXMzRHJCLFlBQVk7RUFDWixlQUFlO0VBQ2Ysa0JBQWtCO0VBQ2xCLGVBQWU7RUFDZixtQkFBbUIsRUFBQTs7QUFLdEI7RUFDQyxnQkFBZ0I7RUFDaEIsb0JBQW9CLEVBQUE7RUFGckI7SUFNRSxnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBdndEaEIsZUF3d0RzQjtJQXZ3RHRCLGlCQVB5QixFQUFBO0VBc3dEM0I7SUFjRSxlQUFlO0lBQ2YsY0E5NERzQjtJQSs0RHRCLHlCQUF5QixFQUFBOztBQUszQjtFQUVFLGdCQUFnQjtFQUNqQixvQkFBb0IsRUFBQTtFQUhyQjtJQU1HLGNBLzVEb0IsRUFBQTtFQXk1RHZCO0lBY0cseUJBdDZEc0I7SUF1NkR0QixXQUFXLEVBQUE7O0FBWWQ7RUFDQyxzQkFBc0I7RUFDdEIseUJBdDdEc0I7RUF1N0R0QixZQUFXO0VBQ1gsYUFBWSxFQUFBO0VBSmI7SUFRRSxhQUFZO0lBQ1osc0JBQXNCLEVBQUE7RUFUeEI7SUFhRSx5QkFBOEMsRUFBQTs7QUFNaEQ7RUFDQyxvQ0FBb0M7RUFDcEMsWUFBVztFQUNYLHVDQUErQjtFQUEvQixrQ0FBK0I7RUFBL0IsK0JBQStCLEVBQUE7RUFIaEM7SUFNRSxvQ0FBZ0Q7SUFDaEQsb0JBQW9CLEVBQUE7O0FBTXRCO0VBQ0UsV0FBVyxFQUFBOztBQUdiO0VBQ0MsV0FBVyxFQUFBOztBQUtaO0VBQ0MsV0FBVztFQUNYLFlBQVksRUFBQTs7QUFLYjtFQUVDLGFBQWEsRUFBQTtFQUZkO0lBTUUsWUFBWTtJQUNaLGdCQUFnQixFQUFBO0VBUGxCO0lBWUUsaUJBQWlCLEVBQUE7RUFabkI7SUFnQkUseUJBbi9Ea0IsRUFBQTs7QUE2L0RwQjtFQUVDLGdCQUFnQjtFQUNoQixXQUFXO0VBQ1gsWUFBWSxFQUFBO0VBSmI7SUFRRSxXQUFXO0lBQ1gsWUFBWSxFQUFBO0VBVGQ7SUFhRSxrQkFBa0I7SUFDbEIsVUFBVTtJQUNWLHlCQTlnRXFCO0lBK2dFckIsWUFBWSxFQUFBOztBQVFkO0VBRUMsb0JBQWE7RUFBYixxQkFBYTtFQUFiLG9CQUFhO0VBQWIsYUFBYTtFQUNiLDZCQUFxQjtNQUFyQiwwQkFBcUI7VUFBckIscUJBQXFCO0VBQ3JCLHFDQUE2QjtNQUE3Qix5QkFBNkI7VUFBN0IsNkJBQTZCLEVBQUE7O0FBVzlCO0VBRUMsa0JBQWtCO0VBQ2xCLHlCQXppRXNCO0VBMmlFdEIsZ0JBQWdCO0VBQ2hCLGtCQUFrQjtFQUNsQix1Q0FBK0I7RUFBL0Isa0NBQStCO0VBQS9CLCtCQUErQjtFQUMvQixXQUFXO0VBQ1gsY0FBYztFQUNkLG9CQUFhO0VBQWIscUJBQWE7RUFBYixvQkFBYTtFQUFiLGFBQWE7RUFDYix5QkFBbUI7RUFBbkIsMkJBQW1CO01BQW5CLHNCQUFtQjtVQUFuQixtQkFBbUI7RUFDbkIsNEJBQXNCO0VBQXRCLDZCQUFzQjtFQUF0Qiw4QkFBc0I7TUFBdEIsMEJBQXNCO1VBQXRCLHNCQUFzQixFQUFBO0VBWnZCO0lBZ0JFLFdBQVcsRUFBQTtFQWhCYjtJQXFCRSxhQUFhO0lBQ2IsV0FBVztJQUNYLG9CQUFpQjtPQUFqQixpQkFBaUIsRUFBQTtJQXZCbkI7TUEwQkcsV0FBVyxFQUFBO0VBMUJkO0lBbUNFLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsY0Eza0VxQjtJQTRrRXJCLG1CQUFtQjtJQUNuQix5QkE3a0VxQjtJQThrRXJCLHNCQUFzQjtJQUN0QixXQUFXO0lBQ1gsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLHVDQUErQjtJQUEvQixrQ0FBK0I7SUFBL0IsK0JBQStCO0lBQy9CLDBCQUFrQjtRQUFsQiwyQkFBa0I7WUFBbEIsa0JBQWtCO0lBQ2xCLFVBQVU7SUFDVixrQkFBa0IsRUFBQTtJQWpEcEI7TUFvREcsaUJBQWlCLEVBQUE7RUFwRHBCO0lBMERFLGFBQWE7SUFDYixpQkFBaUI7SUFDakIsaUJBQWlCLEVBQUE7RUE1RG5CO0lBZ0VDLFdBQVc7SUFDWCxnQkFBZ0I7SUFDaEIsaUJBQWlCLEVBQUE7RUFsRWxCO0lBeUVHLFdBQVc7SUFDWCxpQkFBaUIsRUFBQTtFQTFFcEI7SUFnRkUsNkJBQStDO0lBQy9DLGdCQUFlO0lBQ2YsZUFBZTtJQUNmLHlCQUE0QztJQUM1Qyx1Q0FBK0I7SUFBL0Isa0NBQStCO0lBQS9CLCtCQUErQjtJQUMvQixnQkFBZ0I7SUFDaEIsZ0JBQWdCO0lBQ2hCLGNBQWM7SUFDZCxXQUFXLEVBQUE7SUF4RmI7TUEyRkcsY0FBYztNQUNkLGVBQWU7TUFDZixnQkFBZ0I7TUFDaEIsaUJBQWlCO01BQ2pCLDBCQUFrQjtVQUFsQiwyQkFBa0I7Y0FBbEIsa0JBQWtCLEVBQUE7SUEvRnJCO01BbUdHLHlCQUE0QyxFQUFBOztBQWEvQztFQUNDLGdCQUFnQjtFQUNoQixrQkFBa0I7RUFFbEIsMkJBQTJCLEVBQUE7RUFKNUI7SUFPRSxrQkFBa0IsRUFBQTtFQVBwQjtJQWFFLGtCQUFrQjtJQUNsQixjQUFjO0lBQ2QsY0FycUVxQjtJQXNxRXJCLG1CQUFtQjtJQUNuQix5QkF2cUVxQjtJQXdxRXJCLHNCQUFzQjtJQUN0QixXQUFXO0lBQ1gsWUFBWTtJQUNaLGdCQUFnQjtJQUNoQixnQkFBZ0I7SUFDaEIsbUJBQW1CO0lBQ25CLHVDQUErQjtJQUEvQixrQ0FBK0I7SUFBL0IsK0JBQStCLEVBQUE7RUF4QmpDO0lBK0JFLGdCQUFnQixFQUFBO0VBL0JsQjtJQXFDRSxZQUFZO0lBQ2IseUJBNXJFc0I7SUE2ckV0QixrQkFBa0I7SUFDbEIseUJBN3JFd0I7SUE4ckV4QixhQUFhO0lBQ2IsZ0JBQWU7SUFDZixXQUFXO0lBQ1gsaUJBQWlCO0lBQ2pCLGdCQUFnQixFQUFBO0lBN0NqQjtNQWdERyxXQUFXO01BQ1gsZ0JBQWdCLEVBQUE7SUFqRG5CO01Bc0RFLHlCQTVzRXFCO01BNnNFckIsV0FBVyxFQUFBO01BdkRiO1FBMERHLFdBQVcsRUFBQTtNQTFEZDtRQThERyx1Q0FBK0I7UUFBL0Isa0NBQStCO1FBQS9CLCtCQUErQjtRQUMvQixrQ0FBeUI7YUFBekIsNkJBQXlCO2dCQUF6QiwwQkFBeUIsRUFBQTtNQS9ENUI7UUFvRUcsdUNBQStCO1FBQS9CLGtDQUErQjtRQUEvQiwrQkFBK0I7UUFDL0Isd0RBQXFEO1FBRXJELGdEQUE2QyxFQUFBO0VBdkVoRDtJQWdGRSxZQUFZO0lBQ1osbUJBQW1CO0lBQ25CLGtCQUFrQjtJQUNsQixlQUFlO0lBQ2YsV0FBVyxFQUFBO0lBcEZiO01BdUZHLFdBQVc7TUFDWCxtQkFBbUI7TUFDbkIsZ0JBQWdCLEVBQUE7O0FBT25CO0VBQ0MseUJBdHZFd0I7RUF1dkV4Qix5QkFBeUI7RUFDekIsYUFBYTtFQUNiLFdBQVc7RUFDWCw0QkFBNEI7RUFDNUIsZ0JBQWdCLEVBQUE7RUFOakI7SUFTRSxXQUFXO0lBQ1gsZ0JBQWdCLEVBQUE7RUFWbEI7SUFjRSxpQkFBaUI7SUFDakIsV0FBVztJQUNYLFlBQVksRUFBQTtFQWhCZDtJQWxuRUUsZUFzb0VzQjtJQXJvRXRCLGlCQVB5QjtJQTZvRXpCLGlCQUFpQixFQUFBOztBQUtuQjtFQUVDO0lBQ0Msa0JBQWtCO0lBQ2xCLGFBQWEsRUFBQTtJQUZkO01BS0MsZ0JBQWdCO01BQ2hCLFVBQVUsRUFBQTtJQU5YO01BV0MsZ0JBQWdCLEVBQUEsRUFDaEI7O0FBYUY7RUFDQyxrQkFBa0I7RUFDbEIsY0FBbUMsRUFBQTs7QUF1QnBDO0VBQ0Esa0JBQWtCLEVBQUE7RUFEbEI7SUFJRSxnQkFBZ0I7SUFDaEIscUJBQXFCLEVBQUE7SUFMdkI7TUFRRSxrQkFBa0I7TUFDbEIseUJBNzBFcUIsRUFBQTtFQW8wRXZCO0lBY0UsWUFBWTtJQUNaLGtCQUFrQixFQUFBOztBQVFwQjtFQUNHLFVBQVUsRUFBQTs7QUFHYjtFQUFvQixnQkFBQTtFQUNqQixVQUFVLEVBQUE7O0FBR2I7RUFBc0IsZ0JBQUE7RUFDbkIsVUFBVSxFQUFBOztBQUdiO0VBQ0csVUFBVSxFQUFBOztBQUliO0VBQ0MsZ0JBQWdCLEVBQUE7O0FBS2pCO0VBRUM7SUFDQSxZQUFZO0lBQ1osZUFBZTtJQUNmLFVBQVUsRUFBQSxFQUNUOztBQUdGO0VBQ0Msa0JBQWtCLEVBQUE7RUFEbkI7SUFHQyxhQUFZO0lBQ1osY0EvM0VzQjtJQWc0RXRCLGVBQWU7SUFDZixrQkFBa0IsRUFBQTs7QUFJbkI7RUFDQyx5QkFBNkM7RUFDN0MsdURBQStDO1VBQS9DLCtDQUErQztFQUUvQyxrQkFBa0I7RUFDbEIsU0E3MkVXO0VBODJFWCxXQUFXO0VBQ1gsYUFBYTtFQUNiLFdBQVU7RUFDVixjQUFjO0VBQ2QsV0FBVztFQUNYLGlCQUFpQjtFQUNoQiw2QkFBOEI7RUFDOUIsd0JBQThCO0VBQTlCLHFCQUE4QixFQUFBO0VBYmhDO0lBZ0JFLFdBQVcsRUFBQTtFQWhCYjtJQW9CQyxXQUFXO0lBQ1gsWUFBWTtJQUNaLHNCQUFzQjtJQUN0QixjQTU1RXNCO0lBNjVFdEIsa0JBQWtCLEVBQUE7RUF4Qm5CO0lBMkJFLGNBaDZFcUIsRUFBQTtFQXE0RXZCO0lBK0JFLGFBQWEsRUFBQTs7QUFRZjtFQUNDLGdCQUFnQjtFQUVoQixrQkFBa0I7RUFDbEIsWUFBWTtFQUNaLHdCQUFnQjtVQUFoQixnQkFBZ0I7RUFDaEIsWUFBWTtFQUNaLGVBQWU7RUFDZixnQkFBZ0I7RUFDaEIsaUJBQWlCO0VBQ2pCLFdBQVcsRUFBQTs7QUFHWjtFQUNFLFdBQVcsRUFBQTs7QUFHYjtFQUNDLFlBQVk7RUFDWixlQUFjO0VBQ2QsZUFBZSxFQUFBOztBQUdoQjtFQUNDLGNBcDhFc0I7RUFxOEV0QixlQUFlLEVBQUE7O0FBT2hCO0VBQ0ksa0JBQWtCLEVBQUE7O0FBR3RCO0VBQ0ksTUFBTTtFQUNOLFVBQVU7RUFDVixZQUFZLEVBQUE7O0FBR2hCO0VBQ0ksY0FBYyxFQUFBOztBQUdsQjtFQUNFLGdCQUFnQjtFQUNoQixxQkFBcUI7RUFDckIsbUNBQW1DO0VBQ25DLGtCQUFrQjtFQUNsQixlQUFlO0VBQ2YsWUFBWTtFQUNaLGVBQWUsRUFBQTs7QUFHakI7RUFDSSx1QkFBdUIsRUFBQTs7QUFHM0I7RUFDSSxXQUFXLEVBQUE7O0FBR2Y7RUFDSSxXQUFXO0VBQ1gsaUJBQWlCO0VBR2pCLDRCQUE0QixFQUFBOztBQUVoQztFQUNFLFVBQVU7RUFDVixVQUFVLEVBQUE7O0FBS1o7RUFDRSxXQUFXO0VBQ1gsZ0JBQWdCLEVBQUE7O0FBRWxCO0VBQ0UsV0FBVyxFQUFBOztBQU1iO0VBQ0Msa0JBQWtCLEVBQUE7O0FBR25CO0VBQ0MsY0FBYztFQUNkLHFCQUFxQixFQUFBOztBQVN0QjtFQUNDLHlCQWpoRnVCO0VBa2hGdkIsY0FqaEZ1QixFQUFBOztBQXVoRnhCO0VBQ0MsZ0JBQWdCLEVBQUE7RUFEakI7SUFNRSxrQkFBa0IsRUFBQTtFQU5wQjtJQVdFLGdCQUFnQjtJQUVqQixrQkFBa0I7SUFDbEIseUJBeGlGbUI7SUEwaUZuQixvQkFBbUI7SUFHbkIsWUFBWTtJQUVaLHNCQUFzQjtJQUl0QixzQkFBc0I7SUFDdEIsa0JBQWtCLEVBQUE7RUExQm5CO0lBK0JDLFlBQVksRUFBQTtFQS9CYjtJQXNDRSxnQkFBZ0IsRUFBQTtJQXRDbEI7TUF5Q0UsZ0JBQWdCO01BQ2hCLDhCQUFzQjtXQUF0Qix5QkFBc0I7Y0FBdEIsc0JBQXNCO01BQ3RCLGdCQUFnQjtNQUNoQixXQUFXLEVBQUE7RUE1Q2I7SUFvREUsZUFBZSxFQUFBOztBQTJCakI7RUFDQSxXQUFXO0VBQ1gsbUJBQW1CLEVBQUE7RUFGbkI7SUFPRyxVQUFVO0lBQ1QscUJBQXFCLEVBQUE7RUFSekI7SUFhRSxnQ0F0bkZrQjtJQXVuRmxCLGFBQWE7SUFDYixnQkFBZ0I7SUFDaEIsa0JBQWtCO0lBQ2xCLFdBQVc7SUFDWCxrQkFBa0I7SUFDbEIsbUJBQW1CLEVBQUE7RUFuQnJCO0lBdUJFLHVCQUE2QyxFQUFBO0VBdkIvQztJQTJCRSxhQUFhLEVBQUE7RUEzQmY7SUErQkUsYUFBYSxFQUFBO0VBL0JmO0lBbUNFLGlCQUFpQjtJQUNqQiwwQkFBMEIsRUFBQTtFQXBDNUI7SUF3Q0UsYUFBYSxFQUFBO0VBeENmO0lBNENFLGFBQWEsRUFBQTs7QUFPZjtFQUNDLHVCQUEyQyxFQUFBOztBQU01QztFQUNDLGdCQUFnQjtFQUVoQixrQkFBa0I7RUFDbEIsaUJBQWlCO0VBRWpCLGFBQWE7RUFDYixZQUFZO0VBRVosc0JBQXNCO0VBQ3RCLDZDQUF5RDtFQUUxRCxxQ0FBaUQ7RUFDakQsc0JBQXNCLEVBQUE7RUFidEI7SUFpQkUsZUFBZTtJQUNmLGlCQUFpQixFQUFBO0lBbEJuQjtNQXNCRyxpQkFBaUI7TUFDakIsZ0JBQWdCLEVBQUE7TUF2Qm5CO1FBMEJLLGdCQUFnQjtRQUNoQix5QkFoc0ZrQjtRQWlzRmxCLGNBanNGa0I7UUFrc0ZsQixZQUFZO1FBQ1osa0JBQWtCO1FBQ2xCLDBCQUEwQjtRQUMxQixXQUFXO1FBQ1gsaUJBQWlCLEVBQUE7O0FBWXRCLHNCQUFBO0FBRUE7RUFDQyxnQ0FudEZtQjtFQW90Rm5CLGtCQUFrQixFQUFBO0VBRm5CO0lBTUUsa0JBQWtCLEVBQUE7O0FBTXBCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NDUkM7QUQ4SUQ7RUFDQyx5QkFyMkZtQjtFQXMyRm5CLGFBQWE7RUFDYixnQkFBZ0I7RUFDaEIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixZQUFZLEVBQUE7RUFOYjtJQVNFLGNBMTJGc0I7SUEyMkZ0QixxQkFBcUIsRUFBQTtFQVZ2QjtJQWVDLHFCQUFxQixFQUFBO0VBZnRCO0lBb0JFLGdCQUFnQjtJQUNoQixnQkFBZ0IsRUFBQTs7QUFPbEI7O0VBR0UsZ0JBQWdCO0VBQ2hCLFdBQVc7RUFDWCxhQUFhLEVBQUEiLCJmaWxlIjoic3R5bGUuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiXG4vLyMjIyMgVkFSSUFCTEVTICMjIyMvL1xuXG4kY29sb3ItcHJpbWFyeTogIzI5ODBiOTtcbiRjb2xvci1zZWNvbmRhcnk6ICMzNzk2ODM7XG4kY29sb3ItZ3JheTogI0VDRjBGMTsgLy8gY2xvdWRzXG4kY29sb3ItaWNlOiAjRjVGN0ZBOyAvLyBpY2VcbiRjb2xvci1vZmZ3aGl0ZTogI2VmZWZlZjsgLy8gb2ZmIHdoaXRlXG4kY29sb3ItZGFya2dyYXk6ICM0NzQ3NDc7IFxuXG5cbi8vICMjIyMgTUVOVSBUWVBFICMjIyMvL1xuXG4vLyBUaGlzIHRlbXBsYXRlIHJlcXVpcmVzIG9uZSBvciB0aGUgb3RoZXIgdG8gYmUgZW5hYmxlZC4gSWYgdGhlIENvbG9yIHZhcmlhbnQgaXMgY2hvc2VuIHRoZSBwcmltYXJ5IGNvbG9yIHZhcmlhYmxlIHdpbGwgYmUgdXRpbGl6ZWQuIC8vICBcblxuLy8gQ09MT1IgLy9cblxuLypcbkBpbXBvcnQgXCJtZW51LWNvbG9yXCI7XG4kYm9keUhlaWdodDogNTRweDtcbiRzdWJUaXRsZTogYmxvY2s7XG4kYnJhbmQ6IDVweDtcbiRzZWFyY2g6IDBweDtcbiovXG5cblxuLy8gV0hJVEUgLyBUSElDSyBCQVIgLy9cbi8vIE5vdGVzOiBib2R5aGVpZ2h0OiA3OXB4OyBzdWJUaXRsZTogbm9uZTtcbkBpbXBvcnQgXCJtZW51LXdoaXRlXCI7XG4kYm9keUhlaWdodDogMTgwcHg7XG4kc3ViVGl0bGU6IGJsb2NrO1xuJGJyYW5kOiAwcHg7XG4kc2VhcmNoOiAwcHg7XG5cbkBpbXBvcnQgXCJhbmltYXRlXCI7XG5AaW1wb3J0IFwicGFyYWdyYXBoc1wiO1xuXG5oMSxoMixoMyxoNCxoNSxoNntcblx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0fVxuXG5cbiN0dXJua2V5LWNyZWRpdCB7XG5cdGRpc3BsYXk6IG5vbmU7XG59XG5cblxuXG4vLyMjIyMgQ0xFQVJGSVggRk9SIEJPT1RTVFJBUCAzIENPTFMgIyMjIy8vXG5cbkBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1sZy0xOm50aC1jaGlsZCgxMm4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1sZy0yOm50aC1jaGlsZCg2bisxKXtjbGVhcjpsZWZ0O31cbiAgICAuYXV0by1jbGVhciAuY29sLWxnLTM6bnRoLWNoaWxkKDRuKzEpe2NsZWFyOmxlZnQ7fVxuICAgIC5hdXRvLWNsZWFyIC5jb2wtbGctNDpudGgtY2hpbGQoM24rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1sZy02Om50aC1jaGlsZChvZGQpe2NsZWFyOmxlZnQ7fVxuICAgIFxuICAgIC5jdXN0b20tY2Fyb3VzZWwtY2FwdGlvbiB7XG5cdCAgICBsZWZ0OiAxMCU7XG4gICAgfVxuICAgIFxufVxuQG1lZGlhIChtaW4td2lkdGg6OTkycHgpIGFuZCAobWF4LXdpZHRoOjExOTlweCl7XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1tZC0xOm50aC1jaGlsZCgxMm4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1tZC0yOm50aC1jaGlsZCg2bisxKXtjbGVhcjpsZWZ0O31cbiAgICAuYXV0by1jbGVhciAuY29sLW1kLTM6bnRoLWNoaWxkKDRuKzEpe2NsZWFyOmxlZnQ7fVxuICAgIC5hdXRvLWNsZWFyIC5jb2wtbWQtNDpudGgtY2hpbGQoM24rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1tZC02Om50aC1jaGlsZChvZGQpe2NsZWFyOmxlZnQ7fVxuICAgIFxuICAgICAgLmN1c3RvbS1jYXJvdXNlbC1jYXB0aW9uIHtcblx0ICAgIGxlZnQ6IDUlO1xuICAgIH1cbiAgICBcbn1cbkBtZWRpYSAobWluLXdpZHRoOjc2OHB4KSBhbmQgKG1heC13aWR0aDo5OTFweCl7XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1zbS0xOm50aC1jaGlsZCgxMm4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1zbS0yOm50aC1jaGlsZCg2bisxKXtjbGVhcjpsZWZ0O31cbiAgICAuYXV0by1jbGVhciAuY29sLXNtLTM6bnRoLWNoaWxkKDRuKzEpe2NsZWFyOmxlZnQ7fVxuICAgIC5hdXRvLWNsZWFyIC5jb2wtc20tNDpudGgtY2hpbGQoM24rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmF1dG8tY2xlYXIgLmNvbC1zbS02Om50aC1jaGlsZChvZGQpe2NsZWFyOmxlZnQ7fVxuICAgIFxuICAgICAgLmN1c3RvbS1jYXJvdXNlbC1jYXB0aW9uIHtcblx0ICAgIGxlZnQ6IDMlO1xuICAgIH1cbiAgICBcbiAgICAuaG9yei1yb3ctZnJvbnQgLm5ld3MtdGh1bWIgeyAvLyBISURFIEJMT0cgSU1BR0VTIC8gTkVXUyBJTUFHRVMgT04gTU9CSUxFXG5cdCAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBcbn1cbkBtZWRpYSAobWF4LXdpZHRoOjc2N3B4KXtcbiAgICAuYXV0by1jbGVhciAuY29sLXhzLTE6bnRoLWNoaWxkKDEybisxKXtjbGVhcjpsZWZ0O31cbiAgICAuYXV0by1jbGVhciAuY29sLXhzLTI6bnRoLWNoaWxkKDZuKzEpe2NsZWFyOmxlZnQ7fVxuICAgIC5hdXRvLWNsZWFyIC5jb2wteHMtMzpudGgtY2hpbGQoNG4rMSl7Y2xlYXI6bGVmdDt9XG4gICAgLmF1dG8tY2xlYXIgLmNvbC14cy00Om50aC1jaGlsZCgzbisxKXtjbGVhcjpsZWZ0O31cbiAgICAuYXV0by1jbGVhciAuY29sLXhzLTY6bnRoLWNoaWxkKG9kZCl7Y2xlYXI6bGVmdDt9XG4gICAgXG4gICAgICAuY3VzdG9tLWNhcm91c2VsLWNhcHRpb24ge1xuXHQgICAgbGVmdDogMCU7XG4gICAgfVxufVxuXG5cblxuLmJsb2NrLXZpZXdzLWJsb2NrZHVwbGljYXRlLW9mLWZyb250LWNhdGVnb3JpZXMtYmxvY2stMSB7XG5cdG1hcmdpbi10b3A6IDQlO1xufVxuXG5cbi5yb3ctY2VudGVyZWQge1xuICAgdGV4dC1hbGlnbjpjZW50ZXI7XG59XG5cblxuLmNvbC1jZW50ZXJlZCB7XG4gICBkaXNwbGF5OmlubGluZS1ibG9jaztcbiAgIGZsb2F0Om5vbmU7XG4gICAvKiByZXNldCB0aGUgdGV4dC1hbGlnbiAqL1xuICAgdGV4dC1hbGlnbjpsZWZ0O1xuICAgLyogaW5saW5lLWJsb2NrIHNwYWNlIGZpeCAqL1xuICAgbWFyZ2luLXJpZ2h0Oi00cHg7XG59XG5cblxuLy8jIyMjIFJFTSBGVU5DVElPTiAjIyMjL1xuXG5AZnVuY3Rpb24gY2FsY3VsYXRlUmVtKCRzaXplKSB7XG4gICRyZW1TaXplOiAkc2l6ZSAvIDE2cHg7XG4gIEByZXR1cm4gI3skcmVtU2l6ZX1yZW07XG59XG5cbi8vIE1JWElOIEZPUiBBQk9WRSBGVU5DVElPTiAvL1xuXG5AbWl4aW4gZm9udFNpemUoJHNpemUpIHtcbiAgZm9udC1zaXplOiAkc2l6ZTsgLy9GYWxsYmFjayBpbiBweFxuICBmb250LXNpemU6IGNhbGN1bGF0ZVJlbSgkc2l6ZSk7XG59XG5cbi8vIHNldCBmb250IHNpemUgLT4gQGluY2x1ZGUgZm9udFNpemUocHgpOyA8LVxuXG5cblxuLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqIC8vXG5cblxuLy8gUkVTUE9OU0lWRSAvL1xuXG4vLyBTTUFMTCBERVZJQ0VTIFRhYmxldHMsIDc2OHB4ICYgdXAgLy8gXG5cbkBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgICBcbiAgICAuZ3JpZCB7XG5cdCAgICBoZWlnaHQ6IGF1dG87XG4gICAgfVxuICAgIFxuICAgIC5zdWItdGl0bGUge1xuXHQgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIH1cbiAgICBcbiAgIFxuICAgLmNhdGVnb3J5LWJsb2NrIHtcblx0ICAgXG5cdCAgIC5pbWctcmVzcG9uc2l2ZSB7XG5cdFx0ICAgbWF4LXdpZHRoOiA2NSU7XG5cdCAgIH1cbiAgIH1cbiAgICBcbiAgICBcbiAgICAgLnNsaWRlIC5jYXJvdXNlbC1jYXB0aW9uIHtcblx0ICAgIFxuXHQgICBoZWlnaHQ6IGF1dG87XG5cdCAgICBcblx0ICAgIHAge1xuXHRcdCAgZm9udC1zaXplOiAgMWVtICFpbXBvcnRhbnQ7XG5cdCAgICB9XG5cdCAgICBcblx0ICAgaDIge1xuXHQgICAgZm9udC1zaXplOiAyZW0gIWltcG9ydGFudDtcblx0ICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXHQgICAgfVxuICAgIH0gICAgXG4gICAgI2VkaXQta2V5cy0tMiwgI2VkaXQta2V5cyB7XG5cdFxuXHQvL3dpZHRoOiA2MCUgIWltcG9ydGFudDtcblx0fVxuICAgIFxuICAgIC5oaWdobGlnaHRlZHtcblx0ICAgIG1hcmdpbi10b3A6IDhweDtcblx0ICAgIFxuXHQgICAgLmltZy1yZXNwb25zaXZlICB7XG5cdFx0ICAgIGhlaWdodDogNDAwcHg7XG5cdFx0XHRvYmplY3QtZml0OiBjb3Zlcjtcblx0ICAgIH1cbiAgICB9XG4gICAgXG4gICAgXG4gICAgIHVsLmhlYWRlci1vcHRpb25zIHtcblx0ICAgICBkaXNwbGF5OiBub25lO1xuICAgICB9XG4gICAgXG4gICAgLmJhci1kZWZhdWx0IC5uYXZiYXItdGV4dCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgIFxuICAgIC5uYXZiYXItaXMtZml4ZWQtdG9wIHtcblx0ICAgIG1hcmdpbi10b3A6ICRib2R5SGVpZ2h0ICFpbXBvcnRhbnQ7IFxuICAgIH1cbiAgICBcbiAgICAvLy5mcm9udC1ibG9jayB7XG5cdC8vYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLWdyYXk7XG5cdC8vXHQmOjpsYXN0LWNoaWxkIHtcblx0Ly9cdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0Ly9cdH1cbiAgICAvL31cbiAgICBcbiAgICBhLmxvZ28ubmF2YmFyLWJ0bi5wdWxsLWxlZnQge1xuXHQvL21hcmdpbi1sZWZ0OiAyMHB4O1xuXHR9XG5cdFxuXHRcblx0LnJlZ2lvbi1jb250ZW50LWZyb250LWxlZnQge1xuXHRcdFxuXHRcdC5pbWctcmVzcG9uc2l2ZSB7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0fVxuXHRcblx0LnBhZ2Utbm9kZS10eXBlLXBhZ2UgLnJlZ2lvbi1jb250ZW50IHtcblx0cGFkZGluZzogMHB4O1xuXHR9XG4gICAgXG59XG5cblxuLnZpZGVvLXJlc3BvbnNpdmV7XG4gICAgb3ZlcmZsb3c6aGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOjU2LjI1JTtcbiAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcbiAgICBoZWlnaHQ6MDtcbn1cbi52aWRlby1yZXNwb25zaXZlIGlmcmFtZXtcbiAgICBsZWZ0OjA7XG4gICAgdG9wOjA7XG4gICAgaGVpZ2h0OjEwMCU7XG4gICAgd2lkdGg6MTAwJTtcbiAgICBwb3NpdGlvbjphYnNvbHV0ZTtcbn1cblxuXG4vLyBNRURJVU0gREVWSUNFUyBcblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOjc2OXB4KSBhbmQgKG1heC13aWR0aDogOTkycHgpIHtcblx0XG5cdC5ncmlkIHtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblx0XG5cdC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLXRleHQge1xuXHRcdCBkaXNwbGF5OiBub25lO1xuXHR9XG5cdFxuXHQjYmxvY2stY2lyZXMtYm9vdHN0cmFwLXNlYXJjaCB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHRcblx0LnJlZ2lvbi1uYXZpZ2F0aW9uIGltZ3tcblx0XHQvL3dpZHRoOiA1MHB4O1xuXHRcdC8vaGVpZ2h0OiA1MHB4O1xuXHR9XG5cdFxuXHQgdWwuaGVhZGVyLW9wdGlvbnMge1xuXHQgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgIH1cbiAgICAgXG4gICAgIC5zbGlkZSAuY2Fyb3VzZWwtY2FwdGlvbiB7XG5cdCAgICBcblx0ICAgaGVpZ2h0OiBhdXRvO1xuXHQgICAgXG5cdCAgICBwIHtcblx0XHQgIGZvbnQtc2l6ZTogIDFlbSAhaW1wb3J0YW50O1xuXHQgICAgfVxuXHQgICAgXG5cdCAgIGgyIHtcblx0ICAgIGZvbnQtc2l6ZTogMmVtICFpbXBvcnRhbnQ7XG5cdCAgICBmb250LXdlaWdodDogYm9sZDtcblx0ICAgIH1cbiAgICB9XG5cblx0XG5cdFxufVxuXG4vLyBERVNLVE9QIC0gRlVMTFxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGg6OTkzcHgpIHtcblx0XG5cdC5ncmlkIHtcblx0XHRoZWlnaHQ6IDMwMHB4O1xuXHR9XG5cdFxuXHQubmF2YmFyLWRlZmF1bHQgLm5hdmJhci10ZXh0IHtcblx0XHQgZGlzcGxheTogbm9uZTtcblx0IH1cblx0IFxuXHQjbWF0dC1zZWFyY2ggLmZvcm0tc2VhcmNoLmZvcm0tY29udHJvbCB7XG5cdHdpZHRoOiAxMDAlO1xuXHQvL2NvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG5cblx0fSBcblx0IFxuXHRcbn1cblxuXG5cblxuXG4vLyoqIEdMT0JBTCAqKi8vXG5cbiNwcmltYXJ5LWhvbGRlciB7IC8vIE5FVyBQQUdFIFRJVExFIFNFQ1RJT05cblx0XG5cdFxuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0Y29sb3I6ICNGRkY7XG5cdG1hcmdpbi1ib3R0b206IDMlO1xuXHRib3JkZXItYm90dG9tOiAycHggc29saWQgZGFya2VuKCRjb2xvci1wcmltYXJ5LCAxMCUpO1xuXHRoMSB7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdFx0Zm9udC1zaXplOiAyLjVlbTtcblx0XHRtYXJnaW4tYm90dG9tOiAwcHg7XG5cdFx0bWFyZ2luLXRvcDogMHB4O1xuXHRcdHBhZGRpbmc6IDEwcHggMHB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxufVxuXG5cblxuXG5cbi5jZW50ZXItY29udGVudCB7XG5cdFx0IGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgIGRpc3BsYXk6IGZsZXg7XG4gICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG59XG5cblxuLnBhdGgtZnJvbnRwYWdlIGgxLnBhZ2UtaGVhZGVyIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLnBhZ2UtaGVhZGVyIHtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuLmZhIHtcblx0cGFkZGluZzogMTBweDtcblx0XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5O1xuXHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogMjVweDtcblx0XHRcblx0fVxuXHRcblx0JjphY3RpdmUge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoLjk1KTtcblx0fVxuXHRcbn1cblxuLmZvb3RlciBpLmZhIHtcblx0XG5cdCY6aG92ZXIge1x0XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbm9uZTtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDI1cHg7XG5cdH1cbn1cblxuXG4uZmEtdGFnIHtcblx0cGFkZGluZy1yaWdodDogM3B4O1xufVxuXG4uZmEuZmEtdGFnOmhvdmVyIHtcblx0YmFja2dyb3VuZC1jb2xvcjogbm9uZTtcbn1cblxuXG4udG9vbHRpcC1hcnJvdyxcbiArIC50b29sdGlwID4gLnRvb2x0aXAtaW5uZXIge1xuXHRcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG59XG5cblxuLy8gVE9PTFRJUCAvL1xuXG4udG9vbHRpcC1pbm5lciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG4gICAgY29sb3I6ICNmZmY7XG59XG5cbi50b29sdGlwLnRvcCAudG9vbHRpcC1hcnJvdyB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG59XG5cbi50b29sdGlwLnJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICBib3JkZXItcmlnaHQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xufVxuXG4udG9vbHRpcC5ib3R0b20gLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRjb2xvci1wcmltYXJ5O1xufVxuXG4udG9vbHRpcC5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG59XG5cblxuXG5oMS5wYWdlLWhlYWRlciB7XG5cdGZvbnQtc2l6ZTogNHJlbTtcblx0bWFyZ2luLWxlZnQ6IDBweDtcblx0bWFyZ2luLXRvcDogMjBweDtcbn1cblxuLnBhZ2UtaGVhZGVyIHtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLnBhdGgtZnJvbnRwYWdlIC5yZWdpb24tY29udGVudCB7XG5cdHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1xufVxuXG4ucGFnZS1ub2RlLXR5cGUtcGFnZSAucmVnaW9uLWNvbnRlbnQge1xuXHQvL3BhZGRpbmc6IDBweCAxNSUgMHB4IDE1JTtcbn1cblxuXG4uZmF0Zm9udCB7XG5cdGNvbG9yOiAjNzc3Nzc3O1xuXHRmb250LXNpemU6IDJyZW07XG5cdFxufVxuXG5cbi5jYXRlZ29yeS10YWcge1xuXHRcdHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG5cdFx0bWluLWhlaWdodDogMTQwcHg7XG5cdFx0cGFkZGluZzogMjBweDtcblx0XHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdFx0XG5cdFx0Lmg0IHtcblx0XHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdH1cblx0XHRcblx0XHRwIHtcblx0XHRcdGZvbnQtc2l6ZTogMTJweDtcblx0XHR9XG5cdFxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheTtcblxuXHR9XG59XG5cblxuXG5cbi8vIFdJUkVEIFNUWUxFIExJTksgJiBIT1ZFUiBPTkxZIFdJVEhJTiBCT0RZIEZJRUxEIElOIE5PREVTIC8vXG5cbi5yZWdpb24tY29udGVudCAuZmllbGQtLW5hbWUtYm9keSB7XG5cblx0XG59XG5cblxuXG5cbmltZy5kZXNrLWltZyB7XG5cdHdpZHRoOiA1MCU7IFxufVxuXG5wIHtcblx0Y29sb3I6ICM2NzY3Njc7XG5cdEBpbmNsdWRlIGZvbnRTaXplKDI2cHgpO1xufVxuXG5cbmE6bGluaywgYTp2aXNpdGVkIHtcblx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0dGV4dC1kZWNvcmF0aW9uOiBub25lICFpbXBvcnRhbnQ7XG59XG5cbmE6aG92ZXIge1xuXHQvL2NvbG9yOiAjRkZGO1xuXHR0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cblxuLypcbi5kYXRlLXN0YW1wLCB0aW1lIHtcblx0Zm9udC1zaXplOiAxLjhyZW07XG5cdGNvbG9yOiBkYXJrZW4oJGNvbG9yLWdyYXksIDE1JSk7XG5cdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG59XG4qLyBcblxuaDEge1xuXHRAaW5jbHVkZSBmb250U2l6ZSg5NnB4KTtcbn1cblxuXG4ucGFnZS1pbnRybyB7XG5cdFxuXHRtYXJnaW4tYm90dG9tOiA1JTtcblx0bWFyZ2luLWxlZnQ6IDIlO1xuXHRcblx0QGluY2x1ZGUgZm9udFNpemUoMzJweCk7XG5cdGNvbG9yOiBkYXJrZW4oJGNvbG9yLWdyYXksNDAlKTtcblx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XG59XG5cblxuaDEge1xuICAgLy8gIGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbiAgIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cblxuLnJlYWQtbW9yZXtcblx0LXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG5cdC1tb3otdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuICBcdC1vLXRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcbiAgXHR0cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG4gIFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcbiAgXHRcbn1cblxuLnJlYWQtbW9yZTphZnRlcntcblx0Y29udGVudDogXCJcXDAwMjc5RVwiO1xuXHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdHBhZGRpbmctbGVmdDogNXB4O1xuXHR0cmFuc2l0aW9uOiBhbGwgLjRzIC40cztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHQtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuMjU2cyBlYXNlLWluLW91dDtcblx0LW1vei10cmFuc2l0aW9uOiBhbGwgLjI1NnMgZWFzZS1pbi1vdXQ7XG5cdC1vLXRyYW5zaXRpb246IGFsbCAuMjU2cyBlYXNlLWluLW91dDtcblx0dHJhbnNpdGlvbjogYWxsIC4yNTZzIGVhc2UtaW4tb3V0O1xuXHRib3JkZXItYm90dG9tOiBub25lO1xufVxuXG4ucmVhZC1tb3JlOmhvdmVyOmFmdGVyIHtcblx0cmlnaHQ6IC0ycHg7XG5cdGJvcmRlci1ib3R0b206IG5vbmU7XG59XG5cblxuLy8jIyMjIFJFR0lPTlMgIyMjIyAvL1xuXG4vLyBCT1JERVJTIC8vXG5cbi5ib3JkZXItbGVmdCB7XG5cdFxuXHRib3JkZXItbGVmdDogMnB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHRwYWRkaW5nLWxlZnQ6IDIwcHg7XG59XG5cblxuXG4vLyMjIyMgU0xJREUgIyMjIyAvL1xuXG5cblx0XG5cdFxuXHQuY3VzdG9tLWNhcm91c2VsLWNhcHRpb24ge1xuXHRcdFxuLy9iYWNrZ3JvdW5kLWNvbG9yOiAjOWI5YjliO1xucG9zaXRpb246IGFic29sdXRlO1xudGV4dC1hbGlnbjogbGVmdDtcbnBhZGRpbmc6IDVweCAyMHB4O1xuY29sb3I6ICNGRkY7XG5ib3R0b206IDBweDtcbm9wYWNpdHk6IC44O1xubWF4LXdpZHRoOiA2MCU7XG5cdFx0XG5cdFx0aDIge1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0XHRAaW5jbHVkZSBmb250U2l6ZSg3MHB4KTtcblx0XHRcdHRleHQtc2hhZG93OiAwcHggMHB4IDEycHggcmdiYSgwLCAwLCAwLCAwLjgpO1xuXHRcdH1cblx0XHRcblx0XHRwIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0XHRvcGFjaXR5OiAxO1xuXHRcdGNvbG9yOiAjRkZGO1xuXHRcdGZvbnQtc2l6ZTogMjZweDtcblx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRwYWRkaW5nOiAyMHB4O1xuXHRcdH1cblx0XHRcblx0fVxuXHRcblx0LnNsaWRlLWJ1dHRvbiB7XG5cdFx0XG5cdFx0cGFkZGluZzogOHB4IDIwcHggOHB4IDIwcHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogMjBweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAjRkZGO1xuXHRcdGNvbG9yOiAjRkZGO1xuXHRcdGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG5cdFx0bWFyZ2luLXRvcDo1cHg7XG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdFx0XHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0XHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XHRcdFx0fVxuXHRcdFx0XG5cdFx0YSB7XG5cdFx0XHRcdGNvbG9yOiAjRkZGO1x0XG5cdFx0XHR9XG5cdFx0fVxuXG5cbi5zbGlkZS1jcmVkaXQge1xuXHRcblx0cG9zaXRpb246IGFic29sdXRlO1xuXHRyaWdodDogNXB4O1xuXHRib3R0b206IDI1cHg7XG5cdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0Zm9udC1zaXplOiAuOTVlbTtcblx0Y29sb3I6ICNmZmY7XG59XG5cblxuXG4vLyMjIyMgSEVBREVSICMjIyMgLy9cblxuXG4vLyBTVUJUSVRMRSAvL1xuXG4uc3ViLXRpdGxlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogIzAwMDtcblx0ZGlzcGxheTogJHN1YlRpdGxlO1xuXHRjbGVhcjogYm90aDtcblx0cGFkZGluZzogLjhyZW07XG5cdFxuXHRwIHtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHRwYWRkaW5nOiA0cHg7XG5cdFx0bWFyZ2luLXRvcDogNHB4O1xuXHRcdEBpbmNsdWRlIGZvbnRTaXplKDIycHgpO1xuXHR9XG5cdFxuXHRoMntcblx0XHRjb2xvcjogI0ZGRjtcblx0XHRmb250LXdlaWdodDogYm9sZDtcblx0fVxuXHRcblx0aDMge1xuXHRcdGNvbG9yOiAjRkZGO1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG5cdFxufVxuXG5cbi5uYXZiYXItYnJhbmQge1xuXHRtYXJnaW4tdG9wOiAkYnJhbmQ7XG5cdC8vcGFkZGluZy1yaWdodDogMTBweDtcblx0ZGlzcGxheTogbm9uZTtcbn1cblxuXG5cblxuLy8gTm8gTW9yZSBXaGl0ZXNwYWNlIC8vXG5cbmhlYWRlciNuYXZiYXIubmF2YmFyLm5hdmJhci1kZWZhdWx0Lm5hdmJhci1zdGF0aWMtdG9wIHtcblx0bWFyZ2luLWJvdHRvbTogMHB4O1xuXHRtYXJnaW46IDBweDtcbn1cblxuXG4vLyMjIyMgSEVBREVSICMjIyMgLy9cblxuXG5cbi5oZWFkZXItb3B0aW9ucyB7XG5cdHRyYW5zaXRpb246IGFsbCAxcztcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0Ly93aWR0aDogMTAwcHg7XG5cdGZsb2F0OiByaWdodDtcblx0Ly9kaXNwbGF5OiBibG9jaztcblx0Ly9wYWRkaW5nOjVweDtcblx0Ly9tYXJnaW4tdG9wOiA0cHg7XG5cdC8vdGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nLWJvdHRvbTogM3B4O1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRcblx0bGkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0bWFyZ2luOiAwcHggYXV0bztcblx0XHRwYWRkaW5nLXJpZ2h0OjVweDtcblx0fVxuXHRcblx0ZmEge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5OyBcblx0XHRcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IHdoaXRlICFpbXBvcnRhbnQ7XG5cdFx0XHQvL2JvcmRlci1yYWRpdXM6IDMwcHg7XG5cdFx0XHQvL3RyYW5zZm9ybTogIHNjYWxlKDEuMSwxLjEpOyBcblx0XHR9XG5cdH1cblx0XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5O1xuXHRcdGJvcmRlci1yYWRpdXM6IDEycHg7XG5cdH1cblx0XG5cdFxufVxuXG5cblxuLmhlYWRlci1vcHRpb25zOmFjdGl2ZSAuZmEge1xuXHR0cmFuc2Zvcm06IHNjYWxlKC45LC45KTsgXG59XG5cbi8vIE1PREFMIFVQREFURVMgLy9cblxuLm1vZGFsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwIWltcG9ydGFudDtcbn1cblxuLm1vZGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAtNHB4OyAvKiBBZGp1c3RzIGZvciBzcGFjaW5nICovXG59XG5cbi5tb2RhbC1kaWFsb2cge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cblxuI2VkaXQta2V5cy0tMiB7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdC8vY29sb3I6ICNGRkYgIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogMHB4O1xuXHRib3JkZXI6IG5vbmU7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG5cdGhlaWdodDogNjVweDtcblx0Zm9udC1zaXplOiA0cmVtO1xuXHRmb250LXdlaWdodDogMjAwO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblx0d2lkdGg6IDEwMCU7XG59XG5cbmRpdi5pbnB1dC1ncm91cCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuLnRvZ2dsZS1zZWFyY2gtY2xvc2UgLmdseXBoaWNvbiB7XG5cdC8vZmxvYXQ6IHJpZ2h0O1xuXHQvL21hcmdpbi10b3A6OHB4O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cbi50b2dnbGUtc2VhcmNoLWNsb3NlIC5nbHlwaGljb24gc3Bhbjpob3Zlcntcblx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuXG4vLyBGT09URVIgTE9HT1MgLy9cblxuLmZvb3Rlci1sb2dvcyB7XG5cdGltZyB7XG5cdFx0bWF4LXdpZHRoOiAyMDBweDtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblx0XG59XHRcblxuXG5cblxuXG5cbi8vIE1JU1NJT04gQkxPQ0sgLy9cblxuI21pc3Npb24tYmxvY2sge1xuXG5cblx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvci1wcmltYXJ5LCAxMCUpO1xuXHRwYWRkaW5nOiA1cHg7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHQvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcblx0Ly90b3A6IC0yMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdGNvbG9yOiAkY29sb3ItcHJpbWFyeSAhaW1wb3J0YW50O1xuXHRcblx0cCB7XG5cdFx0Y29sb3I6ICRjb2xvci1kYXJrZ3JheTtcblx0fVxuXHRcblx0aDIge1xuXHRcdFxuXHRcdGNvbG9yOiAkY29sb3ItZGFya2dyYXk7XG5cdFx0XG5cdH1cblx0XG5cdGgzIHtcblx0XHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdH1cblx0XG5cdFxuXHRcbn1cblxuXG5cbi8vIENUQSBCTE9DSyAvL1xuXG5cblxuI2N0YS1ibG9jayB7XG5cblx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvci1vZmZ3aGl0ZSwgMTAlKTtcblx0b3ZlcmZsb3c6IGF1dG87XG5cdG1hcmdpbi1ib3R0b206IDMlO1x0XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCBkYXJrZW4oJGNvbG9yLW9mZndoaXRlLCAxNSUpO1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDotNDBweDtcblx0cGFkZGluZy1ib3R0b206IDMwcHg7XG5cdFxuXHQmOmhvdmVyIHtcdFxuXHR9XG5cblxuXHQucmVnaW9uLWN0YSB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdG1hcmdpbi10b3A6IDQwcHg7XG5cdFxuXHRoMyB7XG5cdFx0bWFyZ2luLXRvcDogMHB4O1xuXHR9XHRcblx0XHRcblx0XHRcblx0XHQuYnRuLWN0YSB7XG5cblx0XHR9XG5cdFxuXHR9XG5cbn1cblxuXG4uZm9vdC10d28ge1xuXHRjb2xvcjogI2ZmZjtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1vZmZ3aGl0ZTtcblx0aGVpZ2h0OiBhdXRvO1xuXHRtYXJnaW46IDBweCBhdXRvO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDMlO1xuXHRib3JkZXItdG9wOiAycHggc29saWQgZGFya2VuKCRjb2xvci1vZmZ3aGl0ZSwgMTAlKTtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcblx0XG5cdFxuXHRwIHtcblx0IFx0Y29sb3I6ICNGRkY7XG5cdH1cblx0XG5cdC5mb250YXdlc29tZS1pY29uIHtcblx0XHRmb250LXNpemU6IDI1cHg7XG5cdFx0cGFkZGluZzogMTBweDtcblx0fVxufVxuXG5cbi5jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG5cbi5mb290LW9uZSB7XG5cdGNvbG9yOiAkY29sb3ItZGFya2dyYXk7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1vZmZ3aGl0ZTtcblx0aGVpZ2h0OiBhdXRvO1xuXHRtYXJnaW46IDBweCBhdXRvO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdHBhZGRpbmc6IDMlO1xuXHRib3JkZXItdG9wOiAycHggc29saWQgZGFya2VuKCRjb2xvci1vZmZ3aGl0ZSwgMTAlKTtcblxuXHRwIHtcblx0XHRjb2xvcjogJGNvbG9yLWRhcmtncmF5O1xuXHR9XG59XG5cbi5mcm9udC1jYXRlZ29yeSB7XG4vLy13ZWJraXQtYm94LXNoYWRvdzogaW5zZXQgMHB4IC0yOXB4IDMwcHggLTIycHggcmdiYSgyMTksMjE5LDIxOSwxKTtcbi8vLW1vei1ib3gtc2hhZG93OiBpbnNldCAwcHggLTI5cHggMzBweCAtMjJweCByZ2JhKDIxOSwyMTksMjE5LDEpO1xuLy9ib3gtc2hhZG93OiBpbnNldCAwcHggLTI5cHggMzBweCAtMjJweCByZ2JhKDIxOSwyMTksMjE5LDEpO1xubWluLWhlaWdodDogMTIwcHg7XG5cdG1hcmdpbi1ib3R0b206IDMwcHg7XG59XG5cblxuXG4vLyBDT05URU5UIC8vXG5cbi5mcm9udC1zcGFjZXJ7XG5cdG1hcmdpbjogMiUgMHB4IDIlIDBweDtcbn1cblxuI21haW4tY29udGVudCB7XG5cbn1cblxuXG4ubWFpbi1jb250YWluZXIge1xuXHQvL21pbi1oZWlnaHQ6IDc1MHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHQvL21hcmdpbi10b3A6IDBweDtcblx0Ly9wYWRkaW5nOiAxMHB4IDE1cHggMTBweCAxNXB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMyU7XG5cdFxuXHRcbn1cblxuLnVzZXItbG9nZ2VkLWluIC5tYWluLWNvbnRhaW5lciB7XG5cdC8vbWFyZ2luLXRvcDogNjBweDtcbn1cblxuLnBhdGgtZnJvbnRwYWdlIC5tYWluLWNvbnRhaW5lciB7XG5cdC8vcGFkZGluZzogMTBweCAwcHggMTBweCAwcHg7XG5cdC8vbWFyZ2luLXRvcDogNDBweDtcbn1cblxuXG4ucmVnaW9uLWNvbnRlbnQgLm5vdC1mcm9udCB7XG5cdC8vcGFkZGluZzogMjBweDtcblx0XHRcblx0cGFkZGluZy1ib3R0b206IDEwJTtcblx0XG59XG5cbi8vIHNpZGViYXJcblxuLmltZy1zaWRlYmFyIHtcblx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXG5cdFx0aW1nIHtcblx0cGFkZGluZy1sZWZ0OiAyMHB4O1xuXHRwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMjBweDtcblx0fVxufVxuXG5odG1sLCBib2R5IHsgLy8gRklYIEZPUiBYcHggb2YgUEFERERJTkcgT04gUklHSFQgU0lERSBPRiBNT0JJTEUgLy9cbi8vIG92ZXJmbG93LXg6aGlkZGVuIFxufSBcblxuXG5ib2R5IHtcblx0XG5cdC8vYmFja2dyb3VuZDogI0Y1RjdGQTtcblx0Ly9tYXJnaW4tdG9wOiAxMDVweCAhaW1wb3J0YW50O1xuXHRcblx0cCwgaDEsIGgyLCBoMywgbGksIHVsICB7XG4vL1x0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdGNvbG9yOiAjN2I3YjdiO1xuXHR9XG5cdFxuXHRpbWcuYWxpZ24tY2VudGVyIHtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRoZWlnaHQ6IGF1dG87XG5cdH1cblx0XG5cdC5uYXZiYXItaXMtZml4ZWQtdG9wIHtcblx0XHQvL21hcmdpbi10b3A6IDYwcHggIWltcG9ydGFudDtcblx0fVxuXHRcbn1cblxuYm9keS5uYXZiYXItaXMtZml4ZWQtdG9wIHtcblx0bWFyZ2luLXRvcDogJGJvZHlIZWlnaHQ7XG59XG5cblxuYS5sb2dvLm5hdmJhci1idG4ucHVsbC1sZWZ0IHtcblx0Ly9wYWRkaW5nLXRvcDogMTRweDtcblx0Ly9tYXJnaW4tcmlnaHQ6IDIwcHg7XG5cdGRpc3BsYXk6IG5vbmU7XG5cdFxuXHRpbWcgeyAvLyBzaXppbmcgdGhlIFNWRyBMb2dvXG5cdFx0d2lkdGg6IDEzMHB4O1xuXHRcdFxuXHRcdCY6aG92ZXIge1xuXHRcdGZpbGw6ICRjb2xvci1wcmltYXJ5O1xuXHRcdH1cblx0XHRcblx0fVxuXHRcblx0XG5cdFxuXHRcbn1cblxuLy8jIyMgRk9PVEVSICMjIy8vXG5cbi5tYWRlLXdpdGgge1xuXHRjb2xvcjogZGFya2VuKCRjb2xvci1wcmltYXJ5LCA5JSk7XG5cdGZvbnQtc2l6ZTogLjk1cmVtO1xuXHR0cmFuc2l0aW9uOiBhbGwgNXM7XG5cdFxuXHRcblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdH1cblx0XG5cdCY6aG92ZXIgPiAuZmEtaGVhcnQge1xuXHRcdGNvbG9yOiByZWQgIWltcG9ydGFudDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogbm9uZSAhaW1wb3J0YW50O1xuXHRcdFx0cGFkZGluZzogbm9uZTtcblx0XHRcdHRyYW5zaXRpb246IGFsbCA1cztcblx0fVxuXG5cdC5mYS1oZWFydCB7XG5cdHBhZGRpbmc6IDBweCAhaW1wb3J0YW50O1x0XG5cdGNvbG9yOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDklKSAhaW1wb3J0YW50O1xuXHR9XG59XG5cblxuLmNvcHlyaWdodCB7XG5cdGNvbG9yOiAjRkZGO1xuXHRmb250LXNpemU6IDFyZW07XG59XG5cblxuI0xheWVyXzAgaW1nIHtcblx0ZmlsbDogJGNvbG9yLXNlY29uZGFyeTtcbn1cblxuXG5cblxuLmNvbnRhaW5lci5mb290IHtcbmJhY2tncm91bmQ6ICRjb2xvci1wcmltYXJ5O1xufVxuXG5cbi8vIFNQT1RMSUdIVCAvL1xuXG4uc3BvdGxpZ2h0LWJsb2NrIHtcblx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvci1ncmF5LDMlKTtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHQvL2JvcmRlcjogMnB4IHNvbGlkIGRhcmtlbigkY29sb3ItZ3JheSwxNSUpO1xuXHQvL2NvbG9yOiAjRkZGO1xuXHQvL3BhZGRpbmc6IDVweCAxMHB4IDI1cHggMTBweDtcblx0cGFkZGluZy1ib3R0b206IDE1cHg7XG5cdFxuXHQuc3BvdGxpZ2h0LWhlYWRlciB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIGRhcmtlbigkY29sb3ItZ3JheSw5JSk7XG5cdFx0cGFkZGluZy1ib3R0b206IDVweDtcblx0XHRtYXJnaW4tYm90dG9tOiA1cHg7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvci1ncmF5LDEyJSk7XG5cdFx0cGFkZGluZzogNXB4O1xuXHRcdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDZweDtcblx0XHRib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogNnB4O1xuXHRcdHBhZGRpbmctbGVmdDogMjVweDtcblx0fVxuXHRcblx0XG5cdC5zcG90bGlnaHQtYm9keSB7XG5cdFx0cGFkZGluZzogMTBweCAxMHB4IDI1cHggMTBweDtcblx0fVxuXHRcblx0YSB7XG5cdFx0Ly9jb2xvcjogI2ZmZiAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHQuYm9yZGVyLWJvdHRvbS13aGl0ZSB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHdoaXRlO1xuXHRcdHBhZGRpbmctYm90dG9tOiAycHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMnB4O1xuXHR9XG59XG5cblxuXG5cbi5mb290ZXIge1xuXHRcbmJhY2tncm91bmQ6ICRjb2xvci1wcmltYXJ5O1xuXHRib3R0b206IDBweDtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXG5cdGJvcmRlcjogbm9uZTtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0Ym9yZGVyLXRvcDogMnB4IHNvbGlkIGRhcmtlbigkY29sb3ItcHJpbWFyeSwgMTAlKTtcblx0XG5cdC5uYXYge1xuXHRcdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdFx0cGFkZGluZy1ib3R0b206IDIwcHg7XG5cdH1cblx0XG5cdC5uYXYgPiBsaSA+IGEge1xuXHRcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdG1hcmdpbjogNXB4O1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRkaXNwbGF5OiBpbmxpbmU7XG5cdFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogbm9uZTtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0XHRcdGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0XHR9XHRcblx0fVxuXHRcblx0XG5cdC5jb2wtbWQtMTIge1xuXHRcdG1hcmdpbi1ib3R0b206IDMwcHg7XG5cdH1cblx0XG5cdGgzIHtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHRwYWRkaW5nLWJvdHRvbTogNXB4O1xuXHR9XG5cdFxuXHQuc29jaWFsLWljb25zIHtcblx0XHRcblx0XHRcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0XG5cdFx0bGkge1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0XG5cdFx0ICY6aG92ZXIge1xuXHRcdFx0IGJvcmRlci1yYWRpdXM6IDZweDtcblx0XHRcdCBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0XHQgXHR9XG5cdFx0fVxuXHRcdFxuXHRcdFxuXHRcdFxuXHRcdGEge1xuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG5cdFx0XHRtYXJnaW46IDEwcHg7XG5cdFx0XG5cdFx0XHRcdCY6aG92ZXIge1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0XHRcdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0XHRcdFx0fVx0XHRcblx0XHRcblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0XG5cdH1cblx0XG5cdHVsIHtcblx0XHRtYXJnaW46IDBweCBhdXRvICFpbXBvcnRhbnQ7XG5cdFx0cGFkZGluZzogMHB4O1xuXHR9XG5cdFxuXHQuZmEge1xuXHRcdGNvbG9yOiAjRkZGO1xuXHR9XG5cdFxuXHRcblx0YXtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cblx0cCB7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdH1cblx0aDIge1xuXHRcdGNvbG9yOiAjRkZGO1xuXHR9XG59XG5cbi5mb290ZXIge1xuXHRtYXJnaW4tdG9wOiAwcHg7XG59XG5cbi5mb290ZXIuZm9vdGVyLmNvbnRhaW5lciB7XG5cblx0YmFja2dyb3VuZDogJGNvbG9yLXByaW1hcnk7XG5cdHdpZHRoOiAxMDAlO1xuXG59XG5cbi8vIyMjICEhIUVORCBGT09URVIhISEgIyMjLy9cblxuXG5cbi8vIyMjIENPTU1FTlRTICMjIy8vXG5cbi5pbmRlbnRlZCB7XG5cdG1hcmdpbi1sZWZ0OiAxMHB4O1xuXHRib3JkZXItbGVmdDogM3B4IHNvbGlkICRjb2xvci1zZWNvbmRhcnk7XG5cdFxuXHQuY29tbWVudC1ib3gge1xuXHRcdGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDBweDtcblx0XHRib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwcHg7XG5cdH1cbn1cblxuLmNvbW1lbnQtYm94IHtcblx0YmFja2dyb3VuZC1jb2xvcjogI2Y5ZjlmOTtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JheTtcblx0cGFkZGluZzogMTBweDtcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XG5cdGgzIHtcblx0XHRjb2xvcjogIzAwMDtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyYXk7XG5cdH1cblx0XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7XG5cdH1cblx0XG5cdHVsLmxpbmtzLmxpc3QtaW5saW5le1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItZ3JheTtcblx0XHRwYWRkaW5nLXRvcDogMTVweDtcblx0fVxuXHRcblx0Ly8gVVNFUiBJVEVNUyAvL1xuXHRcblx0LmNvbW1lbnRfX2F1dGhvciB7XG5cdFx0ZmxvYXQ6IHJpZ2h0O1xuXHR9XG5cdFxuXHQuZGF0YS1jb21tZW50LXRpbWVzdGFtcCB7XG5cdFx0Y29sb3I6IHJlZDtcblx0fVxuXHRcblx0XG59XG5cbi8vIyMjICEhIUVORCBDT01NRU5UUyEhISAjIyMvL1xuXG5cbi5jb250ZXh0LWV2ZW50IHtcblx0bWFyZ2luOiAyMHB4IDBweCAyMHB4IDBweDtcblx0Ym9yZGVyLXRvcDogJGNvbG9yLWdyYXkgc29saWQgMXB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG59XG5cblxuI2NhbC1kYXkge1xuXHRcblx0cGFkZGluZzogMTBweDtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZ3JheTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0Ly9oZWlnaHQ6IDUwcHg7XG5cdC8vbWF4LXdpZHRoOiAyMDBweDtcblx0Ly9tYXJnaW4tYm90dG9tOiAyMHB4O1xuXHRkaXNwbGF5OiBibG9jaztcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0Ym9yZGVyLWJvdHRvbTogZGFya2VuKCRjb2xvci1wcmltYXJ5LCA1JSk7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdFx0Ly93aWR0aDogMTIwJTtcblx0XHQvL3Bvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHQvL3JpZ2h0OiAxMCU7XG5cdFx0Ly90b3A6IC0yMHB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0Zm9udC1zaXplOiAycmVtO1xuXHRcblx0XG5cdC5maWVsZCB7XG5cdFx0XG5cdGJhY2tncm91bmQtY29sb3I6IG5vbmUgIWltcG9ydGFudDtcblx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XG5cdCY6aG92ZXIge1xuXHRcdFxuXHRiYWNrZ3JvdW5kLWNvbG9yOiBub25lICFpbXBvcnRhbnQ7XG5cdGJvcmRlci1ib3R0b206IG5vbmU7XHRcblx0fVxuXHRcblx0fVxuXHRcblx0XG5cblx0XG5cdC5tb250aHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0XHRib3JkZXItYm90dG9tOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDUlKTtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHR3aWR0aDogMTIwJTtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0cmlnaHQ6IDEwJTtcblx0XHR0b3A6IC0xMHB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcblx0XHRwIHtcblx0XHRcdGxlZnQ6IDEwcHg7XG5cdFx0fVxuXHRcdFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0fVxuXHRcdFxuXHR9XG5cdFxuXHQuZGF5IHtcblx0XHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGZvbnQtc2l6ZTogNHJlbTtcblx0XHRwYWRkaW5nLXRvcDogMjBweDtcblx0fVxuXHRcbn1cblxuXG5cblxuLy8gU0lERUJBUiAvL1xuXG4uc2lkZWJhciB7XG5cdFxuXHRjb2xvcjogZGFya2VuICgkY29sb3ItZ3JheSwgNSUpO1xuXHRAaW5jbHVkZSBmb250U2l6ZSgyMnB4KTtcblx0XG5cdC5maWVsZCB7XG5cdFx0cGFkZGluZzogMTBweCAwcHggMTBweCAwcHg7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHR9XG5cdFxuXHQuZmllbGQ6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWdyYXksIDUlKTtcblx0fVxuXHRcblx0cCB7XG5cdFx0bWFyZ2luLWxlZnQ6IDEwcHg7XG5cdH1cblx0XG5cdC5maWVsZC0tbmFtZS1maWVsZC10YWcge1xuXHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdH1cblx0XG59XG5cbi8vIFBFT1BMRSAvL1xuXG4vLyBleHBsb2RlIHJvdyAoIGZ1bGwgZGVmYXVsdCBub2RlIHJvdyB0eXBlcyBmb3IgdmlldyApIC8vXG5cblxuLmZ1bGwtcHJvZmlsZS1waWxsIHtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRwYWRkaW5nOiA1cHg7XG5cdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWdyYXksMSUpO1xuXHRmbG9hdDogcmlnaHQ7XG5cdFxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1ncmF5LCAzJSk7XG5cdH1cblx0XG59XG5cbi5leHBsb2RlLXJvdyB7XG5cdG1hcmdpbi1ib3R0b206IDQwcHg7XG5cdHBhZGRpbmctYm90dG9tOiA0MHB4O1xufVxuXG4ubWVtYmVyLWluZm8ge1xuXHRwYWRkaW5nOiAyMHB4O1xuXHRmb250LXdlaWdodDogYm9sZDtcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1pbi1oZWlnaHQ6IDJlbTtcbn1cblxuLnByb2plY3RzLXZpZXdzLXJvdyB7XG5cdG1hcmdpbi1ib3R0b206IDIwcHg7XG5cdHBhZGRpbmctYm90dG9tOiAyMHB4O1xufVxuXG5cbi5pbWFnZS1yb3VuZC0zMDAge1xuXHRib3JkZXItcmFkaXVzOiAxNTBweDtcblx0bWFyZ2luOiAwcHggYXV0bztcblx0XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XG5cdGltZyB7XG5cdGJvcmRlci1yYWRpdXM6IDE1MHB4O1xuXHRtYXJnaW46IDBweCBhdXRvO1xuXHR9XG5cdFxuXHQmOmFjdGl2ZSB7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSguOTgpO1xuXHR9XG59XG5cblxuLmltYWdlLXJvdW5kLTE1MCAge1xuXHRcblx0Ym9yZGVyLXJhZGl1czogNzVweDtcblx0bWFyZ2luOiAwcHggYXV0bztcblx0XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XG5cdC5maWVsZDpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbm9uZTtcblx0fVxuXHRcblx0aW1nIHtcblx0Ym9yZGVyLXJhZGl1czogNzVweDtcblx0bWFyZ2luOiAwcHggYXV0bztcblx0fVxuXHRcblx0JjphY3RpdmUge1xuXHRcdHRyYW5zZm9ybTogc2NhbGUoLjk4KTtcblx0fVxufVxuXG4uaW1hZ2Utcm91bmQtMTAwIHtcblx0XG5cdGJvcmRlci1yYWRpdXM6IDUwcHg7XG5cdG1hcmdpbjogMHB4IGF1dG87XG5cdFxuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFxuXHQuZmllbGQ6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG5cdH1cblx0XG5cdGltZyB7XG5cdGJvcmRlci1yYWRpdXM6IDc1cHg7XG5cdG1hcmdpbjogMHB4IGF1dG87XG5cdH1cblx0XG5cdCY6YWN0aXZlIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKC45OCk7XG5cdH1cbn1cblxuXG5cblxuLy8gUk9XUyAvL1xuXG5cbi5jaHUtcm93IHtcblx0IHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuLmhvcnotcm93IHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHRwYWRkaW5nOiA1JSAwIDUlIDA7XG5cdG1hcmdpbi10b3A6IDElO1xuXG5cdFxuXHQuaW5mby1iYXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5O1xuXHRcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0XHRwYWRkaW5nOiA2cHg7XG5cdH1cblx0XG5cdFxuXHQuZGF0ZS1zdGFtcCB7XG5cdFx0QGluY2x1ZGUgZm9udFNpemUoNDVweCk7XG5cdFx0cGFkZGluZy10b3A6IDIwcHggIWltcG9ydGFudDtcblx0fVxuXHRcblx0XG5cdFxuXHQudGl0bGUge1xuXHRcdGZvbnQtc2l6ZTogM3JlbTtcblx0XHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XHRcblx0XHRhOmxpbmsge1xuXHRcdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdH1cblx0fVxuXHRcblx0XG5cdFxuXHRhOmxpbmsge1xuXHRcdGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0fVxuXHRcblx0YTpob3ZlciB7XG5cdFx0Ly9ib3JkZXItcmFkaXVzOiA2cHg7XG5cdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheTtcblx0fVxuXHRcblx0Lm5ld3MtdGh1bWIgaW1ne1xuXHRwYWRkaW5nOiAwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDE2cHg7XG5cdFxuXHQmOmhvdmVyIHtcblx0cGFkZGluZzoxcHg7XG5cdC8vYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0XHR9XG5cdFx0XG5cdCY6YWN0aXZlIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKC45OCk7XG5cdH1cdFxuXHRcdFxuXHR9XG5cdFxuXHQuZmF0Zm9udCB7XG5cdFx0QGluY2x1ZGUgZm9udFNpemUoMzhweCk7XG5cdFx0Y29sb3I6IGRhcmtlbigkY29sb3ItZ3JheSwgNjAlKTtcblxuXHR9XG59XG5cdFxuLm5ld3MtdGh1bWIgaW1ne1xuXHRwYWRkaW5nOiAwcHg7XG5cdGJvcmRlci1yYWRpdXM6IDE2cHg7XG5cdFxuXHQmOmhvdmVyIHtcblx0cGFkZGluZzoxcHg7XG5cdC8vYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0fVxufVxuXG4ucm91bmRlZC1jb3JuZXIgaW1nIHtcblx0cGFkZGluZzogMHB4O1xuXHRib3JkZXItcmFkaXVzOiAxNnB4O1xuXHRcbn1cblxuXG4ubmV3cy10aHVtYi1mcm9udCBpbWd7XG5cdHBhZGRpbmc6IDBweDtcblx0Ym9yZGVyLXJhZGl1czogMTZweDtcblx0d2lkdGg6IDc1JTtcblx0aGVpZ2h0OiBhdXRvO1xuXHRcblx0Jjpob3ZlciB7XG5cdC8vcGFkZGluZzoxcHg7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdH1cbn1cblxuXG4udmlkLXRodW1iIGltZ3tcblx0cGFkZGluZzogMHB4O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdFxuXHQmOmhvdmVyIHtcblx0Ly9wYWRkaW5nOjFweDtcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdH1cblx0XG5cdCY6YWN0aXZlIHtcblx0XHR0cmFuc2Zvcm06IHNjYWxlKC45OCk7XG5cdH1cblx0XHRcblx0XHRcblx0fVxuXG5cblxuLmhvcnotcm93LXNtIHtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHRwYWRkaW5nOiAxJSAwIDElIDA7XG5cdGNsZWFyOiBib3RoO1xuXHRkaXNwbGF5OiBibG9jaztcblx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XG5cdCY6aG92ZXIge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWdyYXksIDEwJSk7XG5cdH1cblx0XG5cdGgzIHtcblx0XHRib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0cGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG5cdH1cblx0XG59XG5cblxuLy8gR1JJRCAvL1xuXG4uZ3JpZCB7XG5cdHdpZHRoOiAxMDAlO1xuLy9cdC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDBweCA1MHB4IC0yMHB4IHJnYmEoMCwwLDAsMC42OSk7XG4vL1x0LW1vei1ib3gtc2hhZG93OiAwcHggMHB4IDUwcHggLTIwcHggcmdiYSgwLDAsMCwwLjY5KTtcbi8vXHRib3gtc2hhZG93OiAwcHggMHB4IDUwcHggLTIwcHggcmdiYSgwLDAsMCwwLjY5KTtcblx0bWFyZ2luOiA0JTtcblx0cGFkZGluZzogMjBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogbm9uZTtcblx0XG5cdCY6aG92ZXIge1xuXHRcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1ncmF5LCA0JSk7XG5cdH1cblx0XG5cdC5ncmlkLWltYWdlIC5pbWctcmVzcG9uc2l2ZXtcblx0XHR3aWR0aDogMTAwJTtcblx0XHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdH1cblx0XG5cdC5ncmlkLWluZm8ge1xuXHRcdGhlaWdodDogMTAwJTtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdFx0fVxuXHRcblx0LmdyaWQtdGl0bGUge1xuXHRcdEBpbmNsdWRlIGZvbnRTaXplKDI4cHgpO1xuXHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0Y29sb3I6ICM2MzYzNjM7XG5cdH1cblx0XG5cdC5ncmlkLXRhZyB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItZ3JheTtcblx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdH1cblx0XG5cdGE6aG92ZXIge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxuXHRhOnZpc2l0ZWQsIGE6bGluayB7XG5cdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHR9XG59XG5cblxuXG5cblxuLy8gR1JJRCBDTEVBTiB8IE5PIFNIQURPV1MgT1IgQ0FSRCAvL1xuXG5cblxuXG5cbi5tZW1iZXItZ3JpZCB7XG5cdFxuXHRwYWRkaW5nOiAxMHB4O1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdG1hcmdpbi1ib3R0b206IDJyZW07XG5cdG1pbi1oZWlnaHQ6IDM1MHB4O1xuXHRcblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3ItZ3JheSwgNCUpO1xuXHR9XG5cdFxuXHQubWVtLXRpdGxlIHtcblx0XHRmb250LXNpemU6IDEuMWVtO1xuXHR9XG5cdFxuXHQubWVtLWluZm8ge1xuXHRcdGZvbnQtc2l6ZTogLjllbTtcblx0XHRjb2xvcjogZGFya2VuKCRjb2xvci1ncmF5LCA1NSUpO1xuXHR9XG5cdFxuXHRpbWcge1xuXHRcblx0bWF4LXdpZHRoOiAyMDBweDtcblx0aGVpZ2h0OiBhdXRvO1xuXHRwYWRkaW5nOjEwcHg7XG5cdFxuXHR9XG5cdFxufVxuXG5cblxuLmdyaWQtY2xlYW4ge1xuXHR3aWR0aDogMTAwJTtcblx0bWFyZ2luOiAyJTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0YmFja2dyb3VuZC1jb2xvcjogbm9uZTtcblx0bWluLWhlaWdodDogMjgwcHg7XG5cdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1ncmF5LCA0JSk7XG5cdH1cblx0XG5cdC5ncmlkLWltYWdlIC5pbWctcmVzcG9uc2l2ZXt9XG5cdFxuXHQuZ3JpZC1pbmZvIHtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdHRvcDogNSU7XG5cdFx0bWFyZ2luOiAwcHggYXV0bztcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0bWluLWhlaWdodDogNzBweDtcblx0XHRwYWRkaW5nOiAwIDUlIDAgNSU7XG5cdH1cblx0XG5cdC5ncmlkLXRpdGxlIHtcblx0XHRAaW5jbHVkZSBmb250U2l6ZSgzNHB4KTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdFxuXHRcdGEge1xuXHRcdGNvbG9yOiBkYXJrZW4oJGNvbG9yLWdyYXksIDYwJSkgIWltcG9ydGFudDtcblx0XHR9XG5cdH1cblx0XG5cdC5ncmlkLWVtYWlsIHtcblx0XHRAaW5jbHVkZSBmb250U2l6ZSgyMHB4KTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdGNvbG9yOiBkYXJrZW4oJGNvbG9yLWdyYXksIDQwJSkgIWltcG9ydGFudDtcblx0fVxuXHRcblx0XG5cdC5ncmlkLXRhZyB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdGJvcmRlci10b3A6IDFweCBzb2xpZCAkY29sb3ItZ3JheTtcblx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdH1cblx0XG5cdGE6aG92ZXIge1xuXHRcdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0fVxuXHRhOnZpc2l0ZWQsIGE6bGluayB7XG5cdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHR9XG5cdFxuXHQmOmhvdmVyIHt9XG59XG5cblxuLy8gVklFV1MgLy9cblxuLnZpZXctY29udGVudCB7XG5cdFxuXHRoMyB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0QGluY2x1ZGUgZm9udFNpemUoNjBweCk7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdG1hcmdpbjogMjBweCAwIDIwcHggMDtcblx0XHRmb250LXdlaWdodDogMzAwO1xuXHRcdGNvbG9yOiAjNjg2ODY4O1xuXHR9XG5cdFxufVxuXG4vLyBBQ1RJVklUWSAvL1xuXG4uY29tbWl0dGVlIHtcblx0QGluY2x1ZGUgZm9udFNpemUoMjZweCk7XG59XG5cbi52aWV3LWNvbnRlbnQgaDMge1xuXHRwYWRkaW5nOiAxNXB4O1xufVxuXG4vLyBTTElERVIgLy9cblxuXG4vLyBISUdITElHSFRFRCAvL1xuXG5cblxuLmhpZ2hsaWdodGVkLWludGVyaW9yIHtcblx0Ly9cdGhlaWdodDogMjAwcHggO1xuXHQvL1x0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcblx0XG5cdC5zbGlkZS1jcmVkaXQge1xuXHRcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0cmlnaHQ6IDVweDtcblx0XHR0b3A6IDE1MHB4O1xuXHRcdGZvbnQtc3R5bGU6IGl0YWxpYztcblx0XHRmb250LXNpemU6IC45NWVtO1xuXHRcdGNvbG9yOiAjZmZmO1xuXHR9XG5cdFxuXHRpbWcuaW1nLXJlc3BvbnNpdmUge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHQvL1x0aGVpZ2h0OiBhdXRvO1xuXHRcdG9iamVjdC1maXQ6Y292ZXI7XG5cdFx0bWF4LWhlaWdodDogMjAycHg7XG5cdH1cbn1cblxuXG4uaGlnaGxpZ2h0ZWQge1xubWFyZ2luLXJpZ2h0OiBhdXRvO1xubWFyZ2luLWxlZnQ6IGF1dG87XG5cdFxuXHRcblx0aW1nLmltZy1yZXNwb25zaXZlIHtcblx0XHR3aWR0aDogMTAwJTtcblx0Ly9cdGhlaWdodDogYXV0bztcblx0b2JqZWN0LWZpdDpjb3Zlcjtcblx0bWF4LWhlaWdodDogMzUwcHg7XG5cdFxuXHR9XG5cdFxufVxuXG4ub3dsLXBhZ2luYXRpb24ge1xuXHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdHRvcDogLTUwcHg7XG59XG5cblxuXG4vLyBGUk9OVCBCTE9DSyAvL1xuXG5cbi5jaGltcCAuY2FtcGFpZ24ge1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyYXk7XG5cdFx0cGFkZGluZzogMjVweCAxMHB4IDI1cHggMTBweDtcblx0XHRtaW4taGVpZ2h0OiAxMDBweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdH1cblx0XHRcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWdyYXksNSUpO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRcdH1cbn1cblxuLmhvcnotcm93LWZyb250IHtcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyYXk7XG5cdFx0cGFkZGluZzogMjVweCAxMHB4IDI1cHggMTBweDtcblx0XHRtaW4taGVpZ2h0OiAxMDBweDtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdFxuXHRcdCY6bGFzdC1jaGlsZCB7XG5cdFx0XHRib3JkZXItYm90dG9tOiBub25lO1xuXHRcdH1cblx0XHRcblx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWdyYXksMyUpO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRcdH1cblx0XHRcblx0XHRcblx0XHQudGl0bGUge1xuXHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRcdGZvbnQtc2l6ZTogMS41ZW07XG5cdFx0XHRjbGVhcjogcmlnaHQ7XG5cdFx0fVxuXHRcdFxufVxuXG5cbi50YWcgdWwsIC50YWcge1xuXHRcblx0bGlzdC1zdHlsZTogbm9uZTtcblx0bWFyZ2luLXRvcDo1cHg7XG5cdG1hcmdpbi1ib3R0b206IDVweDtcblx0bWFyZ2luLWxlZnQ6IDBweDtcblx0cGFkZGluZy1sZWZ0OiAwcHg7XG5cdFxuXHRsaSwgLmZpZWxkLS1pdGVtIHtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZGFya2dyYXk7XG5cdFx0XHRjb2xvcjogJGNvbG9yLWRhcmtncmF5O1xuXHRcdFx0cGFkZGluZzogNXB4O1xuXHRcdFx0Zm9udC1zaXplOiAuOGVtO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTJweDtcdFxuXHRcdFx0cGFkZGluZy1yaWdodDo1cHg7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdG1hcmdpbi1yaWdodDo1cHg7XHRcblx0fVxuXHRcblx0XG5cdFxufVxuXG5cblxuXG5cblxuLmxhYmVsIHtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItZGFya2dyYXk7XG5cdFx0XHRjb2xvcjogJGNvbG9yLWRhcmtncmF5O1xuXHRcdFx0cGFkZGluZzogNXB4O1xuXHRcdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdFx0bWFyZ2luLWJvdHRvbTogNXB4O1xuXHRcdFx0Zm9udC1zaXplOiAuOWVtO1xuXHRcdFx0Ym9yZGVyLXJhZGl1czogMTJweDtcdFxuXHRcdFx0XG5cdH1cblxuXG4uZnJvbnQtYmxvY2sge1xuXHRtYXJnaW4tdG9wOiAxMHB4O1xuXHRwYWRkaW5nLWJvdHRvbTogMTBweDtcblx0XG5cdGgyIHtcblx0XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRmb250LXdlaWdodDogMjUwO1xuXHRcdEBpbmNsdWRlIGZvbnRTaXplKDQwcHgpO1xuXHR9XG5cdFxuXHRcblx0XG5cdC5kYXRlLXN0YW1wIHtcblx0XHRmb250LXNpemU6IC45ZW07XG5cdFx0Y29sb3I6ICRjb2xvci1kYXJrZ3JheTtcblx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHR9XG5cdFxufVxuXG4uZnJvbnQtYmxvY2stcmlnaHQge1xuXHRcdFxuXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdHBhZGRpbmctYm90dG9tOiAxMHB4O1xuXHRcdFxuXHRcdGEge1xuXHRcdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdH1cblx0XHRcblx0XHRoMiB7XG5cdFx0fVxuXHRcdFxuXHRcdC5sYWJlbCB7XG5cdFx0Ly9mbG9hdDogcmlnaHQ7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0fVxuXHRcdFxuXHRcdC5ob3J6LXJvdy1mcm9udDpob3Zlcntcblx0XHRcdC8vYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcblx0XHR9XG5cdFx0XG5cdFx0XG5cdH1cblx0XG4vLyBidXR0b24gLy9cblxuYS5idG4uYnRuLWRlZmF1bHQge1xuXHRjb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0Ym9yZGVyOm5vbmU7XG5cdHBhZGRpbmc6MTBweDtcblx0XG5cdFxuXHRhOmxpbmsge1xuXHRcdHBhZGRpbmc6MTBweDtcblx0XHRjb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHQmOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRjb2xvci1wcmltYXJ5LCAxMCUpO1xuXHR9XG5cdFxufVxuXG5cbmEuYnRuLXByaW1hcnkge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjY2ViODdjICFpbXBvcnRhbnQ7XG5cdGJvcmRlcjpub25lO1xuXHR0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW4tb3V0O1xuXHRcblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCNjZWI4N2MsMjAlKSAhaW1wb3J0YW50O1xuXHRcdHRvcDogLTFweCAhaW1wb3J0YW50O1xuXHR9XG5cdFxufVxuXG5cbmEuYnRuLmJ0bi1wcmltYXJ5LnB1bGwtcmlnaHQge1xuXHRcdGNvbG9yOiAjRkZGO1xufVx0XG5cbmEuYnRuLmJ0bi1wcmltYXJ5IHtcblx0Y29sb3I6ICNGRkY7XG59XG5cdFxuXHRcblx0XG4uc2xpZGUtcmVzcG9uc2l2ZSB7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IGF1dG87XG59XHRcblxuLy8gcGFydG5lcnMgLy9cblxuLnBhcnRuZXItaW1nIHtcblx0XG5cdHBhZGRpbmc6IDEwcHg7XG5cblx0aW1nIHtcblx0XHRcblx0XHRoZWlnaHQ6IGF1dG87XG5cdFx0bWF4LXdpZHRoOiAxNTBweDtcblx0XHRcblx0fVxuXHRcblx0LnZpZXdzLWZpZWxkLXRpdGxlIHtcblx0XHRwYWRkaW5nLXRvcDogMTVweDtcblx0fVxuXHRcblx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLWdyYXk7XG5cdFx0XG5cdH1cblx0XG59XG5cblxuXG4vLyBFVkVOVCBCTE9DSyAvL1xuXG4uZXZlbnQtYmxvY2sge1xuXHRcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0d2lkdGg6IDEwMCU7XG5cdGhlaWdodDogYXV0bztcblx0XG5cdFxuXHRpbWcge1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdGhlaWdodDogYXV0bztcblx0fVxuXHRcblx0LmV2ZW50LWJsb2NrLW92ZXJsYXkge1xuXHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHR0b3A6IC01MHB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdGhlaWdodDogNTBweDtcblx0fVxuXHRcbn1cblxuXG4vLyBmbGV4IC8vXG5cbi5mbGV4LWNvbnRhaW5lciB7XG5cdFxuXHRkaXNwbGF5OiBmbGV4O1xuXHRhbGlnbi1jb250ZW50OiBjZW50ZXI7XG5cdGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kO1xuXHRcblx0LmZsZXgtaXRlbSB7XG5cdC8vbWFyZ2luOiBhdXRvO1x0XG5cdH1cbn1cblxuXG5cbi8vIGNhcmQgLy9cblxuLmNhcmQge1xuXHRcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0Ly9ib3JkZXI6IDFweCBzb2xpZCBkYXJrZW4oJGNvbG9yLXByaW1hcnksMTAlKTtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UtaW4tb3V0O1xuXHRjb2xvcjogI0ZGRjtcblx0bWFyZ2luLXRvcDogMyU7XG5cdGRpc3BsYXk6IGZsZXg7XG5cdGFsaWduLWl0ZW1zOiBjZW50ZXI7XG5cdGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG5cdFxuXHRcblx0YSB7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdH1cblx0XG5cdC5jYXJkLWltZy10b3Age1xuXHRcdFxuXHRcdGhlaWdodDogMjAwcHg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0b2JqZWN0LWZpdDogY292ZXI7XG5cdFx0XG5cdFx0aW1nIHtcblx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0Ly9oZWlnaHQ6IGF1dG87XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdH1cblx0XG5cdC5jYXJkLWljb24ge1xuXHRcblx0XHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdFx0Zm9udC1zaXplOiAyZW07XG5cdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdGJvcmRlci1yYWRpdXM6IDc1cHg7XG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJGNvbG9yLXByaW1hcnk7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0XHR3aWR0aDogNzVweDtcblx0XHRoZWlnaHQ6IDc1cHg7XG5cdFx0bWFyZ2luOiAwcHggYXV0bztcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XG5cdFx0dHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDtcblx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0dG9wOiAxNTBweDtcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XG5cdFx0LmZvbnRhd2Vzb21lLWljb257XG5cdFx0XHRwYWRkaW5nLXRvcDogMTVweDtcblx0XHR9XG5cdFx0XG5cdH1cblx0XG5cdC5jYXJkLWJsb2NrIHtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdHBhZGRpbmctdG9wOiA0MHB4O1xuXHRcdG1pbi1oZWlnaHQ6IDIwMHB4O1xuXHR9XG5cdFxuXHQuY2FyZC10aXRsZSB7XG5cdGNvbG9yOiAjRkZGO1x0XG5cdGZvbnQtc2l6ZTogMi41ZW07XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHR9XG5cdFxuXHQuY2FyZC10ZXh0ICB7XG5cdFx0XG5cdFx0XG5cdFx0cCB7XG5cdFx0XHRjb2xvcjogI0ZGRjtcblx0XHRcdHBhZGRpbmctdG9wOiAxMHB4O1xuXHRcdH1cblx0XHRcblx0fVxuXHRcblx0LmNhcmQtYWN0aW9uIHtcblx0XHRib3JkZXItdG9wOiAxcHggc29saWQgZGFya2VuKCRjb2xvci1wcmltYXJ5LDUlKTtcblx0XHRwYWRkaW5nLXRvcDo1cHg7XG5cdFx0bWFyZ2luLXRvcDogNXB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3ItcHJpbWFyeSwxMCUpO1xuXHRcdHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG5cdFx0bWluLWhlaWdodDogNTBweDtcblx0XHRwYWRkaW5nLXRvcDogNXB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHdpZHRoOiAxMDAlO1xuXHRcdFxuXHRcdGEge1xuXHRcdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0XHRmb250LXNpemU6IDEuNWVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0XHRhbGlnbi1zZWxmOiBjZW50ZXI7XG5cdFx0fVxuXHRcdFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvci1wcmltYXJ5LDIwJSk7XG5cdFx0fVxuXHR9XG5cdFxufVxuXG5cblxuLy8gQ09OVEVOVCAoIENBVEVHT1JZICkgQkxPQ0sgLy9cblxuXG5cblxuLmNhdGVnb3J5LWJsb2NrIHtcblx0bWFyZ2luOiAwcHggYXV0bztcblx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHQvL21heC1oZWlnaHQ6IDI1MHB4O1xuXHRvdmVyZmxvdzogaGlkZGVuICFpbXBvcnRhbnQ7XG5cdFxuXHQuY2F0LWltZy1iZyB7XG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHR9XG5cdFxuXHRcblx0LmNhdC1pY29uICB7XG5cdFxuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRmb250LXNpemU6IDJlbTtcblx0XHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0Ym9yZGVyLXJhZGl1czogNzVweDtcblx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdHdpZHRoOiA3NXB4O1xuXHRcdGhlaWdodDogNzVweDtcblx0XHRtYXJnaW46IDBweCBhdXRvO1xuXHRcdG1hcmdpbi10b3A6IDIwcHg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMTBweDtcblx0XHR0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UtaW4tb3V0O1xuXHRcblx0fVxuXHRcblx0XG5cdFxuXHQuZm9udGF3ZXNvbWUtaWNvbiB7XG5cdFx0cGFkZGluZy10b3A6IDVweDtcblx0XHRcblx0fVxuXHRcblxuXHQuY2F0ZWdvcnktYmxvY2stdGV4dCB7XG5cdFx0cGFkZGluZzogNXB4O1xuXHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcblx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuXHRwYWRkaW5nOiAxMHB4O1xuXHRtYXJnaW4tdG9wOjMwcHg7XG5cdGNvbG9yOiAjZmZmO1xuXHRtaW4taGVpZ2h0OiAyMDBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XHRcblx0XHRhIHtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0Zm9udC1zaXplOiAxLjVlbTtcblx0XHR9XG5cdFx0XG5cdFx0XG5cdFx0Jjpob3ZlciB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0Y29sb3I6ICNGRkY7XG5cdFx0XG5cdFx0aDMge1xuXHRcdFx0Y29sb3I6ICNGRkY7XG5cdFx0fVxuXHRcdFxuXHRcdC5mb250YXdlc29tZS1pY29uIHtcblx0XHRcdHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG5cdFx0XHR0cmFuc2Zvcm06IHNjYWxlKDEuMSwxLjEpO1xuXHRcdFx0XG5cdFx0fVxuXHRcdFxuXHRcdC5jYXQtaWNvbiB7XG5cdFx0XHR0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UtaW4tb3V0O1xuXHRcdFx0LXdlYmtpdC1ib3gtc2hhZG93OiAwcHggMnB4IDE4cHggMHB4IHJnYmEoMCwwLDAsMC43NSk7XG5cdFx0XHQtbW96LWJveC1zaGFkb3c6IDBweCAycHggMThweCAwcHggcmdiYSgwLDAsMCwwLjc1KTtcblx0XHRcdGJveC1zaGFkb3c6IDBweCAycHggMThweCAwcHggcmdiYSgwLDAsMCwwLjc1KTtcblx0XHR9XG5cdFx0XG5cdH1cblx0XHRcblx0fVxuXG5cdFxuXHRoMyB7XG5cdFx0Ym9yZGVyOiBub25lO1xuXHRcdGJvcmRlci1ib3R0b206IG5vbmU7XG5cdFx0bWFyZ2luLWJvdHRvbTogMHB4O1xuXHRcdG1hcmdpbi10b3A6IDBweDtcblx0XHRjb2xvcjogI0ZGRjtcblx0XHRcblx0XHRhIHtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0Ym9yZGVyLWJvdHRvbTogbm9uZTtcblx0XHRcdGZvbnQtd2VpZ2h0OiA1MDA7XG5cdFx0fVxuXHR9XG59XG5cbi8vIEZFQVRVUkVEIE5FV1MgRlJPTlQgLy9cblxuLmZyb250LW5ld3Mge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3Itc2Vjb25kYXJ5O1xuXHRtYXJnaW46IDEwcHggMHB4IDIwcHggMHB4O1xuXHRoZWlnaHQ6IDQwMHB4O1xuXHRjb2xvcjogI0ZGRjtcblx0cGFkZGluZzogMjBweCAyMHB4IDIwcHggMjBweDtcblx0b3ZlcmZsb3c6IGhpZGRlbjtcblx0XG5cdHAge1xuXHRcdGNvbG9yOiAjRkZGO1xuXHRcdHBhZGRpbmctdG9wOiA1cHg7XG5cdH1cblx0XG5cdGltZyB7XG5cdFx0cGFkZGluZy10b3A6IDMwcHg7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiBhdXRvO1xuXHR9XG5cdFxuXHRoMiB7XG5cdFx0QGluY2x1ZGUgZm9udFNpemUoNzJweCk7XG5cdFx0cGFkZGluZy10b3A6IDMwcHg7XG5cdH1cbn1cblxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG5cdFxuXHQuZnJvbnQtbmV3cyB7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGhlaWdodDogNjAwcHg7XG5cdFx0XG5cdFx0aW1nIHtcblx0XHRtYXJnaW46IDBweCBhdXRvO1xuXHRcdHdpZHRoOiA4MCU7XG5cdFx0XHRcblx0XHR9XG5cdFx0XG5cdFx0aDIge1xuXHRcdHBhZGRpbmctdG9wOiAwcHg7XG5cdH1cblx0XHRcblx0fVxufVxuXG5cbi5uZXdzLXRyaXAge1xuXG59XG5cblxuLy8gRVZFTlRTIC8vXG5cbi5ldmVudC10eXBlIHtcblx0Zm9udC1zaXplOiAxLjI1cmVtO1xuXHRjb2xvcjogbGlnaHRlbigkY29sb3ItcHJpbWFyeSwgMjAlKTtcbn1cblxuXG5cblxuLy8gU0VBUkNIIC8vXG5cbi5zZWFyY2gtYmxvY2stZm9ybSB7XG5cdC8vZmxvYXQ6IHJpZ2h0O1xuXHQvL21hcmdpbi10b3A6IDE1cHg7XG5cdFxuXHQuZm9ybS1jb250cm9sIHtcblx0XHQvL2JhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdFxuXHR9XG59XG5cblxuLnNlYXJjaC1ibG9jay1mb3JtIHtcbi8vXHRjb2xvcjogI0ZGRjtcbn1cblxudWwuc3BvbnNvci1saXN0IHtcbnRleHQtYWxpZ246IGNlbnRlcjtcblx0XG5cdGxpIHtcblx0XHRsaXN0LXN0eWxlOiBub25lO1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcblx0XHQgJjpob3ZlciB7XG5cdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHRcdH1cdFxuXHR9XG5cdFxuICAgIGltZyB7XG5cdFx0bWFyZ2luOiAxMHB4O1xuXHRcdHRleHQtYWxpZ246IGNlbnRlcjtcdFx0XG5cdH1cbn1cblxuXG4vLyBTRUFSQ0ggLy9cblxuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICAgY29sb3I6IHJlZDtcbn1cblxuOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xuICAgY29sb3I6IHJlZDsgIFxufVxuXG46Oi1tb3otcGxhY2Vob2xkZXIgeyAgLyogRmlyZWZveCAxOSsgKi9cbiAgIGNvbG9yOiByZWQ7ICBcbn1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7ICBcbiAgIGNvbG9yOiByZWQ7ICBcbn1cblxuXG5oMiB7XG5cdGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cblxuLy8gREVTS1RPUCBTRUFSQ0ggQkFSXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTVweCkge1xuXHRcblx0LnRvZ2dsZS1zZWFyY2gtY2xvc2UgLmdseXBoaWNvbiB7XG5cdGZsb2F0OiByaWdodDtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0b3A6IC02MHB4O1xuXHR9XG59XG5cbiN0b2dnbGUtc2VhcmNoe1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdC5nbHlwaGljb24ge1xuXHRwYWRkaW5nOjE1cHg7XG5cdGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0Y3Vyc29yOiBwb2ludGVyO1xuXHR0ZXh0LWFsaWduOiBjZW50ZXI7XG5cdH1cbn1cblxuI21hdHQtc2VhcmNoIHtcblx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3ItcHJpbWFyeSwgNSUpO1xuXHRib3gtc2hhZG93OiAwcHggMXB4IDEwcHggMHB4IHJnYmEoMCwgMCwgMCwgMC4xKTtcblx0Ly9jb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdGxlZnQ6ICRzZWFyY2g7XG5cdHdpZHRoOiAxMDAlO1xuXHRoZWlnaHQ6IDEwMHB4O1xuXHR0b3A6LTE5MHB4O1xuXHR6LWluZGV4OiA5OTk5OTtcblx0bWFyZ2luOiAwcHg7XG5cdHBhZGRpbmctdG9wOiAxMHB4O1xuXHQgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgNjAwbXMgO1xuXHQgdHJhbnNpdGlvbjogICAgICAgICBhbGwgNjAwbXMgO1xuXHRcblx0LmdseXBoaWNvbiB7XG5cdFx0Y29sb3I6ICMwMDA7XG5cdH1cblx0XG5cdC5mb3JtLXNlYXJjaC5mb3JtLWNvbnRyb2wge1xuXHR3aWR0aDogMTAwJTtcblx0d2lkdGg6IDYwMHB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuXHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0fVxuXHQucGxhY2Vob2xkZXIge1xuXHRcdGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0fVxuXHRcblx0c3Bhbi5pbnB1dC1ncm91cC1idG4ge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0XG5cdFxuXG59XG5cblxuI2VkaXQta2V5cy0tMiB7XG5cdGJhY2tncm91bmQ6IG5vbmU7XG5cdC8vY29sb3I6ICNGRkYgIWltcG9ydGFudDtcblx0Ym9yZGVyLXJhZGl1czogMHB4O1xuXHRib3JkZXI6IG5vbmU7XG5cdGJveC1zaGFkb3c6IG5vbmU7XG5cdGhlaWdodDogNjVweDtcblx0Zm9udC1zaXplOiA0cmVtO1xuXHRmb250LXdlaWdodDogMjAwO1xuXHRvdmVyZmxvdzogdmlzaWJsZTtcblx0d2lkdGg6IDEwMCU7XG59XG5cbmRpdi5pbnB1dC1ncm91cCB7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdH1cblxuLnRvZ2dsZS1zZWFyY2gtY2xvc2UgLmdseXBoaWNvbiB7XG5cdGZsb2F0OiByaWdodDtcblx0bWFyZ2luLXRvcDo4cHg7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuLnRvZ2dsZS1zZWFyY2gtY2xvc2UgLmdseXBoaWNvbiBzcGFuOmhvdmVye1xuXHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdGN1cnNvcjogcG9pbnRlcjtcbn1cblxuXG5cbi8vIFNVQiBNRU5VIEZJWCAvL1xuXG4uZHJvcGRvd24tc3VibWVudSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4uZHJvcGRvd24tc3VibWVudSA+IC5kcm9wZG93bi1tZW51IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMTAwJTtcbiAgICBwYWRkaW5nOiAwcHg7XG59XG5cbi5kcm9wZG93bi1zdWJtZW51OmhvdmVyID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uZHJvcGRvd24tc3VibWVudSA+IGE6YWZ0ZXIge1xuICBjb250ZW50OiBcIlxcZTA4MFwiO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtc2l6ZTogMTBweDtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiA1cHg7XG59XG5cbi5kcm9wZG93bi1zdWJtZW51OmhvdmVyID4gYTphZnRlciB7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICNmZmY7XG59XG5cbi5kcm9wZG93bi1zdWJtZW51LnB1bGwtbGVmdCB7XG4gICAgZmxvYXQ6IG5vbmU7XG59XG5cbi5kcm9wZG93bi1zdWJtZW51LnB1bGwtbGVmdCA+IC5kcm9wZG93bi1tZW51IHtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgICBtYXJnaW4tbGVmdDogMTBweDtcbiAgICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDZweCAwIDZweCA2cHg7XG4gICAgLW1vei1ib3JkZXItcmFkaXVzOiA2cHggMCA2cHggNnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDZweCAwIDZweCA2cHg7XG59XG4ubmF2YmFyLW5hdiBsaTpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLW1lbnUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMHB4O1xufVxuLm5hdmJhci1uYXYgbGk6bGFzdC1jaGlsZCA+IC5kcm9wZG93bi1tZW51IGEge1xuICAvL3RleHQtYWxpZ246IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG4ubmF2YmFyLW5hdiBsaTpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLXN1Ym1lbnUgPiBhOmFmdGVyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIGNvbnRlbnQ6IFwiXFxlMDc5XCI7XG59XG4ubmF2YmFyLW5hdiBsaTpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLXN1Ym1lbnUgPiAuZHJvcGRvd24tbWVudSB7XG4gIGxlZnQ6IC0xMDAlO1xufVxuXG5cbi8vIE1FRElBIC8vXG5cbiNwbGF5ZXIge1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG59XG5cbi5tZWRpYS1ncmlkIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdG1hcmdpbjogMTBweCAwIDEwcHggMDtcblx0XG5cdC5tZWRpYS1ib2R5IHtcblx0Ly9cdGhlaWdodDogNTBweDtcblx0fVxufVxuXG4vLyBTVFJFQU0gLy9cblxuI29mZi13aGl0ZSB7XG5cdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1vZmZ3aGl0ZTtcblx0Y29sb3I6ICRjb2xvci1kYXJrZ3JheTtcbn1cblxuXG4vLyBTVFJFQU0gLy9cblxuLm5sLWNhcmQge1xuXHRvdmVyZmxvdzogaGlkZGVuO1xuXHQvL2JhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5O1xuXHRcblx0XG5cdGgyIHtcblx0XHRwYWRkaW5nLWxlZnQ6IDEwcHg7XG5cdH1cblx0XG5cdC5zdHJlYW0tcm93IHtcblx0XHRcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHQvL2JvcmRlcjogMXB4IHNvbGlkICRjb2xvci1wcmltYXJ5O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHQvL21pbi1oZWlnaHQ6IDM0MHB4O1xuXHRwYWRkaW5nLWJvdHRvbToxMHB4O1xuXHQvL3RleHQtYWxpZ246IGNlbnRlcjtcblx0Ly9wYWRkaW5nOiAyMHB4O1xuXHRtYXJnaW46IDEwcHg7XG5cdC8vYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0Ly8td2Via2l0LWJveC1zaGFkb3c6IC0xcHggMnB4IDEwcHggMnB4IHJnYmEoMjEyLDIxMiwyMTIsMSk7XG5cdC8vLW1vei1ib3gtc2hhZG93OiAtMXB4IDJweCAxMHB4IDJweCByZ2JhKDIxMiwyMTIsMjEyLDEpO1xuXHQvL2JveC1zaGFkb3c6IC0xcHggMnB4IDEwcHggMnB4IHJnYmEoMjEyLDIxMiwyMTIsMSk7XG5cdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0fVxuXHRcblx0LnN0cmVhbS1pbmZvIHtcblxuXHRwYWRkaW5nOiA1cHg7XG5cblx0fVxuXHRcblx0LnN0cmVhbS1pbWFnZSB7XG5cdFx0XG5cdFx0Ly9oZWlnaHQ6IDEzMHB4O1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0XG5cdFx0aW1ne1xuXHRcdHBvc2l0aW9uOiBzdGF0aWM7XG5cdFx0dHJhbnNmb3JtOiBzY2FsZSgxLjI1KTtcblx0XHRvdmVyZmxvdzogaGlkZGVuO1xuXHRcdHotaW5kZXg6IC0xO1xuXHRcdH1cblx0XHRcblx0fVxuXHRcblx0XG5cdFxuXHQuc3RyZWFtLXRpdGxle1xuXHRcdGZvbnQtc2l6ZTogMnJlbTtcblx0XHRcblx0fVxuXHRcblx0LnN0cmVhbS1tb3JlIHtcblx0XHRcdFxuXHRcdC8vcG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdC8vcmlnaHQ6IDEwcHg7XG5cdFx0Ly9ib3R0b206IDEwcHg7XG5cdFx0XHRcdFxuXHRcdGEge1xuXHRcdFx0Ly9wYWRkaW5nOiA2cHg7XG5cdFx0Ly9ib3JkZXItcmFkaXVzOiAxMnB4O1xuXHRcdFxuXHRcdC8vYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXByaW1hcnk7XG5cdFx0XG5cdFx0Ly9vdmVyZmxvdzogaGlkZGVuO1xuXHRcdC8vd2lkdGg6IDQwMHB4O1xuXHRcdFx0XG5cdFx0fVxuXHR9XG5cdFxufVxuXG5cbi8vLy8gUFVCTElDQVRJT04gTElTVCBPTiBDVVJMIFBVQlMgLy8vL1xuXG4jcHVibGljYXRpb25zLWxpc3R7XG53aWR0aDogMTAwJTtcbm1hcmdpbi1ib3R0b206IDIwcHg7XG5cblx0XG5cdFxuXHR1bHtcblx0XHQgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG5cdFx0XG5cdH1cblxuXHRsaSB7XG5cdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0bWluLWhlaWdodDogNzVweDtcblx0XHRvdmVyZmxvdy14OiBoaWRkZW47XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0cGFkZGluZy1sZWZ0OiAxMHB4O1xuXHRcdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdH1cblx0XG5cdGxpOm50aC1jaGlsZChldmVuKSB7XG5cdFx0YmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkY29sb3ItZ3JheSwgMTIuNSUpO1x0XG5cdH1cblx0XG5cdCY6OmJlZm9yZSB7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHRcblx0Jjo6YWZ0ZXIge1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0XG5cdGEge1xuXHRcdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRcdHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuXHR9XHRcblx0XG5cdC5wYW5lbC1ib2R5OjpiZWZvcmV7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHRcblx0LnBhbmVsLWJvZHk6OmFmdGVye1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdH1cblx0XG5cdFxufVxuXG5cbiNwdWJsaWNhdGlvbnMtbGlzdCBsaTpob3ZlciB7XG5cdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLWdyYXksIDEwJSk7XG59XG5cblxuLy8gUkVTT1VSQ0UgQ0FSRCAvL1xuXG4ucmVzb3VyY2UtY2FyZCB7XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdC8vYm9yZGVyOiAxcHggc29saWQgJGNvbG9yLXByaW1hcnk7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0bWluLWhlaWdodDogMjAwcHg7XG5cdC8vdGV4dC1hbGlnbjogY2VudGVyO1xuXHRwYWRkaW5nOiAyMHB4O1xuXHRtYXJnaW46IDEwcHg7XG5cdC8vYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXNlY29uZGFyeTtcblx0dmVydGljYWwtYWxpZ246IG1pZGRsZTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDJweCAxMHB4IDJweCByZ2JhKDIxMiwyMTIsMjEyLDEpO1xuLW1vei1ib3gtc2hhZG93OiAtMXB4IDJweCAxMHB4IDJweCByZ2JhKDIxMiwyMTIsMjEyLDEpO1xuYm94LXNoYWRvdzogLTFweCAycHggMTBweCAycHggcmdiYSgyMTIsMjEyLDIxMiwxKTtcbmJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cblx0LnRhZ3Mge1xuXHRcblx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0cGFkZGluZy1sZWZ0OiAwcHg7XG5cblx0XHR1bCB7XG5cdFx0XHRcblx0XHRcdHBhZGRpbmctbGVmdDogMGVtO1xuXHRcdFx0bGlzdC1zdHlsZTogbm9uZTtcblx0XHRcdFxuXHRcdFx0XHRsaSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAuNzVlbTtcblx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkY29sb3ItcHJpbWFyeTtcblx0XHRcdFx0XHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdFx0XHRcdFx0cGFkZGluZzogNXB4O1xuXHRcdFx0XHRcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0XHRcdFx0XHR3aWR0aDogLXdlYmtpdC1maXQtY29udGVudDtcblx0XHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0XHRtYXJnaW4tcmlnaHQ6IDVweDtcblx0XHRcdFx0fVxuXHRcdH1cblx0XHRcblx0XHRcblx0fVxuXG5cblxufVxuXG5cbi8qIFdFQklOQVIgQ09OVEFJTkVSICovXG5cbi53ZWJpbmFyLWNvbnRhaW5lciB7XG5cdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JheTtcblx0cGFkZGluZzogMiUgMCAyJSAwO1xuXHQvL21hcmdpbi10b3A6IDElO1xuXHRcblx0LndlYmluYXItYm9keSB7XG5cdFx0cGFkZGluZy1yaWdodDogMTAlO1xuXHR9XG5cdFxufVxuXG5cbi8qIEFDQ09SRElPTlMgXG5cblxuXG5cblxuI2FjY29yZGlvbiAucGFuZWwtaGVhZGluZyB7IHBhZGRpbmc6IDA7fVxuI2FjY29yZGlvbiAucGFuZWwtdGl0bGUgPiBhIHtcblx0ZGlzcGxheTogYmxvY2s7XG5cdHBhZGRpbmc6IDAuNGVtIDAuNmVtO1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cbiN2aWV3cy1ib290c3RyYXAtYWNjb3JkaW9uIC5wYW5lbC10aXRsZSA+IGEuYWNjb3JkaW9uLXRvZ2dsZTo6YWZ0ZXIsICN2aWV3cy1ib290c3RyYXAtYWNjb3JkaW9uIGFbZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiXTo6YWZ0ZXIgIHtcbiAgICBjb250ZW50OlwiXFxlMTEzXCI7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuXHRtYXJnaW4tcmlnaHQgOjFlbTtcblx0XG5cdCY6YWN0aXZlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheTtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0fVxuXHRcbn1cblxuI3ZpZXdzLWJvb3RzdHJhcC1hY2NvcmRpb24gcGFuZWwtdGl0bGUgPiBhLmFjY29yZGlvbi10b2dnbGUuY29sbGFwc2VkOjphZnRlciwgI3ZpZXdzLWJvb3RzdHJhcC1hY2NvcmRpb24gYS5jb2xsYXBzZWRbZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiXTo6YWZ0ZXIgIHtcbiAgICBjb250ZW50OlwiXFxlMTE0XCI7XG59XG5cblxuI2FjY29yZGlvbiAucGFuZWwtdGl0bGUgPiBhLmFjY29yZGlvbi10b2dnbGU6OmFmdGVyLCAjYWNjb3JkaW9uIGFbZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiXTo6YWZ0ZXIgIHtcbiAgICBjb250ZW50OlwiXFxlMTEzXCI7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiAnR2x5cGhpY29ucyBIYWxmbGluZ3MnO1xuXHRtYXJnaW4tcmlnaHQgOjFlbTtcblx0XG5cdCY6YWN0aXZlIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItZ3JheTtcblx0XHRwYWRkaW5nOiAxMHB4O1xuXHRcdGJvcmRlci1yYWRpdXM6IDZweDtcblx0fVxuXHRcbn1cbiNhY2NvcmRpb24gLnBhbmVsLXRpdGxlID4gYS5hY2NvcmRpb24tdG9nZ2xlLmNvbGxhcHNlZDo6YWZ0ZXIsICNhY2NvcmRpb24gYS5jb2xsYXBzZWRbZGF0YS10b2dnbGU9XCJjb2xsYXBzZVwiXTo6YWZ0ZXIgIHtcbiAgICBjb250ZW50OlwiXFxlMTE0XCI7XG4gICAgICAtbW96LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKSFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZykhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKSFpbXBvcnRhbnQ7XG59XG5cbiNhY2NvcmRpb24ge1xuXHRwYWRkaW5nOiAxMHB4IDVweCAxMHB4IDVweDtcblx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHRcblx0ZGl2LmFjY29yZGlvbi1oZWFkaW5nIHtcblx0XHRmb250LXNpemU6IDEuNXJlbTtcblx0fVxuXHRcblx0LmFjY29yZGlvbi1pbm5lciB7XG5cdFx0cGFkZGluZzogMTBweCAwcHg7XG5cdH1cblx0XG59XG5cblxuLnBhbmVsLWdyb3VwIHtcblx0XG5cdGJvcmRlci1jb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuXHR0cmFuc2l0aW9uOiBhbGwgLjRzIHRyYW5zZm9ybSBlYXNlLWluLW91dDtcblx0cGFkZGluZzogMTBweCA1cHggMTBweCA4cHg7XG5cdCY6aG92ZXIge1xuXHRcdC8vYmFja2dyb3VuZC1jb2xvcjogI2Y0ZjRmNDtcblx0fVxuXHRcblx0XG5cdC5wYW5lbC1oZWFkaW5nIHtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG5cdFx0XG5cdH1cblx0XG5cdFxuXHQucGFuZWwge1xuXHRcdGJvcmRlci1yYWRpdXM6IG5vbmUgIWltcG9ydGFudDtcdFxuXHR9XG5cdFxuXHQucGFuZWwtZGVmYXVsdHtcblx0XHRib3JkZXItY29sb3I6ICNGRkYgIWltcG9ydGFudDtcblx0fVxuXHRcblx0aDQucGFuZWwtdGl0bGUge1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHRcdGZvbnQtd2VpZ2h0OiAyNTA7XG5cdFx0Ym9yZGVyLWNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG5cdFx0Ym9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50O1xuXHRcdHBhZGRpbmc6IDIlIDAlIDIlIDA7XG5cdH1cblx0XG59XG5cbi5hY2NvcmRpb24tdG9nZ2xlIHtcblx0dHJhbnNpdGlvbjogYWxsIC40cyB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7XG5cdCAtbW96LXRyYW5zaXRpb246IGFsbCAycyBsaW5lYXI7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMnMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IGFsbCAuNHMgdHJhbnNmb3JtIGVhc2UtaW4tb3V0O1xuXG59XG5cbi5hY2NvcmRpb24tdG9nZ2xlOmFmdGVyIHtcbiAgICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgICBjb250ZW50OiBcIlxcZjA2M1wiOyAgICBcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiB9XG5cbi5hY2NvcmRpb24tb3BlbmVkIC5hY2NvcmRpb24tdG9nZ2xlIHtcblx0dHJhbnNpdGlvbjogYWxsIC40cyB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7XG59XG5cbi5hY2NvcmRpb24tb3BlbmVkIC5hY2NvcmRpb24tdG9nZ2xlOmFmdGVyIHsgICAgXG4gICAgY29udGVudDogXCJcXGYwNjNcIiAhaW1wb3J0YW50OyAgIFxuICAgIGZvbnQtd2VpZ2h0OiAyMDA7XG4gICAgLW1vei10cmFuc2Zvcm06cm90YXRlKDE4MGRlZykhaW1wb3J0YW50O1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpIWltcG9ydGFudDtcbiAgICB0cmFuc2Zvcm06cm90YXRlKDE4MGRlZykhaW1wb3J0YW50O1xufVxuXG4qL1xuXG5cblxuLmRvYy1yb3cge1xuXHRib3JkZXI6MXB4IHNvbGlkICRjb2xvci1ncmF5O1xuXHRwYWRkaW5nOiAyMHB4O1xuXHRtYXJnaW4tdG9wOiAzMHB4O1xuXHRib3JkZXItcmFkaXVzOiA2cHg7XG5cdHRleHQtYWxpZ246IGNlbnRlcjtcblx0d2lkdGg6IDQwMHB4O1xuXHRcblx0YSB7XG5cdFx0Y29sb3I6ICRjb2xvci1kYXJrZ3JheTtcblx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdH1cblx0XG5cdC5oMyBhIHtcblx0XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcblx0XG5cdH1cblx0XG5cdC5mYS1maWxlIHtcblx0XHRmb250LXNpemU6IDIuNWVtO1xuXHRcdG1hcmdpbi10b3A6IDEwcHg7XG5cdH1cblx0XG5cdFxufVxuXG5cbi5waG90by1nYWxsZXJ5IFxuXG5cdC5pbWctcmVzcG9uc2l2ZSB7XG5cdFx0bWF4LXdpZHRoOiAyNTBweDtcblx0XHRmbG9hdDogbGVmdDtcblx0XHRwYWRkaW5nOiAyMHB4O1xuXHR9XG5cbiIsIi8qXG5AaW1wb3J0IFwibWVudS1jb2xvclwiO1xuJGJvZHlIZWlnaHQ6IDU0cHg7XG4kc3ViVGl0bGU6IGJsb2NrO1xuJGJyYW5kOiA1cHg7XG4kc2VhcmNoOiAwcHg7XG4qL1xuLnN1Yi10aXRsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5uYXZiYXItbmF2IHtcbiAgcGFkZGluZy10b3A6IDhweDsgfVxuXG4ubmF2YmFyLWJyYW5kIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcGFkZGluZy1yaWdodDogMTBweDsgfVxuXG4uYnV0dG9uLm5hdmJhci10b2dnbGUge1xuICBjb2xvcjogIzI5ODBiOTsgfVxuXG4ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci10b2dnbGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICBjb2xvcjogI0VDRjBGMTsgfVxuXG4jbmF2YmFyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDNweCAxOHB4IC05cHggI2EzYTNhMztcbiAgLW1vei1ib3gtc2hhZG93OiAtMXB4IDNweCAxOHB4IC05cHggI2EzYTNhMztcbiAgYm94LXNoYWRvdzogLTFweCAzcHggMThweCAtOXB4ICNhM2EzYTM7IH1cbiAgI25hdmJhciAubmF2YmFyLXRvZ2dsZSAuaWNvbi1iYXIge1xuICAgIGNvbG9yOiAjMjk4MGI5ICFpbXBvcnRhbnQ7IH1cbiAgI25hdmJhciBhIHtcbiAgICBjb2xvcjogIzI5ODBiOTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBmb250LXNpemU6IDE2cHg7IH1cbiAgICAjbmF2YmFyIGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgIGNvbG9yOiAjMjA2MzhmOyB9XG4gICAgI25hdmJhciBhIC5pcy1hY3RpdmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgIGNvbG9yOiAjNDA5YWQ1OyB9XG4gICNuYXZiYXIgYS5kcm9wZG93bi10b2dnbGUgYS5pcy1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MDlhZDU7IH1cbiAgI25hdmJhciBhLmlzLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICBjb2xvcjogIzI5ODBiOTsgfVxuICAjbmF2YmFyIC5uYXZiYXItY29sbGFwc2Uge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkY7IH1cbiAgI25hdmJhciAuZHJvcGRvd24tbWVudSB7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIG9wYWNpdHk6IC45O1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAtd2Via2l0LWJveC1zaGFkb3c6IC0xcHggM3B4IDE4cHggLTlweCAjYTNhM2EzO1xuICAgIC1tb3otYm94LXNoYWRvdzogLTFweCAzcHggMThweCAtOXB4ICNhM2EzYTM7XG4gICAgYm94LXNoYWRvdzogLTFweCAzcHggMThweCAtOXB4ICNhM2EzYTM7IH1cbiAgICAjbmF2YmFyIC5kcm9wZG93bi1tZW51IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogIzQwOWFkNTtcbiAgICAgIGNvbG9yOiAjRkZGOyB9XG4gICNuYXZiYXIgLmlucHV0LWdyb3VwIHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIHBhZGRpbmctdG9wOiAxMHB4OyB9XG5cbi5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IC5hY3RpdmUgPiBhLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAuYWN0aXZlLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAuYWN0aXZlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgY29sb3I6ICMyOTgwYjk7IH1cblxuLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLm9wZW4gPiBhLCAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAub3BlbiA+IGE6aG92ZXIsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IC5vcGVuID4gYTpmb2N1cyB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIGNvbG9yOiAjMjk4MGI5OyB9XG5cbi5uYXZiYXItZGVmYXVsdCAubmF2YmFyLXRleHQge1xuICBjb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuICBmb250LXNpemU6IDI0cHg7IH1cblxuLyohXG4gKiBhbmltYXRlLmNzcyAtaHR0cDovL2RhbmVkZW4ubWUvYW5pbWF0ZVxuICogVmVyc2lvbiAtIDMuNS4yXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgLSBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICogQ29weXJpZ2h0IChjKSAyMDE3IERhbmllbCBFZGVuXG4gKi9cbi5hbmltYXRlZCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMXM7XG4gIGFuaW1hdGlvbi1maWxsLW1vZGU6IGJvdGg7IH1cblxuLmFuaW1hdGVkLmluZmluaXRlIHtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7IH1cblxuLmFuaW1hdGVkLmhpbmdlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAyczsgfVxuXG4uYW5pbWF0ZWQuZmxpcE91dFgsXG4uYW5pbWF0ZWQuZmxpcE91dFksXG4uYW5pbWF0ZWQuYm91bmNlSW4sXG4uYW5pbWF0ZWQuYm91bmNlT3V0IHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAuNzVzOyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgZnJvbSwgMjAlLCA1MyUsIDgwJSwgdG8ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgNDAlLCA0MyUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApOyB9XG4gIDcwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1LCAwLjg1NSwgMC4wNik7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTVweCwgMCk7IH1cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC00cHgsIDApOyB9IH1cblxuLmJvdW5jZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207IH1cblxuQGtleWZyYW1lcyBmbGFzaCB7XG4gIGZyb20sIDUwJSwgdG8ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMjUlLCA3NSUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uZmxhc2gge1xuICBhbmltYXRpb24tbmFtZTogZmxhc2g7IH1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7IH0gfVxuXG4ucHVsc2Uge1xuICBhbmltYXRpb24tbmFtZTogcHVsc2U7IH1cblxuQGtleWZyYW1lcyBydWJiZXJCYW5kIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpOyB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNzUsIDEuMjUsIDEpOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpOyB9XG4gIDY1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTUsIDEuMDUsIDEpOyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDAuOTUsIDEpOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7IH0gfVxuXG4ucnViYmVyQmFuZCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kOyB9XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuICBmcm9tLCB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7IH1cbiAgMjAlLCA0MCUsIDYwJSwgODAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOyB9IH1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlOyB9XG5cbkBrZXlmcmFtZXMgaGVhZFNoYWtlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxuICA2LjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7IH1cbiAgMTguNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCg1cHgpIHJvdGF0ZVkoN2RlZyk7IH1cbiAgMzEuNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTsgfVxuICA0My41JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfSB9XG5cbi5oZWFkU2hha2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IGhlYWRTaGFrZTsgfVxuXG5Aa2V5ZnJhbWVzIHN3aW5nIHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTsgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTsgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNWRlZyk7IH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTsgfSB9XG5cbi5zd2luZyB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZzsgfVxuXG5Aa2V5ZnJhbWVzIHRhZGEge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7IH1cbiAgMTAlLCAyMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7IH1cbiAgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7IH1cbiAgNDAlLCA2MCUsIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyB9IH1cblxuLnRhZGEge1xuICBhbmltYXRpb24tbmFtZTogdGFkYTsgfVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cbkBrZXlmcmFtZXMgd29iYmxlIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9XG4gIDE1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7IH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7IH1cbiAgNDUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0zZGVnKTsgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTsgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi53b2JibGUge1xuICBhbmltYXRpb24tbmFtZTogd29iYmxlOyB9XG5cbkBrZXlmcmFtZXMgamVsbG8ge1xuICBmcm9tLCAxMS4xJSwgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAyMi4yJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpOyB9XG4gIDMzLjMlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDYuMjVkZWcpIHNrZXdZKDYuMjVkZWcpOyB9XG4gIDQ0LjQlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTsgfVxuICA1NS41JSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7IH1cbiAgNjYuNiUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLTAuNzgxMjVkZWcpIHNrZXdZKC0wLjc4MTI1ZGVnKTsgfVxuICA3Ny43JSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyZGVnKSBza2V3WSgwLjM5MDYyZGVnKTsgfVxuICA4OC44JSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC4xOTUzMWRlZykgc2tld1koLTAuMTk1MzFkZWcpOyB9IH1cblxuLmplbGxvIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGplbGxvO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7IH1cblxuQGtleWZyYW1lcyBib3VuY2VJbiB7XG4gIGZyb20sIDIwJSwgNDAlLCA2MCUsIDgwJSwgdG8ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsgfVxuICAyMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKTsgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTsgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpOyB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuOTcsIDAuOTcsIDAuOTcpOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsgfSB9XG5cbi5ib3VuY2VJbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbjsgfVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApOyB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApOyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7IH1cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5ib3VuY2VJbkRvd24ge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duOyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5MZWZ0IHtcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7IH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjVweCwgMCwgMCk7IH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTsgfVxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmJvdW5jZUluTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7IH1cblxuQGtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MSwgMC4zNTUsIDEpOyB9XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgzMDAwcHgsIDAsIDApOyB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTsgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7IH1cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01cHgsIDAsIDApOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4uYm91bmNlSW5SaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblJpZ2h0OyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5VcCB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTsgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7IH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOyB9XG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfSB9XG5cbi5ib3VuY2VJblVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7IH1cblxuQGtleWZyYW1lcyBib3VuY2VPdXQge1xuICAyMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjksIDAuOSwgMC45KTsgfVxuICA1MCUsIDU1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOyB9IH1cblxuLmJvdW5jZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7IH1cblxuQGtleWZyYW1lcyBib3VuY2VPdXREb3duIHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwcHgsIDApOyB9XG4gIDQwJSwgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsgfSB9XG5cbi5ib3VuY2VPdXREb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd247IH1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRMZWZ0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjBweCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsgfSB9XG5cbi5ib3VuY2VPdXRMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dExlZnQ7IH1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7IH0gfVxuXG4uYm91bmNlT3V0UmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7IH1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRVcCB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7IH1cbiAgNDAlLCA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOyB9IH1cblxuLmJvdW5jZU91dFVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwOyB9XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5mYWRlSW4ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluOyB9XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmZhZGVJbkRvd24ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bjsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmZhZGVJbkRvd25CaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZzsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5mYWRlSW5MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7IH1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5mYWRlSW5MZWZ0QmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnRCaWc7IH1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4uZmFkZUluUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7IH1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5mYWRlSW5SaWdodEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZzsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5mYWRlSW5VcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcDsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmZhZGVJblVwQmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnOyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uZmFkZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0OyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dERvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7IH0gfVxuXG4uZmFkZU91dERvd24ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd247IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOyB9IH1cblxuLmZhZGVPdXREb3duQmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnOyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApOyB9IH1cblxuLmZhZGVPdXRMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0OyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dExlZnRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7IH0gfVxuXG4uZmFkZU91dExlZnRCaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dExlZnRCaWc7IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH0gfVxuXG4uZmFkZU91dFJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOyB9IH1cblxuLmZhZGVPdXRSaWdodEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0VXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOyB9IH1cblxuLmZhZGVPdXRVcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXA7IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7IH0gfVxuXG4uZmFkZU91dFVwQmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZzsgfVxuXG5Aa2V5ZnJhbWVzIGZsaXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTcwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCgwLjk1LCAwLjk1LCAwLjk1KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9IH1cblxuLmFuaW1hdGVkLmZsaXAge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwOyB9XG5cbkBrZXlmcmFtZXMgZmxpcEluWCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XG4gICAgb3BhY2l0eTogMTsgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC01ZGVnKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7IH0gfVxuXG4uZmxpcEluWCB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5YOyB9XG5cbkBrZXlmcmFtZXMgZmxpcEluWSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMjBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47IH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XG4gICAgb3BhY2l0eTogMTsgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7IH0gfVxuXG4uZmxpcEluWSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZOyB9XG5cbkBrZXlmcmFtZXMgZmxpcE91dFgge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uZmxpcE91dFgge1xuICBhbmltYXRpb24tbmFtZTogZmxpcE91dFg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7IH1cblxuQGtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOyB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi5mbGlwT3V0WSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTsgfVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG4gICAgb3BhY2l0eTogMTsgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLmxpZ2h0U3BlZWRJbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkSW47XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0OyB9XG5cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goMzBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4ubGlnaHRTcGVlZE91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0O1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9XG5cbkBrZXlmcmFtZXMgcm90YXRlSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4ucm90YXRlSW4ge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47IH1cblxuQGtleWZyYW1lcyByb3RhdGVJbkRvd25MZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLnJvdGF0ZUluRG93bkxlZnQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duTGVmdDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5yb3RhdGVJbkRvd25SaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4ucm90YXRlSW5VcExlZnQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7IH1cblxuQGtleWZyYW1lcyByb3RhdGVJblVwUmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5yb3RhdGVJblVwUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcFJpZ2h0OyB9XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi5yb3RhdGVPdXQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0OyB9XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLnJvdGF0ZU91dERvd25MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0OyB9XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93blJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi5yb3RhdGVPdXREb3duUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0RG93blJpZ2h0OyB9XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4ucm90YXRlT3V0VXBMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4ucm90YXRlT3V0VXBSaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0OyB9XG5cbkBrZXlmcmFtZXMgaGluZ2Uge1xuICAwJSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7IH1cbiAgMjAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OyB9XG4gIDQwJSwgODAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDcwMHB4LCAwKTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLmhpbmdlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGhpbmdlOyB9XG5cbkBrZXlmcmFtZXMgamFja0luVGhlQm94IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOyB9XG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTsgfVxuICA3MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKDNkZWcpOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7IH0gfVxuXG4uamFja0luVGhlQm94IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGphY2tJblRoZUJveDsgfVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cbkBrZXlmcmFtZXMgcm9sbEluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMTIwZGVnKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4ucm9sbEluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvbGxJbjsgfVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cbkBrZXlmcmFtZXMgcm9sbE91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpOyB9IH1cblxuLnJvbGxPdXQge1xuICBhbmltYXRpb24tbmFtZTogcm9sbE91dDsgfVxuXG5Aa2V5ZnJhbWVzIHpvb21JbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMywgMC4zLCAwLjMpOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi56b29tSW4ge1xuICBhbmltYXRpb24tbmFtZTogem9vbUluOyB9XG5cbkBrZXlmcmFtZXMgem9vbUluRG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7IH0gfVxuXG4uem9vbUluRG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duOyB9XG5cbkBrZXlmcmFtZXMgem9vbUluTGVmdCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuMSwgMC4xLCAwLjEpIHRyYW5zbGF0ZTNkKC0xMDAwcHgsIDAsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7IH0gfVxuXG4uem9vbUluTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5MZWZ0OyB9XG5cbkBrZXlmcmFtZXMgem9vbUluUmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOyB9IH1cblxuLnpvb21JblJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0OyB9XG5cbkBrZXlmcmFtZXMgem9vbUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOyB9IH1cblxuLnpvb21JblVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblVwOyB9XG5cbkBrZXlmcmFtZXMgem9vbU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi56b29tT3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7IH1cblxuQGtleWZyYW1lcyB6b29tT3V0RG93biB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoMCwgLTYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMiwgMSk7IH0gfVxuXG4uem9vbU91dERvd24ge1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dERvd247IH1cblxuQGtleWZyYW1lcyB6b29tT3V0TGVmdCB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyOyB9IH1cblxuLnpvb21PdXRMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRMZWZ0OyB9XG5cbkBrZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyOyB9IH1cblxuLnpvb21PdXRSaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0UmlnaHQ7IH1cblxuQGtleWZyYW1lcyB6b29tT3V0VXAge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1LCAwLjA1NSwgMC42NzUsIDAuMTkpOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOyB9IH1cblxuLnpvb21PdXRVcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7IH1cblxuQGtleWZyYW1lcyBzbGlkZUluRG93biB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH0gfVxuXG4uc2xpZGVJbkRvd24ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247IH1cblxuQGtleWZyYW1lcyBzbGlkZUluTGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH0gfVxuXG4uc2xpZGVJbkxlZnQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkxlZnQ7IH1cblxuQGtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH0gfVxuXG4uc2xpZGVJblJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfSB9XG5cbi5zbGlkZUluVXAge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblVwOyB9XG5cbkBrZXlmcmFtZXMgc2xpZGVPdXREb3duIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7IH0gfVxuXG4uc2xpZGVPdXREb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0RG93bjsgfVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfSB9XG5cbi5zbGlkZU91dExlZnQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0OyB9XG5cbkBrZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9IH1cblxuLnNsaWRlT3V0UmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0VXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7IH0gfVxuXG4uc2xpZGVPdXRVcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dFVwOyB9XG5cbiNwZ3JhcGgge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMzc5NjgzO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIG1hcmdpbjogMTBweCAwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOTgwYjk7XG4gIGNvbG9yOiAjRkZGOyB9XG5cbi5wLXRpcCAuZm9udGF3ZXNvbWUtaWNvbnMge1xuICBmb250LXNpemU6IDNlbTtcbiAgcGFkZGluZzogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogNTBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI5ODBiOTsgfVxuXG4ucC10aXAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpcC10aXRsZSB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBmb250LXdlaWdodDogYm9sZDsgfVxuXG4ucC10aXAgLmZpZWxkLS1uYW1lLWZpZWxkLXRpcC1ib2R5IHAge1xuICBjb2xvcjogI0ZGRjsgfVxuXG5oMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIGNvbG9yOiAjMjk4MGI5OyB9XG5cbiN0dXJua2V5LWNyZWRpdCB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDEyMDBweCkge1xuICAuYXV0by1jbGVhciAuY29sLWxnLTE6bnRoLWNoaWxkKDEybisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmF1dG8tY2xlYXIgLmNvbC1sZy0yOm50aC1jaGlsZCg2bisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmF1dG8tY2xlYXIgLmNvbC1sZy0zOm50aC1jaGlsZCg0bisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmF1dG8tY2xlYXIgLmNvbC1sZy00Om50aC1jaGlsZCgzbisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmF1dG8tY2xlYXIgLmNvbC1sZy02Om50aC1jaGlsZChvZGQpIHtcbiAgICBjbGVhcjogbGVmdDsgfVxuICAuY3VzdG9tLWNhcm91c2VsLWNhcHRpb24ge1xuICAgIGxlZnQ6IDEwJTsgfSB9XG5cbkBtZWRpYSAobWluLXdpZHRoOiA5OTJweCkgYW5kIChtYXgtd2lkdGg6IDExOTlweCkge1xuICAuYXV0by1jbGVhciAuY29sLW1kLTE6bnRoLWNoaWxkKDEybisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmF1dG8tY2xlYXIgLmNvbC1tZC0yOm50aC1jaGlsZCg2bisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmF1dG8tY2xlYXIgLmNvbC1tZC0zOm50aC1jaGlsZCg0bisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmF1dG8tY2xlYXIgLmNvbC1tZC00Om50aC1jaGlsZCgzbisxKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmF1dG8tY2xlYXIgLmNvbC1tZC02Om50aC1jaGlsZChvZGQpIHtcbiAgICBjbGVhcjogbGVmdDsgfVxuICAuY3VzdG9tLWNhcm91c2VsLWNhcHRpb24ge1xuICAgIGxlZnQ6IDUlOyB9IH1cblxuQG1lZGlhIChtaW4td2lkdGg6IDc2OHB4KSBhbmQgKG1heC13aWR0aDogOTkxcHgpIHtcbiAgLmF1dG8tY2xlYXIgLmNvbC1zbS0xOm50aC1jaGlsZCgxMm4rMSkge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5hdXRvLWNsZWFyIC5jb2wtc20tMjpudGgtY2hpbGQoNm4rMSkge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5hdXRvLWNsZWFyIC5jb2wtc20tMzpudGgtY2hpbGQoNG4rMSkge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5hdXRvLWNsZWFyIC5jb2wtc20tNDpudGgtY2hpbGQoM24rMSkge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5hdXRvLWNsZWFyIC5jb2wtc20tNjpudGgtY2hpbGQob2RkKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmN1c3RvbS1jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBsZWZ0OiAzJTsgfVxuICAuaG9yei1yb3ctZnJvbnQgLm5ld3MtdGh1bWIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH0gfVxuXG5AbWVkaWEgKG1heC13aWR0aDogNzY3cHgpIHtcbiAgLmF1dG8tY2xlYXIgLmNvbC14cy0xOm50aC1jaGlsZCgxMm4rMSkge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5hdXRvLWNsZWFyIC5jb2wteHMtMjpudGgtY2hpbGQoNm4rMSkge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5hdXRvLWNsZWFyIC5jb2wteHMtMzpudGgtY2hpbGQoNG4rMSkge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5hdXRvLWNsZWFyIC5jb2wteHMtNDpudGgtY2hpbGQoM24rMSkge1xuICAgIGNsZWFyOiBsZWZ0OyB9XG4gIC5hdXRvLWNsZWFyIC5jb2wteHMtNjpudGgtY2hpbGQob2RkKSB7XG4gICAgY2xlYXI6IGxlZnQ7IH1cbiAgLmN1c3RvbS1jYXJvdXNlbC1jYXB0aW9uIHtcbiAgICBsZWZ0OiAwJTsgfSB9XG5cbi5ibG9jay12aWV3cy1ibG9ja2R1cGxpY2F0ZS1vZi1mcm9udC1jYXRlZ29yaWVzLWJsb2NrLTEge1xuICBtYXJnaW4tdG9wOiA0JTsgfVxuXG4ucm93LWNlbnRlcmVkIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jb2wtY2VudGVyZWQge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZsb2F0OiBub25lO1xuICAvKiByZXNldCB0aGUgdGV4dC1hbGlnbiAqL1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAvKiBpbmxpbmUtYmxvY2sgc3BhY2UgZml4ICovXG4gIG1hcmdpbi1yaWdodDogLTRweDsgfVxuXG5AbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDc2OHB4KSB7XG4gIC5ncmlkIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLnN1Yi10aXRsZSB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gIC5jYXRlZ29yeS1ibG9jayAuaW1nLXJlc3BvbnNpdmUge1xuICAgIG1heC13aWR0aDogNjUlOyB9XG4gIC5zbGlkZSAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gICAgLnNsaWRlIC5jYXJvdXNlbC1jYXB0aW9uIHAge1xuICAgICAgZm9udC1zaXplOiAxZW0gIWltcG9ydGFudDsgfVxuICAgIC5zbGlkZSAuY2Fyb3VzZWwtY2FwdGlvbiBoMiB7XG4gICAgICBmb250LXNpemU6IDJlbSAhaW1wb3J0YW50O1xuICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmhpZ2hsaWdodGVkIHtcbiAgICBtYXJnaW4tdG9wOiA4cHg7IH1cbiAgICAuaGlnaGxpZ2h0ZWQgLmltZy1yZXNwb25zaXZlIHtcbiAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICB1bC5oZWFkZXItb3B0aW9ucyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuYmFyLWRlZmF1bHQgLm5hdmJhci10ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5uYXZiYXItaXMtZml4ZWQtdG9wIHtcbiAgICBtYXJnaW4tdG9wOiAxODBweCAhaW1wb3J0YW50OyB9XG4gIC5yZWdpb24tY29udGVudC1mcm9udC1sZWZ0IC5pbWctcmVzcG9uc2l2ZSB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAucGFnZS1ub2RlLXR5cGUtcGFnZSAucmVnaW9uLWNvbnRlbnQge1xuICAgIHBhZGRpbmc6IDBweDsgfSB9XG5cbi52aWRlby1yZXNwb25zaXZlIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZy1ib3R0b206IDU2LjI1JTtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7IH1cblxuLnZpZGVvLXJlc3BvbnNpdmUgaWZyYW1lIHtcbiAgbGVmdDogMDtcbiAgdG9wOiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIHdpZHRoOiAxMDAlO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA3NjlweCkgYW5kIChtYXgtd2lkdGg6IDk5MnB4KSB7XG4gIC5ncmlkIHtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdGV4dCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAjYmxvY2stY2lyZXMtYm9vdHN0cmFwLXNlYXJjaCB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICB1bC5oZWFkZXItb3B0aW9ucyB7XG4gICAgZGlzcGxheTogbm9uZTsgfVxuICAuc2xpZGUgLmNhcm91c2VsLWNhcHRpb24ge1xuICAgIGhlaWdodDogYXV0bzsgfVxuICAgIC5zbGlkZSAuY2Fyb3VzZWwtY2FwdGlvbiBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMWVtICFpbXBvcnRhbnQ7IH1cbiAgICAuc2xpZGUgLmNhcm91c2VsLWNhcHRpb24gaDIge1xuICAgICAgZm9udC1zaXplOiAyZW0gIWltcG9ydGFudDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoOiA5OTNweCkge1xuICAuZ3JpZCB7XG4gICAgaGVpZ2h0OiAzMDBweDsgfVxuICAubmF2YmFyLWRlZmF1bHQgLm5hdmJhci10ZXh0IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICNtYXR0LXNlYXJjaCAuZm9ybS1zZWFyY2guZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTAwJTsgfSB9XG5cbiNwcmltYXJ5LWhvbGRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOTgwYjk7XG4gIGNvbG9yOiAjRkZGO1xuICBtYXJnaW4tYm90dG9tOiAzJTtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICMyMDYzOGY7IH1cbiAgI3ByaW1hcnktaG9sZGVyIGgxIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBmb250LXNpemU6IDIuNWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgcGFkZGluZzogMTBweCAwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG5cbi5jZW50ZXItY29udGVudCB7XG4gIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgZGlzcGxheTogZmxleDtcbiAgLXdlYmtpdC1hbGlnbi1pdGVtczogY2VudGVyO1xuICBhbGlnbi1pdGVtczogY2VudGVyO1xuICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjsgfVxuXG4ucGF0aC1mcm9udHBhZ2UgaDEucGFnZS1oZWFkZXIge1xuICBkaXNwbGF5OiBub25lOyB9XG5cbi5wYWdlLWhlYWRlciB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLmZhIHtcbiAgcGFkZGluZzogMTBweDsgfVxuICAuZmE6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQ0YwRjE7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBib3JkZXItcmFkaXVzOiAyNXB4OyB9XG4gIC5mYTphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45NSk7IH1cblxuLmZvb3RlciBpLmZhOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTtcbiAgcGFkZGluZzogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogMjVweDsgfVxuXG4uZmEtdGFnIHtcbiAgcGFkZGluZy1yaWdodDogM3B4OyB9XG5cbi5mYS5mYS10YWc6aG92ZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lOyB9XG5cbi50b29sdGlwLWFycm93LFxuKyAudG9vbHRpcCA+IC50b29sdGlwLWlubmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI5ODBiOTsgfVxuXG4udG9vbHRpcC1pbm5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICMyOTgwYjk7XG4gIGNvbG9yOiAjZmZmOyB9XG5cbi50b29sdGlwLnRvcCAudG9vbHRpcC1hcnJvdyB7XG4gIGJvcmRlci10b3AtY29sb3I6ICMyOTgwYjk7IH1cblxuLnRvb2x0aXAucmlnaHQgLnRvb2x0aXAtYXJyb3cge1xuICBib3JkZXItcmlnaHQtY29sb3I6ICMyOTgwYjk7IH1cblxuLnRvb2x0aXAuYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgYm9yZGVyLWJvdHRvbS1jb2xvcjogIzI5ODBiOTsgfVxuXG4udG9vbHRpcC5sZWZ0IC50b29sdGlwLWFycm93IHtcbiAgYm9yZGVyLWxlZnQtY29sb3I6ICMyOTgwYjk7IH1cblxuaDEucGFnZS1oZWFkZXIge1xuICBmb250LXNpemU6IDRyZW07XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuLnBhZ2UtaGVhZGVyIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ucGF0aC1mcm9udHBhZ2UgLnJlZ2lvbi1jb250ZW50IHtcbiAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7IH1cblxuLmZhdGZvbnQge1xuICBjb2xvcjogIzc3Nzc3NztcbiAgZm9udC1zaXplOiAycmVtOyB9XG5cbi5jYXRlZ29yeS10YWcge1xuICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UtaW4tb3V0O1xuICBtaW4taGVpZ2h0OiAxNDBweDtcbiAgcGFkZGluZzogMjBweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4OyB9XG4gIC5jYXRlZ29yeS10YWcgLmg0IHtcbiAgICBmb250LXdlaWdodDogYm9sZDsgfVxuICAuY2F0ZWdvcnktdGFnIHAge1xuICAgIGZvbnQtc2l6ZTogMTJweDsgfVxuICAuY2F0ZWdvcnktdGFnOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNGMEYxOyB9XG5cbmltZy5kZXNrLWltZyB7XG4gIHdpZHRoOiA1MCU7IH1cblxucCB7XG4gIGNvbG9yOiAjNjc2NzY3O1xuICBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtc2l6ZTogMS42MjVyZW07IH1cblxuYTpsaW5rLCBhOnZpc2l0ZWQge1xuICBjb2xvcjogIzI5ODBiOTtcbiAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZSAhaW1wb3J0YW50OyB9XG5cbmE6aG92ZXIge1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4vKlxuLmRhdGUtc3RhbXAsIHRpbWUge1xuXHRmb250LXNpemU6IDEuOHJlbTtcblx0Y29sb3I6IGRhcmtlbigkY29sb3ItZ3JheSwgMTUlKTtcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbn1cbiovXG5oMSB7XG4gIGZvbnQtc2l6ZTogOTZweDtcbiAgZm9udC1zaXplOiA2cmVtOyB9XG5cbi5wYWdlLWludHJvIHtcbiAgbWFyZ2luLWJvdHRvbTogNSU7XG4gIG1hcmdpbi1sZWZ0OiAyJTtcbiAgZm9udC1zaXplOiAzMnB4O1xuICBmb250LXNpemU6IDJyZW07XG4gIGNvbG9yOiAjNzc5MzlhO1xuICBmb250LXdlaWdodDogMzAwOyB9XG5cbmgxIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG4ucmVhZC1tb3JlIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogYWxsIDFzIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBhbGwgMXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGFsbCAxcyBlYXNlLWluLW91dDtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4ucmVhZC1tb3JlOmFmdGVyIHtcbiAgY29udGVudDogXCJcXDAwMjc5RVwiO1xuICBjb2xvcjogIzI5ODBiOTtcbiAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIHRyYW5zaXRpb246IGFsbCAuNHMgLjRzO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4yNTZzIGVhc2UtaW4tb3V0O1xuICAtbW96LXRyYW5zaXRpb246IGFsbCAuMjU2cyBlYXNlLWluLW91dDtcbiAgLW8tdHJhbnNpdGlvbjogYWxsIC4yNTZzIGVhc2UtaW4tb3V0O1xuICB0cmFuc2l0aW9uOiBhbGwgLjI1NnMgZWFzZS1pbi1vdXQ7XG4gIGJvcmRlci1ib3R0b206IG5vbmU7IH1cblxuLnJlYWQtbW9yZTpob3ZlcjphZnRlciB7XG4gIHJpZ2h0OiAtMnB4O1xuICBib3JkZXItYm90dG9tOiBub25lOyB9XG5cbi5ib3JkZXItbGVmdCB7XG4gIGJvcmRlci1sZWZ0OiAycHggc29saWQgI0VDRjBGMTtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG5cbi5jdXN0b20tY2Fyb3VzZWwtY2FwdGlvbiB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgcGFkZGluZzogNXB4IDIwcHg7XG4gIGNvbG9yOiAjRkZGO1xuICBib3R0b206IDBweDtcbiAgb3BhY2l0eTogLjg7XG4gIG1heC13aWR0aDogNjAlOyB9XG4gIC5jdXN0b20tY2Fyb3VzZWwtY2FwdGlvbiBoMiB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgZm9udC1zaXplOiA3MHB4O1xuICAgIGZvbnQtc2l6ZTogNC4zNzVyZW07XG4gICAgdGV4dC1zaGFkb3c6IDBweCAwcHggMTJweCByZ2JhKDAsIDAsIDAsIDAuOCk7IH1cbiAgLmN1c3RvbS1jYXJvdXNlbC1jYXB0aW9uIHAge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyOTgwYjk7XG4gICAgb3BhY2l0eTogMTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBmb250LXNpemU6IDI2cHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBmb250LXN0eWxlOiBpdGFsaWM7XG4gICAgcGFkZGluZzogMjBweDsgfVxuXG4uc2xpZGUtYnV0dG9uIHtcbiAgcGFkZGluZzogOHB4IDIwcHggOHB4IDIwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNGRkY7XG4gIGNvbG9yOiAjRkZGO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lO1xuICBtYXJnaW4tdG9wOiA1cHg7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuICAuc2xpZGUtYnV0dG9uOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIGNvbG9yOiAjMjk4MGI5O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICAuc2xpZGUtYnV0dG9uIGEge1xuICAgIGNvbG9yOiAjRkZGOyB9XG5cbi5zbGlkZS1jcmVkaXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA1cHg7XG4gIGJvdHRvbTogMjVweDtcbiAgZm9udC1zdHlsZTogaXRhbGljO1xuICBmb250LXNpemU6IC45NWVtO1xuICBjb2xvcjogI2ZmZjsgfVxuXG4uc3ViLXRpdGxlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzAwMDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICBwYWRkaW5nOiAuOHJlbTsgfVxuICAuc3ViLXRpdGxlIHAge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHBhZGRpbmc6IDRweDtcbiAgICBtYXJnaW4tdG9wOiA0cHg7XG4gICAgZm9udC1zaXplOiAyMnB4O1xuICAgIGZvbnQtc2l6ZTogMS4zNzVyZW07IH1cbiAgLnN1Yi10aXRsZSBoMiB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLnN1Yi10aXRsZSBoMyB7XG4gICAgY29sb3I6ICNGRkY7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuLm5hdmJhci1icmFuZCB7XG4gIG1hcmdpbi10b3A6IDBweDtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG5oZWFkZXIjbmF2YmFyLm5hdmJhci5uYXZiYXItZGVmYXVsdC5uYXZiYXItc3RhdGljLXRvcCB7XG4gIG1hcmdpbi1ib3R0b206IDBweDtcbiAgbWFyZ2luOiAwcHg7IH1cblxuLmhlYWRlci1vcHRpb25zIHtcbiAgdHJhbnNpdGlvbjogYWxsIDFzO1xuICBsaXN0LXN0eWxlOiBub25lO1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctYm90dG9tOiAzcHg7XG4gIG1hcmdpbi10b3A6IDEwcHg7IH1cbiAgLmhlYWRlci1vcHRpb25zIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbjogMHB4IGF1dG87XG4gICAgcGFkZGluZy1yaWdodDogNXB4OyB9XG4gIC5oZWFkZXItb3B0aW9ucyBmYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VDRjBGMTsgfVxuICAgIC5oZWFkZXItb3B0aW9ucyBmYTpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZSAhaW1wb3J0YW50OyB9XG4gIC5oZWFkZXItb3B0aW9uczpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0VDRjBGMTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4OyB9XG5cbi5oZWFkZXItb3B0aW9uczphY3RpdmUgLmZhIHtcbiAgdHJhbnNmb3JtOiBzY2FsZSgwLjksIDAuOSk7IH1cblxuLm1vZGFsIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cblxuLm1vZGFsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6ICcnO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgbWFyZ2luLXJpZ2h0OiAtNHB4O1xuICAvKiBBZGp1c3RzIGZvciBzcGFjaW5nICovIH1cblxuLm1vZGFsLWRpYWxvZyB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgdGV4dC1hbGlnbjogbGVmdDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4jZWRpdC1rZXlzLS0yIHtcbiAgYmFja2dyb3VuZDogbm9uZTtcbiAgYm9yZGVyLXJhZGl1czogMHB4O1xuICBib3JkZXI6IG5vbmU7XG4gIGJveC1zaGFkb3c6IG5vbmU7XG4gIGhlaWdodDogNjVweDtcbiAgZm9udC1zaXplOiA0cmVtO1xuICBmb250LXdlaWdodDogMjAwO1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbiAgd2lkdGg6IDEwMCU7IH1cblxuZGl2LmlucHV0LWdyb3VwIHtcbiAgd2lkdGg6IDEwMCU7IH1cblxuLnRvZ2dsZS1zZWFyY2gtY2xvc2UgLmdseXBoaWNvbiB7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4udG9nZ2xlLXNlYXJjaC1jbG9zZSAuZ2x5cGhpY29uIHNwYW46aG92ZXIge1xuICBjb2xvcjogIzI5ODBiOTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5mb290ZXItbG9nb3MgaW1nIHtcbiAgbWF4LXdpZHRoOiAyMDBweDtcbiAgaGVpZ2h0OiBhdXRvOyB9XG5cbiNtaXNzaW9uLWJsb2NrIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzIwNjM4ZjtcbiAgcGFkZGluZzogNXB4O1xuICBvdmVyZmxvdzogYXV0bztcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBjb2xvcjogIzI5ODBiOSAhaW1wb3J0YW50OyB9XG4gICNtaXNzaW9uLWJsb2NrIHAge1xuICAgIGNvbG9yOiAjNDc0NzQ3OyB9XG4gICNtaXNzaW9uLWJsb2NrIGgyIHtcbiAgICBjb2xvcjogIzQ3NDc0NzsgfVxuICAjbWlzc2lvbi1ibG9jayBoMyB7XG4gICAgY29sb3I6ICMyOTgwYjk7IH1cblxuI2N0YS1ibG9jayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkNmQ2ZDY7XG4gIG92ZXJmbG93OiBhdXRvO1xuICBtYXJnaW4tYm90dG9tOiAzJTtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICNjOWM5Yzk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgdG9wOiAtNDBweDtcbiAgcGFkZGluZy1ib3R0b206IDMwcHg7IH1cbiAgI2N0YS1ibG9jayAucmVnaW9uLWN0YSB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG1hcmdpbi10b3A6IDQwcHg7IH1cbiAgICAjY3RhLWJsb2NrIC5yZWdpb24tY3RhIGgzIHtcbiAgICAgIG1hcmdpbi10b3A6IDBweDsgfVxuXG4uZm9vdC10d28ge1xuICBjb2xvcjogI2ZmZjtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzI5ODBiOTtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZWZlZjtcbiAgaGVpZ2h0OiBhdXRvO1xuICBtYXJnaW46IDBweCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHBhZGRpbmc6IDMlO1xuICBib3JkZXItdG9wOiAycHggc29saWQgI2Q2ZDZkNjtcbiAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC5mb290LXR3byBwIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuICAuZm9vdC10d28gLmZvbnRhd2Vzb21lLWljb24ge1xuICAgIGZvbnQtc2l6ZTogMjVweDtcbiAgICBwYWRkaW5nOiAxMHB4OyB9XG5cbi5jZW50ZXJlZCB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyOyB9XG5cbi5mb290LW9uZSB7XG4gIGNvbG9yOiAjNDc0NzQ3O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICBoZWlnaHQ6IGF1dG87XG4gIG1hcmdpbjogMHB4IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgcGFkZGluZzogMyU7XG4gIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZDZkNmQ2OyB9XG4gIC5mb290LW9uZSBwIHtcbiAgICBjb2xvcjogIzQ3NDc0NzsgfVxuXG4uZnJvbnQtY2F0ZWdvcnkge1xuICBtaW4taGVpZ2h0OiAxMjBweDtcbiAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuXG4uZnJvbnQtc3BhY2VyIHtcbiAgbWFyZ2luOiAyJSAwcHggMiUgMHB4OyB9XG5cbi5tYWluLWNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG4gIHBhZGRpbmctYm90dG9tOiAzJTsgfVxuXG4ucmVnaW9uLWNvbnRlbnQgLm5vdC1mcm9udCB7XG4gIHBhZGRpbmctYm90dG9tOiAxMCU7IH1cblxuLmltZy1zaWRlYmFyIHtcbiAgcGFkZGluZy1sZWZ0OiAyMHB4OyB9XG4gIC5pbWctc2lkZWJhciBpbWcge1xuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAyMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAyMHB4OyB9XG5cbmJvZHkgcCwgYm9keSBoMSwgYm9keSBoMiwgYm9keSBoMywgYm9keSBsaSwgYm9keSB1bCB7XG4gIGNvbG9yOiAjN2I3YjdiOyB9XG5cbmJvZHkgaW1nLmFsaWduLWNlbnRlciB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuYm9keS5uYXZiYXItaXMtZml4ZWQtdG9wIHtcbiAgbWFyZ2luLXRvcDogMTgwcHg7IH1cblxuYS5sb2dvLm5hdmJhci1idG4ucHVsbC1sZWZ0IHtcbiAgZGlzcGxheTogbm9uZTsgfVxuICBhLmxvZ28ubmF2YmFyLWJ0bi5wdWxsLWxlZnQgaW1nIHtcbiAgICB3aWR0aDogMTMwcHg7IH1cbiAgICBhLmxvZ28ubmF2YmFyLWJ0bi5wdWxsLWxlZnQgaW1nOmhvdmVyIHtcbiAgICAgIGZpbGw6ICMyOTgwYjk7IH1cblxuLm1hZGUtd2l0aCB7XG4gIGNvbG9yOiAjMjE2NjkzO1xuICBmb250LXNpemU6IC45NXJlbTtcbiAgdHJhbnNpdGlvbjogYWxsIDVzOyB9XG4gIC5tYWRlLXdpdGg6aG92ZXIge1xuICAgIGNvbG9yOiAjRkZGOyB9XG4gIC5tYWRlLXdpdGg6aG92ZXIgPiAuZmEtaGVhcnQge1xuICAgIGNvbG9yOiByZWQgIWltcG9ydGFudDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjk4MGI5O1xuICAgIGJvcmRlci1yYWRpdXM6IG5vbmUgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiBub25lO1xuICAgIHRyYW5zaXRpb246IGFsbCA1czsgfVxuICAubWFkZS13aXRoIC5mYS1oZWFydCB7XG4gICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICMyMTY2OTMgIWltcG9ydGFudDsgfVxuXG4uY29weXJpZ2h0IHtcbiAgY29sb3I6ICNGRkY7XG4gIGZvbnQtc2l6ZTogMXJlbTsgfVxuXG4jTGF5ZXJfMCBpbWcge1xuICBmaWxsOiAjMzc5NjgzOyB9XG5cbi5jb250YWluZXIuZm9vdCB7XG4gIGJhY2tncm91bmQ6ICMyOTgwYjk7IH1cblxuLnNwb3RsaWdodC1ibG9jayB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNlM2U5ZWI7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgcGFkZGluZy1ib3R0b206IDE1cHg7IH1cbiAgLnNwb3RsaWdodC1ibG9jayAuc3BvdGxpZ2h0LWhlYWRlciB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkMmRiZGU7XG4gICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2M5ZDRkNztcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogNnB4O1xuICAgIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiA2cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAyNXB4OyB9XG4gIC5zcG90bGlnaHQtYmxvY2sgLnNwb3RsaWdodC1ib2R5IHtcbiAgICBwYWRkaW5nOiAxMHB4IDEwcHggMjVweCAxMHB4OyB9XG4gIC5zcG90bGlnaHQtYmxvY2sgLmJvcmRlci1ib3R0b20td2hpdGUge1xuICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCB3aGl0ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMnB4O1xuICAgIG1hcmdpbi1ib3R0b206IDJweDsgfVxuXG4uZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogIzI5ODBiOTtcbiAgYm90dG9tOiAwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYm9yZGVyOiBub25lO1xuICBib3JkZXItYm90dG9tOiBub25lO1xuICBib3JkZXItdG9wOiAycHggc29saWQgIzIwNjM4ZjsgfVxuICAuZm9vdGVyIC5uYXYge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cbiAgLmZvb3RlciAubmF2ID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG1hcmdpbjogNXB4O1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBpbmxpbmU7IH1cbiAgICAuZm9vdGVyIC5uYXYgPiBsaSA+IGE6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIGNvbG9yOiAjMjk4MGI5OyB9XG4gIC5mb290ZXIgLmNvbC1tZC0xMiB7XG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDsgfVxuICAuZm9vdGVyIGgzIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwYWRkaW5nLWJvdHRvbTogNXB4OyB9XG4gIC5mb290ZXIgLnNvY2lhbC1pY29ucyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgLmZvb3RlciAuc29jaWFsLWljb25zIGxpIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICBwYWRkaW5nOiAxMHB4OyB9XG4gICAgICAuZm9vdGVyIC5zb2NpYWwtaWNvbnMgbGk6aG92ZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyOTgwYjk7IH1cbiAgICAuZm9vdGVyIC5zb2NpYWwtaWNvbnMgYSB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICAgIG1hcmdpbjogMTBweDsgfVxuICAgICAgLmZvb3RlciAuc29jaWFsLWljb25zIGE6aG92ZXIge1xuICAgICAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyOTgwYjk7IH1cbiAgLmZvb3RlciB1bCB7XG4gICAgbWFyZ2luOiAwcHggYXV0byAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDBweDsgfVxuICAuZm9vdGVyIC5mYSB7XG4gICAgY29sb3I6ICNGRkY7IH1cbiAgLmZvb3RlciBhIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmZvb3RlciBwIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuICAuZm9vdGVyIGgyIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuXG4uZm9vdGVyIHtcbiAgbWFyZ2luLXRvcDogMHB4OyB9XG5cbi5mb290ZXIuZm9vdGVyLmNvbnRhaW5lciB7XG4gIGJhY2tncm91bmQ6ICMyOTgwYjk7XG4gIHdpZHRoOiAxMDAlOyB9XG5cbi5pbmRlbnRlZCB7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICBib3JkZXItbGVmdDogM3B4IHNvbGlkICMzNzk2ODM7IH1cbiAgLmluZGVudGVkIC5jb21tZW50LWJveCB7XG4gICAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogMHB4O1xuICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6IDBweDsgfVxuXG4uY29tbWVudC1ib3gge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjlmOWY5O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFQ0YwRjE7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIG1hcmdpbi1ib3R0b206IDEwcHg7IH1cbiAgLmNvbW1lbnQtYm94IGgzIHtcbiAgICBjb2xvcjogIzAwMDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VDRjBGMTsgfVxuICAuY29tbWVudC1ib3g6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNlZGVkZWQ7IH1cbiAgLmNvbW1lbnQtYm94IHVsLmxpbmtzLmxpc3QtaW5saW5lIHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0VDRjBGMTtcbiAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAuY29tbWVudC1ib3ggLmNvbW1lbnRfX2F1dGhvciB7XG4gICAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5jb21tZW50LWJveCAuZGF0YS1jb21tZW50LXRpbWVzdGFtcCB7XG4gICAgY29sb3I6IHJlZDsgfVxuXG4uY29udGV4dC1ldmVudCB7XG4gIG1hcmdpbjogMjBweCAwcHggMjBweCAwcHg7XG4gIGJvcmRlci10b3A6ICNFQ0YwRjEgc29saWQgMXB4O1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuI2NhbC1kYXkge1xuICBwYWRkaW5nOiAxMHB4O1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFQ0YwRjE7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjk4MGI5O1xuICBib3JkZXItYm90dG9tOiAjMjQ3MmE0O1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDJyZW07IH1cbiAgI2NhbC1kYXkgLmZpZWxkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuICAgICNjYWwtZGF5IC5maWVsZDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gICNjYWwtZGF5IC5tb250aCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5ODBiOTtcbiAgICBib3JkZXItYm90dG9tOiAjMjQ3MmE0O1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIHdpZHRoOiAxMjAlO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogMTAlO1xuICAgIHRvcDogLTEwcHg7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgI2NhbC1kYXkgLm1vbnRoIHAge1xuICAgICAgbGVmdDogMTBweDsgfVxuICAgICNjYWwtZGF5IC5tb250aDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjk4MGI5OyB9XG4gICNjYWwtZGF5IC5kYXkge1xuICAgIGNvbG9yOiAjMjk4MGI5O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDRyZW07XG4gICAgcGFkZGluZy10b3A6IDIwcHg7IH1cblxuLnNpZGViYXIge1xuICBjb2xvcjogZGFya2VuICNFQ0YwRjEsIDUlO1xuICBmb250LXNpemU6IDIycHg7XG4gIGZvbnQtc2l6ZTogMS4zNzVyZW07IH1cbiAgLnNpZGViYXIgLmZpZWxkIHtcbiAgICBwYWRkaW5nOiAxMHB4IDBweCAxMHB4IDBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VDRjBGMTsgfVxuICAuc2lkZWJhciAuZmllbGQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmYmZjZmM7IH1cbiAgLnNpZGViYXIgcCB7XG4gICAgbWFyZ2luLWxlZnQ6IDEwcHg7IH1cbiAgLnNpZGViYXIgLmZpZWxkLS1uYW1lLWZpZWxkLXRhZyB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4uZnVsbC1wcm9maWxlLXBpbGwge1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIHBhZGRpbmc6IDVweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI2VmZjJmMztcbiAgZmxvYXQ6IHJpZ2h0OyB9XG4gIC5mdWxsLXByb2ZpbGUtcGlsbDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmNzsgfVxuXG4uZXhwbG9kZS1yb3cge1xuICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuICBwYWRkaW5nLWJvdHRvbTogNDBweDsgfVxuXG4ubWVtYmVyLWluZm8ge1xuICBwYWRkaW5nOiAyMHB4O1xuICBmb250LXdlaWdodDogYm9sZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1pbi1oZWlnaHQ6IDJlbTsgfVxuXG4ucHJvamVjdHMtdmlld3Mtcm93IHtcbiAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgcGFkZGluZy1ib3R0b206IDIwcHg7IH1cblxuLmltYWdlLXJvdW5kLTMwMCB7XG4gIGJvcmRlci1yYWRpdXM6IDE1MHB4O1xuICBtYXJnaW46IDBweCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmltYWdlLXJvdW5kLTMwMCBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDE1MHB4O1xuICAgIG1hcmdpbjogMHB4IGF1dG87IH1cbiAgLmltYWdlLXJvdW5kLTMwMDphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OCk7IH1cblxuLmltYWdlLXJvdW5kLTE1MCB7XG4gIGJvcmRlci1yYWRpdXM6IDc1cHg7XG4gIG1hcmdpbjogMHB4IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAuaW1hZ2Utcm91bmQtMTUwIC5maWVsZDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTsgfVxuICAuaW1hZ2Utcm91bmQtMTUwIGltZyB7XG4gICAgYm9yZGVyLXJhZGl1czogNzVweDtcbiAgICBtYXJnaW46IDBweCBhdXRvOyB9XG4gIC5pbWFnZS1yb3VuZC0xNTA6YWN0aXZlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuOTgpOyB9XG5cbi5pbWFnZS1yb3VuZC0xMDAge1xuICBib3JkZXItcmFkaXVzOiA1MHB4O1xuICBtYXJnaW46IDBweCBhdXRvO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgLmltYWdlLXJvdW5kLTEwMCAuZmllbGQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6IG5vbmU7IH1cbiAgLmltYWdlLXJvdW5kLTEwMCBpbWcge1xuICAgIGJvcmRlci1yYWRpdXM6IDc1cHg7XG4gICAgbWFyZ2luOiAwcHggYXV0bzsgfVxuICAuaW1hZ2Utcm91bmQtMTAwOmFjdGl2ZSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KTsgfVxuXG4uY2h1LXJvdyB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG4uaG9yei1yb3cge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VDRjBGMTtcbiAgcGFkZGluZzogNSUgMCA1JSAwO1xuICBtYXJnaW4tdG9wOiAxJTsgfVxuICAuaG9yei1yb3cgLmluZm8tYmFyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRUNGMEYxO1xuICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICBwYWRkaW5nOiA2cHg7IH1cbiAgLmhvcnotcm93IC5kYXRlLXN0YW1wIHtcbiAgICBmb250LXNpemU6IDQ1cHg7XG4gICAgZm9udC1zaXplOiAyLjgxMjVyZW07XG4gICAgcGFkZGluZy10b3A6IDIwcHggIWltcG9ydGFudDsgfVxuICAuaG9yei1yb3cgLnRpdGxlIHtcbiAgICBmb250LXNpemU6IDNyZW07XG4gICAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgICAuaG9yei1yb3cgLnRpdGxlIGE6bGluayB7XG4gICAgICBjb2xvcjogIzI5ODBiOTsgfVxuICAuaG9yei1yb3cgYTpsaW5rIHtcbiAgICBjb2xvcjogIzI5ODBiOTsgfVxuICAuaG9yei1yb3cgLm5ld3MtdGh1bWIgaW1nIHtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgYm9yZGVyLXJhZGl1czogMTZweDsgfVxuICAgIC5ob3J6LXJvdyAubmV3cy10aHVtYiBpbWc6aG92ZXIge1xuICAgICAgcGFkZGluZzogMXB4OyB9XG4gICAgLmhvcnotcm93IC5uZXdzLXRodW1iIGltZzphY3RpdmUge1xuICAgICAgdHJhbnNmb3JtOiBzY2FsZSgwLjk4KTsgfVxuICAuaG9yei1yb3cgLmZhdGZvbnQge1xuICAgIGZvbnQtc2l6ZTogMzhweDtcbiAgICBmb250LXNpemU6IDIuMzc1cmVtO1xuICAgIGNvbG9yOiAjNDk1ZDYyOyB9XG5cbi5uZXdzLXRodW1iIGltZyB7XG4gIHBhZGRpbmc6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDsgfVxuICAubmV3cy10aHVtYiBpbWc6aG92ZXIge1xuICAgIHBhZGRpbmc6IDFweDsgfVxuXG4ucm91bmRlZC1jb3JuZXIgaW1nIHtcbiAgcGFkZGluZzogMHB4O1xuICBib3JkZXItcmFkaXVzOiAxNnB4OyB9XG5cbi5uZXdzLXRodW1iLWZyb250IGltZyB7XG4gIHBhZGRpbmc6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogMTZweDtcbiAgd2lkdGg6IDc1JTtcbiAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5uZXdzLXRodW1iLWZyb250IGltZzpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzI5ODBiOTsgfVxuXG4udmlkLXRodW1iIGltZyB7XG4gIHBhZGRpbmc6IDBweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC52aWQtdGh1bWIgaW1nOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIGN1cnNvcjogcG9pbnRlcjsgfVxuICAudmlkLXRodW1iIGltZzphY3RpdmUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC45OCk7IH1cblxuLmhvcnotcm93LXNtIHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFQ0YwRjE7XG4gIHBhZGRpbmc6IDElIDAgMSUgMDtcbiAgY2xlYXI6IGJvdGg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAxMHB4OyB9XG4gIC5ob3J6LXJvdy1zbTpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cbiAgLmhvcnotcm93LXNtIGgzIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMHB4ICFpbXBvcnRhbnQ7IH1cblxuLmdyaWQge1xuICB3aWR0aDogMTAwJTtcbiAgbWFyZ2luOiA0JTtcbiAgcGFkZGluZzogMjBweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogbm9uZTsgfVxuICAuZ3JpZDpob3ZlciB7XG4gICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNmOGY5ZmE7IH1cbiAgLmdyaWQgLmdyaWQtaW1hZ2UgLmltZy1yZXNwb25zaXZlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7IH1cbiAgLmdyaWQgLmdyaWQtaW5mbyB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7IH1cbiAgLmdyaWQgLmdyaWQtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBmb250LXNpemU6IDEuNzVyZW07XG4gICAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgICBjb2xvcjogIzYzNjM2MzsgfVxuICAuZ3JpZCAuZ3JpZC10YWcge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGNvbG9yOiAjMjk4MGI5O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjRUNGMEYxO1xuICAgIG1hcmdpbi10b3A6IDVweDsgfVxuICAuZ3JpZCBhOmhvdmVyIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmdyaWQgYTp2aXNpdGVkLCAuZ3JpZCBhOmxpbmsge1xuICAgIGNvbG9yOiAjMjk4MGI5OyB9XG5cbi5tZW1iZXItZ3JpZCB7XG4gIHBhZGRpbmc6IDEwcHg7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgbWFyZ2luLWJvdHRvbTogMnJlbTtcbiAgbWluLWhlaWdodDogMzUwcHg7IH1cbiAgLm1lbWJlci1ncmlkOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhOyB9XG4gIC5tZW1iZXItZ3JpZCAubWVtLXRpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMWVtOyB9XG4gIC5tZW1iZXItZ3JpZCAubWVtLWluZm8ge1xuICAgIGZvbnQtc2l6ZTogLjllbTtcbiAgICBjb2xvcjogIzUzNmI3MTsgfVxuICAubWVtYmVyLWdyaWQgaW1nIHtcbiAgICBtYXgtd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogYXV0bztcbiAgICBwYWRkaW5nOiAxMHB4OyB9XG5cbi5ncmlkLWNsZWFuIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbjogMiU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6IG5vbmU7XG4gIG1pbi1oZWlnaHQ6IDI4MHB4O1xuICBwYWRkaW5nLXRvcDogMTBweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIC5ncmlkLWNsZWFuOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjhmOWZhOyB9XG4gIC5ncmlkLWNsZWFuIC5ncmlkLWluZm8ge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdG9wOiA1JTtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBtaW4taGVpZ2h0OiA3MHB4O1xuICAgIHBhZGRpbmc6IDAgNSUgMCA1JTsgfVxuICAuZ3JpZC1jbGVhbiAuZ3JpZC10aXRsZSB7XG4gICAgZm9udC1zaXplOiAzNHB4O1xuICAgIGZvbnQtc2l6ZTogMi4xMjVyZW07XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTsgfVxuICAgIC5ncmlkLWNsZWFuIC5ncmlkLXRpdGxlIGEge1xuICAgICAgY29sb3I6ICM0OTVkNjIgIWltcG9ydGFudDsgfVxuICAuZ3JpZC1jbGVhbiAuZ3JpZC1lbWFpbCB7XG4gICAgZm9udC1zaXplOiAyMHB4O1xuICAgIGZvbnQtc2l6ZTogMS4yNXJlbTtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiAjNzc5MzlhICFpbXBvcnRhbnQ7IH1cbiAgLmdyaWQtY2xlYW4gLmdyaWQtdGFnIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb2xvcjogIzI5ODBiOTtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgI0VDRjBGMTtcbiAgICBtYXJnaW4tdG9wOiA1cHg7IH1cbiAgLmdyaWQtY2xlYW4gYTpob3ZlciB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5ncmlkLWNsZWFuIGE6dmlzaXRlZCwgLmdyaWQtY2xlYW4gYTpsaW5rIHtcbiAgICBjb2xvcjogIzI5ODBiOTsgfVxuXG4udmlldy1jb250ZW50IGgzIHtcbiAgd2lkdGg6IDEwMCU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6IDYwcHg7XG4gIGZvbnQtc2l6ZTogMy43NXJlbTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFQ0YwRjE7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDIwcHggMCAyMHB4IDA7XG4gIGZvbnQtd2VpZ2h0OiAzMDA7XG4gIGNvbG9yOiAjNjg2ODY4OyB9XG5cbi5jb21taXR0ZWUge1xuICBmb250LXNpemU6IDI2cHg7XG4gIGZvbnQtc2l6ZTogMS42MjVyZW07IH1cblxuLnZpZXctY29udGVudCBoMyB7XG4gIHBhZGRpbmc6IDE1cHg7IH1cblxuLmhpZ2hsaWdodGVkLWludGVyaW9yIC5zbGlkZS1jcmVkaXQge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHJpZ2h0OiA1cHg7XG4gIHRvcDogMTUwcHg7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgZm9udC1zaXplOiAuOTVlbTtcbiAgY29sb3I6ICNmZmY7IH1cblxuLmhpZ2hsaWdodGVkLWludGVyaW9yIGltZy5pbWctcmVzcG9uc2l2ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgbWF4LWhlaWdodDogMjAycHg7IH1cblxuLmhpZ2hsaWdodGVkIHtcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bzsgfVxuICAuaGlnaGxpZ2h0ZWQgaW1nLmltZy1yZXNwb25zaXZlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBvYmplY3QtZml0OiBjb3ZlcjtcbiAgICBtYXgtaGVpZ2h0OiAzNTBweDsgfVxuXG4ub3dsLXBhZ2luYXRpb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogLTUwcHg7IH1cblxuLmNoaW1wIC5jYW1wYWlnbiB7XG4gIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjRUNGMEYxO1xuICBwYWRkaW5nOiAyNXB4IDEwcHggMjVweCAxMHB4O1xuICBtaW4taGVpZ2h0OiAxMDBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuY2hpbXAgLmNhbXBhaWduOmxhc3QtY2hpbGQge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7IH1cbiAgLmNoaW1wIC5jYW1wYWlnbjpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZiZmNmYztcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7IH1cblxuLmhvcnotcm93LWZyb250IHtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNFQ0YwRjE7XG4gIHBhZGRpbmc6IDI1cHggMTBweCAyNXB4IDEwcHg7XG4gIG1pbi1oZWlnaHQ6IDEwMHB4O1xuICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gIC5ob3J6LXJvdy1mcm9udDpsYXN0LWNoaWxkIHtcbiAgICBib3JkZXItYm90dG9tOiBub25lOyB9XG4gIC5ob3J6LXJvdy1mcm9udDpob3ZlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjdmNztcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7IH1cbiAgLmhvcnotcm93LWZyb250IC50aXRsZSB7XG4gICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICBmb250LXNpemU6IDEuNWVtO1xuICAgIGNsZWFyOiByaWdodDsgfVxuXG4udGFnIHVsLCAudGFnIHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIG1hcmdpbi1sZWZ0OiAwcHg7XG4gIHBhZGRpbmctbGVmdDogMHB4OyB9XG4gIC50YWcgdWwgbGksIC50YWcgdWwgLmZpZWxkLS1pdGVtLCAudGFnIGxpLCAudGFnIC5maWVsZC0taXRlbSB7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzQ3NDc0NztcbiAgICBjb2xvcjogIzQ3NDc0NztcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgZm9udC1zaXplOiAuOGVtO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgcGFkZGluZy1yaWdodDogNXB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbi5sYWJlbCB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0NzQ3NDc7XG4gIGNvbG9yOiAjNDc0NzQ3O1xuICBwYWRkaW5nOiA1cHg7XG4gIG1hcmdpbi10b3A6IDVweDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICBmb250LXNpemU6IC45ZW07XG4gIGJvcmRlci1yYWRpdXM6IDEycHg7IH1cblxuLmZyb250LWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgLmZyb250LWJsb2NrIGgyIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtd2VpZ2h0OiAyNTA7XG4gICAgZm9udC1zaXplOiA0MHB4O1xuICAgIGZvbnQtc2l6ZTogMi41cmVtOyB9XG4gIC5mcm9udC1ibG9jayAuZGF0ZS1zdGFtcCB7XG4gICAgZm9udC1zaXplOiAuOWVtO1xuICAgIGNvbG9yOiAjNDc0NzQ3O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLmZyb250LWJsb2NrLXJpZ2h0IHtcbiAgbWFyZ2luLXRvcDogMTBweDtcbiAgcGFkZGluZy1ib3R0b206IDEwcHg7IH1cbiAgLmZyb250LWJsb2NrLXJpZ2h0IGEge1xuICAgIGNvbG9yOiAjMjk4MGI5OyB9XG4gIC5mcm9udC1ibG9jay1yaWdodCAubGFiZWwge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMzNzk2ODM7XG4gICAgY29sb3I6ICNGRkY7IH1cblxuYS5idG4uYnRuLWRlZmF1bHQge1xuICBjb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjk4MGI5O1xuICBib3JkZXI6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHg7IH1cbiAgYS5idG4uYnRuLWRlZmF1bHQgYTpsaW5rIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7IH1cbiAgYS5idG4uYnRuLWRlZmF1bHQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICM0MDlhZDU7IH1cblxuYS5idG4tcHJpbWFyeSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICNjZWI4N2MgIWltcG9ydGFudDtcbiAgYm9yZGVyOiBub25lO1xuICB0cmFuc2l0aW9uOiBhbGwgLjRzIGVhc2UtaW4tb3V0OyB9XG4gIGEuYnRuLXByaW1hcnk6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNhNjhhM2UgIWltcG9ydGFudDtcbiAgICB0b3A6IC0xcHggIWltcG9ydGFudDsgfVxuXG5hLmJ0bi5idG4tcHJpbWFyeS5wdWxsLXJpZ2h0IHtcbiAgY29sb3I6ICNGRkY7IH1cblxuYS5idG4uYnRuLXByaW1hcnkge1xuICBjb2xvcjogI0ZGRjsgfVxuXG4uc2xpZGUtcmVzcG9uc2l2ZSB7XG4gIHdpZHRoOiAxMDAlO1xuICBoZWlnaHQ6IGF1dG87IH1cblxuLnBhcnRuZXItaW1nIHtcbiAgcGFkZGluZzogMTBweDsgfVxuICAucGFydG5lci1pbWcgaW1nIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWF4LXdpZHRoOiAxNTBweDsgfVxuICAucGFydG5lci1pbWcgLnZpZXdzLWZpZWxkLXRpdGxlIHtcbiAgICBwYWRkaW5nLXRvcDogMTVweDsgfVxuICAucGFydG5lci1pbWc6aG92ZXIge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNFQ0YwRjE7IH1cblxuLmV2ZW50LWJsb2NrIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgd2lkdGg6IDEwMCU7XG4gIGhlaWdodDogYXV0bzsgfVxuICAuZXZlbnQtYmxvY2sgaW1nIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IGF1dG87IH1cbiAgLmV2ZW50LWJsb2NrIC5ldmVudC1ibG9jay1vdmVybGF5IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdG9wOiAtNTBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjk4MGI5O1xuICAgIGhlaWdodDogNTBweDsgfVxuXG4uZmxleC1jb250YWluZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBhbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogc3BhY2UtYXJvdW5kOyB9XG5cbi5jYXJkIHtcbiAgYm9yZGVyLXJhZGl1czogNnB4O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjk4MGI5O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG4gIGNvbG9yOiAjRkZGO1xuICBtYXJnaW4tdG9wOiAzJTtcbiAgZGlzcGxheTogZmxleDtcbiAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsgfVxuICAuY2FyZCBhIHtcbiAgICBjb2xvcjogI0ZGRjsgfVxuICAuY2FyZCAuY2FyZC1pbWctdG9wIHtcbiAgICBoZWlnaHQ6IDIwMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG9iamVjdC1maXQ6IGNvdmVyOyB9XG4gICAgLmNhcmQgLmNhcmQtaW1nLXRvcCBpbWcge1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgLmNhcmQgLmNhcmQtaWNvbiB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgIGNvbG9yOiAjMjk4MGI5O1xuICAgIGJvcmRlci1yYWRpdXM6IDc1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzI5ODBiOTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIHdpZHRoOiA3NXB4O1xuICAgIGhlaWdodDogNzVweDtcbiAgICBtYXJnaW46IDBweCBhdXRvO1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UtaW4tb3V0O1xuICAgIGFsaWduLXNlbGY6IGNlbnRlcjtcbiAgICB0b3A6IDE1MHB4O1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsgfVxuICAgIC5jYXJkIC5jYXJkLWljb24gLmZvbnRhd2Vzb21lLWljb24ge1xuICAgICAgcGFkZGluZy10b3A6IDE1cHg7IH1cbiAgLmNhcmQgLmNhcmQtYmxvY2sge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgcGFkZGluZy10b3A6IDQwcHg7XG4gICAgbWluLWhlaWdodDogMjAwcHg7IH1cbiAgLmNhcmQgLmNhcmQtdGl0bGUge1xuICAgIGNvbG9yOiAjRkZGO1xuICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgLmNhcmQgLmNhcmQtdGV4dCBwIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwYWRkaW5nLXRvcDogMTBweDsgfVxuICAuY2FyZCAuY2FyZC1hY3Rpb24ge1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAjMjQ3MmE0O1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgbWFyZ2luLXRvcDogNXB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICMyMDYzOGY7XG4gICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDtcbiAgICBtaW4taGVpZ2h0OiA1MHB4O1xuICAgIHBhZGRpbmctdG9wOiA1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgICAuY2FyZCAuY2FyZC1hY3Rpb24gYSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgIGFsaWduLXNlbGY6IGNlbnRlcjsgfVxuICAgIC5jYXJkIC5jYXJkLWFjdGlvbjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMTY0NjY2OyB9XG5cbi5jYXRlZ29yeS1ibG9jayB7XG4gIG1hcmdpbjogMHB4IGF1dG87XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG4gIC5jYXRlZ29yeS1ibG9jayAuY2F0LWltZy1iZyB7XG4gICAgcG9zaXRpb246IGFic29sdXRlOyB9XG4gIC5jYXRlZ29yeS1ibG9jayAuY2F0LWljb24ge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmb250LXNpemU6IDJlbTtcbiAgICBjb2xvcjogIzI5ODBiOTtcbiAgICBib3JkZXItcmFkaXVzOiA3NXB4O1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMyOTgwYjk7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICB3aWR0aDogNzVweDtcbiAgICBoZWlnaHQ6IDc1cHg7XG4gICAgbWFyZ2luOiAwcHggYXV0bztcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgdHJhbnNpdGlvbjogYWxsIC41cyBlYXNlLWluLW91dDsgfVxuICAuY2F0ZWdvcnktYmxvY2sgLmZvbnRhd2Vzb21lLWljb24ge1xuICAgIHBhZGRpbmctdG9wOiA1cHg7IH1cbiAgLmNhdGVnb3J5LWJsb2NrIC5jYXRlZ29yeS1ibG9jay10ZXh0IHtcbiAgICBwYWRkaW5nOiA1cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzI5ODBiOTtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzM3OTY4MztcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG1hcmdpbi10b3A6IDMwcHg7XG4gICAgY29sb3I6ICNmZmY7XG4gICAgbWluLWhlaWdodDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIC5jYXRlZ29yeS1ibG9jayAuY2F0ZWdvcnktYmxvY2stdGV4dCBhIHtcbiAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgZm9udC1zaXplOiAxLjVlbTsgfVxuICAgIC5jYXRlZ29yeS1ibG9jayAuY2F0ZWdvcnktYmxvY2stdGV4dDpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMjk4MGI5O1xuICAgICAgY29sb3I6ICNGRkY7IH1cbiAgICAgIC5jYXRlZ29yeS1ibG9jayAuY2F0ZWdvcnktYmxvY2stdGV4dDpob3ZlciBoMyB7XG4gICAgICAgIGNvbG9yOiAjRkZGOyB9XG4gICAgICAuY2F0ZWdvcnktYmxvY2sgLmNhdGVnb3J5LWJsb2NrLXRleHQ6aG92ZXIgLmZvbnRhd2Vzb21lLWljb24ge1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjVzIGVhc2UtaW4tb3V0O1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuMSwgMS4xKTsgfVxuICAgICAgLmNhdGVnb3J5LWJsb2NrIC5jYXRlZ29yeS1ibG9jay10ZXh0OmhvdmVyIC5jYXQtaWNvbiB7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgICAgIC13ZWJraXQtYm94LXNoYWRvdzogMHB4IDJweCAxOHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNzUpO1xuICAgICAgICAtbW96LWJveC1zaGFkb3c6IDBweCAycHggMThweCAwcHggcmdiYSgwLCAwLCAwLCAwLjc1KTtcbiAgICAgICAgYm94LXNoYWRvdzogMHB4IDJweCAxOHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuNzUpOyB9XG4gIC5jYXRlZ29yeS1ibG9jayBoMyB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICBjb2xvcjogI0ZGRjsgfVxuICAgIC5jYXRlZ29yeS1ibG9jayBoMyBhIHtcbiAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA1MDA7IH1cblxuLmZyb250LW5ld3Mge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjMzc5NjgzO1xuICBtYXJnaW46IDEwcHggMHB4IDIwcHggMHB4O1xuICBoZWlnaHQ6IDQwMHB4O1xuICBjb2xvcjogI0ZGRjtcbiAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggMjBweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAuZnJvbnQtbmV3cyBwIHtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwYWRkaW5nLXRvcDogNXB4OyB9XG4gIC5mcm9udC1uZXdzIGltZyB7XG4gICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvOyB9XG4gIC5mcm9udC1uZXdzIGgyIHtcbiAgICBmb250LXNpemU6IDcycHg7XG4gICAgZm9udC1zaXplOiA0LjVyZW07XG4gICAgcGFkZGluZy10b3A6IDMwcHg7IH1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTJweCkge1xuICAuZnJvbnQtbmV3cyB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGhlaWdodDogNjAwcHg7IH1cbiAgICAuZnJvbnQtbmV3cyBpbWcge1xuICAgICAgbWFyZ2luOiAwcHggYXV0bztcbiAgICAgIHdpZHRoOiA4MCU7IH1cbiAgICAuZnJvbnQtbmV3cyBoMiB7XG4gICAgICBwYWRkaW5nLXRvcDogMHB4OyB9IH1cblxuLmV2ZW50LXR5cGUge1xuICBmb250LXNpemU6IDEuMjVyZW07XG4gIGNvbG9yOiAjNmFiMGRlOyB9XG5cbnVsLnNwb25zb3ItbGlzdCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICB1bC5zcG9uc29yLWxpc3QgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgdWwuc3BvbnNvci1saXN0IGxpOmhvdmVyIHtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICMyOTgwYjk7IH1cbiAgdWwuc3BvbnNvci1saXN0IGltZyB7XG4gICAgbWFyZ2luOiAxMHB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmVkOyB9XG5cbjotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOC0gKi9cbiAgY29sb3I6IHJlZDsgfVxuXG46Oi1tb3otcGxhY2Vob2xkZXIge1xuICAvKiBGaXJlZm94IDE5KyAqL1xuICBjb2xvcjogcmVkOyB9XG5cbjotbXMtaW5wdXQtcGxhY2Vob2xkZXIge1xuICBjb2xvcjogcmVkOyB9XG5cbmgyIHtcbiAgZm9udC13ZWlnaHQ6IDMwMDsgfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA5OTVweCkge1xuICAudG9nZ2xlLXNlYXJjaC1jbG9zZSAuZ2x5cGhpY29uIHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHRvcDogLTYwcHg7IH0gfVxuXG4jdG9nZ2xlLXNlYXJjaCB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAjdG9nZ2xlLXNlYXJjaCAuZ2x5cGhpY29uIHtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGNvbG9yOiAjMjk4MGI5O1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuI21hdHQtc2VhcmNoIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogIzJlOGVjZTtcbiAgYm94LXNoYWRvdzogMHB4IDFweCAxMHB4IDBweCByZ2JhKDAsIDAsIDAsIDAuMSk7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgbGVmdDogMHB4O1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAxMDBweDtcbiAgdG9wOiAtMTkwcHg7XG4gIHotaW5kZXg6IDk5OTk5O1xuICBtYXJnaW46IDBweDtcbiAgcGFkZGluZy10b3A6IDEwcHg7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDYwMG1zO1xuICB0cmFuc2l0aW9uOiBhbGwgNjAwbXM7IH1cbiAgI21hdHQtc2VhcmNoIC5nbHlwaGljb24ge1xuICAgIGNvbG9yOiAjMDAwOyB9XG4gICNtYXR0LXNlYXJjaCAuZm9ybS1zZWFyY2guZm9ybS1jb250cm9sIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB3aWR0aDogNjAwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBjb2xvcjogIzI5ODBiOTtcbiAgICBvdmVyZmxvdy14OiBoaWRkZW47IH1cbiAgI21hdHQtc2VhcmNoIC5wbGFjZWhvbGRlciB7XG4gICAgY29sb3I6ICMyOTgwYjk7IH1cbiAgI21hdHQtc2VhcmNoIHNwYW4uaW5wdXQtZ3JvdXAtYnRuIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG5cbiNlZGl0LWtleXMtLTIge1xuICBiYWNrZ3JvdW5kOiBub25lO1xuICBib3JkZXItcmFkaXVzOiAwcHg7XG4gIGJvcmRlcjogbm9uZTtcbiAgYm94LXNoYWRvdzogbm9uZTtcbiAgaGVpZ2h0OiA2NXB4O1xuICBmb250LXNpemU6IDRyZW07XG4gIGZvbnQtd2VpZ2h0OiAyMDA7XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICB3aWR0aDogMTAwJTsgfVxuXG5kaXYuaW5wdXQtZ3JvdXAge1xuICB3aWR0aDogMTAwJTsgfVxuXG4udG9nZ2xlLXNlYXJjaC1jbG9zZSAuZ2x5cGhpY29uIHtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBtYXJnaW4tdG9wOiA4cHg7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG4udG9nZ2xlLXNlYXJjaC1jbG9zZSAuZ2x5cGhpY29uIHNwYW46aG92ZXIge1xuICBjb2xvcjogIzI5ODBiOTtcbiAgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi5kcm9wZG93bi1zdWJtZW51IHtcbiAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG5cbi5kcm9wZG93bi1zdWJtZW51ID4gLmRyb3Bkb3duLW1lbnUge1xuICB0b3A6IDA7XG4gIGxlZnQ6IDEwMCU7XG4gIHBhZGRpbmc6IDBweDsgfVxuXG4uZHJvcGRvd24tc3VibWVudTpob3ZlciA+IC5kcm9wZG93bi1tZW51IHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmRyb3Bkb3duLXN1Ym1lbnUgPiBhOmFmdGVyIHtcbiAgY29udGVudDogXCJcXGUwODBcIjtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXNpemU6IDEwcHg7XG4gIGZsb2F0OiByaWdodDtcbiAgbWFyZ2luLXRvcDogNXB4OyB9XG5cbi5kcm9wZG93bi1zdWJtZW51OmhvdmVyID4gYTphZnRlciB7XG4gIGJvcmRlci1sZWZ0LWNvbG9yOiAjZmZmOyB9XG5cbi5kcm9wZG93bi1zdWJtZW51LnB1bGwtbGVmdCB7XG4gIGZsb2F0OiBub25lOyB9XG5cbi5kcm9wZG93bi1zdWJtZW51LnB1bGwtbGVmdCA+IC5kcm9wZG93bi1tZW51IHtcbiAgbGVmdDogLTEwMCU7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4O1xuICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IDZweCAwIDZweCA2cHg7XG4gIC1tb3otYm9yZGVyLXJhZGl1czogNnB4IDAgNnB4IDZweDtcbiAgYm9yZGVyLXJhZGl1czogNnB4IDAgNnB4IDZweDsgfVxuXG4ubmF2YmFyLW5hdiBsaTpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLW1lbnUge1xuICBsZWZ0OiBhdXRvO1xuICByaWdodDogMHB4OyB9XG5cbi5uYXZiYXItbmF2IGxpOmxhc3QtY2hpbGQgPiAuZHJvcGRvd24tbWVudSAuZHJvcGRvd24tc3VibWVudSA+IGE6YWZ0ZXIge1xuICBmbG9hdDogbGVmdDtcbiAgY29udGVudDogXCJcXGUwNzlcIjsgfVxuXG4ubmF2YmFyLW5hdiBsaTpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLW1lbnUgLmRyb3Bkb3duLXN1Ym1lbnUgPiAuZHJvcGRvd24tbWVudSB7XG4gIGxlZnQ6IC0xMDAlOyB9XG5cbiNwbGF5ZXIge1xuICBib3JkZXItcmFkaXVzOiA2cHg7IH1cblxuLm1lZGlhLWdyaWQge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAxMHB4IDAgMTBweCAwOyB9XG5cbiNvZmYtd2hpdGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZWZlZmVmO1xuICBjb2xvcjogIzQ3NDc0NzsgfVxuXG4ubmwtY2FyZCB7XG4gIG92ZXJmbG93OiBoaWRkZW47IH1cbiAgLm5sLWNhcmQgaDIge1xuICAgIHBhZGRpbmctbGVmdDogMTBweDsgfVxuICAubmwtY2FyZCAuc3RyZWFtLXJvdyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBib3JkZXItcmFkaXVzOiA2cHg7XG4gICAgYm9yZGVyOiAxcHggc29saWQgI0VDRjBGMTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICBtYXJnaW46IDEwcHg7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAubmwtY2FyZCAuc3RyZWFtLWluZm8ge1xuICAgIHBhZGRpbmc6IDVweDsgfVxuICAubmwtY2FyZCAuc3RyZWFtLWltYWdlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLm5sLWNhcmQgLnN0cmVhbS1pbWFnZSBpbWcge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgei1pbmRleDogLTE7IH1cbiAgLm5sLWNhcmQgLnN0cmVhbS10aXRsZSB7XG4gICAgZm9udC1zaXplOiAycmVtOyB9XG5cbiNwdWJsaWNhdGlvbnMtbGlzdCB7XG4gIHdpZHRoOiAxMDAlO1xuICBtYXJnaW4tYm90dG9tOiAyMHB4OyB9XG4gICNwdWJsaWNhdGlvbnMtbGlzdCB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7IH1cbiAgI3B1YmxpY2F0aW9ucy1saXN0IGxpIHtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VDRjBGMTtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDc1cHg7XG4gICAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctbGVmdDogMTBweDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMHB4OyB9XG4gICNwdWJsaWNhdGlvbnMtbGlzdCBsaTpudGgtY2hpbGQoZXZlbikge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlOyB9XG4gICNwdWJsaWNhdGlvbnMtbGlzdDo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICNwdWJsaWNhdGlvbnMtbGlzdDo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cbiAgI3B1YmxpY2F0aW9ucy1saXN0IGEge1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gICNwdWJsaWNhdGlvbnMtbGlzdCAucGFuZWwtYm9keTo6YmVmb3JlIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gICNwdWJsaWNhdGlvbnMtbGlzdCAucGFuZWwtYm9keTo6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7IH1cblxuI3B1YmxpY2F0aW9ucy1saXN0IGxpOmhvdmVyIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogd2hpdGU7IH1cblxuLnJlc291cmNlLWNhcmQge1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBib3JkZXItcmFkaXVzOiA2cHg7XG4gIG1pbi1oZWlnaHQ6IDIwMHB4O1xuICBwYWRkaW5nOiAyMHB4O1xuICBtYXJnaW46IDEwcHg7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIC13ZWJraXQtYm94LXNoYWRvdzogLTFweCAycHggMTBweCAycHggI2Q0ZDRkNDtcbiAgLW1vei1ib3gtc2hhZG93OiAtMXB4IDJweCAxMHB4IDJweCAjZDRkNGQ0O1xuICBib3gtc2hhZG93OiAtMXB4IDJweCAxMHB4IDJweCAjZDRkNGQ0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGOyB9XG4gIC5yZXNvdXJjZS1jYXJkIC50YWdzIHtcbiAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiAwcHg7IH1cbiAgICAucmVzb3VyY2UtY2FyZCAudGFncyB1bCB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDBlbTtcbiAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7IH1cbiAgICAgIC5yZXNvdXJjZS1jYXJkIC50YWdzIHVsIGxpIHtcbiAgICAgICAgZm9udC1zaXplOiAuNzVlbTtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzI5ODBiOTtcbiAgICAgICAgY29sb3I6ICMyOTgwYjk7XG4gICAgICAgIHBhZGRpbmc6IDVweDtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogNnB4O1xuICAgICAgICB3aWR0aDogLXdlYmtpdC1maXQtY29udGVudDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4OyB9XG5cbi8qIFdFQklOQVIgQ09OVEFJTkVSICovXG4ud2ViaW5hci1jb250YWluZXIge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgI0VDRjBGMTtcbiAgcGFkZGluZzogMiUgMCAyJSAwOyB9XG4gIC53ZWJpbmFyLWNvbnRhaW5lciAud2ViaW5hci1ib2R5IHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAxMCU7IH1cblxuLyogQUNDT1JESU9OUyBcblxuXG5cblxuXG4jYWNjb3JkaW9uIC5wYW5lbC1oZWFkaW5nIHsgcGFkZGluZzogMDt9XG4jYWNjb3JkaW9uIC5wYW5lbC10aXRsZSA+IGEge1xuXHRkaXNwbGF5OiBibG9jaztcblx0cGFkZGluZzogMC40ZW0gMC42ZW07XG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBmb250LXdlaWdodDpib2xkO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuI3ZpZXdzLWJvb3RzdHJhcC1hY2NvcmRpb24gLnBhbmVsLXRpdGxlID4gYS5hY2NvcmRpb24tdG9nZ2xlOjphZnRlciwgI3ZpZXdzLWJvb3RzdHJhcC1hY2NvcmRpb24gYVtkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCJdOjphZnRlciAge1xuICAgIGNvbnRlbnQ6XCJcXGUxMTNcIjtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG5cdG1hcmdpbi1yaWdodCA6MWVtO1xuXHRcblx0JjphY3RpdmUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5O1xuXHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHR9XG5cdFxufVxuXG4jdmlld3MtYm9vdHN0cmFwLWFjY29yZGlvbiBwYW5lbC10aXRsZSA+IGEuYWNjb3JkaW9uLXRvZ2dsZS5jb2xsYXBzZWQ6OmFmdGVyLCAjdmlld3MtYm9vdHN0cmFwLWFjY29yZGlvbiBhLmNvbGxhcHNlZFtkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCJdOjphZnRlciAge1xuICAgIGNvbnRlbnQ6XCJcXGUxMTRcIjtcbn1cblxuXG4jYWNjb3JkaW9uIC5wYW5lbC10aXRsZSA+IGEuYWNjb3JkaW9uLXRvZ2dsZTo6YWZ0ZXIsICNhY2NvcmRpb24gYVtkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCJdOjphZnRlciAge1xuICAgIGNvbnRlbnQ6XCJcXGUxMTNcIjtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgZm9udC1mYW1pbHk6ICdHbHlwaGljb25zIEhhbGZsaW5ncyc7XG5cdG1hcmdpbi1yaWdodCA6MWVtO1xuXHRcblx0JjphY3RpdmUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1ncmF5O1xuXHRcdHBhZGRpbmc6IDEwcHg7XG5cdFx0Ym9yZGVyLXJhZGl1czogNnB4O1xuXHR9XG5cdFxufVxuI2FjY29yZGlvbiAucGFuZWwtdGl0bGUgPiBhLmFjY29yZGlvbi10b2dnbGUuY29sbGFwc2VkOjphZnRlciwgI2FjY29yZGlvbiBhLmNvbGxhcHNlZFtkYXRhLXRvZ2dsZT1cImNvbGxhcHNlXCJdOjphZnRlciAge1xuICAgIGNvbnRlbnQ6XCJcXGUxMTRcIjtcbiAgICAgIC1tb3otdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpIWltcG9ydGFudDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKSFpbXBvcnRhbnQ7XG4gICAgdHJhbnNmb3JtOnJvdGF0ZSgxODBkZWcpIWltcG9ydGFudDtcbn1cblxuI2FjY29yZGlvbiB7XG5cdHBhZGRpbmc6IDEwcHggNXB4IDEwcHggNXB4O1xuXHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGNvbG9yLWdyYXk7XG5cdFxuXHRkaXYuYWNjb3JkaW9uLWhlYWRpbmcge1xuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xuXHR9XG5cdFxuXHQuYWNjb3JkaW9uLWlubmVyIHtcblx0XHRwYWRkaW5nOiAxMHB4IDBweDtcblx0fVxuXHRcbn1cblxuXG4ucGFuZWwtZ3JvdXAge1xuXHRcblx0Ym9yZGVyLWNvbG9yOiAjRkZGICFpbXBvcnRhbnQ7XG5cdHRyYW5zaXRpb246IGFsbCAuNHMgdHJhbnNmb3JtIGVhc2UtaW4tb3V0O1xuXHRwYWRkaW5nOiAxMHB4IDVweCAxMHB4IDhweDtcblx0Jjpob3ZlciB7XG5cdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuXHR9XG5cdFxuXHRcblx0LnBhbmVsLWhlYWRpbmcge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkYgIWltcG9ydGFudDtcblx0XHRcblx0fVxuXHRcblx0XG5cdC5wYW5lbCB7XG5cdFx0Ym9yZGVyLXJhZGl1czogbm9uZSAhaW1wb3J0YW50O1x0XG5cdH1cblx0XG5cdC5wYW5lbC1kZWZhdWx0e1xuXHRcdGJvcmRlci1jb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuXHR9XG5cdFxuXHRoNC5wYW5lbC10aXRsZSB7XG5cdFx0Zm9udC1zaXplOiAxLjVyZW07XG5cdFx0Zm9udC13ZWlnaHQ6IDI1MDtcblx0XHRib3JkZXItY29sb3I6ICNGRkYgIWltcG9ydGFudDtcblx0XHRib3JkZXItYm90dG9tOiBub25lICFpbXBvcnRhbnQ7XG5cdFx0cGFkZGluZzogMiUgMCUgMiUgMDtcblx0fVxuXHRcbn1cblxuLmFjY29yZGlvbi10b2dnbGUge1xuXHR0cmFuc2l0aW9uOiBhbGwgLjRzIHRyYW5zZm9ybSBlYXNlLWluLW91dDtcblx0IC1tb3otdHJhbnNpdGlvbjogYWxsIDJzIGxpbmVhcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAycyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogYWxsIC40cyB0cmFuc2Zvcm0gZWFzZS1pbi1vdXQ7XG5cbn1cblxuLmFjY29yZGlvbi10b2dnbGU6YWZ0ZXIge1xuICAgIGZvbnQtZmFtaWx5OiAnRm9udEF3ZXNvbWUnO1xuICAgIGNvbnRlbnQ6IFwiXFxmMDYzXCI7ICAgIFxuICAgIGZsb2F0OiByaWdodDtcbiAgICBmb250LXdlaWdodDogMjAwO1xuIH1cblxuLmFjY29yZGlvbi1vcGVuZWQgLmFjY29yZGlvbi10b2dnbGUge1xuXHR0cmFuc2l0aW9uOiBhbGwgLjRzIHRyYW5zZm9ybSBlYXNlLWluLW91dDtcbn1cblxuLmFjY29yZGlvbi1vcGVuZWQgLmFjY29yZGlvbi10b2dnbGU6YWZ0ZXIgeyAgICBcbiAgICBjb250ZW50OiBcIlxcZjA2M1wiICFpbXBvcnRhbnQ7ICAgXG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgICAtbW96LXRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKSFpbXBvcnRhbnQ7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06cm90YXRlKDE4MGRlZykhaW1wb3J0YW50O1xuICAgIHRyYW5zZm9ybTpyb3RhdGUoMTgwZGVnKSFpbXBvcnRhbnQ7XG59XG5cbiovXG4uZG9jLXJvdyB7XG4gIGJvcmRlcjogMXB4IHNvbGlkICNFQ0YwRjE7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIG1hcmdpbi10b3A6IDMwcHg7XG4gIGJvcmRlci1yYWRpdXM6IDZweDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aWR0aDogNDAwcHg7IH1cbiAgLmRvYy1yb3cgYSB7XG4gICAgY29sb3I6ICM0NzQ3NDc7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG4gIC5kb2Mtcm93IC5oMyBhIHtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgLmRvYy1yb3cgLmZhLWZpbGUge1xuICAgIGZvbnQtc2l6ZTogMi41ZW07XG4gICAgbWFyZ2luLXRvcDogMTBweDsgfVxuXG4ucGhvdG8tZ2FsbGVyeVxuLmltZy1yZXNwb25zaXZlIHtcbiAgbWF4LXdpZHRoOiAyNTBweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHBhZGRpbmc6IDIwcHg7IH1cbiIsIlxuLy8jIyMjIFZBUklBQkxFUyAjIyMjL1xuXG5cblxuLy8gVEVTVCBXSElURSBCQUNLR1JPVU5EIFdJVEggUFJJTUFSSUVTIFxuXG5cbi8vIFNVQlRJVExFIC8vXG5cbi5zdWItdGl0bGUge1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRkaXNwbGF5OiBub25lO1xuXHRjbGVhcjogYm90aDtcbn1cblxuLm5hdmJhci1uYXYge1xuXHRwYWRkaW5nLXRvcDogOHB4O1xufVxuXG4ubmF2YmFyLWJyYW5kIHtcblx0bWFyZ2luLXRvcDogMTBweDtcblx0cGFkZGluZy1yaWdodDogMTBweDtcblx0Ly9kaXNwbGF5OiBub25lO1xufVxuXG5cbi5idXR0b24ubmF2YmFyLXRvZ2dsZSB7XG5cdGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcbn1cblxuLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItdG9nZ2xlIHtcblx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0Y29sb3I6ICRjb2xvci1ncmF5O1xuXHRcblx0Lmljb24tYmFyIHtcblx0XHQvL2JhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XG5cdH1cblx0XG5cdCY6aG92ZXIge1xuXHRcdC8vYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdH1cblx0XG5cdH1cblxuXG5cblxuI25hdmJhciB7XG5cdFxuXHQvL2hlaWdodDogODBweDtcblx0Ly9wYWRkaW5nOiAxNXB4O1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHQvL2JvcmRlci1ib3R0b206IDFweCBzb2xpZCAkY29sb3ItZ3JheTtcblx0LXdlYmtpdC1ib3gtc2hhZG93OiAtMXB4IDNweCAxOHB4IC05cHggcmdiYSgxNjMsMTYzLDE2MywxKTtcbi1tb3otYm94LXNoYWRvdzogLTFweCAzcHggMThweCAtOXB4IHJnYmEoMTYzLDE2MywxNjMsMSk7XG5ib3gtc2hhZG93OiAtMXB4IDNweCAxOHB4IC05cHggcmdiYSgxNjMsMTYzLDE2MywxKTtcblxuXHQuZHJvcGRvd24tdG9nZ2xlOmhvdmVyIHtcblxuXHRcdC8vYmFja2dyb3VuZDogZGFya2VuKCRjb2xvci1wcmltYXJ5LCA1JSk7XG5cdFx0Ly9ib3JkZXItcmFkaXVzOiA2cHg7XG5cdH1cblx0XG5cdC5uYXZiYXItdG9nZ2xlIC5pY29uLWJhciB7XG5cdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5ICFpbXBvcnRhbnQ7XG5cdH1cblx0XG5cdFxuXHRhe1xuXHQvL2NvbG9yOiAjNWE1YTVhO1xuXHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdGZvbnQtd2VpZ2h0OiBib2xkO1xuXHRmb250LXNpemU6IDE2cHg7XG5cdFxuXHRcdCY6aG92ZXIge1xuXHRcdFx0Ly9ib3JkZXItYm90dG9tOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDUlKSAxcHggc29saWQ7XG5cdFx0XHQvL2JvcmRlci1yYWRpdXM6IDZweDtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XHRjb2xvcjogZGFya2VuKCRjb2xvci1wcmltYXJ5LDEwJSk7XG5cdFx0fVxuXHRcdFxuXHRcdC5pcy1hY3RpdmUge1xuXHRcdFx0YmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcblx0XHRcdGNvbG9yOiBsaWdodGVuKCRjb2xvci1wcmltYXJ5LDEwJSk7XG5cdFx0fVxuXHRcblx0fVxuXHRcblx0YS5kcm9wZG93bi10b2dnbGUgYS5pcy1hY3RpdmUge1xuXHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLXByaW1hcnksIDEwJSk7XG5cdFx0Ly9iYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHR9XG5cdFxuXHRhLmlzLWFjdGl2ZSB7XG5cdFx0Ly9ib3JkZXItYm90dG9tOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDEwJSkgMXB4IHNvbGlkO1xuXHRcdC8vYm9yZGVyLXJhZGl1czogNnB4O1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0Y29sb3I6ICRjb2xvci1wcmltYXJ5OyAgXG5cdH1cblx0XG5cdC5uYXZiYXItY29sbGFwc2Uge1xuXHRcdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdFx0XHRcblx0fVxuXHRcdFxuXHQuZHJvcGRvd24tbWVudSB7XG5cdFx0bWFyZ2luLXRvcDogMTBweDtcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRcdCBvcGFjaXR5OiAuOTtcblx0XHQgYm9yZGVyOiBub25lO1xuXHRcdCBcdC13ZWJraXQtYm94LXNoYWRvdzogLTFweCAzcHggMThweCAtOXB4IHJnYmEoMTYzLDE2MywxNjMsMSk7XG4tbW96LWJveC1zaGFkb3c6IC0xcHggM3B4IDE4cHggLTlweCByZ2JhKDE2MywxNjMsMTYzLDEpO1xuYm94LXNoYWRvdzogLTFweCAzcHggMThweCAtOXB4IHJnYmEoMTYzLDE2MywxNjMsMSk7XG5cdFx0XG5cdFx0YSB7XG5cdFx0XHQmOmhvdmVyIHtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6IGxpZ2h0ZW4oJGNvbG9yLXByaW1hcnksIDEwJSk7XG5cdFx0XHRjb2xvcjogI0ZGRjtcblx0XHR9XG5cdH1cblx0fVxuXHRcblx0LmlucHV0LWdyb3VwIHtcblx0XHRtYXgtd2lkdGg6IDIwMHB4O1xuXHRcdHBhZGRpbmctdG9wOiAxMHB4O1xuXHR9XG5cdFxufVxuXG5cblxuXG4vLyBhY3RpdmUgcGFyZW50IHRvZ2dsZSBpdGVtXG4ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAuYWN0aXZlID4gYSwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmFjdGl2ZSwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLmFjdGl2ZSB7XG5cdC8vYm9yZGVyLWJvdHRvbTogbGlnaHRlbigkY29sb3ItcHJpbWFyeSwgMTAlKSAxcHggc29saWQ7XG5cdGJhY2tncm91bmQtY29sb3I6ICNGRkY7XG5cdGNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblx0XG5cdCY6aG92ZXIge1xuXHRcdC8vYm9yZGVyLWJvdHRvbTogbGlnaHRlbigkY29sb3ItcHJpbWFyeSwgMTAlKTtcblx0fVxufVxuXG4vLyBhY3RpdmF0ZWQgdG9nZ2xlXG4ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci1uYXYgPiAub3BlbiA+IGEsIC5uYXZiYXItZGVmYXVsdCAubmF2YmFyLW5hdiA+IC5vcGVuID4gYTpob3ZlciwgLm5hdmJhci1kZWZhdWx0IC5uYXZiYXItbmF2ID4gLm9wZW4gPiBhOmZvY3VzIHtcblx0Ly9ib3JkZXItYm90dG9tOiBkYXJrZW4oJGNvbG9yLXByaW1hcnksIDE1JSkgMXB4IHNvbGlkO1xuXHRiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuXHRjb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdC8vY29sb3I6ICRjb2xvci1wcmltYXJ5O1xuXHQvL2JvcmRlci1yYWRpdXM6IDZweDtcbn1cblxuXG4ubmF2YmFyLWRlZmF1bHQgLm5hdmJhci10ZXh0IHtcblx0XHQgY29sb3I6ICNGRkYgIWltcG9ydGFudDtcblx0XHQgZm9udC1zaXplOjI0cHg7XG5cdCB9XG5cblxuXG4gLy8gRU5EIE9GIFdISVRFIE5BVlxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vKiFcbiAqIGFuaW1hdGUuY3NzIC1odHRwOi8vZGFuZWRlbi5tZS9hbmltYXRlXG4gKiBWZXJzaW9uIC0gMy41LjJcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBNSVQgbGljZW5zZSAtIGh0dHA6Ly9vcGVuc291cmNlLm9yZy9saWNlbnNlcy9NSVRcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTcgRGFuaWVsIEVkZW5cbiAqL1xuXG4uYW5pbWF0ZWQge1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4uYW5pbWF0ZWQuaW5maW5pdGUge1xuICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbn1cblxuLmFuaW1hdGVkLmhpbmdlIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAycztcbn1cblxuLmFuaW1hdGVkLmZsaXBPdXRYLFxuLmFuaW1hdGVkLmZsaXBPdXRZLFxuLmFuaW1hdGVkLmJvdW5jZUluLFxuLmFuaW1hdGVkLmJvdW5jZU91dCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogLjc1cztcbn1cblxuQGtleWZyYW1lcyBib3VuY2Uge1xuICBmcm9tLCAyMCUsIDUzJSwgODAlLCB0byB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsMCwwKTtcbiAgfVxuXG4gIDQwJSwgNDMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTMwcHgsIDApO1xuICB9XG5cbiAgNzAlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUwLCAwLjg1NSwgMC4wNjApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsLTRweCwwKTtcbiAgfVxufVxuXG4uYm91bmNlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZTtcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbn1cblxuQGtleWZyYW1lcyBmbGFzaCB7XG4gIGZyb20sIDUwJSwgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAyNSUsIDc1JSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZmxhc2gge1xuICBhbmltYXRpb24tbmFtZTogZmxhc2g7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuXG5Aa2V5ZnJhbWVzIHB1bHNlIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wNSwgMS4wNSwgMS4wNSk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbi5wdWxzZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBwdWxzZTtcbn1cblxuQGtleWZyYW1lcyBydWJiZXJCYW5kIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4yNSwgMC43NSwgMSk7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMTUsIDAuODUsIDEpO1xuICB9XG5cbiAgNjUlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk1LCAxLjA1LCAxKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIC45NSwgMSk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbi5ydWJiZXJCYW5kIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJ1YmJlckJhbmQ7XG59XG5cbkBrZXlmcmFtZXMgc2hha2Uge1xuICBmcm9tLCB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIDEwJSwgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxufVxuXG4uc2hha2Uge1xuICBhbmltYXRpb24tbmFtZTogc2hha2U7XG59XG5cbkBrZXlmcmFtZXMgaGVhZFNoYWtlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgfVxuXG4gIDYuNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtNnB4KSByb3RhdGVZKC05ZGVnKTtcbiAgfVxuXG4gIDE4LjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpO1xuICB9XG5cbiAgMzEuNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtM3B4KSByb3RhdGVZKC01ZGVnKTtcbiAgfVxuXG4gIDQzLjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KSByb3RhdGVZKDNkZWcpO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cbn1cblxuLmhlYWRTaGFrZSB7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICBhbmltYXRpb24tbmFtZTogaGVhZFNoYWtlO1xufVxuXG5Aa2V5ZnJhbWVzIHN3aW5nIHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDE1ZGVnKTtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMTBkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDBkZWcpO1xuICB9XG59XG5cbi5zd2luZyB7XG4gIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBjZW50ZXI7XG4gIGFuaW1hdGlvbi1uYW1lOiBzd2luZztcbn1cblxuQGtleWZyYW1lcyB0YWRhIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG5cbiAgMTAlLCAyMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gIH1cblxuICAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcbiAgfVxuXG4gIDQwJSwgNjAlLCA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpO1xuICB9XG59XG5cbi50YWRhIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuXG5Aa2V5ZnJhbWVzIHdvYmJsZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIDE1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG4gIH1cblxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAzZGVnKTtcbiAgfVxuXG4gIDQ1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7XG4gIH1cblxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAyZGVnKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNSUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLndvYmJsZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB3b2JibGU7XG59XG5cbkBrZXlmcmFtZXMgamVsbG8ge1xuICBmcm9tLCAxMS4xJSwgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxuXG4gIDIyLjIlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0xMi41ZGVnKSBza2V3WSgtMTIuNWRlZyk7XG4gIH1cblxuICAzMy4zJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTtcbiAgfVxuXG4gIDQ0LjQlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0zLjEyNWRlZykgc2tld1koLTMuMTI1ZGVnKTtcbiAgfVxuXG4gIDU1LjUlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDEuNTYyNWRlZykgc2tld1koMS41NjI1ZGVnKTtcbiAgfVxuXG4gIDY2LjYlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7XG4gIH1cblxuICA3Ny43JSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgwLjM5MDYyNWRlZykgc2tld1koMC4zOTA2MjVkZWcpO1xuICB9XG5cbiAgODguOCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLTAuMTk1MzEyNWRlZykgc2tld1koLTAuMTk1MzEyNWRlZyk7XG4gIH1cbn1cblxuLmplbGxvIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGplbGxvO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW4ge1xuICBmcm9tLCAyMCUsIDQwJSwgNjAlLCA4MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICB9XG5cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICB9XG5cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOSwgLjksIC45KTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4wMywgMS4wMywgMS4wMyk7XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguOTcsIC45NywgLjk3KTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuXG4uYm91bmNlSW4ge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW47XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5Eb3duIHtcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gIH1cblxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMDAwcHgsIDApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjVweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDVweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5ib3VuY2VJbkRvd24ge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5Eb3duO1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICB9XG5cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCg1cHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uYm91bmNlSW5MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluTGVmdDtcbn1cblxuQGtleWZyYW1lcyBib3VuY2VJblJpZ2h0IHtcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gIH1cblxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmJvdW5jZUluUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDtcbn1cblxuQGtleWZyYW1lcyBib3VuY2VJblVwIHtcbiAgZnJvbSwgNjAlLCA3NSUsIDkwJSwgdG8ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gIH1cblxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMzAwMHB4LCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNXB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5ib3VuY2VJblVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluVXA7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0IHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XG4gIH1cblxuICA1MCUsIDU1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gIH1cbn1cblxuLmJvdW5jZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXQ7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0RG93biB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTtcbiAgfVxuXG4gIDQwJSwgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICB9XG59XG5cbi5ib3VuY2VPdXREb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dERvd247XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG4uYm91bmNlT3V0TGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dFJpZ2h0IHtcbiAgMjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi5ib3VuY2VPdXRSaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRSaWdodDtcbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRVcCB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTBweCwgMCk7XG4gIH1cblxuICA0MCUsIDQ1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwcHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uYm91bmNlT3V0VXAge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0VXA7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5mYWRlSW4ge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5mYWRlSW5Eb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluRG93bkJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uZmFkZUluRG93bkJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duQmlnO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5mYWRlSW5MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkxlZnQ7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uZmFkZUluTGVmdEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5mYWRlSW5SaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodDtcbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5mYWRlSW5SaWdodEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5SaWdodEJpZztcbn1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uZmFkZUluVXAge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluVXBCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uZmFkZUluVXBCaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluVXBCaWc7XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZmFkZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXREb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dERvd25CaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dERvd25CaWc7XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dExlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXRMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXRMZWZ0QmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0UmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0O1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRSaWdodEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXRSaWdodEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHRCaWc7XG59XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0VXAge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0VXBCaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwQmlnO1xufVxuXG5Aa2V5ZnJhbWVzIGZsaXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMzYwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xOTBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgc2NhbGUzZCguOTUsIC45NSwgLjk1KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cbn1cblxuLmFuaW1hdGVkLmZsaXAge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGU7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwO1xufVxuXG5Aa2V5ZnJhbWVzIGZsaXBJblgge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDEwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cbn1cblxuLmZsaXBJblgge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb24tbmFtZTogZmxpcEluWDtcbn1cblxuQGtleWZyYW1lcyBmbGlwSW5ZIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAxMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG59XG5cbi5mbGlwSW5ZIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblk7XG59XG5cbkBrZXlmcmFtZXMgZmxpcE91dFgge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5mbGlwT3V0WCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WDtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbn1cblxuQGtleWZyYW1lcyBmbGlwT3V0WSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG5cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTVkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZsaXBPdXRZIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRZO1xufVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRJbiB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgc2tld1goLTMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5saWdodFNwZWVkSW4ge1xuICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbn1cblxuQGtleWZyYW1lcyBsaWdodFNwZWVkT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5saWdodFNwZWVkT3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRPdXQ7XG4gIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucm90YXRlSW4ge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW47XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5yb3RhdGVJbkRvd25MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duUmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluRG93blJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93blJpZ2h0O1xufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBMZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucm90YXRlSW5VcExlZnQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5VcExlZnQ7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucm90YXRlSW5VcFJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDtcbn1cblxuQGtleWZyYW1lcyByb3RhdGVPdXQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnJvdGF0ZU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXQ7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0RG93bkxlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnJvdGF0ZU91dERvd25MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25MZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0RG93blJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDtcbn1cblxuQGtleWZyYW1lcyByb3RhdGVPdXRVcExlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXRVcExlZnQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBMZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwUmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0VXBSaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcFJpZ2h0O1xufVxuXG5Aa2V5ZnJhbWVzIGhpbmdlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgMjAlLCA2MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgODBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICB9XG5cbiAgNDAlLCA4MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNjBkZWcpO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0O1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uaGluZ2Uge1xuICBhbmltYXRpb24tbmFtZTogaGluZ2U7XG59XG5cbkBrZXlmcmFtZXMgamFja0luVGhlQm94IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDAuMSkgcm90YXRlKDMwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICB9XG5cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgtMTBkZWcpO1xuICB9XG5cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gIH1cbn1cblxuLmphY2tJblRoZUJveCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBqYWNrSW5UaGVCb3g7XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuXG5Aa2V5ZnJhbWVzIHJvbGxJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLnJvbGxJbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb2xsSW47XG59XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuXG5Aa2V5ZnJhbWVzIHJvbGxPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAxMjBkZWcpO1xuICB9XG59XG5cbi5yb2xsT3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7XG59XG5cbkBrZXlmcmFtZXMgem9vbUluIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gIH1cblxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnpvb21JbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW47XG59XG5cbkBrZXlmcmFtZXMgem9vbUluRG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIC0xMDAwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG4uem9vbUluRG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5Eb3duO1xufVxuXG5Aa2V5ZnJhbWVzIHpvb21JbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21JbkxlZnQge1xuICBhbmltYXRpb24tbmFtZTogem9vbUluTGVmdDtcbn1cblxuQGtleWZyYW1lcyB6b29tSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDEwMDBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG4uem9vbUluUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogem9vbUluUmlnaHQ7XG59XG5cbkBrZXlmcmFtZXMgem9vbUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAxMDAwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21JblVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblVwO1xufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi56b29tT3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXQ7XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dERvd24ge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4xLCAuMSwgLjEpIHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21PdXREb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duO1xufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXRMZWZ0IHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCg0MnB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgY2VudGVyO1xuICB9XG59XG5cbi56b29tT3V0TGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDtcbn1cblxuQGtleWZyYW1lcyB6b29tT3V0UmlnaHQge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC00MnB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoLjEpIHRyYW5zbGF0ZTNkKDIwMDBweCwgMCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgY2VudGVyO1xuICB9XG59XG5cbi56b29tT3V0UmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0O1xufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXRVcCB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMCwgNjBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIwLCAxKTtcbiAgfVxufVxuXG4uem9vbU91dFVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRVcDtcbn1cblxuQGtleWZyYW1lcyBzbGlkZUluRG93biB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uc2xpZGVJbkRvd24ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJbkRvd247XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLnNsaWRlSW5MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZUluUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblJpZ2h0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZUluVXAge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVJblVwO1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cbn1cblxuLnNsaWRlT3V0RG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dERvd247XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVPdXRMZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuLnNsaWRlT3V0TGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dExlZnQ7XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVPdXRSaWdodCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7XG4gIH1cbn1cblxuLnNsaWRlT3V0UmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRSaWdodDtcbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dFVwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMTAwJSwgMCk7XG4gIH1cbn1cblxuLnNsaWRlT3V0VXAge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDtcbn0iLCIvLyBQQVJBR1JBUEggU1RZTEVTXG5cblxuXG4jcGdyYXBoIHtcblx0XG5cdHBhZGRpbmc6IDEwcHg7XG5cdGJvcmRlcjogMXB4IHNvbGlkICRjb2xvci1zZWNvbmRhcnk7XG5cdGJvcmRlci1yYWRpdXM6IDZweDtcblx0bWFyZ2luOiAxMHB4IDBweDtcblx0YmFja2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7XG5cdGNvbG9yOiAjRkZGO1xufVxuXHRcbi5wLXRpcCB7XG5cdFx0XG5cdFx0LmZvbnRhd2Vzb21lLWljb25zIHtcblx0XHRcdGZvbnQtc2l6ZTogM2VtO1xuXHRcdFx0cGFkZGluZzogMjBweDtcblx0XHRcdGJvcmRlci1yYWRpdXM6IDUwcHg7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeTtcblxuXHRcdH1cblx0XHRcblx0XHQuZmllbGQtLW5hbWUtZmllbGQtdGlwLXRpdGxlIHtcblx0XHRcdGZvbnQtc2l6ZTogMmVtO1xuXHRcdFx0Zm9udC13ZWlnaHQ6IGJvbGQ7XG5cdFx0fVxuXHRcdFxuXHRcdC5maWVsZC0tbmFtZS1maWVsZC10aXAtYm9keSBwIHtcblx0XHRcdGNvbG9yOiAjRkZGO1xuXHRcdFx0XG5cdFx0fVxuXHRcbn1cblx0XG5cdFxuXG4iXX0= */
