/* Scss Document */
/* Scss Document */
input[type="submit"], button {
  transition: background 0.3s; }

/* CSS Document */
html {
  font-size: 100%;
  font-size: 62.5%; }

body {
  margin: 0;
  padding: 0;
  line-height: normal;
  font-family: 'Roboto', sans-serif;
  font-weight: 400;
  color: #333333;
  font-size: 1em; }

h1, h2, h3, h4, h5, h6 {
  line-height: 1.2;
  font-style: normal;
  font-weight: 700; }

h1 {
  font-size: 5em;
  color: #204286;
  margin-top: 20px; }

h2 {
  font-size: 2.4em;
  color: #204286; }

h3 {
  font-size: 2em;
  color: #204286; }

h4 {
  font-size: 1em; }

ol, ul {
  margin: 0;
  padding: 0; }

li {
  list-style: none; }

p {
  margin: 1.1em 0; }

address {
  margin: .75em 0;
  font-style: normal; }

a {
  text-decoration: none;
  color: #048C9D;
  cursor: pointer; }

a:hover {
  color: #e69932; }

a img {
  border: none; }

em {
  font-style: italic; }

fieldset, form {
  margin: 0;
  padding: 0;
  border: none; }

button, input, select {
  vertical-align: middle; }

.clear {
  clear: both; }

.clearfix {
  clear: both; }

.row {
  display: block;
  width: 100%;
  position: relative; }

.left {
  float: left; }

.right {
  float: right; }

.half {
  width: 50%;
  display: inline-block; }

img {
  height: auto; }

article p {
  font-size: 1.5em; }

* {
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box; }

.columns {
  columns: 4;
  column-gap: 15px;
  column-rule: 1px solid #FFFFFF; }

.overall {
  margin: 0 auto;
  max-width: 1250px; }

.overallmax {
  margin: 0 auto;
  max-width: 1920px; }

.overallmin {
  margin: 0 auto;
  max-width: 1040px; }

.decallage {
  margin: 0 -10px; }

@media screen and (max-width: 1860px) {
  header nav.menu ul li a {
    padding: 15px 10px;
    font-size: 1.5em!important;
  }
  header nav.menu ul li {
    margin: 0 5px!important;
  }
}

@media screen and (max-width: 1600px) {

  .deroulant {
    display: none; }
  .btn_menu {
    display: block !important; }
  .sub_menu ul {
    padding-right: 0px !important; }
  .sub_menu li {
    float: left; }
  .sub_menu ul li {
    width: 13% !important; }
  .sub_menu ul li:first-of-type {
    width: 22% !important; }
  .sub_menu li:last-child:after {
    display: none; }
  .content {
    padding: 0 !important; }
    .content .content_inner {
      padding: 0 5% !important; }
      .content .content_inner img {
        max-width: 100% !important; } }

@media screen and (max-width: 1500px) {
  .sub_menu ul li:first-of-type {
    display: block !important;
    float: none !important;
    width: 100% !important;
    height: auto !important; }
    .sub_menu ul li:first-of-type span {
      margin: 0 20px !important; }
    .sub_menu ul li:first-of-type h2 {
      margin: 0 !important; }
      .sub_menu ul li:first-of-type h2 br {
        display: none; }
  .sub_menu ul li {
    width: 16.66666% !important; }
  .sub_menu ul li:nth-child(2):before {
    content: none !important; } }

@media screen and (max-width: 1400px) {
  .features .slider {
    margin: 0 7%; }
    .features .slider .carousel {
      width: 100% !important; }
    .features .slider .description {
      padding: 30px !important;
      position: relative !important;
      width: auto !important;
      right: 0 !important; }
      .features .slider .description strong {
        font-size: 1em !important; } }

@media screen and (max-width: 1280px) {
  body.home .actualites .actu {
    width: 100% !important;
    display: block !important;
    float: none !important;
    clear: both !important; }
    body.home .actualites .actu .image_holder {
      max-height: 200px;
      overflow: hidden; }
    body.home .actualites .actu .date {
      width: auto; }
  .catalogue .description {
    margin: 0 auto !important;
    padding: 0 30px 50px !important; }
    .catalogue .description img {
      max-width: 100%; }
  .actualites .actu {
    width: 48% !important; }
  body.page .content .listing_content .listing_produit .row_produit .produit {
    width: 31% !important; } }

@media screen and (max-width: 1160px) {
  .content_inner {
    padding: 20px !important; }
    .content_inner .title_inner {
      top: -33px !important; }
    .content_inner .statut {
      top: -40px !important; }
    .content_inner .right_content .champ.half label {
      font-size: 1.75em !important; }
    .content_inner .right_content .champ.half span.vente,
    .content_inner .right_content .champ.half span.arrow,
    .content_inner .right_content .champ.half span.commission {
      font-size: 4em !important; }
  .highlight .left, .highlight .right {
    width: 100% !important;
    float: none !important;
    display: block !important; }
  .highlight p {
    text-align: center !important; }
  .produit {
    width: 24% !important; }
  .navigation {
    padding: 70px 20px !important; }
    .navigation .btn {
      font-size: 0 !important; }
    .navigation span {
      font-size: 1.5rem;
      margin: 0 !important; } }

@media screen and (max-width: 980px) {
  body.page .content .listing_content .listing_produit .row_produit .produit {
    width: 48% !important; } }

@media screen and (max-width: 960px) {
  .content .steps .step p {
    padding: 0  !important; }
  .content .left.half,
  .content .right.half {
    font-size: 0.9em; }
  .content .right.half p {
    padding: 0 !important; }
  .content_inner {
    padding: 20px !important; }
    .content_inner .right_content .champ.half {
      display: block !important;
      float: none !important;
      width: 100% !important; }
      .content_inner .right_content .champ.half span.vente,
      .content_inner .right_content .champ.half span.arrow,
      .content_inner .right_content .champ.half span.commission {
        font-size: 5em !important; }
  .sub_menu ul li {
    width: 33.333% !important; }
  .sub_menu ul li:nth-child(4):after {
    content: none !important; }
  .produit {
    width: 31% !important; } }

@media screen and (max-width: 768px) {
  body {
    background-size: contain !important;
    background-position: 0px 320px !important; }
    body #top_barre {
      height: auto !important; }
      body #top_barre img {
        margin: 0 auto;
        display: block;
        float: none; }
      body #top_barre #connexion {
        float: none !important;
        margin: 0 auto;
        padding: 50px 10px !important;
        display: block !important;
        text-align: center; }
    body #bandeau iframe {
      margin: 0 5%;
      width: 90%; }
    body #bandeau #features .feature {
      width: 50% !important;
      padding: 20px; }
    body #boutiques .boutique {
      width: 50% !important; }
    body #actualites .actu {
      padding: 0 18px !important; }
      body #actualites .actu img {
        max-width: 150px !important;
        max-height: 150px !important; }
      body #actualites .actu p {
        font-size: 1.75em !important; }
    body .left_menu {
      width: 90% !important;
      display: block !important;
      float: none !important;
      margin: 20px auto !important; }
    body .right_content {
      width: 90% !important;
      display: block !important;
      float: none !important;
      margin: 20px auto !important; }
    body .content_inner span.produits {
      display: table !important;
      float: none !important;
      margin: 20px auto !important;
      top: 0 !important; }
    body .content_inner .champ .champ {
      width: 49% !important; }
    body .left.half,
    body .right.half {
      width: 100% !important;
      display: block !important;
      float: none !important; }
  body.page .content_title {
    display: block !important; }
    body.page .content_title span {
      display: block !important;
      text-align: center !important;
      width: auto !important;
      margin-bottom: 20px !important; }
      body.page .content_title span strong {
        font-size: 2em !important; }
    body.page .content_title .title {
      font-size: 2em !important;
      padding: 15px !important;
      line-height: 1 !important;
      z-index: 999 !important; }
  .actualites .actu {
    width: 100% !important; }
    .actualites .actu .image_holder {
      min-height: 200px !important;
      overflow: hidden !important; }
    .actualites .actu .date {
      width: auto !important; }
  body.page .content .listing_content .listing_produit .row_produit .produit {
    width: 98% !important; } }

@media screen and (max-width: 668px) {
  header {
    padding: 30px !important; }
  footer {
    padding: 30px 20px !important; }
  .content {
    padding: 0 !important; }
    .content .image_holder {
      display: -ms-flexbox !important;
      display: flex !important;
      -ms-flex: 1 0 0px !important;
          flex: 1 0 0 !important;
      position: relative !important;
      min-height: 386px !important;
      overflow: hidden !important; }
      .content .image_holder img {
        display: block !important;
        width: 100% !important;
        height: 100% !important;
        position: absolute !important;
        object-fit: cover !important; }
    .content .content_inner {
      padding: 0 5% !important;
      display: block !important; }
      .content .content_inner img {
        max-width: 100% !important; }
      .content .content_inner .col {
        display: block !important;
        vertical-align: inherit !important;
        float: none !important;
        width: auto !important; }
  .activity {
    width: 100% !important; }
    .activity p {
      padding: 50px 25px !important; }
  .recherche {
    float: none !important;
    text-align: center !important;
    width: 100% !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-align: center !important;
        align-items: center !important;
    position: relative !important; }
    .recherche input {
      width: auto !important;
      max-width: 300px !important;
      width: 100% !important; }
  header nav.menu {
    float: right !important; } }

@media screen and (max-width: 640px) {
  body #edito p {
    display: block !important;
    float: none !important;
    width: 100% !important; }
  body #edito img {
    width: 100% !important;
    margin: 0 auto !important;
    display: block !important;
    float: none !important; }
  body #actualites .actu {
    padding: 0 15px !important; }
    body #actualites .actu img {
      max-width: 100px !important;
      max-height: 100px !important; }
    body #actualites .actu p {
      font-size: 1.5em !important; }
  body .title_page {
    padding-top: 25px !important; }
    body .title_page h1 {
      font-size: 5em !important; }
  body .content {
    margin: 40px 0 !important;
    padding: 20px !important; }
    body .content p {
      padding: 0 25px; }
    body .content .steps {
      margin: 0 0 100px !important; }
      body .content .steps .step {
        margin: 0 1% !important;
        width: 30% !important; }
        body .content .steps .step p {
          font-size: 1.5em !important;
          margin: 10px 0  !important; }
        body .content .steps .step:after {
          display: none !important; }
      body .content .steps span {
        font-size: 5em !important; }
  body .content_inner {
    text-align: center; }
    body .content_inner .title_inner {
      display: table !important;
      top: -33px !important;
      margin: -20px auto !important; }
    body .content_inner .title_inner + span,
    body .content_inner .silver + .gold,
    body .content_inner .gold + .platine {
      margin-top: 20px !important; }
    body .content_inner .silver, body .content_inner .gold, body .content_inner .platine {
      top: 0px !important; }
    body .content_inner h2 {
      text-align: center !important; }
      body .content_inner h2:after {
        margin: 15px auto !important; }
    body .content_inner .champ {
      width: 100% !important;
      display: block;
      position: relative;
      padding: 0 !important; }
      body .content_inner .champ .champ {
        padding: 10px 20px !important;
        width: 100% !important; }
      body .content_inner .champ .btn_filled {
        margin: 30px auto !important; }
      body .content_inner .champ .couleur {
        margin: 10px !important; }
    body .content_inner .champ.social span {
      left: 0; }
  .sub_menu ul li {
    width: 50% !important;
    padding: 20px !important; }
  .sub_menu ul li:after {
    content: none !important; }
  .produit {
    width: 48% !important; } }

@media screen and (max-width: 550px) {
  footer .col {
    width: 100% !important;
    float: none !important;
    text-align: center !important; }
    footer .col .btn {
      display: table !important;
      margin: 20px auto !important; } }

@media screen and (max-width: 480px) {
  #bandeau #features .feature {
    width: 100% !important;
    display: block;
    float: none; }
  #boutiques .boutique {
    width: 100% !important;
    display: block !important; }
  #actualites h2 {
    float: none !important;
    text-align: center !important;
    display: block !important; }
    #actualites h2:after {
      margin: 30px auto 50px !important; }
  #actualites h2 + .btn_empty {
    float: none !important;
    margin: 30px auto !important;
    display: table !important; }
  #actualites .actu {
    width: 100% !important;
    float: none !important;
    display: block !important; }
    #actualites .actu img {
      max-width: 175px !important;
      max-height: 175px !important; }
    #actualites .actu p {
      font-size: 2em !important; }
  .content_inner {
    padding: 20px !important; }
    .content_inner .right_content .champ.half label {
      font-size: 1.75em !important; }
    .content_inner .right_content .champ.half span.vente,
    .content_inner .right_content .champ.half span.arrow,
    .content_inner .right_content .champ.half span.commission {
      font-size: 4em !important; }
  .content .step hr {
    display: none !important; }
  .content .step p {
    display: none; }
  .sub_title {
    display: block !important; }
    .sub_title span {
      display: block !important;
      text-align: center !important; }
    .sub_title h2 {
      display: block !important;
      text-align: center !important; }
  .produit {
    width: 98% !important; } }

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

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-download:before {
  content: "\e90d"; }

.icon-abstract:before {
  content: "\e900"; }

.icon-arrow_left:before {
  content: "\e901"; }

.icon-arrow_right:before {
  content: "\e902"; }

.icon-diamond:before {
  content: "\e903"; }

.icon-facebook:before {
  content: "\e904"; }

.icon-gears:before {
  content: "\e905"; }

.icon-linkedin:before {
  content: "\e906"; }

.icon-loupe:before {
  content: "\e907"; }

.icon-pills:before {
  content: "\e908"; }

.icon-plane:before {
  content: "\e909"; }

.icon-train:before {
  content: "\e90a"; }

.icon-twitter:before {
  content: "\e90b"; }

.icon-voiture:before {
  content: "\e90c"; }

/* 
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/* 
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/* 
 *  Core Owl Carousel CSS File
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }

.owl-carousel .owl-stage {
  position: relative;
  -ms-touch-action: pan-Y; }

.owl-carousel .owl-stage:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  /* fix for flashing background */
  -webkit-transform: translate3d(0px, 0px, 0px); }

.owl-carousel .owl-controls .owl-nav .owl-prev,
.owl-carousel .owl-controls .owl-nav .owl-next,
.owl-carousel .owl-controls .owl-dot {
  cursor: pointer;
  cursor: hand;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel.owl-loaded {
  display: block; }

.owl-carousel.owl-loading {
  opacity: 0;
  display: block; }

.owl-carousel.owl-hidden {
  opacity: 0; }

.owl-carousel .owl-refresh .owl-item {
  display: none; }

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  float: left;
  -webkit-backface-visibility: hidden;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
  -webkit-transform-style: preserve-3d; }

.owl-carousel.owl-text-select-on .owl-item {
  -webkit-user-select: auto;
  -moz-user-select: auto;
  -ms-user-select: auto;
  user-select: auto; }

.owl-carousel .owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: -o-grab;
  cursor: -ms-grab;
  cursor: grab; }

.owl-carousel.owl-rtl {
  direction: rtl; }

.owl-carousel.owl-rtl .owl-item {
  float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/* 
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  transition: opacity 400ms ease; }

.owl-carousel .owl-item img {
  transform-style: preserve-3d; }

/* 
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url("owl.video.play.png") no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: scale 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  transition: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1; }

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

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

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

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

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

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

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

.flash {
  animation-name: flash; }

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

.pulse {
  animation-name: pulse; }

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

.rubberBand {
  animation-name: rubberBand; }

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

.shake {
  animation-name: shake; }

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

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

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

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

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

.tada {
  animation-name: tada; }

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

.wobble {
  animation-name: wobble; }

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

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

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

.bounceIn {
  animation-name: bounceIn; }

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

.bounceInDown {
  animation-name: bounceInDown; }

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

.bounceInLeft {
  animation-name: bounceInLeft; }

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

.bounceInRight {
  animation-name: bounceInRight; }

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

.bounceInUp {
  animation-name: bounceInUp; }

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

.bounceOut {
  animation-name: bounceOut; }

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

.bounceOutDown {
  animation-name: bounceOutDown; }

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

.bounceOutLeft {
  animation-name: bounceOutLeft; }

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

.bounceOutRight {
  animation-name: bounceOutRight; }

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

.bounceOutUp {
  animation-name: bounceOutUp; }

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

.fadeIn {
  animation-name: fadeIn; }

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

.fadeInDown {
  animation-name: fadeInDown; }

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

.fadeInDownBig {
  animation-name: fadeInDownBig; }

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

.fadeInLeft {
  animation-name: fadeInLeft; }

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

.fadeInLeftBig {
  animation-name: fadeInLeftBig; }

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

.fadeInRight {
  animation-name: fadeInRight; }

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

.fadeInRightBig {
  animation-name: fadeInRightBig; }

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

.fadeInUp {
  animation-name: fadeInUp; }

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

.fadeInUpBig {
  animation-name: fadeInUpBig; }

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

.fadeOut {
  animation-name: fadeOut; }

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

.fadeOutDown {
  animation-name: fadeOutDown; }

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

.fadeOutDownBig {
  animation-name: fadeOutDownBig; }

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

.fadeOutLeft {
  animation-name: fadeOutLeft; }

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

.fadeOutLeftBig {
  animation-name: fadeOutLeftBig; }

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

.fadeOutRight {
  animation-name: fadeOutRight; }

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

.fadeOutRightBig {
  animation-name: fadeOutRightBig; }

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

.fadeOutUp {
  animation-name: fadeOutUp; }

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

.fadeOutUpBig {
  animation-name: fadeOutUpBig; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.rotateIn {
  animation-name: rotateIn; }

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

.rotateInDownLeft {
  animation-name: rotateInDownLeft; }

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

.rotateInDownRight {
  animation-name: rotateInDownRight; }

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

.rotateInUpLeft {
  animation-name: rotateInUpLeft; }

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

.rotateInUpRight {
  animation-name: rotateInUpRight; }

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

.rotateOut {
  animation-name: rotateOut; }

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

.rotateOutDownLeft {
  animation-name: rotateOutDownLeft; }

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

.rotateOutDownRight {
  animation-name: rotateOutDownRight; }

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

.rotateOutUpLeft {
  animation-name: rotateOutUpLeft; }

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

.rotateOutUpRight {
  animation-name: rotateOutUpRight; }

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

.hinge {
  animation-name: hinge; }

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

.jackInTheBox {
  animation-name: jackInTheBox; }

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

.rollIn {
  animation-name: rollIn; }

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

.rollOut {
  animation-name: rollOut; }

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

.zoomIn {
  animation-name: zoomIn; }

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

.zoomInDown {
  animation-name: zoomInDown; }

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

.zoomInLeft {
  animation-name: zoomInLeft; }

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

.zoomInRight {
  animation-name: zoomInRight; }

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

.zoomInUp {
  animation-name: zoomInUp; }

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

.zoomOut {
  animation-name: zoomOut; }

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

.zoomOutDown {
  animation-name: zoomOutDown; }

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

.zoomOutLeft {
  animation-name: zoomOutLeft; }

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

.zoomOutRight {
  animation-name: zoomOutRight; }

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

.zoomOutUp {
  animation-name: zoomOutUp; }

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

.slideInDown {
  animation-name: slideInDown; }

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

.slideInLeft {
  animation-name: slideInLeft; }

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

.slideInRight {
  animation-name: slideInRight; }

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

.slideInUp {
  animation-name: slideInUp; }

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

.slideOutDown {
  animation-name: slideOutDown; }

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

.slideOutLeft {
  animation-name: slideOutLeft; }

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

.slideOutRight {
  animation-name: slideOutRight; }

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

.slideOutUp {
  animation-name: slideOutUp; }

.btn {
  border: 2px solid #007be4;
  border-radius: 30px;
  padding: 15px 30px;
  font-size: 1.75em;
  color: #007be4;
  display: inline-block; }

.btn_voir_tout {
  display: table;
  margin: 30px auto;
  text-transform: uppercase;
  color: #4d4d4d;
  text-align: center;
  font-weight: 600;
  font-size: 1.8rem;
  padding: 20px 40px;
  transition: background .3s;
  border: 1px solid #4d4d4d;
  line-height: 1em; }
  .btn_voir_tout:hover {
    background: #9d0019;
    border: 1px solid #9d0019;
    color: #fff; }

.btn_form {
  margin: 15px auto 0;
  color: #000000 !important;
  font-weight: 600 !important;
  background: none !important;
  transition: background .3s;
  letter-spacing: 0.05em;
  padding: 20px 30px !important;
  border: 1px solid #000000 !important; }
  .btn_form:hover {
    background: #000000 !important;
    border: 1px solid #000000 !important;
    color: #fff !important; }

.lien_def {
  display: inline-block;
  color: #000000;
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase; }
  .lien_def::before {
    content: "\e901";
    font-family: 'icomoon';
    font-size: 1.5rem; }

.btn_filled {
  padding: 15px 25px;
  border-radius: 30px;
  background: #e67431;
  color: white;
  text-transform: uppercase;
  font-weight: 500;
  transition: all 0.15s ease; }

.btn_filled.blue {
  background: #204286; }

.btn_filled:hover {
  color: white;
  background: #fda645; }

.btn_empty {
  padding: 18px 30px;
  border-radius: 30px;
  background: transparent;
  border: 3px solid #e67431;
  color: #e67431;
  text-transform: uppercase;
  font-weight: 500;
  transition: all 0.15s ease; }

.btn_empty:hover {
  background: #e67431;
  color: white; }

.fermer {
  position: absolute;
  z-index: 5;
  top: 10px;
  right: 10px; }
  .fermer::before {
    content: '\e909';
    font-family: 'icomoon';
    font-size: 3.6em;
    font-weight: 600;
    color: #000000; }
  .fermer:hover::before {
    color: #000000; }

input[type="submit"], button {
  display: inline-block;
  text-transform: uppercase;
  color: #FFF;
  text-align: center;
  font-size: 1.8rem;
  padding: 20px 25px;
  background: #ed3f3d;
  /* Old browsers */
  transition: background .3s;
  border: none;
  font-weight: 500;
  font-family: 'Poppins', sans-serif;
  cursor: pointer;
  line-height: 1em; }

/* retablissement de l'apparance des selects (surtout ios) */
input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

form span.select {
  display: block;
  background: url(../images/x2/puce_select.png);
  background-size: 35px;
  background-repeat: no-repeat;
  background-color: #ffffff;
  background-position: right center !important;
  margin: 15px 0;
  border-radius: 3px;
  padding: 5px; }
  form span.select > select {
    display: block;
    width: 100%;
    background-color: transparent !important;
    border: none;
    height: 30px;
    cursor: pointer;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    padding: 0 10px;
    color: #000000;
    font-size: 1.6rem; }

input[type="text"], textarea, input[type="tel"], input[type="email"], input[type="password"], input[type="search"] {
  border-radius: 30px;
  border: 2px solid #1c3284;
  padding: 10px 15px;
  font-size: 1.5em;
  text-transform: uppercase; }

::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #1c3284; }

