.wf-loading * {
  opacity: 0; }

.wf-loading:after {
  content: "loading fonts..";
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  color: #135040;
  font-size: 1.5em;
  font-weight: bold;
  line-height: 20em;
  text-align: center; }

.wf-active *,
.wf-inactive * {
  -webkit-transition: opacity 1s ease-out;
  transition: opacity 1s ease-out; }

@font-face {
  font-family: 'Malgun';
  src: url("../fonts/malgun.eot?#iefix");
  src: url("../fonts/malgun.eot?#iefix") format("eot"), url("../fonts/malgun.woff2") format("woff2"), url("../fonts/malgun.woff") format("woff"), url("../fonts/malgun.ttf") format("truetype"), url("../fonts/malgun.svg#malgun") format("svg");
  font-weight: normal;
  font-style: normal; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

*, *::after, *::before {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

*, *::after, *::before {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

*, *::after, *::before {
  -webkit-box-sizing: inherit;
          box-sizing: inherit; }

.va {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%); }

.va-t,
.va-m,
.va-b,
.va-tb,
.va-tt {
  display: table-cell; }

.va-t {
  vertical-align: top; }

.va-m {
  vertical-align: middle; }

.va-b {
  vertical-align: bottom; }

.va-s {
  vertical-align: super; }

.va-tb {
  vertical-align: text-bottom; }

.va-tt {
  vertical-align: text-top; }

.mega {
  font-size: 6.875em;
  line-height: 1; }

.h1 {
  font-size: 64px; }

.h2 {
  font-size: 24px; }

.h3 {
  font-size: 24px; }

.h4 {
  font-size: 18px; }

.h5 {
  font-size: 16px; }

.h6 {
  font-size: 14px; }

.text-std {
  font-family: 16px; }

.text-subheader {
  font-family: 24px; }

.text-header, .nav-link {
  font-family: 16px; }

.brand {
  color: #a42929; }

.font-base {
  font-size: 16px; }

.font-small {
  font-size: 14px; }

.font-smaller {
  font-size: 13px; }

.font-large {
  font-size: 18px; }

.font-larger {
  font-size: 24px; }

.p-0 {
  padding: 0px !important; }

.pt-0 {
  padding-top: 0px !important; }

.pb-0 {
  padding-bottom: 0px !important; }

.ptb-0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important; }

.pl-0 {
  padding-left: 0px !important; }

.pr-0 {
  padding-right: 0px !important; }

.plr-0 {
  padding-left: 0px !important;
  padding-right: 0px !important; }

.p-5 {
  padding: 5px !important; }

.pt-5 {
  padding-top: 5px !important; }

.pb-5 {
  padding-bottom: 5px !important; }

.ptb-5 {
  padding-top: 5px !important;
  padding-bottom: 5px !important; }

.pl-5 {
  padding-left: 5px !important; }

.pr-5 {
  padding-right: 5px !important; }

.plr-5 {
  padding-left: 5px !important;
  padding-right: 5px !important; }

.p-10 {
  padding: 10px !important; }

.pt-10 {
  padding-top: 10px !important; }

.pb-10 {
  padding-bottom: 10px !important; }

.ptb-10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important; }

.pl-10 {
  padding-left: 10px !important; }

.pr-10 {
  padding-right: 10px !important; }

.plr-10 {
  padding-left: 10px !important;
  padding-right: 10px !important; }

.p-15 {
  padding: 15px !important; }

.pt-15 {
  padding-top: 15px !important; }

.pb-15 {
  padding-bottom: 15px !important; }

.ptb-15 {
  padding-top: 15px !important;
  padding-bottom: 15px !important; }

.pl-15 {
  padding-left: 15px !important; }

.pr-15 {
  padding-right: 15px !important; }

.plr-15 {
  padding-left: 15px !important;
  padding-right: 15px !important; }

.p-20 {
  padding: 20px !important; }

.pt-20 {
  padding-top: 20px !important; }

.pb-20 {
  padding-bottom: 20px !important; }

.ptb-20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important; }

.pl-20 {
  padding-left: 20px !important; }

.pr-20 {
  padding-right: 20px !important; }

.plr-20 {
  padding-left: 20px !important;
  padding-right: 20px !important; }

.p-25 {
  padding: 25px !important; }

.pt-25 {
  padding-top: 25px !important; }

.pb-25 {
  padding-bottom: 25px !important; }

.ptb-25 {
  padding-top: 25px !important;
  padding-bottom: 25px !important; }

.pl-25 {
  padding-left: 25px !important; }

.pr-25 {
  padding-right: 25px !important; }

.plr-25 {
  padding-left: 25px !important;
  padding-right: 25px !important; }

.p-30 {
  padding: 30px !important; }

.pt-30 {
  padding-top: 30px !important; }

.pb-30 {
  padding-bottom: 30px !important; }

.ptb-30 {
  padding-top: 30px !important;
  padding-bottom: 30px !important; }

.pl-30 {
  padding-left: 30px !important; }

.pr-30 {
  padding-right: 30px !important; }

.plr-30 {
  padding-left: 30px !important;
  padding-right: 30px !important; }

.p-40 {
  padding: 40px !important; }

.pt-40 {
  padding-top: 40px !important; }

.pb-40 {
  padding-bottom: 40px !important; }

.ptb-40 {
  padding-top: 40px !important;
  padding-bottom: 40px !important; }

.pl-40 {
  padding-left: 40px !important; }

.pr-40 {
  padding-right: 40px !important; }

.plr-40 {
  padding-left: 40px !important;
  padding-right: 40px !important; }

.p-50 {
  padding: 50px !important; }

.pt-50 {
  padding-top: 50px !important; }

.pb-50 {
  padding-bottom: 50px !important; }

.ptb-50 {
  padding-top: 50px !important;
  padding-bottom: 50px !important; }

.pl-50 {
  padding-left: 50px !important; }

.pr-50 {
  padding-right: 50px !important; }

.plr-50 {
  padding-left: 50px !important;
  padding-right: 50px !important; }

.p-60 {
  padding: 60px !important; }

.pt-60 {
  padding-top: 60px !important; }

.pb-60 {
  padding-bottom: 60px !important; }

.ptb-60 {
  padding-top: 60px !important;
  padding-bottom: 60px !important; }

.pl-60 {
  padding-left: 60px !important; }

.pr-60 {
  padding-right: 60px !important; }

.plr-60 {
  padding-left: 60px !important;
  padding-right: 60px !important; }

.p-90 {
  padding: 90px !important; }

.pt-90 {
  padding-top: 90px !important; }

.pb-90 {
  padding-bottom: 90px !important; }

.ptb-90 {
  padding-top: 90px !important;
  padding-bottom: 90px !important; }

.pl-90 {
  padding-left: 90px !important; }

.pr-90 {
  padding-right: 90px !important; }

.plr-90 {
  padding-left: 90px !important;
  padding-right: 90px !important; }

.p-100 {
  padding: 100px !important; }

.pt-100 {
  padding-top: 100px !important; }

.pb-100 {
  padding-bottom: 100px !important; }

.ptb-100 {
  padding-top: 100px !important;
  padding-bottom: 100px !important; }

.pl-100 {
  padding-left: 100px !important; }

.pr-100 {
  padding-right: 100px !important; }

.plr-100 {
  padding-left: 100px !important;
  padding-right: 100px !important; }

.p-110 {
  padding: 110px !important; }

.pt-110 {
  padding-top: 110px !important; }

.pb-110 {
  padding-bottom: 110px !important; }

.ptb-110 {
  padding-top: 110px !important;
  padding-bottom: 110px !important; }

.pl-110 {
  padding-left: 110px !important; }

.pr-110 {
  padding-right: 110px !important; }

.plr-110 {
  padding-left: 110px !important;
  padding-right: 110px !important; }

.pos--relative {
  position: relative; }

.pos--absolute {
  position: absolute; }

.t {
  position: absolute;
  top: 0; }

.b {
  position: absolute;
  bottom: 0; }

.tro-b {
  position: relative;
  top: 100%;
  -webkit-transform: translateY(-100%);
      -ms-transform: translateY(-100%);
          transform: translateY(-100%); }

.l {
  position: absolute;
  left: 0; }

.r {
  position: absolute;
  right: 0; }

@media screen and (max-width: 801px) {
  .section-art .artwork-item {
    -webkit-animation-name: fade;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-duration: 20s;
    -webkit-animation-name: fade;
            animation-name: fade;
    -webkit-animation-iteration-count: infinite;
            animation-iteration-count: infinite;
    -webkit-animation-duration: 5s;
            animation-duration: 5s; } }

@-webkit-keyframes fade {
  0% {
    opacity: 0; }
  10% {
    opacity: 1; }
  20% {
    opacity: 0; }
  30% {
    opacity: 0; }
  40% {
    opacity: 0; }
  50% {
    opacity: 0; }
  60% {
    opacity: 0; }
  70% {
    opacity: 0; }
  80% {
    opacity: 0; }
  90% {
    opacity: 0; }
  100% {
    opacity: 0; } }

@keyframes fade {
  0% {
    opacity: 0; }
  10% {
    opacity: 1; }
  20% {
    opacity: 0; }
  30% {
    opacity: 0; }
  40% {
    opacity: 0; }
  50% {
    opacity: 0; }
  60% {
    opacity: 0; }
  70% {
    opacity: 0; }
  80% {
    opacity: 0; }
  90% {
    opacity: 0; }
  100% {
    opacity: 0; } }

.section-art .artwork-item:nth-child(1) {
  -webkit-animation-delay: 0s; }

.section-art .artwork-item:nth-child(2) {
  -webkit-animation-delay: -2s; }

.section-art .artwork-item:nth-child(3) {
  -webkit-animation-delay: -4s; }

.section-art .artwork-item:nth-child(4) {
  -webkit-animation-delay: -6s; }

.section-art .artwork-item:nth-child(5) {
  -webkit-animation-delay: -8s; }

.section-art .artwork-item:nth-child(6) {
  -webkit-animation-delay: -10s; }

.section-art .artwork-item:nth-child(7) {
  -webkit-animation-delay: -12s; }

.section-art .artwork-item:nth-child(8) {
  -webkit-animation-delay: -14s; }

.section-art .artwork-item:nth-child(9) {
  -webkit-animation-delay: -16s; }

.section-art .artwork-item:nth-child(10) {
  -webkit-animation-delay: -18s; }

.lh-one-two {
  line-height: 1.2em !important; }

.lh-one-four {
  line-height: 1.4em !important; }

.lh-one-five {
  line-height: 1.5em !important; }

.lh-one-seven {
  line-height: 1.7em !important; }

html {
  height: 100%; }

body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-touch-callout: none;
  line-height: 1.4em;
  background: white;
  padding: 0;
  margin: 0;
  height: 100%;
  font-family: "Open Sans", sans-serif, arial;
  font-size: 85%; }
  @media screen and (max-width: 1101px) {
    body {
      padding-top: 0; } }
  body.mobile-nav-active {
    overflow-y: hidden; }

ul {
  list-style: none; }

h1, h2 {
  color: #990000;
  font-family: "Malgun", Arial, sans-serif;
  font-size: 3vw;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0;
  margin: 0; }

h1 {
  padding-top: 50px; }
  @media screen and (max-width: 801px) {
    h1 {
      font-size: 24px;
      padding-top: 30px; } }

header .eq {
  display: block;
  position: absolute;
  left: 0;
  top: 30px;
  background: url(../images/content/eq.png) no-repeat;
  width: 86px;
  height: 79px;
  background-size: 50%;
  opacity: 0.3; }
  .section-home header .eq {
    display: none; }
  @media screen and (max-width: 801px) {
    header .eq {
      display: none; } }

h2 {
  font-size: 1.7vw;
  margin: 60px 0 15px;
  margin: 4vw 0 1.5vw; }
  @media screen and (max-width: 801px) {
    h2 {
      font-size: 16px;
      margin: 30px 0 0px; } }

h3 {
  font-weight: 700;
  margin-bottom: 20px 0;
  font-size: inherit;
  text-decoration: none;
  letter-spacing: 0.05em; }
  @media screen and (max-width: 801px) {
    h3 {
      margin: 30px 0px; } }

h4, p {
  font-family: "Open Sans", sans-serif, arial;
  margin: 20px 0;
  line-height: 1.6em;
  letter-spacing: 0.03em;
  font-weight: 300; }

h4 {
  margin: 15px 0; }

.section {
  position: relative;
  -webkit-backface-visibility: hidden;
  -webkit-perspective: 1000; }
  .section .section-content {
    max-width: 1266px;
    margin-left: auto;
    margin-right: auto;
    margin: 0 50px 50px;
    width: auto; }
    .section .section-content::after {
      clear: both;
      content: "";
      display: block; }
    @media screen and (max-width: 801px) {
      .section .section-content {
        margin: 0 20px 50px; } }
    .section .section-content a.text-link {
      color: #990000;
      border-bottom: 1px solid #990000;
      text-decoration: none; }
  .section .section-content-wide {
    padding: 0px; }
  .section .block-content .focus {
    color: #990000;
    font-weight: 600; }
  .section .section-block {
    padding-bottom: 50px; }

.section-home {
  background: center right url(../images/content/bg-home.jpg) no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  .section-home .section-content {
    padding-bottom: 0px; }
    @media screen and (max-width: 480px) {
      .section-home .section-content {
        margin-bottom: 0; } }
  .section-home .redblock {
    position: absolute;
    left: 0;
    top: 42%;
    display: block;
    height: 115px;
    width: 15px;
    background: #990000; }
    @media screen and (max-width: 480px) {
      .section-home .redblock {
        display: none; } }
  .section-home h1 {
    position: absolute;
    top: 42%;
    left: 7vw; }
    @media screen and (max-width: 480px) {
      .section-home h1 {
        top: inherit;
        left: inherit;
        position: relative; } }
  .section-home p {
    font-weight: 600;
    position: absolute;
    top: 59%;
    top: -webkit-calc(42% + 80px);
    top: calc(42% + 80px);
    left: 7vw;
    color: #990000; }
    @media screen and (max-width: 480px) {
      .section-home p {
        top: inherit;
        left: inherit;
        position: relative; } }
  .section-home .block-content {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%; }
    .section-home .block-content:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-home .block-content {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 57.35098%; }
        .section-home .block-content:last-child {
          margin-right: 0; } }
    @media screen and (max-width: 480px) {
      .section-home .block-content {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%; }
        .section-home .block-content:last-child {
          margin-right: 0; } }
  .section-home .section-art {
    position: absolute;
    top: 0; }
    @media screen and (max-width: 1101px) {
      .section-home .section-art {
        top: 6vw;
        position: relative; } }
    @media screen and (max-width: 801px) {
      .section-home .section-art {
        position: absolute;
        top: 34%;
        left: 55%; } }
    @media screen and (max-width: 480px) {
      .section-home .section-art {
        position: relative;
        top: 240px;
        left: 40px; } }
    .section-home .section-art .artwork-item {
      display: block;
      position: absolute;
      width: 175px;
      height: 175px;
      display: block; }
      @media screen and (min-width: 1440px) {
        .section-home .section-art .artwork-item {
          width: 225px;
          height: 225px; } }
      @media screen and (max-width: 1101px) {
        .section-home .section-art .artwork-item {
          width: 125px;
          height: 125px; } }
      @media screen and (max-width: 801px) {
        .section-home .section-art .artwork-item {
          top: 0px !important;
          left: 0px !important;
          width: 225px;
          height: 225px;
          z-index: 20 !important; } }
    .section-home .section-art .artwork-1 {
      top: 3.5vw;
      left: 62vw;
      z-index: 20; }
    .section-home .section-art .artwork-2 {
      top: 5vw;
      left: 74vw;
      z-index: 19; }
    .section-home .section-art .artwork-3 {
      top: 24vw;
      left: 74vw;
      z-index: 24; }
    .section-home .section-art .artwork-4 {
      top: 19vw;
      left: 82vw;
      z-index: 23; }
    .section-home .section-art .artwork-5 {
      top: 10vw;
      left: 57vw;
      z-index: 21; }
    .section-home .section-art .artwork-6 {
      top: 31vw;
      left: 71vw;
      z-index: 28;
      width: 127px; }
      @media screen and (min-width: 1440px) {
        .section-home .section-art .artwork-6 {
          width: 163px;
          height: 225px; } }
      @media screen and (max-width: 1101px) {
        .section-home .section-art .artwork-6 {
          width: 91px;
          height: 125px; } }
      @media screen and (max-width: 801px) {
        .section-home .section-art .artwork-6 {
          width: 164px;
          height: 225px; } }
    .section-home .section-art .artwork-7 {
      top: 13vw;
      left: 78vw;
      z-index: 20; }
    .section-home .section-art .artwork-8 {
      top: 21vw;
      left: 59vw;
      z-index: 23; }
    .section-home .section-art .artwork-9 {
      top: 16vw;
      left: 66vw;
      z-index: 22; }
    .section-home .section-art .artwork-10 {
      top: 27vw;
      left: 62vw;
      z-index: 26; }
  .section-home .mobile-only {
    display: none; }
    @media screen and (max-width: 480px) {
      .section-home .mobile-only {
        display: block;
        margin-top: 0px;
        float: left; }
        .section-home .mobile-only ul {
          border-left: 5px solid #990000;
          padding-left: 20px; }
          .section-home .mobile-only ul li {
            margin: 12px; }
            .section-home .mobile-only ul li:first-child {
              display: none; }
            .section-home .mobile-only ul li a {
              color: #990000;
              text-decoration: none;
              font-weight: 600;
              text-transform: uppercase;
              font-size: 120%; } }

.section-about {
  background: right 400px url(../images/content/bg-about2.png) no-repeat;
  background-size: 90%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  .section-about .block-content {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%; }
    .section-about .block-content:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-about .block-content {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%; }
        .section-about .block-content:last-child {
          margin-right: 0; } }
  .section-about .img-content {
    margin-top: 20px;
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 40.29137%;
    margin-left: 4.2649%; }
    .section-about .img-content:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-about .img-content {
        margin-left: 0%;
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%; }
        .section-about .img-content:last-child {
          margin-right: 0; } }
    .section-about .img-content img {
      width: 100%; }

.section-featured {
  background: right 150px url(../images/content/bg-featured.jpg) no-repeat; }
  @media screen and (max-width: 480px) {
    .section-featured {
      background: right 150px url(../images/content/bg-featured-m.jpg) no-repeat; } }
  .section-featured .block-content-left {
    margin-top: 20px;
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%; }
    .section-featured .block-content-left:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-featured .block-content-left {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%; }
        .section-featured .block-content-left:last-child {
          margin-right: 0; } }
  .section-featured .block-content-right {
    margin-top: 20px;
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 44.55627%;
    margin-left: 4.2649%; }
    .section-featured .block-content-right:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-featured .block-content-right {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%;
        margin-left: 0%; }
        .section-featured .block-content-right:last-child {
          margin-right: 0; } }
    .section-featured .block-content-right a {
      float: left;
      margin-right: 40px;
      -webkit-transition: all 0.2s ease;
      transition: all 0.2s ease; }
      .section-featured .block-content-right a:hover {
        opacity: 0.8; }
    .section-featured .block-content-right .spotify {
      margin-top: 5%; }
    .section-featured .block-content-right .youtube {
      margin-top: 10%; }