::-moz-placeholder {
  /* Firefox 19+ */
  color: #1c3284; }

:-ms-input-placeholder {
  /* IE 10+ */
  color: #1c3284; }

:-moz-placeholder {
  /* Firefox 18- */
  color: #1c3284; }

input[type="radio"] {
  width: 24px !important;
  height: 24px !important;
  margin: 0 10px 0 0; }

@media (max-width: 640px) {
  form span.select {
    margin: 5px 0; } }

.clearfix {
  clear: both; }

.logo_show {
  display: none !important; }

.deroulant.actif .logo_show {
  display: block !important; }

header {
  padding: 15px 50px; }
  header .logo, header nav, header .recherche {
    display: inline-block;
    vertical-align: middle; }
  header .recherche {
    float: right; }
  header:after {
    content: '';
    display: block;
    clear: both; }
  header .logo {
    margin-right: 30px; }
  header nav.menu {
    position: relative; }
    header nav.menu ul li {
      display: inline-block;
      vertical-align: middle;
      margin: 0 10px;
      position: relative;
      /*&:after{
                    content:'';
                    position: absolute;
                    bottom:0;
                    left:50%;
                    right:50%;
                    height:2px;
                    background:#124e9d;
                    transition:all 0.3s ease;
                }*/ }
      header nav.menu ul li a {
        font-size: 1.85em;
        color: #124e9d;
        text-transform: uppercase;
        white-space: pre;
        padding: 15px 20px;
        border-radius: 30px;
        display: block; }
        header nav.menu ul li a:hover {
          background: #124e9d;
          color: white; }
      header nav.menu ul li:hover:after {
        left: 0;
        right: 0; }
  header .recherche {
    margin-top: 30px; }
    header .recherche input {
      height: 42px;
      border: 2px solid #1c3284;
      font-size: 1.2em;
      width: 300px;
      color: #1c3284; }
    header .recherche span {
      display: inline-block;
      font-size: 3em;
      vertical-align: middle;
      color: #1c3284;
      margin-left: 15px; }

/*BURGER*/
.picto_menu::before {
  content: "";
  max-width: 35px;
  height: 4px;
  display: block;
  margin-bottom: 4px;
  background: #0a52a0;
  transition: all 300ms; }

.picto_menu::after {
  content: "";
  max-width: 35px;
  height: 4px;
  display: block;
  margin-bottom: 4px;
  background: #0a52a0;
  transition: all 300ms; }

.picto_menu span {
  width: 24px;
  height: 4px;
  display: block;
  margin-bottom: 4px;
  background: #0a52a0;
  transition: all 300ms; }

.picto_menu {
  float: left; }

.btn_menu {
  color: #0a52a0;
  font-weight: 400;
  font-size: 1.5em !important;
  line-height: 1em;
  padding: 18px 30px;
  float: left;
  cursor: pointer;
  display: none;
  text-transform: uppercase; }

/*FIN_BURGER*/
.deroulant {
  list-style: none;
  z-index: 999; }
  .deroulant > li {
    float: left;
    position: relative;
    display: inline-block; }
    .deroulant > li a {
      color: white;
      display: block;
      line-height: 1em;
      text-transform: uppercase;
      transition: background 300ms; }
    .deroulant > li > ul {
      display: none;
      position: absolute;
      z-index: 3;
      background: #006ab1;
      margin: 0;
      list-style: none;
      max-height: 0em;
      overflow: hidden;
      transition: 1s max-height 0.3s;
      -webkit-transition: 1s max-height 0.3s;
      -moz-transition: 1s max-height 0.3s;
      -o-transition: 1s max-height 0.3s;
      -ms-transition: 1s max-height none; }
      .deroulant > li > ul > li {
        float: left;
        width: 100%; }
        .deroulant > li > ul > li a {
          color: #FFF;
          display: block;
          background: #DDDDDD;
          text-transform: inherit; }

.deroulant.actif {
  display: block;
  position: absolute;
  background: white;
  padding: 20px;
  top: 55px; }
  .deroulant.actif li {
    display: block;
    float: none; }
    .deroulant.actif li a {
      padding: 15px 10px; }

.deroulant > li:hover ul {
  display: block; }

.deroulant > li > ul > li a:hover {
  background: #0785c5;
  border-bottom: 1px solid #0785c5; }

footer {
  background: #d5d5d5;
  padding: 40px 13%; }
  footer .col {
    width: 33%;
    display: inline-block;
    vertical-align: top;
    padding: 0 15px; }
    footer .col p {
      font-size: 1.5em;
      display: block;
      margin: 20px 0 0; }
    footer .col h3 {
      margin: 20px 0; }
    footer .col .btn {
      display: table;
      background: #007be4;
      color: white;
      font-size: 1;
      font-weight: 300;
      padding: 10px 15px;
      margin-top: 20px; }
  footer .col:nth-child(2) {
    padding: 0;
    text-align: center; }
    footer .col:nth-child(2) img {
      margin: 0 auto;
      width: 100%; }
  footer .col:nth-child(3) {
    text-align: right; }
    footer .col:nth-child(3) a {
      font-size: 1.5em;
      color: #444444;
      font-weight: bold; }

body .content {
  padding: 0 50px; }
  body .content .sub_title {
    color: #124e9d;
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 50px; }
    body .content .sub_title span {
      margin-right: 20px;
      font-size: 6em;
      display: inline-block;
      vertical-align: middle; }
    body .content .sub_title h2 {
      font-size: 3em;
      display: inline-block;
      vertical-align: middle;
      text-align: left;
      text-transform: uppercase; }

body.page .content_title {
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 50px;
  position: relative;
  max-width: 891px; }
  body.page .content_title span {
    width: 225px;
    display: block;
    font-size: 4em;
    text-align: center;
    color: #124e9d;
    padding: 0 50px; }
    body.page .content_title span strong {
      font-size: 3em;
      font-weight: 800;
      margin-bottom: 0;
      letter-spacing: -5px;
      margin: -30px 0;
      display: block; }
  body.page .content_title .image_holder {
    width: 100%; }
  body.page .content_title .title {
    background: rgba(18, 78, 157, 0.75);
    padding: 30px;
    text-transform: uppercase;
    color: white;
    font-weight: bold;
    line-height: 1;
    font-size: 4em;
    position: absolute;
    bottom: 0;
    left: 0; }

body.page .content {
  background: url(../images/pattern1.png) top left no-repeat;
  padding: 0 calc(50px + 7%);
  background-position: 7% 100px; }
  body.page .content .sub_title {
    font-size: 1.25em; }
    body.page .content .sub_title h2 {
      color: #124e9d; }
  body.page .content .content_inner {
    padding: 0 10%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    body.page .content .content_inner .navigation {
      display: block; }
    body.page .content .content_inner .col {
      width: 46%;
      display: inline-block;
      vertical-align: middle;
      float: left; }
    body.page .content .content_inner p {
      font-weight: 300;
      font-size: 1.75em;
      line-height: 1.5em;
      text-align: justify;
      color: #124e9d; }
  body.page .content .listing_content {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: start;
        justify-content: flex-start; }
    body.page .content .listing_content .categories {
      background: #124e9d;
      color: white;
      padding: 30px 15px;
      display: table; }
      body.page .content .listing_content .categories h3 {
        color: white !important;
        margin-bottom: 50px;
        margin-top: 0;
        padding: 0 20px; }
      body.page .content .listing_content .categories > ul {
        font-size: 1.6em; }
        body.page .content .listing_content .categories > ul > li > a {
          padding: 10px 15px;
          color: white;
          display: block; }
          body.page .content .listing_content .categories > ul > li > a:hover {
            background: white;
            color: #124e9d; }
        body.page .content .listing_content .categories > ul > li > ul {
          padding: 10px;
          background: #0f3d7b;
          display: block; }
          body.page .content .listing_content .categories > ul > li > ul > li a {
            color: white;
            display: block;
            padding: 10px 15px;
            font-size: 0.8em; }
            body.page .content .listing_content .categories > ul > li > ul > li a:hover {
              background: rgba(255, 255, 255, 0.15); }
    body.page .content .listing_content .listing_produit {
      padding: 0 50px; }
      body.page .content .listing_content .listing_produit .row_produit {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -ms-flex-pack: justify;
            justify-content: space-between; }
        body.page .content .listing_content .listing_produit .row_produit h3 {
          display: -ms-flexbox;
          display: flex;
          width: 100%;
          white-space: pre;
          -ms-flex-align: center;
              align-items: center; }
          body.page .content .listing_content .listing_produit .row_produit h3:after {
            content: '';
            height: 1px;
            width: 100%;
            background: #204286;
            margin-left: 50px;
            display: inline-block;
            vertical-align: middle; }
        body.page .content .listing_content .listing_produit .row_produit .produit {
          width: 24%;
          position: relative; }
          body.page .content .listing_content .listing_produit .row_produit .produit .image_holder {
            display: -ms-flexbox;
            display: flex;
            -ms-flex: 1 0 0px;
                flex: 1 0 0;
            position: relative;
            min-height: 230px !important; }
            body.page .content .listing_content .listing_produit .row_produit .produit .image_holder span {
              background: rgba(18, 78, 157, 0.75);
              color: white;
              bottom: 0;
              position: absolute;
              left: 0;
              right: 0;
              padding: 10px 30px;
              font-size: 1.5em;
              height: 59px;
              font-weight: 300; }
              body.page .content .listing_content .listing_produit .row_produit .produit .image_holder span strong {
                float: right;
                font-size: 2em; }
            body.page .content .listing_content .listing_produit .row_produit .produit .image_holder img {
              display: block;
              width: 100%;
              height: 100%;
              position: absolute;
              object-fit: cover; }
          body.page .content .listing_content .listing_produit .row_produit .produit .description {
            background: white;
            padding: 30px; }
            body.page .content .listing_content .listing_produit .row_produit .produit .description .qte span {
              vertical-align: middle;
              font-size: 1.5em;
              color: #204286;
              font-weight: bold;
              display: inline-block;
              line-height: 40px; }
            body.page .content .listing_content .listing_produit .row_produit .produit .description .qte input[type="number"] {
              float: right;
              height: 43px;
              border: 1px solid #204286;
              display: inline-block;
              vertical-align: middle;
              font-size: 1.5em;
              max-width: 50px;
              text-align: center;
              font-weight: bold; }
            body.page .content .listing_content .listing_produit .row_produit .produit .description p {
              color: #333333;
              font-size: 1.5em;
              line-height: 1.2em; }
              body.page .content .listing_content .listing_produit .row_produit .produit .description p strong {
                font-weight: bold; }
            body.page .content .listing_content .listing_produit .row_produit .produit .description a {
              font-size: 1.75em;
              margin-top: 30px;
              display: block;
              text-align: center;
              color: #204286;
              font-weight: bold; }
              body.page .content .listing_content .listing_produit .row_produit .produit .description a span {
                font-size: 1.5em;
                vertical-align: middle;
                display: inline-block;
                margin-right: 30px; }
          body.page .content .listing_content .listing_produit .row_produit .produit:after {
            content: '';
            border: 0px solid rgba(18, 78, 157, 0.1);
            position: absolute;
            z-index: 9;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            transition: all 0.2s ease-out;
            display: block;
            pointer-events: none; }
          body.page .content .listing_content .listing_produit .row_produit .produit:hover:after {
            border: 15px solid rgba(18, 78, 157, 0.1); }
  body.page .content .navigation {
    padding: 70px 10%;
    text-align: center; }
    body.page .content .navigation .btn {
      margin: 0 5px; }
      body.page .content .navigation .btn span {
        margin-left: 15px; }
    body.page .content .navigation .btn.facebook {
      background: #124e9d;
      color: white;
      border-color: #124e9d; }
      body.page .content .navigation .btn.facebook span {
        color: white; }
    body.page .content .navigation .btn.twitter {
      background: #5dc9f9;
      color: white;
      border-color: #5dc9f9; }
      body.page .content .navigation .btn.twitter span {
        color: white; }
    body.page .content .navigation .btn:first-of-type {
      float: left; }
      body.page .content .navigation .btn:first-of-type span {
        margin-right: 15px; }
    body.page .content .navigation .btn:last-of-type {
      float: right; }
      body.page .content .navigation .btn:last-of-type span {
        margin-right: 15px; }
  body.page .content .row_activity {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    body.page .content .row_activity .activity {
      width: 48%;
      position: relative;
      margin-bottom: 100px; }
      body.page .content .row_activity .activity .image_holder {
        width: 600px;
        max-width: 100%;
        overflow: hidden;
        float: right;
        display: -ms-flexbox;
        display: flex;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
        position: relative;
        min-height: 404px; }
        body.page .content .row_activity .activity .image_holder img {
          display: block;
          width: 100%;
          height: 100%;
          position: absolute;
          object-fit: cover; }
      body.page .content .row_activity .activity p {
        background: white;
        padding: 75px 50px;
        font-size: 1.75em;
        text-align: justify;
        color: #124e9d;
        font-weight: 300;
        line-height: 1.5em;
        max-width: 430px;
        position: absolute;
        top: 100px;
        z-index: 9; }
      body.page .content .row_activity .activity span {
        background: rgba(18, 78, 157, 0.75);
        color: white;
        padding: 20px 50px;
        text-transform: uppercase;
        font-size: 3em;
        font-weight: bold;
        position: absolute;
        top: 75px;
        left: 0;
        z-index: 9; }

.ariane {
  font-size: 1.6em;
  font-weight: 400;
  background: #f3f6fa;
  margin: 50px;
  padding: 25px;
  border-top: 1px solid #114e9d;
  margin: 0px 50px 50px; }
  .ariane .overall {
    padding: 15px 75px; }
  .ariane span:last-of-type:after {
    content: none; }
  .ariane span:after {
    content: ">";
    display: inline-block;
    color: #007be4;
    margin: 0 10px; }
  .ariane span {
    color: #204286; }
  .ariane span.actif {
    font-weight: bold; }

#bandeau {
  height: 829px;
  display: block;
  background: #0a52a0; }

body.home .sub_menu .sub_title {
  margin-bottom: 0; }

.sub_menu {
  background: #e8f1fa; }
  .sub_menu ul {
    vertical-align: middle;
    text-align: right;
    padding-right: 10%; }
    .sub_menu ul li {
      height: 120px;
      width: 12%;
      background: #124e9d;
      display: inline-block;
      vertical-align: middle;
      text-align: center;
      color: white;
      position: relative;
      padding: 20px 20px 20px 60px;
      transition: all 0.3s ease;
      cursor: pointer; }
      .sub_menu ul li:after {
        content: '';
        width: 47px;
        position: absolute;
        top: 0;
        bottom: 0;
        right: -25px;
        background: #114e9d;
        transform: skewX(20deg);
        transition: all 0.3s ease;
        z-index: 99; }
      .sub_menu ul li span {
        font-size: 5em;
        position: relative;
        z-index: 999;
        transition: all 0.3s ease; }
      .sub_menu ul li span.icon-train, .sub_menu ul li span.icon-voiture {
        font-size: 4em; }
      .sub_menu ul li span.icon-train + p, .sub_menu ul li span.icon-voiture + p {
        margin-top: 19px; }
      .sub_menu ul li p {
        font-size: 1.75em;
        margin-top: 10px;
        font-weight: 300;
        position: relative;
        z-index: 999; }
      .sub_menu ul li:hover span {
        top: -5px;
        z-index: 99; }
    .sub_menu ul li.aeronautique:hover, .sub_menu ul li.aeronautique:hover:before, .sub_menu ul li.aeronautique:hover:after {
      background: #5c94c8; }
    .sub_menu ul li.train:hover, .sub_menu ul li.train:hover:before, .sub_menu ul li.train:hover:after {
      background: #b3b0ab; }
    .sub_menu ul li.voiture:hover, .sub_menu ul li.voiture:hover:before, .sub_menu ul li.voiture:hover:after {
      background: #1f2825; }
    .sub_menu ul li.pills:hover, .sub_menu ul li.pills:hover:before, .sub_menu ul li.pills:hover:after {
      background: #af0c3e; }
    .sub_menu ul li.diamond:hover, .sub_menu ul li.diamond:hover:before, .sub_menu ul li.diamond:hover:after {
      background: #379591; }
    .sub_menu ul li.gears:hover, .sub_menu ul li.gears:hover:before, .sub_menu ul li.gears:hover:after {
      background: #fdc52e; }
    .sub_menu ul li:nth-child(2):before {
      content: '';
      width: 47px;
      position: absolute;
      top: 0;
      bottom: 0;
      left: -25px;
      background: #114e9d;
      transform: skewX(20deg);
      transition: all 0.3s ease; }
    .sub_menu ul li:first-of-type {
      width: 27%;
      background: #f3faff;
      padding: 20px 0; }
      .sub_menu ul li:first-of-type:after {
        content: none; }
      .sub_menu ul li:first-of-type span, .sub_menu ul li:first-of-type h2 {
        color: #124e9d;
        display: inline-block;
        vertical-align: middle;
        text-align: left;
        text-transform: uppercase; }
      .sub_menu ul li:first-of-type span {
        margin-right: 20px;
        font-size: 6em;
        margin-top: -10px; }
      .sub_menu ul li:first-of-type h2 {
        font-size: 3em;
        margin-top: 10px; }

.features {
  box-sizing: border-box;
  display: block;
  padding: 94px 0;
  background: url(../images/pattern1.png) no-repeat #f3faff;
  background-position: 50px 0px;
  clear: both; }
  .features .slider {
    max-width: 100%;
    margin-left: 7%;
    display: block;
    position: relative; }
    .features .slider .carousel {
      width: 70%; }
    .features .slider .owl-item {
      width: 100%;
      max-height: 554px;
      overflow: hidden; }
    .features .slider .overall_slide {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0; }
      .features .slider .overall_slide .num {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        background: rgba(18, 78, 157, 0.75);
        width: 269px;
        padding: 0px 30px; }
        .features .slider .overall_slide .num span {
          font-size: 15em;
          color: white;
          font-weight: 800;
          letter-spacing: -10px; }
    .features .slider .description {
      background: white;
      width: 30%;
      padding: 50px;
      font-size: 1.75em;
      line-height: 1.5em;
      position: absolute;
      z-index: 9999;
      right: 100px;
      bottom: 0;
      color: #124e9d; }
      .features .slider .description strong {
        text-transform: uppercase;
        font-weight: bold;
        color: #124e9d;
        display: block;
        margin-bottom: 30px;
        font-size: 2em;
        line-height: 1.1em; }
    .features .slider .owl-controls {
      position: absolute;
      bottom: 0;
      left: 269px; }
      .features .slider .owl-controls .owl-prev {
        height: 80px;
        width: 80px;
        text-indent: -9999px;
        background: url(../images/prev.jpg);
        display: inline-block;
        vertical-align: middle; }
      .features .slider .owl-controls .owl-next {
        height: 80px;
        width: 80px;
        text-indent: -9999px;
        background: url(../images/next.jpg);
        display: inline-block;
        vertical-align: middle; }

.highlight {
  background: url(../images/pattern3.png) no-repeat #f3faff;
  background-position: 15% -25px;
  padding: 0 7% 50px;
  display: block; }
  .highlight .left, .highlight .right {
    width: 50%; }
  .highlight p {
    text-align: right;
    margin: 0 auto;
    max-width: 450px;
    padding: 50px;
    font-size: 1.75em;
    line-height: 1.5em;
    z-index: 9999;
    color: #124e9d; }
    .highlight p strong {
      text-transform: uppercase;
      font-weight: bold;
      color: #124e9d;
      display: block;
      margin-bottom: 30px;
      font-size: 2em;
      line-height: 1.1em; }
  .highlight iframe {
    max-width: 100%; }

.actualites {
  padding: 50px 0;
  background: url(../images/pattern4.png) right no-repeat; }
  .actualites .sub_title {
    color: #124e9d;
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 50px; }
    .actualites .sub_title span {
      margin-right: 20px;
      font-size: 6em;
      display: inline-block;
      vertical-align: middle; }
    .actualites .sub_title h2 {
      font-size: 3em;
      display: inline-block;
      vertical-align: middle;
      text-align: left;
      text-transform: uppercase; }
  .actualites .btn {
    display: inline-block;
    vertical-align: middle;
    float: right; }
  .actualites .actu_wrapper {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
        justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
    .actualites .actu_wrapper .actu {
      position: relative;
      width: 31%;
      display: inline-block;
      vertical-align: middle;
      margin: 30px 0; }
      .actualites .actu_wrapper .actu .image_holder {
        width: 100%;
        display: -ms-grid;
        display: grid; }
        .actualites .actu_wrapper .actu .image_holder img {
          width: 100%; }
      .actualites .actu_wrapper .actu .date {
        width: 28%;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        min-width: 122px;
        padding: 10px 30px;
        background: rgba(18, 78, 157, 0.75);
        text-align: center; }
        .actualites .actu_wrapper .actu .date strong {
          font-size: 7em;
          color: white;
          display: block;
          font-weight: 800;
          margin-bottom: -16px; }
        .actualites .actu_wrapper .actu .date span {
          color: white;
          font-size: 3em;
          font-weight: 300; }
      .actualites .actu_wrapper .actu .description {
        padding: 30px;
        min-height: 174px;
        width: 72%;
        display: block;
        clear: both;
        background: white;
        position: relative;
        transition: all 0.3s ease; }
        .actualites .actu_wrapper .actu .description h3 {
          margin-top: 0;
          text-transform: uppercase;
          color: #007be4; }
        .actualites .actu_wrapper .actu .description p {
          font-size: 1.75em;
          margin-bottom: 0; }
      .actualites .actu_wrapper .actu:hover .description {
        width: 100%; }

.catalogue {
  padding: 0 7%; }
  .catalogue .image_holder {
    position: relative; }
    .catalogue .image_holder img {
      max-width: 100%; }
    .catalogue .image_holder:after {
      content: "";
      position: absolute;
      left: 0;
      bottom: -50px;
      right: 0;
      height: 100px;
      background: rgba(18, 78, 157, 0.75); }
  .catalogue .btn {
    background: #007be4;
    color: white;
    display: table;
    margin: 0 auto; }
  .catalogue .description {
    padding: 0 75px 50px;
    max-width: 815px;
    margin: -350px auto 0;
    display: table;
    text-align: center;
    background: white;
    position: relative; }
    .catalogue .description h2 {
      text-transform: uppercase;
      font-size: 3.5em; }
    .catalogue .description p {
      font-size: 1.75em;
      color: #124e9d;
      line-height: 1.5em;
      margin: 50px 0; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInN0eWxlLnNjc3MiLCJfdmFyaWFibGUuc2NzcyIsIl9yZXNldC5zY3NzIiwiX3Jlc3BvbnNpdmUuc2NzcyIsImZvbnQvX2ZvbnQuc2NzcyIsInN0eWxlLmNzcyIsImxpYnMvX293bC5jYXJvdXNlbC5zY3NzIiwibGlicy9fYW5pbWF0ZS5zY3NzIiwiY29tcG9uZW50L19idXR0b25zLnNjc3MiLCJjb21wb25lbnQvX2Zvcm0uc2NzcyIsInBhZ2VzL19oZWFkZXIuc2NzcyIsInBhZ2VzL19mb290ZXIuc2NzcyIsInBhZ2VzL19ob21lLnNjc3MiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsbUJBQW1CO0FDQW5CLG1CQUFtQjtBQVduQjtFQUNDLDRCQUE0QixFQUc1Qjs7QUNkRCxrQkFBa0I7QUFFbEI7RUFBSyxnQkFBZTtFQUFDLGlCQUFpQixFQUFHOztBQUV6QztFQUFLLFVBQVM7RUFBQyxXQUFVO0VBQUMsb0JBQW1CO0VBQUMsa0NBQWtDO0VBQUMsaUJBQWlCO0VBQUMsZUFBYztFQUFDLGVBQWMsRUFBRzs7QUFFbkk7RUFBa0IsaUJBQWdCO0VBQUMsbUJBQWtCO0VBQUMsaUJBQWdCLEVBQUc7O0FBRXpFO0VBQUcsZUFBYztFQUFDLGVBQWM7RUFBQyxpQkFBZ0IsRUFBRzs7QUFFcEQ7RUFBRyxpQkFBZ0I7RUFBRSxlQUFlLEVBQUc7O0FBRXZDO0VBQUcsZUFBYztFQUFFLGVBQWMsRUFBRzs7QUFFcEM7RUFBRyxlQUFjLEVBQUU7O0FBRW5CO0VBQU0sVUFBUztFQUFDLFdBQVUsRUFBRTs7QUFFNUI7RUFDQyxpQkFBaUIsRUFDakI7O0FBQ0Q7RUFBRSxnQkFBZSxFQUFFOztBQUVuQjtFQUFRLGdCQUFlO0VBQUMsbUJBQWtCLEVBQUU7O0FBRTVDO0VBQUUsc0JBQXFCO0VBQUMsZUFBYztFQUFDLGdCQUFlLEVBQUc7O0FBRXpEO0VBQVEsZUFBZSxFQUFHOztBQUUxQjtFQUFNLGFBQVksRUFBRTs7QUFFcEI7RUFBRyxtQkFBa0IsRUFBRTs7QUFFdkI7RUFB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QUNYLGtCQUFpQjtRQUNqQixtQkFBbUI7UUFDbkIsMEJBQXlCLEVBVTVCO1FBdEZiO1VBOEVvQixjQUFhO1VBQ2IsMEJBQTBCO1VBQzFCLGVBQWMsRUFDakI7UUFqRmpCO1VBbUZvQixrQkFBaUI7VUFDakIsaUJBQWdCLEVBQ25CO01BckZqQjtRQXlGb0IsWUFBVyxFQUNkOztBQU9qQjtFQUNJLGNBQWEsRUF5Q2hCO0VBMUNEO0lBR1EsbUJBQWtCLEVBYXJCO0lBaEJMO01BS1ksZ0JBQWUsRUFDbEI7SUFOVDtNQVFZLFlBQVc7TUFDWCxtQkFBa0I7TUFDbEIsUUFBTztNQUNQLGNBQWE7TUFDYixTQUFRO01BQ1IsY0FBYTtNQUNiLG9DQUFnQixFQUNuQjtFQWZUO0lBa0JRLG9CQUFtQjtJQUNuQixhQUFZO0lBQ1osZUFBZTtJQUNmLGVBQWMsRUFDakI7RUF0Qkw7SUF3QlEscUJBQW9CO0lBQ3BCLGlCQUFnQjtJQUNoQixzQkFBcUI7SUFDckIsZUFBZTtJQUNmLG1CQUFtQjtJQUNuQixrQkFBaUI7SUFDakIsbUJBQWtCLEVBV3JCO0lBekNMO01BZ0NZLDBCQUEwQjtNQUMxQixpQkFBZ0IsRUFDbkI7SUFsQ1Q7TUFvQ1ksa0JBQWlCO01BQ2pCLGVBQWM7TUFDZCxtQkFBa0I7TUFDbEIsZUFBYyxFQUNqQiIsImZpbGUiOiJzdHlsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiBTY3NzIERvY3VtZW50ICovXHJcbkBjaGFyc2V0IFwidXRmLThcIjtcclxuXHJcbkBpbXBvcnQgXCJ2YXJpYWJsZVwiO1xyXG5AaW1wb3J0IFwicmVzZXRcIjtcclxuQGltcG9ydCBcInJlc3BvbnNpdmVcIjtcclxuQGltcG9ydCBcImZvbnQvZm9udFwiO1xyXG5cclxuQGltcG9ydCBcImxpYnMvb3dsLmNhcm91c2VsXCI7XHJcbkBpbXBvcnQgXCJsaWJzL2FuaW1hdGVcIjtcclxuXHJcbkBpbXBvcnQgXCJjb21wb25lbnQvYnV0dG9uc1wiO1xyXG5AaW1wb3J0IFwiY29tcG9uZW50L2Zvcm1cIjtcclxuXHJcbkBpbXBvcnQgXCJwYWdlcy9oZWFkZXJcIjtcclxuQGltcG9ydCBcInBhZ2VzL2Zvb3RlclwiO1xyXG5AaW1wb3J0IFwicGFnZXMvaG9tZVwiO1xyXG5cclxuIiwiLyogU2NzcyBEb2N1bWVudCAqL1xyXG5cclxuJG5vaXI6ICMwMDAwMDA7XHJcblxyXG4kZGVza3RvcGw6ICcxOTAwcHgnO1xyXG4kZGVza3RvcDogJzEyMDBweCc7XHJcbiR0YWJsZXRwOiAnMTAyNHB4JztcclxuJHRhYmxldDogJzk4MHB4JztcclxuJG1vYmlsZXA6ICc2NDBweCc7XHJcbiRtb2JpbGU6ICc0NjBweCc7XHJcblxyXG4lZWZmZXRfaG92ZXJ7XHJcblx0dHJhbnNpdGlvbjogYmFja2dyb3VuZCAwLjNzO1xyXG5cdCY6aG92ZXJ7XHJcblx0fVxyXG59XHJcbiV2b2lyX3RvdXR7XHJcblx0Y29sb3I6JG5vaXI7XHJcblx0Zm9udC1zaXplOiAzLjZlbTtcclxuXHRsaW5lLWhlaWdodDogMC45ZW07XHJcblx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdCY6aG92ZXJ7XHJcblx0XHRjb2xvcjokbm9pcjtcclxuXHRcdCY6OmJlZm9yZXtcclxuXHRcdFx0Y29sb3I6JG5vaXI7XHJcblx0XHR9XHJcblx0fVxyXG5cdCY6OmJlZm9yZXtcclxuXHRcdGNvbnRlbnQ6ICdcXGU5MDUnO1xyXG5cdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG5cdFx0Y29sb3I6JG5vaXI7XHJcblx0XHRmb250LWZhbWlseTogJ2ljb21vb24nO1xyXG5cdFx0Zm9udC13ZWlnaHQ6IDcwMDtcclxuXHRcdHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcblx0fVxyXG59IiwiXHJcbi8qIENTUyBEb2N1bWVudCAqL1xyXG5cclxuaHRtbHtmb250LXNpemU6MTAwJTtmb250LXNpemU6IDYyLjUlO31cclxuXHJcbmJvZHl7bWFyZ2luOjA7cGFkZGluZzowO2xpbmUtaGVpZ2h0Om5vcm1hbDtmb250LWZhbWlseTogJ1JvYm90bycsIHNhbnMtc2VyaWY7Zm9udC13ZWlnaHQ6IDQwMDtjb2xvcjojMzMzMzMzO2ZvbnQtc2l6ZToxZW07fVxyXG5cclxuaDEsaDIsaDMsaDQsaDUsaDZ7bGluZS1oZWlnaHQ6MS4yO2ZvbnQtc3R5bGU6bm9ybWFsO2ZvbnQtd2VpZ2h0OjcwMDt9XHJcblxyXG5oMXtmb250LXNpemU6NWVtO2NvbG9yOiMyMDQyODY7bWFyZ2luLXRvcDoyMHB4O31cclxuXHJcbmgye2ZvbnQtc2l6ZToyLjRlbTsgY29sb3I6ICMyMDQyODY7fVxyXG5cclxuaDN7Zm9udC1zaXplOjJlbTsgY29sb3I6IzIwNDI4Njt9XHJcblxyXG5oNHtmb250LXNpemU6MWVtfVxyXG5cclxub2wsdWx7bWFyZ2luOjA7cGFkZGluZzowfVxyXG5cclxubGl7XHJcblx0bGlzdC1zdHlsZTogbm9uZTtcclxufVxyXG5we21hcmdpbjoxLjFlbSAwfVxyXG5cclxuYWRkcmVzc3ttYXJnaW46Ljc1ZW0gMDtmb250LXN0eWxlOm5vcm1hbH1cclxuXHJcbmF7dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6IzA0OEM5RDtjdXJzb3I6cG9pbnRlcjt9XHJcblxyXG5hOmhvdmVye2NvbG9yOiAjZTY5OTMyO31cclxuXHJcbmEgaW1ne2JvcmRlcjpub25lfVxyXG5cclxuZW17Zm9udC1zdHlsZTppdGFsaWN9XHJcblxyXG5maWVsZHNldCxmb3Jte21hcmdpbjowO3BhZGRpbmc6MDtib3JkZXI6bm9uZX1cclxuXHJcbmJ1dHRvbixpbnB1dCxzZWxlY3R7dmVydGljYWwtYWxpZ246bWlkZGxlfVxyXG5cclxuLmNsZWFye2NsZWFyOmJvdGh9XHJcblxyXG4uY2xlYXJmaXh7Y2xlYXI6Ym90aH1cclxuXHJcbi5yb3cge1xyXG4gICAgZGlzcGxheTpibG9jaztcclxuICAgIHdpZHRoOjEwMCU7XHJcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbn1cclxuXHJcbi5sZWZ0IHtcclxuICAgIGZsb2F0OmxlZnQ7XHJcbn1cclxuLnJpZ2h0IHtcclxuICAgIGZsb2F0OnJpZ2h0O1xyXG59XHJcblxyXG4uaGFsZiB7XHJcbiAgICB3aWR0aDo1MCU7XHJcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbn1cclxuXHJcbmltZ3tcclxuXHRoZWlnaHQ6IGF1dG87XHJcbn1cclxuYXJ0aWNsZSBwe1xyXG5cdGZvbnQtc2l6ZTogMS41ZW07XHJcbn1cclxuKiB7XHJcblx0LXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQtbXMtYm94LXNpemluZzogYm9yZGVyLWJveDtcclxuXHQtby1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xyXG5cdGJveC1zaXppbmc6IGJvcmRlci1ib3g7XHJcbn1cclxuLmNvbHVtbnMge1xyXG4gICAgLXdlYmtpdC1jb2x1bW5zOiA0O1xyXG4gICAgLW1vei1jb2x1bW5zOiA0O1xyXG4gICAgY29sdW1uczogNDtcclxuICAgIC13ZWJraXQtY29sdW1uLWdhcDogMTVweDtcclxuICAgIC1tb3otY29sdW1uLWdhcDogMTVweDtcclxuICAgIGNvbHVtbi1nYXA6IDE1cHg7XHJcbiAgICAtd2Via2l0LWNvbHVtbi1ydWxlOiAxcHggc29saWQgI0ZGRkZGRjtcclxuICAgIC1tb3otY29sdW1uLXJ1bGU6IDFweCBzb2xpZCAjRkZGRkZGO1xyXG4gICAgY29sdW1uLXJ1bGU6IDFweCBzb2xpZCAjRkZGRkZGO1xyXG59XHJcbi5vdmVyYWxsIHtcclxuXHRtYXJnaW46IDAgYXV0bztcclxuXHRtYXgtd2lkdGg6IDEyNTBweDtcclxufVxyXG4ub3ZlcmFsbG1heHtcclxuXHRtYXJnaW46IDAgYXV0bztcclxuXHRtYXgtd2lkdGg6IDE5MjBweDtcclxufVxyXG4ub3ZlcmFsbG1pbntcclxuXHRtYXJnaW46IDAgYXV0bztcclxuXHRtYXgtd2lkdGg6IDEwNDBweDtcclxufVxyXG4uZGVjYWxsYWdlIHtcclxuXHRtYXJnaW46IDAgLTEwcHg7XHJcbn0iLCJAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjE4NjBweCl7XHJcbiAgICAuZGVyb3VsYW50e1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbiAgICAuYnRuX21lbnV7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5zdWJfbWVudSB1bHtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OjBweCAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLnN1Yl9tZW51IGxpe1xyXG4gICAgICAgIGZsb2F0OmxlZnQ7XHJcbiAgICB9XHJcbiAgICAuc3ViX21lbnUgdWwgbGl7XHJcbiAgICAgICAgd2lkdGg6MTMlICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICAuc3ViX21lbnUgdWwgbGk6Zmlyc3Qtb2YtdHlwZXtcclxuICAgICAgICB3aWR0aDoyMiUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5zdWJfbWVudSBsaTpsYXN0LWNoaWxkOmFmdGVye1xyXG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTYwMHB4KXtcclxuICAgIC5jb250ZW50e1xyXG4gICAgICAgIHBhZGRpbmc6MCAhaW1wb3J0YW50O1xyXG4gICAgICAgIC5jb250ZW50X2lubmVye1xyXG4gICAgICAgICAgICBwYWRkaW5nOjAgNSUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgbWF4LXdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDoxNTAwcHgpe1xyXG4gICAgLnN1Yl9tZW51IHVsIGxpOmZpcnN0LW9mLXR5cGV7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICBmbG9hdDpub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIGhlaWdodDphdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgbWFyZ2luOjAgMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIG1hcmdpbjowICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJye1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1Yl9tZW51IHVsIGxpe1xyXG4gICAgICAgIHdpZHRoOjE2LjY2NjY2JSAhaW1wb3J0YW50O1xyXG4gICAgfVxyXG4gICAgLnN1Yl9tZW51IHVsIGxpOm50aC1jaGlsZCgyKTpiZWZvcmV7XHJcbiAgICAgICAgY29udGVudDpub25lICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6MTQwMHB4KXtcclxuICAgIC5mZWF0dXJlcyAuc2xpZGVye1xyXG4gICAgICAgIG1hcmdpbjowIDclO1xyXG4gICAgICAgIC5jYXJvdXNlbHtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgIHBhZGRpbmc6MzBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgd2lkdGg6YXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICByaWdodDowICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHN0cm9uZ3tcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMjgwcHgpe1xyXG4gICAgYm9keS5ob21le1xyXG4gICAgICAgIC5hY3R1YWxpdGVze1xyXG4gICAgICAgICAgICAuYWN0dXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBjbGVhcjpib3RoICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAuaW1hZ2VfaG9sZGVye1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW47XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuZGF0ZXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDphdXRvO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNhdGFsb2d1ZXtcclxuICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgIG1hcmdpbjowIGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgcGFkZGluZzowIDMwcHggNTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hY3R1YWxpdGVze1xyXG4gICAgICAgIC5hY3R1IHtcclxuICAgICAgICAgICAgd2lkdGg6NDglICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCAucm93X3Byb2R1aXQgLnByb2R1aXR7XHJcbiAgICAgICB3aWR0aDozMSUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDoxMTYwcHgpe1xyXG4gICAgLmNvbnRlbnRfaW5uZXJ7XHJcbiAgICAgICAgcGFkZGluZzoyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLnRpdGxlX2lubmVye1xyXG4gICAgICAgICAgICB0b3A6IC0zM3B4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5zdGF0dXR7XHJcbiAgICAgICAgICAgIHRvcDogLTQwcHggIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnJpZ2h0X2NvbnRlbnR7XHJcbiAgICAgICAgICAgIC5jaGFtcC5oYWxme1xyXG4gICAgICAgICAgICAgICAgbGFiZWwge1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjc1ZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHNwYW4udmVudGUsXHJcbiAgICAgICAgICAgICAgICBzcGFuLmFycm93LFxyXG4gICAgICAgICAgICAgICAgc3Bhbi5jb21taXNzaW9ue1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTo0ZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5oaWdobGlnaHR7XHJcbiAgICAgICAgLmxlZnQsLnJpZ2h0e1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGZsb2F0Om5vbmUhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICBwe1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAucHJvZHVpdHtcclxuICAgICAgICB3aWR0aDoyNCUgIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5uYXZpZ2F0aW9ue1xyXG4gICAgICAgIHBhZGRpbmc6NzBweCAyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgZm9udC1zaXplOjAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxLjVyZW07XHJcbiAgICAgICAgICAgIG1hcmdpbjowICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjk4MHB4KXtcclxuICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5saXN0aW5nX3Byb2R1aXQgLnJvd19wcm9kdWl0IC5wcm9kdWl0e1xyXG4gICAgICAgd2lkdGg6NDglICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6OTYwcHgpe1xyXG4gICAgLmNvbnRlbnQge1xyXG4gICAgICAgIC5zdGVwc3tcclxuICAgICAgICAgICAgLnN0ZXB7XHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwICAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5sZWZ0LmhhbGYsXHJcbiAgICAgICAgLnJpZ2h0LmhhbGZ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTowLjllbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnJpZ2h0LmhhbGYge1xyXG4gICAgICAgICAgICBwe1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzowICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29udGVudF9pbm5lcntcclxuICAgICAgICBwYWRkaW5nOjIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAucmlnaHRfY29udGVudHtcclxuICAgICAgICAgICAgLmNoYW1wLmhhbGZ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6bm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgc3Bhbi52ZW50ZSxcclxuICAgICAgICAgICAgICAgIHNwYW4uYXJyb3csXHJcbiAgICAgICAgICAgICAgICBzcGFuLmNvbW1pc3Npb257XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjVlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1Yl9tZW51e1xyXG4gICAgICAgIHVse1xyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjMzLjMzMyUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBsaTpudGgtY2hpbGQoNCk6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50Om5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gIFxyXG4gICAgLnByb2R1aXR7XHJcbiAgICAgICAgd2lkdGg6MzElICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBcclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo3NjhweCl7XHJcbiAgICAgICAgYm9keXtcclxuICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IDBweCAzMjBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAjdG9wX2JhcnJle1xyXG4gICAgICAgICAgICAgICAgaGVpZ2h0OmF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46MCBhdXRvO1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0Om5vbmU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAjY29ubmV4aW9ue1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIGF1dG87XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzo1MHB4IDEwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAjYmFuZGVhdSB7XHJcbiAgICAgICAgICAgICAgICBpZnJhbWV7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwIDUlO1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiA5MCU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAjZmVhdHVyZXMge1xyXG4gICAgICAgICAgICAgICAgICAgIC5mZWF0dXJlIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6NTAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MjBweDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgI2JvdXRpcXVlc3tcclxuICAgICAgICAgICAgICAgIC5ib3V0aXF1ZXtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDo1MCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAjYWN0dWFsaXRlc3tcclxuICAgICAgICAgICAgICAgIC5hY3R1e1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDAgMThweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTUwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LWhlaWdodDogMTUwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjc1ZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxlZnRfbWVudXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjkwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGZsb2F0Om5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIG1hcmdpbjoyMHB4IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAucmlnaHRfY29udGVudCB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDo5MCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46MjBweCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNvbnRlbnRfaW5uZXJ7XHJcbiAgICAgICAgICAgICAgICBzcGFuLnByb2R1aXRze1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxvYXQ6bm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjoyMHB4IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6MCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmNoYW1wIHtcclxuICAgICAgICAgICAgICAgICAgICAuY2hhbXAge1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjQ5JSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAubGVmdC5oYWxmLFxyXG4gICAgICAgICAgICAucmlnaHQuaGFsZntcclxuICAgICAgICAgICAgICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICBib2R5LnBhZ2UgLmNvbnRlbnRfdGl0bGV7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgIHNwYW57XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICB3aWR0aDphdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbWFyZ2luLWJvdHRvbToyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgc3Ryb25ne1xyXG4gICAgICAgICAgICBmb250LXNpemU6MmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnRpdGxle1xyXG4gICAgICAgIGZvbnQtc2l6ZToyZW0gIWltcG9ydGFudDtcclxuICAgICAgICBwYWRkaW5nOiAxNXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgbGluZS1oZWlnaHQ6MSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHotaW5kZXg6IDk5OSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5hY3R1YWxpdGVze1xyXG4gICAgICAgIC5hY3R1IHtcclxuICAgICAgICAgICAgLmltYWdlX2hvbGRlcntcclxuICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6MjAwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIG92ZXJmbG93OiBoaWRkZW4gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGF0ZXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOmF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCAucm93X3Byb2R1aXQgLnByb2R1aXR7XHJcbiAgICAgICB3aWR0aDo5OCUgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo2NjhweCl7XHJcbiAgICBoZWFkZXJ7XHJcbiAgICAgICAgcGFkZGluZzozMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbiAgICBmb290ZXJ7XHJcbiAgICAgICAgcGFkZGluZzozMHB4IDIwcHggIWltcG9ydGFudDtcclxuICAgIH1cclxuICAgIC5jb250ZW50e1xyXG4gICAgICAgIHBhZGRpbmc6MCAhaW1wb3J0YW50O1xyXG4gICAgICAgIC5pbWFnZV9ob2xkZXJ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZmxleDogMSAwIDAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6Mzg2cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAtby1vYmplY3QtZml0OiBjb3ZlciAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGVudF9pbm5lcntcclxuICAgICAgICAgICAgcGFkZGluZzowIDUlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIGltZ3tcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY29se1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBpbmhlcml0ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDphdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuYWN0aXZpdHl7XHJcbiAgICAgICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHAge1xyXG4gICAgICAgICAgICBwYWRkaW5nOjUwcHggMjVweCAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5yZWNoZXJjaGV7XHJcbiAgICAgICAgZmxvYXQ6bm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgYWxpZ24taXRlbXM6IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgaW5wdXR7XHJcbiAgICAgICAgICAgIHdpZHRoOmF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWF4LXdpZHRoOjMwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICBoZWFkZXIgbmF2Lm1lbnV7XHJcbiAgICAgICAgZmxvYXQ6cmlnaHQgIWltcG9ydGFudDtcclxuICAgIH1cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo2NDBweCl7XHJcbiAgICBib2R5IHtcclxuICAgICAgICAjZWRpdG8ge1xyXG4gICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgI2VkaXRve1xyXG4gICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGZsb2F0Om5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAjYWN0dWFsaXRlc3tcclxuICAgICAgICAgICAgLmFjdHV7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE1cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIGltZyB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAxMDBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDEwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBwIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MS41ZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAudGl0bGVfcGFnZSB7XHJcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOjI1cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgaDEge1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjVlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5jb250ZW50IHtcclxuICAgICAgICAgICAgbWFyZ2luOjQwcHggMCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBwYWRkaW5nOjIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjAgMjVweDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc3RlcHN7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46MCAwIDEwMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAuc3RlcHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46MCAxJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOjMwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MS41ZW0gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOjEwcHggMCAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgJjphZnRlciB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6NWVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmNvbnRlbnRfaW5uZXJ7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgLnRpdGxlX2lubmVyIHtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB0b3A6IC0zM3B4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW46LTIwcHggYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC50aXRsZV9pbm5lciArIHNwYW4sXHJcbiAgICAgICAgICAgIC5zaWx2ZXIgKyAuZ29sZCxcclxuICAgICAgICAgICAgLmdvbGQgKyAucGxhdGluZSB7XHJcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOjIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuc2lsdmVyLCAuZ29sZCwgLnBsYXRpbmV7XHJcbiAgICAgICAgICAgICAgICB0b3A6MHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaDIge1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW46MTVweCBhdXRvICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNoYW1we1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjAgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIC5jaGFtcHtcclxuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAuYnRuX2ZpbGxlZCB7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luOjMwcHggYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgLmNvdWxldXIge1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbjoxMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmNoYW1wLnNvY2lhbCB7XHJcbiAgICAgICAgICAgICAgICBzcGFuIHtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1Yl9tZW51e1xyXG4gICAgICAgIHVse1xyXG4gICAgICAgICAgICBsaXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjUwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzoyMHB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgbGk6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50Om5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH0gIFxyXG4gICAgLnByb2R1aXR7XHJcbiAgICAgICAgd2lkdGg6NDglICFpbXBvcnRhbnQ7XHJcbiAgICB9XHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NTUwcHgpe1xyXG4gICAgZm9vdGVye1xyXG4gICAgICAgIC5jb2x7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZmxvYXQ6bm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgLmJ0biB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOjIwcHggYXV0byAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjQ4MHB4KXtcclxuICAgICNiYW5kZWF1IHtcclxuICAgICAgICAjZmVhdHVyZXMge1xyXG4gICAgICAgICAgICAuZmVhdHVyZSB7XHJcbiAgICAgICAgICAgICAgICB3aWR0aDoxMDAlICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgIGZsb2F0Om5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAjYm91dGlxdWVze1xyXG4gICAgICAgIC5ib3V0aXF1ZXtcclxuICAgICAgICAgICAgd2lkdGg6MTAwJSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAjYWN0dWFsaXRlc3tcclxuICAgICAgICBoMntcclxuICAgICAgICAgICAgZmxvYXQ6bm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgXHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgICY6YWZ0ZXIge1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gNTBweCAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGgyICsgLmJ0bl9lbXB0eXtcclxuICAgICAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcclxuICAgICAgICB9XHJcbiAgICAgICAgLmFjdHV7XHJcbiAgICAgICAgICAgIHdpZHRoOjEwMCUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgZmxvYXQ6bm9uZSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgaW1nIHtcclxuICAgICAgICAgICAgICAgIG1heC13aWR0aDogMTc1cHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgIG1heC1oZWlnaHQ6IDE3NXB4ICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MmVtICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAuY29udGVudF9pbm5lcntcclxuICAgICAgICBwYWRkaW5nOjIwcHggIWltcG9ydGFudDtcclxuICAgICAgICAucmlnaHRfY29udGVudHtcclxuICAgICAgICAgICAgLmNoYW1wLmhhbGZ7XHJcbiAgICAgICAgICAgICAgICBsYWJlbCB7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjEuNzVlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgc3Bhbi52ZW50ZSxcclxuICAgICAgICAgICAgICAgIHNwYW4uYXJyb3csXHJcbiAgICAgICAgICAgICAgICBzcGFuLmNvbW1pc3Npb257XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjRlbSAhaW1wb3J0YW50O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gXHJcbiAgICB9XHJcbiAgICAuY29udGVudCB7XHJcbiAgICAgICAgLnN0ZXAge1xyXG4gICAgICAgICAgICBociB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgcCB7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnN1Yl90aXRsZXtcclxuICAgICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xyXG4gICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxuICAgICAgICBoMiB7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6YmxvY2sgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLnByb2R1aXR7XHJcbiAgICAgICAgICAgIHdpZHRoOjk4JSAhaW1wb3J0YW50O1xyXG4gICAgICAgIH1cclxufSIsIkBmb250LWZhY2Uge1xyXG4gIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XHJcbiAgc3JjOiAgdXJsKCdmb250L2ZvbnRzL2ljb21vb24uZW90P3FsYXp4ZScpO1xyXG4gIHNyYzogIHVybCgnZm9udC9mb250cy9pY29tb29uLmVvdD9xbGF6eGUjaWVmaXgnKSBmb3JtYXQoJ2VtYmVkZGVkLW9wZW50eXBlJyksXHJcbiAgICB1cmwoJ2ZvbnQvZm9udHMvaWNvbW9vbi53b2ZmMj9xbGF6eGUnKSBmb3JtYXQoJ3dvZmYyJyksXHJcbiAgICB1cmwoJ2ZvbnQvZm9udHMvaWNvbW9vbi50dGY/cWxhenhlJykgZm9ybWF0KCd0cnVldHlwZScpLFxyXG4gICAgdXJsKCdmb250L2ZvbnRzL2ljb21vb24ud29mZj9xbGF6eGUnKSBmb3JtYXQoJ3dvZmYnKSxcclxuICAgIHVybCgnZm9udC9mb250cy9pY29tb29uLnN2Zz9xbGF6eGUjaWNvbW9vbicpIGZvcm1hdCgnc3ZnJyk7XHJcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcclxuICBmb250LXN0eWxlOiBub3JtYWw7XHJcbn1cclxuXHJcbltjbGFzc149XCJpY29uLVwiXSwgW2NsYXNzKj1cIiBpY29uLVwiXSB7XHJcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cclxuICBmb250LWZhbWlseTogJ2ljb21vb24nICFpbXBvcnRhbnQ7XHJcbiAgc3BlYWs6IG5vbmU7XHJcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xyXG4gIGZvbnQtd2VpZ2h0OiBub3JtYWw7XHJcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XHJcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XHJcbiAgbGluZS1oZWlnaHQ6IDE7XHJcblxyXG4gIC8qIEJldHRlciBGb250IFJlbmRlcmluZyA9PT09PT09PT09PSAqL1xyXG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xyXG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XHJcbn1cclxuXHJcbi5pY29uLWRvd25sb2FkOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MGRcIjtcclxufVxyXG4uaWNvbi1hYnN0cmFjdDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XHJcbn1cclxuLmljb24tYXJyb3dfbGVmdDpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XHJcbn1cclxuLmljb24tYXJyb3dfcmlnaHQ6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwMlwiO1xyXG59XHJcbi5pY29uLWRpYW1vbmQ6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwM1wiO1xyXG59XHJcbi5pY29uLWZhY2Vib29rOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MDRcIjtcclxufVxyXG4uaWNvbi1nZWFyczpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7XHJcbn1cclxuLmljb24tbGlua2VkaW46YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwNlwiO1xyXG59XHJcbi5pY29uLWxvdXBlOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MDdcIjtcclxufVxyXG4uaWNvbi1waWxsczpiZWZvcmUge1xyXG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7XHJcbn1cclxuLmljb24tcGxhbmU6YmVmb3JlIHtcclxuICBjb250ZW50OiBcIlxcZTkwOVwiO1xyXG59XHJcbi5pY29uLXRyYWluOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MGFcIjtcclxufVxyXG4uaWNvbi10d2l0dGVyOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MGJcIjtcclxufVxyXG4uaWNvbi12b2l0dXJlOmJlZm9yZSB7XHJcbiAgY29udGVudDogXCJcXGU5MGNcIjtcclxufVxyXG4iLCIvKiBTY3NzIERvY3VtZW50ICovXG4vKiBTY3NzIERvY3VtZW50ICovXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdLCBidXR0b24ge1xuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDAuM3M7IH1cblxuLyogQ1NTIERvY3VtZW50ICovXG5odG1sIHtcbiAgZm9udC1zaXplOiAxMDAlO1xuICBmb250LXNpemU6IDYyLjUlOyB9XG5cbmJvZHkge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG4gIGZvbnQtZmFtaWx5OiAnUm9ib3RvJywgc2Fucy1zZXJpZjtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICMzMzMzMzM7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbmgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICBsaW5lLWhlaWdodDogMS4yO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7IH1cblxuaDEge1xuICBmb250LXNpemU6IDVlbTtcbiAgY29sb3I6ICMyMDQyODY7XG4gIG1hcmdpbi10b3A6IDIwcHg7IH1cblxuaDIge1xuICBmb250LXNpemU6IDIuNGVtO1xuICBjb2xvcjogIzIwNDI4NjsgfVxuXG5oMyB7XG4gIGZvbnQtc2l6ZTogMmVtO1xuICBjb2xvcjogIzIwNDI4NjsgfVxuXG5oNCB7XG4gIGZvbnQtc2l6ZTogMWVtOyB9XG5cbm9sLCB1bCB7XG4gIG1hcmdpbjogMDtcbiAgcGFkZGluZzogMDsgfVxuXG5saSB7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7IH1cblxucCB7XG4gIG1hcmdpbjogMS4xZW0gMDsgfVxuXG5hZGRyZXNzIHtcbiAgbWFyZ2luOiAuNzVlbSAwO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuYSB7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgY29sb3I6ICMwNDhDOUQ7XG4gIGN1cnNvcjogcG9pbnRlcjsgfVxuXG5hOmhvdmVyIHtcbiAgY29sb3I6ICNlNjk5MzI7IH1cblxuYSBpbWcge1xuICBib3JkZXI6IG5vbmU7IH1cblxuZW0ge1xuICBmb250LXN0eWxlOiBpdGFsaWM7IH1cblxuZmllbGRzZXQsIGZvcm0ge1xuICBtYXJnaW46IDA7XG4gIHBhZGRpbmc6IDA7XG4gIGJvcmRlcjogbm9uZTsgfVxuXG5idXR0b24sIGlucHV0LCBzZWxlY3Qge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5jbGVhciB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5jbGVhcmZpeCB7XG4gIGNsZWFyOiBib3RoOyB9XG5cbi5yb3cge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuXG4ubGVmdCB7XG4gIGZsb2F0OiBsZWZ0OyB9XG5cbi5yaWdodCB7XG4gIGZsb2F0OiByaWdodDsgfVxuXG4uaGFsZiB7XG4gIHdpZHRoOiA1MCU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG5pbWcge1xuICBoZWlnaHQ6IGF1dG87IH1cblxuYXJ0aWNsZSBwIHtcbiAgZm9udC1zaXplOiAxLjVlbTsgfVxuXG4qIHtcbiAgLXdlYmtpdC1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIC1tcy1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAtby1ib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9XG5cbi5jb2x1bW5zIHtcbiAgLXdlYmtpdC1jb2x1bW5zOiA0O1xuICAtbW96LWNvbHVtbnM6IDQ7XG4gIGNvbHVtbnM6IDQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogMTVweDtcbiAgLW1vei1jb2x1bW4tZ2FwOiAxNXB4O1xuICBjb2x1bW4tZ2FwOiAxNXB4O1xuICAtd2Via2l0LWNvbHVtbi1ydWxlOiAxcHggc29saWQgI0ZGRkZGRjtcbiAgLW1vei1jb2x1bW4tcnVsZTogMXB4IHNvbGlkICNGRkZGRkY7XG4gIGNvbHVtbi1ydWxlOiAxcHggc29saWQgI0ZGRkZGRjsgfVxuXG4ub3ZlcmFsbCB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEyNTBweDsgfVxuXG4ub3ZlcmFsbG1heCB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDE5MjBweDsgfVxuXG4ub3ZlcmFsbG1pbiB7XG4gIG1hcmdpbjogMCBhdXRvO1xuICBtYXgtd2lkdGg6IDEwNDBweDsgfVxuXG4uZGVjYWxsYWdlIHtcbiAgbWFyZ2luOiAwIC0xMHB4OyB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE4NjBweCkge1xuICAuZGVyb3VsYW50IHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5idG5fbWVudSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAuc3ViX21lbnUgdWwge1xuICAgIHBhZGRpbmctcmlnaHQ6IDBweCAhaW1wb3J0YW50OyB9XG4gIC5zdWJfbWVudSBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7IH1cbiAgLnN1Yl9tZW51IHVsIGxpIHtcbiAgICB3aWR0aDogMTMlICFpbXBvcnRhbnQ7IH1cbiAgLnN1Yl9tZW51IHVsIGxpOmZpcnN0LW9mLXR5cGUge1xuICAgIHdpZHRoOiAyMiUgIWltcG9ydGFudDsgfVxuICAuc3ViX21lbnUgbGk6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgZGlzcGxheTogbm9uZTsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE2MDBweCkge1xuICAuY29udGVudCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmNvbnRlbnQgLmNvbnRlbnRfaW5uZXIge1xuICAgICAgcGFkZGluZzogMCA1JSAhaW1wb3J0YW50OyB9XG4gICAgICAuY29udGVudCAuY29udGVudF9pbm5lciBpbWcge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDE1MDBweCkge1xuICAuc3ViX21lbnUgdWwgbGk6Zmlyc3Qtb2YtdHlwZSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAuc3ViX21lbnUgdWwgbGk6Zmlyc3Qtb2YtdHlwZSBzcGFuIHtcbiAgICAgIG1hcmdpbjogMCAyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAuc3ViX21lbnUgdWwgbGk6Zmlyc3Qtb2YtdHlwZSBoMiB7XG4gICAgICBtYXJnaW46IDAgIWltcG9ydGFudDsgfVxuICAgICAgLnN1Yl9tZW51IHVsIGxpOmZpcnN0LW9mLXR5cGUgaDIgYnIge1xuICAgICAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zdWJfbWVudSB1bCBsaSB7XG4gICAgd2lkdGg6IDE2LjY2NjY2JSAhaW1wb3J0YW50OyB9XG4gIC5zdWJfbWVudSB1bCBsaTpudGgtY2hpbGQoMik6YmVmb3JlIHtcbiAgICBjb250ZW50OiBub25lICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxNDAwcHgpIHtcbiAgLmZlYXR1cmVzIC5zbGlkZXIge1xuICAgIG1hcmdpbjogMCA3JTsgfVxuICAgIC5mZWF0dXJlcyAuc2xpZGVyIC5jYXJvdXNlbCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgLmZlYXR1cmVzIC5zbGlkZXIgLmRlc2NyaXB0aW9uIHtcbiAgICAgIHBhZGRpbmc6IDMwcHggIWltcG9ydGFudDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZSAhaW1wb3J0YW50O1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHJpZ2h0OiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5mZWF0dXJlcyAuc2xpZGVyIC5kZXNjcmlwdGlvbiBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDFlbSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogMTI4MHB4KSB7XG4gIGJvZHkuaG9tZSAuYWN0dWFsaXRlcyAuYWN0dSB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgY2xlYXI6IGJvdGggIWltcG9ydGFudDsgfVxuICAgIGJvZHkuaG9tZSAuYWN0dWFsaXRlcyAuYWN0dSAuaW1hZ2VfaG9sZGVyIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuICAgIGJvZHkuaG9tZSAuYWN0dWFsaXRlcyAuYWN0dSAuZGF0ZSB7XG4gICAgICB3aWR0aDogYXV0bzsgfVxuICAuY2F0YWxvZ3VlIC5kZXNjcmlwdGlvbiB7XG4gICAgbWFyZ2luOiAwIGF1dG8gIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAwIDMwcHggNTBweCAhaW1wb3J0YW50OyB9XG4gICAgLmNhdGFsb2d1ZSAuZGVzY3JpcHRpb24gaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAuYWN0dWFsaXRlcyAuYWN0dSB7XG4gICAgd2lkdGg6IDQ4JSAhaW1wb3J0YW50OyB9XG4gIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5saXN0aW5nX3Byb2R1aXQgLnJvd19wcm9kdWl0IC5wcm9kdWl0IHtcbiAgICB3aWR0aDogMzElICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAxMTYwcHgpIHtcbiAgLmNvbnRlbnRfaW5uZXIge1xuICAgIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDsgfVxuICAgIC5jb250ZW50X2lubmVyIC50aXRsZV9pbm5lciB7XG4gICAgICB0b3A6IC0zM3B4ICFpbXBvcnRhbnQ7IH1cbiAgICAuY29udGVudF9pbm5lciAuc3RhdHV0IHtcbiAgICAgIHRvcDogLTQwcHggIWltcG9ydGFudDsgfVxuICAgIC5jb250ZW50X2lubmVyIC5yaWdodF9jb250ZW50IC5jaGFtcC5oYWxmIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS43NWVtICFpbXBvcnRhbnQ7IH1cbiAgICAuY29udGVudF9pbm5lciAucmlnaHRfY29udGVudCAuY2hhbXAuaGFsZiBzcGFuLnZlbnRlLFxuICAgIC5jb250ZW50X2lubmVyIC5yaWdodF9jb250ZW50IC5jaGFtcC5oYWxmIHNwYW4uYXJyb3csXG4gICAgLmNvbnRlbnRfaW5uZXIgLnJpZ2h0X2NvbnRlbnQgLmNoYW1wLmhhbGYgc3Bhbi5jb21taXNzaW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogNGVtICFpbXBvcnRhbnQ7IH1cbiAgLmhpZ2hsaWdodCAubGVmdCwgLmhpZ2hsaWdodCAucmlnaHQge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gIC5oaWdobGlnaHQgcCB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLnByb2R1aXQge1xuICAgIHdpZHRoOiAyNCUgIWltcG9ydGFudDsgfVxuICAubmF2aWdhdGlvbiB7XG4gICAgcGFkZGluZzogNzBweCAyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAubmF2aWdhdGlvbiAuYnRuIHtcbiAgICAgIGZvbnQtc2l6ZTogMCAhaW1wb3J0YW50OyB9XG4gICAgLm5hdmlnYXRpb24gc3BhbiB7XG4gICAgICBmb250LXNpemU6IDEuNXJlbTtcbiAgICAgIG1hcmdpbjogMCAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogOTgwcHgpIHtcbiAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCAucm93X3Byb2R1aXQgLnByb2R1aXQge1xuICAgIHdpZHRoOiA0OCUgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDk2MHB4KSB7XG4gIC5jb250ZW50IC5zdGVwcyAuc3RlcCBwIHtcbiAgICBwYWRkaW5nOiAwICAhaW1wb3J0YW50OyB9XG4gIC5jb250ZW50IC5sZWZ0LmhhbGYsXG4gIC5jb250ZW50IC5yaWdodC5oYWxmIHtcbiAgICBmb250LXNpemU6IDAuOWVtOyB9XG4gIC5jb250ZW50IC5yaWdodC5oYWxmIHAge1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuICAuY29udGVudF9pbm5lciB7XG4gICAgcGFkZGluZzogMjBweCAhaW1wb3J0YW50OyB9XG4gICAgLmNvbnRlbnRfaW5uZXIgLnJpZ2h0X2NvbnRlbnQgLmNoYW1wLmhhbGYge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICAuY29udGVudF9pbm5lciAucmlnaHRfY29udGVudCAuY2hhbXAuaGFsZiBzcGFuLnZlbnRlLFxuICAgICAgLmNvbnRlbnRfaW5uZXIgLnJpZ2h0X2NvbnRlbnQgLmNoYW1wLmhhbGYgc3Bhbi5hcnJvdyxcbiAgICAgIC5jb250ZW50X2lubmVyIC5yaWdodF9jb250ZW50IC5jaGFtcC5oYWxmIHNwYW4uY29tbWlzc2lvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogNWVtICFpbXBvcnRhbnQ7IH1cbiAgLnN1Yl9tZW51IHVsIGxpIHtcbiAgICB3aWR0aDogMzMuMzMzJSAhaW1wb3J0YW50OyB9XG4gIC5zdWJfbWVudSB1bCBsaTpudGgtY2hpbGQoNCk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAucHJvZHVpdCB7XG4gICAgd2lkdGg6IDMxJSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNzY4cHgpIHtcbiAgYm9keSB7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMHB4IDMyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5ICN0b3BfYmFycmUge1xuICAgICAgaGVpZ2h0OiBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAgIGJvZHkgI3RvcF9iYXJyZSBpbWcge1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBub25lOyB9XG4gICAgICBib2R5ICN0b3BfYmFycmUgI2Nvbm5leGlvbiB7XG4gICAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICBwYWRkaW5nOiA1MHB4IDEwcHggIWltcG9ydGFudDtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gICAgYm9keSAjYmFuZGVhdSBpZnJhbWUge1xuICAgICAgbWFyZ2luOiAwIDUlO1xuICAgICAgd2lkdGg6IDkwJTsgfVxuICAgIGJvZHkgI2JhbmRlYXUgI2ZlYXR1cmVzIC5mZWF0dXJlIHtcbiAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmc6IDIwcHg7IH1cbiAgICBib2R5ICNib3V0aXF1ZXMgLmJvdXRpcXVlIHtcbiAgICAgIHdpZHRoOiA1MCUgIWltcG9ydGFudDsgfVxuICAgIGJvZHkgI2FjdHVhbGl0ZXMgLmFjdHUge1xuICAgICAgcGFkZGluZzogMCAxOHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgIGJvZHkgI2FjdHVhbGl0ZXMgLmFjdHUgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxNTBweCAhaW1wb3J0YW50O1xuICAgICAgICBtYXgtaGVpZ2h0OiAxNTBweCAhaW1wb3J0YW50OyB9XG4gICAgICBib2R5ICNhY3R1YWxpdGVzIC5hY3R1IHAge1xuICAgICAgICBmb250LXNpemU6IDEuNzVlbSAhaW1wb3J0YW50OyB9XG4gICAgYm9keSAubGVmdF9tZW51IHtcbiAgICAgIHdpZHRoOiA5MCUgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gIWltcG9ydGFudDsgfVxuICAgIGJvZHkgLnJpZ2h0X2NvbnRlbnQge1xuICAgICAgd2lkdGg6IDkwJSAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIGZsb2F0OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICBtYXJnaW46IDIwcHggYXV0byAhaW1wb3J0YW50OyB9XG4gICAgYm9keSAuY29udGVudF9pbm5lciBzcGFuLnByb2R1aXRzIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gICAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAyMHB4IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHRvcDogMCAhaW1wb3J0YW50OyB9XG4gICAgYm9keSAuY29udGVudF9pbm5lciAuY2hhbXAgLmNoYW1wIHtcbiAgICAgIHdpZHRoOiA0OSUgIWltcG9ydGFudDsgfVxuICAgIGJvZHkgLmxlZnQuaGFsZixcbiAgICBib2R5IC5yaWdodC5oYWxmIHtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICBib2R5LnBhZ2UgLmNvbnRlbnRfdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5LnBhZ2UgLmNvbnRlbnRfdGl0bGUgc3BhbiB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7XG4gICAgICB3aWR0aDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweCAhaW1wb3J0YW50OyB9XG4gICAgICBib2R5LnBhZ2UgLmNvbnRlbnRfdGl0bGUgc3BhbiBzdHJvbmcge1xuICAgICAgICBmb250LXNpemU6IDJlbSAhaW1wb3J0YW50OyB9XG4gICAgYm9keS5wYWdlIC5jb250ZW50X3RpdGxlIC50aXRsZSB7XG4gICAgICBmb250LXNpemU6IDJlbSAhaW1wb3J0YW50O1xuICAgICAgcGFkZGluZzogMTVweCAhaW1wb3J0YW50O1xuICAgICAgbGluZS1oZWlnaHQ6IDEgIWltcG9ydGFudDtcbiAgICAgIHotaW5kZXg6IDk5OSAhaW1wb3J0YW50OyB9XG4gIC5hY3R1YWxpdGVzIC5hY3R1IHtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgLmFjdHVhbGl0ZXMgLmFjdHUgLmltYWdlX2hvbGRlciB7XG4gICAgICBtaW4taGVpZ2h0OiAyMDBweCAhaW1wb3J0YW50O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG4gICAgLmFjdHVhbGl0ZXMgLmFjdHUgLmRhdGUge1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgfVxuICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAubGlzdGluZ19wcm9kdWl0IC5yb3dfcHJvZHVpdCAucHJvZHVpdCB7XG4gICAgd2lkdGg6IDk4JSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNjY4cHgpIHtcbiAgaGVhZGVyIHtcbiAgICBwYWRkaW5nOiAzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgZm9vdGVyIHtcbiAgICBwYWRkaW5nOiAzMHB4IDIwcHggIWltcG9ydGFudDsgfVxuICAuY29udGVudCB7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50OyB9XG4gICAgLmNvbnRlbnQgLmltYWdlX2hvbGRlciB7XG4gICAgICBkaXNwbGF5OiBmbGV4ICFpbXBvcnRhbnQ7XG4gICAgICBmbGV4OiAxIDAgMCAhaW1wb3J0YW50O1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7XG4gICAgICBtaW4taGVpZ2h0OiAzODZweCAhaW1wb3J0YW50O1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbiAhaW1wb3J0YW50OyB9XG4gICAgICAuY29udGVudCAuaW1hZ2VfaG9sZGVyIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgICAgIGhlaWdodDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGUgIWltcG9ydGFudDtcbiAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDtcbiAgICAgICAgb2JqZWN0LWZpdDogY292ZXIgIWltcG9ydGFudDsgfVxuICAgIC5jb250ZW50IC5jb250ZW50X2lubmVyIHtcbiAgICAgIHBhZGRpbmc6IDAgNSUgIWltcG9ydGFudDtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAgIC5jb250ZW50IC5jb250ZW50X2lubmVyIGltZyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICAuY29udGVudCAuY29udGVudF9pbm5lciAuY29sIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICAgICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDsgfVxuICAuYWN0aXZpdHkge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgICAuYWN0aXZpdHkgcCB7XG4gICAgICBwYWRkaW5nOiA1MHB4IDI1cHggIWltcG9ydGFudDsgfVxuICAucmVjaGVyY2hlIHtcbiAgICBmbG9hdDogbm9uZSAhaW1wb3J0YW50O1xuICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50O1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogZmxleCAhaW1wb3J0YW50O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmUgIWltcG9ydGFudDsgfVxuICAgIC5yZWNoZXJjaGUgaW5wdXQge1xuICAgICAgd2lkdGg6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIG1heC13aWR0aDogMzAwcHggIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cbiAgaGVhZGVyIG5hdi5tZW51IHtcbiAgICBmbG9hdDogcmlnaHQgIWltcG9ydGFudDsgfSB9XG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIGJvZHkgI2VkaXRvIHAge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gIGJvZHkgI2VkaXRvIGltZyB7XG4gICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDAgYXV0byAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICBib2R5ICNhY3R1YWxpdGVzIC5hY3R1IHtcbiAgICBwYWRkaW5nOiAwIDE1cHggIWltcG9ydGFudDsgfVxuICAgIGJvZHkgI2FjdHVhbGl0ZXMgLmFjdHUgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwcHggIWltcG9ydGFudDtcbiAgICAgIG1heC1oZWlnaHQ6IDEwMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5ICNhY3R1YWxpdGVzIC5hY3R1IHAge1xuICAgICAgZm9udC1zaXplOiAxLjVlbSAhaW1wb3J0YW50OyB9XG4gIGJvZHkgLnRpdGxlX3BhZ2Uge1xuICAgIHBhZGRpbmctdG9wOiAyNXB4ICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5IC50aXRsZV9wYWdlIGgxIHtcbiAgICAgIGZvbnQtc2l6ZTogNWVtICFpbXBvcnRhbnQ7IH1cbiAgYm9keSAuY29udGVudCB7XG4gICAgbWFyZ2luOiA0MHB4IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nOiAyMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5IC5jb250ZW50IHAge1xuICAgICAgcGFkZGluZzogMCAyNXB4OyB9XG4gICAgYm9keSAuY29udGVudCAuc3RlcHMge1xuICAgICAgbWFyZ2luOiAwIDAgMTAwcHggIWltcG9ydGFudDsgfVxuICAgICAgYm9keSAuY29udGVudCAuc3RlcHMgLnN0ZXAge1xuICAgICAgICBtYXJnaW46IDAgMSUgIWltcG9ydGFudDtcbiAgICAgICAgd2lkdGg6IDMwJSAhaW1wb3J0YW50OyB9XG4gICAgICAgIGJvZHkgLmNvbnRlbnQgLnN0ZXBzIC5zdGVwIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW0gIWltcG9ydGFudDtcbiAgICAgICAgICBtYXJnaW46IDEwcHggMCAgIWltcG9ydGFudDsgfVxuICAgICAgICBib2R5IC5jb250ZW50IC5zdGVwcyAuc3RlcDphZnRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICBib2R5IC5jb250ZW50IC5zdGVwcyBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiA1ZW0gIWltcG9ydGFudDsgfVxuICBib2R5IC5jb250ZW50X2lubmVyIHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBib2R5IC5jb250ZW50X2lubmVyIC50aXRsZV9pbm5lciB7XG4gICAgICBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50O1xuICAgICAgdG9wOiAtMzNweCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luOiAtMjBweCBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5IC5jb250ZW50X2lubmVyIC50aXRsZV9pbm5lciArIHNwYW4sXG4gICAgYm9keSAuY29udGVudF9pbm5lciAuc2lsdmVyICsgLmdvbGQsXG4gICAgYm9keSAuY29udGVudF9pbm5lciAuZ29sZCArIC5wbGF0aW5lIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHggIWltcG9ydGFudDsgfVxuICAgIGJvZHkgLmNvbnRlbnRfaW5uZXIgLnNpbHZlciwgYm9keSAuY29udGVudF9pbm5lciAuZ29sZCwgYm9keSAuY29udGVudF9pbm5lciAucGxhdGluZSB7XG4gICAgICB0b3A6IDBweCAhaW1wb3J0YW50OyB9XG4gICAgYm9keSAuY29udGVudF9pbm5lciBoMiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgICAgYm9keSAuY29udGVudF9pbm5lciBoMjphZnRlciB7XG4gICAgICAgIG1hcmdpbjogMTVweCBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5IC5jb250ZW50X2lubmVyIC5jaGFtcCB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nOiAwICFpbXBvcnRhbnQ7IH1cbiAgICAgIGJvZHkgLmNvbnRlbnRfaW5uZXIgLmNoYW1wIC5jaGFtcCB7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMjBweCAhaW1wb3J0YW50O1xuICAgICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG4gICAgICBib2R5IC5jb250ZW50X2lubmVyIC5jaGFtcCAuYnRuX2ZpbGxlZCB7XG4gICAgICAgIG1hcmdpbjogMzBweCBhdXRvICFpbXBvcnRhbnQ7IH1cbiAgICAgIGJvZHkgLmNvbnRlbnRfaW5uZXIgLmNoYW1wIC5jb3VsZXVyIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICBib2R5IC5jb250ZW50X2lubmVyIC5jaGFtcC5zb2NpYWwgc3BhbiB7XG4gICAgICBsZWZ0OiAwOyB9XG4gIC5zdWJfbWVudSB1bCBsaSB7XG4gICAgd2lkdGg6IDUwJSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDsgfVxuICAuc3ViX21lbnUgdWwgbGk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IG5vbmUgIWltcG9ydGFudDsgfVxuICAucHJvZHVpdCB7XG4gICAgd2lkdGg6IDQ4JSAhaW1wb3J0YW50OyB9IH1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogNTUwcHgpIHtcbiAgZm9vdGVyIC5jb2wge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDsgfVxuICAgIGZvb3RlciAuY29sIC5idG4ge1xuICAgICAgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDtcbiAgICAgIG1hcmdpbjogMjBweCBhdXRvICFpbXBvcnRhbnQ7IH0gfVxuXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0ODBweCkge1xuICAjYmFuZGVhdSAjZmVhdHVyZXMgLmZlYXR1cmUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZmxvYXQ6IG5vbmU7IH1cbiAgI2JvdXRpcXVlcyAuYm91dGlxdWUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuICAjYWN0dWFsaXRlcyBoMiB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXIgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgI2FjdHVhbGl0ZXMgaDI6YWZ0ZXIge1xuICAgICAgbWFyZ2luOiAzMHB4IGF1dG8gNTBweCAhaW1wb3J0YW50OyB9XG4gICNhY3R1YWxpdGVzIGgyICsgLmJ0bl9lbXB0eSB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBtYXJnaW46IDMwcHggYXV0byAhaW1wb3J0YW50O1xuICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgI2FjdHVhbGl0ZXMgLmFjdHUge1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50OyB9XG4gICAgI2FjdHVhbGl0ZXMgLmFjdHUgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTc1cHggIWltcG9ydGFudDtcbiAgICAgIG1heC1oZWlnaHQ6IDE3NXB4ICFpbXBvcnRhbnQ7IH1cbiAgICAjYWN0dWFsaXRlcyAuYWN0dSBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMmVtICFpbXBvcnRhbnQ7IH1cbiAgLmNvbnRlbnRfaW5uZXIge1xuICAgIHBhZGRpbmc6IDIwcHggIWltcG9ydGFudDsgfVxuICAgIC5jb250ZW50X2lubmVyIC5yaWdodF9jb250ZW50IC5jaGFtcC5oYWxmIGxhYmVsIHtcbiAgICAgIGZvbnQtc2l6ZTogMS43NWVtICFpbXBvcnRhbnQ7IH1cbiAgICAuY29udGVudF9pbm5lciAucmlnaHRfY29udGVudCAuY2hhbXAuaGFsZiBzcGFuLnZlbnRlLFxuICAgIC5jb250ZW50X2lubmVyIC5yaWdodF9jb250ZW50IC5jaGFtcC5oYWxmIHNwYW4uYXJyb3csXG4gICAgLmNvbnRlbnRfaW5uZXIgLnJpZ2h0X2NvbnRlbnQgLmNoYW1wLmhhbGYgc3Bhbi5jb21taXNzaW9uIHtcbiAgICAgIGZvbnQtc2l6ZTogNGVtICFpbXBvcnRhbnQ7IH1cbiAgLmNvbnRlbnQgLnN0ZXAgaHIge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuY29udGVudCAuc3RlcCBwIHtcbiAgICBkaXNwbGF5OiBub25lOyB9XG4gIC5zdWJfdGl0bGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAuc3ViX3RpdGxlIHNwYW4ge1xuICAgICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgLnN1Yl90aXRsZSBoMiB7XG4gICAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLnByb2R1aXQge1xuICAgIHdpZHRoOiA5OCUgIWltcG9ydGFudDsgfSB9XG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ2ljb21vb24nO1xuICBzcmM6IHVybChcImZvbnQvZm9udHMvaWNvbW9vbi5lb3Q/cWxhenhlXCIpO1xuICBzcmM6IHVybChcImZvbnQvZm9udHMvaWNvbW9vbi5lb3Q/cWxhenhlI2llZml4XCIpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLCB1cmwoXCJmb250L2ZvbnRzL2ljb21vb24ud29mZjI/cWxhenhlXCIpIGZvcm1hdChcIndvZmYyXCIpLCB1cmwoXCJmb250L2ZvbnRzL2ljb21vb24udHRmP3FsYXp4ZVwiKSBmb3JtYXQoXCJ0cnVldHlwZVwiKSwgdXJsKFwiZm9udC9mb250cy9pY29tb29uLndvZmY/cWxhenhlXCIpIGZvcm1hdChcIndvZmZcIiksIHVybChcImZvbnQvZm9udHMvaWNvbW9vbi5zdmc/cWxhenhlI2ljb21vb25cIikgZm9ybWF0KFwic3ZnXCIpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuW2NsYXNzXj1cImljb24tXCJdLCBbY2xhc3MqPVwiIGljb24tXCJdIHtcbiAgLyogdXNlICFpbXBvcnRhbnQgdG8gcHJldmVudCBpc3N1ZXMgd2l0aCBicm93c2VyIGV4dGVuc2lvbnMgdGhhdCBjaGFuZ2UgZm9udHMgKi9cbiAgZm9udC1mYW1pbHk6ICdpY29tb29uJyAhaW1wb3J0YW50O1xuICBzcGVhazogbm9uZTtcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXZhcmlhbnQ6IG5vcm1hbDtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7IH1cblxuLmljb24tZG93bmxvYWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGRcIjsgfVxuXG4uaWNvbi1hYnN0cmFjdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMFwiOyB9XG5cbi5pY29uLWFycm93X2xlZnQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDFcIjsgfVxuXG4uaWNvbi1hcnJvd19yaWdodDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwMlwiOyB9XG5cbi5pY29uLWRpYW1vbmQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjsgfVxuXG4uaWNvbi1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNFwiOyB9XG5cbi5pY29uLWdlYXJzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA1XCI7IH1cblxuLmljb24tbGlua2VkaW46YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDZcIjsgfVxuXG4uaWNvbi1sb3VwZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiOyB9XG5cbi5pY29uLXBpbGxzOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA4XCI7IH1cblxuLmljb24tcGxhbmU6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDlcIjsgfVxuXG4uaWNvbi10cmFpbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwYVwiOyB9XG5cbi5pY29uLXR3aXR0ZXI6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjsgfVxuXG4uaWNvbi12b2l0dXJlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBjXCI7IH1cblxuLyogXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAuYW5pbWF0ZWQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1pbiB7XG4gIHotaW5kZXg6IDA7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLW91dCB7XG4gIHotaW5kZXg6IDE7IH1cblxuLm93bC1jYXJvdXNlbCAuZmFkZU91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0OyB9XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDEwMCUge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4vKiBcbiAqIFx0T3dsIENhcm91c2VsIC0gQXV0byBIZWlnaHQgUGx1Z2luXG4gKi9cbi5vd2wtaGVpZ2h0IHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tb3otdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAtbXMtdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xuICAtby10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIHRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDsgfVxuXG4vKiBcbiAqICBDb3JlIE93bCBDYXJvdXNlbCBDU1MgRmlsZVxuICovXG4ub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIC1tcy10b3VjaC1hY3Rpb246IHBhbi1ZOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZTphZnRlciB7XG4gIGNvbnRlbnQ6IFwiLlwiO1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgbGluZS1oZWlnaHQ6IDA7XG4gIGhlaWdodDogMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWNvbnRyb2xzIC5vd2wtbmF2IC5vd2wtcHJldixcbi5vd2wtY2Fyb3VzZWwgLm93bC1jb250cm9scyAub3dsLW5hdiAub3dsLW5leHQsXG4ub3dsLWNhcm91c2VsIC5vd2wtY29udHJvbHMgLm93bC1kb3Qge1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGN1cnNvcjogaGFuZDtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRlZCB7XG4gIGRpc3BsYXk6IGJsb2NrOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRpbmcge1xuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBibG9jazsgfVxuXG4ub3dsLWNhcm91c2VsLm93bC1oaWRkZW4ge1xuICBvcGFjaXR5OiAwOyB9XG5cbi5vd2wtY2Fyb3VzZWwgLm93bC1yZWZyZXNoIC5vd2wtaXRlbSB7XG4gIGRpc3BsYXk6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gaW1nIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xuICAtd2Via2l0LXRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7IH1cblxuLm93bC1jYXJvdXNlbC5vd2wtdGV4dC1zZWxlY3Qtb24gLm93bC1pdGVtIHtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogYXV0bztcbiAgLW1vei11c2VyLXNlbGVjdDogYXV0bztcbiAgLW1zLXVzZXItc2VsZWN0OiBhdXRvO1xuICB1c2VyLXNlbGVjdDogYXV0bzsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtZ3JhYiB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogLW8tZ3JhYjtcbiAgY3Vyc29yOiAtbXMtZ3JhYjtcbiAgY3Vyc29yOiBncmFiOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCB7XG4gIGRpcmVjdGlvbjogcnRsOyB9XG5cbi5vd2wtY2Fyb3VzZWwub3dsLXJ0bCAub3dsLWl0ZW0ge1xuICBmbG9hdDogcmlnaHQ7IH1cblxuLyogTm8gSnMgKi9cbi5uby1qcyAub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLyogXG4gKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcge1xuICB0cmFuc2Zvcm0tc3R5bGU6IHByZXNlcnZlLTNkOyB9XG5cbi8qIFxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBoZWlnaHQ6IDgwcHg7XG4gIHdpZHRoOiA4MHB4O1xuICBsZWZ0OiA1MCU7XG4gIHRvcDogNTAlO1xuICBtYXJnaW4tbGVmdDogLTQwcHg7XG4gIG1hcmdpbi10b3A6IC00MHB4O1xuICBiYWNrZ3JvdW5kOiB1cmwoXCJvd2wudmlkZW8ucGxheS5wbmdcIikgbm8tcmVwZWF0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIHotaW5kZXg6IDE7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogc2NhbGUgMTAwbXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7XG4gIC1vLXRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IHNjYWxlIDEwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXktaWNvbjpob3ZlciB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogc2NhbGUoMS4zLCAxLjMpO1xuICAtbW96LXRyYW5zaXRpb246IHNjYWxlKDEuMywgMS4zKTtcbiAgLW1zLXRyYW5zaXRpb246IHNjYWxlKDEuMywgMS4zKTtcbiAgLW8tdHJhbnNpdGlvbjogc2NhbGUoMS4zLCAxLjMpO1xuICB0cmFuc2l0aW9uOiBzY2FsZSgxLjMsIDEuMyk7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10bixcbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgZGlzcGxheTogbm9uZTsgfVxuXG4ub3dsLWNhcm91c2VsIC5vd2wtdmlkZW8tdG4ge1xuICBvcGFjaXR5OiAwO1xuICBoZWlnaHQ6IDEwMCU7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIC13ZWJraXQtYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAtbW96LWJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgLW8tYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICBiYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtbW96LXRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbiAgLW1zLXRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICB0cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7IH1cblxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLWZyYW1lIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB6LWluZGV4OiAxOyB9XG5cbi8qIVxuICogYW5pbWF0ZS5jc3MgLWh0dHA6Ly9kYW5lZGVuLm1lL2FuaW1hdGVcbiAqIFZlcnNpb24gLSAzLjUuMlxuICogTGljZW5zZWQgdW5kZXIgdGhlIE1JVCBsaWNlbnNlIC0gaHR0cDovL29wZW5zb3VyY2Uub3JnL2xpY2Vuc2VzL01JVFxuICpcbiAqIENvcHlyaWdodCAoYykgMjAxNyBEYW5pZWwgRWRlblxuICovXG4uYW5pbWF0ZWQge1xuICBhbmltYXRpb24tZHVyYXRpb246IDFzO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoOyB9XG5cbi5hbmltYXRlZC5pbmZpbml0ZSB7XG4gIGFuaW1hdGlvbi1pdGVyYXRpb24tY291bnQ6IGluZmluaXRlOyB9XG5cbi5hbmltYXRlZC5oaW5nZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7IH1cblxuLmFuaW1hdGVkLmZsaXBPdXRYLFxuLmFuaW1hdGVkLmZsaXBPdXRZLFxuLmFuaW1hdGVkLmJvdW5jZUluLFxuLmFuaW1hdGVkLmJvdW5jZU91dCB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogLjc1czsgfVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZSB7XG4gIGZyb20sIDIwJSwgNTMlLCA4MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIDQwJSwgNDMlIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC43NTUsIDAuMDUsIDAuODU1LCAwLjA2KTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTsgfVxuICA3MCUge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjc1NSwgMC4wNSwgMC44NTUsIDAuMDYpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTE1cHgsIDApOyB9XG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtNHB4LCAwKTsgfSB9XG5cbi5ib3VuY2Uge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlO1xuICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tOyB9XG5cbkBrZXlmcmFtZXMgZmxhc2gge1xuICBmcm9tLCA1MCUsIHRvIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDI1JSwgNzUlIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLmZsYXNoIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoOyB9XG5cbi8qIG9yaWdpbmFsbHkgYXV0aG9yZWQgYnkgTmljayBQZXR0aXQgLSBodHRwczovL2dpdGh1Yi5jb20vbmlja3BldHRpdC9nbGlkZSAqL1xuQGtleWZyYW1lcyBwdWxzZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAxLjA1LCAxLjA1KTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyB9IH1cblxuLnB1bHNlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHB1bHNlOyB9XG5cbkBrZXlmcmFtZXMgcnViYmVyQmFuZCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjI1LCAwLjc1LCAxKTsgfVxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjc1LCAxLjI1LCAxKTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTsgfVxuICA2NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk1LCAxLjA1LCAxKTsgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAwLjk1LCAxKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyB9IH1cblxuLnJ1YmJlckJhbmQge1xuICBhbmltYXRpb24tbmFtZTogcnViYmVyQmFuZDsgfVxuXG5Aa2V5ZnJhbWVzIHNoYWtlIHtcbiAgZnJvbSwgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgMTAlLCAzMCUsIDUwJSwgNzAlLCA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwcHgsIDAsIDApOyB9XG4gIDIwJSwgNDAlLCA2MCUsIDgwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMHB4LCAwLCAwKTsgfSB9XG5cbi5zaGFrZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzaGFrZTsgfVxuXG5Aa2V5ZnJhbWVzIGhlYWRTaGFrZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgNi41JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC02cHgpIHJvdGF0ZVkoLTlkZWcpOyB9XG4gIDE4LjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoNXB4KSByb3RhdGVZKDdkZWcpOyB9XG4gIDMxLjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7IH1cbiAgNDMuNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpIHJvdGF0ZVkoM2RlZyk7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH0gfVxuXG4uaGVhZFNoYWtlIHtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBoZWFkU2hha2U7IH1cblxuQGtleWZyYW1lcyBzd2luZyB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7IH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC0xMGRlZyk7IH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDVkZWcpOyB9XG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMGRlZyk7IH0gfVxuXG4uc3dpbmcge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICBhbmltYXRpb24tbmFtZTogc3dpbmc7IH1cblxuQGtleWZyYW1lcyB0YWRhIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEsIDEsIDEpOyB9XG4gIDEwJSwgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpOyB9XG4gIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOyB9XG4gIDQwJSwgNjAlLCA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjEsIDEuMSwgMS4xKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTsgfSB9XG5cbi50YWRhIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHRhZGE7IH1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5Aa2V5ZnJhbWVzIHdvYmJsZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfVxuICAxNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpOyB9XG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIDNkZWcpOyB9XG4gIDQ1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtM2RlZyk7IH1cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7IH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC01JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTFkZWcpOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4ud29iYmxlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHdvYmJsZTsgfVxuXG5Aa2V5ZnJhbWVzIGplbGxvIHtcbiAgZnJvbSwgMTEuMSUsIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH1cbiAgMjIuMiUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLTEyLjVkZWcpIHNrZXdZKC0xMi41ZGVnKTsgfVxuICAzMy4zJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCg2LjI1ZGVnKSBza2V3WSg2LjI1ZGVnKTsgfVxuICA0NC40JSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7IH1cbiAgNTUuNSUge1xuICAgIHRyYW5zZm9ybTogc2tld1goMS41NjI1ZGVnKSBza2V3WSgxLjU2MjVkZWcpOyB9XG4gIDY2LjYlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjc4MTI1ZGVnKSBza2V3WSgtMC43ODEyNWRlZyk7IH1cbiAgNzcuNyUge1xuICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MmRlZykgc2tld1koMC4zOTA2MmRlZyk7IH1cbiAgODguOCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goLTAuMTk1MzFkZWcpIHNrZXdZKC0wLjE5NTMxZGVnKTsgfSB9XG5cbi5qZWxsbyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBqZWxsbztcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyOyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlSW4ge1xuICBmcm9tLCAyMCUsIDQwJSwgNjAlLCA4MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7IH1cbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSk7IH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7IH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjAzLCAxLjAzLCAxLjAzKTsgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjk3LCAwLjk3LCAwLjk3KTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7IH0gfVxuXG4uYm91bmNlSW4ge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW47IH1cblxuQGtleWZyYW1lcyBib3VuY2VJbkRvd24ge1xuICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTsgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyNXB4LCAwKTsgfVxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOyB9XG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4uYm91bmNlSW5Eb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjsgfVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluTGVmdCB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0zMDAwcHgsIDAsIDApOyB9XG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDI1cHgsIDAsIDApOyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7IH1cbiAgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDVweCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5ib3VuY2VJbkxlZnQge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5MZWZ0OyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEsIDAuMzU1LCAxKTsgfVxuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMzAwMHB4LCAwLCAwKTsgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7IH1cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApOyB9XG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtNXB4LCAwLCAwKTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmJvdW5jZUluUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlSW5SaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluVXAge1xuICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxLCAwLjM1NSwgMSk7IH1cbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7IH1cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwcHgsIDApOyB9XG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsgfVxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH0gfVxuXG4uYm91bmNlSW5VcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwOyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0IHtcbiAgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC45LCAwLjksIDAuOSk7IH1cbiAgNTAlLCA1NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsgfSB9XG5cbi5ib3VuY2VPdXQge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0OyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0RG93biB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMHB4LCAwKTsgfVxuICA0MCUsIDQ1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7IH0gfVxuXG4uYm91bmNlT3V0RG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duOyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0TGVmdCB7XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwcHgsIDAsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7IH0gfVxuXG4uYm91bmNlT3V0TGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRMZWZ0OyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0UmlnaHQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjBweCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApOyB9IH1cblxuLmJvdW5jZU91dFJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFJpZ2h0OyB9XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApOyB9XG4gIDQwJSwgNDUlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjBweCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTsgfSB9XG5cbi5ib3VuY2VPdXRVcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXRVcDsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4uZmFkZUluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5mYWRlSW5Eb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd247IH1cblxuQGtleWZyYW1lcyBmYWRlSW5Eb3duQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5mYWRlSW5Eb3duQmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbkRvd25CaWc7IH1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4uZmFkZUluTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0OyB9XG5cbkBrZXlmcmFtZXMgZmFkZUluTGVmdEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4uZmFkZUluTGVmdEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0QmlnOyB9XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLmZhZGVJblJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblJpZ2h0OyB9XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4uZmFkZUluUmlnaHRCaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7IH1cblxuQGtleWZyYW1lcyBmYWRlSW5VcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAxMDAlLCAwKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7IH0gfVxuXG4uZmFkZUluVXAge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluVXA7IH1cblxuQGtleWZyYW1lcyBmYWRlSW5VcEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTsgfSB9XG5cbi5mYWRlSW5VcEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5VcEJpZzsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLmZhZGVPdXQge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dDsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXREb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOyB9IH1cblxuLmZhZGVPdXREb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duOyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dERvd25CaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTsgfSB9XG5cbi5mYWRlT3V0RG93bkJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bkJpZzsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTsgfSB9XG5cbi5mYWRlT3V0TGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDsgfVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0QmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApOyB9IH1cblxuLmZhZGVPdXRMZWZ0QmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRMZWZ0QmlnOyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApOyB9IH1cblxuLmZhZGVPdXRSaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0UmlnaHQ7IH1cblxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTsgfSB9XG5cbi5mYWRlT3V0UmlnaHRCaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnOyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTsgfSB9XG5cbi5mYWRlT3V0VXAge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFVwOyB9XG5cbkBrZXlmcmFtZXMgZmFkZU91dFVwQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMDAwcHgsIDApOyB9IH1cblxuLmZhZGVPdXRVcEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0VXBCaWc7IH1cblxuQGtleWZyYW1lcyBmbGlwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE5MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7IH1cbiAgNTAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSB0cmFuc2xhdGUzZCgwLCAwLCAxNTBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE3MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsgfVxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoMC45NSwgMC45NSwgMC45NSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsgfSB9XG5cbi5hbmltYXRlZC5mbGlwIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBhbmltYXRpb24tbmFtZTogZmxpcDsgfVxuXG5Aa2V5ZnJhbWVzIGZsaXBJblgge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgMTBkZWcpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtNWRlZyk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOyB9IH1cblxuLmZsaXBJblgge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb24tbmFtZTogZmxpcEluWDsgfVxuXG5Aa2V5ZnJhbWVzIGZsaXBJblkge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCA5MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTIwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluOyB9XG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtNWRlZyk7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpOyB9IH1cblxuLmZsaXBJblkge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb24tbmFtZTogZmxpcEluWTsgfVxuXG5Aa2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7IH1cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAtMjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLmZsaXBPdXRYIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBPdXRYO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50OyB9XG5cbkBrZXlmcmFtZXMgZmxpcE91dFkge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTsgfVxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNWRlZyk7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uZmxpcE91dFkge1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBhbmltYXRpb24tbmFtZTogZmxpcE91dFk7IH1cblxuQGtleWZyYW1lcyBsaWdodFNwZWVkSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDsgfVxuICA2MCUge1xuICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC01ZGVnKTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5saWdodFNwZWVkSW4ge1xuICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZEluO1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDsgfVxuXG5Aa2V5ZnJhbWVzIGxpZ2h0U3BlZWRPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKDMwZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLmxpZ2h0U3BlZWRPdXQge1xuICBhbmltYXRpb24tbmFtZTogbGlnaHRTcGVlZE91dDtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLnJvdGF0ZUluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluOyB9XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5Eb3duTGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTsgfSB9XG5cbi5yb3RhdGVJbkRvd25MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluRG93bkxlZnQ7IH1cblxuQGtleWZyYW1lcyByb3RhdGVJbkRvd25SaWdodCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4ucm90YXRlSW5Eb3duUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlSW5Eb3duUmlnaHQ7IH1cblxuQGtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxOyB9IH1cblxuLnJvdGF0ZUluVXBMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0OyB9XG5cbkBrZXlmcmFtZXMgcm90YXRlSW5VcFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTkwZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4ucm90YXRlSW5VcFJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBSaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlcjtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAyMDBkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4ucm90YXRlT3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA0NWRlZyk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi5yb3RhdGVPdXREb3duTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25SaWdodCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4ucm90YXRlT3V0RG93blJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dERvd25SaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dFVwTGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLnJvdGF0ZU91dFVwTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXRVcExlZnQ7IH1cblxuQGtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwOyB9IH1cblxuLnJvdGF0ZU91dFVwUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIGhpbmdlIHtcbiAgMCUge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHRvcCBsZWZ0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW4tb3V0OyB9XG4gIDIwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDsgfVxuICA0MCUsIDgwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA2MGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogdG9wIGxlZnQ7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbi1vdXQ7XG4gICAgb3BhY2l0eTogMTsgfVxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA3MDBweCwgMCk7XG4gICAgb3BhY2l0eTogMDsgfSB9XG5cbi5oaW5nZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBoaW5nZTsgfVxuXG5Aa2V5ZnJhbWVzIGphY2tJblRoZUJveCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHJvdGF0ZSgzMGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTsgfVxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlKC0xMGRlZyk7IH1cbiAgNzAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzZGVnKTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9IH1cblxuLmphY2tJblRoZUJveCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBqYWNrSW5UaGVCb3g7IH1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5Aa2V5ZnJhbWVzIHJvbGxJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTEyMGRlZyk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lOyB9IH1cblxuLnJvbGxJbiB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb2xsSW47IH1cblxuLyogb3JpZ2luYWxseSBhdXRob3JlZCBieSBOaWNrIFBldHRpdCAtIGh0dHBzOi8vZ2l0aHViLmNvbS9uaWNrcGV0dGl0L2dsaWRlICovXG5Aa2V5ZnJhbWVzIHJvbGxPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTsgfSB9XG5cbi5yb2xsT3V0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvbGxPdXQ7IH1cblxuQGtleWZyYW1lcyB6b29tSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjMsIDAuMywgMC4zKTsgfVxuICA1MCUge1xuICAgIG9wYWNpdHk6IDE7IH0gfVxuXG4uem9vbUluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbjsgfVxuXG5Aa2V5ZnJhbWVzIHpvb21JbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOyB9IH1cblxuLnpvb21JbkRvd24ge1xuICBhbmltYXRpb24tbmFtZTogem9vbUluRG93bjsgfVxuXG5Aa2V5ZnJhbWVzIHpvb21JbkxlZnQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjEsIDAuMSwgMC4xKSB0cmFuc2xhdGUzZCgtMTAwMHB4LCAwLCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDEwcHgsIDAsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOyB9IH1cblxuLnpvb21JbkxlZnQge1xuICBhbmltYXRpb24tbmFtZTogem9vbUluTGVmdDsgfVxuXG5Aa2V5ZnJhbWVzIHpvb21JblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMTAwMHB4LCAwLCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsgfSB9XG5cbi56b29tSW5SaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5SaWdodDsgfVxuXG5Aa2V5ZnJhbWVzIHpvb21JblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsgfSB9XG5cbi56b29tSW5VcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDsgfVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxOyB9XG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4zLCAwLjMsIDAuMyk7IH1cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7IH0gfVxuXG4uem9vbU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0OyB9XG5cbkBrZXlmcmFtZXMgem9vbU91dERvd24ge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDAsIC02MHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXIgYm90dG9tO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjE3NSwgMC44ODUsIDAuMzIsIDEpOyB9IH1cblxuLnpvb21PdXREb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXREb3duOyB9XG5cbkBrZXlmcmFtZXMgem9vbU91dExlZnQge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDAuNDc1LCAwLjQ3NSwgMC40NzUpIHRyYW5zbGF0ZTNkKDQycHgsIDAsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjsgfSB9XG5cbi56b29tT3V0TGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0TGVmdDsgfVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXRSaWdodCB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC40NzUsIDAuNDc1LCAwLjQ3NSkgdHJhbnNsYXRlM2QoLTQycHgsIDAsIDApOyB9XG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoMC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjsgfSB9XG5cbi56b29tT3V0UmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dFJpZ2h0OyB9XG5cbkBrZXlmcmFtZXMgem9vbU91dFVwIHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgwLjQ3NSwgMC40NzUsIDAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NSwgMC4wNTUsIDAuNjc1LCAwLjE5KTsgfVxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC4xLCAwLjEsIDAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyLCAxKTsgfSB9XG5cbi56b29tT3V0VXAge1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dFVwOyB9XG5cbkBrZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9IH1cblxuLnNsaWRlSW5Eb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duOyB9XG5cbkBrZXlmcmFtZXMgc2xpZGVJbkxlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9IH1cblxuLnNsaWRlSW5MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5MZWZ0OyB9XG5cbkBrZXlmcmFtZXMgc2xpZGVJblJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlOyB9XG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9IH1cblxuLnNsaWRlSW5SaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluUmlnaHQ7IH1cblxuQGtleWZyYW1lcyBzbGlkZUluVXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7IH1cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH0gfVxuXG4uc2xpZGVJblVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDsgfVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0RG93biB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7IH1cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApOyB9IH1cblxuLnNsaWRlT3V0RG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZU91dERvd247IH1cblxuQGtleWZyYW1lcyBzbGlkZU91dExlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7IH0gfVxuXG4uc2xpZGVPdXRMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0TGVmdDsgfVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApOyB9XG4gIHRvIHtcbiAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTsgfSB9XG5cbi5zbGlkZU91dFJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7IH1cblxuQGtleWZyYW1lcyBzbGlkZU91dFVwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTsgfVxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApOyB9IH1cblxuLnNsaWRlT3V0VXAge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRVcDsgfVxuXG4uYnRuIHtcbiAgYm9yZGVyOiAycHggc29saWQgIzAwN2JlNDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgcGFkZGluZzogMTVweCAzMHB4O1xuICBmb250LXNpemU6IDEuNzVlbTtcbiAgY29sb3I6ICMwMDdiZTQ7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4uYnRuX3ZvaXJfdG91dCB7XG4gIGRpc3BsYXk6IHRhYmxlO1xuICBtYXJnaW46IDMwcHggYXV0bztcbiAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgY29sb3I6ICM0ZDRkNGQ7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgZm9udC13ZWlnaHQ6IDYwMDtcbiAgZm9udC1zaXplOiAxLjhyZW07XG4gIHBhZGRpbmc6IDIwcHggNDBweDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3M7XG4gIGJvcmRlcjogMXB4IHNvbGlkICM0ZDRkNGQ7XG4gIGxpbmUtaGVpZ2h0OiAxZW07IH1cbiAgLmJ0bl92b2lyX3RvdXQ6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICM5ZDAwMTk7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzlkMDAxOTtcbiAgICBjb2xvcjogI2ZmZjsgfVxuXG4uYnRuX2Zvcm0ge1xuICBtYXJnaW46IDE1cHggYXV0byAwO1xuICBjb2xvcjogIzAwMDAwMCAhaW1wb3J0YW50O1xuICBmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3M7XG4gIGxldHRlci1zcGFjaW5nOiAwLjA1ZW07XG4gIHBhZGRpbmc6IDIwcHggMzBweCAhaW1wb3J0YW50O1xuICBib3JkZXI6IDFweCBzb2xpZCAjMDAwMDAwICFpbXBvcnRhbnQ7IH1cbiAgLmJ0bl9mb3JtOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kOiAjMDAwMDAwICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgIzAwMDAwMCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7IH1cblxuLmxpZW5fZGVmIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBjb2xvcjogIzAwMDAwMDtcbiAgZm9udC1zaXplOiAxLjRyZW07XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cbiAgLmxpZW5fZGVmOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG4gICAgZm9udC1mYW1pbHk6ICdpY29tb29uJztcbiAgICBmb250LXNpemU6IDEuNXJlbTsgfVxuXG4uYnRuX2ZpbGxlZCB7XG4gIHBhZGRpbmc6IDE1cHggMjVweDtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYmFja2dyb3VuZDogI2U2NzQzMTtcbiAgY29sb3I6IHdoaXRlO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBmb250LXdlaWdodDogNTAwO1xuICB0cmFuc2l0aW9uOiBhbGwgMC4xNXMgZWFzZTsgfVxuXG4uYnRuX2ZpbGxlZC5ibHVlIHtcbiAgYmFja2dyb3VuZDogIzIwNDI4NjsgfVxuXG4uYnRuX2ZpbGxlZDpob3ZlciB7XG4gIGNvbG9yOiB3aGl0ZTtcbiAgYmFja2dyb3VuZDogI2ZkYTY0NTsgfVxuXG4uYnRuX2VtcHR5IHtcbiAgcGFkZGluZzogMThweCAzMHB4O1xuICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAzcHggc29saWQgI2U2NzQzMTtcbiAgY29sb3I6ICNlNjc0MzE7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gIGZvbnQtd2VpZ2h0OiA1MDA7XG4gIHRyYW5zaXRpb246IGFsbCAwLjE1cyBlYXNlOyB9XG5cbi5idG5fZW1wdHk6aG92ZXIge1xuICBiYWNrZ3JvdW5kOiAjZTY3NDMxO1xuICBjb2xvcjogd2hpdGU7IH1cblxuLmZlcm1lciB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgei1pbmRleDogNTtcbiAgdG9wOiAxMHB4O1xuICByaWdodDogMTBweDsgfVxuICAuZmVybWVyOjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICdcXGU5MDknO1xuICAgIGZvbnQtZmFtaWx5OiAnaWNvbW9vbic7XG4gICAgZm9udC1zaXplOiAzLjZlbTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGNvbG9yOiAjMDAwMDAwOyB9XG4gIC5mZXJtZXI6aG92ZXI6OmJlZm9yZSB7XG4gICAgY29sb3I6ICMwMDAwMDA7IH1cblxuaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgYnV0dG9uIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICBjb2xvcjogI0ZGRjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBmb250LXNpemU6IDEuOHJlbTtcbiAgcGFkZGluZzogMjBweCAyNXB4O1xuICBiYWNrZ3JvdW5kOiAjZWQzZjNkO1xuICAvKiBPbGQgYnJvd3NlcnMgKi9cbiAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAuM3M7XG4gIGJvcmRlcjogbm9uZTtcbiAgZm9udC13ZWlnaHQ6IDUwMDtcbiAgZm9udC1mYW1pbHk6ICdQb3BwaW5zJywgc2Fucy1zZXJpZjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBsaW5lLWhlaWdodDogMWVtOyB9XG5cbi8qIHJldGFibGlzc2VtZW50IGRlIGwnYXBwYXJhbmNlIGRlcyBzZWxlY3RzIChzdXJ0b3V0IGlvcykgKi9cbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0ge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIC1tb3otYXBwZWFyYW5jZTogbm9uZTtcbiAgYXBwZWFyYW5jZTogbm9uZTsgfVxuXG5mb3JtIHNwYW4uc2VsZWN0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMveDIvcHVjZV9zZWxlY3QucG5nKTtcbiAgYmFja2dyb3VuZC1zaXplOiAzNXB4O1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiByaWdodCBjZW50ZXIgIWltcG9ydGFudDtcbiAgbWFyZ2luOiAxNXB4IDA7XG4gIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgcGFkZGluZzogNXB4OyB9XG4gIGZvcm0gc3Bhbi5zZWxlY3QgPiBzZWxlY3Qge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGhlaWdodDogMzBweDtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgLW1vei1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gICAgYXBwZWFyYW5jZTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICBjb2xvcjogIzAwMDAwMDtcbiAgICBmb250LXNpemU6IDEuNnJlbTsgfVxuXG5pbnB1dFt0eXBlPVwidGV4dFwiXSwgdGV4dGFyZWEsIGlucHV0W3R5cGU9XCJ0ZWxcIl0sIGlucHV0W3R5cGU9XCJlbWFpbFwiXSwgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLCBpbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgYm9yZGVyLXJhZGl1czogMzBweDtcbiAgYm9yZGVyOiAycHggc29saWQgIzFjMzI4NDtcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICBmb250LXNpemU6IDEuNWVtO1xuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbjo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8qIENocm9tZS9PcGVyYS9TYWZhcmkgKi9cbiAgY29sb3I6ICMxYzMyODQ7IH1cblxuOjotbW96LXBsYWNlaG9sZGVyIHtcbiAgLyogRmlyZWZveCAxOSsgKi9cbiAgY29sb3I6ICMxYzMyODQ7IH1cblxuOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7XG4gIC8qIElFIDEwKyAqL1xuICBjb2xvcjogIzFjMzI4NDsgfVxuXG46LW1vei1wbGFjZWhvbGRlciB7XG4gIC8qIEZpcmVmb3ggMTgtICovXG4gIGNvbG9yOiAjMWMzMjg0OyB9XG5cbmlucHV0W3R5cGU9XCJyYWRpb1wiXSB7XG4gIHdpZHRoOiAyNHB4ICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogMjRweCAhaW1wb3J0YW50O1xuICBtYXJnaW46IDAgMTBweCAwIDA7IH1cblxuQG1lZGlhIChtYXgtd2lkdGg6IDY0MHB4KSB7XG4gIGZvcm0gc3Bhbi5zZWxlY3Qge1xuICAgIG1hcmdpbjogNXB4IDA7IH0gfVxuXG4uY2xlYXJmaXgge1xuICBjbGVhcjogYm90aDsgfVxuXG4ubG9nb19zaG93IHtcbiAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbi5kZXJvdWxhbnQuYWN0aWYgLmxvZ29fc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cblxuaGVhZGVyIHtcbiAgcGFkZGluZzogMTVweCA1MHB4OyB9XG4gIGhlYWRlciAubG9nbywgaGVhZGVyIG5hdiwgaGVhZGVyIC5yZWNoZXJjaGUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gIGhlYWRlciAucmVjaGVyY2hlIHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgaGVhZGVyOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjbGVhcjogYm90aDsgfVxuICBoZWFkZXIgLmxvZ28ge1xuICAgIG1hcmdpbi1yaWdodDogMzBweDsgfVxuICBoZWFkZXIgbmF2Lm1lbnUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIGhlYWRlciBuYXYubWVudSB1bCBsaSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgbWFyZ2luOiAwIDEwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAvKiY6YWZ0ZXJ7XG4gICAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgYm90dG9tOjA7XG4gICAgICAgICAgICAgICAgICAgIGxlZnQ6NTAlO1xuICAgICAgICAgICAgICAgICAgICByaWdodDo1MCU7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDoycHg7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IzEyNGU5ZDtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjphbGwgMC4zcyBlYXNlO1xuICAgICAgICAgICAgICAgIH0qLyB9XG4gICAgICBoZWFkZXIgbmF2Lm1lbnUgdWwgbGkgYSB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS44NWVtO1xuICAgICAgICBjb2xvcjogIzEyNGU5ZDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICBib3JkZXItcmFkaXVzOiAzMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICBoZWFkZXIgbmF2Lm1lbnUgdWwgbGkgYTpob3ZlciB7XG4gICAgICAgICAgYmFja2dyb3VuZDogIzEyNGU5ZDtcbiAgICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICAgIGhlYWRlciBuYXYubWVudSB1bCBsaTpob3ZlcjphZnRlciB7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHJpZ2h0OiAwOyB9XG4gIGhlYWRlciAucmVjaGVyY2hlIHtcbiAgICBtYXJnaW4tdG9wOiAzMHB4OyB9XG4gICAgaGVhZGVyIC5yZWNoZXJjaGUgaW5wdXQge1xuICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgYm9yZGVyOiAycHggc29saWQgIzFjMzI4NDtcbiAgICAgIGZvbnQtc2l6ZTogMS4yZW07XG4gICAgICB3aWR0aDogMzAwcHg7XG4gICAgICBjb2xvcjogIzFjMzI4NDsgfVxuICAgIGhlYWRlciAucmVjaGVyY2hlIHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZm9udC1zaXplOiAzZW07XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgY29sb3I6ICMxYzMyODQ7XG4gICAgICBtYXJnaW4tbGVmdDogMTVweDsgfVxuXG4vKkJVUkdFUiovXG4ucGljdG9fbWVudTo6YmVmb3JlIHtcbiAgY29udGVudDogXCJcIjtcbiAgbWF4LXdpZHRoOiAzNXB4O1xuICBoZWlnaHQ6IDRweDtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbi1ib3R0b206IDRweDtcbiAgYmFja2dyb3VuZDogIzBhNTJhMDtcbiAgdHJhbnNpdGlvbjogYWxsIDMwMG1zOyB9XG5cbi5waWN0b19tZW51OjphZnRlciB7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIG1heC13aWR0aDogMzVweDtcbiAgaGVpZ2h0OiA0cHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiA0cHg7XG4gIGJhY2tncm91bmQ6ICMwYTUyYTA7XG4gIHRyYW5zaXRpb246IGFsbCAzMDBtczsgfVxuXG4ucGljdG9fbWVudSBzcGFuIHtcbiAgd2lkdGg6IDI0cHg7XG4gIGhlaWdodDogNHB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICBiYWNrZ3JvdW5kOiAjMGE1MmEwO1xuICB0cmFuc2l0aW9uOiBhbGwgMzAwbXM7IH1cblxuLnBpY3RvX21lbnUge1xuICBmbG9hdDogbGVmdDsgfVxuXG4uYnRuX21lbnUge1xuICBjb2xvcjogIzBhNTJhMDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgZm9udC1zaXplOiAxLjVlbSAhaW1wb3J0YW50O1xuICBsaW5lLWhlaWdodDogMWVtO1xuICBwYWRkaW5nOiAxOHB4IDMwcHg7XG4gIGZsb2F0OiBsZWZ0O1xuICBjdXJzb3I6IHBvaW50ZXI7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7IH1cblxuLypGSU5fQlVSR0VSKi9cbi5kZXJvdWxhbnQge1xuICBsaXN0LXN0eWxlOiBub25lO1xuICB6LWluZGV4OiA5OTk7IH1cbiAgLmRlcm91bGFudCA+IGxpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrOyB9XG4gICAgLmRlcm91bGFudCA+IGxpIGEge1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXM7IH1cbiAgICAuZGVyb3VsYW50ID4gbGkgPiB1bCB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgei1pbmRleDogMztcbiAgICAgIGJhY2tncm91bmQ6ICMwMDZhYjE7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgbWF4LWhlaWdodDogMGVtO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHRyYW5zaXRpb246IDFzIG1heC1oZWlnaHQgMC4zcztcbiAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogMXMgbWF4LWhlaWdodCAwLjNzO1xuICAgICAgLW1vei10cmFuc2l0aW9uOiAxcyBtYXgtaGVpZ2h0IDAuM3M7XG4gICAgICAtby10cmFuc2l0aW9uOiAxcyBtYXgtaGVpZ2h0IDAuM3M7XG4gICAgICAtbXMtdHJhbnNpdGlvbjogMXMgbWF4LWhlaWdodCBub25lOyB9XG4gICAgICAuZGVyb3VsYW50ID4gbGkgPiB1bCA+IGxpIHtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlOyB9XG4gICAgICAgIC5kZXJvdWxhbnQgPiBsaSA+IHVsID4gbGkgYSB7XG4gICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgYmFja2dyb3VuZDogI0RERERERDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogaW5oZXJpdDsgfVxuXG4uZGVyb3VsYW50LmFjdGlmIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgYmFja2dyb3VuZDogd2hpdGU7XG4gIHBhZGRpbmc6IDIwcHg7XG4gIHRvcDogNTVweDsgfVxuICAuZGVyb3VsYW50LmFjdGlmIGxpIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTsgfVxuICAgIC5kZXJvdWxhbnQuYWN0aWYgbGkgYSB7XG4gICAgICBwYWRkaW5nOiAxNXB4IDEwcHg7IH1cblxuLmRlcm91bGFudCA+IGxpOmhvdmVyIHVsIHtcbiAgZGlzcGxheTogYmxvY2s7IH1cblxuLmRlcm91bGFudCA+IGxpID4gdWwgPiBsaSBhOmhvdmVyIHtcbiAgYmFja2dyb3VuZDogIzA3ODVjNTtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICMwNzg1YzU7IH1cblxuZm9vdGVyIHtcbiAgYmFja2dyb3VuZDogI2Q1ZDVkNTtcbiAgcGFkZGluZzogNDBweCAxMyU7IH1cbiAgZm9vdGVyIC5jb2wge1xuICAgIHdpZHRoOiAzMyU7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiB0b3A7XG4gICAgcGFkZGluZzogMCAxNXB4OyB9XG4gICAgZm9vdGVyIC5jb2wgcCB7XG4gICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDIwcHggMCAwOyB9XG4gICAgZm9vdGVyIC5jb2wgaDMge1xuICAgICAgbWFyZ2luOiAyMHB4IDA7IH1cbiAgICBmb290ZXIgLmNvbCAuYnRuIHtcbiAgICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgICAgYmFja2dyb3VuZDogIzAwN2JlNDtcbiAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgIGZvbnQtc2l6ZTogMTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICBtYXJnaW4tdG9wOiAyMHB4OyB9XG4gIGZvb3RlciAuY29sOm50aC1jaGlsZCgyKSB7XG4gICAgcGFkZGluZzogMDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBmb290ZXIgLmNvbDpudGgtY2hpbGQoMikgaW1nIHtcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgd2lkdGg6IDEwMCU7IH1cbiAgZm9vdGVyIC5jb2w6bnRoLWNoaWxkKDMpIHtcbiAgICB0ZXh0LWFsaWduOiByaWdodDsgfVxuICAgIGZvb3RlciAuY29sOm50aC1jaGlsZCgzKSBhIHtcbiAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICBjb2xvcjogIzQ0NDQ0NDtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cbmJvZHkgLmNvbnRlbnQge1xuICBwYWRkaW5nOiAwIDUwcHg7IH1cbiAgYm9keSAuY29udGVudCAuc3ViX3RpdGxlIHtcbiAgICBjb2xvcjogIzEyNGU5ZDtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBtYXJnaW4tYm90dG9tOiA1MHB4OyB9XG4gICAgYm9keSAuY29udGVudCAuc3ViX3RpdGxlIHNwYW4ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiA2ZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgYm9keSAuY29udGVudCAuc3ViX3RpdGxlIGgyIHtcbiAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlOyB9XG5cbmJvZHkucGFnZSAuY29udGVudF90aXRsZSB7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgbWF4LXdpZHRoOiA4OTFweDsgfVxuICBib2R5LnBhZ2UgLmNvbnRlbnRfdGl0bGUgc3BhbiB7XG4gICAgd2lkdGg6IDIyNXB4O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogNGVtO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIGNvbG9yOiAjMTI0ZTlkO1xuICAgIHBhZGRpbmc6IDAgNTBweDsgfVxuICAgIGJvZHkucGFnZSAuY29udGVudF90aXRsZSBzcGFuIHN0cm9uZyB7XG4gICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC01cHg7XG4gICAgICBtYXJnaW46IC0zMHB4IDA7XG4gICAgICBkaXNwbGF5OiBibG9jazsgfVxuICBib2R5LnBhZ2UgLmNvbnRlbnRfdGl0bGUgLmltYWdlX2hvbGRlciB7XG4gICAgd2lkdGg6IDEwMCU7IH1cbiAgYm9keS5wYWdlIC5jb250ZW50X3RpdGxlIC50aXRsZSB7XG4gICAgYmFja2dyb3VuZDogcmdiYSgxOCwgNzgsIDE1NywgMC43NSk7XG4gICAgcGFkZGluZzogMzBweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGNvbG9yOiB3aGl0ZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LXNpemU6IDRlbTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7IH1cblxuYm9keS5wYWdlIC5jb250ZW50IHtcbiAgYmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy9wYXR0ZXJuMS5wbmcpIHRvcCBsZWZ0IG5vLXJlcGVhdDtcbiAgcGFkZGluZzogMCBjYWxjKDUwcHggKyA3JSk7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDclIDEwMHB4OyB9XG4gIGJvZHkucGFnZSAuY29udGVudCAuc3ViX3RpdGxlIHtcbiAgICBmb250LXNpemU6IDEuMjVlbTsgfVxuICAgIGJvZHkucGFnZSAuY29udGVudCAuc3ViX3RpdGxlIGgyIHtcbiAgICAgIGNvbG9yOiAjMTI0ZTlkOyB9XG4gIGJvZHkucGFnZSAuY29udGVudCAuY29udGVudF9pbm5lciB7XG4gICAgcGFkZGluZzogMCAxMCU7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmNvbnRlbnRfaW5uZXIgLm5hdmlnYXRpb24ge1xuICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmNvbnRlbnRfaW5uZXIgLmNvbCB7XG4gICAgICB3aWR0aDogNDYlO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgYm9keS5wYWdlIC5jb250ZW50IC5jb250ZW50X2lubmVyIHAge1xuICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgdGV4dC1hbGlnbjoganVzdGlmeTtcbiAgICAgIGNvbG9yOiAjMTI0ZTlkOyB9XG4gIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IHtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5jYXRlZ29yaWVzIHtcbiAgICAgIGJhY2tncm91bmQ6ICMxMjRlOWQ7XG4gICAgICBjb2xvcjogd2hpdGU7XG4gICAgICBwYWRkaW5nOiAzMHB4IDE1cHg7XG4gICAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmNhdGVnb3JpZXMgaDMge1xuICAgICAgICBjb2xvcjogd2hpdGUgIWltcG9ydGFudDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgcGFkZGluZzogMCAyMHB4OyB9XG4gICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAuY2F0ZWdvcmllcyA+IHVsIHtcbiAgICAgICAgZm9udC1zaXplOiAxLjZlbTsgfVxuICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAuY2F0ZWdvcmllcyA+IHVsID4gbGkgPiBhIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmNhdGVnb3JpZXMgPiB1bCA+IGxpID4gYTpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAjMTI0ZTlkOyB9XG4gICAgICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5jYXRlZ29yaWVzID4gdWwgPiBsaSA+IHVsIHtcbiAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6ICMwZjNkN2I7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7IH1cbiAgICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAuY2F0ZWdvcmllcyA+IHVsID4gbGkgPiB1bCA+IGxpIGEge1xuICAgICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDAuOGVtOyB9XG4gICAgICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAuY2F0ZWdvcmllcyA+IHVsID4gbGkgPiB1bCA+IGxpIGE6aG92ZXIge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuMTUpOyB9XG4gICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCB7XG4gICAgICBwYWRkaW5nOiAwIDUwcHg7IH1cbiAgICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5saXN0aW5nX3Byb2R1aXQgLnJvd19wcm9kdWl0IHtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC13cmFwOiB3cmFwO1xuICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47IH1cbiAgICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCAucm93X3Byb2R1aXQgaDMge1xuICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICAgICAgICBhbGlnbi1pdGVtczogY2VudGVyOyB9XG4gICAgICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCAucm93X3Byb2R1aXQgaDM6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICBoZWlnaHQ6IDFweDtcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogIzIwNDI4NjtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiA1MHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAubGlzdGluZ19wcm9kdWl0IC5yb3dfcHJvZHVpdCAucHJvZHVpdCB7XG4gICAgICAgICAgd2lkdGg6IDI0JTtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAubGlzdGluZ19wcm9kdWl0IC5yb3dfcHJvZHVpdCAucHJvZHVpdCAuaW1hZ2VfaG9sZGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIG1pbi1oZWlnaHQ6IDIzMHB4ICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5saXN0aW5nX3Byb2R1aXQgLnJvd19wcm9kdWl0IC5wcm9kdWl0IC5pbWFnZV9ob2xkZXIgc3BhbiB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTgsIDc4LCAxNTcsIDAuNzUpO1xuICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICByaWdodDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMTBweCAzMHB4O1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICBoZWlnaHQ6IDU5cHg7XG4gICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAgICAgICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCAucm93X3Byb2R1aXQgLnByb2R1aXQgLmltYWdlX2hvbGRlciBzcGFuIHN0cm9uZyB7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtOyB9XG4gICAgICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAubGlzdGluZ19wcm9kdWl0IC5yb3dfcHJvZHVpdCAucHJvZHVpdCAuaW1hZ2VfaG9sZGVyIGltZyB7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIC1vLW9iamVjdC1maXQ6IGNvdmVyO1xuICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjsgfVxuICAgICAgICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5saXN0aW5nX3Byb2R1aXQgLnJvd19wcm9kdWl0IC5wcm9kdWl0IC5kZXNjcmlwdGlvbiB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDMwcHg7IH1cbiAgICAgICAgICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5saXN0aW5nX3Byb2R1aXQgLnJvd19wcm9kdWl0IC5wcm9kdWl0IC5kZXNjcmlwdGlvbiAucXRlIHNwYW4ge1xuICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICBjb2xvcjogIzIwNDI4NjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDQwcHg7IH1cbiAgICAgICAgICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5saXN0aW5nX3Byb2R1aXQgLnJvd19wcm9kdWl0IC5wcm9kdWl0IC5kZXNjcmlwdGlvbiAucXRlIGlucHV0W3R5cGU9XCJudW1iZXJcIl0ge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgIGhlaWdodDogNDNweDtcbiAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgIzIwNDI4NjtcbiAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDEuNWVtO1xuICAgICAgICAgICAgICBtYXgtd2lkdGg6IDUwcHg7XG4gICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgICAgICAgIGJvZHkucGFnZSAuY29udGVudCAubGlzdGluZ19jb250ZW50IC5saXN0aW5nX3Byb2R1aXQgLnJvd19wcm9kdWl0IC5wcm9kdWl0IC5kZXNjcmlwdGlvbiBwIHtcbiAgICAgICAgICAgICAgY29sb3I6ICMzMzMzMzM7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS41ZW07XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjJlbTsgfVxuICAgICAgICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAubGlzdGluZ19wcm9kdWl0IC5yb3dfcHJvZHVpdCAucHJvZHVpdCAuZGVzY3JpcHRpb24gcCBzdHJvbmcge1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkOyB9XG4gICAgICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAubGlzdGluZ19wcm9kdWl0IC5yb3dfcHJvZHVpdCAucHJvZHVpdCAuZGVzY3JpcHRpb24gYSB7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICBjb2xvcjogIzIwNDI4NjtcbiAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbiAgICAgICAgICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCAucm93X3Byb2R1aXQgLnByb2R1aXQgLmRlc2NyaXB0aW9uIGEgc3BhbiB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDMwcHg7IH1cbiAgICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLmxpc3RpbmdfY29udGVudCAubGlzdGluZ19wcm9kdWl0IC5yb3dfcHJvZHVpdCAucHJvZHVpdDphZnRlciB7XG4gICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgIGJvcmRlcjogMHB4IHNvbGlkIHJnYmEoMTgsIDc4LCAxNTcsIDAuMSk7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB6LWluZGV4OiA5O1xuICAgICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgZWFzZS1vdXQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lOyB9XG4gICAgICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5saXN0aW5nX2NvbnRlbnQgLmxpc3RpbmdfcHJvZHVpdCAucm93X3Byb2R1aXQgLnByb2R1aXQ6aG92ZXI6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyOiAxNXB4IHNvbGlkIHJnYmEoMTgsIDc4LCAxNTcsIDAuMSk7IH1cbiAgYm9keS5wYWdlIC5jb250ZW50IC5uYXZpZ2F0aW9uIHtcbiAgICBwYWRkaW5nOiA3MHB4IDEwJTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0biB7XG4gICAgICBtYXJnaW46IDAgNXB4OyB9XG4gICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0biBzcGFuIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDE1cHg7IH1cbiAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0bi5mYWNlYm9vayB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMTI0ZTlkO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjMTI0ZTlkOyB9XG4gICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0bi5mYWNlYm9vayBzcGFuIHtcbiAgICAgICAgY29sb3I6IHdoaXRlOyB9XG4gICAgYm9keS5wYWdlIC5jb250ZW50IC5uYXZpZ2F0aW9uIC5idG4udHdpdHRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjNWRjOWY5O1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgYm9yZGVyLWNvbG9yOiAjNWRjOWY5OyB9XG4gICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0bi50d2l0dGVyIHNwYW4ge1xuICAgICAgICBjb2xvcjogd2hpdGU7IH1cbiAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0bjpmaXJzdC1vZi10eXBlIHtcbiAgICAgIGZsb2F0OiBsZWZ0OyB9XG4gICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0bjpmaXJzdC1vZi10eXBlIHNwYW4ge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7IH1cbiAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0bjpsYXN0LW9mLXR5cGUge1xuICAgICAgZmxvYXQ6IHJpZ2h0OyB9XG4gICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLm5hdmlnYXRpb24gLmJ0bjpsYXN0LW9mLXR5cGUgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMTVweDsgfVxuICBib2R5LnBhZ2UgLmNvbnRlbnQgLnJvd19hY3Rpdml0eSB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuOyB9XG4gICAgYm9keS5wYWdlIC5jb250ZW50IC5yb3dfYWN0aXZpdHkgLmFjdGl2aXR5IHtcbiAgICAgIHdpZHRoOiA0OCU7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBtYXJnaW4tYm90dG9tOiAxMDBweDsgfVxuICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5yb3dfYWN0aXZpdHkgLmFjdGl2aXR5IC5pbWFnZV9ob2xkZXIge1xuICAgICAgICB3aWR0aDogNjAwcHg7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBkaXNwbGF5OiBmbGV4O1xuICAgICAgICBmbGV4OiAxIDAgMDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBtaW4taGVpZ2h0OiA0MDRweDsgfVxuICAgICAgICBib2R5LnBhZ2UgLmNvbnRlbnQgLnJvd19hY3Rpdml0eSAuYWN0aXZpdHkgLmltYWdlX2hvbGRlciBpbWcge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgLW8tb2JqZWN0LWZpdDogY292ZXI7XG4gICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7IH1cbiAgICAgIGJvZHkucGFnZSAuY29udGVudCAucm93X2FjdGl2aXR5IC5hY3Rpdml0eSBwIHtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIHBhZGRpbmc6IDc1cHggNTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxLjc1ZW07XG4gICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgICAgIGNvbG9yOiAjMTI0ZTlkO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICAgIG1heC13aWR0aDogNDMwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMDBweDtcbiAgICAgICAgei1pbmRleDogOTsgfVxuICAgICAgYm9keS5wYWdlIC5jb250ZW50IC5yb3dfYWN0aXZpdHkgLmFjdGl2aXR5IHNwYW4ge1xuICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKDE4LCA3OCwgMTU3LCAwLjc1KTtcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBwYWRkaW5nOiAyMHB4IDUwcHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDc1cHg7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIHotaW5kZXg6IDk7IH1cblxuLmFyaWFuZSB7XG4gIGZvbnQtc2l6ZTogMS42ZW07XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGJhY2tncm91bmQ6ICNmM2Y2ZmE7XG4gIG1hcmdpbjogNTBweDtcbiAgcGFkZGluZzogMjVweDtcbiAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxMTRlOWQ7XG4gIG1hcmdpbjogMHB4IDUwcHggNTBweDsgfVxuICAuYXJpYW5lIC5vdmVyYWxsIHtcbiAgICBwYWRkaW5nOiAxNXB4IDc1cHg7IH1cbiAgLmFyaWFuZSBzcGFuOmxhc3Qtb2YtdHlwZTphZnRlciB7XG4gICAgY29udGVudDogbm9uZTsgfVxuICAuYXJpYW5lIHNwYW46YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiPlwiO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogIzAwN2JlNDtcbiAgICBtYXJnaW46IDAgMTBweDsgfVxuICAuYXJpYW5lIHNwYW4ge1xuICAgIGNvbG9yOiAjMjA0Mjg2OyB9XG4gIC5hcmlhbmUgc3Bhbi5hY3RpZiB7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cblxuI2JhbmRlYXUge1xuICBoZWlnaHQ6IDgyOXB4O1xuICBkaXNwbGF5OiBibG9jaztcbiAgYmFja2dyb3VuZDogIzBhNTJhMDsgfVxuXG5ib2R5LmhvbWUgLnN1Yl9tZW51IC5zdWJfdGl0bGUge1xuICBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi5zdWJfbWVudSB7XG4gIGJhY2tncm91bmQ6ICNlOGYxZmE7IH1cbiAgLnN1Yl9tZW51IHVsIHtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHBhZGRpbmctcmlnaHQ6IDEwJTsgfVxuICAgIC5zdWJfbWVudSB1bCBsaSB7XG4gICAgICBoZWlnaHQ6IDEyMHB4O1xuICAgICAgd2lkdGg6IDEyJTtcbiAgICAgIGJhY2tncm91bmQ6ICMxMjRlOWQ7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgcGFkZGluZzogMjBweCAyMHB4IDIwcHggNjBweDtcbiAgICAgIHRyYW5zaXRpb246IGFsbCAwLjNzIGVhc2U7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7IH1cbiAgICAgIC5zdWJfbWVudSB1bCBsaTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICB3aWR0aDogNDdweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgcmlnaHQ6IC0yNXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjMTE0ZTlkO1xuICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTtcbiAgICAgICAgei1pbmRleDogOTk7IH1cbiAgICAgIC5zdWJfbWVudSB1bCBsaSBzcGFuIHtcbiAgICAgICAgZm9udC1zaXplOiA1ZW07XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogOTk5O1xuICAgICAgICB0cmFuc2l0aW9uOiBhbGwgMC4zcyBlYXNlOyB9XG4gICAgICAuc3ViX21lbnUgdWwgbGkgc3Bhbi5pY29uLXRyYWluLCAuc3ViX21lbnUgdWwgbGkgc3Bhbi5pY29uLXZvaXR1cmUge1xuICAgICAgICBmb250LXNpemU6IDRlbTsgfVxuICAgICAgLnN1Yl9tZW51IHVsIGxpIHNwYW4uaWNvbi10cmFpbiArIHAsIC5zdWJfbWVudSB1bCBsaSBzcGFuLmljb24tdm9pdHVyZSArIHAge1xuICAgICAgICBtYXJnaW4tdG9wOiAxOXB4OyB9XG4gICAgICAuc3ViX21lbnUgdWwgbGkgcCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDk5OTsgfVxuICAgICAgLnN1Yl9tZW51IHVsIGxpOmhvdmVyIHNwYW4ge1xuICAgICAgICB0b3A6IC01cHg7XG4gICAgICAgIHotaW5kZXg6IDk5OyB9XG4gICAgLnN1Yl9tZW51IHVsIGxpLmFlcm9uYXV0aXF1ZTpob3ZlciwgLnN1Yl9tZW51IHVsIGxpLmFlcm9uYXV0aXF1ZTpob3ZlcjpiZWZvcmUsIC5zdWJfbWVudSB1bCBsaS5hZXJvbmF1dGlxdWU6aG92ZXI6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogIzVjOTRjODsgfVxuICAgIC5zdWJfbWVudSB1bCBsaS50cmFpbjpob3ZlciwgLnN1Yl9tZW51IHVsIGxpLnRyYWluOmhvdmVyOmJlZm9yZSwgLnN1Yl9tZW51IHVsIGxpLnRyYWluOmhvdmVyOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICNiM2IwYWI7IH1cbiAgICAuc3ViX21lbnUgdWwgbGkudm9pdHVyZTpob3ZlciwgLnN1Yl9tZW51IHVsIGxpLnZvaXR1cmU6aG92ZXI6YmVmb3JlLCAuc3ViX21lbnUgdWwgbGkudm9pdHVyZTpob3ZlcjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjMWYyODI1OyB9XG4gICAgLnN1Yl9tZW51IHVsIGxpLnBpbGxzOmhvdmVyLCAuc3ViX21lbnUgdWwgbGkucGlsbHM6aG92ZXI6YmVmb3JlLCAuc3ViX21lbnUgdWwgbGkucGlsbHM6aG92ZXI6YWZ0ZXIge1xuICAgICAgYmFja2dyb3VuZDogI2FmMGMzZTsgfVxuICAgIC5zdWJfbWVudSB1bCBsaS5kaWFtb25kOmhvdmVyLCAuc3ViX21lbnUgdWwgbGkuZGlhbW9uZDpob3ZlcjpiZWZvcmUsIC5zdWJfbWVudSB1bCBsaS5kaWFtb25kOmhvdmVyOmFmdGVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICMzNzk1OTE7IH1cbiAgICAuc3ViX21lbnUgdWwgbGkuZ2VhcnM6aG92ZXIsIC5zdWJfbWVudSB1bCBsaS5nZWFyczpob3ZlcjpiZWZvcmUsIC5zdWJfbWVudSB1bCBsaS5nZWFyczpob3ZlcjphZnRlciB7XG4gICAgICBiYWNrZ3JvdW5kOiAjZmRjNTJlOyB9XG4gICAgLnN1Yl9tZW51IHVsIGxpOm50aC1jaGlsZCgyKTpiZWZvcmUge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICB3aWR0aDogNDdweDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IC0yNXB4O1xuICAgICAgYmFja2dyb3VuZDogIzExNGU5ZDtcbiAgICAgIHRyYW5zZm9ybTogc2tld1goMjBkZWcpO1xuICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsgfVxuICAgIC5zdWJfbWVudSB1bCBsaTpmaXJzdC1vZi10eXBlIHtcbiAgICAgIHdpZHRoOiAyNyU7XG4gICAgICBiYWNrZ3JvdW5kOiAjZjNmYWZmO1xuICAgICAgcGFkZGluZzogMjBweCAwOyB9XG4gICAgICAuc3ViX21lbnUgdWwgbGk6Zmlyc3Qtb2YtdHlwZTphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IG5vbmU7IH1cbiAgICAgIC5zdWJfbWVudSB1bCBsaTpmaXJzdC1vZi10eXBlIHNwYW4sIC5zdWJfbWVudSB1bCBsaTpmaXJzdC1vZi10eXBlIGgyIHtcbiAgICAgICAgY29sb3I6ICMxMjRlOWQ7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAgICAgLnN1Yl9tZW51IHVsIGxpOmZpcnN0LW9mLXR5cGUgc3BhbiB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcbiAgICAgICAgZm9udC1zaXplOiA2ZW07XG4gICAgICAgIG1hcmdpbi10b3A6IC0xMHB4OyB9XG4gICAgICAuc3ViX21lbnUgdWwgbGk6Zmlyc3Qtb2YtdHlwZSBoMiB7XG4gICAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgICBtYXJnaW4tdG9wOiAxMHB4OyB9XG5cbi5mZWF0dXJlcyB7XG4gIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiA5NHB4IDA7XG4gIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvcGF0dGVybjEucG5nKSBuby1yZXBlYXQgI2YzZmFmZjtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogNTBweCAwcHg7XG4gIGNsZWFyOiBib3RoOyB9XG4gIC5mZWF0dXJlcyAuc2xpZGVyIHtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWxlZnQ6IDclO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxuICAgIC5mZWF0dXJlcyAuc2xpZGVyIC5jYXJvdXNlbCB7XG4gICAgICB3aWR0aDogNzAlOyB9XG4gICAgLmZlYXR1cmVzIC5zbGlkZXIgLm93bC1pdGVtIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWF4LWhlaWdodDogNTU0cHg7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuOyB9XG4gICAgLmZlYXR1cmVzIC5zbGlkZXIgLm92ZXJhbGxfc2xpZGUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHJpZ2h0OiAwO1xuICAgICAgYm90dG9tOiAwOyB9XG4gICAgICAuZmVhdHVyZXMgLnNsaWRlciAub3ZlcmFsbF9zbGlkZSAubnVtIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogcmdiYSgxOCwgNzgsIDE1NywgMC43NSk7XG4gICAgICAgIHdpZHRoOiAyNjlweDtcbiAgICAgICAgcGFkZGluZzogMHB4IDMwcHg7IH1cbiAgICAgICAgLmZlYXR1cmVzIC5zbGlkZXIgLm92ZXJhbGxfc2xpZGUgLm51bSBzcGFuIHtcbiAgICAgICAgICBmb250LXNpemU6IDE1ZW07XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xMHB4OyB9XG4gICAgLmZlYXR1cmVzIC5zbGlkZXIgLmRlc2NyaXB0aW9uIHtcbiAgICAgIGJhY2tncm91bmQ6IHdoaXRlO1xuICAgICAgd2lkdGg6IDMwJTtcbiAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgICBmb250LXNpemU6IDEuNzVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjVlbTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDk5OTk7XG4gICAgICByaWdodDogMTAwcHg7XG4gICAgICBib3R0b206IDA7XG4gICAgICBjb2xvcjogIzEyNGU5ZDsgfVxuICAgICAgLmZlYXR1cmVzIC5zbGlkZXIgLmRlc2NyaXB0aW9uIHN0cm9uZyB7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBjb2xvcjogIzEyNGU5ZDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4xZW07IH1cbiAgICAuZmVhdHVyZXMgLnNsaWRlciAub3dsLWNvbnRyb2xzIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDI2OXB4OyB9XG4gICAgICAuZmVhdHVyZXMgLnNsaWRlciAub3dsLWNvbnRyb2xzIC5vd2wtcHJldiB7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3ByZXYuanBnKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgICAuZmVhdHVyZXMgLnNsaWRlciAub3dsLWNvbnRyb2xzIC5vd2wtbmV4dCB7XG4gICAgICAgIGhlaWdodDogODBweDtcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICAgIHRleHQtaW5kZW50OiAtOTk5OXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL25leHQuanBnKTtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG5cbi5oaWdobGlnaHQge1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3BhdHRlcm4zLnBuZykgbm8tcmVwZWF0ICNmM2ZhZmY7XG4gIGJhY2tncm91bmQtcG9zaXRpb246IDE1JSAtMjVweDtcbiAgcGFkZGluZzogMCA3JSA1MHB4O1xuICBkaXNwbGF5OiBibG9jazsgfVxuICAuaGlnaGxpZ2h0IC5sZWZ0LCAuaGlnaGxpZ2h0IC5yaWdodCB7XG4gICAgd2lkdGg6IDUwJTsgfVxuICAuaGlnaGxpZ2h0IHAge1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIG1hcmdpbjogMCBhdXRvO1xuICAgIG1heC13aWR0aDogNDUwcHg7XG4gICAgcGFkZGluZzogNTBweDtcbiAgICBmb250LXNpemU6IDEuNzVlbTtcbiAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgei1pbmRleDogOTk5OTtcbiAgICBjb2xvcjogIzEyNGU5ZDsgfVxuICAgIC5oaWdobGlnaHQgcCBzdHJvbmcge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgY29sb3I6ICMxMjRlOWQ7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG4gICAgICBmb250LXNpemU6IDJlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjFlbTsgfVxuICAuaGlnaGxpZ2h0IGlmcmFtZSB7XG4gICAgbWF4LXdpZHRoOiAxMDAlOyB9XG5cbi5hY3R1YWxpdGVzIHtcbiAgcGFkZGluZzogNTBweCAwO1xuICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3BhdHRlcm40LnBuZykgcmlnaHQgbm8tcmVwZWF0OyB9XG4gIC5hY3R1YWxpdGVzIC5zdWJfdGl0bGUge1xuICAgIGNvbG9yOiAjMTI0ZTlkO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIG1hcmdpbi1ib3R0b206IDUwcHg7IH1cbiAgICAuYWN0dWFsaXRlcyAuc3ViX3RpdGxlIHNwYW4ge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgZm9udC1zaXplOiA2ZW07XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlOyB9XG4gICAgLmFjdHVhbGl0ZXMgLnN1Yl90aXRsZSBoMiB7XG4gICAgICBmb250LXNpemU6IDNlbTtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuICAuYWN0dWFsaXRlcyAuYnRuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgLmFjdHVhbGl0ZXMgLmFjdHVfd3JhcHBlciB7XG4gICAgZGlzcGxheTogZmxleDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG4gICAgZmxleC13cmFwOiB3cmFwOyB9XG4gICAgLmFjdHVhbGl0ZXMgLmFjdHVfd3JhcHBlciAuYWN0dSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMzElO1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgIG1hcmdpbjogMzBweCAwOyB9XG4gICAgICAuYWN0dWFsaXRlcyAuYWN0dV93cmFwcGVyIC5hY3R1IC5pbWFnZV9ob2xkZXIge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgZGlzcGxheTogZ3JpZDsgfVxuICAgICAgICAuYWN0dWFsaXRlcyAuYWN0dV93cmFwcGVyIC5hY3R1IC5pbWFnZV9ob2xkZXIgaW1nIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTsgfVxuICAgICAgLmFjdHVhbGl0ZXMgLmFjdHVfd3JhcHBlciAuYWN0dSAuZGF0ZSB7XG4gICAgICAgIHdpZHRoOiAyOCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICByaWdodDogMDtcbiAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICBtaW4td2lkdGg6IDEyMnB4O1xuICAgICAgICBwYWRkaW5nOiAxMHB4IDMwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTgsIDc4LCAxNTcsIDAuNzUpO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbiAgICAgICAgLmFjdHVhbGl0ZXMgLmFjdHVfd3JhcHBlciAuYWN0dSAuZGF0ZSBzdHJvbmcge1xuICAgICAgICAgIGZvbnQtc2l6ZTogN2VtO1xuICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LXdlaWdodDogODAwO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xNnB4OyB9XG4gICAgICAgIC5hY3R1YWxpdGVzIC5hY3R1X3dyYXBwZXIgLmFjdHUgLmRhdGUgc3BhbiB7XG4gICAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7IH1cbiAgICAgIC5hY3R1YWxpdGVzIC5hY3R1X3dyYXBwZXIgLmFjdHUgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgcGFkZGluZzogMzBweDtcbiAgICAgICAgbWluLWhlaWdodDogMTc0cHg7XG4gICAgICAgIHdpZHRoOiA3MiU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuM3MgZWFzZTsgfVxuICAgICAgICAuYWN0dWFsaXRlcyAuYWN0dV93cmFwcGVyIC5hY3R1IC5kZXNjcmlwdGlvbiBoMyB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgIGNvbG9yOiAjMDA3YmU0OyB9XG4gICAgICAgIC5hY3R1YWxpdGVzIC5hY3R1X3dyYXBwZXIgLmFjdHUgLmRlc2NyaXB0aW9uIHAge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgIC5hY3R1YWxpdGVzIC5hY3R1X3dyYXBwZXIgLmFjdHU6aG92ZXIgLmRlc2NyaXB0aW9uIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7IH1cblxuLmNhdGFsb2d1ZSB7XG4gIHBhZGRpbmc6IDAgNyU7IH1cbiAgLmNhdGFsb2d1ZSAuaW1hZ2VfaG9sZGVyIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7IH1cbiAgICAuY2F0YWxvZ3VlIC5pbWFnZV9ob2xkZXIgaW1nIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTsgfVxuICAgIC5jYXRhbG9ndWUgLmltYWdlX2hvbGRlcjphZnRlciB7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIGJvdHRvbTogLTUwcHg7XG4gICAgICByaWdodDogMDtcbiAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKDE4LCA3OCwgMTU3LCAwLjc1KTsgfVxuICAuY2F0YWxvZ3VlIC5idG4ge1xuICAgIGJhY2tncm91bmQ6ICMwMDdiZTQ7XG4gICAgY29sb3I6IHdoaXRlO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIG1hcmdpbjogMCBhdXRvOyB9XG4gIC5jYXRhbG9ndWUgLmRlc2NyaXB0aW9uIHtcbiAgICBwYWRkaW5nOiAwIDc1cHggNTBweDtcbiAgICBtYXgtd2lkdGg6IDgxNXB4O1xuICAgIG1hcmdpbjogLTM1MHB4IGF1dG8gMDtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogd2hpdGU7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlOyB9XG4gICAgLmNhdGFsb2d1ZSAuZGVzY3JpcHRpb24gaDIge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogMy41ZW07IH1cbiAgICAuY2F0YWxvZ3VlIC5kZXNjcmlwdGlvbiBwIHtcbiAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xuICAgICAgY29sb3I6ICMxMjRlOWQ7XG4gICAgICBsaW5lLWhlaWdodDogMS41ZW07XG4gICAgICBtYXJnaW46IDUwcHggMDsgfVxuIiwiLyogXG4gKiAgT3dsIENhcm91c2VsIC0gQW5pbWF0ZSBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAuYW5pbWF0ZWQge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMTAwMG1zO1xuICBhbmltYXRpb24tZHVyYXRpb246IDEwMDBtcztcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xuICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLWFuaW1hdGVkLWluIHtcbiAgei1pbmRleDogMDtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1hbmltYXRlZC1vdXQge1xuICB6LWluZGV4OiAxO1xufVxuLm93bC1jYXJvdXNlbCAuZmFkZU91dCB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0O1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgZmFkZU91dCB7XG4gIDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMTAwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuQGtleWZyYW1lcyBmYWRlT3V0IHtcbiAgMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICAxMDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi8qIFxuICogXHRPd2wgQ2Fyb3VzZWwgLSBBdXRvIEhlaWdodCBQbHVnaW5cbiAqL1xuLm93bC1oZWlnaHQge1xuICAtd2Via2l0LXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbiAgLW1vei10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1tcy10cmFuc2l0aW9uOiBoZWlnaHQgNTAwbXMgZWFzZS1pbi1vdXQ7XG4gIC1vLXRyYW5zaXRpb246IGhlaWdodCA1MDBtcyBlYXNlLWluLW91dDtcbiAgdHJhbnNpdGlvbjogaGVpZ2h0IDUwMG1zIGVhc2UtaW4tb3V0O1xufVxuXG4vKiBcbiAqICBDb3JlIE93bCBDYXJvdXNlbCBDU1MgRmlsZVxuICovXG4ub3dsLWNhcm91c2VsIHtcbiAgZGlzcGxheTogbm9uZTtcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIC8qIHBvc2l0aW9uIHJlbGF0aXZlIGFuZCB6LWluZGV4IGZpeCB3ZWJraXQgcmVuZGVyaW5nIGZvbnRzIGlzc3VlICovXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1zdGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLW1zLXRvdWNoLWFjdGlvbjogcGFuLVk7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2U6YWZ0ZXIge1xuICBjb250ZW50OiBcIi5cIjtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGNsZWFyOiBib3RoO1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBoZWlnaHQ6IDA7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtc3RhZ2Utb3V0ZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIC8qIGZpeCBmb3IgZmxhc2hpbmcgYmFja2dyb3VuZCAqL1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMHB4LCAwcHgsIDBweCk7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtY29udHJvbHMgLm93bC1uYXYgLm93bC1wcmV2LFxuLm93bC1jYXJvdXNlbCAub3dsLWNvbnRyb2xzIC5vd2wtbmF2IC5vd2wtbmV4dCxcbi5vd2wtY2Fyb3VzZWwgLm93bC1jb250cm9scyAub3dsLWRvdCB7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgY3Vyc29yOiBoYW5kO1xuICAtd2Via2l0LXVzZXItc2VsZWN0OiBub25lO1xuICAta2h0bWwtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4ub3dsLWNhcm91c2VsLm93bC1sb2FkZWQge1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5vd2wtY2Fyb3VzZWwub3dsLWxvYWRpbmcge1xuICBvcGFjaXR5OiAwO1xuICBkaXNwbGF5OiBibG9jaztcbn1cbi5vd2wtY2Fyb3VzZWwub3dsLWhpZGRlbiB7XG4gIG9wYWNpdHk6IDA7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtcmVmcmVzaCAub3dsLWl0ZW0ge1xuICBkaXNwbGF5OiBub25lO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgZmxvYXQ6IGxlZnQ7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogaGlkZGVuO1xuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAtd2Via2l0LXRvdWNoLWNhbGxvdXQ6IG5vbmU7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tb3otdXNlci1zZWxlY3Q6IG5vbmU7XG4gIC1tcy11c2VyLXNlbGVjdDogbm9uZTtcbiAgdXNlci1zZWxlY3Q6IG5vbmU7XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtaXRlbSBpbWcge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG4gIC13ZWJraXQtdHJhbnNmb3JtLXN0eWxlOiBwcmVzZXJ2ZS0zZDtcbn1cbi5vd2wtY2Fyb3VzZWwub3dsLXRleHQtc2VsZWN0LW9uIC5vd2wtaXRlbSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6IGF1dG87XG4gIC1tb3otdXNlci1zZWxlY3Q6IGF1dG87XG4gIC1tcy11c2VyLXNlbGVjdDogYXV0bztcbiAgdXNlci1zZWxlY3Q6IGF1dG87XG59XG4ub3dsLWNhcm91c2VsIC5vd2wtZ3JhYiB7XG4gIGN1cnNvcjogbW92ZTtcbiAgY3Vyc29yOiAtd2Via2l0LWdyYWI7XG4gIGN1cnNvcjogLW8tZ3JhYjtcbiAgY3Vyc29yOiAtbXMtZ3JhYjtcbiAgY3Vyc29yOiBncmFiO1xufVxuLm93bC1jYXJvdXNlbC5vd2wtcnRsIHtcbiAgZGlyZWN0aW9uOiBydGw7XG59XG4ub3dsLWNhcm91c2VsLm93bC1ydGwgLm93bC1pdGVtIHtcbiAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4vKiBObyBKcyAqL1xuLm5vLWpzIC5vd2wtY2Fyb3VzZWwge1xuICBkaXNwbGF5OiBibG9jaztcbn1cblxuLyogXG4gKiBcdE93bCBDYXJvdXNlbCAtIExhenkgTG9hZCBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLWl0ZW0gLm93bC1sYXp5IHtcbiAgb3BhY2l0eTogMDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC1pdGVtIGltZyB7XG4gIHRyYW5zZm9ybS1zdHlsZTogcHJlc2VydmUtM2Q7XG59XG5cbi8qIFxuICogXHRPd2wgQ2Fyb3VzZWwgLSBWaWRlbyBQbHVnaW5cbiAqL1xuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXdyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZDogIzAwMDtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb24ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGhlaWdodDogODBweDtcbiAgd2lkdGg6IDgwcHg7XG4gIGxlZnQ6IDUwJTtcbiAgdG9wOiA1MCU7XG4gIG1hcmdpbi1sZWZ0OiAtNDBweDtcbiAgbWFyZ2luLXRvcDogLTQwcHg7XG4gIGJhY2tncm91bmQ6IHVybChcIm93bC52aWRlby5wbGF5LnBuZ1wiKSBuby1yZXBlYXQ7XG4gIGN1cnNvcjogcG9pbnRlcjtcbiAgei1pbmRleDogMTtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiBoaWRkZW47XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogc2NhbGUgMTAwbXMgZWFzZTtcbiAgLW1vei10cmFuc2l0aW9uOiBzY2FsZSAxMDBtcyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogc2NhbGUgMTAwbXMgZWFzZTtcbiAgLW8tdHJhbnNpdGlvbjogc2NhbGUgMTAwbXMgZWFzZTtcbiAgdHJhbnNpdGlvbjogc2NhbGUgMTAwbXMgZWFzZTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5LWljb246aG92ZXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IHNjYWxlKDEuMywgMS4zKTtcbiAgLW1vei10cmFuc2l0aW9uOiBzY2FsZSgxLjMsIDEuMyk7XG4gIC1tcy10cmFuc2l0aW9uOiBzY2FsZSgxLjMsIDEuMyk7XG4gIC1vLXRyYW5zaXRpb246IHNjYWxlKDEuMywgMS4zKTtcbiAgdHJhbnNpdGlvbjogc2NhbGUoMS4zLCAxLjMpO1xufVxuLm93bC1jYXJvdXNlbCAub3dsLXZpZGVvLXBsYXlpbmcgLm93bC12aWRlby10bixcbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1wbGF5aW5nIC5vd2wtdmlkZW8tcGxheS1pY29uIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby10biB7XG4gIG9wYWNpdHk6IDA7XG4gIGhlaWdodDogMTAwJTtcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyIGNlbnRlcjtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgLXdlYmtpdC1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIC1tb3otYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAtby1iYWNrZ3JvdW5kLXNpemU6IGNvbnRhaW47XG4gIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIC1tb3otdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtbXMtdHJhbnNpdGlvbjogb3BhY2l0eSA0MDBtcyBlYXNlO1xuICAtby10cmFuc2l0aW9uOiBvcGFjaXR5IDQwMG1zIGVhc2U7XG4gIHRyYW5zaXRpb246IG9wYWNpdHkgNDAwbXMgZWFzZTtcbn1cbi5vd2wtY2Fyb3VzZWwgLm93bC12aWRlby1mcmFtZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgei1pbmRleDogMTtcbn1cbiIsIkBjaGFyc2V0IFwiVVRGLThcIjtcblxuLyohXG4gKiBhbmltYXRlLmNzcyAtaHR0cDovL2RhbmVkZW4ubWUvYW5pbWF0ZVxuICogVmVyc2lvbiAtIDMuNS4yXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2UgLSBodHRwOi8vb3BlbnNvdXJjZS5vcmcvbGljZW5zZXMvTUlUXG4gKlxuICogQ29weXJpZ2h0IChjKSAyMDE3IERhbmllbCBFZGVuXG4gKi9cblxuLmFuaW1hdGVkIHtcbiAgYW5pbWF0aW9uLWR1cmF0aW9uOiAxcztcbiAgYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbn1cblxuLmFuaW1hdGVkLmluZmluaXRlIHtcbiAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG59XG5cbi5hbmltYXRlZC5oaW5nZSB7XG4gIGFuaW1hdGlvbi1kdXJhdGlvbjogMnM7XG59XG5cbi5hbmltYXRlZC5mbGlwT3V0WCxcbi5hbmltYXRlZC5mbGlwT3V0WSxcbi5hbmltYXRlZC5ib3VuY2VJbixcbi5hbmltYXRlZC5ib3VuY2VPdXQge1xuICBhbmltYXRpb24tZHVyYXRpb246IC43NXM7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlIHtcbiAgZnJvbSwgMjAlLCA1MyUsIDgwJSwgdG8ge1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gIH1cblxuICA0MCUsIDQzJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0zMHB4LCAwKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNzU1LCAwLjA1MCwgMC44NTUsIDAuMDYwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xNXB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLC00cHgsMCk7XG4gIH1cbn1cblxuLmJvdW5jZSB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2U7XG4gIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG59XG5cbkBrZXlmcmFtZXMgZmxhc2gge1xuICBmcm9tLCA1MCUsIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgMjUlLCA3NSUge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZsYXNoIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsYXNoO1xufVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cblxuQGtleWZyYW1lcyBwdWxzZSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDUsIDEuMDUsIDEuMDUpO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuXG4ucHVsc2Uge1xuICBhbmltYXRpb24tbmFtZTogcHVsc2U7XG59XG5cbkBrZXlmcmFtZXMgcnViYmVyQmFuZCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMjUsIDAuNzUsIDEpO1xuICB9XG5cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMC43NSwgMS4yNSwgMSk7XG4gIH1cblxuICA1MCUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjE1LCAwLjg1LCAxKTtcbiAgfVxuXG4gIDY1JSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45NSwgMS4wNSwgMSk7XG4gIH1cblxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLjA1LCAuOTUsIDEpO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuXG4ucnViYmVyQmFuZCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBydWJiZXJCYW5kO1xufVxuXG5Aa2V5ZnJhbWVzIHNoYWtlIHtcbiAgZnJvbSwgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICAxMCUsIDMwJSwgNTAlLCA3MCUsIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIH1cblxuICAyMCUsIDQwJSwgNjAlLCA4MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIH1cbn1cblxuLnNoYWtlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNoYWtlO1xufVxuXG5Aa2V5ZnJhbWVzIGhlYWRTaGFrZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gIH1cblxuICA2LjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTZweCkgcm90YXRlWSgtOWRlZyk7XG4gIH1cblxuICAxOC41JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDVweCkgcm90YXRlWSg3ZGVnKTtcbiAgfVxuXG4gIDMxLjUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCkgcm90YXRlWSgtNWRlZyk7XG4gIH1cblxuICA0My41JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDJweCkgcm90YXRlWSgzZGVnKTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICB9XG59XG5cbi5oZWFkU2hha2Uge1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgYW5pbWF0aW9uLW5hbWU6IGhlYWRTaGFrZTtcbn1cblxuQGtleWZyYW1lcyBzd2luZyB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAxNWRlZyk7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTEwZGVnKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCA1ZGVnKTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAwZGVnKTtcbiAgfVxufVxuXG4uc3dpbmcge1xuICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgY2VudGVyO1xuICBhbmltYXRpb24tbmFtZTogc3dpbmc7XG59XG5cbkBrZXlmcmFtZXMgdGFkYSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxuXG4gIDEwJSwgMjAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICB9XG5cbiAgMzAlLCA1MCUsIDcwJSwgOTAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gIH1cblxuICA0MCUsIDYwJSwgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMS4xLCAxLjEsIDEuMSkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCgxLCAxLCAxKTtcbiAgfVxufVxuXG4udGFkYSB7XG4gIGFuaW1hdGlvbi1uYW1lOiB0YWRhO1xufVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cblxuQGtleWZyYW1lcyB3b2JibGUge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAxNSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTI1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTVkZWcpO1xuICB9XG5cbiAgMzAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDIwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgM2RlZyk7XG4gIH1cblxuICA0NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTE1JSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgLTNkZWcpO1xuICB9XG5cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMmRlZyk7XG4gIH1cblxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTUlLCAwLCAwKSByb3RhdGUzZCgwLCAwLCAxLCAtMWRlZyk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi53b2JibGUge1xuICBhbmltYXRpb24tbmFtZTogd29iYmxlO1xufVxuXG5Aa2V5ZnJhbWVzIGplbGxvIHtcbiAgZnJvbSwgMTEuMSUsIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cblxuICAyMi4yJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMTIuNWRlZykgc2tld1koLTEyLjVkZWcpO1xuICB9XG5cbiAgMzMuMyUge1xuICAgIHRyYW5zZm9ybTogc2tld1goNi4yNWRlZykgc2tld1koNi4yNWRlZyk7XG4gIH1cblxuICA0NC40JSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMy4xMjVkZWcpIHNrZXdZKC0zLjEyNWRlZyk7XG4gIH1cblxuICA1NS41JSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgxLjU2MjVkZWcpIHNrZXdZKDEuNTYyNWRlZyk7XG4gIH1cblxuICA2Ni42JSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtMC43ODEyNWRlZykgc2tld1koLTAuNzgxMjVkZWcpO1xuICB9XG5cbiAgNzcuNyUge1xuICAgIHRyYW5zZm9ybTogc2tld1goMC4zOTA2MjVkZWcpIHNrZXdZKDAuMzkwNjI1ZGVnKTtcbiAgfVxuXG4gIDg4LjglIHtcbiAgICB0cmFuc2Zvcm06IHNrZXdYKC0wLjE5NTMxMjVkZWcpIHNrZXdZKC0wLjE5NTMxMjVkZWcpO1xuICB9XG59XG5cbi5qZWxsbyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBqZWxsbztcbiAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluIHtcbiAgZnJvbSwgMjAlLCA0MCUsIDYwJSwgODAlLCB0byB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgfVxuXG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMywgLjMsIC4zKTtcbiAgfVxuXG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICB9XG5cbiAgNDAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjksIC45LCAuOSk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMDMsIDEuMDMsIDEuMDMpO1xuICB9XG5cbiAgODAlIHtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjk3LCAuOTcsIC45Nyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoMSwgMSwgMSk7XG4gIH1cbn1cblxuLmJvdW5jZUluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluO1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZUluRG93biB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICB9XG5cbiAgMCUge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMzAwMHB4LCAwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDI1cHgsIDApO1xuICB9XG5cbiAgNzUlIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMHB4LCAwKTtcbiAgfVxuXG4gIDkwJSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCA1cHgsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uYm91bmNlSW5Eb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluRG93bjtcbn1cblxuQGtleWZyYW1lcyBib3VuY2VJbkxlZnQge1xuICBmcm9tLCA2MCUsIDc1JSwgOTAlLCB0byB7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgfVxuXG4gIDAlIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTMwMDBweCwgMCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyNXB4LCAwLCAwKTtcbiAgfVxuXG4gIDc1JSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTBweCwgMCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoNXB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmJvdW5jZUluTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJbkxlZnQ7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5SaWdodCB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICB9XG5cbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDMwMDBweCwgMCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMjVweCwgMCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTVweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5ib3VuY2VJblJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZUluUmlnaHQ7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlSW5VcCB7XG4gIGZyb20sIDYwJSwgNzUlLCA5MCUsIHRvIHtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICB9XG5cbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDMwMDBweCwgMCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjBweCwgMCk7XG4gIH1cblxuICA3NSUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gIH1cblxuICA5MCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTVweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uYm91bmNlSW5VcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VJblVwO1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dCB7XG4gIDIwJSB7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC45LCAuOSwgLjkpO1xuICB9XG5cbiAgNTAlLCA1NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKDEuMSwgMS4xLCAxLjEpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICB9XG59XG5cbi5ib3VuY2VPdXQge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dERvd24ge1xuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTBweCwgMCk7XG4gIH1cblxuICA0MCUsIDQ1JSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0yMHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uYm91bmNlT3V0RG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiBib3VuY2VPdXREb3duO1xufVxuXG5Aa2V5ZnJhbWVzIGJvdW5jZU91dExlZnQge1xuICAyMCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMHB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dExlZnQge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0TGVmdDtcbn1cblxuQGtleWZyYW1lcyBib3VuY2VPdXRSaWdodCB7XG4gIDIwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMHB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxufVxuXG4uYm91bmNlT3V0UmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogYm91bmNlT3V0UmlnaHQ7XG59XG5cbkBrZXlmcmFtZXMgYm91bmNlT3V0VXAge1xuICAyMCUge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwcHgsIDApO1xuICB9XG5cbiAgNDAlLCA0NSUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAyMHB4LCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gIH1cbn1cblxuLmJvdW5jZU91dFVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGJvdW5jZU91dFVwO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4uZmFkZUluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJbjtcbn1cblxuQGtleWZyYW1lcyBmYWRlSW5Eb3duIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uZmFkZUluRG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5Eb3duO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkRvd25CaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmZhZGVJbkRvd25CaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluRG93bkJpZztcbn1cblxuQGtleWZyYW1lcyBmYWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0xMDAlLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uZmFkZUluTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlSW5MZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJbkxlZnRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTIwMDBweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmZhZGVJbkxlZnRCaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluTGVmdEJpZztcbn1cblxuQGtleWZyYW1lcyBmYWRlSW5SaWdodCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uZmFkZUluUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHQ7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluUmlnaHRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMjAwMHB4LCAwLCAwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgfVxufVxuXG4uZmFkZUluUmlnaHRCaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZUluUmlnaHRCaWc7XG59XG5cbkBrZXlmcmFtZXMgZmFkZUluVXAge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMTAwJSwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmZhZGVJblVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVJblVwQmlnIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gIH1cbn1cblxuLmZhZGVJblVwQmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVJblVwQmlnO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmZhZGVPdXQge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dDtcbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0RG93biB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0RG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0RG93bjtcbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0RG93bkJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDIwMDBweCwgMCk7XG4gIH1cbn1cblxuLmZhZGVPdXREb3duQmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXREb3duQmlnO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRMZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0TGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdDtcbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0TGVmdEJpZyB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKC0yMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0TGVmdEJpZyB7XG4gIGFuaW1hdGlvbi1uYW1lOiBmYWRlT3V0TGVmdEJpZztcbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRSaWdodDtcbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0UmlnaHRCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICB9XG59XG5cbi5mYWRlT3V0UmlnaHRCaWcge1xuICBhbmltYXRpb24tbmFtZTogZmFkZU91dFJpZ2h0QmlnO1xufVxuXG5Aa2V5ZnJhbWVzIGZhZGVPdXRVcCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcDtcbn1cblxuQGtleWZyYW1lcyBmYWRlT3V0VXBCaWcge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAtMjAwMHB4LCAwKTtcbiAgfVxufVxuXG4uZmFkZU91dFVwQmlnIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGZhZGVPdXRVcEJpZztcbn1cblxuQGtleWZyYW1lcyBmbGlwIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTM2MGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHRyYW5zbGF0ZTNkKDAsIDAsIDE1MHB4KSByb3RhdGUzZCgwLCAxLCAwLCAtMTkwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLW91dDtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgdHJhbnNsYXRlM2QoMCwgMCwgMTUwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0xNzBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHNjYWxlM2QoLjk1LCAuOTUsIC45NSk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG59XG5cbi5hbmltYXRlZC5mbGlwIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlO1xuICBhbmltYXRpb24tbmFtZTogZmxpcDtcbn1cblxuQGtleWZyYW1lcyBmbGlwSW5YIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgOTBkZWcpO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2UtaW47XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDQwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTIwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICB9XG5cbiAgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCAxMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMSwgMCwgMCwgLTVkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpO1xuICB9XG59XG5cbi5mbGlwSW5YIHtcbiAgLXdlYmtpdC1iYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGJhY2tmYWNlLXZpc2liaWxpdHk6IHZpc2libGUgIWltcG9ydGFudDtcbiAgYW5pbWF0aW9uLW5hbWU6IGZsaXBJblg7XG59XG5cbkBrZXlmcmFtZXMgZmxpcEluWSB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICA0MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC0yMGRlZyk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgMTBkZWcpO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICA4MCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIC01ZGVnKTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxufVxuXG4uZmxpcEluWSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwSW5ZO1xufVxuXG5Aa2V5ZnJhbWVzIGZsaXBPdXRYIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCk7XG4gIH1cblxuICAzMCUge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDEsIDAsIDAsIC0yMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KSByb3RhdGUzZCgxLCAwLCAwLCA5MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uZmxpcE91dFgge1xuICBhbmltYXRpb24tbmFtZTogZmxpcE91dFg7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbkBrZXlmcmFtZXMgZmxpcE91dFkge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHBlcnNwZWN0aXZlKDQwMHB4KTtcbiAgfVxuXG4gIDMwJSB7XG4gICAgdHJhbnNmb3JtOiBwZXJzcGVjdGl2ZSg0MDBweCkgcm90YXRlM2QoMCwgMSwgMCwgLTE1ZGVnKTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogcGVyc3BlY3RpdmUoNDAwcHgpIHJvdGF0ZTNkKDAsIDEsIDAsIDkwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5mbGlwT3V0WSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xuICBiYWNrZmFjZS12aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gIGFuaW1hdGlvbi1uYW1lOiBmbGlwT3V0WTtcbn1cblxuQGtleWZyYW1lcyBsaWdodFNwZWVkSW4ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApIHNrZXdYKC0zMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIDYwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDgwJSB7XG4gICAgdHJhbnNmb3JtOiBza2V3WCgtNWRlZyk7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ubGlnaHRTcGVlZEluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGxpZ2h0U3BlZWRJbjtcbiAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG59XG5cbkBrZXlmcmFtZXMgbGlnaHRTcGVlZE91dCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKSBza2V3WCgzMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ubGlnaHRTcGVlZE91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBsaWdodFNwZWVkT3V0O1xuICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluIHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgLTIwMGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBjZW50ZXI7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluO1xufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93bkxlZnQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxufVxuXG4ucm90YXRlSW5Eb3duTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25MZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluRG93blJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5yb3RhdGVJbkRvd25SaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJbkRvd25SaWdodDtcbn1cblxuQGtleWZyYW1lcyByb3RhdGVJblVwTGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGxlZnQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluVXBMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZUluVXBMZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZUluVXBSaWdodCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC05MGRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cbn1cblxuLnJvdGF0ZUluVXBSaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVJblVwUmlnaHQ7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgMjAwZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHJvdGF0ZU91dERvd25MZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDQ1ZGVnKTtcbiAgICBvcGFjaXR5OiAwO1xuICB9XG59XG5cbi5yb3RhdGVPdXREb3duTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duTGVmdDtcbn1cblxuQGtleWZyYW1lcyByb3RhdGVPdXREb3duUmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiByaWdodCBib3R0b207XG4gICAgdHJhbnNmb3JtOiByb3RhdGUzZCgwLCAwLCAxLCAtNDVkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnJvdGF0ZU91dERvd25SaWdodCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb3RhdGVPdXREb3duUmlnaHQ7XG59XG5cbkBrZXlmcmFtZXMgcm90YXRlT3V0VXBMZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogbGVmdCBib3R0b207XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGJvdHRvbTtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIC00NWRlZyk7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4ucm90YXRlT3V0VXBMZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHJvdGF0ZU91dFVwTGVmdDtcbn1cblxuQGtleWZyYW1lcyByb3RhdGVPdXRVcFJpZ2h0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIG9wYWNpdHk6IDE7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogcmlnaHQgYm90dG9tO1xuICAgIHRyYW5zZm9ybTogcm90YXRlM2QoMCwgMCwgMSwgOTBkZWcpO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLnJvdGF0ZU91dFVwUmlnaHQge1xuICBhbmltYXRpb24tbmFtZTogcm90YXRlT3V0VXBSaWdodDtcbn1cblxuQGtleWZyYW1lcyBoaW5nZSB7XG4gIDAlIHtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDIwJSwgNjAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDgwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgfVxuXG4gIDQwJSwgODAlIHtcbiAgICB0cmFuc2Zvcm06IHJvdGF0ZTNkKDAsIDAsIDEsIDYwZGVnKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiB0b3AgbGVmdDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluLW91dDtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgNzAwcHgsIDApO1xuICAgIG9wYWNpdHk6IDA7XG4gIH1cbn1cblxuLmhpbmdlIHtcbiAgYW5pbWF0aW9uLW5hbWU6IGhpbmdlO1xufVxuXG5Aa2V5ZnJhbWVzIGphY2tJblRoZUJveCB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgwLjEpIHJvdGF0ZSgzMGRlZyk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoLTEwZGVnKTtcbiAgfVxuXG4gIDcwJSB7XG4gICAgdHJhbnNmb3JtOiByb3RhdGUoM2RlZyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICB9XG59XG5cbi5qYWNrSW5UaGVCb3gge1xuICBhbmltYXRpb24tbmFtZTogamFja0luVGhlQm94O1xufVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cblxuQGtleWZyYW1lcyByb2xsSW4ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApIHJvdGF0ZTNkKDAsIDAsIDEsIC0xMjBkZWcpO1xuICB9XG5cbiAgdG8ge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBub25lO1xuICB9XG59XG5cbi5yb2xsSW4ge1xuICBhbmltYXRpb24tbmFtZTogcm9sbEluO1xufVxuXG4vKiBvcmlnaW5hbGx5IGF1dGhvcmVkIGJ5IE5pY2sgUGV0dGl0IC0gaHR0cHM6Ly9naXRodWIuY29tL25pY2twZXR0aXQvZ2xpZGUgKi9cblxuQGtleWZyYW1lcyByb2xsT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMTAwJSwgMCwgMCkgcm90YXRlM2QoMCwgMCwgMSwgMTIwZGVnKTtcbiAgfVxufVxuXG4ucm9sbE91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiByb2xsT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHpvb21JbiB7XG4gIGZyb20ge1xuICAgIG9wYWNpdHk6IDA7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC4zLCAuMywgLjMpO1xuICB9XG5cbiAgNTAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi56b29tSW4ge1xuICBhbmltYXRpb24tbmFtZTogem9vbUluO1xufVxuXG5Aa2V5ZnJhbWVzIHpvb21JbkRvd24ge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAtMTAwMHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCA2MHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21JbkRvd24ge1xuICBhbmltYXRpb24tbmFtZTogem9vbUluRG93bjtcbn1cblxuQGtleWZyYW1lcyB6b29tSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoLTEwMDBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIDYwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoMTBweCwgMCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbi56b29tSW5MZWZ0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JbkxlZnQ7XG59XG5cbkBrZXlmcmFtZXMgem9vbUluUmlnaHQge1xuICBmcm9tIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgxMDAwcHgsIDAsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICA2MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKC0xMHB4LCAwLCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21JblJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21JblJpZ2h0O1xufVxuXG5Aa2V5ZnJhbWVzIHpvb21JblVwIHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgMTAwMHB4LCAwKTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC41NTAsIDAuMDU1LCAwLjY3NSwgMC4xOTApO1xuICB9XG5cbiAgNjAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbi56b29tSW5VcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tSW5VcDtcbn1cblxuQGtleWZyYW1lcyB6b29tT3V0IHtcbiAgZnJvbSB7XG4gICAgb3BhY2l0eTogMTtcbiAgfVxuXG4gIDUwJSB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjMsIC4zLCAuMyk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgfVxufVxuXG4uem9vbU91dCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0O1xufVxuXG5Aa2V5ZnJhbWVzIHpvb21PdXREb3duIHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgwLCAtNjBweCwgMCk7XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuNTUwLCAwLjA1NSwgMC42NzUsIDAuMTkwKTtcbiAgfVxuXG4gIHRvIHtcbiAgICBvcGFjaXR5OiAwO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguMSwgLjEsIC4xKSB0cmFuc2xhdGUzZCgwLCAyMDAwcHgsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IGNlbnRlciBib3R0b207XG4gICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogY3ViaWMtYmV6aWVyKDAuMTc1LCAwLjg4NSwgMC4zMjAsIDEpO1xuICB9XG59XG5cbi56b29tT3V0RG93biB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0RG93bjtcbn1cblxuQGtleWZyYW1lcyB6b29tT3V0TGVmdCB7XG4gIDQwJSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjQ3NSwgLjQ3NSwgLjQ3NSkgdHJhbnNsYXRlM2QoNDJweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgtMjAwMHB4LCAwLCAwKTtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiBsZWZ0IGNlbnRlcjtcbiAgfVxufVxuXG4uem9vbU91dExlZnQge1xuICBhbmltYXRpb24tbmFtZTogem9vbU91dExlZnQ7XG59XG5cbkBrZXlmcmFtZXMgem9vbU91dFJpZ2h0IHtcbiAgNDAlIHtcbiAgICBvcGFjaXR5OiAxO1xuICAgIHRyYW5zZm9ybTogc2NhbGUzZCguNDc1LCAuNDc1LCAuNDc1KSB0cmFuc2xhdGUzZCgtNDJweCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKC4xKSB0cmFuc2xhdGUzZCgyMDAwcHgsIDAsIDApO1xuICAgIHRyYW5zZm9ybS1vcmlnaW46IHJpZ2h0IGNlbnRlcjtcbiAgfVxufVxuXG4uem9vbU91dFJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHpvb21PdXRSaWdodDtcbn1cblxuQGtleWZyYW1lcyB6b29tT3V0VXAge1xuICA0MCUge1xuICAgIG9wYWNpdHk6IDE7XG4gICAgdHJhbnNmb3JtOiBzY2FsZTNkKC40NzUsIC40NzUsIC40NzUpIHRyYW5zbGF0ZTNkKDAsIDYwcHgsIDApO1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjU1MCwgMC4wNTUsIDAuNjc1LCAwLjE5MCk7XG4gIH1cblxuICB0byB7XG4gICAgb3BhY2l0eTogMDtcbiAgICB0cmFuc2Zvcm06IHNjYWxlM2QoLjEsIC4xLCAuMSkgdHJhbnNsYXRlM2QoMCwgLTIwMDBweCwgMCk7XG4gICAgdHJhbnNmb3JtLW9yaWdpbjogY2VudGVyIGJvdHRvbTtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4xNzUsIDAuODg1LCAwLjMyMCwgMSk7XG4gIH1cbn1cblxuLnpvb21PdXRVcCB7XG4gIGFuaW1hdGlvbi1uYW1lOiB6b29tT3V0VXA7XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVJbkRvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIC0xMDAlLCAwKTtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICB9XG5cbiAgdG8ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cbn1cblxuLnNsaWRlSW5Eb3duIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5Eb3duO1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlSW5MZWZ0IHtcbiAgZnJvbSB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgfVxuXG4gIHRvIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZUluTGVmdCB7XG4gIGFuaW1hdGlvbi1uYW1lOiBzbGlkZUluTGVmdDtcbn1cblxuQGtleWZyYW1lcyBzbGlkZUluUmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uc2xpZGVJblJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5SaWdodDtcbn1cblxuQGtleWZyYW1lcyBzbGlkZUluVXAge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICAgIHZpc2liaWxpdHk6IHZpc2libGU7XG4gIH1cblxuICB0byB7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLCAwLCAwKTtcbiAgfVxufVxuXG4uc2xpZGVJblVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlSW5VcDtcbn1cblxuQGtleWZyYW1lcyBzbGlkZU91dERvd24ge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDEwMCUsIDApO1xuICB9XG59XG5cbi5zbGlkZU91dERvd24ge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXREb3duO1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0TGVmdCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoLTEwMCUsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZU91dExlZnQge1xuICBhbmltYXRpb24tbmFtZTogc2xpZGVPdXRMZWZ0O1xufVxuXG5Aa2V5ZnJhbWVzIHNsaWRlT3V0UmlnaHQge1xuICBmcm9tIHtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICB9XG5cbiAgdG8ge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDEwMCUsIDAsIDApO1xuICB9XG59XG5cbi5zbGlkZU91dFJpZ2h0IHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0UmlnaHQ7XG59XG5cbkBrZXlmcmFtZXMgc2xpZGVPdXRVcCB7XG4gIGZyb20ge1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gIH1cblxuICB0byB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwgLTEwMCUsIDApO1xuICB9XG59XG5cbi5zbGlkZU91dFVwIHtcbiAgYW5pbWF0aW9uLW5hbWU6IHNsaWRlT3V0VXA7XG59XG4iLCJcclxuLmJ0biB7XHJcbiAgICBib3JkZXI6MnB4IHNvbGlkICMwMDdiZTQ7XHJcbiAgICBib3JkZXItcmFkaXVzOjMwcHg7XHJcbiAgICBwYWRkaW5nOjE1cHggMzBweDtcclxuICAgIGZvbnQtc2l6ZToxLjc1ZW07XHJcbiAgICBjb2xvcjojMDA3YmU0O1xyXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgJjpob3ZlciB7XHJcbiAgICB9XHJcbn1cclxuLmJ0bl92b2lyX3RvdXQge1xyXG4gIGRpc3BsYXk6IHRhYmxlO1xyXG5tYXJnaW46IDMwcHggYXV0bztcclxuICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gIGNvbG9yOiAjNGQ0ZDRkO1xyXG4gIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICBmb250LXdlaWdodDogNjAwO1xyXG4gIGZvbnQtc2l6ZTogMS44cmVtO1xyXG4gIHBhZGRpbmc6IDIwcHggNDBweDtcclxuICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcztcclxuICBib3JkZXI6IDFweCBzb2xpZCAjNGQ0ZDRkO1xyXG5cdGxpbmUtaGVpZ2h0OiAxZW07XHJcbiAgJjpob3ZlciB7XHJcblx0YmFja2dyb3VuZDogIzlkMDAxOTtcclxuXHRib3JkZXI6IDFweCBzb2xpZCAjOWQwMDE5O1xyXG5cdCAgY29sb3I6ICNmZmY7XHJcbiAgfVxyXG59XHJcblxyXG4uYnRuX2Zvcm0ge1xyXG5cdG1hcmdpbjogMTVweCBhdXRvIDA7XHJcbiAgXHRjb2xvcjogJG5vaXIgIWltcG9ydGFudDtcclxuXHRmb250LXdlaWdodDogNjAwICFpbXBvcnRhbnQ7XHJcbiAgXHRiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XHJcbiAgXHR0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcztcclxuXHRsZXR0ZXItc3BhY2luZzogMC4wNWVtO1xyXG5cdHBhZGRpbmc6IDIwcHggMzBweCAhaW1wb3J0YW50O1xyXG5cdGJvcmRlcjogMXB4IHNvbGlkICRub2lyICFpbXBvcnRhbnQ7XHJcblx0Jjpob3ZlciB7XHJcblx0XHRiYWNrZ3JvdW5kOiAkbm9pciAhaW1wb3J0YW50O1xyXG5cdFx0Ym9yZGVyOiAxcHggc29saWQgJG5vaXIgIWltcG9ydGFudDtcclxuXHRcdGNvbG9yOiAjZmZmICFpbXBvcnRhbnQ7XHJcblx0fVxyXG59XHJcblxyXG4ubGllbl9kZWZ7XHJcblx0ZGlzcGxheTppbmxpbmUtYmxvY2s7XHJcblx0Y29sb3I6ICRub2lyO1xyXG5cdGZvbnQtc2l6ZTogMS40cmVtO1xyXG5cdGZvbnQtd2VpZ2h0OiA3MDA7XHJcblx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuXHQmOjpiZWZvcmV7XHJcblx0XHRjb250ZW50OiBcIlxcZTkwMVwiO1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdpY29tb29uJztcclxuXHRcdGZvbnQtc2l6ZTogMS41cmVtO1xyXG5cdH1cclxufVxyXG5cclxuLmJ0bl9maWxsZWQge1xyXG4gICAgcGFkZGluZzoxNXB4IDI1cHg7XHJcbiAgICBib3JkZXItcmFkaXVzOjMwcHg7XHJcbiAgICBiYWNrZ3JvdW5kOiNlNjc0MzE7XHJcbiAgICBjb2xvcjp3aGl0ZTtcclxuICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICBmb250LXdlaWdodDo1MDA7XHJcbiAgICB0cmFuc2l0aW9uOmFsbCAwLjE1cyBlYXNlO1xyXG59XHJcbi5idG5fZmlsbGVkLmJsdWUge1xyXG4gICAgYmFja2dyb3VuZDojMjA0Mjg2O1xyXG59XHJcbi5idG5fZmlsbGVkOmhvdmVyIHtcclxuICAgIGNvbG9yOndoaXRlO1xyXG4gICAgYmFja2dyb3VuZDojZmRhNjQ1O1xyXG59XHJcblxyXG4uYnRuX2VtcHR5IHtcclxuICAgIHBhZGRpbmc6MThweCAzMHB4O1xyXG4gICAgYm9yZGVyLXJhZGl1czozMHB4O1xyXG4gICAgYmFja2dyb3VuZDp0cmFuc3BhcmVudDtcclxuICAgIGJvcmRlcjozcHggc29saWQgI2U2NzQzMTtcclxuICAgIGNvbG9yOiNlNjc0MzE7XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgZm9udC13ZWlnaHQ6NTAwO1xyXG4gICAgdHJhbnNpdGlvbjphbGwgMC4xNXMgZWFzZTtcclxufVxyXG4uYnRuX2VtcHR5OmhvdmVyIHtcclxuICAgIGJhY2tncm91bmQ6I2U2NzQzMTtcclxuICAgIGNvbG9yOndoaXRlO1xyXG59XHJcblxyXG4uZmVybWVye1xyXG5cdHBvc2l0aW9uOmFic29sdXRlO1xyXG5cdHotaW5kZXg6IDU7XHJcblx0dG9wOiAxMHB4O1xyXG5cdHJpZ2h0OiAxMHB4O1xyXG5cdCY6OmJlZm9yZXtcclxuXHRcdGNvbnRlbnQ6ICdcXGU5MDknO1xyXG5cdFx0Zm9udC1mYW1pbHk6ICdpY29tb29uJztcclxuXHRcdGZvbnQtc2l6ZTogMy42ZW07XHJcblx0XHRmb250LXdlaWdodDogNjAwO1xyXG5cdFx0Y29sb3I6ICRub2lyO1xyXG5cdH1cclxuXHQmOmhvdmVye1xyXG5cdFx0Jjo6YmVmb3Jle1xyXG5cdFx0XHRjb2xvcjogJG5vaXI7XHJcblx0XHR9XHJcblx0fVxyXG59IiwiaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSwgYnV0dG9ue1xyXG5cdGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuXHQgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcblx0ICBjb2xvcjogI0ZGRjtcclxuXHQgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuXHQgIGZvbnQtc2l6ZTogMS44cmVtO1xyXG5cdCAgcGFkZGluZzogMjBweCAyNXB4O1xyXG5cdCAgYmFja2dyb3VuZDogI2VkM2YzZDsgLyogT2xkIGJyb3dzZXJzICovXHJcblx0ICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIC4zcztcclxuXHQgIGJvcmRlcjogbm9uZTtcclxuXHRmb250LXdlaWdodDogNTAwO1xyXG5cdGZvbnQtZmFtaWx5OiAnUG9wcGlucycsIHNhbnMtc2VyaWY7XHJcblx0Y3Vyc29yOiBwb2ludGVyO1xyXG5cdFx0QGV4dGVuZCAlZWZmZXRfaG92ZXI7XHJcblx0bGluZS1oZWlnaHQ6IDFlbTtcclxufVxyXG5cclxuLyogcmV0YWJsaXNzZW1lbnQgZGUgbCdhcHBhcmFuY2UgZGVzIHNlbGVjdHMgKHN1cnRvdXQgaW9zKSAqL1xyXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcclxuXHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XHJcblx0LW1vei1hcHBlYXJhbmNlOiBub25lO1xyXG5cdGFwcGVhcmFuY2U6IG5vbmU7XHJcbn1cclxuXHJcbmZvcm0gc3Bhbi5zZWxlY3R7XHJcblx0ZGlzcGxheTogYmxvY2s7XHJcblx0YmFja2dyb3VuZDogdXJsKC4uL2ltYWdlcy94Mi9wdWNlX3NlbGVjdC5wbmcpO1xyXG5cdGJhY2tncm91bmQtc2l6ZTogMzVweDtcclxuXHRiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xyXG5cdGJhY2tncm91bmQtY29sb3I6ICNmZmZmZmY7XHJcblx0YmFja2dyb3VuZC1wb3NpdGlvbjogcmlnaHQgY2VudGVyICFpbXBvcnRhbnQ7XHJcblx0bWFyZ2luOiAxNXB4IDA7XHJcblx0Ym9yZGVyLXJhZGl1czogM3B4O1xyXG5cdHBhZGRpbmc6IDVweDtcclxuXHJcblx0PnNlbGVjdHtcclxuXHRcdGRpc3BsYXk6IGJsb2NrO1xyXG5cdFx0d2lkdGg6IDEwMCU7XHJcblx0XHRiYWNrZ3JvdW5kLWNvbG9yOnRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XHJcblx0XHRib3JkZXI6IG5vbmU7XHJcblx0XHRoZWlnaHQ6IDMwcHg7XHJcblx0XHRjdXJzb3I6IHBvaW50ZXI7XHJcblx0XHQtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUhaW1wb3J0YW50O1xyXG5cdFx0LW1vei1hcHBlYXJhbmNlOiBub25lIWltcG9ydGFudDtcclxuXHRcdGFwcGVhcmFuY2U6IG5vbmUhaW1wb3J0YW50O1xyXG5cdFx0cGFkZGluZzogMCAxMHB4O1xyXG5cdFx0Y29sb3I6ICRub2lyO1xyXG5cdFx0Zm9udC1zaXplOjEuNnJlbTtcclxuXHR9XHJcbn1cclxuXHJcbmlucHV0W3R5cGU9XCJ0ZXh0XCJdLCB0ZXh0YXJlYSwgaW5wdXRbdHlwZT1cInRlbFwiXSwgaW5wdXRbdHlwZT1cImVtYWlsXCJdLCBpbnB1dFt0eXBlPVwicGFzc3dvcmRcIl0sIGlucHV0W3R5cGU9XCJzZWFyY2hcIl17XHJcblx0Ym9yZGVyLXJhZGl1czogMzBweDtcclxuXHRib3JkZXI6IDJweCBzb2xpZCAjMWMzMjg0O1xyXG4gICAgcGFkZGluZzoxMHB4IDE1cHg7XHJcbiAgICBmb250LXNpemU6MS41ZW07XHJcbiAgICB0ZXh0LXRyYW5zZm9ybTp1cHBlcmNhc2U7ICAgIFxyXG59XHJcblxyXG46Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyAvKiBDaHJvbWUvT3BlcmEvU2FmYXJpICovXHJcbiAgY29sb3I6ICMxYzMyODQ7XHJcbn1cclxuOjotbW96LXBsYWNlaG9sZGVyIHsgLyogRmlyZWZveCAxOSsgKi9cclxuICBjb2xvcjogIzFjMzI4NDtcclxufVxyXG46LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgLyogSUUgMTArICovXHJcbiAgY29sb3I6ICMxYzMyODQ7XHJcbn1cclxuOi1tb3otcGxhY2Vob2xkZXIgeyAvKiBGaXJlZm94IDE4LSAqL1xyXG4gIGNvbG9yOiAjMWMzMjg0O1xyXG59XHJcblxyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl17XHJcblx0d2lkdGg6IDI0cHggIWltcG9ydGFudDtcclxuXHRoZWlnaHQ6IDI0cHggIWltcG9ydGFudDtcclxuXHRtYXJnaW46IDAgMTBweCAwIDA7XHJcbn1cclxuXHJcbkBtZWRpYSAobWF4LXdpZHRoOiAkbW9iaWxlcCkge1xyXG5cdGZvcm0gc3Bhbi5zZWxlY3R7XHJcblx0XHRtYXJnaW46IDVweCAwO1xyXG5cdH1cclxufSIsIlxuLmNsZWFyZml4IHtcbiAgICBjbGVhcjpib3RoO1xufVxuXG5cbi5sb2dvX3Nob3cge1xuICAgIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuLmRlcm91bGFudC5hY3RpZiAubG9nb19zaG93IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xufVxuXG5oZWFkZXJ7XG4gICAgcGFkZGluZzoxNXB4IDUwcHg7XG4gICAgLmxvZ28sIG5hdiwgLnJlY2hlcmNoZXtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cbiAgICAucmVjaGVyY2hle1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICAgICY6YWZ0ZXJ7XG4gICAgICAgIGNvbnRlbnQ6Jyc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICB9XG4gICAgLmxvZ297XG4gICAgICAgIG1hcmdpbi1yaWdodDozMHB4O1xuICAgIH1cbiAgICBuYXYubWVudXtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB1bHtcbiAgICAgICAgICAgIGxpe1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjowIDEwcHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjg1ZW07XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiMxMjRlOWQ7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOnByZTtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzoxNXB4IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6MzBweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMxMjRlOWQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIFxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICY6aG92ZXIgYXtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLyomOmFmdGVye1xuICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgIGJvdHRvbTowO1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OjUwJTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6NTAlO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6MnB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMxMjRlOWQ7XG4gICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3MgZWFzZTtcbiAgICAgICAgICAgICAgICB9Ki9cbiAgICAgICAgICAgICAgICAmOmhvdmVyOmFmdGVye1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbGkuYWN0aWYgYXtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAucmVjaGVyY2hle1xuICAgICAgICBtYXJnaW4tdG9wOiAzMHB4O1xuICAgICAgICBpbnB1dHtcbiAgICAgICAgICAgIGhlaWdodDo0MnB4O1xuICAgICAgICAgICAgYm9yZGVyOjJweCBzb2xpZCAjMWMzMjg0O1xuICAgICAgICAgICAgZm9udC1zaXplOjEuMmVtO1xuICAgICAgICAgICAgd2lkdGg6MzAwcHg7XG4gICAgICAgICAgICBjb2xvcjojMWMzMjg0OztcbiAgICAgICAgfVxuICAgICAgICBzcGFue1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgY29sb3I6ICMxYzMyODQ7XG4gICAgICAgICAgICBtYXJnaW4tbGVmdDogMTVweDtcbiAgICAgICAgfVxuICAgIH1cbn1cbi8qQlVSR0VSKi9cblx0LnBpY3RvX21lbnU6OmJlZm9yZSB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRtYXgtd2lkdGg6IDM1cHg7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLWJvdHRvbTogNHB4O1xuXHRcdGJhY2tncm91bmQ6ICMwYTUyYTA7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuXHR9XG5cdC5waWN0b19tZW51OjphZnRlciB7XG5cdFx0Y29udGVudDogXCJcIjtcblx0XHRtYXgtd2lkdGg6IDM1cHg7XG5cdFx0aGVpZ2h0OiA0cHg7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdFx0bWFyZ2luLWJvdHRvbTogNHB4O1xuXHRcdGJhY2tncm91bmQ6ICMwYTUyYTA7XG5cdFx0dHJhbnNpdGlvbjogYWxsIDMwMG1zO1xuXHR9XG5cdC5waWN0b19tZW51IHNwYW4ge1xuXHRcdHdpZHRoOiAyNHB4O1xuXHRcdGhlaWdodDogNHB4O1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHRcdG1hcmdpbi1ib3R0b206IDRweDtcblx0XHRiYWNrZ3JvdW5kOiAjMGE1MmEwO1xuXHRcdHRyYW5zaXRpb246IGFsbCAzMDBtcztcblx0fVxuXHQucGljdG9fbWVudSB7XG5cdFx0ZmxvYXQ6IGxlZnQ7XG5cdH1cblx0LmJ0bl9tZW51IHtcblx0XHRjb2xvcjogIzBhNTJhMDtcblx0XHRmb250LXdlaWdodDogNDAwO1xuXHRcdGZvbnQtc2l6ZTogMS41ZW0gIWltcG9ydGFudDtcblx0XHRsaW5lLWhlaWdodDogMWVtO1xuXHRcdHBhZGRpbmc6IDE4cHggMzBweDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG5cdFx0Y3Vyc29yOiBwb2ludGVyO1xuXHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0dGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblx0fVxuXHQvKkZJTl9CVVJHRVIqL1xuXHQuZGVyb3VsYW50e1xuXHRcdGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDk5OTtcbiAgICAgICAgPiBsaXtcbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgICAgICBhe1xuICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMWVtO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcztcbiAgICAgICAgICAgICAgICBpbWd7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPnVse1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHotaW5kZXg6IDM7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzAwNmFiMTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXgtaGVpZ2h0OjBlbTtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IDFzIG1heC1oZWlnaHQgMC4zcztcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IDFzIG1heC1oZWlnaHQgMC4zcztcbiAgICAgICAgICAgICAgICAtbW96LXRyYW5zaXRpb246IDFzIG1heC1oZWlnaHQgMC4zcztcbiAgICAgICAgICAgICAgICAtby10cmFuc2l0aW9uOiAxcyBtYXgtaGVpZ2h0IDAuM3M7XG4gICAgICAgICAgICAgICAgLW1zLXRyYW5zaXRpb246IDFzIG1heC1oZWlnaHQgbm9uZTtcbiAgICAgICAgICAgICAgICA+bGkge1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgIFx0XHR3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogI0RERERERDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiBpbmhlcml0O1xuICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAucmVjaGVyY2hlIHtcbiAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICBcblx0fVxuICAgIC5kZXJvdWxhbnQuYWN0aWZ7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQ6d2hpdGU7XG4gICAgICAgIHBhZGRpbmc6MjBweDtcbiAgICAgICAgdG9wOiA1NXB4O1xuICAgICAgICBsaXtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZmxvYXQ6bm9uZTtcbiAgICAgICAgICAgIGF7XG4gICAgICAgICAgICAgICAgcGFkZGluZzoxNXB4IDEwcHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cdC5kZXJvdWxhbnQgPiBsaTpob3ZlciB1bCB7XG5cdFx0ZGlzcGxheTogYmxvY2s7XG5cdH1cblx0LmRlcm91bGFudD5saT51bD5saSBhOmhvdmVyIHtcblx0XHRiYWNrZ3JvdW5kOiAjMDc4NWM1O1xuXHRcdGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjMDc4NWM1O1xuXHR9IiwiZm9vdGVye1xuICAgIGJhY2tncm91bmQ6I2Q1ZDVkNTtcbiAgICBwYWRkaW5nOiA0MHB4IDEzJTtcbiAgICAuY29se1xuICAgICAgICB3aWR0aDozMyU7XG4gICAgICAgIGRpc3BsYXk6aW5saW5lLWJsb2NrO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBwYWRkaW5nOjAgMTVweDtcbiAgICAgICAgcHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxLjVlbTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOjIwcHggMCAwO1xuICAgICAgICB9XG4gICAgICAgIGgze1xuICAgICAgICAgICAgbWFyZ2luOjIwcHggMDtcbiAgICAgICAgfVxuICAgICAgICAuYnRue1xuICAgICAgICAgICAgZGlzcGxheTogdGFibGU7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiMwMDdiZTQ7XG4gICAgICAgICAgICBjb2xvcjp3aGl0ZTtcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xuICAgICAgICAgICAgcGFkZGluZzoxMHB4IDE1cHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOjIwcHg7XG4gICAgICAgIH1cbiAgICB9XG4gICAgLmNvbDpudGgtY2hpbGQoMil7XG4gICAgICAgIHBhZGRpbmc6MDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBpbWd7XG4gICAgICAgICAgICBtYXJnaW46MCBhdXRvO1xuICAgICAgICAgICAgd2lkdGg6MTAwJTtcbiAgICAgICAgfVxuICAgIH1cbiAgICAuY29sOm50aC1jaGlsZCgzKXtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgIGF7XG4gICAgICAgICAgICBmb250LXNpemU6MS41ZW07XG4gICAgICAgICAgICBjb2xvcjojNDQ0NDQ0O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcbiAgICAgICAgfVxuICAgIH1cbn0iLCJAbWVkaWEgKG1heC13aWR0aDokZGVza3RvcGwpIHtcclxuICAgIGJvZHkge1xyXG4gICAgICAgIFxyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5e1xyXG4gICAgLmNvbnRlbnR7XHJcbiAgICAgICAgcGFkZGluZzogMCA1MHB4O1xyXG4gICAgICAgICAgICAuc3ViX3RpdGxle1xyXG4gICAgICAgICAgICAgICAgY29sb3I6ICMxMjRlOWQ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTo1MHB4O1xyXG4gICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiA2ZW07XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7ICAgIFxyXG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBoMntcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5ib2R5LnBhZ2V7XHJcbiAgICAuY29udGVudF90aXRsZSB7XHJcbiAgICAgICAgZGlzcGxheTogZmxleDtcclxuICAgICAgICBtYXJnaW4tYm90dG9tOjUwcHg7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIG1heC13aWR0aDo4OTFweDtcclxuICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICB3aWR0aDoyMjVweDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTo0ZW07XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xyXG4gICAgICAgICAgICBjb2xvcjojMTI0ZTlkO1xyXG4gICAgICAgICAgICBwYWRkaW5nOjAgNTBweDtcclxuICAgICAgICAgICAgc3Ryb25ne1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAzZW07XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcclxuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiAtNXB4O1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luOiAtMzBweCAwO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLmltYWdlX2hvbGRlcntcclxuICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICB9XHJcbiAgICAgICAgLnRpdGxle1xyXG4gICAgICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMTgsIDc4LCAxNTcsIDAuNzUpO1xyXG4gICAgICAgICAgICBwYWRkaW5nOjMwcHg7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGNvbG9yOndoaXRlO1xyXG4gICAgICAgICAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDoxO1xyXG4gICAgICAgICAgICBmb250LXNpemU6NGVtO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgLmNvbnRlbnR7XHJcbiAgICAgICAgYmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL3BhdHRlcm4xLnBuZykgdG9wIGxlZnQgbm8tcmVwZWF0O1xyXG4gICAgICAgIHBhZGRpbmc6IDAgY2FsYyg1MHB4ICsgNyUpO1xyXG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246NyUgMTAwcHg7XHJcbiAgICAgICAgLnN1Yl90aXRsZSB7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZToxLjI1ZW07XHJcbiAgICAgICAgICAgIGgye1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IzEyNGU5ZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICAuY29udGVudF9pbm5lcntcclxuICAgICAgICAgICAgcGFkZGluZzogMCAxMCU7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjsgICAgXHJcbiAgICAgICAgICAgIC5uYXZpZ2F0aW9ue1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuY29sIHtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjQ2JTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpsZWZ0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHB7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDozMDA7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MS43NWVtO1xyXG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6MS41ZW07XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IzEyNGU5ZDtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgIFxyXG4gICAgICAgIH1cclxuICAgICAgICAubGlzdGluZ19jb250ZW50e1xyXG4gICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtc3RhcnQ7XHJcbiAgICAgICAgICAgIC5jYXRlZ29yaWVze1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDojMTI0ZTlkO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjMwcHggMTVweDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgICAgICAgICAgaDN7XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6d2hpdGUgIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXRvcDowO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MCAyMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgPnVse1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjZlbTtcclxuICAgICAgICAgICAgICAgICAgICA+bGl7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgID4gYSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjEwcHggMTVweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOndoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6d2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6IzEyNGU5ZDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICA+dWx7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOjEwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMwZjNkN2I7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID5saXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjp3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MTBweCAxNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MC44ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMjU1LDI1NSwyNTUsMC4xNSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmxpc3RpbmdfcHJvZHVpdHtcclxuICAgICAgICAgICAgICAgIHBhZGRpbmc6MCA1MHB4O1xyXG4gICAgICAgICAgICAgICAgIC5yb3dfcHJvZHVpdHtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICAgICAgICAgIGZsZXgtd3JhcDogd3JhcDtcclxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5LWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XHJcbiAgICAgICAgICAgICAgICAgICAgaDN7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOjEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBwcmU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OicnO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogIzIwNDI4NjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OjUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAucHJvZHVpdHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6MjQlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjpyZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmltYWdlX2hvbGRlcntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbGV4OiAxIDAgMDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6MjMwcHggIWltcG9ydGFudDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgxOCwgNzgsIDE1NywgMC43NSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm90dG9tOjA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByaWdodDowO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MTBweCAzMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjVlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6NTlweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDozMDA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3Ryb25ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDpyaWdodDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtby1vYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOndoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzozMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLnF0ZXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MS41ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiMyMDQyODY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6NDBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaW5wdXRbdHlwZT1cIm51bWJlclwiXXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6cmlnaHQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDo0M3B4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6MXB4IHNvbGlkICMyMDQyODY7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjEuNWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6NTBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjpjZW50ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojMzMzMzMzO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjVlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDoxLjJlbTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJvbmd7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYXtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MS43NWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MzBweDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOmNlbnRlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjojMjA0Mjg2O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OmJvbGQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjEuNWVtO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDozMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmFmdGVye1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudDonJztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlcjowcHggc29saWQgcmdiYSgxOCwgNzgsIDE1NywgMC4xMCk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB6LWluZGV4Ojk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJpZ2h0OjA7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3R0b206MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246YWxsIDAuMnMgZWFzZS1vdXQ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICY6aG92ZXI6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6MTVweCBzb2xpZCByZ2JhKDE4LCA3OCwgMTU3LCAwLjEwKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLm5hdmlnYXRpb257XHJcbiAgICAgICAgICAgIHBhZGRpbmc6NzBweCAxMCU7XHJcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcclxuICAgICAgICAgICAgLmJ0bntcclxuICAgICAgICAgICAgICAgIG1hcmdpbjowIDVweDtcclxuICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWxlZnQ6MTVweDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuYnRuLmZhY2Vib29re1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDojMTI0ZTlkO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IzEyNGU5ZDtcclxuICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ0bi50d2l0dGVye1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDojNWRjOWY5O1xyXG4gICAgICAgICAgICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgICAgICAgICAgICBib3JkZXItY29sb3I6IzVkYzlmOTtcclxuICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6d2hpdGU7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ0bjpmaXJzdC1vZi10eXBle1xyXG4gICAgICAgICAgICAgICAgZmxvYXQ6bGVmdDtcclxuICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLmJ0bjpsYXN0LW9mLXR5cGV7XHJcbiAgICAgICAgICAgICAgICBmbG9hdDpyaWdodDtcclxuICAgICAgICAgICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OjE1cHg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgLnJvd19hY3Rpdml0eSB7XHJcbiAgICAgICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgICAgICBmbGV4LXdyYXA6IHdyYXA7XHJcbiAgICAgICAgICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcclxuICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIC5hY3Rpdml0eXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjQ4JTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbToxMDBweDtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgLmltYWdlX2hvbGRlcntcclxuICAgICAgICAgICAgICAgICAgICB3aWR0aDo2MDBweDtcclxuICAgICAgICAgICAgICAgICAgICBtYXgtd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OnJpZ2h0O1xyXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGZsZXg7XHJcbiAgICAgICAgICAgICAgICAgICAgZmxleDogMSAwIDA7XHJcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgICAgIG1pbi1oZWlnaHQ6NDA0cHg7XHJcbiAgICAgICAgICAgICAgICAgICAgaW1ne1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAtby1vYmplY3QtZml0OiBjb3ZlcjtcclxuICAgICAgICAgICAgICAgICAgICAgICAgb2JqZWN0LWZpdDogY292ZXI7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHAge1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6d2hpdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzo3NXB4IDUwcHg7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjEuNzVlbTtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBqdXN0aWZ5O1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiMxMjRlOWQ7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xyXG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuNWVtO1xyXG4gICAgICAgICAgICAgICAgICAgIG1heC13aWR0aDo0MzBweDtcclxuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICAgICAgdG9wOjEwMHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTgsIDc4LCAxNTcsIDAuNzUpO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOndoaXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6MjBweCA1MHB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjNlbTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgICAgICB0b3A6NzVweDtcclxuICAgICAgICAgICAgICAgICAgICBsZWZ0OjA7XHJcbiAgICAgICAgICAgICAgICAgICAgei1pbmRleDogOTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5hcmlhbmV7XHJcbiAgICBmb250LXNpemU6IDEuNmVtO1xyXG4gICAgZm9udC13ZWlnaHQ6IDQwMDtcclxuICAgIGJhY2tncm91bmQ6ICNmM2Y2ZmE7XHJcbiAgICBtYXJnaW46IDUwcHg7XHJcbiAgICBwYWRkaW5nOiAyNXB4O1xyXG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICMxMTRlOWQ7XHJcbiAgICBtYXJnaW46IDBweCA1MHB4IDUwcHg7XHJcbiAgICAub3ZlcmFsbHtcclxuICAgICAgICBwYWRkaW5nOjE1cHggNzVweDtcclxuICAgIH1cclxuICAgIHNwYW46bGFzdC1vZi10eXBlOmFmdGVye1xyXG4gICAgICAgIGNvbnRlbnQ6bm9uZTtcclxuICAgIH1cclxuICAgIHNwYW46YWZ0ZXJ7XHJcbiAgICAgICAgY29udGVudDpcIj5cIjtcclxuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgY29sb3I6IzAwN2JlNDtcclxuICAgICAgICBtYXJnaW46MCAxMHB4O1xyXG4gICAgfVxyXG4gICAgc3BhbiB7XHJcbiAgICAgICAgY29sb3I6IzIwNDI4NjtcclxuICAgIH1cclxuICAgIHNwYW4uYWN0aWZ7XHJcbiAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgIH1cclxufVxyXG5cclxuI2JhbmRlYXUge1xyXG4gICAgaGVpZ2h0OjgyOXB4O1xyXG4gICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICBiYWNrZ3JvdW5kOiMwYTUyYTA7XHJcbn1cclxuYm9keS5ob21le1xyXG4gICAgLnN1Yl9tZW51e1xyXG4gICAgICAgIC5zdWJfdGl0bGUge1xyXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOjA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG4uc3ViX21lbnV7XHJcbiAgICBiYWNrZ3JvdW5kOiNlOGYxZmE7XHJcbiAgICB1bCB7XHJcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBwYWRkaW5nLXJpZ2h0OjEwJTtcclxuICAgICAgICBsaXtcclxuICAgICAgICAgICAgaGVpZ2h0OjEyMHB4O1xyXG4gICAgICAgICAgICB3aWR0aDoxMiU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IzEyNGU5ZDtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XHJcbiAgICAgICAgICAgIGNvbG9yOndoaXRlO1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6MjBweCAyMHB4IDIwcHggNjBweDtcclxuICAgICAgICAgICAgdHJhbnNpdGlvbjphbGwgMC4zcyBlYXNlO1xyXG4gICAgICAgICAgICBjdXJzb3I6cG9pbnRlcjtcclxuICAgICAgICAgICAgJjphZnRlcntcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ3cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICByaWdodDogLTI1cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAjMTE0ZTlkO1xyXG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgyMGRlZyk7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOmFsbCAwLjNzIGVhc2U7XHJcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA5OTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjVlbTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5OTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzcGFuLmljb24tdHJhaW4sIHNwYW4uaWNvbi12b2l0dXJlIHtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTo0ZW07XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3Bhbi5pY29uLXRyYWluICsgcCwgc3Bhbi5pY29uLXZvaXR1cmUgKyBwe1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxOXB4O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHB7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MS43NWVtO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDoxMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6MzAwO1xyXG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgICAgICAgICAgei1pbmRleDogOTk5O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICBzcGFue1xyXG4gICAgICAgICAgICAgICAgICAgIHRvcDotNXB4O1xyXG4gICAgICAgICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpLmFlcm9uYXV0aXF1ZXtcclxuICAgICAgICAgICAgJjpob3ZlciwmOmhvdmVyOmJlZm9yZSwmOmhvdmVyOmFmdGVye1xyXG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiM1Yzk0Yzg7IFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpLnRyYWlue1xyXG4gICAgICAgICAgICAmOmhvdmVyLCY6aG92ZXI6YmVmb3JlLCY6aG92ZXI6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgIGJhY2tncm91bmQ6I2IzYjBhYjtcclxuICAgICAgICAgICAgICAgIFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGxpLnZvaXR1cmV7XHJcbiAgICAgICAgICAgICY6aG92ZXIsJjpob3ZlcjpiZWZvcmUsJjpob3ZlcjphZnRlcntcclxuICAgICAgICAgICAgICAgYmFja2dyb3VuZDojMWYyODI1O1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGkucGlsbHN7XHJcbiAgICAgICAgICAgICY6aG92ZXIsJjpob3ZlcjpiZWZvcmUsJjpob3ZlcjphZnRlcntcclxuICAgICAgICAgICAgICAgYmFja2dyb3VuZDojYWYwYzNlO1xyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgbGkuZGlhbW9uZHtcclxuICAgICAgICAgICAgJjpob3ZlciwmOmhvdmVyOmJlZm9yZSwmOmhvdmVyOmFmdGVye1xyXG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiMzNzk1OTE7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsaS5nZWFyc3tcclxuICAgICAgICAgICAgJjpob3ZlciwmOmhvdmVyOmJlZm9yZSwmOmhvdmVyOmFmdGVye1xyXG4gICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiNmZGM1MmU7XHJcbiAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsaTpudGgtY2hpbGQoMil7XHJcbiAgICAgICAgICAgICAmOmJlZm9yZXtcclxuICAgICAgICAgICAgICAgIGNvbnRlbnQ6ICcnO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ3cHg7XHJcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XHJcbiAgICAgICAgICAgICAgICB0b3A6IDA7XHJcbiAgICAgICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgICAgICBsZWZ0OiAtMjVweDtcclxuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICMxMTRlOWQ7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHNrZXdYKDIwZGVnKTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBsaTpmaXJzdC1vZi10eXBle1xyXG4gICAgICAgICAgICB3aWR0aDoyNyU7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6I2YzZmFmZjtcclxuICAgICAgICAgICAgcGFkZGluZzoyMHB4IDA7XHJcbiAgICAgICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgICAgICBjb250ZW50Om5vbmU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3BhbixoMntcclxuICAgICAgICAgICAgICAgIGNvbG9yOiMxMjRlOWQ7XHJcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XHJcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogNmVtO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogLTEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgaDJ7XHJcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDNlbTtcclxuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5mZWF0dXJlc3tcclxuICAgIGJveC1zaXppbmc6Ym9yZGVyLWJveDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgcGFkZGluZzo5NHB4IDA7XHJcbiAgICBiYWNrZ3JvdW5kOnVybCguLi9pbWFnZXMvcGF0dGVybjEucG5nKSBuby1yZXBlYXQgI2YzZmFmZjtcclxuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwcHggMHB4O1xyXG4gICAgY2xlYXI6Ym90aDtcclxuICAgIC5zbGlkZXJ7XHJcbiAgICAgICAgbWF4LXdpZHRoOjEwMCU7XHJcbiAgICAgICAgbWFyZ2luLWxlZnQ6NyU7XHJcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xyXG4gICAgICAgIC5jYXJvdXNlbHtcclxuICAgICAgICAgICAgd2lkdGg6NzAlO1xyXG4gICAgICAgIH1cclxuICAgICAgICAub3dsLWl0ZW0ge1xyXG4gICAgICAgICAgICB3aWR0aDoxMDAlO1xyXG4gICAgICAgICAgICBtYXgtaGVpZ2h0OjU1NHB4O1xyXG4gICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xyXG4gICAgICAgIH1cclxuICAgICAgICAub3ZlcmFsbF9zbGlkZXtcclxuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xyXG4gICAgICAgICAgICB0b3A6MDtcclxuICAgICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgICByaWdodDowO1xyXG4gICAgICAgICAgICBib3R0b206MDtcclxuICAgICAgICAgICAgLm51bXtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgICAgICAgbGVmdDowO1xyXG4gICAgICAgICAgICAgICAgYm90dG9tOjA7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMTgsIDc4LCAxNTcsIDAuNzUpO1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MjY5cHg7XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjBweCAzMHB4O1xyXG4gICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6MTVlbTtcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjp3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDo4MDA7XHJcbiAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0xMHB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5kZXNjcmlwdGlvbntcclxuICAgICAgICAgICAgYmFja2dyb3VuZDogd2hpdGU7XHJcbiAgICAgICAgICAgIHdpZHRoOiAzMCU7XHJcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHg7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMS43NWVtO1xyXG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgei1pbmRleDogOTk5OTtcclxuICAgICAgICAgICAgcmlnaHQ6IDEwMHB4O1xyXG4gICAgICAgICAgICBib3R0b206IDA7XHJcbiAgICAgICAgICAgIGNvbG9yOiMxMjRlOWQ7XHJcbiAgICAgICAgICAgIHN0cm9uZ3tcclxuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDpib2xkO1xyXG4gICAgICAgICAgICAgICAgY29sb3I6IzEyNGU5ZDtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTozMHB4O1xyXG4gICAgICAgICAgICAgICAgZm9udC1zaXplOjJlbTtcclxuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OjEuMWVtO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIC5vd2wtY29udHJvbHN7XHJcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgYm90dG9tOjA7XHJcbiAgICAgICAgICAgIGxlZnQ6MjY5cHg7XHJcbiAgICAgICAgICAgIC5vd2wtcHJldntcclxuICAgICAgICAgICAgICAgIGhlaWdodDo4MHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6ODBweDtcclxuICAgICAgICAgICAgICAgIHRleHQtaW5kZW50Oi05OTk5cHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnVybCguLi9pbWFnZXMvcHJldi5qcGcpO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAub3dsLW5leHR7XHJcbiAgICAgICAgICAgICAgICBoZWlnaHQ6ODBweDtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjgwcHg7XHJcbiAgICAgICAgICAgICAgICB0ZXh0LWluZGVudDotOTk5OXB4O1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDp1cmwoLi4vaW1hZ2VzL25leHQuanBnKTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5oaWdobGlnaHR7XHJcbiAgICBiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL3BhdHRlcm4zLnBuZykgbm8tcmVwZWF0ICNmM2ZhZmY7XHJcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOjE1JSAtMjVweDtcclxuICAgIHBhZGRpbmc6IDAgNyUgNTBweDtcclxuICAgIGRpc3BsYXk6IGJsb2NrO1xyXG4gICAgLmxlZnQsLnJpZ2h0e1xyXG4gICAgICAgIHdpZHRoOjUwJTtcclxuICAgIH1cclxuICAgIC5sZWZ0e1xyXG4gICAgfVxyXG4gICAgcHtcclxuICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcclxuICAgICAgICBtYXJnaW46MCBhdXRvO1xyXG4gICAgICAgIHN0cm9uZ3tcclxuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcclxuICAgICAgICAgICAgZm9udC13ZWlnaHQ6Ym9sZDtcclxuICAgICAgICAgICAgY29sb3I6IzEyNGU5ZDtcclxuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MzBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOjJlbTtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MS4xZW07XHJcbiAgICAgICAgfVxyXG4gICAgICAgIG1heC13aWR0aDogNDUwcHg7XHJcbiAgICAgICAgcGFkZGluZzogNTBweDtcclxuICAgICAgICBmb250LXNpemU6IDEuNzVlbTtcclxuICAgICAgICBsaW5lLWhlaWdodDogMS41ZW07XHJcbiAgICAgICAgei1pbmRleDogOTk5OTtcclxuICAgICAgICBjb2xvcjojMTI0ZTlkOztcclxuICAgIH1cclxuICAgIGlmcmFtZXtcclxuICAgICAgICBtYXgtd2lkdGg6MTAwJTtcclxuICAgIH1cclxufVxyXG5cclxuLmFjdHVhbGl0ZXN7XHJcbiAgICBwYWRkaW5nOjUwcHggMDtcclxuICAgIGJhY2tncm91bmQ6IHVybCguLi9pbWFnZXMvcGF0dGVybjQucG5nKSByaWdodCAgbm8tcmVwZWF0O1xyXG4gICAgLnN1Yl90aXRsZXtcclxuICAgICAgICAgICAgY29sb3I6ICMxMjRlOWQ7XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTo1MHB4O1xyXG4gICAgICAgIHNwYW57XHJcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMjBweDtcclxuICAgICAgICAgICAgZm9udC1zaXplOiA2ZW07XHJcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcclxuICAgICAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaDJ7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogM2VtO1xyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xyXG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5idG57XHJcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XHJcbiAgICAgICAgZmxvYXQ6cmlnaHQ7ICAgIFxyXG4gICAgfVxyXG4gICAgLmFjdHVfd3JhcHBlcntcclxuICAgICAgICBkaXNwbGF5OiBmbGV4O1xyXG4gICAgICAgIGp1c3RpZnktY29udGVudDpzcGFjZS1iZXR3ZWVuO1xyXG4gICAgICAgIGZsZXgtd3JhcDp3cmFwO1xyXG4gICAgICAgIC5hY3R1e1xyXG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XHJcbiAgICAgICAgICAgIHdpZHRoOjMxJTtcclxuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xyXG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xyXG4gICAgICAgICAgICBtYXJnaW46MzBweCAwO1xyXG4gICAgICAgICAgICAuaW1hZ2VfaG9sZGVye1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGdyaWQ7XHJcbiAgICAgICAgICAgICAgICBpbWd7XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGF0ZXtcclxuICAgICAgICAgICAgICAgIHdpZHRoOjI4JTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcclxuICAgICAgICAgICAgICAgIHRvcDowO1xyXG4gICAgICAgICAgICAgICAgcmlnaHQ6MDtcclxuICAgICAgICAgICAgICAgIGJvdHRvbTowO1xyXG4gICAgICAgICAgICAgICAgbWluLXdpZHRoOjEyMnB4O1xyXG4gICAgICAgICAgICAgICAgcGFkZGluZzoxMHB4IDMwcHg7XHJcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOnJnYmEoMTgsIDc4LCAxNTcsIDAuNzUpO1xyXG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgICAgICAgICAgc3Ryb25ne1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogN2VtO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiB3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcclxuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogODAwO1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IC0xNnB4O1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgc3BhbntcclxuICAgICAgICAgICAgICAgICAgICBjb2xvcjp3aGl0ZTtcclxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6M2VtO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OjMwMDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgICAgICBwYWRkaW5nOjMwcHg7XHJcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OjE3NHB4O1xyXG4gICAgICAgICAgICAgICAgd2lkdGg6NzIlO1xyXG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XHJcbiAgICAgICAgICAgICAgICBjbGVhcjpib3RoO1xyXG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDp3aGl0ZTtcclxuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246YWxsIDAuM3MgZWFzZTtcclxuICAgICAgICAgICAgICAgIGgze1xyXG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6MDtcclxuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiMwMDdiZTQ7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBwe1xyXG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZToxLjc1ZW07XHJcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTowO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICY6aG92ZXJ7XHJcbiAgICAgICAgICAgICAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6MTAwJTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG5cclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuXHJcbi5jYXRhbG9ndWV7XHJcbiAgICBwYWRkaW5nOjAgNyU7XHJcbiAgICAuaW1hZ2VfaG9sZGVye1xyXG4gICAgICAgIHBvc2l0aW9uOnJlbGF0aXZlO1xyXG4gICAgICAgIGltZ3tcclxuICAgICAgICAgICAgbWF4LXdpZHRoOjEwMCU7XHJcbiAgICAgICAgfVxyXG4gICAgICAgICY6YWZ0ZXJ7XHJcbiAgICAgICAgICAgIGNvbnRlbnQ6XCJcIjtcclxuICAgICAgICAgICAgcG9zaXRpb246YWJzb2x1dGU7XHJcbiAgICAgICAgICAgIGxlZnQ6MDtcclxuICAgICAgICAgICAgYm90dG9tOi01MHB4O1xyXG4gICAgICAgICAgICByaWdodDowO1xyXG4gICAgICAgICAgICBoZWlnaHQ6MTAwcHg7XHJcbiAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoMTgsIDc4LCAxNTcsIDAuNzUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIC5idG57XHJcbiAgICAgICAgYmFja2dyb3VuZDojMDA3YmU0O1xyXG4gICAgICAgIGNvbG9yOndoaXRlO1xyXG4gICAgICAgIGRpc3BsYXk6IHRhYmxlO1xyXG4gICAgICAgIG1hcmdpbjowIGF1dG87XHJcbiAgICB9XHJcbiAgICAuZGVzY3JpcHRpb257XHJcbiAgICAgICAgcGFkZGluZzowIDc1cHggNTBweDtcclxuICAgICAgICBtYXgtd2lkdGg6ODE1cHg7XHJcbiAgICAgICAgbWFyZ2luOi0zNTBweCBhdXRvIDA7XHJcbiAgICAgICAgZGlzcGxheTogdGFibGU7XHJcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xyXG4gICAgICAgIGJhY2tncm91bmQ6d2hpdGU7XHJcbiAgICAgICAgcG9zaXRpb246cmVsYXRpdmU7XHJcbiAgICAgICAgaDJ7XHJcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XHJcbiAgICAgICAgICAgIGZvbnQtc2l6ZTozLjVlbTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcHtcclxuICAgICAgICAgICAgZm9udC1zaXplOjEuNzVlbTtcclxuICAgICAgICAgICAgY29sb3I6IzEyNGU5ZDtcclxuICAgICAgICAgICAgbGluZS1oZWlnaHQ6MS41ZW07XHJcbiAgICAgICAgICAgIG1hcmdpbjo1MHB4IDA7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjEyMDBweCl7XHJcblxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjEwMjRweCl7XHJcblxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjc0OHB4KXtcclxuXHJcbn1cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDo5ODBweCl7XHJcblxyXG59XHJcblxyXG5AbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOjY1MHB4KXtcclxuXHJcbn1cclxuXHJcbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6NDYwcHgpe1xyXG5cclxufVxyXG5cclxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDozNjBweCl7XHJcblxyXG59XHJcblxyXG5cclxuXHJcbiJdfQ== */