.section-booking {
  background: center url(../images/content/bg-booking.jpg) no-repeat;
  background-attachment: fixed;
  background-size: 80%;
  position: relative;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  @media screen and (max-width: 480px) {
    .section-booking {
      background-position: left center;
      background-attachment: fixed; } }
  .section-booking .block-rates {
    display: table-cell;
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 48.82117%; }
    .section-booking .block-rates:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-booking .block-rates {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%; }
        .section-booking .block-rates:last-child {
          margin-right: 0; } }
    .section-booking .block-rates p, .section-booking .block-rates ul {
      margin: 10px 0; }
  .section-booking .block-booking {
    display: table-cell;
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 40.29137%;
    margin-left: 4.2649%;
    color: white;
    background: url(../images/content/red-panel.jpg) no-repeat;
    background-size: cover;
    margin-bottom: 50px; }
    .section-booking .block-booking:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-booking .block-booking {
        margin-top: 20px;
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%;
        margin-left: 0%; }
        .section-booking .block-booking:last-child {
          margin-right: 0; } }
    .section-booking .block-booking .block-inner {
      padding: 10px 30px;
      font-size: 85%; }
      @media screen and (max-width: 480px) {
        .section-booking .block-booking .block-inner {
          padding: 0px 20px; }
          .section-booking .block-booking .block-inner h3 {
            margin-bottom: 10px; } }
    .section-booking .block-booking p {
      margin: 10px 0;
      line-height: 1.4em; }
    .section-booking .block-booking a {
      color: white;
      text-decoration: none;
      border-bottom: 1px solid #f3f3f3;
      -webkit-transition: all 0.2s ease;
      transition: all 0.2s ease; }
      .section-booking .block-booking a:hover {
        border-bottom: 1px solid #ffa7a7;
        color: #ffa7a7; }

.section-disc {
  background: right 70px url(../images/content/wave-disc.jpg) no-repeat;
  background-attachment: fixed; }
  @media screen and (max-width: 801px) {
    .section-disc {
      background-position: left 100px; } }

.section-qa {
  background: right 70px url(../images/content/wave-qa.jpg) no-repeat;
  background-attachment: fixed; }
  @media screen and (max-width: 801px) {
    .section-qa {
      background-position: left 100px; } }
  .section-qa .section-block {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 65.88078%; }
    .section-qa .section-block:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-qa .section-block {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%; }
        .section-qa .section-block:last-child {
          margin-right: 0; } }
  .section-qa .section-quote {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 23.23176%;
    margin-left: 8.5298%;
    border-bottom: 1px solid #686868;
    display: block; }
    .section-qa .section-quote:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-qa .section-quote {
        display: none; } }
    .section-qa .section-quote .quote-block {
      margin-top: 60%;
      border-top: 2px solid #990000;
      width: 100%; }
      .section-qa .section-quote .quote-block p {
        font-size: 110%;
        float: right;
        text-align: right;
        color: #990000;
        font-weight: 600; }
      .section-qa .section-quote .quote-block .speechmark-open {
        float: left;
        margin-top: 15px;
        width: 29px;
        height: 22px;
        background: url(../images/content/speechmark-start.png) no-repeat; }
      .section-qa .section-quote .quote-block .speechmark-close {
        float: right;
        margin: 0 0 15px 0;
        width: 29px;
        height: 22px;
        background: url(../images/content/speechmark-end.png) no-repeat; }
  .section-qa p {
    margin: 10px 0; }
  .section-qa .q {
    margin-top: 25px;
    color: #990000;
    font-weight: 600; }

.section-testimonials {
  background: 50% 50% url(../images/content/bg-test.jpg) no-repeat;
  background-size: 70%;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0; }
  @media screen and (max-width: 801px) {
    .section-testimonials {
      background-position: center 150px;
      background-size: 100%;
      background-attachment: fixed; } }
  .section-testimonials .section-block {
    float: left;
    display: block;
    margin-right: 2.35765%;
    width: 65.88078%; }
    .section-testimonials .section-block:last-child {
      margin-right: 0; }
    @media screen and (max-width: 801px) {
      .section-testimonials .section-block {
        float: left;
        display: block;
        margin-right: 2.35765%;
        width: 100%; }
        .section-testimonials .section-block:last-child {
          margin-right: 0; } }
  .section-testimonials p {
    margin-bottom: 10px; }
    .section-testimonials p:nth-child(even) {
      color: #990000;
      font-weight: 600;
      font-size: 90%; }

.section-contact {
  background: right 80px url(../images/content/wave-contact.jpg) no-repeat;
  background-attachment: fixed; }
  @media screen and (max-width: 801px) {
    .section-contact {
      background-position: left 100px; } }
  .section-contact p {
    margin-top: 50px; }

nav.primary-nav ul {
  margin: 0;
  padding: 0; }
  nav.primary-nav ul li {
    float: left;
    display: table;
    margin: 0;
    padding: 0;
    text-align: center; }
    @media screen and (max-width: 924px) {
      nav.primary-nav ul li {
        display: none; } }
    nav.primary-nav ul li a {
      position: relative;
      height: 43px;
      font-family: "Malgun", Arial, sans-serif;
      display: table-cell;
      vertical-align: middle;
      width: 100%;
      text-decoration: none;
      color: #f3f3f3;
      letter-spacing: 0.05em;
      font-size: 14px;
      text-transform: uppercase;
      padding: 0 1.2vw;
      white-space: nowrap;
      white-space: nowrap;
      /* css-3 */
      white-space: -moz-nowrap;
      /* Mozilla, since 1999 */
      white-space: -nowrap;
      /* Opera 4-6 */
      white-space: -o-nowrap;
      /* Opera 7 */
      border-bottom: 2px solid #990000; }
      @media screen and (max-width: 1101px) {
        nav.primary-nav ul li a {
          font-size: 11px;
          padding: 0 1vw; } }
    nav.primary-nav ul li .nav-active {
      border-bottom: 2px solid #f3f3f3; }
    nav.primary-nav ul li .nav-home {
      padding-left: 50px;
      color: #ffa7a7; }
      nav.primary-nav ul li .nav-home.nav-active {
        border-bottom: 2px solid #990000; }

nav#social ul {
  float: right;
  margin: 0;
  padding: 0;
  margin-top: 13px;
  margin-right: 10px; }
  nav#social ul li {
    float: left; }
    nav#social ul li a {
      color: white;
      display: inline-block;
      width: 35px;
      height: 35px;
      font-size: 14pt;
      text-decoration: none; }

nav a {
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }
  nav a:hover {
    color: #ffa7a7 !important; }

.sliding-panel-content {
  position: fixed;
  top: 0;
  right: auto;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #990000;
  background-image: url(../images/content/bg-mobile.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  -webkit-overflow-scrolling: touch;
  overflow-x: auto;
  -webkit-transform: translateY(100%);
      -ms-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: all 0.25s linear;
          transition: all 0.25s linear;
  z-index: 999999; }
  .sliding-panel-content ul {
    padding: 0;
    margin: 0; }
  .sliding-panel-content li {
    list-style: none; }
  .sliding-panel-content li a {
    border-bottom: 1px solid #b30000;
    color: #fff;
    display: block;
    font-weight: 400;
    text-transform: uppercase;
    padding: 1em;
    text-decoration: none; }
    .sliding-panel-content li a:focus {
      background-color: #cc0000; }
    .sliding-panel-content li a:hover {
      background-color: #990000;
      color: #fff; }
  .sliding-panel-content.is-visible {
    -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
            transform: translateX(0); }

.sliding-panel-fade-screen {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: black;
  opacity: 0;
  -webkit-transition: all 0.2s ease-in-out;
          transition: all 0.2s ease-in-out;
  visibility: hidden;
  z-index: 999998; }
  .sliding-panel-fade-screen.is-visible {
    opacity: 0.5;
    visibility: visible; }

.sliding-panel-button {
  cursor: pointer;
  display: inline-block;
  outline: none;
  padding: 10px 20px;
  position: relative; }
  .sliding-panel-button img {
    height: 1.4em; }

.icon-arrow-down {
  position: absolute;
  bottom: -5px;
  left: 20px;
  color: white;
  width: 32px;
  height: 32px;
  display: block; }
  .icon-arrow-down span {
    display: inline; }

.artwork {
  margin-top: 40px; }

  .artwork ul {
    margin: 0;
    padding: 0; }
    .artwork ul li {
      float: left;
      position: relative;
      width: 175px;
      height: 175px;
      margin-right: 3px;
      margin-bottom: 3px; }
  .artwork a {
    position: relative;
    width: 100%;
    height: 100%;
    display: block;
    z-index: 15; 
    -webkit-transition: opacity 0.6s ease-in-out;
    transition: opacity 0.6s ease-in-out;
    }
  .artwork .release-info {
    z-index: 10;
    top: 0;
    left: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #990000;
    opacity: 0;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out; }
    .artwork .release-info span {
      color: white;
      text-transform: uppercase;
      font-family: "Open Sans", sans-serif, arial; }
    .artwork .release-info .year {
      position: absolute;
      top: 10px;
      left: 10px;
      font-size: 24px;
      font-weight: 400; }
    .artwork .release-info .spotify {
      position: absolute;
      top: 10px;
      right: 10px;
      width: 35px;
      height: 35px;
      display: inline-block; 
      z-index: 20;
      }
    .artwork .release-info a[href=""],
    .artwork .release-info a[href="#"] {
      display: none;
      }  
    .artwork .release-info .spotify span {
      display: inline-block;
      position: relative;
      width: 100%;
      height: 100%;
      background: url('../images/icons/spotify.png') no-repeat;
      background-size: contain;
      }
    .artwork .release-info .spotify span:after {
      display: block;
      content: "PLAY \25BA";
      position: relative;
      left: -1px;
      top: 39px;
      font-size: 9px;
      font-weight: 400; 
      color: white;
      text-decoration: none;
      font-style: normal;
      letter-spacing: 0.1em;
      width: 40px;
    }
    .artwork .release-info .release-details {
      position: absolute;
      bottom: 10px;
      left: 10px; }
      .artwork .release-info .release-details span {
        display: block;
        font-weight: 600;
        font-size: 85%;
        line-height: 1.4em;
        width: 100%;
        padding-right: 10px; }
      .artwork .release-info .release-details .release {
        font-weight: 300; }
      .artwork .release-info .release-details .task {
        margin-top: 5px;
        color: black;
        font-weight: 700; }
  .artwork .artwork-active {
    z-index: 16;
    -webkit-transition: opacity 0.4s ease-out;
    transition: opacity 0.4s ease-out;
    opacity: 0.9;
    -webkit-touch-callout: none;
    /*only to disable context menu on long press*/ }
  .artwork img {
    width: 175px;
    height: 175px; }

.is-cms .artwork ul li {
  width: auto;
  height: auto; }
  .is-cms .artwork ul li .artwork-item img {
    position: relative; }
  .is-cms .artwork ul li .release-info {
    position: relative;
    background-color: white;
    top: inherit;
    display: block;
    opacity: 1;
    width: 175px;
    height: 150px; }
    .is-cms .artwork .release-info .spotify,
    .is-cms .artwork .release-info .spotify *,
    .is-cms .artwork ul li .release-info * {
      display: block;
      font-size: inherit;
      padding: 5px 0;
      position: relative;
      top: inherit;
      left: inherit;
      color: #990000; }
    .is-cms .artwork .release-info .spotify {
      border: 1px solid red;
      padding: 10px;
    }
    .is-cms .artwork .release-info .spotify i {
      color: red;
      padding: 10px;
      font-size: 14px;
    }
.logo {
  position: relative;
  margin: 10px 0;
  padding: 0 0 0 0; }

footer {
  z-index: 10;
  display: block;
  position: fixed;
  bottom: 0;
  width: 100%;
  background: #990000;
  padding: 0;
  margin: 0;
  height: 43px;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease; }

.icon-menu {
  position: absolute;
  bottom: 10px;
  left: 20px;
  color: white;
  width: 35px;
  height: 35px;
  display: block;
  top: 17px;
  display: none; }
  @media screen and (max-width: 924px) {
    .icon-menu {
      display: block;
      left: 20px; } }

.brand-mobile {
  position: absolute;
  bottom: 10px;
  left: 50px;
  color: white;
  font-family: "Open Sans", sans-serif, arial;
  font-size: 12px;
  text-transform: uppercase;
  display: block;
  top: 12px;
  display: none; }
  @media screen and (max-width: 924px) {
    .brand-mobile {
      display: block;
      left: 50px; } }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIl9iYXNlL193ZWItZm9udC1sb2FkZXIuc2NzcyIsIl9iYXNlL19mb250cy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fYm94LXNpemluZy5zY3NzIiwiX2hlbHBlcnMvX2FsaWduLnNjc3MiLCJfaGVscGVycy9fZm9udC1zaXplcy5zY3NzIiwiX3ZhcmlhYmxlcy9fZm9udHMuc2NzcyIsIl92YXJpYWJsZXMvX3NldHRpbmdzLnNjc3MiLCJfaGVscGVycy9fcGFkZGluZ3Muc2NzcyIsIl9oZWxwZXJzL19wb3NpdGlvbnMuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbmVhdC9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2dyaWQvX21lZGlhLnNjc3MiLCJfaGVscGVycy9fYW5pbWF0aW9ucy5zY3NzIiwiX2hlbHBlcnMvX2xpbmUtaGVpZ2h0cy5zY3NzIiwiX2xheW91dHMvX2dsb2JhbC5zY3NzIiwiX2xheW91dHMvX2xheW91dC5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9uZWF0L2FwcC9hc3NldHMvc3R5bGVzaGVldHMvZ3JpZC9fb3V0ZXItY29udGFpbmVyLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL25lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9taXhpbnMvX2NsZWFyZml4LnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL25lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ncmlkL19wYWQuc2NzcyIsIl9sYXlvdXRzL19jb250ZW50LnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL25lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9ncmlkL19zcGFuLWNvbHVtbnMuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbmVhdC9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2dyaWQvX3ByaXZhdGUuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvbmVhdC9hcHAvYXNzZXRzL3N0eWxlc2hlZXRzL2dyaWQvX3NoaWZ0LnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2JvdXJib24vYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9hZGRvbnMvX3ByZWZpeGVyLnNjc3MiLCJfY29tcG9uZW50cy9fbmF2LnNjc3MiLCJfY29tcG9uZW50cy9fc2xpZGUtbWVudS5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19wb3NpdGlvbi5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9ib3VyYm9uL2FwcC9hc3NldHMvc3R5bGVzaGVldHMvYWRkb25zL19zaXplLnNjc3MiLCJfY29tcG9uZW50cy9fYXJ0d29yay5zY3NzIiwiX21vZHVsZXMvX2hlYWRlci5zY3NzIiwiX21vZHVsZXMvX2Zvb3Rlci5zY3NzIiwiX21vZHVsZXMvX21vYmlsZS1uYXYuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTtFQUNJLFdBQVcsRUFDZDs7QUFFRDtFQUVJLDJCQUEyQjtFQUUzQixZQUFZO0VBQ1osYUFBYTtFQUNiLGdCQUFnQjtFQUNoQixPQUFPO0VBQ1AsUUFBUTtFQUVSLGVBQWU7RUFDZixpQkFBaUI7RUFDakIsa0JBQWtCO0VBQ2xCLGtCQUFrQjtFQUNsQixtQkFBbUIsRUFFdEI7O0FBRUQ7O0VBRUksd0NBQXdDO0VBR3hDLGdDQUFnQyxFQUNuQzs7QUM3QkQ7RUFDSSxzQkFBc0I7RUFDdEIsdUNBQVE7RUFDUiwrT0FJNEM7RUFDNUMsb0JBQW9CO0VBQ3BCLG1CQUFtQixFQUFBOztBQ1ByQjtFQUNFLCtCQUF1QjtVQUF2Qix1QkFBdUIsRUFDeEI7O0FBRUQ7RUFJSSw0QkFBb0I7VUFBcEIsb0JBQW9CLEVBQ3JCOztBQVRIO0VBQ0UsK0JBQXVCO1VBQXZCLHVCQUF1QixFQUN4Qjs7QUFFRDtFQUlJLDRCQUFvQjtVQUFwQixvQkFBb0IsRUFDckI7O0FBVEg7RUFDRSwrQkFBdUI7VUFBdkIsdUJBQXVCLEVBQ3hCOztBQUVEO0VBSUksNEJBQW9CO1VBQXBCLG9CQUFvQixFQUNyQjs7QUNWTDtFQUVRLG1CQUFtQjtFQUNuQixTQUFTO0VBQ1Qsb0NBQTZCO0VBQzdCLGdDQUF5QjtFQUN6Qiw0QkFBcUIsRUFFNUI7O0FBRUQ7Ozs7O0VBS0ksb0JBQW9CLEVBQ3ZCOztBQUVEO0VBQ0ksb0JBQW9CLEVBQ3ZCOztBQUVEO0VBQ0ksdUJBQXVCLEVBQzFCOztBQUVEO0VBQ0ksdUJBQXVCLEVBQzFCOztBQUVEO0VBQ0ksc0JBQXNCLEVBQ3pCOztBQUVEO0VBQ0ksNEJBQTRCLEVBQy9COztBQUVEO0VBQ0kseUJBQXlCLEVBQzVCOztBQ3hDRDtFQUNDLG1CQ21DbUI7RURsQ25CLGVBQWUsRUFDZjs7QUFHRDtFQUFNLGdCQ3VCYSxFRHZCZTs7QUFDbEM7RUFBTSxnQkN1QmEsRUR2QmU7O0FBQ2xDO0VBQU0sZ0JDdUJhLEVEdkJlOztBQUNsQztFQUFNLGdCQ3VCYSxFRHZCZTs7QUFDbEM7RUFBTSxnQkN1QmEsRUR2QmU7O0FBQ2xDO0VBQU0sZ0JDdUJhLEVEdkJlOztBQUtsQztFQUNDLGtCQ09vQixFRE5wQjs7QUFFRDtFQUNDLGtCQ1NrQixFRFJsQjs7QUFFRDtFQUNDLGtCQ0RvQixFREVwQjs7QUFFRDtFQUNDLGVFaUJnQixFRmhCaEI7O0FBSUQ7RUFDSSxnQkNYaUIsRURZcEI7O0FBRUQ7RUFDSSxnQkNka0IsRURlckI7O0FBRUQ7RUFDSSxnQkNqQm9CLEVEa0J2Qjs7QUFFRDtFQUNJLGdCQ3hCa0IsRUR5QnJCOztBQUVEO0VBQ0ksZ0JDN0JtQixFRDhCdEI7O0FHakRHO0VBQ0ksd0JBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNEJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksK0JBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNEJBQXFDO0VBQ3JDLCtCQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDZCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLDhCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDZCQUFzQztFQUN0Qyw4QkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0ksd0JBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNEJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksK0JBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNEJBQXFDO0VBQ3JDLCtCQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDZCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLDhCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDZCQUFzQztFQUN0Qyw4QkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksZ0NBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNkJBQXFDO0VBQ3JDLGdDQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDhCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLCtCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDhCQUFzQztFQUN0QywrQkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksZ0NBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNkJBQXFDO0VBQ3JDLGdDQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDhCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLCtCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDhCQUFzQztFQUN0QywrQkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksZ0NBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNkJBQXFDO0VBQ3JDLGdDQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDhCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLCtCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDhCQUFzQztFQUN0QywrQkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksZ0NBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNkJBQXFDO0VBQ3JDLGdDQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDhCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLCtCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDhCQUFzQztFQUN0QywrQkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksZ0NBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNkJBQXFDO0VBQ3JDLGdDQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDhCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLCtCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDhCQUFzQztFQUN0QywrQkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksZ0NBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNkJBQXFDO0VBQ3JDLGdDQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDhCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLCtCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDhCQUFzQztFQUN0QywrQkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksZ0NBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNkJBQXFDO0VBQ3JDLGdDQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDhCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLCtCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDhCQUFzQztFQUN0QywrQkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJBQXFDLEVBQ3hDOztBQUVEO0VBQ0ksZ0NBQXdDLEVBQzNDOztBQUVEO0VBQ0ksNkJBQXFDO0VBQ3JDLGdDQUF3QyxFQUMzQzs7QUFFRDtFQUNJLDhCQUFzQyxFQUN6Qzs7QUFFRDtFQUNJLCtCQUF1QyxFQUMxQzs7QUFFRDtFQUNJLDhCQUFzQztFQUN0QywrQkFBdUMsRUFDMUM7O0FBNUJEO0VBQ0kseUJBQWlDLEVBQ3BDOztBQUVEO0VBQ0ksNkJB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LGFBQWE7SUFDYixjQUFjLEVBQ2Q7O0FBT0Y7RUFFRSxZQUFZO0VBQ1osYUFBYSxFQXlCYjtFQTVCRjtJQU9JLG1CQUFtQixFQUNuQjtFQVJKO0lBV0csbUJBQW1CO0lBQ25CLHdCcEI5RFU7SW9CK0RWLGFBQWE7SUFDYixlQUFlO0lBQ2YsV0FBVztJQUNYLGFBQWE7SUFDYixjQUFjLEVBVWQ7SUEzQkg7TUFtQkksZUFBZTtNQUNmLG1CQUFtQjtNQUNuQixlQUFlO01BQ2YsbUJBQW1CO01BQ25CLGFBQWE7TUFDYixjQUFjO01BQ2QsZXBCdEVTLEVvQnVFVDs7QUN4SEo7RUFDSSxtQkFBbUI7RUFDbkIsZUFBZTtFQUNmLGlCQUFpQixFQUNwQjs7QUNIRDtFQUNDLFlBQVk7RUFDWixlQUFlO0VBQ2YsZ0JBQWdCO0VBQ2hCLFVBQVU7RUFDVixZQUFZO0VBQ1osb0J0QjBDWTtFc0J6Q1osV0FBVztFQUNYLFVBQVU7RUFDVixhQUFhO0VQd0JOLGtDT3ZCMEI7RVB1QzFCLDBCT3ZDMEIsRUFNakM7O0FDZEQ7RUFDSSxtQkFBbUI7RUFDbkIsYUFBYTtFQUNiLFdBQVc7RUFDWCxhQUFhO0VBQ2IsWUFBWTtFQUNaLGFBQWE7RUFDYixlQUFlO0VBQ2YsVUFBVTtFQUNWLGNBQWMsRUFLakI7RXBCb0VHO0lvQmxGSjtNQVdRLGVBQWU7TUFDZixXQUFXLEVBRWxCLEVBQUE7O0FBRUQ7RUFDSSxtQkFBbUI7RUFDbkIsYUFBYTtFQUNiLFdBQVc7RUFDWCxhQUFhO0VBQ2IsNEN4QnJCb0M7RXdCc0JwQyxnQkFBZ0I7RUFDaEIsMEJBQTBCO0VBQzFCLGVBQWU7RUFDZixVQUFVO0VBQ1YsY0FBYyxFQUtqQjtFcEJtREc7SW9CbEVKO01BWVEsZUFBZTtNQUNmLFdBQVcsRUFFbEIsRUFBQSIsImZpbGUiOiJtYWluLmNzcyIsInNvdXJjZXNDb250ZW50IjpbIi8vIFdlYiBGb250IExvYWRlci4gUHJldmVudCBGbGFzaCBPZiBVbnN0eWxlZCBDb250ZW50IChGT1VDKVxuXG4ud2YtbG9hZGluZyAqIHtcbiAgICBvcGFjaXR5OiAwO1xufVxuXG4ud2YtbG9hZGluZzphZnRlciB7XG5cbiAgICBjb250ZW50OiBcImxvYWRpbmcgZm9udHMuLlwiO1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcblxuICAgIGNvbG9yOiAjMTM1MDQwO1xuICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbGluZS1oZWlnaHQ6IDIwZW07XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG59XG5cbi53Zi1hY3RpdmUgKixcbi53Zi1pbmFjdGl2ZSAqIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZS1vdXQ7XG4gICAgLW1vei10cmFuc2l0aW9uOiBvcGFjaXR5IDFzIGVhc2Utb3V0O1xuICAgIC1vLXRyYW5zaXRpb246IG9wYWNpdHkgMXMgZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAxcyBlYXNlLW91dDtcbn0iLCJcbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnTWFsZ3VuJztcbiAgICBzcmM6IHVybChcIi4uL2ZvbnRzL21hbGd1bi5lb3Q/I2llZml4XCIpO1xuICAgIHNyYzogdXJsKFwiLi4vZm9udHMvbWFsZ3VuLmVvdD8jaWVmaXhcIikgZm9ybWF0KFwiZW90XCIpLFxuICAgICAgICB1cmwoXCIuLi9mb250cy9tYWxndW4ud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL21hbGd1bi53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgIHVybChcIi4uL2ZvbnRzL21hbGd1bi50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgIHVybCgnLi4vZm9udHMvbWFsZ3VuLnN2ZyNtYWxndW4nKSBmb3JtYXQoJ3N2ZycpO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xufVxuXG4vLyBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjtcbi8vIGZvbnQtZmFtaWx5OiAnUmFsZXdheScsIHNhbnMtc2VyaWY7IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG5AaWYgJGJvcmRlci1ib3gtc2l6aW5nID09IHRydWUge1xuICBodG1sIHsgLy8gaHR0cDovL2JpdC5seS8xcWsydFZSXG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgfVxuXG4gICoge1xuICAgICYsXG4gICAgJjo6YWZ0ZXIsXG4gICAgJjo6YmVmb3JlIHtcbiAgICAgIGJveC1zaXppbmc6IGluaGVyaXQ7XG4gICAgfVxuICB9XG59XG4iLCIvLy8gQWxpZ25zIC8vL1xuXG4udmEge1xuICAgXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgXG59XG5cbi52YS10LFxuLnZhLW0sXG4udmEtYixcbi52YS10Yixcbi52YS10dCB7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLnZhLXQge1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi52YS1tIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udmEtYiB7XG4gICAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLnZhLXMge1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbn1cblxuLnZhLXRiIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdGV4dC1ib3R0b207XG59XG5cbi52YS10dCB7XG4gICAgdmVydGljYWwtYWxpZ246IHRleHQtdG9wO1xufSIsIi8vIEZvbnQgc2l6ZSBoZWxwZXJzXG5cbi5tZWdhIHtcblx0Zm9udC1zaXplOiAkZm9udC1tZWdhLXNpemU7XG5cdGxpbmUtaGVpZ2h0OiAxO1xufVxuXG5cbi5oMSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTsgfVxuLmgyIHsgZm9udC1zaXplOiAkZm9udC1zaXplLWgyOyB9XG4uaDMgeyBmb250LXNpemU6ICRmb250LXNpemUtaDM7IH1cbi5oNCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDsgfVxuLmg1IHsgZm9udC1zaXplOiAkZm9udC1zaXplLWg1OyB9XG4uaDYgeyBmb250LXNpemU6ICRmb250LXNpemUtaDY7IH1cblxuXG4vLyBGb250IHdlaWdodCBoZWxwZXJzXG5cbi50ZXh0LXN0ZCB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1zaXplLWJhc2U7XG59XG5cbi50ZXh0LXN1YmhlYWRlciB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1zaXplLWgyO1xufVxuXG4udGV4dC1oZWFkZXIsIC5uYXYtbGluayB7XG5cdGZvbnQtZmFtaWx5OiAkZm9udC1zaXplLWJhc2U7XG59XG5cbi5icmFuZCB7XG5cdGNvbG9yOiAkcHJpbWFyeTtcbn1cblxuLy8vIEZvbnRzIC8vL1xuXG4uZm9udC1iYXNlIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbn1cblxuLmZvbnQtc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbn1cblxuLmZvbnQtc21hbGxlciB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsZXI7XG59XG5cbi5mb250LWxhcmdlIHtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG59XG5cbi5mb250LWxhcmdlciB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplLWxhcmdlcjtcbn0iLCIvLy8gRm9udCBmYW1pbGllcyAvLy9cblxuJG1hbGd1bjogXCJNYWxndW5cIiwgQXJpYWwsIHNhbnMtc2VyaWY7XG4kcGxheWZhaXI6IFwiUGxheWZhaXIgRGlzcGxheVwiLCAnVGltZXMgTmV3IFJvbWFuJywgc2VyaWY7XG4kcmFsZXdheTogXCJPcGVuIFNhbnNcIiwgc2Fucy1zZXJpZiwgYXJpYWw7IFxuXG4vLyBmb250LWZhbWlseTogJ1BsYXlmYWlyIERpc3BsYXknLCBzZXJpZjtcbi8vIGZvbnQtZmFtaWx5OiAnUmFsZXdheScsIHNhbnMtc2VyaWY7XG5cbiRmb250LWJhc2U6ICRyYWxld2F5O1xuJGZvbnQtaGVhZDogJG1hbGd1bjtcbiRmb250LXN1YmhlYWQ6ICRwbGF5ZmFpcjtcblxuJGhlYWRpbmdzLWZvbnQtd2VpZ2h0OiBub3JtYWw7XG5cblxuLy8vIEZvbnQgc2l6ZXNcblxuLy8gQm9keVxuXG4kbGluZS1oZWlnaHQtYmFzZTogMjQvMTY7IFxuJGxpbmUtaGVpZ2h0LXN0ZDogMS4zNWVtOyBcblxuJGZvbnQtc2l6ZS14bGFyZ2U6IDMycHg7XG4kZm9udC1zaXplLWxhcmdlcjogMjRweDtcbiRmb250LXNpemUtbGFyZ2U6IDE4cHg7XG4kZm9udC1zaXplLWJhc2U6IDE2cHg7XG4kZm9udC1zaXplLXNtYWxsOiAxNHB4O1xuJGZvbnQtc2l6ZS1zbWFsbGVyOiAxM3B4O1xuXG4vLyBIZWFkaW5nc1xuJGZvbnQtc2l6ZS1oMTogNjRweDtcbiRmb250LXNpemUtaDI6IDI0cHg7XG4kZm9udC1zaXplLWgzOiAyNHB4O1xuJGZvbnQtc2l6ZS1oNDogMThweDtcbiRmb250LXNpemUtaDU6IDE2cHg7XG4kZm9udC1zaXplLWg2OiAxNHB4O1xuXG4kZm9udC1tZWdhLXNpemU6IDExMC8xNiArIGVtOyIsIkBpbXBvcnQgXCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL25lYXQvYXBwL2Fzc2V0cy9zdHlsZXNoZWV0cy9uZWF0XCI7XG5cbiR2aXN1YWwtZ3JpZDogZmFsc2U7XG4kdmlzdWFsLWdyaWQtY29sb3I6IGdyZXk7XG4kdmlzdWFsLWdyaWQtaW5kZXg6IGZyb250O1xuJHZpc3VhbC1ncmlkLW9wYWNpdHk6IDAuMTtcbiBcbi8vIENoYW5nZSB0aGUgZ3JpZCBzZXR0aW5nc1xuJG1heC13aWR0aDogMTI2NnB4O1xuXG4kZGVza3RvcC1sYXJnZTogbmV3LWJyZWFrcG9pbnQobWluLXdpZHRoIDE0NDBweCAxMik7IFxuJGRlc2t0b3Atc21hbGw6IG5ldy1icmVha3BvaW50KG1heC13aWR0aCAxMTAxcHggMTIpOyBcbiR0YWJsZXQtbGFyZ2U6IG5ldy1icmVha3BvaW50KG1heC13aWR0aCA5MjRweCAxMik7XG4kdGFibGV0OiBuZXctYnJlYWtwb2ludChtYXgtd2lkdGggODAxcHggMTIpO1xuJG1vYmlsZTogbmV3LWJyZWFrcG9pbnQobWF4LXdpZHRoIDQ4MHB4IDEyKTtcblxuXG4vLyBuZWF0IHYyLjAuMCBcbi8vICRkZXNrdG9wLWxhcmdlOiAoXG4vLyAgIGNvbHVtbnM6IDEyLFxuLy8gICBtZWRpYTogMTQ0MHB4LFxuLy8gKTtcblxuLy8gJGRlc2t0b3Atc21hbGw6IChcbi8vICAgY29sdW1uczogMTIsXG4vLyAgIG1lZGlhOiAxMTAxcHgsXG4vLyApO1xuXG4vLyAkdGFibGV0LWxhcmdlOiAoXG4vLyAgIGNvbHVtbnM6IDEyLFxuLy8gICBtZWRpYTogOTI0cHgsXG4vLyApO1xuXG4vLyAkdGFibGV0OiAoXG4vLyAgIGNvbHVtbnM6IDEyLFxuLy8gICBtZWRpYTogODBweCxcbi8vICk7XG5cbi8vICRtb2JpbGU6IChcbi8vICAgY29sdW1uczogMTIsXG4vLyAgIG1lZGlhOiA0ODBweCxcbi8vICk7XG5cblxuLy8vIENvbG91cnMgLy8vXG4kd2hpdGU6IHdoaXRlO1xuJGJsYWNrOiBibGFjaztcblxuJHByaW1hcnk6ICNhNDI5Mjk7XG5cbiRyZWQ6ICM5OTAwMDA7XG5cbiRwaW5rOiAjZmZhN2E3O1xuJGdyZXk6ICM2ODY4Njg7XG4kb2Zmd2hpdGU6ICNmM2YzZjM7XG4iLCIvLy8gUGFkZGluZ3MgLy8vXG5cblxuQGVhY2ggJHNwYWNlIGluICRwYWRkaW5ncyB7XG5cbiAgICAucC0jeyRzcGFjZX0ge1xuICAgICAgICBwYWRkaW5nOiAjeyRzcGFjZX1weCAhaW1wb3J0YW50IDtcbiAgICB9XG5cbiAgICAucHQtI3skc3BhY2V9IHtcbiAgICAgICAgcGFkZGluZy10b3A6ICN7JHNwYWNlfXB4ICFpbXBvcnRhbnQgO1xuICAgIH1cblxuICAgIC5wYi0jeyRzcGFjZX0ge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogI3skc3BhY2V9cHggIWltcG9ydGFudCA7XG4gICAgfVxuXG4gICAgLnB0Yi0jeyRzcGFjZX0ge1xuICAgICAgICBwYWRkaW5nLXRvcDogI3skc3BhY2V9cHggIWltcG9ydGFudCA7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAjeyRzcGFjZX1weCAhaW1wb3J0YW50IDtcbiAgICB9XG5cbiAgICAucGwtI3skc3BhY2V9IHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAjeyRzcGFjZX1weCAhaW1wb3J0YW50IDtcbiAgICB9XG5cbiAgICAucHItI3skc3BhY2V9IHtcbiAgICAgICAgcGFkZGluZy1yaWdodDogI3skc3BhY2V9cHggIWltcG9ydGFudCA7XG4gICAgfVxuXG4gICAgLnBsci0jeyRzcGFjZX0ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICN7JHNwYWNlfXB4ICFpbXBvcnRhbnQgO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAjeyRzcGFjZX1weCAhaW1wb3J0YW50IDtcbiAgICB9XG59IiwiLy8gQWJzb2x1dGUgcG9zaXRpb25pbmcgaGVscGVyc1xuLnBvcy0tcmVsYXRpdmVcbntcblx0cG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4ucG9zLS1hYnNvbHV0ZVxue1xuXHRwb3NpdGlvbjogYWJzb2x1dGU7XG59XG5cbi8vdG9wXG4udCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbn1cblxuXG4vL2JvdHRvbVxuLmIge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG59XG5cbi50cm8tYiB7XG4gICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICB0b3A6IDEwMCU7XG4gICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG5cblxuLy9sZWZ0XG4ubCB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG59XG5cblxuLy9yaWdodFxuLnJcbntcbiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgIHJpZ2h0OiAwO1xufSIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIE91dHB1dHMgYSBtZWRpYS1xdWVyeSBibG9jayB3aXRoIGFuIG9wdGlvbmFsIGdyaWQgY29udGV4dCAodGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIHVzZWQgaW4gdGhlIGdyaWQpLlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkcXVlcnlcbi8vLyAgIEEgbGlzdCBvZiBtZWRpYSBxdWVyeSBmZWF0dXJlcyBhbmQgdmFsdWVzLCB3aGVyZSBlYWNoIGAkZmVhdHVyZWAgc2hvdWxkIGhhdmUgYSBjb3JyZXNwb25kaW5nIGAkdmFsdWVgLlxuLy8vICAgRm9yIGEgbGlzdCBvZiB2YWxpZCB2YWx1ZXMgZm9yIGAkZmVhdHVyZWAsIGNsaWNrIFtoZXJlXShodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLW1lZGlhcXVlcmllcy8jbWVkaWExKS5cbi8vL1xuLy8vICAgSWYgdGhlcmUgaXMgb25seSBhIHNpbmdsZSBgJHZhbHVlYCBpbiBgJHF1ZXJ5YCwgYCRkZWZhdWx0LWZlYXR1cmVgIGlzIGdvaW5nIHRvIGJlIHVzZWQuXG4vLy9cbi8vLyAgIFRoZSBudW1iZXIgb2YgdG90YWwgY29sdW1ucyBpbiB0aGUgZ3JpZCBjYW4gYmUgc2V0IGJ5IHBhc3NpbmcgYCRjb2x1bW5zYCBhdCB0aGUgZW5kIG9mIHRoZSBsaXN0IChvdmVycmlkZXMgYCR0b3RhbC1jb2x1bW5zYCkuXG4vLy9cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyICh1bml0bGVzcyl9ICR0b3RhbC1jb2x1bW5zIFskZ3JpZC1jb2x1bW5zXVxuLy8vICAgLSBOdW1iZXIgb2YgY29sdW1ucyB0byB1c2UgaW4gdGhlIG5ldyBncmlkIGNvbnRleHQuIENhbiBiZSBzZXQgYXMgYSBzaG9ydGhhbmQgaW4gdGhlIGZpcnN0IHBhcmFtZXRlci5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLnJlc3BvbnNpdmUtZWxlbWVudCB7XG4vLy8gICAgICBAaW5jbHVkZSBtZWRpYSg3NjlweCkge1xuLy8vICAgICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG4vLy8gICAgICB9XG4vLy8gICB9XG4vLy9cbi8vLyAgLm5ldy1jb250ZXh0LWVsZW1lbnQge1xuLy8vICAgIEBpbmNsdWRlIG1lZGlhKG1pbi13aWR0aCAzMjBweCBtYXgtd2lkdGggNDgwcHgsIDYpIHtcbi8vLyAgICAgIEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcbi8vLyAgICB9XG4vLy8gIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNzY5cHgpIHtcbi8vLyAgICAucmVzcG9uc2l2ZS1lbGVtZW50IHtcbi8vLyAgICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8vICAgICAgZmxvYXQ6IGxlZnQ7XG4vLy8gICAgICBtYXJnaW4tcmlnaHQ6IDIuMzU3NjUlO1xuLy8vICAgICAgd2lkdGg6IDQ4LjgyMTE3JTtcbi8vLyAgICB9XG4vLy9cbi8vLyAgICAucmVzcG9uc2l2ZS1lbGVtZW50Omxhc3QtY2hpbGQge1xuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgIH1cbi8vLyAgfVxuLy8vXG4vLy8gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6IDMyMHB4KSBhbmQgKG1heC13aWR0aDogNDgwcHgpIHtcbi8vLyAgICAubmV3LWNvbnRleHQtZWxlbWVudCB7XG4vLy8gICAgICBkaXNwbGF5OiBibG9jaztcbi8vLyAgICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiA0LjgyOTE2JTtcbi8vLyAgICAgIHdpZHRoOiAxMDAlO1xuLy8vICAgIH1cbi8vL1xuLy8vICAgIC5uZXctY29udGV4dC1lbGVtZW50Omxhc3QtY2hpbGQge1xuLy8vICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuLy8vICAgIH1cbi8vLyAgfVxuXG5AbWl4aW4gbWVkaWEoJHF1ZXJ5OiAkZmVhdHVyZSAkdmFsdWUgJGNvbHVtbnMsICR0b3RhbC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zKSB7XG4gIEBpZiBsZW5ndGgoJHF1ZXJ5KSA9PSAxIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAoJGRlZmF1bHQtZmVhdHVyZTogbnRoKCRxdWVyeSwgMSkpIHtcbiAgICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiAgICAgICRncmlkLWNvbHVtbnM6ICR0b3RhbC1jb2x1bW5zICFnbG9iYWw7XG4gICAgICBAY29udGVudDtcbiAgICAgICRncmlkLWNvbHVtbnM6ICRkZWZhdWx0LWdyaWQtY29sdW1ucyAhZ2xvYmFsO1xuICAgIH1cbiAgfSBAZWxzZSB7XG4gICAgJGxvb3AtdG86IGxlbmd0aCgkcXVlcnkpO1xuICAgICRtZWRpYS1xdWVyeTogXCJzY3JlZW4gYW5kIFwiO1xuICAgICRkZWZhdWx0LWdyaWQtY29sdW1uczogJGdyaWQtY29sdW1ucztcbiAgICAkZ3JpZC1jb2x1bW5zOiAkdG90YWwtY29sdW1ucyAhZ2xvYmFsO1xuXG4gICAgQGlmIGlzLW5vdChpcy1ldmVuKGxlbmd0aCgkcXVlcnkpKSkge1xuICAgICAgJGdyaWQtY29sdW1uczogbnRoKCRxdWVyeSwgJGxvb3AtdG8pICFnbG9iYWw7XG4gICAgICAkbG9vcC10bzogJGxvb3AtdG8gLSAxO1xuICAgIH1cblxuICAgICRpOiAxO1xuICAgIEB3aGlsZSAkaSA8PSAkbG9vcC10byB7XG4gICAgICAkbWVkaWEtcXVlcnk6ICRtZWRpYS1xdWVyeSArIFwiKFwiICsgbnRoKCRxdWVyeSwgJGkpICsgXCI6IFwiICsgbnRoKCRxdWVyeSwgJGkgKyAxKSArIFwiKSBcIjtcblxuICAgICAgQGlmICgkaSArIDEpICE9ICRsb29wLXRvIHtcbiAgICAgICAgJG1lZGlhLXF1ZXJ5OiAkbWVkaWEtcXVlcnkgKyBcImFuZCBcIjtcbiAgICAgIH1cblxuICAgICAgJGk6ICRpICsgMjtcbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaWEtcXVlcnl9IHtcbiAgICAgIEBjb250ZW50O1xuICAgICAgJGdyaWQtY29sdW1uczogJGRlZmF1bHQtZ3JpZC1jb2x1bW5zICFnbG9iYWw7XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1hcnQge1xuIFxuXHQuYXJ0d29yay1pdGVtIHtcblx0ICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQpIHtcblx0XHQgICAgIFxuXHRcdCAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBmYWRlO1xuXHRcdCAgICAtd2Via2l0LWFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlO1xuXHRcdCAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMjBzO1xuXHRcdCAgICBhbmltYXRpb24tbmFtZTogZmFkZTtcblx0XHQgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG5cdFx0ICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMjBzO1xuXHRcdH1cblx0fVxuXG5cdEAtd2Via2l0LWtleWZyYW1lcyBmYWRlIHtcblx0ICAgIDAlIHtvcGFjaXR5OiAwO31cblx0ICAgIDEwJSB7b3BhY2l0eTogMTt9XG5cdCAgICAyMCUge29wYWNpdHk6IDA7fVxuXHQgICAgMzAlIHtvcGFjaXR5OiAwO31cblx0ICAgIDQwJSB7b3BhY2l0eTogMDt9XG5cdCAgICA1MCUge29wYWNpdHk6IDA7fVxuXHQgICAgNjAlIHtvcGFjaXR5OiAwO31cblx0ICAgIDcwJSB7b3BhY2l0eTogMDt9XG5cdCAgICA4MCUge29wYWNpdHk6IDA7fVxuXHQgICAgOTAlIHtvcGFjaXR5OiAwO31cblx0ICAgIDEwMCUge29wYWNpdHk6IDA7fVxuXHR9XG5cdEBrZXlmcmFtZXMgZmFkZSB7XG5cdFx0IDAlIHtvcGFjaXR5OiAwO31cblx0ICAgIDEwJSB7b3BhY2l0eTogMTt9XG5cdCAgICAyMCUge29wYWNpdHk6IDA7fVxuXHQgICAgMzAlIHtvcGFjaXR5OiAwO31cblx0ICAgIDQwJSB7b3BhY2l0eTogMDt9XG5cdCAgICA1MCUge29wYWNpdHk6IDA7fVxuXHQgICAgNjAlIHtvcGFjaXR5OiAwO31cblx0ICAgIDcwJSB7b3BhY2l0eTogMDt9XG5cdCAgICA4MCUge29wYWNpdHk6IDA7fVxuXHQgICAgOTAlIHtvcGFjaXR5OiAwO31cblx0ICAgIDEwMCUge29wYWNpdHk6IDA7fVxuXHR9XG5cblx0LmFydHdvcmstaXRlbTpudGgtY2hpbGQoMSkge1xuXHRcdC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAwcztcblx0fVxuXHQuYXJ0d29yay1pdGVtOm50aC1jaGlsZCgyKSB7XG5cdCAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTJzO1xuXHR9XG5cdC5hcnR3b3JrLWl0ZW06bnRoLWNoaWxkKDMpIHtcblx0ICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtNHM7XG5cdH1cblx0LmFydHdvcmstaXRlbTpudGgtY2hpbGQoNCkge1xuXHQgICAgLXdlYmtpdC1hbmltYXRpb24tZGVsYXk6IC02cztcblx0fVxuXHQuYXJ0d29yay1pdGVtOm50aC1jaGlsZCg1KSB7XG5cdCAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLThzO1xuXHR9XG5cdC5hcnR3b3JrLWl0ZW06bnRoLWNoaWxkKDYpIHtcblx0ICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMTBzO1xuXHR9XG5cdC5hcnR3b3JrLWl0ZW06bnRoLWNoaWxkKDcpIHtcblx0ICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMTJzO1xuXHR9XG5cdC5hcnR3b3JrLWl0ZW06bnRoLWNoaWxkKDgpIHtcblx0ICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMTRzO1xuXHR9XG5cdC5hcnR3b3JrLWl0ZW06bnRoLWNoaWxkKDkpIHtcblx0ICAgIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAtMTZzO1xuXHR9XG5cdC5hcnR3b3JrLWl0ZW06bnRoLWNoaWxkKDEwKSB7XG5cdCAgICAtd2Via2l0LWFuaW1hdGlvbi1kZWxheTogLTE4cztcblx0fVxufSIsIi8vIEBlYWNoICRzcGFjZSBpbiAkbGluZS1oZWlnaHRzIHtcbi8vICAgICAubGgtI3skc3BhY2V9IHtcbi8vICAgICAgICAgbGluZS1oZWlnaHQ6ICN7JHNwYWNlfWVtICFpbXBvcnRhbnQgO1xuLy8gICAgIH1cbi8vIH1cblxuLmxoLW9uZS10d28ge1xuICAgIGxpbmUtaGVpZ2h0OiAxLjJlbSAhaW1wb3J0YW50IDtcbn1cblxuLmxoLW9uZS1mb3VyIHtcbiAgICBsaW5lLWhlaWdodDogMS40ZW0gIWltcG9ydGFudCA7XG59XG5cbi5saC1vbmUtZml2ZSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNWVtICFpbXBvcnRhbnQgO1xufVxuXG4ubGgtb25lLXNldmVuIHtcbiAgICBsaW5lLWhlaWdodDogMS43ZW0gIWltcG9ydGFudCA7XG59IiwiLy8vIExheW91dCAvLy9cblxuaHRtbCB7XG4gICAgaGVpZ2h0OiAxMDAlO1xufVxuXG5ib2R5IHtcbiAgICAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDtcbiAgICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuICAgIC8vIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7IENocm9tZSBhbGwgLyBTYWZhcmkgYWxsXG4gICAgLy8gLW8tdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLy8gdXNlci1zZWxlY3Q6IG5vbmU7XG4gICAgLXdlYmtpdC10b3VjaC1jYWxsb3V0Om5vbmU7XG5cbiAgICBsaW5lLWhlaWdodDogMS40ZW07XG4gICAgYmFja2dyb3VuZDogJHdoaXRlO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBmb250LWZhbWlseTogJHJhbGV3YXk7XG4gICAgZm9udC1zaXplOiA4NSU7XG4gICAgQGluY2x1ZGUgbWVkaWEoJGRlc2t0b3Atc21hbGwpIHtcbiAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgfVxuXG4gICAgJi5tb2JpbGUtbmF2LWFjdGl2ZSB7XG4gICAgICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcbiAgICB9XG59XG5cbnVsIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG5oMSwgaDIge1xuICAgIGNvbG9yOiAkcmVkO1xuICAgIGZvbnQtZmFtaWx5OiAkbWFsZ3VuO1xuICAgIGZvbnQtc2l6ZTogM3Z3O1xuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMWVtO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbWFyZ2luOiAwO1xufVxuXG5oMSB7XG4gICAgcGFkZGluZy10b3A6IDUwcHg7XG5cbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0KSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgcGFkZGluZy10b3A6IDMwcHg7XG4gICAgfVxuXG4gICAgXG59XG5cbmhlYWRlciAuZXEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBsZWZ0OiAwO1xuICAgIHRvcDogMzBweDtcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2NvbnRlbnQvZXEucG5nKSBuby1yZXBlYXQ7XG4gICAgd2lkdGg6IDg2cHg7XG4gICAgaGVpZ2h0OiA3OXB4O1xuICAgIGJhY2tncm91bmQtc2l6ZTogNTAlO1xuICAgIG9wYWNpdHk6IDAuMztcbiAgICAuc2VjdGlvbi1ob21lICYge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBAaW5jbHVkZSBtZWRpYSgkdGFibGV0KSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxufVxuXG5oMiB7XG4gICAgZm9udC1zaXplOiAxLjd2dztcbiAgICBtYXJnaW46IDYwcHggMCAxNXB4O1xuICAgIG1hcmdpbjogNHZ3IDAgMS41dnc7XG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldCkge1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIG1hcmdpbjogMzBweCAwIDBweDtcbiAgICB9XG59XG5cbmgzIHtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHggMDtcbiAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldCkge1xuICAgICAgICBtYXJnaW46IDMwcHggMHB4O1xuICAgIH1cbn1cblxuaDQsIHAge1xuICAgIGZvbnQtZmFtaWx5OiAkcmFsZXdheTtcbiAgICBtYXJnaW46IDIwcHggMDtcbiAgICBsaW5lLWhlaWdodDogMS42ZW07XG4gICAgbGV0dGVyLXNwYWNpbmc6IDAuMDNlbTtcbiAgICBmb250LXdlaWdodDogMzAwO1xufVxuXG5oNCB7XG4gICAgbWFyZ2luOiAxNXB4IDA7XG59IiwiLnNlY3Rpb24ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAtd2Via2l0LXBlcnNwZWN0aXZlOiAxMDAwOyBcbiAgICAvL0BpbmNsdWRlIHBhZCgwcHggNTBweCk7XG4gICAgXG4gICAgLnNlY3Rpb24tY29udGVudCB7XG4gICAgICAgIEBpbmNsdWRlIG91dGVyLWNvbnRhaW5lcigkbWF4LXdpZHRoKTsgICBcbiAgICBcbiAgICAgICAgbWFyZ2luOiAwIDUwcHggNTBweDsgXG4gICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQpIHtcbiAgICAgICAgXHRtYXJnaW46IDAgMjBweCA1MHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgYS50ZXh0LWxpbmsge1xuICAgICAgICAgICAgY29sb3I6ICRyZWQ7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHJlZDtcbiAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5zZWN0aW9uLWNvbnRlbnQtd2lkZSB7XG4gICAgICAgIEBpbmNsdWRlIHBhZCgwcHgpO1xuICAgIH1cblxuICAgIC5ibG9jay1jb250ZW50IHtcbiAgICAgICAgXG4gICAgICAgIC5mb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJHJlZDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuc2VjdGlvbi1ibG9jayB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1MHB4O1xuICAgIH1cblxuICAgXG59IiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gTWFrZXMgYW4gZWxlbWVudCBhIG91dGVyIGNvbnRhaW5lciBieSBjZW50ZXJpbmcgaXQgaW4gdGhlIHZpZXdwb3J0LCBjbGVhcmluZyBpdHMgZmxvYXRzLCBhbmQgc2V0dGluZyBpdHMgYG1heC13aWR0aGAuXG4vLy8gQWx0aG91Z2ggb3B0aW9uYWwsIHVzaW5nIGBvdXRlci1jb250YWluZXJgIGlzIHJlY29tbWVuZGVkLiBUaGUgbWl4aW4gY2FuIGJlIGNhbGxlZCBvbiBtb3JlIHRoYW4gb25lIGVsZW1lbnQgcGVyIHBhZ2UsIGFzIGxvbmcgYXMgdGhleSBhcmUgbm90IG5lc3RlZC5cbi8vL1xuLy8vIEBwYXJhbSB7TnVtYmVyIFt1bml0XX0gJGxvY2FsLW1heC13aWR0aCBbJG1heC13aWR0aF1cbi8vLyAgIE1heCB3aWR0aCB0byBiZSBhcHBsaWVkIHRvIHRoZSBlbGVtZW50LiBDYW4gYmUgYSBwZXJjZW50YWdlIG9yIGEgbWVhc3VyZS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBvdXRlci1jb250YWluZXIoMTAwJSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIG1heC13aWR0aDogMTAwJTtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IGF1dG87XG4vLy8gICAgIG1hcmdpbi1yaWdodDogYXV0bztcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQ6OmFmdGVyIHtcbi8vLyAgICAgY2xlYXI6IGJvdGg7XG4vLy8gICAgIGNvbnRlbnQ6IFwiXCI7XG4vLy8gICAgIGRpc3BsYXk6IHRhYmxlO1xuLy8vICAgfVxuXG5AbWl4aW4gb3V0ZXItY29udGFpbmVyKCRsb2NhbC1tYXgtd2lkdGg6ICRtYXgtd2lkdGgpIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1heC13aWR0aDogJGxvY2FsLW1heC13aWR0aDtcbiAgbWFyZ2luOiB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogYXV0bztcbiAgfVxufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gUHJvdmlkZXMgYW4gZWFzeSB3YXkgdG8gaW5jbHVkZSBhIGNsZWFyZml4IGZvciBjb250YWluaW5nIGZsb2F0cy5cbi8vL1xuLy8vIEBsaW5rIGh0dHA6Ly9nb28uZ2wveVA1aGlaXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzXG4vLy8gICAuZWxlbWVudDo6YWZ0ZXIge1xuLy8vICAgICBjbGVhcjogYm90aDtcbi8vLyAgICAgY29udGVudDogXCJcIjtcbi8vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICB9XG5cbkBtaXhpbiBjbGVhcmZpeCB7XG4gICY6OmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG59XG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBBZGRzIHBhZGRpbmcgdG8gdGhlIGVsZW1lbnQuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRwYWRkaW5nIFtmbGV4LWd1dHRlcigpXVxuLy8vICAgQSBsaXN0IG9mIHBhZGRpbmcgdmFsdWUocykgdG8gdXNlLiBQYXNzaW5nIGBkZWZhdWx0YCBpbiB0aGUgbGlzdCB3aWxsIHJlc3VsdCBpbiB1c2luZyB0aGUgZ3V0dGVyIHdpZHRoIGFzIGEgcGFkZGluZyB2YWx1ZS5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBwYWQoMzBweCAtMjBweCAxMHB4IGRlZmF1bHQpO1xuLy8vICAgfVxuLy8vXG4vLy8gQGV4YW1wbGUgY3NzIC0gQ1NTIE91dHB1dFxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBwYWRkaW5nOiAzMHB4IC0yMHB4IDEwcHggMi4zNTc2NSU7XG4vLy8gICB9XG5cbkBtaXhpbiBwYWQoJHBhZGRpbmc6IGZsZXgtZ3V0dGVyKCkpIHtcbiAgJHBhZGRpbmctbGlzdDogbnVsbDtcbiAgQGVhY2ggJHZhbHVlIGluICRwYWRkaW5nIHtcbiAgICAkdmFsdWU6IGlmKCR2YWx1ZSA9PSAnZGVmYXVsdCcsIGZsZXgtZ3V0dGVyKCksICR2YWx1ZSk7XG4gICAgJHBhZGRpbmctbGlzdDogam9pbigkcGFkZGluZy1saXN0LCAkdmFsdWUpO1xuICB9XG4gIHBhZGRpbmc6ICRwYWRkaW5nLWxpc3Q7XG59XG4iLCIuc2VjdGlvbi1ob21lIHtcclxuXHRiYWNrZ3JvdW5kOiBjZW50ZXIgcmlnaHQgdXJsKC4uL2ltYWdlcy9jb250ZW50L2JnLWhvbWUuanBnKSBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjsgXHJcblx0cG9zaXRpb246YWJzb2x1dGU7XHJcblx0dG9wOjA7XHJcblx0cmlnaHQ6MDtcclxuXHRib3R0b206MDtcclxuXHRsZWZ0OjA7XHJcblxyXG5cdC5zZWN0aW9uLWNvbnRlbnQge1xyXG5cdFx0cGFkZGluZy1ib3R0b206IDBweDtcdFxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJG1vYmlsZSkge1xyXG5cdFx0XHRtYXJnaW4tYm90dG9tOiAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHRcclxuXHJcblxyXG5cdC5yZWRibG9jayB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHRsZWZ0OiAwO1xyXG5cdFx0dG9wOiA0MiU7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdGhlaWdodDogMTE1cHg7XHJcblx0XHR3aWR0aDogMTVweDtcclxuXHRcdGJhY2tncm91bmQ6ICRyZWQ7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgkbW9iaWxlKSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRoMSB7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDQyJTtcclxuXHRcdGxlZnQ6IDd2dztcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCRtb2JpbGUpIHtcclxuXHRcdFx0dG9wOiBpbmhlcml0O1xyXG5cdFx0XHRsZWZ0OiBpbmhlcml0O1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRwIHtcclxuXHRcdGZvbnQtd2VpZ2h0OiA2MDA7XHJcblx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XHJcblx0XHR0b3A6IDU5JTtcclxuXHRcdHRvcDogY2FsYyg0MiUgKyA4MHB4KTtcdFxyXG5cdFx0bGVmdDogN3Z3O1xyXG5cdFx0Y29sb3I6ICRyZWQ7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgkbW9iaWxlKSB7XHJcblx0XHRcdHRvcDogaW5oZXJpdDtcclxuXHRcdFx0bGVmdDogaW5oZXJpdDtcclxuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0LmJsb2NrLWNvbnRlbnQge1xyXG5cdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldCkge1xyXG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNyk7IFxyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJG1vYmlsZSkge1xyXG4gICAgXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygxMik7IFxyXG4gICAgXHR9XHJcblx0fVxyXG5cclxuXHQuc2VjdGlvbi1hcnQge1xyXG5cdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0dG9wOiAwO1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJGRlc2t0b3Atc21hbGwpIHtcclxuXHRcdFx0dG9wOiA2dnc7XHJcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHRcdH1cclxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQpIHtcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR0b3A6IDM0JTtcclxuXHRcdFx0bGVmdDogNTUlO1xyXG5cdFx0fVxyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJG1vYmlsZSkge1xyXG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XHJcblx0XHRcdHRvcDogMjQwcHg7XHJcblx0XHRcdGxlZnQ6IDQwcHg7XHJcblx0XHR9XHJcblxyXG5cclxuXHRcdC5hcnR3b3JrLWl0ZW0ge1xyXG5cdFx0XHRkaXNwbGF5OiBibG9jaztcclxuXHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdFx0XHR3aWR0aDogMTc1cHg7XHJcblx0XHRcdGhlaWdodDogMTc1cHg7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkZGVza3RvcC1sYXJnZSkge1xyXG5cdFx0XHRcdHdpZHRoOiAyMjVweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDIyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHRcdEBpbmNsdWRlIG1lZGlhKCRkZXNrdG9wLXNtYWxsKSB7XHJcblx0XHRcdFx0d2lkdGg6IDEyNXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMTI1cHg7XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldCkge1xyXG5cdFx0ICAgIFx0dG9wOiAwcHggIWltcG9ydGFudDtcclxuXHRcdCAgICBcdGxlZnQ6IDBweCAhaW1wb3J0YW50O1xyXG5cdFx0ICAgIFx0d2lkdGg6IDIyNXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMjI1cHg7XHJcblx0XHRcdFx0ei1pbmRleDogMjAgIWltcG9ydGFudDtcclxuXHRcdCAgICB9XHJcblx0XHR9XHJcblxyXG5cdFx0LmFydHdvcmstMSB7XHJcblx0XHRcdHRvcDogMy41dnc7XHJcblx0XHRcdGxlZnQ6IDYydnc7XHJcblx0XHRcdHotaW5kZXg6IDIwO1xyXG5cdFx0XHRcclxuXHRcdH1cclxuXHJcblx0XHQuYXJ0d29yay0yIHtcclxuXHRcdFx0dG9wOiA1dnc7XHJcblx0XHRcdGxlZnQ6IDc0dnc7XHJcblx0XHRcdHotaW5kZXg6IDE5O1xyXG5cdFx0XHRcclxuXHRcdH1cclxuXHJcblx0XHQuYXJ0d29yay0zIHtcclxuXHRcdFx0dG9wOiAyNHZ3O1xyXG5cdFx0XHRsZWZ0OiA3NHZ3O1xyXG5cdFx0XHR6LWluZGV4OiAyNDtcclxuXHRcdH1cclxuXHJcblx0XHQuYXJ0d29yay00IHtcclxuXHRcdFx0dG9wOiAxOXZ3O1xyXG5cdFx0XHRsZWZ0OiA4MnZ3O1xyXG5cdFx0XHR6LWluZGV4OiAyMztcclxuXHRcdH1cclxuXHJcblx0XHQuYXJ0d29yay01IHtcclxuXHRcdFx0dG9wOiAxMHZ3O1xyXG5cdFx0XHRsZWZ0OiA1N3Z3O1xyXG5cdFx0XHR6LWluZGV4OiAyMTtcclxuXHRcdFx0XHJcblx0XHR9XHJcblxyXG5cdFx0LmFydHdvcmstNiB7XHJcblx0XHRcdHRvcDogMzF2dztcclxuXHRcdFx0bGVmdDogNzF2dztcclxuXHRcdFx0ei1pbmRleDogMjg7XHJcblx0XHRcdHdpZHRoOiAxMjdweDtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJGRlc2t0b3AtbGFyZ2UpIHtcclxuXHRcdFx0XHR3aWR0aDogMTYzcHg7XHJcblx0XHRcdFx0aGVpZ2h0OiAyMjVweDtcclxuXHRcdFx0fVxyXG5cdFx0XHRAaW5jbHVkZSBtZWRpYSgkZGVza3RvcC1zbWFsbCkge1xyXG5cdFx0XHRcdHdpZHRoOiA5MXB4O1xyXG5cdFx0XHRcdGhlaWdodDogMTI1cHg7XHJcblx0XHRcdH1cclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldCkge1xyXG5cdFx0XHRcdHdpZHRoOiAxNjRweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDIyNXB4O1xyXG5cdFx0XHR9XHJcblx0XHR9XHJcblxyXG5cdFx0LmFydHdvcmstNyB7XHJcblx0XHRcdHRvcDogMTN2dztcclxuXHRcdFx0bGVmdDogNzh2dztcclxuXHRcdFx0ei1pbmRleDogMjA7XHJcblx0XHR9XHJcblxyXG5cdFx0LmFydHdvcmstOCB7XHJcblx0XHRcdHRvcDogMjF2dztcclxuXHRcdFx0bGVmdDogNTl2dztcclxuXHRcdFx0ei1pbmRleDogMjM7XHJcblx0XHR9XHJcblxyXG5cdFx0LmFydHdvcmstOSB7XHJcblx0XHRcdHRvcDogMTZ2dztcclxuXHRcdFx0bGVmdDogNjZ2dztcclxuXHRcdFx0ei1pbmRleDogMjI7XHJcblx0XHR9XHJcblxyXG5cdFx0LmFydHdvcmstMTAge1xyXG5cdFx0XHR0b3A6IDI3dnc7XHJcblx0XHRcdGxlZnQ6IDYydnc7XHJcblx0XHRcdHotaW5kZXg6IDI2O1xyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0Lm1vYmlsZS1vbmx5IHtcclxuXHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgkbW9iaWxlKSB7XHJcblx0XHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAwcHg7XHRcclxuXHRcdFx0ZmxvYXQ6IGxlZnQ7XHJcblxyXG5cdFx0XHR1bCB7XHJcblx0XHRcdFx0Ym9yZGVyLWxlZnQ6IDVweCBzb2xpZCAkcmVkO1xyXG5cdFx0XHRcdHBhZGRpbmctbGVmdDogMjBweDtcclxuXHRcdFx0XHRsaSB7XHJcblx0XHRcdFx0XHRtYXJnaW46IDEycHg7XHJcblx0XHRcdFx0XHQmOmZpcnN0LWNoaWxkIHtcclxuXHRcdFx0XHRcdFx0ZGlzcGxheTogbm9uZTtcclxuXHRcdFx0XHRcdH1cclxuXHRcdFx0XHRcdGEge1xyXG5cdFx0XHRcdFx0XHRjb2xvcjogJHJlZDtcclxuXHRcdFx0XHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0XHRcdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDEyMCU7XHJcblx0XHRcdFx0XHR9XHJcblx0XHRcdFx0fVxyXG5cclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cdH1cclxufVxyXG5cclxuLnNlY3Rpb24tYWJvdXQge1xyXG5cdGJhY2tncm91bmQ6IHJpZ2h0IDQwMHB4IHVybCguLi9pbWFnZXMvY29udGVudC9iZy1hYm91dDIucG5nKSBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiA5MCU7XHJcblx0cG9zaXRpb246IGFic29sdXRlO1xyXG5cdHRvcDogMDtcclxuXHRyaWdodDogMDtcclxuXHRib3R0b206IDA7XHJcblx0bGVmdDogMDtcclxuXHJcblx0Ly8gQGluY2x1ZGUgbWVkaWEoJHRhYmxldCkge1xyXG5cdC8vIFx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgMzUlO1xyXG5cdC8vIH1cclxuXHJcblx0Ly8gQGluY2x1ZGUgbWVkaWEoJG1vYmlsZSkge1xyXG5cdC8vIFx0YmFja2dyb3VuZDogbm9uZTtcclxuXHQvLyB9XHJcblxyXG5cdC5ibG9jay1jb250ZW50IHtcclxuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg2KTtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQpIHtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTsgXHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuaW1nLWNvbnRlbnQge1xyXG5cdFx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg1KTtcclxuXHRcdEBpbmNsdWRlIHNoaWZ0KDAuNSk7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0KSB7IFxyXG5cdFx0XHRAaW5jbHVkZSBzaGlmdCgwKTtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTtcclxuXHRcdH1cclxuXHJcblx0XHRpbWcge1xyXG5cdFx0XHR3aWR0aDogMTAwJTtcclxuXHRcdH1cclxuXHR9XHJcbn1cclxuXHJcbi5zZWN0aW9uLWZlYXR1cmVkIHtcclxuXHRiYWNrZ3JvdW5kOiByaWdodCAxNTBweCB1cmwoLi4vaW1hZ2VzL2NvbnRlbnQvYmctZmVhdHVyZWQuanBnKSBuby1yZXBlYXQ7XHJcblx0XHJcblxyXG5cdEBpbmNsdWRlIG1lZGlhKCRtb2JpbGUpIHtcclxuXHRcdGJhY2tncm91bmQ6IHJpZ2h0IDE1MHB4IHVybCguLi9pbWFnZXMvY29udGVudC9iZy1mZWF0dXJlZC1tLmpwZykgbm8tcmVwZWF0O1xyXG5cdH1cclxuXHJcblx0LmJsb2NrLWNvbnRlbnQtbGVmdCB7XHJcblx0XHRtYXJnaW4tdG9wOiAyMHB4O1xyXG5cdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDYpO1xyXG5cdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldCkge1xyXG5cdFx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoMTIpOyBcclxuXHRcdH1cclxuXHR9XHJcblx0LmJsb2NrLWNvbnRlbnQtcmlnaHQge1xyXG5cdFx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg1LjUpO1xyXG5cdFx0QGluY2x1ZGUgc2hpZnQoMC41KTtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQpIHtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTsgXHJcblx0XHRcdEBpbmNsdWRlIHNoaWZ0KDApO1xyXG5cdFx0fVxyXG5cdFx0YSB7XHJcblx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRtYXJnaW4tcmlnaHQ6IDQwcHg7XHJcblx0XHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMnMgZWFzZSk7XHJcblx0XHRcdCY6aG92ZXIge1xyXG5cdFx0XHRcdG9wYWNpdHk6IDAuODtcclxuXHRcdFx0fVxyXG5cdFx0fVxyXG5cclxuXHRcdC5zcG90aWZ5IHtcclxuXHRcdFx0bWFyZ2luLXRvcDogNSU7XHJcblx0XHR9XHJcblxyXG5cdFx0LnlvdXR1YmUge1xyXG5cdFx0XHRtYXJnaW4tdG9wOiAxMCU7XHJcblx0XHR9XHJcblx0fVxyXG59XHJcblxyXG5cclxuLnNlY3Rpb24tYm9va2luZyB7XHJcblx0YmFja2dyb3VuZDogY2VudGVyIHVybCguLi9pbWFnZXMvY29udGVudC9iZy1ib29raW5nLmpwZykgbm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XHJcblx0YmFja2dyb3VuZC1zaXplOiA4MCU7IFxyXG5cdHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuXHR0b3A6IDA7XHJcblx0cmlnaHQ6IDA7XHJcblx0Ym90dG9tOiAwO1xyXG5cdGxlZnQ6IDA7XHJcblxyXG5cclxuXHRAaW5jbHVkZSBtZWRpYSgkbW9iaWxlKSB7XHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IGNlbnRlcjtcclxuICAgIFx0YmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcclxuXHR9XHJcblxyXG5cdFx0XHJcblx0LmJsb2NrLXJhdGVzIHtcclxuXHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XHJcblx0XHRAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XHJcblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0KSB7XHJcblx0XHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucygxMik7IFxyXG5cdFx0fVxyXG5cclxuXHRcdHAsIHVsIHtcclxuXHRcdFx0XHJcblx0XHRcdG1hcmdpbjogMTBweCAwO1xyXG5cdFx0fVxyXG5cdH1cclxuXHQuYmxvY2stYm9va2luZyB7XHJcblx0XHRkaXNwbGF5OiB0YWJsZS1jZWxsO1xyXG5cdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDUpO1xyXG5cdFx0QGluY2x1ZGUgc2hpZnQoMC41KTtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQpIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogMjBweDtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTtcclxuXHRcdFx0QGluY2x1ZGUgc2hpZnQoMCk7IFxyXG5cdFx0fVxyXG5cclxuICAgIFx0Y29sb3I6ICR3aGl0ZTtcclxuICAgIFx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jb250ZW50L3JlZC1wYW5lbC5qcGcpIG5vLXJlcGVhdDtcclxuICAgIFx0YmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcclxuICAgIFx0bWFyZ2luLWJvdHRvbTogNTBweDtcclxuICAgIFx0LmJsb2NrLWlubmVyIHtcclxuXHRcdFx0cGFkZGluZzogMTBweCAzMHB4O1xyXG5cdFx0XHRmb250LXNpemU6IDg1JTtcclxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJG1vYmlsZSkge1xyXG5cdFx0XHRcdHBhZGRpbmc6IDBweCAyMHB4O1xyXG5cdFx0XHRcdGgzIHtcclxuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHRcdFx0fVxyXG5cdFx0XHR9XHJcblxyXG5cclxuXHRcdH1cclxuXHJcblx0XHRwIHtcclxuXHRcdFx0bWFyZ2luOiAxMHB4IDA7XHJcblx0XHRcdGxpbmUtaGVpZ2h0OiAxLjRlbTtcclxuXHRcdH1cclxuXHJcblx0XHRhIHtcclxuXHRcdFx0Y29sb3I6ICR3aGl0ZTtcclxuXHRcdFx0dGV4dC1kZWNvcmF0aW9uOiBub25lO1xyXG5cdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJG9mZndoaXRlO1xyXG5cdFx0XHRAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAwLjJzIGVhc2UpO1xyXG5cdFx0XHQmOmhvdmVyIHtcclxuXHRcdFx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBpbms7XHJcblx0XHRcdFx0Y29sb3I6ICRwaW5rO1xyXG5cdFx0XHR9XHJcbiAgICBcdH1cclxuICAgIFx0XHJcblx0fVxyXG59XHJcblxyXG4uc2VjdGlvbi1kaXNjIHtcclxuXHRiYWNrZ3JvdW5kOiByaWdodCA3MHB4IHVybCguLi9pbWFnZXMvY29udGVudC93YXZlLWRpc2MuanBnKSBuby1yZXBlYXQ7XHJcblx0YmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldCkge1xyXG5cdFx0YmFja2dyb3VuZC1wb3NpdGlvbjogbGVmdCAxMDBweDsgXHJcblx0fVxyXG59XHJcblxyXG4uc2VjdGlvbi1xYSB7XHJcblx0YmFja2dyb3VuZDogcmlnaHQgNzBweCB1cmwoLi4vaW1hZ2VzL2NvbnRlbnQvd2F2ZS1xYS5qcGcpIG5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0KSB7XHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDEwMHB4OyBcclxuXHR9XHJcblx0XHJcblxyXG5cdC5zZWN0aW9uLWJsb2NrIHtcclxuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg4KTtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQpIHtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTsgXHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHQuc2VjdGlvbi1xdW90ZSB7XHJcblxyXG5cdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDMpO1xyXG5cdFx0QGluY2x1ZGUgc2hpZnQoMSk7XHJcblx0XHRib3JkZXItYm90dG9tOiAxcHggc29saWQgJGdyZXk7XHJcblx0XHRkaXNwbGF5OiBibG9jaztcclxuXHJcblx0XHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0KSB7XHJcblx0XHRcdGRpc3BsYXk6IG5vbmU7XHJcblx0XHR9XHJcblxyXG5cdFx0LnF1b3RlLWJsb2NrIHtcclxuXHRcdFx0bWFyZ2luLXRvcDogNjAlO1xyXG5cdFx0XHRib3JkZXItdG9wOiAycHggc29saWQgJHJlZDtcclxuXHRcdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRcdHAge1xyXG5cdFx0XHRcdGZvbnQtc2l6ZTogMTEwJTtcclxuXHRcdFx0XHRmbG9hdDogcmlnaHQ7XHJcblx0XHRcdFx0dGV4dC1hbGlnbjogcmlnaHQ7XHJcblx0XHRcdFx0Y29sb3I6ICRyZWQ7XHJcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDYwMDtcclxuXHJcblx0XHRcdH1cclxuXHJcblx0XHRcdC5zcGVlY2htYXJrLW9wZW4ge1xyXG5cdFx0XHRcdGZsb2F0OiBsZWZ0O1xyXG5cdFx0XHRcdG1hcmdpbi10b3A6IDE1cHg7XHJcblx0XHRcdFx0d2lkdGg6IDI5cHg7XHJcblx0XHRcdFx0aGVpZ2h0OiAyMnB4O1xyXG5cdFx0XHRcdGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvY29udGVudC9zcGVlY2htYXJrLXN0YXJ0LnBuZykgbm8tcmVwZWF0O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0XHQuc3BlZWNobWFyay1jbG9zZSB7XHJcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xyXG5cdFx0XHRcdG1hcmdpbjogMCAwIDE1cHggMDtcclxuXHRcdFx0XHR3aWR0aDogMjlweDtcclxuXHRcdFx0XHRoZWlnaHQ6IDIycHg7XHJcblx0XHRcdFx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9jb250ZW50L3NwZWVjaG1hcmstZW5kLnBuZykgbm8tcmVwZWF0O1xyXG5cdFx0XHR9XHJcblxyXG5cdFx0fVxyXG5cdH1cclxuXHJcblx0cCB7XHJcblx0XHRtYXJnaW46IDEwcHggMDsgXHJcblx0fVxyXG5cclxuXHQucSB7XHJcblx0XHRtYXJnaW4tdG9wOiAyNXB4O1xyXG5cdFx0Y29sb3I6ICRyZWQ7XHJcblx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdH1cclxuXHJcbn1cclxuXHJcbi5zZWN0aW9uLXRlc3RpbW9uaWFscyB7XHJcblx0YmFja2dyb3VuZDogNTAlIDUwJSB1cmwoLi4vaW1hZ2VzL2NvbnRlbnQvYmctdGVzdC5qcGcpIG5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLXNpemU6IDcwJTtcclxuXHRwb3NpdGlvbjphYnNvbHV0ZTtcclxuXHR0b3A6MDtcclxuXHRyaWdodDowO1xyXG5cdGJvdHRvbTowO1xyXG5cdGxlZnQ6MDtcclxuXHJcblx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldCl7XHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgMTUwcHg7XHJcblx0XHRiYWNrZ3JvdW5kLXNpemU6IDEwMCU7IFxyXG5cdFx0YmFja2dyb3VuZC1hdHRhY2htZW50OiBmaXhlZDtcclxuXHR9XHJcblxyXG5cdC5zZWN0aW9uLWJsb2NrIHtcclxuXHRcdEBpbmNsdWRlIHNwYW4tY29sdW1ucyg4KTtcclxuXHRcdEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQpIHtcclxuXHRcdFx0QGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDEyKTsgXHJcblx0XHR9XHJcblx0fVxyXG5cclxuXHRwIHtcclxuXHRcdG1hcmdpbi1ib3R0b206IDEwcHg7XHJcblx0XHQmOm50aC1jaGlsZChldmVuKSB7XHJcblx0XHRcdGNvbG9yOiAkcmVkO1xyXG5cdFx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0XHRmb250LXNpemU6IDkwJTtcdFxyXG5cdFx0fVx0XHJcblx0fVxyXG59XHJcblxyXG5cclxuLnNlY3Rpb24tY29udGFjdCB7XHJcblxyXG5cdGJhY2tncm91bmQ6IHJpZ2h0IDgwcHggdXJsKC4uL2ltYWdlcy9jb250ZW50L3dhdmUtY29udGFjdC5qcGcpIG5vLXJlcGVhdDtcclxuXHRiYWNrZ3JvdW5kLWF0dGFjaG1lbnQ6IGZpeGVkO1xyXG5cclxuXHRAaW5jbHVkZSBtZWRpYSgkdGFibGV0KSB7XHJcblx0XHRiYWNrZ3JvdW5kLXBvc2l0aW9uOiBsZWZ0IDEwMHB4OyBcclxuXHR9XHJcblxyXG5cdHAge1xyXG5cdFx0bWFyZ2luLXRvcDogNTBweDtcclxuXHR9XHJcbn0iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuIGVsZW1lbnQgc2hvdWxkIHNwYW4uIElmIHRoZSBzZWxlY3RvciBpcyBuZXN0ZWQgdGhlIG51bWJlciBvZiBjb2x1bW5zIG9mIGl0cyBwYXJlbnQgZWxlbWVudCBzaG91bGQgYmUgcGFzc2VkIGFzIGFuIGFyZ3VtZW50IGFzIHdlbGwuXG4vLy9cbi8vLyBAcGFyYW0ge0xpc3R9ICRzcGFuXG4vLy8gICBBIGxpc3QgY29udGFpbmluZyBgJGNvbHVtbnNgLCB0aGUgdW5pdGxlc3MgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIGVsZW1lbnQgc3BhbnMgKHJlcXVpcmVkKSwgYW5kIGAkY29udGFpbmVyLWNvbHVtbnNgLCB0aGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhlIHBhcmVudCBlbGVtZW50IHNwYW5zIChvcHRpb25hbCkuXG4vLy9cbi8vLyAgIElmIG9ubHkgb25lIHZhbHVlIGlzIHBhc3NlZCwgaXQgaXMgYXNzdW1lZCB0aGF0IGl0J3MgYCRjb2x1bW5zYCBhbmQgdGhhdCB0aGF0IGAkY29udGFpbmVyLWNvbHVtbnNgIGlzIGVxdWFsIHRvIGAkZ3JpZC1jb2x1bW5zYCwgdGhlIHRvdGFsIG51bWJlciBvZiBjb2x1bW5zIGluIHRoZSBncmlkLlxuLy8vXG4vLy8gICBUaGUgdmFsdWVzIGNhbiBiZSBzZXBhcmF0ZWQgd2l0aCBhbnkgc3RyaW5nIHN1Y2ggYXMgYG9mYCwgYC9gLCBldGMuXG4vLy9cbi8vLyAgIGAkY29sdW1uc2AgYWxzbyBhY2NlcHRzIGRlY2ltYWxzIGZvciB3aGVuIGl0J3MgbmVjZXNzYXJ5IHRvIGJyZWFrIG91dCBvZiB0aGUgc3RhbmRhcmQgZ3JpZC4gRS5nLiBQYXNzaW5nIGAyLjRgIGluIGEgc3RhbmRhcmQgMTIgY29sdW1uIGdyaWQgd2lsbCBkaXZpZGUgdGhlIHJvdyBpbnRvIDUgY29sdW1ucy5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkZGlzcGxheSBbYmxvY2tdXG4vLy8gICBTZXRzIHRoZSBkaXNwbGF5IHByb3BlcnR5IG9mIHRoZSBlbGVtZW50LiBCeSBkZWZhdWx0IGl0IHNldHMgdGhlIGRpc3BsYXkgcHJvcGVydHkgb2YgdGhlIGVsZW1lbnQgdG8gYGJsb2NrYC5cbi8vL1xuLy8vICAgSWYgcGFzc2VkIGBibG9jay1jb2xsYXBzZWAsIGl0IGFsc28gcmVtb3ZlcyB0aGUgbWFyZ2luIGd1dHRlciBieSBhZGRpbmcgaXQgdG8gdGhlIGVsZW1lbnQgd2lkdGguXG4vLy9cbi8vLyAgIElmIHBhc3NlZCBgdGFibGVgLCBpdCBzZXRzIHRoZSBkaXNwbGF5IHByb3BlcnR5IHRvIGB0YWJsZS1jZWxsYCBhbmQgY2FsY3VsYXRlcyB0aGUgd2lkdGggb2YgdGhlIGVsZW1lbnQgd2l0aG91dCB0YWtpbmcgZ3V0dGVycyBpbnRvIGNvbnNpZGVyYXRpb24uIFRoZSByZXN1bHQgZG9lcyBub3QgYWxpZ24gd2l0aCB0aGUgYmxvY2stYmFzZWQgZ3JpZC5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzcGFuLWNvbHVtbnMoNik7XG4vLy9cbi8vLyAgICAubmVzdGVkLWVsZW1lbnQge1xuLy8vICAgICAgQGluY2x1ZGUgc3Bhbi1jb2x1bW5zKDIgb2YgNik7XG4vLy8gICAgfVxuLy8vICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIGRpc3BsYXk6IGJsb2NrO1xuLy8vICAgICBmbG9hdDogbGVmdDtcbi8vLyAgICAgbWFyZ2luLXJpZ2h0OiAyLjM1NzY1JTtcbi8vLyAgICAgd2lkdGg6IDQ4LjgyMTE3JTtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQ6bGFzdC1jaGlsZCB7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cbi8vL1xuLy8vICAgLmVsZW1lbnQgLm5lc3RlZC1lbGVtZW50IHtcbi8vLyAgICAgZGlzcGxheTogYmxvY2s7XG4vLy8gICAgIGZsb2F0OiBsZWZ0O1xuLy8vICAgICBtYXJnaW4tcmlnaHQ6IDQuODI5MTYlO1xuLy8vICAgICB3aWR0aDogMzAuMTEzODklO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuZWxlbWVudCAubmVzdGVkLWVsZW1lbnQ6bGFzdC1jaGlsZCB7XG4vLy8gICAgIG1hcmdpbi1yaWdodDogMDtcbi8vLyAgIH1cblxuQG1peGluIHNwYW4tY29sdW1ucygkc3BhbjogJGNvbHVtbnMgb2YgJGNvbnRhaW5lci1jb2x1bW5zLCAkZGlzcGxheTogYmxvY2spIHtcbiAgJGNvbHVtbnM6IG50aCgkc3BhbiwgMSk7XG4gICRjb250YWluZXItY29sdW1uczogY29udGFpbmVyLXNwYW4oJHNwYW4pO1xuXG4gICRwYXJlbnQtY29sdW1uczogZ2V0LXBhcmVudC1jb2x1bW5zKCRjb250YWluZXItY29sdW1ucykgIWdsb2JhbDtcblxuICAkZGlyZWN0aW9uOiBnZXQtZGlyZWN0aW9uKCRsYXlvdXQtZGlyZWN0aW9uLCAkZGVmYXVsdC1sYXlvdXQtZGlyZWN0aW9uKTtcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogZ2V0LW9wcG9zaXRlLWRpcmVjdGlvbigkZGlyZWN0aW9uKTtcblxuICAkZGlzcGxheS10YWJsZTogaXMtZGlzcGxheS10YWJsZSgkY29udGFpbmVyLWRpc3BsYXktdGFibGUsICRkaXNwbGF5KTtcblxuICBAaWYgJGRpc3BsYXktdGFibGUgIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCRjb2x1bW5zIC8gJGNvbnRhaW5lci1jb2x1bW5zKTtcbiAgfSBAZWxzZSB7XG4gICAgZmxvYXQ6ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn07XG5cbiAgICBAaWYgJGRpc3BsYXkgIT0gbm8tZGlzcGxheSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICB9XG5cbiAgICBAaWYgJGRpc3BsYXkgPT0gY29sbGFwc2Uge1xuICAgICAgQGluY2x1ZGUgLW5lYXQtd2FybihcIlRoZSAnY29sbGFwc2UnIGFyZ3VtZW50IHdpbGwgYmUgZGVwcmVjYXRlZC4gVXNlICdibG9jay1jb2xsYXBzZScgaW5zdGVhZC5cIik7XG4gICAgfVxuXG4gICAgQGlmICRkaXNwbGF5ID09IGNvbGxhcHNlIG9yICRkaXNwbGF5ID09IGJsb2NrLWNvbGxhcHNlIHtcbiAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucykgKyBmbGV4LWd1dHRlcigkY29udGFpbmVyLWNvbHVtbnMpO1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICB3aWR0aDogZmxleC1ncmlkKCRjb2x1bW5zLCAkY29udGFpbmVyLWNvbHVtbnMpO1xuICAgICAgfVxuXG4gICAgfSBAZWxzZSB7XG4gICAgICBtYXJnaW4tI3skZGlyZWN0aW9ufTogZmxleC1ndXR0ZXIoJGNvbnRhaW5lci1jb2x1bW5zKTtcbiAgICAgIHdpZHRoOiBmbGV4LWdyaWQoJGNvbHVtbnMsICRjb250YWluZXItY29sdW1ucyk7XG5cbiAgICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICAgIG1hcmdpbi0jeyRkaXJlY3Rpb259OiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFkZWZhdWx0O1xuJGZnLWNvbHVtbjogJGNvbHVtbjtcbiRmZy1ndXR0ZXI6ICRndXR0ZXI7XG4kZmctbWF4LWNvbHVtbnM6ICRncmlkLWNvbHVtbnM7XG4kY29udGFpbmVyLWRpc3BsYXktdGFibGU6IGZhbHNlICFkZWZhdWx0O1xuJGxheW91dC1kaXJlY3Rpb246IExUUiAhZGVmYXVsdDtcblxuQGZ1bmN0aW9uIGZsZXgtZ3JpZCgkY29sdW1ucywgJGNvbnRhaW5lci1jb2x1bW5zOiAkZmctbWF4LWNvbHVtbnMpIHtcbiAgJHdpZHRoOiAkY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbHVtbnMgLSAxKSAqICRmZy1ndXR0ZXI7XG4gICRjb250YWluZXItd2lkdGg6ICRjb250YWluZXItY29sdW1ucyAqICRmZy1jb2x1bW4gKyAoJGNvbnRhaW5lci1jb2x1bW5zIC0gMSkgKiAkZmctZ3V0dGVyO1xuICBAcmV0dXJuIHBlcmNlbnRhZ2UoJHdpZHRoIC8gJGNvbnRhaW5lci13aWR0aCk7XG59XG5cbkBmdW5jdGlvbiBmbGV4LWd1dHRlcigkY29udGFpbmVyLWNvbHVtbnM6ICRmZy1tYXgtY29sdW1ucywgJGd1dHRlcjogJGZnLWd1dHRlcikge1xuICAkY29udGFpbmVyLXdpZHRoOiAkY29udGFpbmVyLWNvbHVtbnMgKiAkZmctY29sdW1uICsgKCRjb250YWluZXItY29sdW1ucyAtIDEpICogJGZnLWd1dHRlcjtcbiAgQHJldHVybiBwZXJjZW50YWdlKCRndXR0ZXIgLyAkY29udGFpbmVyLXdpZHRoKTtcbn1cblxuQGZ1bmN0aW9uIGdyaWQtd2lkdGgoJG4pIHtcbiAgQHJldHVybiAkbiAqICRndy1jb2x1bW4gKyAoJG4gLSAxKSAqICRndy1ndXR0ZXI7XG59XG5cbkBmdW5jdGlvbiBnZXQtcGFyZW50LWNvbHVtbnMoJGNvbHVtbnMpIHtcbiAgQGlmICRjb2x1bW5zICE9ICRncmlkLWNvbHVtbnMge1xuICAgICRwYXJlbnQtY29sdW1uczogJGNvbHVtbnMgIWdsb2JhbDtcbiAgfSBAZWxzZSB7XG4gICAgJHBhcmVudC1jb2x1bW5zOiAkZ3JpZC1jb2x1bW5zICFnbG9iYWw7XG4gIH1cblxuICBAcmV0dXJuICRwYXJlbnQtY29sdW1ucztcbn1cblxuQGZ1bmN0aW9uIGlzLWRpc3BsYXktdGFibGUoJGNvbnRhaW5lci1pcy1kaXNwbGF5LXRhYmxlLCAkZGlzcGxheSkge1xuICBAcmV0dXJuICRjb250YWluZXItaXMtZGlzcGxheS10YWJsZSA9PSB0cnVlIG9yICRkaXNwbGF5ID09IHRhYmxlO1xufVxuIiwiQGNoYXJzZXQgXCJVVEYtOFwiO1xuXG4vLy8gVHJhbnNsYXRlcyBhbiBlbGVtZW50IGhvcml6b250YWxseSBieSBhIG51bWJlciBvZiBjb2x1bW5zLiBQb3NpdGl2ZSBhcmd1bWVudHMgc2hpZnQgdGhlIGVsZW1lbnQgdG8gdGhlIGFjdGl2ZSBsYXlvdXQgZGlyZWN0aW9uLCB3aGlsZSBuZWdhdGl2ZSBvbmVzIHNoaWZ0IGl0IHRvIHRoZSBvcHBvc2l0ZSBkaXJlY3Rpb24uXG4vLy9cbi8vLyBAcGFyYW0ge051bWJlciAodW5pdGxlc3MpfSAkbi1jb2x1bW5zIFsxXVxuLy8vICAgTnVtYmVyIG9mIGNvbHVtbnMgYnkgd2hpY2ggdGhlIGVsZW1lbnQgc2hpZnRzLlxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHNoaWZ0KC0zKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBvdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IC0yNS41ODk0MSU7XG4vLy8gICB9XG5cbkBtaXhpbiBzaGlmdCgkbi1jb2x1bW5zOiAxKSB7XG4gIEBpbmNsdWRlIHNoaWZ0LWluLWNvbnRleHQoJG4tY29sdW1ucyk7XG59XG5cbi8vLyBUcmFuc2xhdGVzIGFuIGVsZW1lbnQgaG9yaXpvbnRhbGx5IGJ5IGEgbnVtYmVyIG9mIGNvbHVtbnMsIGluIGEgc3BlY2lmaWMgbmVzdGluZyBjb250ZXh0LlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2hpZnRcbi8vLyAgIEEgbGlzdCBjb250YWluaW5nIHRoZSBudW1iZXIgb2YgY29sdW1ucyB0byBzaGlmdCAoYCRjb2x1bW5zYCkgYW5kIHRoZSBudW1iZXIgb2YgY29sdW1ucyBvZiB0aGUgcGFyZW50IGVsZW1lbnQgKGAkY29udGFpbmVyLWNvbHVtbnNgKS5cbi8vL1xuLy8vICAgVGhlIHR3byB2YWx1ZXMgY2FuIGJlIHNlcGFyYXRlZCB3aXRoIGFueSBzdHJpbmcgc3VjaCBhcyBgb2ZgLCBgL2AsIGV0Yy5cbi8vL1xuLy8vIEBleGFtcGxlIHNjc3MgLSBVc2FnZVxuLy8vICAgLmVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaGlmdCgtMyBvZiA2KTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBvdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbWFyZ2luLWxlZnQ6IC01Mi40MTQ1OCU7XG4vLy8gICB9XG5cbkBtaXhpbiBzaGlmdC1pbi1jb250ZXh0KCRzaGlmdDogJGNvbHVtbnMgb2YgJGNvbnRhaW5lci1jb2x1bW5zKSB7XG4gICRuLWNvbHVtbnM6IG50aCgkc2hpZnQsIDEpO1xuICAkcGFyZW50LWNvbHVtbnM6IGNvbnRhaW5lci1zaGlmdCgkc2hpZnQpICFnbG9iYWw7XG5cbiAgJGRpcmVjdGlvbjogZ2V0LWRpcmVjdGlvbigkbGF5b3V0LWRpcmVjdGlvbiwgJGRlZmF1bHQtbGF5b3V0LWRpcmVjdGlvbik7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IGdldC1vcHBvc2l0ZS1kaXJlY3Rpb24oJGRpcmVjdGlvbik7XG5cbiAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRuLWNvbHVtbnMgKiBmbGV4LWdyaWQoMSwgJHBhcmVudC1jb2x1bW5zKSArICRuLWNvbHVtbnMgKiBmbGV4LWd1dHRlcigkcGFyZW50LWNvbHVtbnMpO1xuXG4gIC8vIFJlc2V0IG5lc3RpbmcgY29udGV4dFxuICAkcGFyZW50LWNvbHVtbnM6ICRncmlkLWNvbHVtbnMgIWdsb2JhbDtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIEEgbWl4aW4gZm9yIGdlbmVyYXRpbmcgdmVuZG9yIHByZWZpeGVzIG9uIG5vbi1zdGFuZGFyZGl6ZWQgcHJvcGVydGllcy5cbi8vL1xuLy8vIEBwYXJhbSB7U3RyaW5nfSAkcHJvcGVydHlcbi8vLyAgIFByb3BlcnR5IHRvIHByZWZpeFxuLy8vXG4vLy8gQHBhcmFtIHsqfSAkdmFsdWVcbi8vLyAgIFZhbHVlIHRvIHVzZVxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkcHJlZml4ZXNcbi8vLyAgIFByZWZpeGVzIHRvIGRlZmluZVxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHByZWZpeGVyKGJvcmRlci1yYWRpdXMsIDEwcHgsIHdlYmtpdCBtcyBzcGVjKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgLXdlYmtpdC1ib3JkZXItcmFkaXVzOiAxMHB4O1xuLy8vICAgICAtbW96LWJvcmRlci1yYWRpdXM6IDEwcHg7XG4vLy8gICAgIGJvcmRlci1yYWRpdXM6IDEwcHg7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7dmFyaWFibGV9ICRwcmVmaXgtZm9yLXdlYmtpdFxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3ItbW96aWxsYVxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3ItbWljcm9zb2Z0XG4vLy8gQHJlcXVpcmUge3ZhcmlhYmxlfSAkcHJlZml4LWZvci1vcGVyYVxuLy8vIEByZXF1aXJlIHt2YXJpYWJsZX0gJHByZWZpeC1mb3Itc3BlY1xuXG5AbWl4aW4gcHJlZml4ZXIoJHByb3BlcnR5LCAkdmFsdWUsICRwcmVmaXhlcykge1xuICBAZWFjaCAkcHJlZml4IGluICRwcmVmaXhlcyB7XG4gICAgQGlmICRwcmVmaXggPT0gd2Via2l0IHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci13ZWJraXQge1xuICAgICAgICAtd2Via2l0LSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBtb3oge1xuICAgICAgQGlmICRwcmVmaXgtZm9yLW1vemlsbGEge1xuICAgICAgICAtbW96LSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBtcyB7XG4gICAgICBAaWYgJHByZWZpeC1mb3ItbWljcm9zb2Z0IHtcbiAgICAgICAgLW1zLSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBvIHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1vcGVyYSB7XG4gICAgICAgIC1vLSN7JHByb3BlcnR5fTogJHZhbHVlO1xuICAgICAgfVxuICAgIH0gQGVsc2UgaWYgJHByZWZpeCA9PSBzcGVjIHtcbiAgICAgIEBpZiAkcHJlZml4LWZvci1zcGVjIHtcbiAgICAgICAgI3skcHJvcGVydHl9OiAkdmFsdWU7XG4gICAgICB9XG4gICAgfSBAZWxzZSAge1xuICAgICAgQHdhcm4gXCJVbnJlY29nbml6ZWQgcHJlZml4OiAjeyRwcmVmaXh9XCI7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBkaXNhYmxlLXByZWZpeC1mb3ItYWxsKCkge1xuICAkcHJlZml4LWZvci13ZWJraXQ6ICAgIGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLW1vemlsbGE6ICAgZmFsc2UgIWdsb2JhbDtcbiAgJHByZWZpeC1mb3ItbWljcm9zb2Z0OiBmYWxzZSAhZ2xvYmFsO1xuICAkcHJlZml4LWZvci1vcGVyYTogICAgIGZhbHNlICFnbG9iYWw7XG4gICRwcmVmaXgtZm9yLXNwZWM6ICAgICAgZmFsc2UgIWdsb2JhbDtcbn1cbiIsIi8vIFByaW1hcnkgTmF2XG5cbm5hdi5wcmltYXJ5LW5hdiB7XG5cdHVsIHtcblx0XHRtYXJnaW46IDA7XG5cdFx0cGFkZGluZzogMDtcblx0XHRsaSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdGRpc3BsYXk6IHRhYmxlOyAgXG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRwYWRkaW5nOiAwO1xuXHRcdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuIFx0XHRcdFxuXHRcdFx0QGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYXJnZSkge1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXG5cdFx0XHRhIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlOyBcbiBcdFx0XHRcdGhlaWdodDogNDNweDtcbiBcdFx0XHRcdGZvbnQtZmFtaWx5OiAkbWFsZ3VuO1xuIFx0XHRcdFx0Ly9kaXNwbGF5OiBibG9jazsgXG5cdFx0XHRcdGRpc3BsYXk6IHRhYmxlLWNlbGw7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cdFx0XHRcdGNvbG9yOiAkb2Zmd2hpdGU7XG5cdFx0XHRcdGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG5cdFx0XHRcdGZvbnQtc2l6ZTogMTRweDtcblx0XHRcdFx0Ly9mb250LXNpemU6IDF2bWF4O1x0XHRcdFx0IFxuXHRcdFx0XHR0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXHRcdFx0XHRwYWRkaW5nOiAwIDEuMnZ3O1xuXHRcdFx0XHR3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG5cdFx0XHRcdHdoaXRlLXNwYWNlOiBub3dyYXA7IFx0XHQvKiBjc3MtMyAqL1xuXHRcdFx0XHR3aGl0ZS1zcGFjZTogLW1vei1ub3dyYXA7IC8qIE1vemlsbGEsIHNpbmNlIDE5OTkgKi9cblx0XHRcdFx0d2hpdGUtc3BhY2U6IC1ub3dyYXA7IFx0LyogT3BlcmEgNC02ICovXG5cdFx0XHRcdHdoaXRlLXNwYWNlOiAtby1ub3dyYXA7IFx0LyogT3BlcmEgNyAqLyBcblx0XHRcdFx0XG5cdFx0XHRcdGJvcmRlci1ib3R0b206IDJweCBzb2xpZCAkcmVkO1xuXG5cdFx0XHRcdEBpbmNsdWRlIG1lZGlhKCRkZXNrdG9wLXNtYWxsKSB7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAxMXB4O1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMXZ3O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHRcdC5uYXYtYWN0aXZlIHtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRvZmZ3aGl0ZTtcblx0XHRcdH1cblxuXHRcdFx0Lm5hdi1ob21lIHtcblx0XHRcdFx0cGFkZGluZy1sZWZ0OiA1MHB4O1xuXHRcdFx0XHRjb2xvcjogJHBpbms7XG5cdFx0XHRcdCYubmF2LWFjdGl2ZSB7XG5cdFx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICRyZWQ7XHRcdFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cblx0XHR9XG5cdH1cbn1cblxubmF2I3NvY2lhbCB7XG5cdHVsIHtcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdFx0bWFyZ2luLXRvcDogMTNweDtcblx0XHRtYXJnaW4tcmlnaHQ6IDEwcHg7XG5cblxuXHRcdGxpIHtcblx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0YSB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0d2lkdGg6IDM1cHg7XG5cdFx0XHRcdGhlaWdodDogMzVweDtcblx0XHRcdFx0Zm9udC1zaXplOiAxMnB0O1xuXHRcdFx0XHR0ZXh0LWRlY29yYXRpb246IG5vbmU7XHRcdFx0XHQgXG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbm5hdiBhIHtcblx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC4ycyBlYXNlKTtcblx0Jjpob3ZlciB7XG5cdFx0Y29sb3I6ICRwaW5rICFpbXBvcnRhbnQ7XG5cdH1cbn1cdFxuXG4iLCIvLyByZWZpbGwgYm91cmJvblxuLy8gc2xpZGluZyBwYW5lbFxuXG4uc2xpZGluZy1wYW5lbC1jb250ZW50IHtcbiAgJGFjdGlvbi1jb2xvcjogJHJlZCAhZGVmYXVsdDtcbiAgJGRhcmstZ3JheTogJHJlZCAhZGVmYXVsdDtcbiAgJHNsaWRpbmctcGFuZWwtYm9yZGVyLWNvbG9yOiAkZGFyay1ncmF5O1xuICAkc2xpZGluZy1wYW5lbC1iYWNrZ3JvdW5kOiBsaWdodGVuKCRzbGlkaW5nLXBhbmVsLWJvcmRlci1jb2xvciwgNSUpO1xuICAkc2xpZGluZy1wYW5lbC1jb2xvcjogI2ZmZjtcbiAgJHNsaWRpbmctcGFuZWwtYm9yZGVyOiAxcHggc29saWQgbGlnaHRlbigkc2xpZGluZy1wYW5lbC1ib3JkZXItY29sb3IsIDUlKTtcbiAgJHNsaWRpbmctcGFuZWwtYmFja2dyb3VuZC1ob3ZlcjogJGFjdGlvbi1jb2xvcjtcbiAgJHNsaWRpbmctcGFuZWwtY29sb3ItaG92ZXI6ICNmZmY7XG4gICRzbGlkaW5nLXBhbmVsLWJhY2tncm91bmQtZm9jdXM6IGxpZ2h0ZW4oJHNsaWRpbmctcGFuZWwtYmFja2dyb3VuZCwgNSUpO1xuXG4gIEBpbmNsdWRlIHBvc2l0aW9uKGZpeGVkLCAwIGF1dG8gMCAwKTtcbiAgQGluY2x1ZGUgc2l6ZSgxMDAlIDEwMCUpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZGFyay1ncmF5O1xuICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoLi4vaW1hZ2VzL2NvbnRlbnQvYmctbW9iaWxlLmpwZyk7XG4gIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG5cbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICBvdmVyZmxvdy14OiBhdXRvO1xuICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjI1cyBsaW5lYXI7XG4gIHotaW5kZXg6IDk5OTk5OTtcblxuICB1bCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBtYXJnaW46IDA7XG4gIH1cblxuICBsaSB7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgfVxuXG4gIGxpIGEge1xuICAgIGJvcmRlci1ib3R0b206ICRzbGlkaW5nLXBhbmVsLWJvcmRlcjtcbiAgICBjb2xvcjogJHNsaWRpbmctcGFuZWwtY29sb3I7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIHBhZGRpbmc6IDFlbTtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRzbGlkaW5nLXBhbmVsLWJhY2tncm91bmQtZm9jdXM7XG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2xpZGluZy1wYW5lbC1iYWNrZ3JvdW5kLWhvdmVyO1xuICAgICAgY29sb3I6ICRzbGlkaW5nLXBhbmVsLWNvbG9yLWhvdmVyO1xuICAgIH1cbiAgfVxuXG4gICYuaXMtdmlzaWJsZSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5zbGlkaW5nLXBhbmVsLWZhZGUtc2NyZWVuIHtcbiAgQGluY2x1ZGUgcG9zaXRpb24oZml4ZWQsIDApO1xuICBiYWNrZ3JvdW5kOiBibGFjaztcbiAgb3BhY2l0eTogMDtcbiAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1pbi1vdXQ7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgei1pbmRleDogOTk5OTk4O1xuXG4gICYuaXMtdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMC41O1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cbn1cblxuLnNsaWRpbmctcGFuZWwtYnV0dG9uIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG91dGxpbmU6IG5vbmU7XG4gIHBhZGRpbmc6IDEwcHggMjBweDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gIGltZyB7XG4gICAgaGVpZ2h0OiAxLjRlbTtcbiAgfVxufVxuXG4uaWNvbi1hcnJvdy1kb3duIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBib3R0b206IC01cHg7XG4gIGxlZnQ6IDIwcHg7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIHdpZHRoOiAzMnB4O1xuICBoZWlnaHQ6IDMycHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAvLyBmb250LXNpemU6IDE0cHQ7XG4gIHNwYW4ge1xuICAgIGRpc3BsYXk6IGlubGluZTtcblxuICB9XG59XG5cbi8vIEJhc2VkIG9uIGNvZGUgYnkgRGllZ28gRWlzXG4iLCJAY2hhcnNldCBcIlVURi04XCI7XG5cbi8vLyBQcm92aWRlcyBhIHF1aWNrIG1ldGhvZCBmb3Igc2V0dGluZyBhbiBlbGVtZW504oCZcyBwb3NpdGlvbi4gVXNlIGEgYG51bGxgIHZhbHVlIHRvIOKAnHNraXDigJ0gYSBzaWRlLlxuLy8vXG4vLy8gQHBhcmFtIHtQb3NpdGlvbn0gJHBvc2l0aW9uIFtyZWxhdGl2ZV1cbi8vLyAgIEEgQ1NTIHBvc2l0aW9uIHZhbHVlXG4vLy9cbi8vLyBAcGFyYW0ge0FyZ2xpc3R9ICRjb29yZGluYXRlcyBbbnVsbCBudWxsIG51bGwgbnVsbF1cbi8vLyAgIExpc3Qgb2YgdmFsdWVzIHRoYXQgY29ycmVzcG9uZCB0byB0aGUgNC12YWx1ZSBzeW50YXggZm9yIHRoZSBlZGdlcyBvZiBhIGJveFxuLy8vXG4vLy8gQGV4YW1wbGUgc2NzcyAtIFVzYWdlXG4vLy8gICAuZWxlbWVudCB7XG4vLy8gICAgIEBpbmNsdWRlIHBvc2l0aW9uKGFic29sdXRlLCAwIG51bGwgbnVsbCAxMGVtKTtcbi8vLyAgIH1cbi8vL1xuLy8vIEBleGFtcGxlIGNzcyAtIENTUyBPdXRwdXRcbi8vLyAgIC5lbGVtZW50IHtcbi8vLyAgICAgbGVmdDogMTBlbTtcbi8vLyAgICAgcG9zaXRpb246IGFic29sdXRlO1xuLy8vICAgICB0b3A6IDA7XG4vLy8gICB9XG4vLy9cbi8vLyBAcmVxdWlyZSB7ZnVuY3Rpb259IGlzLWxlbmd0aFxuLy8vIEByZXF1aXJlIHtmdW5jdGlvbn0gdW5wYWNrXG5cbkBtaXhpbiBwb3NpdGlvbigkcG9zaXRpb246IHJlbGF0aXZlLCAkY29vcmRpbmF0ZXM6IG51bGwgbnVsbCBudWxsIG51bGwpIHtcbiAgQGlmIHR5cGUtb2YoJHBvc2l0aW9uKSA9PSBsaXN0IHtcbiAgICAkY29vcmRpbmF0ZXM6ICRwb3NpdGlvbjtcbiAgICAkcG9zaXRpb246IHJlbGF0aXZlO1xuICB9XG5cbiAgJGNvb3JkaW5hdGVzOiB1bnBhY2soJGNvb3JkaW5hdGVzKTtcblxuICAkb2Zmc2V0czogKFxuICAgIHRvcDogICAgbnRoKCRjb29yZGluYXRlcywgMSksXG4gICAgcmlnaHQ6ICBudGgoJGNvb3JkaW5hdGVzLCAyKSxcbiAgICBib3R0b206IG50aCgkY29vcmRpbmF0ZXMsIDMpLFxuICAgIGxlZnQ6ICAgbnRoKCRjb29yZGluYXRlcywgNClcbiAgKTtcblxuICBwb3NpdGlvbjogJHBvc2l0aW9uO1xuXG4gIEBlYWNoICRvZmZzZXQsICR2YWx1ZSBpbiAkb2Zmc2V0cyB7XG4gICAgQGlmIGlzLWxlbmd0aCgkdmFsdWUpIHtcbiAgICAgICN7JG9mZnNldH06ICR2YWx1ZTtcbiAgICB9XG4gIH1cbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLy8vIFNldHMgdGhlIGB3aWR0aGAgYW5kIGBoZWlnaHRgIG9mIHRoZSBlbGVtZW50LlxuLy8vXG4vLy8gQHBhcmFtIHtMaXN0fSAkc2l6ZVxuLy8vICAgQSBsaXN0IG9mIGF0IG1vc3QgMiBzaXplIHZhbHVlcy5cbi8vL1xuLy8vICAgSWYgdGhlcmUgaXMgb25seSBhIHNpbmdsZSB2YWx1ZSBpbiBgJHNpemVgIGl0IGlzIHVzZWQgZm9yIGJvdGggd2lkdGggYW5kIGhlaWdodC4gQWxsIHVuaXRzIGFyZSBzdXBwb3J0ZWQuXG4vLy9cbi8vLyBAZXhhbXBsZSBzY3NzIC0gVXNhZ2Vcbi8vLyAgIC5maXJzdC1lbGVtZW50IHtcbi8vLyAgICAgQGluY2x1ZGUgc2l6ZSgyZW0pO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICBAaW5jbHVkZSBzaXplKGF1dG8gMTBlbSk7XG4vLy8gICB9XG4vLy9cbi8vLyBAZXhhbXBsZSBjc3MgLSBDU1MgT3V0cHV0XG4vLy8gICAuZmlyc3QtZWxlbWVudCB7XG4vLy8gICAgIHdpZHRoOiAyZW07XG4vLy8gICAgIGhlaWdodDogMmVtO1xuLy8vICAgfVxuLy8vXG4vLy8gICAuc2Vjb25kLWVsZW1lbnQge1xuLy8vICAgICB3aWR0aDogYXV0bztcbi8vLyAgICAgaGVpZ2h0OiAxMGVtO1xuLy8vICAgfVxuLy8vXG4vLy8gQHRvZG8gUmVmYWN0b3IgaW4gNS4wLjAgdG8gdXNlIGEgY29tbWEtc2VwYXJhdGVkIGFyZ3VtZW50XG5cbkBtaXhpbiBzaXplKCR2YWx1ZSkge1xuICAkd2lkdGg6IG50aCgkdmFsdWUsIDEpO1xuICAkaGVpZ2h0OiAkd2lkdGg7XG5cbiAgQGlmIGxlbmd0aCgkdmFsdWUpID4gMSB7XG4gICAgJGhlaWdodDogbnRoKCR2YWx1ZSwgMik7XG4gIH1cblxuICBAaWYgaXMtc2l6ZSgkaGVpZ2h0KSB7XG4gICAgaGVpZ2h0OiAkaGVpZ2h0O1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImAjeyRoZWlnaHR9YCBpcyBub3QgYSB2YWxpZCBsZW5ndGggZm9yIHRoZSBgJGhlaWdodGAgcGFyYW1ldGVyIGluIHRoZSBgc2l6ZWAgbWl4aW4uXCI7XG4gIH1cblxuICBAaWYgaXMtc2l6ZSgkd2lkdGgpIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICB9IEBlbHNlIHtcbiAgICBAd2FybiBcImAjeyR3aWR0aH1gIGlzIG5vdCBhIHZhbGlkIGxlbmd0aCBmb3IgdGhlIGAkd2lkdGhgIHBhcmFtZXRlciBpbiB0aGUgYHNpemVgIG1peGluLlwiO1xuICB9XG59XG4iLCIuYXJ0d29yayB7XG5cdG1hcmdpbi10b3A6IDQwcHg7XG5cblx0dWwge1xuXHRcdG1hcmdpbjogMDtcblx0XHRwYWRkaW5nOiAwO1xuXHRcblx0XHRsaSB7XG5cdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHdpZHRoOiAxNzVweDtcbiAgICBcdFx0aGVpZ2h0OiAxNzVweDtcbiAgICBcdFx0bWFyZ2luLXJpZ2h0OiAzcHg7XG4gICAgXHRcdG1hcmdpbi1ib3R0b206IDNweDtcblx0XHR9XG5cdH1cblxuXHRhIHtcblx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0aGVpZ2h0OiAxMDAlO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdHotaW5kZXg6IDE1O1xuXHR9XG5cblx0LnJlbGVhc2UtaW5mbyB7XG5cdFx0XHR6LWluZGV4OiAxMDtcblx0XHRcdHRvcDogMDtcblx0XHRcdGxlZnQ6IDA7XG5cdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdGhlaWdodDogMTAwJTtcblx0XHRcdGJhY2tncm91bmQtY29sb3I6ICRyZWQ7XG5cdFx0XHRvcGFjaXR5OiAwO1xuXHRcdFx0QGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgMC40cyBlYXNlLWluLW91dCk7XHRcblx0XHRcdFxuXHRcdFx0c3BhbiB7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cdFx0XHRcdGZvbnQtZmFtaWx5OiAkcmFsZXdheTtcblx0XHRcdH1cblxuXHRcdFx0LnllYXIge1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMTVweDtcblx0XHRcdFx0cmlnaHQ6IDEwcHg7XG5cdFx0XHRcdGZvbnQtc2l6ZTogNDRweDtcblx0XHRcdFx0Zm9udC13ZWlnaHQ6IDQwMDtcblxuXHRcdFx0fVxuXG5cdFx0XHQucmVsZWFzZS1kZXRhaWxzIHtcblx0XHRcdFx0cG9zaXRpb246IGFic29sdXRlO1xuXHRcdFx0XHRib3R0b206IDEwcHg7XG5cdFx0XHRcdGxlZnQ6IDEwcHg7XG5cdFx0XHRcdHNwYW4ge1xuXHRcdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRcdGZvbnQtd2VpZ2h0OiA2MDA7XG5cdFx0XHRcdFx0Zm9udC1zaXplOiA4NSU7XG5cdFx0XHRcdFx0bGluZS1oZWlnaHQ6IDEuNGVtO1xuXHRcdFx0XHRcdHdpZHRoOiAxMDAlO1xuXHRcdFx0XHRcdHBhZGRpbmctcmlnaHQ6IDEwcHg7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHQucmVsZWFzZSB7XG5cdFx0XHRcdFx0Zm9udC13ZWlnaHQ6IDMwMDtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdC50YXNrIHtcblx0XHRcdFx0XHRtYXJnaW4tdG9wOiA1cHg7XG5cdFx0XHRcdFx0Y29sb3I6ICRibGFjaztcblx0XHRcdFx0XHRmb250LXdlaWdodDogNzAwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdH1cblx0XG5cdC8vIGE6aG92ZXIgKyAucmVsZWFzZS1pbmZvLFxuXHQuYXJ0d29yay1hY3RpdmUge1xuXHRcdHotaW5kZXg6IDE2O1xuXHRcdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMnMgZWFzZS1pbi1vdXQpO1x0XG5cdFx0b3BhY2l0eTogMC45O1xuXHRcdC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTsgLypvbmx5IHRvIGRpc2FibGUgY29udGV4dCBtZW51IG9uIGxvbmcgcHJlc3MqL1xuXHR9XG5cblxuXHRpbWcge1xuXHRcdHdpZHRoOiAxNzVweDtcblx0XHRoZWlnaHQ6IDE3NXB4O1xuXHR9XG5cblxufVxuXG5cbi8vIHN1cnJlYWxjbXMgXG4uaXMtY21zIC5hcnR3b3JrIHtcblx0dWwgbGkge1xuXHRcdHdpZHRoOiBhdXRvO1xuXHRcdGhlaWdodDogYXV0bztcblxuXHRcdC5hcnR3b3JrLWl0ZW0ge1xuXHRcdFx0aW1nIHtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0fSBcblx0XHR9XG5cdFx0LnJlbGVhc2UtaW5mbyB7XG5cdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cdFx0XHR0b3A6IGluaGVyaXQ7XG5cdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdG9wYWNpdHk6IDE7XG5cdFx0XHR3aWR0aDogMTc1cHg7XG5cdFx0XHRoZWlnaHQ6IDE1MHB4O1xuXHRcdFx0KiB7XG5cdFx0XHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdFx0XHRmb250LXNpemU6IGluaGVyaXQ7XG5cdFx0XHRcdHBhZGRpbmc6IDVweCAwO1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdHRvcDogaW5oZXJpdDtcblx0XHRcdFx0bGVmdDogaW5oZXJpdDtcblx0XHRcdFx0Y29sb3I6ICRyZWQ7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLy8gTG9nb1xuLmxvZ28ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDEwcHggMDtcbiAgICBwYWRkaW5nOiAwIDAgMCAwO1xufSIsIi8vIEZvb3RlclxuXG5mb290ZXIgeyBcblx0ei1pbmRleDogMTA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRwb3NpdGlvbjogZml4ZWQ7XG5cdGJvdHRvbTogMDtcblx0d2lkdGg6IDEwMCU7XG5cdGJhY2tncm91bmQ6ICRyZWQ7ICBcblx0cGFkZGluZzogMDtcblx0bWFyZ2luOiAwO1xuXHRoZWlnaHQ6IDQzcHg7XG5cdEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIDAuMnMgZWFzZSk7XG5cblx0Ly8gQGluY2x1ZGUgbWVkaWEoJGRlc2t0b3Atc21hbGwpIHtcblx0Ly8gXHRoZWlnaHQ6IDM1cHg7XG5cdC8vIH1cblxufVxuIiwiLy8vIE1vYmlsZSBNZW51IC8vL1xuXG5cblxuLmljb24tbWVudSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMTBweDtcbiAgICBsZWZ0OiAyMHB4O1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICB3aWR0aDogMzVweDtcbiAgICBoZWlnaHQ6IDM1cHg7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdG9wOiAxN3B4O1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgQGluY2x1ZGUgbWVkaWEoJHRhYmxldC1sYXJnZSkge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgbGVmdDogMjBweDtcbiAgICB9XG59XG5cbi5icmFuZC1tb2JpbGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDEwcHg7XG4gICAgbGVmdDogNTBweDtcbiAgICBjb2xvcjogd2hpdGU7XG4gICAgZm9udC1mYW1pbHk6ICRyYWxld2F5O1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRvcDogMTJweDtcbiAgICBkaXNwbGF5OiBub25lO1xuICAgIEBpbmNsdWRlIG1lZGlhKCR0YWJsZXQtbGFyZ2UpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGxlZnQ6IDUwcHg7XG4gICAgfVxufVxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */