@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Lato:400,700,900,300);
@font-face {
  font-family: 'Chelsea-Market';
  src: url("/fonts/chelseamarket-regular-webfont.eot");
  /* IE9 Compat Modes */
  src: url("/fonts/chelseamarket-regular-webfont.eot?#iefix") format("embedded-opentype"), url("/fonts/chelseamarket-regular-webfont.woff2") format("woff2"), url("/fonts/chelseamarket-regular-webfont.woff") format("woff"), url("/fonts/chelseamarket-regular-webfont.ttf") format("truetype"), url("/fonts/chelseamarket-regular-webfont.svg#ChelseaMarket-Regular") format("svg");
  /* Legacy iOS */
  font-weight: normal;
  font-style: normal; }

.theme-inverted h1, .theme-inverted h2, .theme-inverted h3, .theme-inverted h4, .theme-inverted h5, .theme-inverted h6 {
  color: #FFF; }

.theme-inverted p {
  color: #FFF; }

em {
  color: #4A4A4A !important; }

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body {
  position: relative;
  padding-bottom: 0px;
  min-height: 100%;
  height: 100%; }
  body.error {
    padding: 0px !important; }

h1, h2, h3, h4, h5, h6 {
  font-family: "Chelsea-Market", sans-serif !important;
  color: #005AA6 !important; }
  h1.alt, h2.alt, h3.alt, h4.alt, h5.alt, h6.alt {
    font-weight: 700;
    text-transform: uppercase; }
  h1.bold, h2.bold, h3.bold, h4.bold, h5.bold, h6.bold {
    font-weight: 700; }

p {
  font-weight: 400;
  display: block;
  -webkit-margin-before: 0px;
  -webkit-margin-after: 0px;
  -webkit-margin-start: 0px;
  -webkit-margin-end: 0px; }
  p.slim {
    font-weight: 300; }

address {
  font-weight: 300; }

p.legal {
  font-size: 12px;
  line-height: 1.3;
  color: #b0b0b0; }

ul {
  list-style-position: inside; }

.uk-alert ul {
  margin: 0px;
  -webkit-margin: none;
  list-style-position: outside;
  margin-left: 20px; }
  .uk-alert ul li {
    line-height: 24px; }

#error-container {
  box-sizing: border-box;
  padding: 35px 0px; }
  #error-container h1 {
    color: #b0b0b0;
    font-weight: 300; }
  #error-container p {
    margin: 25px 0px; }
  #error-container #logo {
    width: 200px;
    display: inline-block;
    margin-bottom: 25px; }

/*!
 * Cropper.js v1.1.0
 * https://github.com/fengyuanchen/cropperjs
 *
 * Copyright (c) 2015-2017 Fengyuan Chen
 * Released under the MIT license
 *
 * Date: 2017-10-08T09:10:57.634Z
 */
.cropper-container {
  direction: ltr;
  font-size: 0;
  line-height: 0;
  position: relative;
  -ms-touch-action: none;
  touch-action: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }

.cropper-container img {
  display: block;
  height: 100%;
  image-orientation: 0deg;
  max-height: none !important;
  max-width: none !important;
  min-height: 0 !important;
  min-width: 0 !important;
  width: 100%; }

.cropper-canvas, .cropper-crop-box, .cropper-drag-box, .cropper-modal, .cropper-wrap-box {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0; }

.cropper-canvas, .cropper-wrap-box {
  overflow: hidden; }

.cropper-drag-box {
  background-color: #fff;
  opacity: 0; }

.cropper-modal {
  background-color: #000;
  opacity: .5; }

.cropper-view-box {
  display: block;
  height: 100%;
  outline-color: rgba(51, 153, 255, 0.75);
  outline: 1px solid #39f;
  overflow: hidden;
  width: 100%; }

.cropper-dashed {
  border: 0 dashed #eee;
  display: block;
  opacity: .5;
  position: absolute; }

.cropper-dashed.dashed-h {
  border-bottom-width: 1px;
  border-top-width: 1px;
  height: 33.33333%;
  left: 0;
  top: 33.33333%;
  width: 100%; }

.cropper-dashed.dashed-v {
  border-left-width: 1px;
  border-right-width: 1px;
  height: 100%;
  left: 33.33333%;
  top: 0;
  width: 33.33333%; }

.cropper-center {
  display: block;
  height: 0;
  left: 50%;
  opacity: .75;
  position: absolute;
  top: 50%;
  width: 0; }

.cropper-center:after, .cropper-center:before {
  background-color: #eee;
  content: " ";
  display: block;
  position: absolute; }

.cropper-center:before {
  height: 1px;
  left: -3px;
  top: 0;
  width: 7px; }

.cropper-center:after {
  height: 7px;
  left: 0;
  top: -3px;
  width: 1px; }

.cropper-face, .cropper-line, .cropper-point {
  display: block;
  height: 100%;
  opacity: .1;
  position: absolute;
  width: 100%; }

.cropper-face {
  background-color: #fff;
  left: 0;
  top: 0; }

.cropper-line {
  background-color: #39f; }

.cropper-line.line-e {
  cursor: e-resize;
  right: -3px;
  top: 0;
  width: 5px; }

.cropper-line.line-n {
  cursor: n-resize;
  height: 5px;
  left: 0;
  top: -3px; }

.cropper-line.line-w {
  cursor: w-resize;
  left: -3px;
  top: 0;
  width: 5px; }

.cropper-line.line-s {
  bottom: -3px;
  cursor: s-resize;
  height: 5px;
  left: 0; }

.cropper-point {
  background-color: #39f;
  height: 5px;
  opacity: .75;
  width: 5px; }

.cropper-point.point-e {
  cursor: e-resize;
  margin-top: -3px;
  right: -3px;
  top: 50%; }

.cropper-point.point-n {
  cursor: n-resize;
  left: 50%;
  margin-left: -3px;
  top: -3px; }

.cropper-point.point-w {
  cursor: w-resize;
  left: -3px;
  margin-top: -3px;
  top: 50%; }

.cropper-point.point-s {
  bottom: -3px;
  cursor: s-resize;
  left: 50%;
  margin-left: -3px; }

.cropper-point.point-ne {
  cursor: ne-resize;
  right: -3px;
  top: -3px; }

.cropper-point.point-nw {
  cursor: nw-resize;
  left: -3px;
  top: -3px; }

.cropper-point.point-sw {
  bottom: -3px;
  cursor: sw-resize;
  left: -3px; }

.cropper-point.point-se {
  bottom: -3px;
  cursor: se-resize;
  height: 20px;
  opacity: 1;
  right: -3px;
  width: 20px; }

@media (min-width: 768px) {
  .cropper-point.point-se {
    height: 15px;
    width: 15px; } }

@media (min-width: 992px) {
  .cropper-point.point-se {
    height: 10px;
    width: 10px; } }

@media (min-width: 1200px) {
  .cropper-point.point-se {
    height: 5px;
    opacity: .75;
    width: 5px; } }

.cropper-point.point-se:before {
  background-color: #39f;
  bottom: -50%;
  content: " ";
  display: block;
  height: 200%;
  opacity: 0;
  position: absolute;
  right: -50%;
  width: 200%; }

.cropper-invisible {
  opacity: 0; }

.cropper-bg {
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQAQMAAAAlPW0iAAAAA3NCSVQICAjb4U/gAAAABlBMVEXMzMz////TjRV2AAAACXBIWXMAAArrAAAK6wGCiw1aAAAAHHRFWHRTb2Z0d2FyZQBBZG9iZSBGaXJld29ya3MgQ1M26LyyjAAAABFJREFUCJlj+M/AgBVhF/0PAH6/D/HkDxOGAAAAAElFTkSuQmCC"); }

.cropper-hide {
  display: block;
  height: 0;
  position: absolute;
  width: 0; }

.cropper-hidden {
  display: none !important; }

.cropper-move {
  cursor: move; }

.cropper-crop {
  cursor: crosshair; }

.cropper-disabled .cropper-drag-box, .cropper-disabled .cropper-face, .cropper-disabled .cropper-line, .cropper-disabled .cropper-point {
  cursor: not-allowed; }

.content-padding {
  padding: 15px; }
  @media (min-width: 768px) {
    .content-padding {
      padding: 30px; } }
  @media (min-width: 960px) {
    .content-padding {
      padding: 45px; } }

.content-padding-mobile {
  padding: 0px 15px; }
  @media (min-width: 960px) {
    .content-padding-mobile {
      padding: 0; } }

.page-header {
  padding-bottom: 0px;
  margin-bottom: 15px;
  margin-top: 10px;
  border-bottom: 1px dotted #005AA6; }
  .page-header h1 {
    font-size: 28px;
    font-weight: 700;
    margin: 0px; }
  @media (min-width: 768px) {
    .page-header {
      padding-bottom: 10px;
      margin-bottom: 30px;
      margin-top: 25px; } }

.hide {
  display: none; }

.spacer {
  height: 25px; }

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

.modal-content {
  border-radius: 3px; }
  .modal-content p {
    font-weight: 400; }
  .modal-content.modal-blue {
    background-color: #005AA6;
    color: #FFF; }

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }

.clearfix {
  display: inline-block; }

/* start commented backslash hack \*/
* html .clearfix {
  height: 1%; }

.clearfix {
  display: block; }

/* close commented backslash hack */
[v-cloak] {
  display: none; }

.margin-top {
  margin-top: 5px; }

.loading {
  -webkit-animation: preloader .8s linear infinite;
  animation: preloader .8s linear infinite;
  width: 35px !important;
  border-radius: 100% !important;
  background-color: #FFFFFF;
  padding: 0px;
  border-right-color: #4A4A4A !important;
  color: transparent; }

@keyframes preloader {
  from {
    transform: rotate(0deg); }
  to {
    transform: rotate(360deg); } }

@-webkit-keyframes preloader {
  from {
    -webkit-transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(360deg); } }

#ticket-list {
  list-style: none;
  margin: 0px;
  margin-bottom: 25px; }
  #ticket-list .ticket-type {
    display: block;
    padding: 15px;
    box-sizing: border-box;
    background-color: #FFFFFF;
    width: 100%;
    border-radius: 3px;
    margin-bottom: 5px;
    position: relative;
    border: 1px solid whitesmoke;
    -webkit-box-shadow: 1px 1px 2px rgba(227, 227, 227, 0.6);
    -moz-box-shadow: 1px 1px 2px rgba(227, 227, 227, 0.6);
    box-shadow: 1px 1px 2px rgba(227, 227, 227, 0.6); }
    #ticket-list .ticket-type .parc {
      font-size: 12px;
      font-weight: 700;
      text-transform: uppercase;
      margin-bottom: 5px; }
    #ticket-list .ticket-type .title {
      font-size: 18px;
      font-weight: 700;
      position: relative;
      margin-bottom: 4px; }
    #ticket-list .ticket-type .subtitle {
      font-size: 14px;
      color: #b0b0b0;
      font-weight: 400;
      position: relative; }
      #ticket-list .ticket-type .subtitle .promo {
        background-color: #b20000;
        font-size: 12px;
        line-height: 12px;
        color: #FFF;
        text-transform: uppercase;
        font-weight: 700;
        padding: 2px 5px;
        border-radius: 3px;
        position: relative;
        margin-right: 3px; }
      #ticket-list .ticket-type .subtitle .info {
        background-color: #7d7d7d;
        white-space: nowrap;
        color: #FFF;
        text-decoration: none;
        font-size: 12px;
        line-height: 12px;
        text-transform: uppercase;
        font-weight: 700;
        padding: 2px 5px;
        border-radius: 3px;
        position: relative;
        margin-right: 3px; }
    #ticket-list .ticket-type .validity {
      font-size: 12px;
      line-height: 1;
      color: #b0b0b0;
      text-transform: uppercase; }
    #ticket-list .ticket-type .ticket-actions {
      margin-top: 15px; }
      @media (min-width: 480px) {
        #ticket-list .ticket-type .ticket-actions {
          margin-top: 0px;
          float: right; } }
      #ticket-list .ticket-type .ticket-actions .pricing {
        float: left;
        text-align: right;
        margin-right: 15px; }
        #ticket-list .ticket-type .ticket-actions .pricing .price {
          font-size: 18px;
          font-weight: 700;
          margin-bottom: 0px; }
        #ticket-list .ticket-type .ticket-actions .pricing .price-info {
          font-size: 12px;
          color: #b0b0b0;
          text-transform: uppercase; }
          #ticket-list .ticket-type .ticket-actions .pricing .price-info.lt {
            text-decoration: line-through; }
      #ticket-list .ticket-type .ticket-actions .amount {
        padding: 0px 35px;
        padding-right: 45px;
        position: relative;
        margin-top: 5px;
        box-sizing: border-box;
        width: 100%;
        float: none; }
        @media (min-width: 768px) {
          #ticket-list .ticket-type .ticket-actions .amount {
            margin-top: 0px;
            padding: 0px;
            float: right;
            width: auto; } }
        #ticket-list .ticket-type .ticket-actions .amount .type-min {
          position: absolute;
          left: 0px;
          top: 3px; }
          @media (min-width: 768px) {
            #ticket-list .ticket-type .ticket-actions .amount .type-min {
              position: relative;
              left: auto;
              top: -3px; } }
        #ticket-list .ticket-type .ticket-actions .amount .type-plus {
          position: absolute;
          right: 0px;
          top: 3px; }
          @media (min-width: 768px) {
            #ticket-list .ticket-type .ticket-actions .amount .type-plus {
              position: relative;
              right: auto;
              top: -3px; } }
        #ticket-list .ticket-type .ticket-actions .amount .pricing-mobile {
          display: inline-block; }
          #ticket-list .ticket-type .ticket-actions .amount .pricing-mobile .price {
            font-size: 20px;
            font-weight: 700;
            margin-bottom: 3px; }
          #ticket-list .ticket-type .ticket-actions .amount .pricing-mobile .price-info {
            font-size: 12px;
            color: #b0b0b0;
            text-transform: uppercase; }
            #ticket-list .ticket-type .ticket-actions .amount .pricing-mobile .price-info.lt {
              text-decoration: line-through; }
        #ticket-list .ticket-type .ticket-actions .amount .amount-box {
          display: block;
          float: left;
          width: 60px;
          text-align: center;
          margin-left: 5px;
          margin-right: 5px;
          float: left; }
          @media (min-width: 768px) {
            #ticket-list .ticket-type .ticket-actions .amount .amount-box {
              float: none;
              display: inline-block; } }
          #ticket-list .ticket-type .ticket-actions .amount .amount-box .ticket-amount {
            width: 45px;
            font-size: 20px;
            text-align: center;
            line-height: 35px;
            padding: 0px;
            border: 1px solid #e3e3e3;
            border-radius: 3px;
            -webkit-transition: all .3s;
            /* Safari */
            transition: all .3s; }
    #ticket-list .ticket-type .pricing-sales {
      text-align: left; }
      @media (min-width: 768px) {
        #ticket-list .ticket-type .pricing-sales {
          text-align: right; } }
      #ticket-list .ticket-type .pricing-sales .price {
        font-size: 20px;
        font-weight: 700;
        margin-bottom: 3px; }
      #ticket-list .ticket-type .pricing-sales .price-info {
        font-size: 12px;
        color: #b0b0b0;
        text-transform: uppercase; }
        #ticket-list .ticket-type .pricing-sales .price-info.lt {
          text-decoration: line-through; }
  #ticket-list .ticket-voucher {
    box-sizing: border-box;
    background-color: #FFFFFF;
    border-radius: 3px;
    padding-right: 25px; }
    #ticket-list .ticket-voucher .thumbnail-wrap .thumbnail {
      width: 50px;
      display: block;
      border-radius: 3px;
      margin-bottom: 10px; }
      @media (min-width: 768px) {
        #ticket-list .ticket-voucher .thumbnail-wrap .thumbnail {
          width: 100px;
          margin-bottom: 0px; } }
    @media (min-width: 768px) {
      #ticket-list .ticket-voucher .thumbnail-wrap {
        float: left;
        margin-right: 15px; } }
    #ticket-list .ticket-voucher .info-wrap {
      float: left; }
    #ticket-list .ticket-voucher .price {
      font-size: 18px;
      font-weight: 700;
      color: #005AA6; }
    #ticket-list .ticket-voucher .actions {
      position: absolute;
      right: 20px;
      top: 50%;
      transform: translateY(-50%); }
      #ticket-list .ticket-voucher .actions a {
        color: #4A4A4A; }

.form fieldset {
  border: none;
  padding: 0px; }
  .form fieldset .form-group {
    display: block;
    margin-bottom: 15px;
    position: relative; }
    .form fieldset .form-group label {
      display: block;
      margin-bottom: 10px;
      text-transform: uppercase;
      font-size: 13px;
      font-weight: 700; }
      .form fieldset .form-group label.larger-margin {
        margin-bottom: 20px; }
    .form fieldset .form-group input[type=text], .form fieldset .form-group input[type=number], .form fieldset .form-group input[type=email] {
      display: block;
      width: 100%;
      outline: none;
      border: 1px solid #e3e3e3;
      border-radius: 3px;
      padding: 10px 10px;
      font-size: 15px;
      box-sizing: border-box; }
      .form fieldset .form-group input[type=text]::-webkit-input-placeholder, .form fieldset .form-group input[type=number]::-webkit-input-placeholder, .form fieldset .form-group input[type=email]::-webkit-input-placeholder {
        font-family: "Lato", sans-serif !important;
        color: #b0b0b0 !important;
        font-weight: 400; }
      .form fieldset .form-group input[type=text]:-moz-placeholder, .form fieldset .form-group input[type=number]:-moz-placeholder, .form fieldset .form-group input[type=email]:-moz-placeholder {
        font-family: "Lato", sans-serif !important;
        color: #b0b0b0 !important;
        font-weight: 400; }
      .form fieldset .form-group input[type=text]::-moz-placeholder, .form fieldset .form-group input[type=number]::-moz-placeholder, .form fieldset .form-group input[type=email]::-moz-placeholder {
        font-family: "Lato", sans-serif !important;
        color: #b0b0b0 !important;
        font-weight: 400; }
      .form fieldset .form-group input[type=text]:-ms-input-placeholder, .form fieldset .form-group input[type=number]:-ms-input-placeholder, .form fieldset .form-group input[type=email]:-ms-input-placeholder {
        font-family: "Lato", sans-serif !important;
        color: #b0b0b0 !important;
        font-weight: 400; }
    .form fieldset .form-group textarea {
      display: block;
      resize: none;
      width: 100%;
      outline: none;
      border: 1px solid #e3e3e3;
      border-radius: 3px;
      padding: 10px 10px;
      font-size: 15px;
      box-sizing: border-box;
      font-family: "Lato", sans-serif; }
      .form fieldset .form-group textarea::-webkit-input-placeholder {
        font-family: "Lato", sans-serif !important;
        color: #cacaca !important;
        font-weight: 300; }
      .form fieldset .form-group textarea:-moz-placeholder {
        font-family: "Lato", sans-serif !important;
        color: #cacaca !important;
        font-weight: 300; }
      .form fieldset .form-group textarea::-moz-placeholder {
        font-family: "Lato", sans-serif !important;
        color: #cacaca !important;
        font-weight: 300; }
      .form fieldset .form-group textarea:-ms-input-placeholder {
        font-family: "Lato", sans-serif !important;
        color: #cacaca !important;
        font-weight: 300; }
    .form fieldset .form-group .limit {
      position: relative;
      text-align: right;
      margin: 0px;
      font-size: 13px;
      font-weight: 700;
      color: #8a8a8a; }
      .form fieldset .form-group .limit.toolong {
        color: #f44c4c; }
    .form fieldset .form-group .checkbox-label {
      padding-top: 0px;
      font-size: 15px;
      text-transform: none;
      padding-left: 25px;
      position: relative;
      font-weight: 400; }
    .form fieldset .form-group .radio-label {
      position: relative;
      padding-left: 25px;
      text-transform: none;
      font-size: 15px;
      font-weight: 400; }
    .form fieldset .form-group .payment-logo {
      width: 40px;
      margin-right: 5px; }
    .form fieldset .form-group input[type=radio] {
      margin-right: 5px;
      position: absolute;
      left: 0px;
      margin-top: 5px; }
    .form fieldset .form-group input[type=checkbox] {
      margin-right: 5px;
      position: absolute;
      left: 0px;
      margin-top: 5px; }
    .form fieldset .form-group.form-group-prefix .form-control {
      padding-left: 30px; }
    .form fieldset .form-group.form-group-prefix .prefix {
      position: absolute;
      top: 40px;
      left: 0px;
      font-size: 22px;
      width: 30px; }

/*!
 * Pikaday
 * Copyright © 2014 David Bushell | BSD & MIT license | http://dbushell.com/
 */
.pika-single {
  z-index: 9999;
  display: block;
  position: relative;
  color: #4A4A4A;
  background: #fff;
  border: 1px solid #e3e3e3;
  border-bottom-color: #e3e3e3;
  font-family: "Lato", sans-serif; }
  .pika-single.is-hidden {
    display: none; }
  .pika-single.is-bound {
    position: absolute;
    box-shadow: 0 5px 15px -5px rgba(0, 0, 0, 0.5); }

.pika-single {
  *zoom: 1; }
  .pika-single:before, .pika-single:after {
    content: " ";
    display: table; }
  .pika-single:after {
    clear: both; }

.pika-lendar {
  float: left;
  width: 240px;
  margin: 8px; }

.pika-title {
  position: relative;
  text-align: center; }
  .pika-title select {
    cursor: pointer;
    position: absolute;
    z-index: 9998;
    margin: 0;
    left: 0;
    top: 5px;
    filter: alpha(opacity=0);
    opacity: 0; }

.pika-label {
  display: inline-block;
  *display: inline;
  position: relative;
  z-index: 9999;
  overflow: hidden;
  margin: 0;
  padding: 5px 3px;
  font-size: 14px;
  line-height: 20px;
  font-weight: bold;
  color: #4A4A4A;
  background-color: #fff; }

.pika-prev,
.pika-next {
  display: block;
  cursor: pointer;
  position: relative;
  outline: none;
  border: 0;
  padding: 0;
  width: 20px;
  height: 30px;
  text-indent: 20px;
  white-space: nowrap;
  overflow: hidden;
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 75% 75%;
  opacity: .5;
  *position: absolute;
  *top: 0; }
  .pika-prev:hover,
  .pika-next:hover {
    opacity: 1; }
  .pika-prev.is-disabled,
  .pika-next.is-disabled {
    cursor: default;
    opacity: .2; }

.pika-prev,
.is-rtl .pika-next {
  float: left;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==");
  *left: 0; }

.pika-next,
.is-rtl .pika-prev {
  float: right;
  background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=");
  *right: 0; }

.pika-select {
  display: inline-block;
  *display: inline; }

.pika-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 0; }
  .pika-table th,
  .pika-table td {
    width: 14.285714285714286%;
    padding: 0; }
  .pika-table th {
    color: #999;
    font-size: 12px;
    line-height: 25px;
    font-weight: bold;
    text-align: center; }
  .pika-table abbr {
    border-bottom: none;
    cursor: help; }

.pika-button {
  cursor: pointer;
  display: block;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  outline: none;
  border: 0;
  margin: 0;
  width: 100%;
  padding: 5px;
  color: #666;
  font-size: 12px;
  line-height: 15px;
  text-align: center;
  background: #f5f5f5; }
  .is-today .pika-button {
    color: #005AA6;
    font-weight: bold; }
  .is-selected .pika-button {
    color: #fff;
    font-weight: bold;
    background: #005AA6;
    box-shadow: inset 0 1px 3px #004c8d;
    border-radius: 3px; }
  .is-disabled .pika-button,
  .is-outside-current-month .pika-button {
    color: #999;
    opacity: .3; }
  .is-disabled .pika-button {
    pointer-events: none;
    cursor: default; }
  .pika-button:hover {
    color: #fff;
    background: #005AA6;
    box-shadow: none;
    border-radius: 3px; }
  .pika-button .is-selection-disabled {
    pointer-events: none;
    cursor: default; }

.pika-week {
  font-size: 11px;
  color: #999; }

.is-inrange .pika-button {
  background: #D5E9F7; }

.is-startrange .pika-button {
  color: #fff;
  background: #6CB31D;
  box-shadow: none;
  border-radius: 3px; }

.is-endrange .pika-button {
  color: #fff;
  background: #33aaff;
  box-shadow: none;
  border-radius: 3px; }

.btn {
  background-color: #005AA6;
  font-family: "Lato", sans-serif;
  color: #FFF;
  border-radius: 3px;
  display: inline-block;
  box-sizing: border-box;
  font-weight: 600;
  text-decoration: none;
  padding: 10px 15px;
  line-height: 16px;
  font-size: 15px;
  outline: none;
  border: none;
  cursor: pointer;
  -webkit-transition: all .3s;
  transition: all .3s; }
  .btn.icon-left .fa {
    margin-right: 5px; }
  .btn.icon-right .fa {
    margin-left: 5px; }
  .btn:hover {
    text-decoration: none;
    background-color: #0076d9;
    color: #FFF; }
  .btn.btn-block {
    display: block;
    width: 100%;
    text-align: center; }
  .btn.btn-block-mobile {
    display: block;
    width: 100%;
    text-align: center; }
    @media (min-width: 480px) {
      .btn.btn-block-mobile {
        width: auto;
        text-align: left;
        display: inline-block; } }
  .btn.btn-circle {
    line-height: 35px;
    height: 35px;
    width: 35px;
    padding: 0px;
    border-radius: 100%; }
    .btn.btn-circle .fa {
      margin: 0px; }
  .btn.btn-sm {
    padding: 5px 10px;
    font-size: 15px; }
  .btn.btn-inline {
    margin-left: 5px;
    margin-right: 5px; }
  .btn.btn-lg {
    padding: 12px 20px;
    font-size: 18px; }
  .btn.btn-xlg {
    padding: 15px 20px;
    font-size: 20px; }
  .btn.btn-link {
    background-color: transparent;
    color: #005AA6; }
  .btn.btn-dark {
    background-color: #4A4A4A; }
  .btn.btn-disabled {
    background-color: #e3e3e3;
    cursor: default;
    pointer-events: none; }
  .btn.btn-success {
    background-color: #78C056;
    color: #FFF; }
    .btn.btn-success:hover {
      color: #FFF;
      background-color: #81d659; }
  .btn.btn-danger {
    background-color: #f44c4c;
    color: #FFF; }
    .btn.btn-danger:hover {
      color: #FFF;
      background-color: #ff5b5b; }

#header {
  position: relative;
  box-sizing: border-box;
  background-size: cover;
  background-position: center;
  overflow: hidden; }
  #header #spiderweb {
    width: 15%;
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 2; }
  #header #gradient {
    background: -moz-linear-gradient(-90deg, #005aa6 5%, rgba(0, 90, 166, 0.3) 100%);
    background: -webkit-gradient(left top, right bottom, color-stop(5%, #005aa6), color-stop(100%, rgba(0, 90, 166, 0.3)));
    background: -webkit-linear-gradient(-90deg, #005aa6 5%, rgba(0, 90, 166, 0.3) 100%);
    background: -o-linear-gradient(-90deg, #005aa6 5%, rgba(0, 90, 166, 0.3) 100%);
    background: -ms-linear-gradient(-90deg, #005aa6 5%, rgba(0, 90, 166, 0.3) 100%);
    background: linear-gradient(180deg, #005aa6 5%, rgba(0, 90, 166, 0.3) 100%);
    left: 0px;
    right: 0px;
    bottom: 0px;
    top: 0px;
    position: absolute;
    z-index: 3; }
  #header #video {
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    width: 100%;
    position: absolute;
    z-index: 2; }
  #header #cover {
    position: relative;
    z-index: 5; }
    @media (min-width: 960px) {
      #header #cover {
        padding-bottom: 30px;
        padding-top: 20px; } }
    #header #cover img {
      display: block; }
    #header #cover #cover-box {
      background-color: #FFFFFF; }
      @media (min-width: 960px) {
        #header #cover #cover-box {
          border-radius: 3px;
          -webkit-box-shadow: 0px 2px 34px rgba(0, 0, 0, 0.35);
          -moz-box-shadow: 0px 2px 34px rgba(0, 0, 0, 0.35);
          box-shadow: 0px 2px 34px rgba(0, 0, 0, 0.35); } }
      #header #cover #cover-box #slideshow {
        border-top-right-radius: 3px;
        border-bottom-right-radius: 3px;
        background-image: url("/images/banner.jpg");
        height: 100%;
        min-height: 280px;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center; }
      #header #cover #cover-box #bow {
        position: absolute;
        right: -20px;
        top: -10px;
        display: none; }
        @media (min-width: 768px) {
          #header #cover #cover-box #bow {
            display: block;
            width: 150px; } }
        @media (min-width: 960px) {
          #header #cover #cover-box #bow {
            display: block;
            width: 200px; } }
      #header #cover #cover-box .content {
        padding: 0px;
        padding: 25px 10px; }
        @media (min-width: 768px) {
          #header #cover #cover-box .content {
            padding: 30px 45px; } }
        #header #cover #cover-box .content h1 {
          color: #005AA6;
          font-family: "Lato", sans-serif !important;
          font-size: 26px;
          margin: 0 auto;
          line-height: 28px;
          text-align: center;
          margin-bottom: 25px; }
          #header #cover #cover-box .content h1 b {
            font-weight: 900; }
        #header #cover #cover-box .content .features {
          list-style: none;
          margin: 0px; }
          #header #cover #cover-box .content .features > li {
            border-bottom: 1px dotted #e3e3e3;
            position: relative;
            padding: 15px 0px;
            padding-left: 50px;
            font-size: 18px;
            line-height: 20px; }
            #header #cover #cover-box .content .features > li .icon {
              position: absolute;
              left: 0px;
              top: 50%;
              transform: translateY(-50%);
              width: 35px;
              height: 35px; }
            #header #cover #cover-box .content .features > li:last-child {
              border: none; }
  #header #menu-top {
    position: relative;
    float: right;
    padding: 0px;
    margin: 0px;
    list-style: none;
    margin-top: 15px;
    z-index: 10; }
    #header #menu-top li {
      float: left;
      margin-right: 12px; }
      #header #menu-top li a {
        padding: 5px 0px;
        font-size: 13px;
        color: #FFF;
        line-height: 20px;
        vertical-align: middle;
        text-decoration: none; }
      #header #menu-top li.locale-toggle {
        margin-right: 5px; }
        #header #menu-top li.locale-toggle a {
          font-weight: 900;
          padding: 2px 6px;
          margin-top: -2px;
          border-radius: 3px;
          line-height: 20px;
          -webkit-transition: all .15s;
          transition: all .15s; }
        #header #menu-top li.locale-toggle:hover a {
          background-color: #003460;
          color: #00ACE7; }
        #header #menu-top li.locale-toggle.active a {
          color: #00ACE7;
          background-color: #FFF;
          pointer-events: none; }
      #header #menu-top li:last-child {
        margin: 0px; }
  #header #nav {
    position: relative;
    padding-bottom: 0px;
    z-index: 15; }
    #header #nav #menu-main-box {
      width: 100%;
      text-align: center;
      position: relative;
      padding: 8px 0px; }
      @media (min-width: 768px) {
        #header #nav #menu-main-box {
          float: left;
          padding: 0px; } }
      #header #nav #menu-main-box #menu-burger {
        color: #FFF;
        position: absolute;
        left: 5px;
        margin-top: 5px;
        font-size: 24px; }
      #header #nav #menu-main-box #logo {
        display: inline-block; }
        @media (min-width: 768px) {
          #header #nav #menu-main-box #logo {
            width: 120px;
            display: block;
            float: left;
            margin-right: 40px;
            margin-top: 10px;
            margin-bottom: 10px; } }
        #header #nav #menu-main-box #logo img {
          width: 60px; }
          @media (min-width: 768px) {
            #header #nav #menu-main-box #logo img {
              width: 100%; } }
      #header #nav #menu-main-box #cart-mobile {
        color: #FFF;
        position: absolute;
        right: 10px;
        margin-top: 5px;
        font-size: 24px; }
        #header #nav #menu-main-box #cart-mobile .fa {
          color: #FFF; }
        #header #nav #menu-main-box #cart-mobile .items {
          position: absolute;
          font-size: 10px;
          color: #FFF;
          width: 20px;
          right: -10px;
          top: -6px;
          height: 20px;
          display: inline-block;
          border-radius: 100%;
          line-height: 20px;
          text-align: center;
          font-weight: 700;
          background-color: #78C056; }
          #header #nav #menu-main-box #cart-mobile .items.hidden {
            display: none; }
        #header #nav #menu-main-box #cart-mobile .fa {
          margin-right: 5px; }
      #header #nav #menu-main-box #menu-main {
        float: left;
        list-style: none;
        margin: none;
        margin-top: 32px;
        text-align: left; }
        #header #nav #menu-main-box #menu-main li {
          float: left;
          margin-right: 20px; }
          #header #nav #menu-main-box #menu-main li a {
            display: block;
            font-family: "Chelsea-Market", sans-serif;
            color: #FFF;
            font-size: 17px;
            letter-spacing: -.5px;
            text-decoration: none; }
            #header #nav #menu-main-box #menu-main li a:hover {
              color: #00ACE7; }
          #header #nav #menu-main-box #menu-main li.dropdown {
            position: relative; }
            #header #nav #menu-main-box #menu-main li.dropdown .menu-dropdown {
              display: none;
              position: absolute;
              padding-top: 10px;
              z-index: 10; }
              #header #nav #menu-main-box #menu-main li.dropdown .menu-dropdown .menu-dropdown-wrapper {
                background-color: #FFF;
                padding: 25px;
                border-radius: 3px;
                width: 400px; }
                #header #nav #menu-main-box #menu-main li.dropdown .menu-dropdown .menu-dropdown-wrapper ul {
                  float: left;
                  list-style: none;
                  display: block;
                  width: calc(50% - 10px);
                  margin: 0px;
                  margin-right: 20px;
                  box-sizing: border-box;
                  border-right: 1px solid #e3e3e3; }
                  #header #nav #menu-main-box #menu-main li.dropdown .menu-dropdown .menu-dropdown-wrapper ul li {
                    display: block;
                    float: none; }
                    #header #nav #menu-main-box #menu-main li.dropdown .menu-dropdown .menu-dropdown-wrapper ul li a {
                      font-family: "Lato", sans-serif;
                      font-size: 16px;
                      color: #005AA6;
                      line-height: 25px; }
                      #header #nav #menu-main-box #menu-main li.dropdown .menu-dropdown .menu-dropdown-wrapper ul li a:hover {
                        color: #00ACE7; }
                  #header #nav #menu-main-box #menu-main li.dropdown .menu-dropdown .menu-dropdown-wrapper ul:last-child {
                    border-right: none;
                    margin-right: 0px; }
            #header #nav #menu-main-box #menu-main li.dropdown:hover a {
              color: #00ACE7; }
            #header #nav #menu-main-box #menu-main li.dropdown:hover .menu-dropdown {
              display: block; }
      #header #nav #menu-main-box #cart-button {
        border-radius: 3px;
        background-color: #78C056;
        color: #FFF;
        text-decoration: none;
        display: inline-block;
        margin-top: 24px;
        padding: 8px 15px;
        line-height: 18px;
        font-size: 18px;
        -webkit-transition: all .15s;
        transition: all .15s;
        position: relative; }
        #header #nav #menu-main-box #cart-button .items {
          position: absolute;
          font-size: 10px;
          color: #FFF;
          width: 20px;
          right: -6px;
          top: -6px;
          height: 20px;
          display: inline-block;
          border-radius: 100%;
          line-height: 20px;
          text-align: center;
          font-weight: 700;
          background-color: #00ACE7; }
          #header #nav #menu-main-box #cart-button .items.hidden {
            display: none; }
        #header #nav #menu-main-box #cart-button .fa {
          margin-right: 5px; }
        #header #nav #menu-main-box #cart-button:hover {
          color: #FFF;
          background-color: #81d659; }
      #header #nav #menu-main-box #default-lang-toggle {
        display: inline-block;
        margin-right: 10px;
        line-height: 50px; }
        #header #nav #menu-main-box #default-lang-toggle .locale-toggle {
          margin-right: 5px; }
          #header #nav #menu-main-box #default-lang-toggle .locale-toggle a {
            line-height: 20px;
            color: #00ACE7;
            text-decoration: none;
            -webkit-transition: all .15s;
            transition: all .15s; }
          #header #nav #menu-main-box #default-lang-toggle .locale-toggle:hover a {
            color: #FFF; }
          #header #nav #menu-main-box #default-lang-toggle .locale-toggle.active a {
            color: #FFF;
            font-weight: 700;
            pointer-events: none; }
  #header.default #nav {
    background-color: #005AA6; }

.payment-warning {
  background-color: #F7A500;
  color: #FFF;
  padding: 10px 0px; }
  .payment-warning a {
    font-weight: 900;
    text-decoration: underline; }

#menu-mobile-bar {
  background-color: #005AA6;
  overflow-y: scroll; }
  #menu-mobile-bar #logo-box {
    text-align: center;
    padding: 25px 0px; }
    #menu-mobile-bar #logo-box #logo {
      max-width: 100px;
      display: inline-block; }
  #menu-mobile-bar #menu {
    list-style: none;
    margin: 0px; }
    #menu-mobile-bar #menu li a {
      color: #FFF;
      padding: 10px 15px;
      font-size: 14px;
      text-decoration: none;
      display: block;
      border-bottom: 1px solid rgba(255, 255, 255, 0.2);
      text-transform: uppercase;
      font-weight: 700;
      position: relative; }
      #menu-mobile-bar #menu li a:hover {
        background-color: #0076d9; }
      #menu-mobile-bar #menu li a.cart {
        background-color: #78C056;
        color: #FFF;
        text-decoration: none;
        display: block;
        font-size: 18px;
        -webkit-transition: all .15s;
        transition: all .15s; }
        #menu-mobile-bar #menu li a.cart .items {
          font-size: 14px;
          color: #FFF;
          position: absolute;
          right: 15px;
          top: 5px;
          width: 30px;
          height: 30px;
          display: inline-block;
          border-radius: 100%;
          line-height: 30px;
          text-align: center;
          font-weight: 700;
          background-color: #00ACE7; }
          #menu-mobile-bar #menu li a.cart .items.hidden {
            display: none; }
        #menu-mobile-bar #menu li a.cart .fa {
          margin-right: 5px; }
        #menu-mobile-bar #menu li a.cart:hover {
          color: #FFF;
          background-color: #81d659; }

#cart-total {
  margin-bottom: 30px; }
  #cart-total #label {
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 700; }
  #cart-total #total {
    font-size: 18px;
    text-transform: uppercase;
    font-weight: 700; }

#checkout-box {
  background-color: #FFF;
  padding: 30px;
  border: 1px solid #e3e3e3; }

#checkout-page {
  padding: 25px; }
  @media (min-width: 768px) {
    #checkout-page {
      padding: 50px; } }
  #checkout-page #logo {
    width: 200px;
    display: inline-block;
    margin-bottom: 25px; }
  #checkout-page #badge-shop {
    width: 200px;
    display: inline-block;
    margin-top: 35px; }

#footer {
  padding: 30px 0px;
  position: absolute;
  bottom: 20px;
  left: 0px;
  right: 0px;
  height: auto;
  box-sizing: border-box; }
  #footer .uk-container {
    position: relative; }
  @media (min-width: 480px) {
    #footer {
      height: 60px; } }
  @media (min-width: 960px) {
    #footer {
      height: 70px; } }
  #footer #colruyt-logo {
    width: 50px;
    display: block;
    float: left;
    position: relative;
    top: 6px; }
    @media (min-width: 480px) {
      #footer #colruyt-logo {
        width: 75px; } }
    @media (min-width: 960px) {
      #footer #colruyt-logo {
        width: 100px; } }
  #footer #menu-footer-box {
    text-align: center;
    position: absolute;
    margin: 0 auto;
    margin-top: 5px; }
    #footer #menu-footer-box .menu-footer-contact {
      font-size: 12px;
      line-height: 5px;
      color: #777; }
    #footer #menu-footer-box #menu-footer {
      list-style: none;
      display: inline-block;
      margin: 0px;
      margin-top: 8px; }
      #footer #menu-footer-box #menu-footer li {
        display: inline-block; }
        #footer #menu-footer-box #menu-footer li a {
          text-decoration: none;
          font-size: 13px; }
        #footer #menu-footer-box #menu-footer li:not(:last-child):after {
          content: "|";
          font-size: 13px;
          color: #b0b0b0;
          padding-left: 7px;
          margin-right: 4px;
          opacity: .4;
          font-weight: 300; }

#counter {
  position: fixed;
  right: -120px;
  background-color: #78C056;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 0px;
  padding: 6px 10px;
  z-index: 10;
  text-align: center;
  top: 0px;
  -webkit-transition: all .5s;
  transition: all .5s; }
  @media (min-width: 768px) {
    #counter {
      top: 120px;
      border-top-left-radius: 3px; } }
  @media (min-width: 1330px) {
    #counter {
      top: 0px;
      border-top-left-radius: 0px; } }
  #counter #time {
    font-size: 18px;
    color: #FFF;
    font-weight: 700; }
  #counter #title {
    color: #FFF;
    text-transform: uppercase;
    font-size: 12px;
    display: none; }
    @media (min-width: 768px) {
      #counter #title {
        display: block; } }

#home {
  background-attachment: fixed;
  background-size: cover;
  background-position: center center;
  z-index: 20;
  position: relative; }
  #home .subtitle {
    background-color: #005AA6;
    padding: 10px 0px;
    position: relative;
    display: block;
    text-decoration: none; }
    #home .subtitle:hover {
      text-decoration: none; }
    #home .subtitle .icon {
      display: block;
      position: absolute;
      top: -3px;
      width: 60px;
      height: 60px;
      background-color: #FFFFFF;
      background-size: contain;
      background-position: center;
      border-radius: 60px;
      -webkit-box-shadow: 0px 0px 7px rgba(157, 157, 157, 0.5);
      -moz-box-shadow: 0px 0px 7px rgba(157, 157, 157, 0.5);
      box-shadow: 0px 0px 7px rgba(157, 157, 157, 0.5);
      z-index: 10; }
    #home .subtitle h2 {
      font-family: "Chelsea-Market", sans-serif;
      font-size: 18px;
      margin: 0px;
      color: #FFF !important;
      padding-left: 80px; }

.product-list {
  padding: 25px 0px; }
  .product-list.limit li:nth-of-type(1n+3):not(.more) {
    display: none; }
  @media (min-width: 960px) {
    .product-list.limit li:nth-of-type(1n+3):not(.more) {
      display: block; } }

.product-box {
  position: relative;
  border-radius: 12px;
  background-color: #FFF;
  border: 1px solid whitesmoke;
  display: block;
  text-decoration: none;
  box-sizing: border-box;
  padding: 5px;
  -webkit-box-shadow: 1px 1px 2px rgba(227, 227, 227, 0.6);
  -moz-box-shadow: 1px 1px 2px rgba(227, 227, 227, 0.6);
  box-shadow: 1px 1px 2px rgba(227, 227, 227, 0.6);
  -webkit-transition: all 300ms cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-transition: all 300ms cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition: all 300ms cubic-bezier(0.215, 0.61, 0.355, 1);
  transition: all 300ms cubic-bezier(0.215, 0.61, 0.355, 1);
  /* easeOutCubic */
  -webkit-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -moz-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  -o-transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); }
  @media (min-width: 480px) {
    .product-box {
      padding: 10px; } }
  @media (min-width: 768px) {
    .product-box {
      padding: 20px;
      padding-top: 30px; } }
  .product-box .promo {
    position: absolute;
    background-color: #b20000;
    z-index: 1;
    color: #FFF;
    text-transform: uppercase;
    font-weight: 600;
    border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    padding: 5px;
    font-size: 9px;
    line-height: 9px;
    left: -2px;
    top: 5px; }
    @media (min-width: 480px) {
      .product-box .promo {
        padding: 5px;
        font-size: 11px;
        line-height: 12px;
        left: -2px;
        top: 8px; } }
    @media (min-width: 768px) {
      .product-box .promo {
        padding: 4px 5px;
        letter-spacing: .3pt;
        font-size: 11px;
        line-height: 11px;
        left: 0px;
        top: 15px; } }
  .product-box .thumb {
    display: block;
    width: 100%;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    height: 80px; }
    @media (min-width: 480px) {
      .product-box .thumb {
        height: 100px; } }
    @media (min-width: 768px) {
      .product-box .thumb {
        margin-bottom: 15px;
        height: 120px; } }
  .product-box .info, .product-box .info-default {
    text-align: center;
    margin-bottom: 15px;
    font-weight: 400; }
  .product-box .info {
    color: #005AA6; }
  .product-box.last {
    text-align: center;
    position: relative;
    padding: 3px;
    box-sizing: border-box; }
    @media (min-width: 480px) {
      .product-box.last {
        padding: 10px; } }
    .product-box.last .frame {
      border: 1px dashed #005AA6;
      width: 100%;
      height: 100%;
      border-radius: 9px;
      position: relative;
      -moz-box-sizing: border-box;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      @media (min-width: 480px) {
        .product-box.last .frame {
          border-radius: 6px; } }
      .product-box.last .frame .content {
        top: 50%;
        transform: translateY(-50%);
        width: 100%;
        left: 0px;
        position: absolute; }
        .product-box.last .frame .content .arrow {
          display: inline-block;
          margin-bottom: 5px;
          width: 20px; }
          @media (min-width: 480px) {
            .product-box.last .frame .content .arrow {
              width: auto;
              margin-bottom: 10px; } }
        .product-box.last .frame .content .label {
          font-size: 9px;
          font-weight: 600;
          color: #005AA6; }
          @media (min-width: 480px) {
            .product-box.last .frame .content .label {
              font-size: 18px; } }
  .product-box:hover {
    -webkit-transform: scale(1.05);
    text-decoration: none;
    -webkit-box-shadow: 4px 4px 6px rgba(227, 227, 227, 0.4);
    -moz-box-shadow: 4px 4px 6px rgba(227, 227, 227, 0.4);
    box-shadow: 4px 4px 6px rgba(227, 227, 227, 0.4); }

@media (min-width: 768px) {
  #category #category-header {
    margin-top: 25px; } }

@media (min-width: 960px) {
  #category #category-header {
    margin-top: 35px; } }

#category #category-header h1 {
  color: #005AA6;
  font-family: "Chelsea-Market", sans-serif;
  line-height: .9;
  font-size: 26px; }
  @media (min-width: 768px) {
    #category #category-header h1 {
      font-size: 32px; } }

@media (min-width: 768px) {
  #category #category-header .banner {
    padding-left: 20px;
    border-radius: 3px;
    overflow: hidden; } }

@media (min-width: 960px) {
  #category #category-header .banner {
    padding-left: 0px; } }

#category #category-header .banner .banner-mobile {
  display: block;
  width: 100%; }
  @media (min-width: 768px) {
    #category #category-header .banner .banner-mobile {
      display: none; } }

#category #category-header .banner .banner-desktop {
  display: none;
  width: 100%; }
  @media (min-width: 768px) {
    #category #category-header .banner .banner-desktop {
      display: block; } }

#category #category-header .content {
  padding: 20px; }
  @media (min-width: 768px) {
    #category #category-header .content {
      padding: 0px;
      padding-left: 30px; } }

#category .park-list-small {
  border-top: 1px solid #e3e3e3;
  padding-top: 15px;
  margin-top: 25px;
  list-style: none; }
  #category .park-list-small li {
    display: inline; }
    #category .park-list-small li a {
      font-size: 13px;
      line-height: 13px;
      color: #b0b0b0; }
    #category .park-list-small li::after {
      content: " - ";
      color: #b0b0b0;
      font-size: 13px;
      line-height: 10px;
      display: inline; }
    #category .park-list-small li:last-child::after {
      display: none; }

#park-header {
  padding: 10px 10px 20px 10px;
  box-sizing: border-box;
  background-position: center center;
  background-size: cover;
  text-align: center;
  position: relative;
  /* Tablet and bigger */ }
  @media (min-width: 768px) {
    #park-header {
      padding: 50px 20px 90px 20px; } }
  #park-header #logo {
    display: inline-block;
    max-height: 150px;
    position: relative;
    /* Tablet and bigger */ }
    @media (min-width: 768px) {
      #park-header #logo {
        max-height: 250px;
        display: block; } }
  #park-header #overlay {
    background-color: rgba(255, 255, 255, 0.6);
    position: absolute;
    left: 0px;
    top: 0px;
    right: 0px;
    bottom: 0px;
    /* Tablet and bigger */ }
    @media (min-width: 768px) {
      #park-header #overlay {
        background-color: transparent; } }

#park-wrapper {
  position: relative;
  background-color: #FFF;
  border-radius: 3px;
  /* Desktop and bigger */ }
  @media (min-width: 960px) {
    #park-wrapper {
      margin-bottom: 25px;
      margin-top: -50px; } }
  #park-wrapper h3 b {
    font-weight: 900; }
  #park-wrapper #title {
    line-height: 22px;
    padding: 20px 15px;
    font-size: 20px;
    font-weight: 700;
    color: #FFF; }
    @media (min-width: 960px) {
      #park-wrapper #title {
        padding: 20px 0; } }
  #park-wrapper #title-mobile {
    text-align: center;
    padding: 15px 15px;
    color: #FFF;
    font-size: 18px; }
  #park-wrapper #cta {
    margin-bottom: 25px; }
    #park-wrapper #cta .btn {
      margin-bottom: 5px; }
      @media (min-width: 480px) {
        #park-wrapper #cta .btn {
          margin-right: 8px; } }
    #park-wrapper #cta .emp-buymore {
      margin-right: 10px;
      font-weight: 700;
      text-align: center;
      margin-bottom: 15px;
      display: block; }
      @media (min-width: 480px) {
        #park-wrapper #cta .emp-buymore {
          display: inline-block; } }
    #park-wrapper #cta .emp-or {
      margin-right: 5px;
      font-weight: 300;
      display: none; }
      @media (min-width: 480px) {
        #park-wrapper #cta .emp-or {
          display: inline-block; } }
  #park-wrapper #disney-subtitle {
    margin-top: -15px;
    margin-bottom: 25px; }
  #park-wrapper #disney-cal {
    width: 100%;
    margin-bottom: 35px;
    display: block; }
  #park-wrapper #disney-conditions {
    margin-bottom: 35px;
    display: block;
    text-align: justify; }
  #park-wrapper #park-video {
    position: relative;
    padding-bottom: 56.25%;
    border-radius: 3px;
    overflow: hidden; }
    #park-wrapper #park-video .park-video-yt {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

/* Tablet and bigger */
/* Desktop and bigger */
#giftcards-home {
  background-color: #FFFFFF; }
  #giftcards-home .header {
    background-image: url("/images/giftcards/cover_giftcards.jpg");
    height: 250px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom center;
    position: relative; }
    @media (min-width: 768px) {
      #giftcards-home .header {
        height: 400px; } }
    #giftcards-home .header .badge {
      position: absolute;
      left: 15px;
      top: 5px;
      display: block;
      -moz-transform: scale(1);
      -o-transform: scale(1);
      -ms-transform: scale(1);
      -webkit-transform: scale(1);
      transform: scale(1); }
      #giftcards-home .header .badge img {
        display: block;
        width: 120px; }
      @media (min-width: 768px) {
        #giftcards-home .header .badge {
          left: 50px;
          top: 75px; }
          #giftcards-home .header .badge img {
            display: block;
            width: 200px; } }
      #giftcards-home .header .badge:hover {
        -webkit-transition: all 0.2s;
        -moz-transition: all 0.2s;
        -ms-transition: all 0.2s;
        -o-transition: all 0.2s;
        transition: all 0.2s;
        -moz-transform: scale(1.1);
        -o-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -webkit-transform: scale(1.1);
        transform: scale(1.1); }
  #giftcards-home .texture {
    background-image: url("/images/giftcards/texture.jpg");
    height: 600px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center;
    position: relative; }
    @media (min-width: 768px) {
      #giftcards-home .texture {
        height: 400px; } }
  #giftcards-home .cta-bar {
    background-color: #005AA6;
    padding: 25px 25px;
    width: 100%;
    box-sizing: border-box;
    margin-top: -600px;
    position: relative;
    z-index: 10; }
    @media (min-width: 768px) {
      #giftcards-home .cta-bar {
        margin-top: -450px;
        border-radius: 3px;
        padding: 30px 40px; } }
    #giftcards-home .cta-bar .notification {
      background-color: #00ACE7;
      color: #FFF;
      display: inline-block;
      box-sizing: border-box;
      padding: 5px 10px;
      font-weight: 700;
      font-size: 12px;
      text-transform: uppercase;
      letter-spacing: 1px;
      width: 100%;
      position: relative;
      text-align: center;
      top: -40px; }
      @media (min-width: 768px) {
        #giftcards-home .cta-bar .notification {
          position: absolute;
          top: -20px;
          text-align: left;
          width: auto; } }
    #giftcards-home .cta-bar .title {
      color: #FFF !important;
      font-size: 22px;
      line-height: 24px;
      font-family: "Chelsea-Market", sans-serif;
      text-align: center;
      margin: 0px;
      margin-bottom: 0px;
      margin-top: -20px; }
      @media (min-width: 768px) {
        #giftcards-home .cta-bar .title {
          font-size: 28px;
          margin-top: 0px;
          line-height: 30px;
          text-align: left;
          margin-bottom: 5px; } }
    #giftcards-home .cta-bar .features {
      list-style: none;
      margin: 0px;
      padding: 0px;
      display: none; }
      #giftcards-home .cta-bar .features li {
        display: inline-block;
        color: #FFF;
        font-size: 16px;
        font-weight: 400;
        letter-spacing: normal; }
        #giftcards-home .cta-bar .features li:after {
          content: "·";
          padding: 0px 3px; }
        #giftcards-home .cta-bar .features li:last-child:after {
          display: none; }
      @media (min-width: 768px) {
        #giftcards-home .cta-bar .features {
          display: block; } }
  #giftcards-home .content {
    padding: 25px 0px; }
    #giftcards-home .content .icon {
      width: 55px;
      height: 55px;
      background-size: contain;
      background-position: center;
      background-repeat: no-repeat;
      display: inline-block; }
    #giftcards-home .content h3.b {
      font-weight: 700;
      font-family: "Lato", sans-serif; }
    @media (min-width: 768px) {
      #giftcards-home .content {
        padding: 50px 0px; } }
    #giftcards-home .content .cta-bottom {
      text-align: center;
      margin-top: 50px; }
    #giftcards-home .content .box-title {
      font-family: "Lato", sans-serif !important;
      color: #4A4A4A !important; }
  #giftcards-home .bottom {
    background-color: #f7f7f7;
    border-top: 1px solid #e3e3e3; }
    #giftcards-home .bottom h3 {
      margin-bottom: 25px; }
    #giftcards-home .bottom .inspiration-wrapper {
      display: block;
      width: 100%;
      margin-bottom: 15px; }
      #giftcards-home .bottom .inspiration-wrapper .inspiration {
        display: block;
        list-style: none; }
        #giftcards-home .bottom .inspiration-wrapper .inspiration li {
          float: left;
          width: 49%;
          margin-right: 2%;
          background-color: blue;
          padding: 5px;
          box-sizing: border-box;
          background-color: #FFFFFF;
          border-radius: 3px;
          margin-bottom: 10px; }
          #giftcards-home .bottom .inspiration-wrapper .inspiration li a {
            display: block; }
            #giftcards-home .bottom .inspiration-wrapper .inspiration li a img {
              display: block;
              width: 100%; }
          #giftcards-home .bottom .inspiration-wrapper .inspiration li:nth-child(2n) {
            margin-right: 0px; }
          @media (min-width: 768px) {
            #giftcards-home .bottom .inspiration-wrapper .inspiration li {
              width: 23.5%;
              margin-bottom: 0px; }
              #giftcards-home .bottom .inspiration-wrapper .inspiration li:nth-child(2n) {
                margin-right: 2%; }
              #giftcards-home .bottom .inspiration-wrapper .inspiration li:last-child {
                margin-right: 0px; } }
    #giftcards-home .bottom #giftfaq .faq {
      list-style: none; }
      #giftcards-home .bottom #giftfaq .faq li {
        border-bottom: 1px solid #e3e3e3;
        padding: 10px 0px; }
        #giftcards-home .bottom #giftfaq .faq li .question {
          display: block;
          font-weight: 600;
          font-size: 13px;
          cursor: pointer; }
        #giftcards-home .bottom #giftfaq .faq li .anwser {
          display: block;
          font-size: 13px;
          display: none;
          margin: 0px; }
        #giftcards-home .bottom #giftfaq .faq li.open .question {
          margin-bottom: 10px; }
        #giftcards-home .bottom #giftfaq .faq li.open .anwser {
          display: block; }
        #giftcards-home .bottom #giftfaq .faq li:last-child {
          border-bottom: 0px; }

#giftcard {
  padding-top: 50px; }
  #giftcard .background {
    background-image: url("/images/giftcards/cover_giftcards.jpg");
    width: 100%;
    height: 100%;
    position: fixed;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom center;
    left: 0px;
    right: 0px;
    bottom: 0px;
    top: 0px; }
    #giftcard .background .dimmer {
      background-color: rgba(0, 52, 96, 0.5);
      width: 100%;
      height: 100%; }
  #giftcard .navigation {
    width: 100%; }
    #giftcard .navigation .logo {
      width: 100px;
      display: block;
      position: absolute;
      top: 25px;
      left: 25px; }
    #giftcard .navigation .btn {
      position: absolute;
      display: block;
      top: 25px;
      right: 25px; }
  #giftcard #preloader {
    position: absolute;
    width: 100%;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
    color: #FFF; }
  #giftcard #wrapper {
    position: relative;
    width: 95%;
    max-width: 900px;
    margin: 0 auto;
    box-sizing: border-box;
    margin-top: 50px;
    background-color: #FFF;
    border-radius: 3px;
    padding: 20px; }
    @media (min-width: 768px) {
      #giftcard #wrapper {
        padding: 50px; } }
    #giftcard #wrapper .menu-wrapper {
      margin-bottom: 20px; }
      @media (min-width: 768px) {
        #giftcard #wrapper .menu-wrapper {
          margin-bottom: 50px; } }
      #giftcard #wrapper .menu-wrapper .menu {
        list-style: none;
        margin: 0px;
        padding: 0px;
        text-align: center; }
        #giftcard #wrapper .menu-wrapper .menu li {
          line-height: 1;
          color: #b0b0b0;
          font-weight: 300;
          line-height: 15px;
          display: inline-block; }
          @media (min-width: 768px) {
            #giftcard #wrapper .menu-wrapper .menu li {
              margin-right: 15px; } }
          #giftcard #wrapper .menu-wrapper .menu li .text {
            line-height: 25px;
            vertical-align: middle;
            display: none; }
            @media (min-width: 768px) {
              #giftcard #wrapper .menu-wrapper .menu li .text {
                display: inline-block; } }
          #giftcard #wrapper .menu-wrapper .menu li .number {
            width: 25px;
            height: 25px;
            background-color: #b0b0b0;
            color: #FFF;
            display: inline-block;
            vertical-align: middle;
            line-height: 25px;
            border-radius: 25px;
            margin-right: 10px; }
          #giftcard #wrapper .menu-wrapper .menu li.active {
            color: #005AA6;
            font-weight: 700;
            display: inline-block; }
            #giftcard #wrapper .menu-wrapper .menu li.active .number {
              background-color: #005AA6; }
    #giftcard #wrapper .slideshow-wrapper {
      width: 100%;
      position: relative;
      box-sizing: border-box; }
      @media (min-width: 768px) {
        #giftcard #wrapper .slideshow-wrapper {
          padding: 0px 150px;
          margin-bottom: 50px; } }
      #giftcard #wrapper .slideshow-wrapper > ul {
        list-style: none;
        padding: 0px;
        margin: 0px; }
        #giftcard #wrapper .slideshow-wrapper > ul > li.card {
          padding: 10px;
          width: 50%;
          display: block;
          float: left;
          text-align: center;
          box-sizing: border-box; }
          #giftcard #wrapper .slideshow-wrapper > ul > li.card img {
            display: inline-block;
            width: 200px;
            margin-bottom: 10px;
            border-radius: 12px;
            border: 5px solid transparent;
            -webkit-transition: all 0.2s ease;
            -moz-transition: all 0.2s ease;
            -ms-transition: all 0.2s ease;
            -o-transition: all 0.2s ease;
            transition: all 0.2s ease;
            box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, 0.15); }
          #giftcard #wrapper .slideshow-wrapper > ul > li.card.active img {
            border: 5px solid #005AA6; }
    #giftcard #wrapper #voucher-box {
      width: 100%; }
    #giftcard #wrapper #voucher-preview {
      padding: 10px;
      border: 1px solid #EEE;
      width: 420px;
      height: 550px;
      background-color: #FFFFFF;
      border-radius: 3px;
      box-sizing: border-box;
      position: absolute;
      top: 0px;
      left: 0px;
      margin-bottom: 25px;
      moz-transform-origin: 0% 0%;
      -o-transform-origin: 0% 0%;
      -ms-transform-origin: 0% 0%;
      -webkit-transform-origin: 0% 0%;
      transform-origin: 0% 0%; }
      @media (min-width: 768px) {
        #giftcard #wrapper #voucher-preview {
          margin-bottom: 0px; } }
      #giftcard #wrapper #voucher-preview #voucher-content {
        border: 2px solid #005AA6;
        border-radius: 3px;
        overflow: hidden;
        height: 530px; }
        #giftcard #wrapper #voucher-preview #voucher-content #voucher-title-box {
          background-size: cover;
          height: 130px;
          background-position: center bottom;
          position: relative; }
          #giftcard #wrapper #voucher-preview #voucher-content #voucher-title-box #voucher-title {
            max-width: 250px;
            margin: 0 auto;
            font-size: 14px;
            line-height: 16px;
            font-weight: 900;
            text-align: center;
            margin-bottom: 10px;
            color: #005AA6;
            top: 50%;
            position: relative;
            transform: translateY(-50%); }
      #giftcard #wrapper #voucher-preview #voucher-price {
        position: absolute;
        background-color: #005AA6;
        left: 10px;
        padding: 5px 10px;
        width: 100px;
        text-align: right;
        bottom: 108px;
        font-size: 18px;
        line-height: 20px;
        font-weight: 900;
        color: #FFF; }
      #giftcard #wrapper #voucher-preview #voucher-ribbon {
        background-color: #005AA6;
        position: absolute;
        top: 7px;
        right: 25px;
        width: 50px;
        padding: 10px;
        border-bottom-left-radius: 3px;
        border-bottom-right-radius: 3px; }
        #giftcard #wrapper #voucher-preview #voucher-ribbon img {
          display: block;
          width: 100%; }
      #giftcard #wrapper #voucher-preview #picture-upload {
        width: 0.1px;
        height: 0.1px;
        opacity: 0;
        overflow: hidden;
        position: absolute;
        z-index: -1; }
      #giftcard #wrapper #voucher-preview #picture-upload-label {
        display: block;
        height: 256px;
        background-color: #005AA6;
        text-align: center;
        cursor: pointer;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -ms-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease; }
        #giftcard #wrapper #voucher-preview #picture-upload-label .label {
          position: relative;
          font-size: 16px;
          font-weight: 900;
          color: #FFFFFF;
          top: 50%;
          transform: translateY(-50%); }
          #giftcard #wrapper #voucher-preview #picture-upload-label .label .fa {
            color: #FFF;
            display: block;
            font-size: 30px;
            margin-bottom: 5px; }
        #giftcard #wrapper #voucher-preview #picture-upload-label:hover {
          background-color: #0076d9; }
      #giftcard #wrapper #voucher-preview #voucher-cover {
        display: block;
        width: 100%;
        height: 256px;
        position: relative;
        cursor: pointer;
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center; }
        #giftcard #wrapper #voucher-preview #voucher-cover #cover-remove {
          height: 100%;
          background-color: rgba(0, 0, 0, 0.6);
          position: relative;
          width: 100%;
          color: #FFF;
          text-align: center;
          line-height: 256px;
          font-weight: 600;
          opacity: 0;
          -webkit-transition: all 0.2s ease;
          -moz-transition: all 0.2s ease;
          -ms-transition: all 0.2s ease;
          -o-transition: all 0.2s ease;
          transition: all 0.2s ease;
          -webkit-touch-callout: none;
          -webkit-user-select: none;
          -khtml-user-select: none;
          -moz-user-select: none;
          -ms-user-select: none;
          user-select: none; }
        #giftcard #wrapper #voucher-preview #voucher-cover:hover #cover-remove {
          opacity: 1; }
      #giftcard #wrapper #voucher-preview #voucher-overlay {
        width: 440px;
        display: block;
        position: absolute;
        bottom: -20px;
        left: -10px;
        background-image: url("/images/giftcards/env_overlay.png");
        background-size: contain;
        background-position: bottom center;
        background-repeat: no-repeat;
        height: 200px; }
    #giftcard #wrapper .recipient-details {
      border: 1px solid #e3e3e3;
      padding: 15px;
      border-radius: 3px; }
  #giftcard #modal-picture {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8); }
    #giftcard #modal-picture #modal-picture-content {
      background-color: #FFFFFF;
      border-radius: 3px;
      border: 5px solid #FFFFFF;
      position: relative;
      text-align: center;
      width: 95%;
      max-width: 900px;
      margin: 0 auto;
      top: 50%;
      transform: translateY(-50%); }
      #giftcard #modal-picture #modal-picture-content #picture-cropper {
        max-width: 100%; }

#giftcard .preloader, #checkout-preloader {
  z-index: 3;
  position: fixed;
  top: 0px;
  left: 0px;
  bottom: 0px;
  right: 0px;
  background-color: rgba(0, 0, 0, 0.7);
  width: 100%;
  height: 100%; }
  #giftcard .preloader .preloader-message, #checkout-preloader .preloader-message {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    color: #FFFFFF;
    text-align: center;
    font-weight: 600; }

.ie {
  overflow: hidden; }
  .ie #header #gradient {
    display: none; }

#upgrade-browser {
  display: none; }
  #upgrade-browser #wrapper {
    position: fixed;
    background-color: #FFF;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
    filter: alpha(opacity=90);
    -moz-opacity: 0.9;
    -khtml-opacity: 0.9;
    opacity: 0.9;
    width: 100%;
    height: 100%;
    top: 0px;
    bottom: 0px;
    left: 0px;
    right: 0px;
    z-index: 15; }
  #upgrade-browser #content {
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: 0px;
    width: 100%;
    height: 100%;
    text-align: center;
    z-index: 16;
    padding: 100px 0px; }
    #upgrade-browser #content #logo {
      width: 150px;
      margin-bottom: 20px; }
    #upgrade-browser #content h2 {
      font-weight: 900; }
    #upgrade-browser #content p {
      font-weight: 700;
      max-width: 600px;
      display: inline-block; }
    #upgrade-browser #content #browsers {
      padding: 25px 0px; }
      #upgrade-browser #content #browsers .browser-link {
        display: inline-block;
        padding: 0px 15px;
        text-align: center; }
        #upgrade-browser #content #browsers .browser-link img {
          width: 75px;
          display: inline-block;
          margin-bottom: 15px; }
        #upgrade-browser #content #browsers .browser-link .title {
          display: block; }

/* ========================================================================
   Component: Base
 ========================================================================== */
/*
 * 1. Normalize default `font-family` and set `font-size` to support `rem` units
 * 2. Prevents iOS text size adjust after orientation change, without disabling user zoom
 * 3. Style
 */
html {
  /* 1 */
  font: normal 15px / 20px "Lato", sans-serif;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  /* 3 */
  background: #FFFFFF;
  color: #4A4A4A; }

/*
 * Removes default margin.
 */
body {
  margin: 0; }

/* Links
 ========================================================================== */
/*
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent; }

/*
 * Improve readability of focused elements when they are also in an active/hover state.
 */
a:active,
a:hover {
  outline: 0; }

/*
 * Style
 */
a,
.uk-link {
  color: #005AA6;
  text-decoration: none;
  cursor: pointer; }

a:hover,
.uk-link:hover {
  color: #0076d9;
  text-decoration: underline; }

/* Text-level semantics
 ========================================================================== */
/*
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/*
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/*
 * 1. Address odd `em`-unit font size rendering in all browsers.
 * 2. Consolas has a better baseline in running text compared to `Courier`
 */
:not(pre) > code,
:not(pre) > kbd,
:not(pre) > samp {
  /* 1 */
  font-size: 12px;
  /* 2 */
  font-family: Consolas, monospace, serif;
  /* 3 */
  color: #D05;
  white-space: nowrap; }

/*
 * Emphasize
 */
em {
  color: #D05; }

/*
 * Insert
 */
ins {
  background: #ffa;
  color: #444;
  text-decoration: none; }

/*
 * Mark
 * Note: Addresses styling not present in IE 8/9.
 */
mark {
  background: #ffa;
  color: #444; }

/*
 * Quote
 */
q {
  font-style: italic; }

/*
 * Addresses inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/*
 * Prevents `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Embedded content
 ========================================================================== */
/*
 * Remove the gap between embedded content and the bottom of their containers.
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

/*
 * Responsiveness
 * 1. Sets a maximum width relative to the parent and auto scales the height
 * 2. Corrects `max-width` behavior if padding and border are used
 */
audio,
canvas,
img,
svg,
video {
  /* 1 */
  max-width: 100%;
  height: auto;
  /* 2 */
  box-sizing: border-box; }

/*
 * Preserve original dimensions
 */
.uk-img-preserve,
.uk-img-preserve audio,
.uk-img-preserve canvas,
.uk-img-preserve img,
.uk-img-preserve svg,
.uk-img-preserve video {
  max-width: none; }

/*
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0; }

/*
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden; }

/* Block elements
 ========================================================================== */
/*
 * Reset margin
 */
blockquote,
figure {
  margin: 0; }

/*
 * Margins
 */
p,
ul,
ol,
dl,
blockquote,
pre,
address,
fieldset,
figure {
  margin: 0 0 15px 0; }

* + p,
* + ul,
* + ol,
* + dl,
* + blockquote,
* + pre,
* + address,
* + fieldset,
* + figure {
  margin-top: 15px; }

/* Headings
 ========================================================================== */
h1, h2, h3, h4, h5, h6 {
  margin: 0 0 15px 0;
  font-family: "Lato", sans-serif;
  font-weight: normal;
  color: #4A4A4A;
  text-transform: none; }

/*
 * Margins
 */
* + h1,
* + h2,
* + h3,
* + h4,
* + h5,
* + h6 {
  margin-top: 25px; }

/*
 * Sizes
 */
h1, .uk-h1 {
  font-size: 36px;
  line-height: 42px; }

h2, .uk-h2 {
  font-size: 24px;
  line-height: 30px; }

h3, .uk-h3 {
  font-size: 18px;
  line-height: 24px; }

h4, .uk-h4 {
  font-size: 16px;
  line-height: 22px; }

h5, .uk-h5 {
  font-size: 14px;
  line-height: 20px; }

h6, .uk-h6 {
  font-size: 12px;
  line-height: 18px; }

/* Lists
 ========================================================================== */
ul,
ol {
  padding-left: 0px; }

/*
 * Reset margin for nested lists
 */
ul > li > ul,
ul > li > ol,
ol > li > ol,
ol > li > ul {
  margin: 0; }

/* Description lists
 ========================================================================== */
dt {
  font-weight: bold; }

dd {
  margin-left: 0; }

/* Horizontal rules
 ========================================================================== */
/*
 * 1. Address differences between Firefox and other browsers.
 * 2. Style
 */
hr {
  /* 1 */
  box-sizing: content-box;
  height: 0;
  /* 2 */
  margin: 15px 0;
  border: 0;
  border-top: 1px solid #ddd; }

/* Address
 ========================================================================== */
address {
  font-style: normal; }

/* Blockquotes
 ========================================================================== */
blockquote {
  padding-left: 15px;
  border-left: 5px solid #ddd;
  font-size: 16px;
  line-height: 22px;
  font-style: italic; }

/* Preformatted text
 ========================================================================== */
/*
 * 1. Contain overflow in all browsers.
 */
pre {
  padding: 10px;
  background: #f5f5f5;
  font: 12px / 18px Consolas, monospace, serif;
  color: #444;
  -moz-tab-size: 4;
  tab-size: 4;
  /* 1 */
  overflow: auto; }

/* Selection pseudo-element
 ========================================================================== */
::-moz-selection {
  background: #39f;
  color: #fff;
  text-shadow: none; }

::selection {
  background: #39f;
  color: #fff;
  text-shadow: none; }

/* HTML5 elements
 ========================================================================== */
/*
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11 and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section,
summary {
  display: block; }

/*
 * Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline; }

/*
 * Prevent displaying `audio` without controls in Chrome, Safari and Opera
 */
audio:not([controls]) {
  display: none; }

/*
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

/* Iframe
 ========================================================================== */
iframe {
  border: 0; }

/* Fix viewport for IE10 snap mode
 ========================================================================== */
@media screen and (max-width: 400px) {
  @-ms-viewport {
    width: device-width; } }

/* ========================================================================
   Component: Grid
 ========================================================================== */
/*
 * 1. Makes grid more robust so that it can be used with other block elements like lists
 */
.uk-grid {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  /* 1 */
  margin: 0;
  padding: 0;
  list-style: none; }

/*
 * DEPRECATED
 * Micro clearfix
 * Can't use `table` because it creates a 1px gap when it becomes a flex item, only in Webkit
 */
.uk-grid:before,
.uk-grid:after {
  content: "";
  display: block;
  overflow: hidden; }

.uk-grid:after {
  clear: both; }

/*
 * Grid cell
 * 1. Space is allocated solely based on content dimensions
 * 2. Makes grid more robust so that it can be used with other block elements
 * 3. DEPRECATED Using `float` to support IE9
 */
.uk-grid > * {
  /* 1 */
  -ms-flex: none;
  -webkit-flex: none;
  flex: none;
  /* 2 */
  margin: 0;
  /* 3 */
  float: left; }

/*
 * Remove margin from the last-child
 */
.uk-grid > * > :last-child {
  margin-bottom: 0; }

/* Grid gutter
 ========================================================================== */
/*
 * Default gutter
 */
/* Horizontal */
.uk-grid {
  margin-left: -25px; }

.uk-grid > * {
  padding-left: 25px; }

/* Vertical */
.uk-grid + .uk-grid,
.uk-grid-margin,
.uk-grid > * > .uk-panel + .uk-panel {
  margin-top: 25px; }

/* Large screen and bigger */
@media (min-width: 1220px) {
  /* Horizontal */
  .uk-grid {
    margin-left: -35px; }
  .uk-grid > * {
    padding-left: 35px; }
  /* Vertical */
  .uk-grid + .uk-grid,
  .uk-grid-margin,
  .uk-grid > * > .uk-panel + .uk-panel {
    margin-top: 35px; } }

/*
 * Collapse gutter
 */
/* Horizontal */
.uk-grid-collapse {
  margin-left: 0; }

.uk-grid-collapse > * {
  padding-left: 0; }

/* Vertical */
.uk-grid-collapse + .uk-grid-collapse,
.uk-grid-collapse > .uk-grid-margin,
.uk-grid-collapse > * > .uk-panel + .uk-panel {
  margin-top: 0; }

/*
 * Small gutter
 */
/* Horizontal */
.uk-grid-small {
  margin-left: -10px; }

.uk-grid-small > * {
  padding-left: 10px; }

/* Vertical */
.uk-grid-small + .uk-grid-small,
.uk-grid-small > .uk-grid-margin,
.uk-grid-small > * > .uk-panel + .uk-panel {
  margin-top: 10px; }

/*
 * Medium gutter
 */
/* Horizontal */
.uk-grid-medium {
  margin-left: -25px; }

.uk-grid-medium > * {
  padding-left: 25px; }

/* Vertical */
.uk-grid-medium + .uk-grid-medium,
.uk-grid-medium > .uk-grid-margin,
.uk-grid-medium > * > .uk-panel + .uk-panel {
  margin-top: 25px; }

/*
 * Large gutter
 */
/* Large screen and bigger */
@media (min-width: 960px) {
  /* Horizontal */
  .uk-grid-large {
    margin-left: -35px; }
  .uk-grid-large > * {
    padding-left: 35px; }
  /* Vertical */
  .uk-grid-large + .uk-grid-large,
  .uk-grid-large-margin,
  .uk-grid-large > * > .uk-panel + .uk-panel {
    margin-top: 35px; } }

/* Extra Large screens */
@media (min-width: 1220px) {
  /* Horizontal */
  .uk-grid-large {
    margin-left: -50px; }
  .uk-grid-large > * {
    padding-left: 50px; }
  /* Vertical */
  .uk-grid-large + .uk-grid-large,
  .uk-grid-large-margin,
  .uk-grid-large > * > .uk-panel + .uk-panel {
    margin-top: 50px; } }

/* Modifier: `uk-grid-divider`
 ========================================================================== */
/*
 * Horizontal divider
 * Only works with the default gutter. Does not work with gutter collapse, small or large.
 * Does not work with `uk-push-*`, `uk-pull-*` and not if the columns float into the next row.
 */
.uk-grid-divider:not(:empty) {
  margin-left: -25px;
  margin-right: -25px; }

.uk-grid-divider > * {
  padding-left: 25px;
  padding-right: 25px; }

.uk-grid-divider > [class*='uk-width-1-']:not(.uk-width-1-1):nth-child(n+2),
.uk-grid-divider > [class*='uk-width-2-']:nth-child(n+2),
.uk-grid-divider > [class*='uk-width-3-']:nth-child(n+2),
.uk-grid-divider > [class*='uk-width-4-']:nth-child(n+2),
.uk-grid-divider > [class*='uk-width-5-']:nth-child(n+2),
.uk-grid-divider > [class*='uk-width-6-']:nth-child(n+2),
.uk-grid-divider > [class*='uk-width-7-']:nth-child(n+2),
.uk-grid-divider > [class*='uk-width-8-']:nth-child(n+2),
.uk-grid-divider > [class*='uk-width-9-']:nth-child(n+2) {
  border-left: 1px solid #ddd; }

/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-grid-divider > [class*='uk-width-medium-']:not(.uk-width-medium-1-1):nth-child(n+2) {
    border-left: 1px solid #ddd; } }

/* Desktop and bigger */
@media (min-width: 960px) {
  .uk-grid-divider > [class*='uk-width-large-']:not(.uk-width-large-1-1):nth-child(n+2) {
    border-left: 1px solid #ddd; } }

/* Large screen and bigger */
@media (min-width: 1220px) {
  /*
     * Large gutter
     */
  .uk-grid-divider:not(:empty) {
    margin-left: -35px;
    margin-right: -35px; }
  .uk-grid-divider > * {
    padding-left: 35px;
    padding-right: 35px; }
  .uk-grid-divider:empty {
    margin-top: 35px;
    margin-bottom: 35px; } }

/*
 * Vertical divider
 */
.uk-grid-divider:empty {
  margin-top: 25px;
  margin-bottom: 25px;
  border-top: 1px solid #ddd; }

/* Match panels in grids
 ========================================================================== */
/*
 * 1. Behave like a block element
 */
.uk-grid-match > * {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  /* 1 */
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }

.uk-grid-match > * > * {
  /* 1 */
  -ms-flex: none;
  -webkit-flex: none;
  flex: none;
  box-sizing: border-box;
  width: 100%; }

/* Even grid cell widths
 ========================================================================== */
[class*='uk-grid-width'] > * {
  box-sizing: border-box;
  width: 100%; }

.uk-grid-width-1-2 > * {
  width: 50%; }

.uk-grid-width-1-3 > * {
  width: 33.333%; }

.uk-grid-width-1-4 > * {
  width: 25%; }

.uk-grid-width-1-5 > * {
  width: 20%; }

.uk-grid-width-1-6 > * {
  width: 16.666%; }

.uk-grid-width-1-10 > * {
  width: 10%; }

.uk-grid-width-auto > * {
  width: auto; }

/* Phone landscape and bigger */
@media (min-width: 480px) {
  .uk-grid-width-small-1-1 > * {
    width: 100%; }
  .uk-grid-width-small-1-2 > * {
    width: 50%; }
  .uk-grid-width-small-1-3 > * {
    width: 33.333%; }
  .uk-grid-width-small-1-4 > * {
    width: 25%; }
  .uk-grid-width-small-1-5 > * {
    width: 20%; }
  .uk-grid-width-small-1-6 > * {
    width: 16.666%; }
  .uk-grid-width-small-1-10 > * {
    width: 10%; } }

/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-grid-width-medium-1-1 > * {
    width: 100%; }
  .uk-grid-width-medium-1-2 > * {
    width: 50%; }
  .uk-grid-width-medium-1-3 > * {
    width: 33.333%; }
  .uk-grid-width-medium-1-4 > * {
    width: 25%; }
  .uk-grid-width-medium-1-5 > * {
    width: 20%; }
  .uk-grid-width-medium-1-6 > * {
    width: 16.666%; }
  .uk-grid-width-medium-1-10 > * {
    width: 10%; } }

/* Desktop and bigger */
@media (min-width: 960px) {
  .uk-grid-width-large-1-1 > * {
    width: 100%; }
  .uk-grid-width-large-1-2 > * {
    width: 50%; }
  .uk-grid-width-large-1-3 > * {
    width: 33.333%; }
  .uk-grid-width-large-1-4 > * {
    width: 25%; }
  .uk-grid-width-large-1-5 > * {
    width: 20%; }
  .uk-grid-width-large-1-6 > * {
    width: 16.666%; }
  .uk-grid-width-large-1-10 > * {
    width: 10%; } }

/* Large screen and bigger */
@media (min-width: 1220px) {
  .uk-grid-width-xlarge-1-1 > * {
    width: 100%; }
  .uk-grid-width-xlarge-1-2 > * {
    width: 50%; }
  .uk-grid-width-xlarge-1-3 > * {
    width: 33.333%; }
  .uk-grid-width-xlarge-1-4 > * {
    width: 25%; }
  .uk-grid-width-xlarge-1-5 > * {
    width: 20%; }
  .uk-grid-width-xlarge-1-6 > * {
    width: 16.666%; }
  .uk-grid-width-xlarge-1-10 > * {
    width: 10%; } }

/* Sub-objects: `uk-width-*`
 ========================================================================== */
[class*='uk-width'] {
  box-sizing: border-box;
  width: 100%; }

/*
 * Widths
 */
/* Whole */
.uk-width-1-1 {
  width: 100%; }

/* Halves */
.uk-width-1-2,
.uk-width-2-4,
.uk-width-3-6,
.uk-width-5-10 {
  width: 50%; }

/* Thirds */
.uk-width-1-3,
.uk-width-2-6 {
  width: 33.333%; }

.uk-width-2-3,
.uk-width-4-6 {
  width: 66.666%; }

/* Quarters */
.uk-width-1-4 {
  width: 25%; }

.uk-width-3-4 {
  width: 75%; }

/* Fifths */
.uk-width-1-5,
.uk-width-2-10 {
  width: 20%; }

.uk-width-2-5,
.uk-width-4-10 {
  width: 40%; }

.uk-width-3-5,
.uk-width-6-10 {
  width: 60%; }

.uk-width-4-5,
.uk-width-8-10 {
  width: 80%; }

/* Sixths */
.uk-width-1-6 {
  width: 16.666%; }

.uk-width-5-6 {
  width: 83.333%; }

/* Tenths */
.uk-width-1-10 {
  width: 10%; }

.uk-width-3-10 {
  width: 30%; }

.uk-width-7-10 {
  width: 70%; }

.uk-width-9-10 {
  width: 90%; }

/* Phone landscape and bigger */
@media (min-width: 480px) {
  /* Whole */
  .uk-width-small-1-1 {
    width: 100%; }
  /* Halves */
  .uk-width-small-1-2,
  .uk-width-small-2-4,
  .uk-width-small-3-6,
  .uk-width-small-5-10 {
    width: 50%; }
  /* Thirds */
  .uk-width-small-1-3,
  .uk-width-small-2-6 {
    width: 33.333%; }
  .uk-width-small-2-3,
  .uk-width-small-4-6 {
    width: 66.666%; }
  /* Quarters */
  .uk-width-small-1-4 {
    width: 25%; }
  .uk-width-small-3-4 {
    width: 75%; }
  /* Fifths */
  .uk-width-small-1-5,
  .uk-width-small-2-10 {
    width: 20%; }
  .uk-width-small-2-5,
  .uk-width-small-4-10 {
    width: 40%; }
  .uk-width-small-3-5,
  .uk-width-small-6-10 {
    width: 60%; }
  .uk-width-small-4-5,
  .uk-width-small-8-10 {
    width: 80%; }
  /* Sixths */
  .uk-width-small-1-6 {
    width: 16.666%; }
  .uk-width-small-5-6 {
    width: 83.333%; }
  /* Tenths */
  .uk-width-small-1-10 {
    width: 10%; }
  .uk-width-small-3-10 {
    width: 30%; }
  .uk-width-small-7-10 {
    width: 70%; }
  .uk-width-small-9-10 {
    width: 90%; } }

/* Tablet and bigger */
@media (min-width: 768px) {
  /* Whole */
  .uk-width-medium-1-1 {
    width: 100%; }
  /* Halves */
  .uk-width-medium-1-2,
  .uk-width-medium-2-4,
  .uk-width-medium-3-6,
  .uk-width-medium-5-10 {
    width: 50%; }
  /* Thirds */
  .uk-width-medium-1-3,
  .uk-width-medium-2-6 {
    width: 33.333%; }
  .uk-width-medium-2-3,
  .uk-width-medium-4-6 {
    width: 66.666%; }
  /* Quarters */
  .uk-width-medium-1-4 {
    width: 25%; }
  .uk-width-medium-3-4 {
    width: 75%; }
  /* Fifths */
  .uk-width-medium-1-5,
  .uk-width-medium-2-10 {
    width: 20%; }
  .uk-width-medium-2-5,
  .uk-width-medium-4-10 {
    width: 40%; }
  .uk-width-medium-3-5,
  .uk-width-medium-6-10 {
    width: 60%; }
  .uk-width-medium-4-5,
  .uk-width-medium-8-10 {
    width: 80%; }
  /* Sixths */
  .uk-width-medium-1-6 {
    width: 16.666%; }
  .uk-width-medium-5-6 {
    width: 83.333%; }
  /* Tenths */
  .uk-width-medium-1-10 {
    width: 10%; }
  .uk-width-medium-3-10 {
    width: 30%; }
  .uk-width-medium-7-10 {
    width: 70%; }
  .uk-width-medium-9-10 {
    width: 90%; } }

/* Desktop and bigger */
@media (min-width: 960px) {
  /* Whole */
  .uk-width-large-1-1 {
    width: 100%; }
  /* Halves */
  .uk-width-large-1-2,
  .uk-width-large-2-4,
  .uk-width-large-3-6,
  .uk-width-large-5-10 {
    width: 50%; }
  /* Thirds */
  .uk-width-large-1-3,
  .uk-width-large-2-6 {
    width: 33.333%; }
  .uk-width-large-2-3,
  .uk-width-large-4-6 {
    width: 66.666%; }
  /* Quarters */
  .uk-width-large-1-4 {
    width: 25%; }
  .uk-width-large-3-4 {
    width: 75%; }
  /* Fifths */
  .uk-width-large-1-5,
  .uk-width-large-2-10 {
    width: 20%; }
  .uk-width-large-2-5,
  .uk-width-large-4-10 {
    width: 40%; }
  .uk-width-large-3-5,
  .uk-width-large-6-10 {
    width: 60%; }
  .uk-width-large-4-5,
  .uk-width-large-8-10 {
    width: 80%; }
  /* Sixths */
  .uk-width-large-1-6 {
    width: 16.666%; }
  .uk-width-large-5-6 {
    width: 83.333%; }
  /* Tenths */
  .uk-width-large-1-10 {
    width: 10%; }
  .uk-width-large-3-10 {
    width: 30%; }
  .uk-width-large-7-10 {
    width: 70%; }
  .uk-width-large-9-10 {
    width: 90%; } }

/* Large screen and bigger */
@media (min-width: 1220px) {
  /* Whole */
  .uk-width-xlarge-1-1 {
    width: 100%; }
  /* Halves */
  .uk-width-xlarge-1-2,
  .uk-width-xlarge-2-4,
  .uk-width-xlarge-3-6,
  .uk-width-xlarge-5-10 {
    width: 50%; }
  /* Thirds */
  .uk-width-xlarge-1-3,
  .uk-width-xlarge-2-6 {
    width: 33.333%; }
  .uk-width-xlarge-2-3,
  .uk-width-xlarge-4-6 {
    width: 66.666%; }
  /* Quarters */
  .uk-width-xlarge-1-4 {
    width: 25%; }
  .uk-width-xlarge-3-4 {
    width: 75%; }
  /* Fifths */
  .uk-width-xlarge-1-5,
  .uk-width-xlarge-2-10 {
    width: 20%; }
  .uk-width-xlarge-2-5,
  .uk-width-xlarge-4-10 {
    width: 40%; }
  .uk-width-xlarge-3-5,
  .uk-width-xlarge-6-10 {
    width: 60%; }
  .uk-width-xlarge-4-5,
  .uk-width-xlarge-8-10 {
    width: 80%; }
  /* Sixths */
  .uk-width-xlarge-1-6 {
    width: 16.666%; }
  .uk-width-xlarge-5-6 {
    width: 83.333%; }
  /* Tenths */
  .uk-width-xlarge-1-10 {
    width: 10%; }
  .uk-width-xlarge-3-10 {
    width: 30%; }
  .uk-width-xlarge-7-10 {
    width: 70%; }
  .uk-width-xlarge-9-10 {
    width: 90%; } }

/* Sub-object: `uk-push-*` and `uk-pull-*`
 ========================================================================== */
/*
 * Source ordering
 * Works only with `uk-width-medium-*`
 */
/* Tablet and bigger */
@media (min-width: 768px) {
  [class*='uk-push-'],
  [class*='uk-pull-'] {
    position: relative; }
  /*
     * Push
     */
  /* Halves */
  .uk-push-1-2,
  .uk-push-2-4,
  .uk-push-3-6,
  .uk-push-5-10 {
    left: 50%; }
  /* Thirds */
  .uk-push-1-3,
  .uk-push-2-6 {
    left: 33.333%; }
  .uk-push-2-3,
  .uk-push-4-6 {
    left: 66.666%; }
  /* Quarters */
  .uk-push-1-4 {
    left: 25%; }
  .uk-push-3-4 {
    left: 75%; }
  /* Fifths */
  .uk-push-1-5,
  .uk-push-2-10 {
    left: 20%; }
  .uk-push-2-5,
  .uk-push-4-10 {
    left: 40%; }
  .uk-push-3-5,
  .uk-push-6-10 {
    left: 60%; }
  .uk-push-4-5,
  .uk-push-8-10 {
    left: 80%; }
  /* Sixths */
  .uk-push-1-6 {
    left: 16.666%; }
  .uk-push-5-6 {
    left: 83.333%; }
  /* Tenths */
  .uk-push-1-10 {
    left: 10%; }
  .uk-push-3-10 {
    left: 30%; }
  .uk-push-7-10 {
    left: 70%; }
  .uk-push-9-10 {
    left: 90%; }
  /*
     * Pull
     */
  /* Halves */
  .uk-pull-1-2,
  .uk-pull-2-4,
  .uk-pull-3-6,
  .uk-pull-5-10 {
    left: -50%; }
  /* Thirds */
  .uk-pull-1-3,
  .uk-pull-2-6 {
    left: -33.333%; }
  .uk-pull-2-3,
  .uk-pull-4-6 {
    left: -66.666%; }
  /* Quarters */
  .uk-pull-1-4 {
    left: -25%; }
  .uk-pull-3-4 {
    left: -75%; }
  /* Fifths */
  .uk-pull-1-5,
  .uk-pull-2-10 {
    left: -20%; }
  .uk-pull-2-5,
  .uk-pull-4-10 {
    left: -40%; }
  .uk-pull-3-5,
  .uk-pull-6-10 {
    left: -60%; }
  .uk-pull-4-5,
  .uk-pull-8-10 {
    left: -80%; }
  /* Sixths */
  .uk-pull-1-6 {
    left: -16.666%; }
  .uk-pull-5-6 {
    left: -83.333%; }
  /* Tenths */
  .uk-pull-1-10 {
    left: -10%; }
  .uk-pull-3-10 {
    left: -30%; }
  .uk-pull-7-10 {
    left: -70%; }
  .uk-pull-9-10 {
    left: -90%; } }

/* ========================================================================
   Component: Panel
 ========================================================================== */
/*
 * 1. Needed for `a` elements
 * 2. Create position context for badges
 */
.uk-panel {
  /* 1 */
  display: block;
  /* 2 */
  position: relative; }

/*
 * Allow panels to be anchors
 */
.uk-panel,
.uk-panel:hover {
  text-decoration: none; }

/*
 * Micro clearfix to make panels more robust
 */
.uk-panel:before,
.uk-panel:after {
  content: "";
  display: table; }

.uk-panel:after {
  clear: both; }

/*
 * Remove margin from the last-child if not `uk-widget-title`
 */
.uk-panel > :not(.uk-panel-title):last-child {
  margin-bottom: 0; }

/* Sub-object: `uk-panel-title`
 ========================================================================== */
.uk-panel-title {
  margin-top: 0;
  margin-bottom: 15px;
  font-size: 18px;
  line-height: 24px;
  font-weight: normal;
  text-transform: none;
  color: #444; }

/* Sub-object: `uk-panel-badge`
 ========================================================================== */
.uk-panel-badge {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1; }

/* Sub-object: `uk-panel-teaser`
 ========================================================================== */
.uk-panel-teaser {
  margin-bottom: 15px; }

/* Sub-object: `uk-panel-body`
 ========================================================================== */
.uk-panel-body {
  padding: 15px; }

/* Modifier: `uk-panel-box`
 ========================================================================== */
.uk-panel-box {
  padding: 15px;
  background: #f5f5f5;
  color: #444; }

.uk-panel-box-hover:hover {
  color: #444; }

.uk-panel-box .uk-panel-title {
  color: #444; }

.uk-panel-box .uk-panel-badge {
  top: 10px;
  right: 10px; }

.uk-panel-box > .uk-panel-teaser {
  margin-top: -15px;
  margin-left: -15px;
  margin-right: -15px; }

/*
 * Nav in panel
 */
.uk-panel-box > .uk-nav-side {
  margin: 0 -15px; }

/*
 * Sub-modifier: `uk-panel-box-primary`
 */
.uk-panel-box-primary {
  background-color: #ebf7fd;
  color: #2d7091; }

.uk-panel-box-primary-hover:hover {
  color: #2d7091; }

.uk-panel-box-primary .uk-panel-title {
  color: #2d7091; }

/*
 * Sub-modifier: `uk-panel-box-secondary`
 */
.uk-panel-box-secondary {
  background-color: #eee;
  color: #444; }

.uk-panel-box-secondary-hover:hover {
  color: #444; }

.uk-panel-box-secondary .uk-panel-title {
  color: #444; }

/* Modifier: `uk-panel-hover`
 ========================================================================== */
.uk-panel-hover {
  padding: 15px;
  color: #444; }

.uk-panel-hover:hover {
  background: #f5f5f5;
  color: #444; }

.uk-panel-hover .uk-panel-badge {
  top: 10px;
  right: 10px; }

.uk-panel-hover > .uk-panel-teaser {
  margin-top: -15px;
  margin-left: -15px;
  margin-right: -15px; }

/* Modifier: `uk-panel-header`
 ========================================================================== */
.uk-panel-header .uk-panel-title {
  padding-bottom: 10px;
  border-bottom: 1px solid #ddd;
  color: #444; }

/* Modifier: `uk-panel-space`
 ========================================================================== */
.uk-panel-space {
  padding: 30px; }

.uk-panel-space .uk-panel-badge {
  top: 30px;
  right: 30px; }

/* Modifier: `uk-panel-divider`
 ========================================================================== */
.uk-panel + .uk-panel-divider {
  margin-top: 50px !important; }

.uk-panel + .uk-panel-divider:before {
  content: "";
  display: block;
  position: absolute;
  top: -25px;
  left: 0;
  right: 0;
  border-top: 1px solid #ddd; }

/* Large screen and bigger */
@media (min-width: 1220px) {
  .uk-panel + .uk-panel-divider {
    margin-top: 70px !important; }
  .uk-panel + .uk-panel-divider:before {
    top: -35px; } }

/* ========================================================================
   Component: Block
 ========================================================================== */
.uk-block {
  position: relative;
  box-sizing: border-box;
  padding-top: 20px;
  padding-bottom: 20px; }

/* Phone landscape and bigger */
@media (min-width: 768px) {
  .uk-block {
    padding-top: 50px;
    padding-bottom: 50px; } }

/*
 * Micro clearfix to make blocks more robust
 */
.uk-block:before,
.uk-block:after {
  content: "";
  display: table; }

.uk-block:after {
  clear: both; }

/*
 * Remove margin from the last-child
 */
.uk-block > :last-child {
  margin-bottom: 0; }

/* Padding Modifier
 ========================================================================== */
/*
 * Large padding
 */
.uk-block-large {
  padding-top: 20px;
  padding-bottom: 20px; }

/* Tablets and bigger */
@media (min-width: 768px) {
  .uk-block-large {
    padding-top: 50px;
    padding-bottom: 50px; } }

/* Desktop and bigger */
@media (min-width: 960px) {
  .uk-block-large {
    padding-top: 100px;
    padding-bottom: 100px; } }

/* Color Modifier
 ========================================================================== */
/*
 * Default
 */
.uk-block-default {
  background: #fff; }

/*
 * Muted
 */
.uk-block-muted {
  background: #f9f9f9; }

/*
 * Primary
 */
.uk-block-primary {
  background: #00a8e6; }

/*
 * Secondary
 */
.uk-block-secondary {
  background: #222; }

/* ========================================================================
   Component: Article
 ========================================================================== */
/*
 * Micro clearfix to make articles more robust
 */
.uk-article:before,
.uk-article:after {
  content: "";
  display: table; }

.uk-article:after {
  clear: both; }

/*
 * Remove margin from the last-child
 */
.uk-article > :last-child {
  margin-bottom: 0; }

/*
 * Vertical gutter for articles
 */
.uk-article + .uk-article {
  margin-top: 25px; }

/* Sub-object `uk-article-title`
 ========================================================================== */
.uk-article-title {
  font-size: 36px;
  line-height: 42px;
  font-weight: normal;
  text-transform: none; }

.uk-article-title a {
  color: inherit;
  text-decoration: none; }

/* Sub-object `uk-article-meta`
 ========================================================================== */
.uk-article-meta {
  font-size: 12px;
  line-height: 18px;
  color: #999; }

/* Sub-object `uk-article-lead`
 ========================================================================== */
.uk-article-lead {
  color: #444;
  font-size: 18px;
  line-height: 24px;
  font-weight: normal; }

/* Sub-object `uk-article-divider`
 ========================================================================== */
.uk-article-divider {
  margin-bottom: 25px;
  border-color: #ddd; }

* + .uk-article-divider {
  margin-top: 25px; }

/* ========================================================================
   Component: Comment
 ========================================================================== */
/* Sub-object `uk-comment-header`
 ========================================================================== */
.uk-comment-header {
  margin-bottom: 15px; }

/*
 * Micro clearfix
 */
.uk-comment-header:before,
.uk-comment-header:after {
  content: "";
  display: table; }

.uk-comment-header:after {
  clear: both; }

/* Sub-object `uk-comment-avatar`
 ========================================================================== */
.uk-comment-avatar {
  margin-right: 15px;
  float: left; }

/* Sub-object `uk-comment-title`
 ========================================================================== */
.uk-comment-title {
  margin: 5px 0 0 0;
  font-size: 16px;
  line-height: 22px; }

/* Sub-object `uk-comment-meta`
 ========================================================================== */
.uk-comment-meta {
  margin: 2px 0 0 0;
  font-size: 11px;
  line-height: 16px;
  color: #999; }

/* Sub-object `uk-comment-body`
 ========================================================================== */
/*
 * Remove margin from the last-child
 */
.uk-comment-body > :last-child {
  margin-bottom: 0; }

/* Sub-object `uk-comment-list`
 ========================================================================== */
.uk-comment-list {
  padding: 0;
  list-style: none; }

.uk-comment-list .uk-comment + ul {
  margin: 15px 0 0 0;
  list-style: none; }

.uk-comment-list > li:nth-child(n+2),
.uk-comment-list .uk-comment + ul > li:nth-child(n+2) {
  margin-top: 15px; }

/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-comment-list .uk-comment + ul {
    padding-left: 100px; } }

/* Modifier `uk-comment-primary`
 ========================================================================== */
/* ========================================================================
   Component: Cover
 ========================================================================== */
/*
 * Background image always covers and centers its element
 */
.uk-cover-background {
  background-position: 50% 50%;
  background-size: cover;
  background-repeat: no-repeat; }

/*
 * Emulates image cover, works with video and image elements
 * 1. Parent container which clips resized object
 * 2. Resizes the object to always covers its container
 * 3. Reset the responsive image CSS
 * 4. Center object
 */
/* 1 */
.uk-cover {
  overflow: hidden; }

.uk-cover-object {
  /* 2 */
  width: auto;
  height: auto;
  min-width: 100%;
  min-height: 100%;
  /* 3 */
  max-width: none;
  /* 4 */
  position: relative;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

/*
 * To center iframes use `data-uk-cover` JavaScript
 */
[data-uk-cover] {
  position: relative;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

/* ========================================================================
   Component: Nav
 ========================================================================== */
.uk-nav,
.uk-nav ul {
  margin: 0;
  padding: 0;
  list-style: none; }

/*
 * Items
 */
.uk-nav li > a {
  display: block;
  text-decoration: none; }

.uk-nav > li > a {
  padding: 5px 15px; }

/*
 * Nested items
 */
.uk-nav ul {
  padding-left: 15px; }

.uk-nav ul a {
  padding: 2px 0; }

/*
 * Item subtitle
 */
.uk-nav li > a > div {
  font-size: 12px;
  line-height: 18px; }

/* Sub-object: `uk-nav-header`
 ========================================================================== */
.uk-nav-header {
  padding: 5px 15px;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 12px; }

.uk-nav-header:not(:first-child) {
  margin-top: 15px; }

/* Sub-object: `uk-nav-divider`
 ========================================================================== */
.uk-nav-divider {
  margin: 9px 15px; }

/* Sub-object: `uk-nav-sub`
 ========================================================================== */
/*
 * `ul` needed for higher specificity to override padding
 */
ul.uk-nav-sub {
  padding: 5px 0 5px 15px; }

/* Modifier: `uk-nav-parent-icon`
 ========================================================================== */
.uk-nav-parent-icon > .uk-parent > a:after {
  content: "";
  width: 20px;
  margin-right: -10px;
  float: right;
  font-family: FontAwesome;
  text-align: center; }

.uk-nav-parent-icon > .uk-parent.uk-open > a:after {
  content: ""; }

/* Modifier `uk-nav-side`
 ========================================================================== */
/*
 * Items
 */
.uk-nav-side > li > a {
  color: #444; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-nav-side > li > a:hover,
.uk-nav-side > li > a:focus {
  background: rgba(0, 0, 0, 0.05);
  color: #444;
  /* 2 */
  outline: none; }

/* Active */
.uk-nav-side > li.uk-active > a {
  background: #00a8e6;
  color: #fff; }

/*
 * Sub-object: `uk-nav-header`
 */
.uk-nav-side .uk-nav-header {
  color: #444; }

/*
 * Sub-object: `uk-nav-divider`
 */
.uk-nav-side .uk-nav-divider {
  border-top: 1px solid #ddd; }

/*
 * Nested items
 */
.uk-nav-side ul a {
  color: #07D; }

.uk-nav-side ul a:hover {
  color: #059; }

/* Modifier `uk-nav-dropdown`
 ========================================================================== */
/*
 * Items
 */
.uk-nav-dropdown > li > a {
  color: #444; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-nav-dropdown > li > a:hover,
.uk-nav-dropdown > li > a:focus {
  background: #00a8e6;
  color: #fff;
  /* 2 */
  outline: none; }

/*
 * Sub-object: `uk-nav-header`
 */
.uk-nav-dropdown .uk-nav-header {
  color: #999; }

/*
 * Sub-object: `uk-nav-divider`
 */
.uk-nav-dropdown .uk-nav-divider {
  border-top: 1px solid #ddd; }

/*
 * Nested items
 */
.uk-nav-dropdown ul a {
  color: #07D; }

.uk-nav-dropdown ul a:hover {
  color: #059; }

/* Modifier `uk-nav-navbar`
 ========================================================================== */
/*
 * Items
 */
.uk-nav-navbar > li > a {
  color: #444; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-nav-navbar > li > a:hover,
.uk-nav-navbar > li > a:focus {
  background: #00a8e6;
  color: #fff;
  /* 2 */
  outline: none; }

/*
 * Sub-object: `uk-nav-header`
 */
.uk-nav-navbar .uk-nav-header {
  color: #999; }

/*
 * Sub-object: `uk-nav-divider`
 */
.uk-nav-navbar .uk-nav-divider {
  border-top: 1px solid #ddd; }

/*
 * Nested items
 */
.uk-nav-navbar ul a {
  color: #07D; }

.uk-nav-navbar ul a:hover {
  color: #059; }

/* Modifier `uk-nav-offcanvas`
 ========================================================================== */
/*
 * Items
 */
.uk-nav-offcanvas > li > a {
  color: #ccc;
  padding: 10px 15px; }

/*
 * Hover
 * No hover on touch devices because it behaves buggy in fixed offcanvas
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-nav-offcanvas > .uk-open > a,
html:not(.uk-touch) .uk-nav-offcanvas > li > a:hover,
html:not(.uk-touch) .uk-nav-offcanvas > li > a:focus {
  background: #404040;
  color: #fff;
  /* 2 */
  outline: none; }

/*
 * Active
 * `html .uk-nav` needed for higher specificity to override hover
 */
html .uk-nav.uk-nav-offcanvas > li.uk-active > a {
  background: #1a1a1a;
  color: #fff; }

/*
 * Sub-object: `uk-nav-header`
 */
.uk-nav-offcanvas .uk-nav-header {
  color: #777; }

/*
 * Sub-object: `uk-nav-divider`
 */
.uk-nav-offcanvas .uk-nav-divider {
  border-top: 1px solid #1a1a1a; }

/*
 * Nested items
 * No hover on touch devices because it behaves buggy in fixed offcanvas
 */
.uk-nav-offcanvas ul a {
  color: #ccc; }

html:not(.uk-touch) .uk-nav-offcanvas ul a:hover {
  color: #fff; }

/* ========================================================================
   Component: Navbar
 ========================================================================== */
.uk-navbar {
  background: #eee;
  color: #444; }

/*
 * Micro clearfix
 */
.uk-navbar:before,
.uk-navbar:after {
  content: "";
  display: table; }

.uk-navbar:after {
  clear: both; }

/* Sub-object: `uk-navbar-nav`
 ========================================================================== */
.uk-navbar-nav {
  margin: 0;
  padding: 0;
  list-style: none;
  float: left; }

/*
 * 1. Create position context for dropdowns
 */
.uk-navbar-nav > li {
  float: left;
  /* 1 */
  position: relative; }

/*
 * 1. Dimensions
 * 2. Style
 */
.uk-navbar-nav > li > a {
  display: block;
  box-sizing: border-box;
  text-decoration: none;
  /* 1 */
  height: 40px;
  padding: 0 15px;
  line-height: 40px;
  /* 2 */
  color: #444;
  font-size: 14px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: normal; }

/* Appear not as link */
.uk-navbar-nav > li > a[href='#'] {
  cursor: text; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Also apply if dropdown is opened
 * 3. Remove default focus style
 */
.uk-navbar-nav > li:hover > a,
.uk-navbar-nav > li > a:focus,
.uk-navbar-nav > li.uk-open > a {
  background-color: #f5f5f5;
  color: #444;
  /* 3 */
  outline: none; }

/* OnClick */
.uk-navbar-nav > li > a:active {
  background-color: #ddd;
  color: #444; }

/* Active */
.uk-navbar-nav > li.uk-active > a {
  background-color: #f5f5f5;
  color: #444; }

/* Sub-objects: `uk-navbar-nav-subtitle`
 ========================================================================== */
.uk-navbar-nav .uk-navbar-nav-subtitle {
  line-height: 28px; }

.uk-navbar-nav-subtitle > div {
  margin-top: -6px;
  font-size: 10px;
  line-height: 12px; }

/* Sub-objects: `uk-navbar-content`, `uk-navbar-brand`, `uk-navbar-toggle`
 ========================================================================== */
/*
 * Imitate navbar items
 */
.uk-navbar-content,
.uk-navbar-brand,
.uk-navbar-toggle {
  box-sizing: border-box;
  display: block;
  height: 40px;
  padding: 0 15px;
  float: left; }

/*
 * Helper to center all child elements vertically
 */
.uk-navbar-content:before,
.uk-navbar-brand:before,
.uk-navbar-toggle:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

/* Sub-objects: `uk-navbar-content`
 ========================================================================== */
/*
 * Better sibling spacing
 */
.uk-navbar-content + .uk-navbar-content:not(.uk-navbar-center) {
  padding-left: 0; }

/*
 * Link colors
 */
.uk-navbar-content > a:not([class]) {
  color: #07D; }

.uk-navbar-content > a:not([class]):hover {
  color: #059; }

/* Sub-objects: `uk-navbar-brand`
 ========================================================================== */
.uk-navbar-brand {
  font-size: 18px;
  color: #444;
  text-decoration: none; }

/*
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-navbar-brand:hover,
.uk-navbar-brand:focus {
  color: #444;
  text-decoration: none;
  /* 2 */
  outline: none; }

/* Sub-object: `uk-navbar-toggle`
 ========================================================================== */
.uk-navbar-toggle {
  font-size: 18px;
  color: #444;
  text-decoration: none; }

/*
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-navbar-toggle:hover,
.uk-navbar-toggle:focus {
  color: #444;
  text-decoration: none;
  /* 2 */
  outline: none; }

/*
 * 1. Center icon vertically
 */
.uk-navbar-toggle:after {
  content: "";
  font-family: FontAwesome;
  /* 1 */
  vertical-align: middle; }

.uk-navbar-toggle-alt:after {
  content: ""; }

/* Sub-object: `uk-navbar-center`
 ========================================================================== */
/*
 * The element with this class needs to be last child in the navbar
 * 1. This hack is needed because other float elements shift centered text
 */
.uk-navbar-center {
  float: none;
  text-align: center;
  /* 1 */
  max-width: 50%;
  margin-left: auto;
  margin-right: auto; }

/* Sub-object: `uk-navbar-flip`
 ========================================================================== */
.uk-navbar-flip {
  float: right; }

/* ========================================================================
   Component: Subnav
 ========================================================================== */
/*
 * 1. Gutter
 * 2. Remove default list style
 */
.uk-subnav {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  /* 1 */
  margin-left: -10px;
  margin-top: -10px;
  /* 2 */
  padding: 0;
  list-style: none; }

/*
 * 1. Space is allocated solely based on content dimensions
 * 2. Horizontal gutter is using `padding` so `uk-width-*` classes can be applied
 * 3. Create position context for dropdowns
 */
.uk-subnav > * {
  /* 1 */
  -ms-flex: none;
  -webkit-flex: none;
  flex: none;
  /* 2 */
  padding-left: 10px;
  margin-top: 10px;
  /* 3 */
  position: relative; }

/*
 * DEPRECATED IE9 Support
 */
.uk-subnav:before,
.uk-subnav:after {
  content: "";
  display: block;
  overflow: hidden; }

.uk-subnav:after {
  clear: both; }

.uk-subnav > * {
  float: left; }

/* Items
 ========================================================================== */
.uk-subnav > * > * {
  display: inline-block;
  color: #444; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 */
.uk-subnav > * > :hover,
.uk-subnav > * > :focus {
  color: #07D;
  text-decoration: none; }

/*
 * Active
 */
.uk-subnav > .uk-active > * {
  color: #07D; }

/* Modifier: 'subnav-line'
 ========================================================================== */
.uk-subnav-line > :before {
  content: "";
  display: inline-block;
  height: 10px;
  vertical-align: middle; }

.uk-subnav-line > :nth-child(n+2):before {
  margin-right: 10px;
  border-left: 1px solid #ddd; }

/* Modifier: 'subnav-pill'
 ========================================================================== */
.uk-subnav-pill > * > * {
  padding: 3px 9px; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-subnav-pill > * > :hover,
.uk-subnav-pill > * > :focus {
  background: #eee;
  color: #444;
  text-decoration: none;
  /* 2 */
  outline: none; }

/*
 * Active
 * `li` needed for higher specificity to override hover
 */
.uk-subnav-pill > .uk-active > * {
  background: #00a8e6;
  color: #fff; }

/* Disabled state
 ========================================================================== */
.uk-subnav > .uk-disabled > * {
  background: none;
  color: #999;
  text-decoration: none;
  cursor: text; }

/* ========================================================================
   Component: Breadcrumb
 ========================================================================== */
/*
 * 1. Remove default list style
 * 2. Remove whitespace between child elements when using `inline-block`
 */
.uk-breadcrumb {
  /* 1 */
  padding: 0;
  list-style: none;
  /* 2 */
  font-size: 0.001px; }

/* Items
 ========================================================================== */
/*
 * Reset whitespace hack
 */
.uk-breadcrumb > li {
  font-size: 1rem;
  vertical-align: top; }

.uk-breadcrumb > li,
.uk-breadcrumb > li > a,
.uk-breadcrumb > li > span {
  display: inline-block; }

.uk-breadcrumb > li:nth-child(n+2):before {
  content: "/";
  display: inline-block;
  margin: 0 8px; }

/*
 * Disabled
 */
.uk-breadcrumb > li:not(.uk-active) > span {
  color: #999; }

/* ========================================================================
   Component: Pagination
 ========================================================================== */
/*
 * 1. Remove default list style
 * 2. Center pagination by default
 * 3. Remove whitespace between child elements when using `inline-block`
 */
.uk-pagination {
  /* 1 */
  padding: 0;
  list-style: none;
  /* 2 */
  text-align: center;
  /* 3 */
  font-size: 0.001px; }

/*
 * Micro clearfix
 * Needed if `uk-pagination-previous` or `uk-pagination-next` sub-objects are used
 */
.uk-pagination:before,
.uk-pagination:after {
  content: "";
  display: table; }

.uk-pagination:after {
  clear: both; }

/* Items
 ========================================================================== */
/*
 * 1. Reset whitespace hack
 * 2. Remove the gap at the bottom of it container
 */
.uk-pagination > li {
  display: inline-block;
  /* 1 */
  font-size: 1rem;
  /* 2 */
  vertical-align: top; }

.uk-pagination > li:nth-child(n+2) {
  margin-left: 5px; }

/*
 * 1. Makes pagination more robust against different box-sizing use
 * 2. Reset text-align to center if alignment modifier is used
 */
.uk-pagination > li > a,
.uk-pagination > li > span {
  display: inline-block;
  min-width: 16px;
  padding: 3px 5px;
  line-height: 20px;
  text-decoration: none;
  /* 1 */
  box-sizing: content-box;
  /* 2 */
  text-align: center; }

/*
 * Links
 */
.uk-pagination > li > a {
  background: #eee;
  color: #444; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-pagination > li > a:hover,
.uk-pagination > li > a:focus {
  background-color: #f5f5f5;
  color: #444;
  /* 2 */
  outline: none; }

/* OnClick */
.uk-pagination > li > a:active {
  background-color: #ddd;
  color: #444; }

/*
 * Active
 */
.uk-pagination > .uk-active > span {
  background: #00a8e6;
  color: #fff; }

/*
 * Disabled
 */
.uk-pagination > .uk-disabled > span {
  background-color: #f5f5f5;
  color: #999; }

/* Previous and next navigation
 ========================================================================== */
.uk-pagination-previous {
  float: left; }

.uk-pagination-next {
  float: right; }

/* Alignment modifiers
 ========================================================================== */
.uk-pagination-left {
  text-align: left; }

.uk-pagination-right {
  text-align: right; }

/* ========================================================================
   Component: Tab
 ========================================================================== */
.uk-tab {
  margin: 0;
  padding: 0;
  list-style: none;
  border-bottom: 1px solid #ddd; }

/*
 * Micro clearfix on the deepest container
 */
.uk-tab:before,
.uk-tab:after {
  content: "";
  display: table; }

.uk-tab:after {
  clear: both; }

/*
 * Items
 * 1. Create position context for dropdowns
 */
.uk-tab > li {
  margin-bottom: -1px;
  float: left;
  /* 1 */
  position: relative; }

.uk-tab > li > a {
  display: block;
  padding: 8px 12px 8px 12px;
  border: 1px solid transparent;
  border-bottom-width: 0;
  color: #07D;
  text-decoration: none; }

.uk-tab > li:nth-child(n+2) > a {
  margin-left: 5px; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Also apply if dropdown is opened
 * 3. Remove default focus style
 */
.uk-tab > li > a:hover,
.uk-tab > li > a:focus,
.uk-tab > li.uk-open > a {
  border-color: #f5f5f5;
  background: #f5f5f5;
  color: #059;
  /* 2 */
  outline: none; }

.uk-tab > li:not(.uk-active) > a:hover,
.uk-tab > li:not(.uk-active) > a:focus,
.uk-tab > li.uk-open:not(.uk-active) > a {
  margin-bottom: 1px;
  padding-bottom: 7px; }

/* Active */
.uk-tab > li.uk-active > a {
  border-color: #ddd;
  border-bottom-color: transparent;
  background: #fff;
  color: #444; }

/* Disabled */
.uk-tab > li.uk-disabled > a {
  color: #999;
  cursor: text; }

.uk-tab > li.uk-disabled > a:hover,
.uk-tab > li.uk-disabled > a:focus,
.uk-tab > li.uk-disabled.uk-active > a {
  background: none;
  border-color: transparent; }

/* Modifier: 'tab-flip'
 ========================================================================== */
.uk-tab-flip > li {
  float: right; }

.uk-tab-flip > li:nth-child(n+2) > a {
  margin-left: 0;
  margin-right: 5px; }

/* Modifier: 'tab-responsive'
 ========================================================================== */
.uk-tab > li.uk-tab-responsive > a {
  margin-left: 0;
  margin-right: 0; }

/*
 * Icon
 */
.uk-tab-responsive > a:before {
  content: "\f0c9\00a0";
  font-family: FontAwesome; }

/* Modifier: 'tab-center'
 ========================================================================== */
.uk-tab-center {
  border-bottom: 1px solid #ddd; }

.uk-tab-center-bottom {
  border-bottom: none;
  border-top: 1px solid #ddd; }

.uk-tab-center:before,
.uk-tab-center:after {
  content: "";
  display: table; }

.uk-tab-center:after {
  clear: both; }

/*
 * 1. Using `right` to prevent vertical scrollbar caused by centering if to many tabs
 */
.uk-tab-center .uk-tab {
  position: relative;
  right: 50%;
  border: none;
  float: right; }

.uk-tab-center .uk-tab > li {
  position: relative;
  right: -50%; }

.uk-tab-center .uk-tab > li > a {
  text-align: center; }

/* Modifier: 'tab-bottom'
 ========================================================================== */
.uk-tab-bottom {
  border-top: 1px solid #ddd;
  border-bottom: none; }

.uk-tab-bottom > li {
  margin-top: -1px;
  margin-bottom: 0; }

.uk-tab-bottom > li > a {
  padding-top: 8px;
  padding-bottom: 8px;
  border-bottom-width: 1px;
  border-top-width: 0; }

.uk-tab-bottom > li:not(.uk-active) > a:hover,
.uk-tab-bottom > li:not(.uk-active) > a:focus,
.uk-tab-bottom > li.uk-open:not(.uk-active) > a {
  margin-bottom: 0;
  margin-top: 1px;
  padding-bottom: 8px;
  padding-top: 7px; }

.uk-tab-bottom > li.uk-active > a {
  border-top-color: transparent;
  border-bottom-color: #ddd; }

/* Modifier: 'tab-grid'
 ========================================================================== */
/*
 * 1. Create position context to prevent hidden border because of negative `z-index`
 */
.uk-tab-grid {
  margin-left: -5px;
  border-bottom: none;
  /* 1 */
  position: relative;
  z-index: 0; }

.uk-tab-grid:before {
  display: block;
  position: absolute;
  left: 5px;
  right: 0;
  bottom: -1px;
  border-top: 1px solid #ddd;
  /* 1 */
  z-index: -1; }

.uk-tab-grid > li:first-child > a {
  margin-left: 5px; }

.uk-tab-grid > li > a {
  text-align: center; }

/*
 * If `uk-tab-bottom`
 */
.uk-tab-grid.uk-tab-bottom {
  border-top: none; }

.uk-tab-grid.uk-tab-bottom:before {
  top: -1px;
  bottom: auto; }

/* Modifier: 'tab-left', 'tab-right'
 ========================================================================== */
/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-tab-left,
  .uk-tab-right {
    border-bottom: none; }
  .uk-tab-left > li,
  .uk-tab-right > li {
    margin-bottom: 0;
    float: none; }
  .uk-tab-left > li > a,
  .uk-tab-right > li > a {
    padding-top: 8px;
    padding-bottom: 8px; }
  .uk-tab-left > li:nth-child(n+2) > a,
  .uk-tab-right > li:nth-child(n+2) > a {
    margin-left: 0;
    margin-top: 5px; }
  .uk-tab-left > li.uk-active > a,
  .uk-tab-right > li.uk-active > a {
    border-color: #ddd; }
  /*
     * Modifier: 'tab-left'
     */
  .uk-tab-left {
    border-right: 1px solid #ddd; }
  .uk-tab-left > li {
    margin-right: -1px; }
  .uk-tab-left > li > a {
    border-bottom-width: 1px;
    border-right-width: 0; }
  .uk-tab-left > li:not(.uk-active) > a:hover,
  .uk-tab-left > li:not(.uk-active) > a:focus {
    margin-bottom: 0;
    margin-right: 1px;
    padding-bottom: 8px;
    padding-right: 11px; }
  .uk-tab-left > li.uk-active > a {
    border-right-color: transparent; }
  /*
     * Modifier: 'tab-right'
     */
  .uk-tab-right {
    border-left: 1px solid #ddd; }
  .uk-tab-right > li {
    margin-left: -1px; }
  .uk-tab-right > li > a {
    border-bottom-width: 1px;
    border-left-width: 0; }
  .uk-tab-right > li:not(.uk-active) > a:hover,
  .uk-tab-right > li:not(.uk-active) > a:focus {
    margin-bottom: 0;
    margin-left: 1px;
    padding-bottom: 8px;
    padding-left: 11px; }
  .uk-tab-right > li.uk-active > a {
    border-left-color: transparent; } }

/* ========================================================================
   Component: Thumbnav
 ========================================================================== */
/*
 * 1. Gutter
 * 2. Remove default list style
 */
.uk-thumbnav {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  /* 1 */
  margin-left: -10px;
  margin-top: -10px;
  /* 2 */
  padding: 0;
  list-style: none; }

/*
 * 1. Space is allocated solely based on content dimensions
 * 2. Horizontal gutter is using `padding` so `uk-width-*` classes can be applied
 */
.uk-thumbnav > * {
  /* 1 */
  -ms-flex: none;
  -webkit-flex: none;
  flex: none;
  /* 2 */
  padding-left: 10px;
  margin-top: 10px; }

/*
 * DEPRECATED IE9 Support
 */
.uk-thumbnav:before,
.uk-thumbnav:after {
  content: "";
  display: block;
  overflow: hidden; }

.uk-thumbnav:after {
  clear: both; }

.uk-thumbnav > * {
  float: left; }

/* Items
 ========================================================================== */
.uk-thumbnav > * > * {
  display: block;
  background: #fff; }

.uk-thumbnav > * > * > img {
  opacity: 0.7;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear; }

/*
 * Hover
 */
.uk-thumbnav > * > :hover > img,
.uk-thumbnav > * > :focus > img {
  opacity: 1; }

/*
 * Active
 */
.uk-thumbnav > .uk-active > * > img {
  opacity: 1; }

/* ========================================================================
   Component: List
 ========================================================================== */
.uk-list {
  padding: 0;
  list-style: none; }

/*
 * Micro clearfix to make list more robust
 */
.uk-list > li:before,
.uk-list > li:after {
  content: "";
  display: table; }

.uk-list > li:after {
  clear: both; }

/*
 * Remove margin from the last-child
 */
.uk-list > li > :last-child {
  margin-bottom: 0; }

/*
 * Nested lists
 */
.uk-list ul {
  margin: 0;
  padding-left: 20px;
  list-style: none; }

/* Modifier: `uk-list-line`
 ========================================================================== */
.uk-list-line > li:nth-child(n+2) {
  margin-top: 5px;
  padding-top: 5px;
  border-top: 1px solid #ddd; }

/* Modifier: `uk-list-striped`
 ========================================================================== */
.uk-list-striped > li {
  padding: 5px 5px; }

.uk-list-striped > li:nth-of-type(odd) {
  background: #f5f5f5; }

/* Modifier: `uk-list-space`
 ========================================================================== */
.uk-list-space > li:nth-child(n+2) {
  margin-top: 10px; }

/* ========================================================================
   Component: Description list
 ========================================================================== */
/* Modifier: `uk-description-list-horizontal`
 ========================================================================== */
/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-description-list-horizontal {
    overflow: hidden; }
  .uk-description-list-horizontal > dt {
    width: 160px;
    float: left;
    clear: both;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .uk-description-list-horizontal > dd {
    margin-left: 180px; } }

/* Modifier: `uk-description-list-line`
 ========================================================================== */
.uk-description-list-line > dt {
  font-weight: normal; }

.uk-description-list-line > dt:nth-child(n+2) {
  margin-top: 5px;
  padding-top: 5px;
  border-top: 1px solid #ddd; }

.uk-description-list-line > dd {
  color: #999; }

/* ========================================================================
   Component: Table
 ========================================================================== */
/*
 * 1. Remove most spacing between table cells.
 * 2. Block element behavior
 * 3. Style
 */
.uk-table {
  /* 1 */
  border-collapse: collapse;
  border-spacing: 0;
  /* 2 */
  width: 100%;
  /* 3 */
  margin-bottom: 15px; }

/*
 * Add margin if adjacent element
 */
* + .uk-table {
  margin-top: 15px; }

.uk-table th,
.uk-table td {
  padding: 8px 8px; }

/*
 * Set alignment
 */
.uk-table th {
  text-align: left; }

.uk-table td {
  vertical-align: top; }

.uk-table thead th {
  vertical-align: bottom; }

/*
 * Caption and footer
 */
.uk-table caption,
.uk-table tfoot {
  font-size: 12px;
  font-style: italic; }

.uk-table caption {
  text-align: left;
  color: #999; }

/*
 * Active State
 */
.uk-table tbody tr.uk-active {
  background: #EEE; }

/* Sub-modifier: `uk-table-middle`
 ========================================================================== */
.uk-table-middle,
.uk-table-middle td {
  vertical-align: middle !important; }

/* Modifier: `uk-table-striped`
 ========================================================================== */
.uk-table-striped tbody tr:nth-of-type(odd) {
  background: #f5f5f5; }

/* Modifier: `uk-table-condensed`
 ========================================================================== */
.uk-table-condensed td {
  padding: 4px 8px; }

/* Modifier: `uk-table-hover`
 ========================================================================== */
.uk-table-hover tbody tr:hover {
  background: #EEE; }

/* ========================================================================
   Component: Form
 ========================================================================== */
/*
 * 1. Define consistent box sizing.
 *    Default is `content-box` with following exceptions set to `border-box`
 *    `button`, `select`, `input[type="checkbox"]` and `input[type="radio"]`
 *    `input[type="search"]` in Chrome, Safari and Opera
 *    `input[type="color"]` in Firefox
 * 2. Address margins set differently in Firefox/IE and Chrome/Safari/Opera.
 * 3. Remove `border-radius` in iOS.
 * 4. Correct `font` properties and `color` not being inherited.
 */
.uk-form input,
.uk-form select,
.uk-form textarea {
  /* 1 */
  box-sizing: border-box;
  /* 2 */
  margin: 0;
  /* 3 */
  border-radius: 0;
  /* 4 */
  font: inherit;
  color: inherit; }

/*
 * Address inconsistent `text-transform` inheritance which is only inherit in Firefox
 */
.uk-form select {
  text-transform: none; }

/*
 * 1. Correct `font` properties not being inherited.
 * 2. Don't inherit the `font-weight` and use `bold` instead.
 * NOTE: Both declarations don't work in Chrome, Safari and Opera.
 */
.uk-form optgroup {
  /* 1 */
  font: inherit;
  /* 2 */
  font-weight: bold; }

/*
 * Removes inner padding and border in Firefox 4+.
 */
.uk-form input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * Removes excess padding in IE 8/9/10.
 */
.uk-form input[type="checkbox"],
.uk-form input[type="radio"] {
  padding: 0; }

/*
 * Improves consistency of cursor style for clickable elements
 */
.uk-form input[type="checkbox"]:not(:disabled),
.uk-form input[type="radio"]:not(:disabled) {
  cursor: pointer; }

/*
 * Remove default style in iOS.
 */
.uk-form textarea,
.uk-form input:not([type]),
.uk-form input[type="text"],
.uk-form input[type="password"],
.uk-form input[type="email"],
.uk-form input[type="url"],
.uk-form input[type="search"],
.uk-form input[type="tel"],
.uk-form input[type="number"],
.uk-form input[type="datetime"] {
  -webkit-appearance: none; }

/*
 * Remove inner padding and search cancel button in Chrome, Safari and Opera on OS X.
 */
.uk-form input[type="search"]::-webkit-search-cancel-button,
.uk-form input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/*
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
.uk-form input[type="number"]::-webkit-inner-spin-button,
.uk-form input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/*
 * Define consistent border, margin, and padding.
 */
.uk-form fieldset {
  border: none;
  margin: 0;
  padding: 0; }

/*
 * 1. Remove default vertical scrollbar in IE 8/9/10/11.
 * 2. Improve readability and alignment in all browsers.
 */
.uk-form textarea {
  /* 1 */
  overflow: auto;
  /* 2 */
  vertical-align: top; }

/*
 * Removes placeholder transparency in Firefox.
 */
.uk-form ::-moz-placeholder {
  opacity: 1; }

/*
 * Removes `box-shadow` for invalid controls in Firefox.
 */
.uk-form :invalid {
  box-shadow: none; }

/*
 * Vertical alignment
 */
.uk-form input:not([type="radio"]):not([type="checkbox"]),
.uk-form select {
  vertical-align: middle; }

/* Style
 ========================================================================== */
/*
 * Remove margin from the last-child
 */
.uk-form > :last-child {
  margin-bottom: 0; }

/*
 * Controls
 * Except for `range`, `radio`, `checkbox`, `file`, `submit`, `reset`, `button` and `image`
 * 1. Must be `height` because `min-height` is not working in OSX
 * 2. Responsiveness: Sets a maximum width relative to the parent to scale on narrower viewports
 * 3. Vertical `padding` needed for `select` elements in Firefox
 * 4. Style
 */
.uk-form select,
.uk-form textarea,
.uk-form input:not([type]),
.uk-form input[type="text"],
.uk-form input[type="password"],
.uk-form input[type="datetime"],
.uk-form input[type="datetime-local"],
.uk-form input[type="date"],
.uk-form input[type="month"],
.uk-form input[type="time"],
.uk-form input[type="week"],
.uk-form input[type="number"],
.uk-form input[type="email"],
.uk-form input[type="url"],
.uk-form input[type="search"],
.uk-form input[type="tel"],
.uk-form input[type="color"] {
  /* 1 */
  height: 30px;
  /* 2 */
  max-width: 100%;
  /* 3 */
  padding: 4px 6px;
  /* 4 */
  border: 1px solid #ddd;
  background: #fff;
  color: #444;
  -webkit-transition: all 0.2s linear;
  -webkit-transition-property: border, background, color, box-shadow, padding;
  transition: all 0.2s linear;
  transition-property: border, background, color, box-shadow, padding; }
  .uk-form select:focus,
  .uk-form textarea:focus,
  .uk-form input:not([type]):focus,
  .uk-form input[type="text"]:focus,
  .uk-form input[type="password"]:focus,
  .uk-form input[type="datetime"]:focus,
  .uk-form input[type="datetime-local"]:focus,
  .uk-form input[type="date"]:focus,
  .uk-form input[type="month"]:focus,
  .uk-form input[type="time"]:focus,
  .uk-form input[type="week"]:focus,
  .uk-form input[type="number"]:focus,
  .uk-form input[type="email"]:focus,
  .uk-form input[type="url"]:focus,
  .uk-form input[type="search"]:focus,
  .uk-form input[type="tel"]:focus,
  .uk-form input[type="color"]:focus {
    border-color: #99baca;
    outline: 0;
    background: #f5fbfe;
    color: #444; }
  .uk-form select:disabled,
  .uk-form textarea:disabled,
  .uk-form input:not([type]):disabled,
  .uk-form input[type="text"]:disabled,
  .uk-form input[type="password"]:disabled,
  .uk-form input[type="datetime"]:disabled,
  .uk-form input[type="datetime-local"]:disabled,
  .uk-form input[type="date"]:disabled,
  .uk-form input[type="month"]:disabled,
  .uk-form input[type="time"]:disabled,
  .uk-form input[type="week"]:disabled,
  .uk-form input[type="number"]:disabled,
  .uk-form input[type="email"]:disabled,
  .uk-form input[type="url"]:disabled,
  .uk-form input[type="search"]:disabled,
  .uk-form input[type="tel"]:disabled,
  .uk-form input[type="color"]:disabled {
    border-color: #ddd;
    background-color: #f5f5f5;
    color: #999; }

/*
 * Placeholder
 */
.uk-form :-ms-input-placeholder {
  color: #999 !important; }

.uk-form ::-moz-placeholder {
  color: #999; }

.uk-form ::-webkit-input-placeholder {
  color: #999; }

.uk-form :disabled:-ms-input-placeholder {
  color: #999 !important; }

.uk-form :disabled::-moz-placeholder {
  color: #999; }

.uk-form :disabled::-webkit-input-placeholder {
  color: #999; }

/*
 * Legend
 * 1. Behave like block element
 * 2. Correct `color` not being inherited in IE 8/9/10/11.
 * 3. Remove padding
 * 4. `margin-bottom` is not working in Safari and Opera.
 *    Using `padding` and :after instead to create the border
 * 5. Style
 */
.uk-form legend {
  /* 1 */
  width: 100%;
  /* 2 */
  border: 0;
  /* 3 */
  padding: 0;
  /* 4 */
  padding-bottom: 15px;
  /* 5 */
  font-size: 18px;
  line-height: 30px; }

/*
 * 1. Fixes IE9
 */
.uk-form legend:after {
  content: "";
  display: block;
  border-bottom: 1px solid #ddd;
  /* 1 */
  width: 100%; }

/* Size modifiers
 * Higher specificity needed to override defaults
 ========================================================================== */
select.uk-form-small,
textarea.uk-form-small,
input[type].uk-form-small,
input:not([type]).uk-form-small {
  height: 25px;
  padding: 3px 3px;
  font-size: 12px; }

select.uk-form-large,
textarea.uk-form-large,
input[type].uk-form-large,
input:not([type]).uk-form-large {
  height: 40px;
  padding: 8px 6px;
  font-size: 16px; }

/* Reset height
 * Must be after size modifiers
 ========================================================================== */
.uk-form textarea,
.uk-form select[multiple],
.uk-form select[size] {
  height: auto; }

/* Validation states
 * Using !important to keep the selector simple
 ========================================================================== */
/*
 * Error state
 */
.uk-form-danger {
  border-color: #dc8d99 !important;
  background: #fff7f8 !important;
  color: #d85030 !important; }

/*
 * Success state
 */
.uk-form-success {
  border-color: #8ec73b !important;
  background: #fafff2 !important;
  color: #659f13 !important; }

/* Style modifiers
 * Using !important to keep the selector simple
 ========================================================================== */
/*
 * Blank form
 */
.uk-form-blank {
  border-color: transparent !important;
  border-style: dashed !important;
  background: none !important; }

.uk-form-blank:focus {
  border-color: #ddd !important; }

/* Size sub-modifiers
 ========================================================================== */
/*
 * Fixed widths
 * Different widths for mini sized `input` and `select` elements
 */
input.uk-form-width-mini {
  width: 40px; }

select.uk-form-width-mini {
  width: 65px; }

.uk-form-width-small {
  width: 130px; }

.uk-form-width-medium {
  width: 200px; }

.uk-form-width-large {
  width: 500px; }

/* Sub-objects: `uk-form-row`
 * Groups labels and controls in rows
 ========================================================================== */
/*
 * Micro clearfix
 * Needed for `uk-form-horizontal` modifier
 */
.uk-form-row:before,
.uk-form-row:after {
  content: "";
  display: table; }

.uk-form-row:after {
  clear: both; }

/*
 * Vertical gutter
 */
.uk-form-row + .uk-form-row {
  margin-top: 15px; }

/* Help text
 * Sub-object: `uk-form-help-inline`, `uk-form-help-block`
 ========================================================================== */
.uk-form-help-inline {
  display: inline-block;
  margin: 0 0 0 10px; }

.uk-form-help-block {
  margin: 5px 0 0 0; }

/* Controls content
 * Sub-object: `uk-form-controls`, `uk-form-controls-condensed`
 ========================================================================== */
/*
 * Remove margins
 */
.uk-form-controls > :first-child {
  margin-top: 0; }

.uk-form-controls > :last-child {
  margin-bottom: 0; }

/*
 * Group controls and text into blocks with a small spacing between blocks
 */
.uk-form-controls-condensed {
  margin: 5px 0; }

/* Modifier: `uk-form-stacked`
 * Requires sub-object: `uk-form-label`
 ========================================================================== */
.uk-form-stacked .uk-form-label {
  display: block;
  margin-bottom: 5px;
  font-weight: bold; }

/* Modifier: `uk-form-horizontal`
 * Requires sub-objects: `uk-form-label`, `uk-form-controls`
 ========================================================================== */
/* Tablet portrait and smaller */
@media (max-width: 959px) {
  /* Behave like `uk-form-stacked` */
  .uk-form-horizontal .uk-form-label {
    display: block;
    margin-bottom: 5px;
    font-weight: bold; } }

/* Desktop and bigger */
@media (min-width: 960px) {
  .uk-form-horizontal .uk-form-label {
    width: 200px;
    margin-top: 5px;
    float: left; }
  .uk-form-horizontal .uk-form-controls {
    margin-left: 215px; }
  /* Better vertical alignment if controls are checkboxes and radio buttons with text */
  .uk-form-horizontal .uk-form-controls-text {
    padding-top: 5px; } }

/* Sub-object: `uk-form-icon`
 ========================================================================== */
/*
 * 1. Container width fits its content
 * 2. Create position context
 * 3. Prevent `inline-block` consequences
 */
.uk-form-icon {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%; }

/*
 * 1. Make form element clickable through icon
 */
.uk-form-icon > [class*='uk-icon-'] {
  position: absolute;
  top: 50%;
  width: 30px;
  margin-top: -7px;
  font-size: 14px;
  color: #999;
  text-align: center;
  /* 1 */
  pointer-events: none; }

.uk-form-icon:not(.uk-form-icon-flip) > input {
  padding-left: 30px !important; }

/*
 * Sub-modifier: `uk-form-icon-flip`
 */
.uk-form-icon-flip > [class*='uk-icon-'] {
  right: 0; }

.uk-form-icon-flip > input {
  padding-right: 30px !important; }

/* ========================================================================
   Component: Button
 ========================================================================== */
/*
 * Removes inner padding and border in Firefox 4+.
 */
.uk-button::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * 1. Correct inability to style clickable `input` types in iOS.
 * 2. Remove margins in Chrome, Safari and Opera.
 * 3. Remove borders for `button`.
 * 4. Address `overflow` set to `hidden` in IE 8/9/10/11.
 * 5. Correct `font` properties and `color` not being inherited for `button`.
 * 6. Address inconsistent `text-transform` inheritance which is only inherit in Firefox and IE
 * 7. Style
 * 8. `line-height` is used to create a height
 * 9. `min-height` is necessary for `input` elements in Firefox and Opera because `line-height` is not working.
 * 10. Reset button group whitespace hack
 * 11. Required for `a`.
 */
.uk-button {
  /* 1 */
  -webkit-appearance: none;
  /* 2 */
  margin: 0;
  /* 3 */
  border: none;
  /* 4 */
  overflow: visible;
  /* 5 */
  font: inherit;
  color: #444;
  /* 6 */
  text-transform: none;
  /* 7 */
  display: inline-block;
  box-sizing: border-box;
  padding: 0 12px;
  background: #eee;
  vertical-align: middle;
  /* 8 */
  line-height: 30px;
  /* 9 */
  min-height: 30px;
  /* 10 */
  font-size: 1rem;
  /* 11 */
  text-decoration: none;
  text-align: center; }

.uk-button:not(:disabled) {
  cursor: pointer; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 * 3. Required for `a` elements
 */
.uk-button:hover,
.uk-button:focus {
  background-color: #f5f5f5;
  color: #444;
  /* 2 */
  outline: none;
  /* 3 */
  text-decoration: none; }

/* Active */
.uk-button:active,
.uk-button.uk-active {
  background-color: #ddd;
  color: #444; }

/* Color modifiers
 ========================================================================== */
/*
 * Modifier: `uk-button-primary`
 */
.uk-button-primary {
  background-color: #00a8e6;
  color: #fff; }

/* Hover */
.uk-button-primary:hover,
.uk-button-primary:focus {
  background-color: #35b3ee;
  color: #fff; }

/* Active */
.uk-button-primary:active,
.uk-button-primary.uk-active {
  background-color: #0091ca;
  color: #fff; }

/*
 * Modifier: `uk-button-success`
 */
.uk-button-success {
  background-color: #8cc14c;
  color: #fff; }

/* Hover */
.uk-button-success:hover,
.uk-button-success:focus {
  background-color: #8ec73b;
  color: #fff; }

/* Active */
.uk-button-success:active,
.uk-button-success.uk-active {
  background-color: #72ae41;
  color: #fff; }

/*
 * Modifier: `uk-button-danger`
 */
.uk-button-danger {
  background-color: #da314b;
  color: #fff; }

/* Hover */
.uk-button-danger:hover,
.uk-button-danger:focus {
  background-color: #e4354f;
  color: #fff; }

/* Active */
.uk-button-danger:active,
.uk-button-danger.uk-active {
  background-color: #c91032;
  color: #fff; }

/* Disabled state
 * Overrides also the color modifiers
 ========================================================================== */
/* Equal for all button types */
.uk-button:disabled {
  background-color: #f5f5f5;
  color: #999; }

/* Modifier: `uk-button-link`
 ========================================================================== */
/* Reset */
.uk-button-link,
.uk-button-link:hover,
.uk-button-link:focus,
.uk-button-link:active,
.uk-button-link.uk-active,
.uk-button-link:disabled {
  border-color: transparent;
  background: none; }

/* Color */
.uk-button-link {
  color: #07D; }

.uk-button-link:hover,
.uk-button-link:focus,
.uk-button-link:active,
.uk-button-link.uk-active {
  color: #059;
  text-decoration: underline; }

.uk-button-link:disabled {
  color: #999; }

/* Focus */
.uk-button-link:focus {
  outline: 1px dotted; }

/* Size modifiers
 ========================================================================== */
.uk-button-mini {
  min-height: 20px;
  padding: 0 6px;
  line-height: 20px;
  font-size: 11px; }

.uk-button-small {
  min-height: 25px;
  padding: 0 10px;
  line-height: 25px;
  font-size: 12px; }

.uk-button-large {
  min-height: 40px;
  padding: 0 15px;
  line-height: 40px;
  font-size: 16px; }

/* Sub-object `uk-button-group`
 ========================================================================== */
/*
 * 1. Behave like buttons
 * 2. Create position context for dropdowns
 * 3. Remove whitespace between child elements when using `inline-block`
 * 4. Prevent buttons from wrapping
 * 5. Remove whitespace between child elements when using `inline-block`
 */
.uk-button-group {
  /* 1 */
  display: inline-block;
  vertical-align: middle;
  /* 2 */
  position: relative;
  /* 3 */
  font-size: 0.001px;
  /* 4 */
  white-space: nowrap; }

.uk-button-group > * {
  display: inline-block; }

/* 5 */
.uk-button-group .uk-button {
  vertical-align: top; }

/* Sub-object: `uk-button-dropdown`
 ========================================================================== */
/*
 * 1. Behave like buttons
 * 2. Create position context for dropdowns
 */
.uk-button-dropdown {
  /* 1 */
  display: inline-block;
  vertical-align: middle;
  /* 2 */
  position: relative; }

/* ========================================================================
   Component: Icon
 ========================================================================== */
@font-face {
  font-family: 'FontAwesome';
  src: url("../fonts/fontawesome-webfont.woff2") format("woff2"), url("../fonts/fontawesome-webfont.woff") format("woff"), url("../fonts/fontawesome-webfont.ttf") format("truetype");
  font-weight: normal;
  font-style: normal; }

/*
 * 1. Allow margin
 * 2. Prevent inherit font style
 * 4. Correct line-height
 * 5. Better font rendering
 * 6. Remove `text-decoration` for anchors
 */
[class*='uk-icon-'] {
  font-family: FontAwesome;
  /* 1 */
  display: inline-block;
  /* 2 */
  font-weight: normal;
  font-style: normal;
  /* 4 */
  line-height: 1;
  /* 5 */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* 6 */
[class*='uk-icon-'],
[class*='uk-icon-']:hover,
[class*='uk-icon-']:focus {
  text-decoration: none; }

/* Size modifiers
 ========================================================================== */
.uk-icon-small {
  font-size: 150%;
  vertical-align: -10%; }

.uk-icon-medium {
  font-size: 200%;
  vertical-align: -16%; }

.uk-icon-large {
  font-size: 250%;
  vertical-align: -22%; }

/* Modifier: `uk-icon-justify`
 ========================================================================== */
.uk-icon-justify {
  width: 1em;
  text-align: center; }

/* Modifier: `uk-icon-spin`
 ========================================================================== */
.uk-icon-spin {
  display: inline-block;
  -webkit-animation: uk-rotate 2s infinite linear;
  animation: uk-rotate 2s infinite linear; }

/* Modifier: `uk-icon-hover`
 ========================================================================== */
.uk-icon-hover {
  color: #999; }

/*
 * Hover
 */
.uk-icon-hover:hover {
  color: #444; }

/* Modifier: `uk-icon-button`
 ========================================================================== */
.uk-icon-button {
  box-sizing: border-box;
  display: inline-block;
  width: 35px;
  height: 35px;
  border-radius: 100%;
  background: #eee;
  line-height: 35px;
  color: #444;
  font-size: 18px;
  text-align: center; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 */
.uk-icon-button:hover,
.uk-icon-button:focus {
  background-color: #f5f5f5;
  color: #444;
  /* 2 */
  outline: none; }

/* Active */
.uk-icon-button:active {
  background-color: #ddd;
  color: #444; }

/* Icon mapping
 ========================================================================== */
.uk-icon-glass:before {
  content: "\f000"; }

.uk-icon-music:before {
  content: "\f001"; }

.uk-icon-search:before {
  content: "\f002"; }

.uk-icon-envelope-o:before {
  content: "\f003"; }

.uk-icon-heart:before {
  content: "\f004"; }

.uk-icon-star:before {
  content: "\f005"; }

.uk-icon-star-o:before {
  content: "\f006"; }

.uk-icon-user:before {
  content: "\f007"; }

.uk-icon-film:before {
  content: "\f008"; }

.uk-icon-th-large:before {
  content: "\f009"; }

.uk-icon-th:before {
  content: "\f00a"; }

.uk-icon-th-list:before {
  content: "\f00b"; }

.uk-icon-check:before {
  content: "\f00c"; }

.uk-icon-remove:before,
.uk-icon-close:before,
.uk-icon-times:before {
  content: "\f00d"; }

.uk-icon-search-plus:before {
  content: "\f00e"; }

.uk-icon-search-minus:before {
  content: "\f010"; }

.uk-icon-power-off:before {
  content: "\f011"; }

.uk-icon-signal:before {
  content: "\f012"; }

.uk-icon-gear:before,
.uk-icon-cog:before {
  content: "\f013"; }

.uk-icon-trash-o:before {
  content: "\f014"; }

.uk-icon-home:before {
  content: "\f015"; }

.uk-icon-file-o:before {
  content: "\f016"; }

.uk-icon-clock-o:before {
  content: "\f017"; }

.uk-icon-road:before {
  content: "\f018"; }

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

.uk-icon-arrow-circle-o-down:before {
  content: "\f01a"; }

.uk-icon-arrow-circle-o-up:before {
  content: "\f01b"; }

.uk-icon-inbox:before {
  content: "\f01c"; }

.uk-icon-play-circle-o:before {
  content: "\f01d"; }

.uk-icon-rotate-right:before,
.uk-icon-repeat:before {
  content: "\f01e"; }

.uk-icon-refresh:before {
  content: "\f021"; }

.uk-icon-list-alt:before {
  content: "\f022"; }

.uk-icon-lock:before {
  content: "\f023"; }

.uk-icon-flag:before {
  content: "\f024"; }

.uk-icon-headphones:before {
  content: "\f025"; }

.uk-icon-volume-off:before {
  content: "\f026"; }

.uk-icon-volume-down:before {
  content: "\f027"; }

.uk-icon-volume-up:before {
  content: "\f028"; }

.uk-icon-qrcode:before {
  content: "\f029"; }

.uk-icon-barcode:before {
  content: "\f02a"; }

.uk-icon-tag:before {
  content: "\f02b"; }

.uk-icon-tags:before {
  content: "\f02c"; }

.uk-icon-book:before {
  content: "\f02d"; }

.uk-icon-bookmark:before {
  content: "\f02e"; }

.uk-icon-print:before {
  content: "\f02f"; }

.uk-icon-camera:before {
  content: "\f030"; }

.uk-icon-font:before {
  content: "\f031"; }

.uk-icon-bold:before {
  content: "\f032"; }

.uk-icon-italic:before {
  content: "\f033"; }

.uk-icon-text-height:before {
  content: "\f034"; }

.uk-icon-text-width:before {
  content: "\f035"; }

.uk-icon-align-left:before {
  content: "\f036"; }

.uk-icon-align-center:before {
  content: "\f037"; }

.uk-icon-align-right:before {
  content: "\f038"; }

.uk-icon-align-justify:before {
  content: "\f039"; }

.uk-icon-list:before {
  content: "\f03a"; }

.uk-icon-dedent:before,
.uk-icon-outdent:before {
  content: "\f03b"; }

.uk-icon-indent:before {
  content: "\f03c"; }

.uk-icon-video-camera:before {
  content: "\f03d"; }

.uk-icon-photo:before,
.uk-icon-image:before,
.uk-icon-picture-o:before {
  content: "\f03e"; }

.uk-icon-pencil:before {
  content: "\f040"; }

.uk-icon-map-marker:before {
  content: "\f041"; }

.uk-icon-adjust:before {
  content: "\f042"; }

.uk-icon-tint:before {
  content: "\f043"; }

.uk-icon-edit:before,
.uk-icon-pencil-square-o:before {
  content: "\f044"; }

.uk-icon-share-square-o:before {
  content: "\f045"; }

.uk-icon-check-square-o:before {
  content: "\f046"; }

.uk-icon-arrows:before {
  content: "\f047"; }

.uk-icon-step-backward:before {
  content: "\f048"; }

.uk-icon-fast-backward:before {
  content: "\f049"; }

.uk-icon-backward:before {
  content: "\f04a"; }

.uk-icon-play:before {
  content: "\f04b"; }

.uk-icon-pause:before {
  content: "\f04c"; }

.uk-icon-stop:before {
  content: "\f04d"; }

.uk-icon-forward:before {
  content: "\f04e"; }

.uk-icon-fast-forward:before {
  content: "\f050"; }

.uk-icon-step-forward:before {
  content: "\f051"; }

.uk-icon-eject:before {
  content: "\f052"; }

.uk-icon-chevron-left:before {
  content: "\f053"; }

.uk-icon-chevron-right:before {
  content: "\f054"; }

.uk-icon-plus-circle:before {
  content: "\f055"; }

.uk-icon-minus-circle:before {
  content: "\f056"; }

.uk-icon-times-circle:before {
  content: "\f057"; }

.uk-icon-check-circle:before {
  content: "\f058"; }

.uk-icon-question-circle:before {
  content: "\f059"; }

.uk-icon-info-circle:before {
  content: "\f05a"; }

.uk-icon-crosshairs:before {
  content: "\f05b"; }

.uk-icon-times-circle-o:before {
  content: "\f05c"; }

.uk-icon-check-circle-o:before {
  content: "\f05d"; }

.uk-icon-ban:before {
  content: "\f05e"; }

.uk-icon-arrow-left:before {
  content: "\f060"; }

.uk-icon-arrow-right:before {
  content: "\f061"; }

.uk-icon-arrow-up:before {
  content: "\f062"; }

.uk-icon-arrow-down:before {
  content: "\f063"; }

.uk-icon-mail-forward:before,
.uk-icon-share:before {
  content: "\f064"; }

.uk-icon-expand:before {
  content: "\f065"; }

.uk-icon-compress:before {
  content: "\f066"; }

.uk-icon-plus:before {
  content: "\f067"; }

.uk-icon-minus:before {
  content: "\f068"; }

.uk-icon-asterisk:before {
  content: "\f069"; }

.uk-icon-exclamation-circle:before {
  content: "\f06a"; }

.uk-icon-gift:before {
  content: "\f06b"; }

.uk-icon-leaf:before {
  content: "\f06c"; }

.uk-icon-fire:before {
  content: "\f06d"; }

.uk-icon-eye:before {
  content: "\f06e"; }

.uk-icon-eye-slash:before {
  content: "\f070"; }

.uk-icon-warning:before,
.uk-icon-exclamation-triangle:before {
  content: "\f071"; }

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

.uk-icon-calendar:before {
  content: "\f073"; }

.uk-icon-random:before {
  content: "\f074"; }

.uk-icon-comment:before {
  content: "\f075"; }

.uk-icon-magnet:before {
  content: "\f076"; }

.uk-icon-chevron-up:before {
  content: "\f077"; }

.uk-icon-chevron-down:before {
  content: "\f078"; }

.uk-icon-retweet:before {
  content: "\f079"; }

.uk-icon-shopping-cart:before {
  content: "\f07a"; }

.uk-icon-folder:before {
  content: "\f07b"; }

.uk-icon-folder-open:before {
  content: "\f07c"; }

.uk-icon-arrows-v:before {
  content: "\f07d"; }

.uk-icon-arrows-h:before {
  content: "\f07e"; }

.uk-icon-bar-chart-o:before,
.uk-icon-bar-chart:before {
  content: "\f080"; }

.uk-icon-twitter-square:before {
  content: "\f081"; }

.uk-icon-facebook-square:before {
  content: "\f082"; }

.uk-icon-camera-retro:before {
  content: "\f083"; }

.uk-icon-key:before {
  content: "\f084"; }

.uk-icon-gears:before,
.uk-icon-cogs:before {
  content: "\f085"; }

.uk-icon-comments:before {
  content: "\f086"; }

.uk-icon-thumbs-o-up:before {
  content: "\f087"; }

.uk-icon-thumbs-o-down:before {
  content: "\f088"; }

.uk-icon-star-half:before {
  content: "\f089"; }

.uk-icon-heart-o:before {
  content: "\f08a"; }

.uk-icon-sign-out:before {
  content: "\f08b"; }

.uk-icon-linkedin-square:before {
  content: "\f08c"; }

.uk-icon-thumb-tack:before {
  content: "\f08d"; }

.uk-icon-external-link:before {
  content: "\f08e"; }

.uk-icon-sign-in:before {
  content: "\f090"; }

.uk-icon-trophy:before {
  content: "\f091"; }

.uk-icon-github-square:before {
  content: "\f092"; }

.uk-icon-upload:before {
  content: "\f093"; }

.uk-icon-lemon-o:before {
  content: "\f094"; }

.uk-icon-phone:before {
  content: "\f095"; }

.uk-icon-square-o:before {
  content: "\f096"; }

.uk-icon-bookmark-o:before {
  content: "\f097"; }

.uk-icon-phone-square:before {
  content: "\f098"; }

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

.uk-icon-facebook-f:before,
.uk-icon-facebook:before {
  content: "\f09a"; }

.uk-icon-github:before {
  content: "\f09b"; }

.uk-icon-unlock:before {
  content: "\f09c"; }

.uk-icon-credit-card:before {
  content: "\f09d"; }

.uk-icon-rss:before {
  content: "\f09e"; }

.uk-icon-hdd-o:before {
  content: "\f0a0"; }

.uk-icon-bullhorn:before {
  content: "\f0a1"; }

.uk-icon-bell:before {
  content: "\f0f3"; }

.uk-icon-certificate:before {
  content: "\f0a3"; }

.uk-icon-hand-o-right:before {
  content: "\f0a4"; }

.uk-icon-hand-o-left:before {
  content: "\f0a5"; }

.uk-icon-hand-o-up:before {
  content: "\f0a6"; }

.uk-icon-hand-o-down:before {
  content: "\f0a7"; }

.uk-icon-arrow-circle-left:before {
  content: "\f0a8"; }

.uk-icon-arrow-circle-right:before {
  content: "\f0a9"; }

.uk-icon-arrow-circle-up:before {
  content: "\f0aa"; }

.uk-icon-arrow-circle-down:before {
  content: "\f0ab"; }

.uk-icon-globe:before {
  content: "\f0ac"; }

.uk-icon-wrench:before {
  content: "\f0ad"; }

.uk-icon-tasks:before {
  content: "\f0ae"; }

.uk-icon-filter:before {
  content: "\f0b0"; }

.uk-icon-briefcase:before {
  content: "\f0b1"; }

.uk-icon-arrows-alt:before {
  content: "\f0b2"; }

.uk-icon-group:before,
.uk-icon-users:before {
  content: "\f0c0"; }

.uk-icon-chain:before,
.uk-icon-link:before {
  content: "\f0c1"; }

.uk-icon-cloud:before {
  content: "\f0c2"; }

.uk-icon-flask:before {
  content: "\f0c3"; }

.uk-icon-cut:before,
.uk-icon-scissors:before {
  content: "\f0c4"; }

.uk-icon-copy:before,
.uk-icon-files-o:before {
  content: "\f0c5"; }

.uk-icon-paperclip:before {
  content: "\f0c6"; }

.uk-icon-save:before,
.uk-icon-floppy-o:before {
  content: "\f0c7"; }

.uk-icon-square:before {
  content: "\f0c8"; }

.uk-icon-navicon:before,
.uk-icon-reorder:before,
.uk-icon-bars:before {
  content: "\f0c9"; }

.uk-icon-list-ul:before {
  content: "\f0ca"; }

.uk-icon-list-ol:before {
  content: "\f0cb"; }

.uk-icon-strikethrough:before {
  content: "\f0cc"; }

.uk-icon-underline:before {
  content: "\f0cd"; }

.uk-icon-table:before {
  content: "\f0ce"; }

.uk-icon-magic:before {
  content: "\f0d0"; }

.uk-icon-truck:before {
  content: "\f0d1"; }

.uk-icon-pinterest:before {
  content: "\f0d2"; }

.uk-icon-pinterest-square:before {
  content: "\f0d3"; }

.uk-icon-google-plus-square:before {
  content: "\f0d4"; }

.uk-icon-google-plus:before {
  content: "\f0d5"; }

.uk-icon-money:before {
  content: "\f0d6"; }

.uk-icon-caret-down:before {
  content: "\f0d7"; }

.uk-icon-caret-up:before {
  content: "\f0d8"; }

.uk-icon-caret-left:before {
  content: "\f0d9"; }

.uk-icon-caret-right:before {
  content: "\f0da"; }

.uk-icon-columns:before {
  content: "\f0db"; }

.uk-icon-unsorted:before,
.uk-icon-sort:before {
  content: "\f0dc"; }

.uk-icon-sort-down:before,
.uk-icon-sort-desc:before {
  content: "\f0dd"; }

.uk-icon-sort-up:before,
.uk-icon-sort-asc:before {
  content: "\f0de"; }

.uk-icon-envelope:before {
  content: "\f0e0"; }

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

.uk-icon-rotate-left:before,
.uk-icon-undo:before {
  content: "\f0e2"; }

.uk-icon-legal:before,
.uk-icon-gavel:before {
  content: "\f0e3"; }

.uk-icon-dashboard:before,
.uk-icon-tachometer:before {
  content: "\f0e4"; }

.uk-icon-comment-o:before {
  content: "\f0e5"; }

.uk-icon-comments-o:before {
  content: "\f0e6"; }

.uk-icon-flash:before,
.uk-icon-bolt:before {
  content: "\f0e7"; }

.uk-icon-sitemap:before {
  content: "\f0e8"; }

.uk-icon-umbrella:before {
  content: "\f0e9"; }

.uk-icon-paste:before,
.uk-icon-clipboard:before {
  content: "\f0ea"; }

.uk-icon-lightbulb-o:before {
  content: "\f0eb"; }

.uk-icon-exchange:before {
  content: "\f0ec"; }

.uk-icon-cloud-download:before {
  content: "\f0ed"; }

.uk-icon-cloud-upload:before {
  content: "\f0ee"; }

.uk-icon-user-md:before {
  content: "\f0f0"; }

.uk-icon-stethoscope:before {
  content: "\f0f1"; }

.uk-icon-suitcase:before {
  content: "\f0f2"; }

.uk-icon-bell-o:before {
  content: "\f0a2"; }

.uk-icon-coffee:before {
  content: "\f0f4"; }

.uk-icon-cutlery:before {
  content: "\f0f5"; }

.uk-icon-file-text-o:before {
  content: "\f0f6"; }

.uk-icon-building-o:before {
  content: "\f0f7"; }

.uk-icon-hospital-o:before {
  content: "\f0f8"; }

.uk-icon-ambulance:before {
  content: "\f0f9"; }

.uk-icon-medkit:before {
  content: "\f0fa"; }

.uk-icon-fighter-jet:before {
  content: "\f0fb"; }

.uk-icon-beer:before {
  content: "\f0fc"; }

.uk-icon-h-square:before {
  content: "\f0fd"; }

.uk-icon-plus-square:before {
  content: "\f0fe"; }

.uk-icon-angle-double-left:before {
  content: "\f100"; }

.uk-icon-angle-double-right:before {
  content: "\f101"; }

.uk-icon-angle-double-up:before {
  content: "\f102"; }

.uk-icon-angle-double-down:before {
  content: "\f103"; }

.uk-icon-angle-left:before {
  content: "\f104"; }

.uk-icon-angle-right:before {
  content: "\f105"; }

.uk-icon-angle-up:before {
  content: "\f106"; }

.uk-icon-angle-down:before {
  content: "\f107"; }

.uk-icon-desktop:before {
  content: "\f108"; }

.uk-icon-laptop:before {
  content: "\f109"; }

.uk-icon-tablet:before {
  content: "\f10a"; }

.uk-icon-mobile-phone:before,
.uk-icon-mobile:before {
  content: "\f10b"; }

.uk-icon-circle-o:before {
  content: "\f10c"; }

.uk-icon-quote-left:before {
  content: "\f10d"; }

.uk-icon-quote-right:before {
  content: "\f10e"; }

.uk-icon-spinner:before {
  content: "\f110"; }

.uk-icon-circle:before {
  content: "\f111"; }

.uk-icon-mail-reply:before,
.uk-icon-reply:before {
  content: "\f112"; }

.uk-icon-github-alt:before {
  content: "\f113"; }

.uk-icon-folder-o:before {
  content: "\f114"; }

.uk-icon-folder-open-o:before {
  content: "\f115"; }

.uk-icon-smile-o:before {
  content: "\f118"; }

.uk-icon-frown-o:before {
  content: "\f119"; }

.uk-icon-meh-o:before {
  content: "\f11a"; }

.uk-icon-gamepad:before {
  content: "\f11b"; }

.uk-icon-keyboard-o:before {
  content: "\f11c"; }

.uk-icon-flag-o:before {
  content: "\f11d"; }

.uk-icon-flag-checkered:before {
  content: "\f11e"; }

.uk-icon-terminal:before {
  content: "\f120"; }

.uk-icon-code:before {
  content: "\f121"; }

.uk-icon-mail-reply-all:before,
.uk-icon-reply-all:before {
  content: "\f122"; }

.uk-icon-star-half-empty:before,
.uk-icon-star-half-full:before,
.uk-icon-star-half-o:before {
  content: "\f123"; }

.uk-icon-location-arrow:before {
  content: "\f124"; }

.uk-icon-crop:before {
  content: "\f125"; }

.uk-icon-code-fork:before {
  content: "\f126"; }

.uk-icon-unlink:before,
.uk-icon-chain-broken:before {
  content: "\f127"; }

.uk-icon-question:before {
  content: "\f128"; }

.uk-icon-info:before {
  content: "\f129"; }

.uk-icon-exclamation:before {
  content: "\f12a"; }

.uk-icon-superscript:before {
  content: "\f12b"; }

.uk-icon-subscript:before {
  content: "\f12c"; }

.uk-icon-eraser:before {
  content: "\f12d"; }

.uk-icon-puzzle-piece:before {
  content: "\f12e"; }

.uk-icon-microphone:before {
  content: "\f130"; }

.uk-icon-microphone-slash:before {
  content: "\f131"; }

.uk-icon-shield:before {
  content: "\f132"; }

.uk-icon-calendar-o:before {
  content: "\f133"; }

.uk-icon-fire-extinguisher:before {
  content: "\f134"; }

.uk-icon-rocket:before {
  content: "\f135"; }

.uk-icon-maxcdn:before {
  content: "\f136"; }

.uk-icon-chevron-circle-left:before {
  content: "\f137"; }

.uk-icon-chevron-circle-right:before {
  content: "\f138"; }

.uk-icon-chevron-circle-up:before {
  content: "\f139"; }

.uk-icon-chevron-circle-down:before {
  content: "\f13a"; }

.uk-icon-html5:before {
  content: "\f13b"; }

.uk-icon-css3:before {
  content: "\f13c"; }

.uk-icon-anchor:before {
  content: "\f13d"; }

.uk-icon-unlock-alt:before {
  content: "\f13e"; }

.uk-icon-bullseye:before {
  content: "\f140"; }

.uk-icon-ellipsis-h:before {
  content: "\f141"; }

.uk-icon-ellipsis-v:before {
  content: "\f142"; }

.uk-icon-rss-square:before {
  content: "\f143"; }

.uk-icon-play-circle:before {
  content: "\f144"; }

.uk-icon-ticket:before {
  content: "\f145"; }

.uk-icon-minus-square:before {
  content: "\f146"; }

.uk-icon-minus-square-o:before {
  content: "\f147"; }

.uk-icon-level-up:before {
  content: "\f148"; }

.uk-icon-level-down:before {
  content: "\f149"; }

.uk-icon-check-square:before {
  content: "\f14a"; }

.uk-icon-pencil-square:before {
  content: "\f14b"; }

.uk-icon-external-link-square:before {
  content: "\f14c"; }

.uk-icon-share-square:before {
  content: "\f14d"; }

.uk-icon-compass:before {
  content: "\f14e"; }

.uk-icon-toggle-down:before,
.uk-icon-caret-square-o-down:before {
  content: "\f150"; }

.uk-icon-toggle-up:before,
.uk-icon-caret-square-o-up:before {
  content: "\f151"; }

.uk-icon-toggle-right:before,
.uk-icon-caret-square-o-right:before {
  content: "\f152"; }

.uk-icon-euro:before,
.uk-icon-eur:before {
  content: "\f153"; }

.uk-icon-gbp:before {
  content: "\f154"; }

.uk-icon-dollar:before,
.uk-icon-usd:before {
  content: "\f155"; }

.uk-icon-rupee:before,
.uk-icon-inr:before {
  content: "\f156"; }

.uk-icon-cny:before,
.uk-icon-rmb:before,
.uk-icon-yen:before,
.uk-icon-jpy:before {
  content: "\f157"; }

.uk-icon-ruble:before,
.uk-icon-rouble:before,
.uk-icon-rub:before {
  content: "\f158"; }

.uk-icon-won:before,
.uk-icon-krw:before {
  content: "\f159"; }

.uk-icon-bitcoin:before,
.uk-icon-btc:before {
  content: "\f15a"; }

.uk-icon-file:before {
  content: "\f15b"; }

.uk-icon-file-text:before {
  content: "\f15c"; }

.uk-icon-sort-alpha-asc:before {
  content: "\f15d"; }

.uk-icon-sort-alpha-desc:before {
  content: "\f15e"; }

.uk-icon-sort-amount-asc:before {
  content: "\f160"; }

.uk-icon-sort-amount-desc:before {
  content: "\f161"; }

.uk-icon-sort-numeric-asc:before {
  content: "\f162"; }

.uk-icon-sort-numeric-desc:before {
  content: "\f163"; }

.uk-icon-thumbs-up:before {
  content: "\f164"; }

.uk-icon-thumbs-down:before {
  content: "\f165"; }

.uk-icon-youtube-square:before {
  content: "\f166"; }

.uk-icon-youtube:before {
  content: "\f167"; }

.uk-icon-xing:before {
  content: "\f168"; }

.uk-icon-xing-square:before {
  content: "\f169"; }

.uk-icon-youtube-play:before {
  content: "\f16a"; }

.uk-icon-dropbox:before {
  content: "\f16b"; }

.uk-icon-stack-overflow:before {
  content: "\f16c"; }

.uk-icon-instagram:before {
  content: "\f16d"; }

.uk-icon-flickr:before {
  content: "\f16e"; }

.uk-icon-adn:before {
  content: "\f170"; }

.uk-icon-bitbucket:before {
  content: "\f171"; }

.uk-icon-bitbucket-square:before {
  content: "\f172"; }

.uk-icon-tumblr:before {
  content: "\f173"; }

.uk-icon-tumblr-square:before {
  content: "\f174"; }

.uk-icon-long-arrow-down:before {
  content: "\f175"; }

.uk-icon-long-arrow-up:before {
  content: "\f176"; }

.uk-icon-long-arrow-left:before {
  content: "\f177"; }

.uk-icon-long-arrow-right:before {
  content: "\f178"; }

.uk-icon-apple:before {
  content: "\f179"; }

.uk-icon-windows:before {
  content: "\f17a"; }

.uk-icon-android:before {
  content: "\f17b"; }

.uk-icon-linux:before {
  content: "\f17c"; }

.uk-icon-dribbble:before {
  content: "\f17d"; }

.uk-icon-skype:before {
  content: "\f17e"; }

.uk-icon-foursquare:before {
  content: "\f180"; }

.uk-icon-trello:before {
  content: "\f181"; }

.uk-icon-female:before {
  content: "\f182"; }

.uk-icon-male:before {
  content: "\f183"; }

.uk-icon-gittip:before,
.uk-icon-gratipay:before {
  content: "\f184"; }

.uk-icon-sun-o:before {
  content: "\f185"; }

.uk-icon-moon-o:before {
  content: "\f186"; }

.uk-icon-archive:before {
  content: "\f187"; }

.uk-icon-bug:before {
  content: "\f188"; }

.uk-icon-vk:before {
  content: "\f189"; }

.uk-icon-weibo:before {
  content: "\f18a"; }

.uk-icon-renren:before {
  content: "\f18b"; }

.uk-icon-pagelines:before {
  content: "\f18c"; }

.uk-icon-stack-exchange:before {
  content: "\f18d"; }

.uk-icon-arrow-circle-o-right:before {
  content: "\f18e"; }

.uk-icon-arrow-circle-o-left:before {
  content: "\f190"; }

.uk-icon-toggle-left:before,
.uk-icon-caret-square-o-left:before {
  content: "\f191"; }

.uk-icon-dot-circle-o:before {
  content: "\f192"; }

.uk-icon-wheelchair:before {
  content: "\f193"; }

.uk-icon-vimeo-square:before {
  content: "\f194"; }

.uk-icon-turkish-lira:before,
.uk-icon-try:before {
  content: "\f195"; }

.uk-icon-plus-square-o:before {
  content: "\f196"; }

.uk-icon-space-shuttle:before {
  content: "\f197"; }

.uk-icon-slack:before {
  content: "\f198"; }

.uk-icon-envelope-square:before {
  content: "\f199"; }

.uk-icon-wordpress:before {
  content: "\f19a"; }

.uk-icon-openid:before {
  content: "\f19b"; }

.uk-icon-institution:before,
.uk-icon-bank:before,
.uk-icon-university:before {
  content: "\f19c"; }

.uk-icon-mortar-board:before,
.uk-icon-graduation-cap:before {
  content: "\f19d"; }

.uk-icon-yahoo:before {
  content: "\f19e"; }

.uk-icon-google:before {
  content: "\f1a0"; }

.uk-icon-reddit:before {
  content: "\f1a1"; }

.uk-icon-reddit-square:before {
  content: "\f1a2"; }

.uk-icon-stumbleupon-circle:before {
  content: "\f1a3"; }

.uk-icon-stumbleupon:before {
  content: "\f1a4"; }

.uk-icon-delicious:before {
  content: "\f1a5"; }

.uk-icon-digg:before {
  content: "\f1a6"; }

.uk-icon-pied-piper:before {
  content: "\f1a7"; }

.uk-icon-pied-piper-alt:before {
  content: "\f1a8"; }

.uk-icon-drupal:before {
  content: "\f1a9"; }

.uk-icon-joomla:before {
  content: "\f1aa"; }

.uk-icon-language:before {
  content: "\f1ab"; }

.uk-icon-fax:before {
  content: "\f1ac"; }

.uk-icon-building:before {
  content: "\f1ad"; }

.uk-icon-child:before {
  content: "\f1ae"; }

.uk-icon-paw:before {
  content: "\f1b0"; }

.uk-icon-spoon:before {
  content: "\f1b1"; }

.uk-icon-cube:before {
  content: "\f1b2"; }

.uk-icon-cubes:before {
  content: "\f1b3"; }

.uk-icon-behance:before {
  content: "\f1b4"; }

.uk-icon-behance-square:before {
  content: "\f1b5"; }

.uk-icon-steam:before {
  content: "\f1b6"; }

.uk-icon-steam-square:before {
  content: "\f1b7"; }

.uk-icon-recycle:before {
  content: "\f1b8"; }

.uk-icon-automobile:before,
.uk-icon-car:before {
  content: "\f1b9"; }

.uk-icon-cab:before,
.uk-icon-taxi:before {
  content: "\f1ba"; }

.uk-icon-tree:before {
  content: "\f1bb"; }

.uk-icon-spotify:before {
  content: "\f1bc"; }

.uk-icon-deviantart:before {
  content: "\f1bd"; }

.uk-icon-soundcloud:before {
  content: "\f1be"; }

.uk-icon-database:before {
  content: "\f1c0"; }

.uk-icon-file-pdf-o:before {
  content: "\f1c1"; }

.uk-icon-file-word-o:before {
  content: "\f1c2"; }

.uk-icon-file-excel-o:before {
  content: "\f1c3"; }

.uk-icon-file-powerpoint-o:before {
  content: "\f1c4"; }

.uk-icon-file-photo-o:before,
.uk-icon-file-picture-o:before,
.uk-icon-file-image-o:before {
  content: "\f1c5"; }

.uk-icon-file-zip-o:before,
.uk-icon-file-archive-o:before {
  content: "\f1c6"; }

.uk-icon-file-sound-o:before,
.uk-icon-file-audio-o:before {
  content: "\f1c7"; }

.uk-icon-file-movie-o:before,
.uk-icon-file-video-o:before {
  content: "\f1c8"; }

.uk-icon-file-code-o:before {
  content: "\f1c9"; }

.uk-icon-vine:before {
  content: "\f1ca"; }

.uk-icon-codepen:before {
  content: "\f1cb"; }

.uk-icon-jsfiddle:before {
  content: "\f1cc"; }

.uk-icon-life-bouy:before,
.uk-icon-life-buoy:before,
.uk-icon-life-saver:before,
.uk-icon-support:before,
.uk-icon-life-ring:before {
  content: "\f1cd"; }

.uk-icon-circle-o-notch:before {
  content: "\f1ce"; }

.uk-icon-ra:before,
.uk-icon-rebel:before {
  content: "\f1d0"; }

.uk-icon-ge:before,
.uk-icon-empire:before {
  content: "\f1d1"; }

.uk-icon-git-square:before {
  content: "\f1d2"; }

.uk-icon-git:before {
  content: "\f1d3"; }

.uk-icon-hacker-news:before {
  content: "\f1d4"; }

.uk-icon-tencent-weibo:before {
  content: "\f1d5"; }

.uk-icon-qq:before {
  content: "\f1d6"; }

.uk-icon-wechat:before,
.uk-icon-weixin:before {
  content: "\f1d7"; }

.uk-icon-send:before,
.uk-icon-paper-plane:before {
  content: "\f1d8"; }

.uk-icon-send-o:before,
.uk-icon-paper-plane-o:before {
  content: "\f1d9"; }

.uk-icon-history:before {
  content: "\f1da"; }

.uk-icon-genderless:before,
.uk-icon-circle-thin:before {
  content: "\f1db"; }

.uk-icon-header:before {
  content: "\f1dc"; }

.uk-icon-paragraph:before {
  content: "\f1dd"; }

.uk-icon-sliders:before {
  content: "\f1de"; }

.uk-icon-share-alt:before {
  content: "\f1e0"; }

.uk-icon-share-alt-square:before {
  content: "\f1e1"; }

.uk-icon-bomb:before {
  content: "\f1e2"; }

.uk-icon-soccer-ball-o:before,
.uk-icon-futbol-o:before {
  content: "\f1e3"; }

.uk-icon-tty:before {
  content: "\f1e4"; }

.uk-icon-binoculars:before {
  content: "\f1e5"; }

.uk-icon-plug:before {
  content: "\f1e6"; }

.uk-icon-slideshare:before {
  content: "\f1e7"; }

.uk-icon-twitch:before {
  content: "\f1e8"; }

.uk-icon-yelp:before {
  content: "\f1e9"; }

.uk-icon-newspaper-o:before {
  content: "\f1ea"; }

.uk-icon-wifi:before {
  content: "\f1eb"; }

.uk-icon-calculator:before {
  content: "\f1ec"; }

.uk-icon-paypal:before {
  content: "\f1ed"; }

.uk-icon-google-wallet:before {
  content: "\f1ee"; }

.uk-icon-cc-visa:before {
  content: "\f1f0"; }

.uk-icon-cc-mastercard:before {
  content: "\f1f1"; }

.uk-icon-cc-discover:before {
  content: "\f1f2"; }

.uk-icon-cc-amex:before {
  content: "\f1f3"; }

.uk-icon-cc-paypal:before {
  content: "\f1f4"; }

.uk-icon-cc-stripe:before {
  content: "\f1f5"; }

.uk-icon-bell-slash:before {
  content: "\f1f6"; }

.uk-icon-bell-slash-o:before {
  content: "\f1f7"; }

.uk-icon-trash:before {
  content: "\f1f8"; }

.uk-icon-copyright:before {
  content: "\f1f9"; }

.uk-icon-at:before {
  content: "\f1fa"; }

.uk-icon-eyedropper:before {
  content: "\f1fb"; }

.uk-icon-paint-brush:before {
  content: "\f1fc"; }

.uk-icon-birthday-cake:before {
  content: "\f1fd"; }

.uk-icon-area-chart:before {
  content: "\f1fe"; }

.uk-icon-pie-chart:before {
  content: "\f200"; }

.uk-icon-line-chart:before {
  content: "\f201"; }

.uk-icon-lastfm:before {
  content: "\f202"; }

.uk-icon-lastfm-square:before {
  content: "\f203"; }

.uk-icon-toggle-off:before {
  content: "\f204"; }

.uk-icon-toggle-on:before {
  content: "\f205"; }

.uk-icon-bicycle:before {
  content: "\f206"; }

.uk-icon-bus:before {
  content: "\f207"; }

.uk-icon-ioxhost:before {
  content: "\f208"; }

.uk-icon-angellist:before {
  content: "\f209"; }

.uk-icon-cc:before {
  content: "\f20a"; }

.uk-icon-shekel:before,
.uk-icon-sheqel:before,
.uk-icon-ils:before {
  content: "\f20b"; }

.uk-icon-meanpath:before {
  content: "\f20c"; }

.uk-icon-buysellads:before {
  content: "\f20d"; }

.uk-icon-connectdevelop:before {
  content: "\f20e"; }

.uk-icon-dashcube:before {
  content: "\f210"; }

.uk-icon-forumbee:before {
  content: "\f211"; }

.uk-icon-leanpub:before {
  content: "\f212"; }

.uk-icon-sellsy:before {
  content: "\f213"; }

.uk-icon-shirtsinbulk:before {
  content: "\f214"; }

.uk-icon-simplybuilt:before {
  content: "\f215"; }

.uk-icon-skyatlas:before {
  content: "\f216"; }

.uk-icon-cart-plus:before {
  content: "\f217"; }

.uk-icon-cart-arrow-down:before {
  content: "\f218"; }

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

.uk-icon-ship:before {
  content: "\f21a"; }

.uk-icon-user-secret:before {
  content: "\f21b"; }

.uk-icon-motorcycle:before {
  content: "\f21c"; }

.uk-icon-street-view:before {
  content: "\f21d"; }

.uk-icon-heartbeat:before {
  content: "\f21e"; }

.uk-icon-venus:before {
  content: "\f221"; }

.uk-icon-mars:before {
  content: "\f222"; }

.uk-icon-mercury:before {
  content: "\f223"; }

.uk-icon-transgender:before {
  content: "\f224"; }

.uk-icon-transgender-alt:before {
  content: "\f225"; }

.uk-icon-venus-double:before {
  content: "\f226"; }

.uk-icon-mars-double:before {
  content: "\f227"; }

.uk-icon-venus-mars:before {
  content: "\f228"; }

.uk-icon-mars-stroke:before {
  content: "\f229"; }

.uk-icon-mars-stroke-v:before {
  content: "\f22a"; }

.uk-icon-mars-stroke-h:before {
  content: "\f22b"; }

.uk-icon-neuter:before {
  content: "\f22c"; }

.uk-icon-facebook-official:before {
  content: "\f230"; }

.uk-icon-pinterest-p:before {
  content: "\f231"; }

.uk-icon-whatsapp:before {
  content: "\f232"; }

.uk-icon-server:before {
  content: "\f233"; }

.uk-icon-user-plus:before {
  content: "\f234"; }

.uk-icon-user-times:before {
  content: "\f235"; }

.uk-icon-hotel:before,
.uk-icon-bed:before {
  content: "\f236"; }

.uk-icon-viacoin:before {
  content: "\f237"; }

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

.uk-icon-subway:before {
  content: "\f239"; }

.uk-icon-medium-logo:before {
  content: "\f23a"; }

.uk-icon-500px:before {
  content: "\f26e"; }

.uk-icon-amazon:before {
  content: "\f270"; }

.uk-icon-balance-scale:before {
  content: "\f24e"; }

.uk-icon-battery-empty:before,
.uk-icon-battery-0:before {
  content: "\f244"; }

.uk-icon-battery-quarter:before,
.uk-icon-battery-1:before {
  content: "\f243"; }

.uk-icon-battery-half:before,
.uk-icon-battery-2:before {
  content: "\f242"; }

.uk-icon-battery-three-quarters:before,
.uk-icon-battery-3:before {
  content: "\f241"; }

.uk-icon-battery-full:before,
.uk-icon-battery-4:before {
  content: "\f240"; }

.uk-icon-black-tie:before {
  content: "\f27e"; }

.uk-icon-calendar-check-o:before {
  content: "\f274"; }

.uk-icon-calendar-minus-o:before {
  content: "\f272"; }

.uk-icon-calendar-plus-o:before {
  content: "\f271"; }

.uk-icon-calendar-times-o:before {
  content: "\f273"; }

.uk-icon-cc-diners-club:before {
  content: "\f24c"; }

.uk-icon-cc-jcb:before {
  content: "\f24b"; }

.uk-icon-chrome:before {
  content: "\f268"; }

.uk-icon-clone:before {
  content: "\f24d"; }

.uk-icon-commenting:before {
  content: "\f27a"; }

.uk-icon-commenting-o:before {
  content: "\f27b"; }

.uk-icon-contao:before {
  content: "\f26d"; }

.uk-icon-creative-commons:before {
  content: "\f25e"; }

.uk-icon-expeditedssl:before {
  content: "\f23e"; }

.uk-icon-firefox:before {
  content: "\f269"; }

.uk-icon-fonticons:before {
  content: "\f280"; }

.uk-icon-get-pocket:before {
  content: "\f265"; }

.uk-icon-gg:before {
  content: "\f260"; }

.uk-icon-gg-circle:before {
  content: "\f261"; }

.uk-icon-hand-lizard-o:before {
  content: "\f258"; }

.uk-icon-hand-stop-o:before,
.uk-icon-hand-paper-o:before {
  content: "\f256"; }

.uk-icon-hand-peace-o:before {
  content: "\f25b"; }

.uk-icon-hand-pointer-o:before {
  content: "\f25a"; }

.uk-icon-hand-grab-o:before,
.uk-icon-hand-rock-o:before {
  content: "\f255"; }

.uk-icon-hand-scissors-o:before {
  content: "\f257"; }

.uk-icon-hand-spock-o:before {
  content: "\f259"; }

.uk-icon-hourglass:before {
  content: "\f254"; }

.uk-icon-hourglass-o:before {
  content: "\f250"; }

.uk-icon-hourglass-1:before,
.uk-icon-hourglass-start:before {
  content: "\f251"; }

.uk-icon-hourglass-2:before,
.uk-icon-hourglass-half:before {
  content: "\f252"; }

.uk-icon-hourglass-3:before,
.uk-icon-hourglass-end:before {
  content: "\f253"; }

.uk-icon-houzz:before {
  content: "\f27c"; }

.uk-icon-i-cursor:before {
  content: "\f246"; }

.uk-icon-industry:before {
  content: "\f275"; }

.uk-icon-internet-explorer:before {
  content: "\f26b"; }

.uk-icon-map:before {
  content: "\f279"; }

.uk-icon-map-o:before {
  content: "\f278"; }

.uk-icon-map-pin:before {
  content: "\f276"; }

.uk-icon-map-signs:before {
  content: "\f277"; }

.uk-icon-mouse-pointer:before {
  content: "\f245"; }

.uk-icon-object-group:before {
  content: "\f247"; }

.uk-icon-object-ungroup:before {
  content: "\f248"; }

.uk-icon-odnoklassniki:before {
  content: "\f263"; }

.uk-icon-odnoklassniki-square:before {
  content: "\f264"; }

.uk-icon-opencart:before {
  content: "\f23d"; }

.uk-icon-opera:before {
  content: "\f26a"; }

.uk-icon-optin-monster:before {
  content: "\f23c"; }

.uk-icon-registered:before {
  content: "\f25d"; }

.uk-icon-safari:before {
  content: "\f267"; }

.uk-icon-sticky-note:before {
  content: "\f249"; }

.uk-icon-sticky-note-o:before {
  content: "\f24a"; }

.uk-icon-tv:before,
.uk-icon-television:before {
  content: "\f26c"; }

.uk-icon-trademark:before {
  content: "\f25c"; }

.uk-icon-tripadvisor:before {
  content: "\f262"; }

.uk-icon-vimeo:before {
  content: "\f27d"; }

.uk-icon-wikipedia-w:before {
  content: "\f266"; }

.uk-icon-yc:before,
.uk-icon-y-combinator:before {
  content: "\f23b"; }

.uk-icon-yc-square:before,
.uk-icon-y-combinator-square:before {
  content: "\f1d4"; }

.uk-icon-bluetooth:before {
  content: "\f293"; }

.uk-icon-bluetooth-b:before {
  content: "\f294"; }

.uk-icon-codiepie:before {
  content: "\f284"; }

.uk-icon-credit-card-alt:before {
  content: "\f283"; }

.uk-icon-edge:before {
  content: "\f282"; }

.uk-icon-fort-awesome:before {
  content: "\f286"; }

.uk-icon-hashtag:before {
  content: "\f292"; }

.uk-icon-mixcloud:before {
  content: "\f289"; }

.uk-icon-modx:before {
  content: "\f285"; }

.uk-icon-pause-circle:before {
  content: "\f28b"; }

.uk-icon-pause-circle-o:before {
  content: "\f28c"; }

.uk-icon-percent:before {
  content: "\f295"; }

.uk-icon-product-hunt:before {
  content: "\f288"; }

.uk-icon-reddit-alien:before {
  content: "\f281"; }

.uk-icon-scribd:before {
  content: "\f28a"; }

.uk-icon-shopping-bag:before {
  content: "\f290"; }

.uk-icon-shopping-basket:before {
  content: "\f291"; }

.uk-icon-stop-circle:before {
  content: "\f28d"; }

.uk-icon-stop-circle-o:before {
  content: "\f28e"; }

.uk-icon-usb:before {
  content: "\f287"; }

.uk-icon-american-sign-language-interpreting:before,
.uk-icon-asl-interpreting:before {
  content: "\f2a3"; }

.uk-icon-assistive-listening-systems:before {
  content: "\f2a2"; }

.uk-icon-audio-description:before {
  content: "\f29e"; }

.uk-icon-blind:before {
  content: "\f29d"; }

.uk-icon-braille:before {
  content: "\f2a1"; }

.uk-icon-deaf:before {
  content: "\f2a4"; }

.uk-icon-deafness:before {
  content: "\f2a4"; }

.uk-icon-envira:before {
  content: "\f299"; }

.uk-icon-gitlab:before {
  content: "\f296"; }

.uk-icon-glide:before {
  content: "\f2a5"; }

.uk-icon-glide-g:before {
  content: "\f2a6"; }

.uk-icon-hard-of-hearing:before {
  content: "\f2a4"; }

.uk-icon-low-vision:before {
  content: "\f2a8"; }

.uk-icon-question-circle-o:before {
  content: "\f29c"; }

.uk-icon-sign-language:before,
.uk-icon-signing:before {
  content: "\f2a7"; }

.uk-icon-snapchat:before {
  content: "\f2ab"; }

.uk-icon-snapchat-ghost:before {
  content: "\f2ac"; }

.uk-icon-snapchat-square:before {
  content: "\f2ad"; }

.uk-icon-universal-access:before {
  content: "\f29a"; }

.uk-icon-viadeo:before {
  content: "\f2a9"; }

.uk-icon-viadeo-square:before {
  content: "\f2aa"; }

.uk-icon-volume-control-phone:before {
  content: "\f2a0"; }

.uk-icon-wheelchair-alt:before {
  content: "\f29b"; }

.uk-icon-wpbeginner:before {
  content: "\f297"; }

.uk-icon-wpforms:before {
  content: "\f298"; }

/* ========================================================================
   Component: Close
 ========================================================================== */
/*
 * Removes inner padding and border in Firefox 4+.
 */
.uk-close::-moz-focus-inner {
  border: 0;
  padding: 0; }

/*
 * 1. Correct inability to style clickable `input` types in iOS.
 * 2. Remove margins in Chrome, Safari and Opera.
 * 3. Remove borders for `button`.
 * 4. Address `overflow` set to `hidden` in IE 8/9/10/11.
 * 5. Correct `font` properties and `color` not being inherited for `button`.
 * 6. Address inconsistent `text-transform` inheritance which is only inherit in Firefox and IE
 * 7. Remove default `button` padding and background color
 * 8. Style
 */
.uk-close {
  /* 1 */
  -webkit-appearance: none;
  /* 2 */
  margin: 0;
  /* 3 */
  border: none;
  /* 4 */
  overflow: visible;
  /* 5 */
  font: inherit;
  color: inherit;
  /* 6 */
  text-transform: none;
  /* 7. */
  padding: 0;
  background: transparent;
  /* 8 */
  display: inline-block;
  box-sizing: content-box;
  width: 20px;
  line-height: 20px;
  text-align: center;
  vertical-align: middle;
  opacity: 0.3; }

/* Icon */
.uk-close:after {
  display: block;
  content: "\f00d";
  font-family: FontAwesome; }

/*
 * Hover
 * 1. Apply hover style also to focus state
 * 2. Remove default focus style
 * 3. Required for `a` elements
 */
.uk-close:hover,
.uk-close:focus {
  opacity: 0.5;
  /* 2 */
  outline: none;
  /* 3 */
  color: inherit;
  text-decoration: none;
  cursor: pointer; }

/* Modifier
 ========================================================================== */
.uk-close-alt {
  padding: 2px;
  border-radius: 50%;
  background: #eee;
  opacity: 1; }

/* Hover */
.uk-close-alt:hover,
.uk-close-alt:focus {
  opacity: 1; }

/* Icon */
.uk-close-alt:after {
  opacity: 0.5; }

.uk-close-alt:hover:after,
.uk-close-alt:focus:after {
  opacity: 0.8; }

/* ========================================================================
   Component: Badge
 ========================================================================== */
.uk-badge {
  display: inline-block;
  padding: 0 5px;
  background: #00a8e6;
  font-size: 10px;
  font-weight: bold;
  line-height: 14px;
  color: #fff;
  text-align: center;
  vertical-align: middle;
  text-transform: none; }

/*
 * Keep color when badge is a link
 */
a.uk-badge:hover {
  color: #fff; }

/* Modifier: `uk-badge-notification`;
 ========================================================================== */
.uk-badge-notification {
  box-sizing: border-box;
  min-width: 18px;
  border-radius: 500px;
  font-size: 12px;
  line-height: 18px; }

/* Color modifier
 ========================================================================== */
/*
 * Modifier: `uk-badge-success`
 */
.uk-badge-success {
  background-color: #8cc14c; }

/*
 * Modifier: `uk-badge-warning`
 */
.uk-badge-warning {
  background-color: #faa732; }

/*
 * Modifier: `uk-badge-danger`
 */
.uk-badge-danger {
  background-color: #da314b; }

/* ========================================================================
   Component: Alert
 ========================================================================== */
.uk-alert {
  margin-bottom: 15px;
  padding: 10px;
  background: #ebf7fd;
  color: #2d7091; }

/*
 * Add margin if adjacent element
 */
* + .uk-alert {
  margin-top: 15px; }

/*
 * Remove margin from the last-child
 */
.uk-alert > :last-child {
  margin-bottom: 0; }

/*
 * Keep color for headings if the default heading color is changed
 */
.uk-alert h1,
.uk-alert h2,
.uk-alert h3,
.uk-alert h4,
.uk-alert h5,
.uk-alert h6 {
  color: inherit; }

/* Close in alert
 ========================================================================== */
.uk-alert > .uk-close:first-child {
  float: right; }

/*
 * Remove margin from adjacent element
 */
.uk-alert > .uk-close:first-child + * {
  margin-top: 0; }

/* Modifier: `uk-alert-success`
 ========================================================================== */
.uk-alert-success {
  background: #f2fae3;
  color: #659f13; }

/* Modifier: `uk-alert-warning`
 ========================================================================== */
.uk-alert-warning {
  background: #fffceb;
  color: #e28327; }

/* Modifier: `uk-alert-danger`
 ========================================================================== */
.uk-alert-danger {
  background: #fff1f0;
  color: #d85030; }

/* Modifier: `uk-alert-large`
 ========================================================================== */
.uk-alert-large {
  padding: 20px; }

.uk-alert-large > .uk-close:first-child {
  margin: -10px -10px 0 0; }

/* ========================================================================
   Component: Thumbnail
 ========================================================================== */
/*
 * 1. Container width fits its content
 * 2. Responsive behavior
 * 3. Corrects `max-width` behavior sed
 * 4. Required for `figure` element
 * 5. Style
 */
.uk-thumbnail {
  /* 1 */
  display: inline-block;
  /* 2 */
  max-width: 100%;
  /* 3 */
  box-sizing: border-box;
  /* 3 */
  margin: 0;
  /* 4 */
  padding: 4px;
  border: 1px solid #ddd;
  background: #fff; }

/*
 * Hover state for `a` elements
 * 1. Apply hover style also to focus state
 * 2. Needed for caption
 * 3. Remove default focus style
 */
a.uk-thumbnail:hover,
a.uk-thumbnail:focus {
  border-color: #aaa;
  background-color: #fff;
  /* 2 */
  text-decoration: none;
  /* 3 */
  outline: none; }

/* Caption
 ========================================================================== */
.uk-thumbnail-caption {
  padding-top: 4px;
  text-align: center;
  color: #444; }

/* Sizes
 ========================================================================== */
.uk-thumbnail-mini {
  width: 150px; }

.uk-thumbnail-small {
  width: 200px; }

.uk-thumbnail-medium {
  width: 300px; }

.uk-thumbnail-large {
  width: 400px; }

.uk-thumbnail-expand,
.uk-thumbnail-expand > img {
  width: 100%; }

/* ========================================================================
   Component: Overlay
 ========================================================================== */
/*
 * 1. Container width fits its content
 * 2. Create position context
 * 3. Set max-width for responsive images to prevent `inline-block` consequences
 * 4. Remove the gap between the container and its child element
 * 5. Needed for transitions and to fixed wrong scaling calculation for images in Chrome
 * 6. Fixed `overflow: hidden` to be ignored with border-radius and CSS transforms in Webkit
 * 7. Reset margin
 */
.uk-overlay {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%;
  /* 4 */
  vertical-align: middle;
  /* 5 */
  overflow: hidden;
  /* 6 */
  -webkit-transform: translateZ(0);
  /* 7 */
  margin: 0; }

/* 6 for Safari */
.uk-overlay.uk-border-circle {
  -webkit-mask-image: -webkit-radial-gradient(circle, white 100%, black 100%); }

/*
 * Remove margin from content
 */
.uk-overlay > :first-child {
  margin-bottom: 0; }

/* Sub-object `uk-overlay-panel`
 ========================================================================== */
/*
 * 1. Position cover
 * 2. Style
 */
.uk-overlay-panel {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  /* 2 */
  padding: 20px;
  color: #fff; }

/*
 * Remove margin from the last-child
 */
.uk-overlay-panel > :last-child,
.uk-overlay-panel.uk-flex > * > :last-child {
  margin-bottom: 0; }

/*
 * Keep color for headings if the default heading color is changed
 */
.uk-overlay-panel h1,
.uk-overlay-panel h2,
.uk-overlay-panel h3,
.uk-overlay-panel h4,
.uk-overlay-panel h5,
.uk-overlay-panel h6 {
  color: inherit; }

.uk-overlay-panel a:not([class]) {
  color: inherit;
  text-decoration: underline; }

.uk-overlay-panel a[class*='uk-icon-']:not(.uk-icon-button) {
  color: inherit; }

/* Sub-object `uk-overlay-hover` and `uk-overlay-active`
 ========================================================================== */
.uk-overlay-hover:not(:hover):not(.uk-hover) .uk-overlay-panel:not(.uk-ignore) {
  opacity: 0; }

.uk-overlay-active :not(.uk-active) > .uk-overlay-panel:not(.uk-ignore) {
  opacity: 0; }

/* Modifier `uk-overlay-background`
 ========================================================================== */
.uk-overlay-background {
  background: rgba(0, 0, 0, 0.5); }

/* Modifier `uk-overlay-image`
 ========================================================================== */
/*
 * Reset panel
 */
.uk-overlay-image {
  padding: 0; }

/* Position modifiers
 ========================================================================== */
.uk-overlay-top {
  bottom: auto; }

.uk-overlay-bottom {
  top: auto; }

.uk-overlay-left {
  right: auto; }

.uk-overlay-right {
  left: auto; }

/* Sub-object `uk-overlay-icon`
 ========================================================================== */
.uk-overlay-icon:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  margin-top: -25px;
  margin-left: -25px;
  font-size: 50px;
  line-height: 1;
  font-family: FontAwesome;
  text-align: center;
  color: #fff; }

/* Transitions
 ========================================================================== */
.uk-overlay-fade,
.uk-overlay-scale,
.uk-overlay-spin,
.uk-overlay-grayscale,
.uk-overlay-blur,
[class*='uk-overlay-slide'] {
  transition-duration: 0.3s;
  transition-timing-function: ease-out;
  transition-property: opacity, transform, filter; }

.uk-overlay-active .uk-overlay-fade,
.uk-overlay-active .uk-overlay-scale,
.uk-overlay-active .uk-overlay-spin,
.uk-overlay-active [class*='uk-overlay-slide'] {
  transition-duration: 0.8s; }

/*
 * Fade
 */
.uk-overlay-fade {
  opacity: 0.7; }

.uk-overlay-hover:hover .uk-overlay-fade,
.uk-overlay-hover.uk-hover .uk-overlay-fade,
.uk-overlay-active .uk-active > .uk-overlay-fade {
  opacity: 1; }

/*
 * Scale
 */
.uk-overlay-scale {
  -webkit-transform: scale(1);
  transform: scale(1); }

.uk-overlay-hover:hover .uk-overlay-scale,
.uk-overlay-hover.uk-hover .uk-overlay-scale,
.uk-overlay-active .uk-active > .uk-overlay-scale {
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

/*
 * Spin
 */
.uk-overlay-spin {
  -webkit-transform: scale(1) rotate(0deg);
  transform: scale(1) rotate(0deg); }

.uk-overlay-hover:hover .uk-overlay-spin,
.uk-overlay-hover.uk-hover .uk-overlay-spin,
.uk-overlay-active .uk-active > .uk-overlay-spin {
  -webkit-transform: scale(1.1) rotate(3deg);
  transform: scale(1.1) rotate(3deg); }

/*
 * Grayscale
 */
.uk-overlay-grayscale {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%); }

.uk-overlay-hover:hover .uk-overlay-grayscale,
.uk-overlay-hover.uk-hover .uk-overlay-grayscale,
.uk-overlay-active .uk-active > .uk-overlay-grayscale {
  -webkit-filter: grayscale(0%);
  filter: grayscale(0%); }

/*
 * Slide
 */
[class*='uk-overlay-slide'] {
  opacity: 0; }

/* Top */
.uk-overlay-slide-top {
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%); }

/* Bottom */
.uk-overlay-slide-bottom {
  -webkit-transform: translateY(100%);
  transform: translateY(100%); }

/* Left */
.uk-overlay-slide-left {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%); }

/* Right */
.uk-overlay-slide-right {
  -webkit-transform: translateX(100%);
  transform: translateX(100%); }

/* Hover */
.uk-overlay-hover:hover [class*='uk-overlay-slide'],
.uk-overlay-hover.uk-hover [class*='uk-overlay-slide'],
.uk-overlay-active .uk-active > [class*='uk-overlay-slide'] {
  opacity: 1;
  -webkit-transform: translateX(0) translateY(0);
  transform: translateX(0) translateY(0); }

/* DEPRECATED
 * Sub-object `uk-overlay-area`
 ========================================================================== */
/*
 * 1. Set position
 * 2. Set style
 * 3. Fade-in transition
 */
.uk-overlay-area {
  /* 1 */
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  /* 2 */
  background: rgba(0, 0, 0, 0.3);
  /* 3 */
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
  -webkit-transform: translate3d(0, 0, 0); }

/*
 * Hover
 * 1. `uk-hover` to support touch devices
 * 2. Use optional `uk-overlay-toggle` to trigger the overlay earlier
 */
.uk-overlay:hover .uk-overlay-area,
.uk-overlay.uk-hover .uk-overlay-area,
.uk-overlay-toggle:hover .uk-overlay-area,
.uk-overlay-toggle.uk-hover .uk-overlay-area {
  opacity: 1; }

/*
 * Icon
 */
.uk-overlay-area:empty:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  margin-top: -25px;
  margin-left: -25px;
  font-size: 50px;
  line-height: 1;
  font-family: FontAwesome;
  text-align: center;
  color: #fff; }

/* DEPRECATED
 * Sub-object `uk-overlay-area-content`
 ========================================================================== */
/*
 * Remove whitespace between child elements when using `inline-block`
 * Needed for Firefox
 */
.uk-overlay-area:not(:empty) {
  font-size: 0.001px; }

/*
 * 1. Needed for vertical alignment
 */
.uk-overlay-area:not(:empty):before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

/*
 * 1. Set vertical alignment
 * 2. Reset whitespace hack
 * 3. Set horizontal alignment
 * 4. Set style
 */
.uk-overlay-area-content {
  /* 1 */
  display: inline-block;
  box-sizing: border-box;
  width: 100%;
  vertical-align: middle;
  /* 2 */
  font-size: 1rem;
  /* 3 */
  text-align: center;
  /* 4 */
  padding: 0 15px;
  color: #fff; }

/*
 * Remove margin from the last-child
 */
.uk-overlay-area-content > :last-child {
  margin-bottom: 0; }

/*
 * Links in overlay area
 */
.uk-overlay-area-content a:not([class]),
.uk-overlay-area-content a:not([class]):hover {
  color: inherit; }

/* DEPRECATED
 * Sub-object `uk-overlay-caption`
 ========================================================================== */
/*
 * 1. Set position
 * 2. Set style
 * 3. Fade-in transition
 */
.uk-overlay-caption {
  /* 1 */
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  /* 2 */
  padding: 15px;
  background: rgba(0, 0, 0, 0.5);
  color: #fff;
  /* 3 */
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
  -webkit-transform: translate3d(0, 0, 0); }

/*
 * Hover
 * 1. `uk-hover` to support touch devices
 * 2. Use optional `uk-overlay-toggle` to trigger the overlay earlier
 */
.uk-overlay:hover .uk-overlay-caption,
.uk-overlay.uk-hover .uk-overlay-caption,
.uk-overlay-toggle:hover .uk-overlay-caption,
.uk-overlay-toggle.uk-hover .uk-overlay-caption {
  opacity: 1; }

/* ========================================================================
   Component: Column
 ========================================================================== */
[class*='uk-column-'] {
  -webkit-column-gap: 25px;
  -moz-column-gap: 25px;
  column-gap: 25px; }

/* Width modifiers
 ========================================================================== */
.uk-column-1-2 {
  -webkit-column-count: 2;
  -moz-column-count: 2;
  column-count: 2; }

.uk-column-1-3 {
  -webkit-column-count: 3;
  -moz-column-count: 3;
  column-count: 3; }

.uk-column-1-4 {
  -webkit-column-count: 4;
  -moz-column-count: 4;
  column-count: 4; }

.uk-column-1-5 {
  -webkit-column-count: 5;
  -moz-column-count: 5;
  column-count: 5; }

.uk-column-1-6 {
  -webkit-column-count: 6;
  -moz-column-count: 6;
  column-count: 6; }

/* Phone landscape and bigger */
@media (min-width: 480px) {
  .uk-column-small-1-2 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2; }
  .uk-column-small-1-3 {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3; }
  .uk-column-small-1-4 {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4; }
  .uk-column-small-1-5 {
    -webkit-column-count: 5;
    -moz-column-count: 5;
    column-count: 5; }
  .uk-column-small-1-6 {
    -webkit-column-count: 6;
    -moz-column-count: 6;
    column-count: 6; } }

/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-column-medium-1-2 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2; }
  .uk-column-medium-1-3 {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3; }
  .uk-column-medium-1-4 {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4; }
  .uk-column-medium-1-5 {
    -webkit-column-count: 5;
    -moz-column-count: 5;
    column-count: 5; }
  .uk-column-medium-1-6 {
    -webkit-column-count: 6;
    -moz-column-count: 6;
    column-count: 6; } }

/* Desktop and bigger */
@media (min-width: 960px) {
  .uk-column-large-1-2 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2; }
  .uk-column-large-1-3 {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3; }
  .uk-column-large-1-4 {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4; }
  .uk-column-large-1-5 {
    -webkit-column-count: 5;
    -moz-column-count: 5;
    column-count: 5; }
  .uk-column-large-1-6 {
    -webkit-column-count: 6;
    -moz-column-count: 6;
    column-count: 6; } }

/* Large screen and bigger */
@media (min-width: 1220px) {
  .uk-column-xlarge-1-2 {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2; }
  .uk-column-xlarge-1-3 {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3; }
  .uk-column-xlarge-1-4 {
    -webkit-column-count: 4;
    -moz-column-count: 4;
    column-count: 4; }
  .uk-column-xlarge-1-5 {
    -webkit-column-count: 5;
    -moz-column-count: 5;
    column-count: 5; }
  .uk-column-xlarge-1-6 {
    -webkit-column-count: 6;
    -moz-column-count: 6;
    column-count: 6; } }

/* ========================================================================
   Component: Animation
 ========================================================================== */
[class*='uk-animation-'] {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both; }

/* Hide animated element if scrollspy is used */
@media screen {
  [data-uk-scrollspy*='uk-animation-']:not([data-uk-scrollspy*='target']) {
    opacity: 0; } }

/*
 * Fade
 * Higher specificity (!important) needed because of reverse modifier
 */
.uk-animation-fade {
  -webkit-animation-name: uk-fade;
  animation-name: uk-fade;
  -webkit-animation-duration: 0.8s;
  animation-duration: 0.8s;
  -webkit-animation-timing-function: linear !important;
  animation-timing-function: linear !important; }

/*
 * Fade with scale
 */
.uk-animation-scale-up {
  -webkit-animation-name: uk-fade-scale-02;
  animation-name: uk-fade-scale-02; }

.uk-animation-scale-down {
  -webkit-animation-name: uk-fade-scale-18;
  animation-name: uk-fade-scale-18; }

/*
 * Fade with slide
 */
.uk-animation-slide-top {
  -webkit-animation-name: uk-fade-top;
  animation-name: uk-fade-top; }

.uk-animation-slide-bottom {
  -webkit-animation-name: uk-fade-bottom;
  animation-name: uk-fade-bottom; }

.uk-animation-slide-left {
  -webkit-animation-name: uk-fade-left;
  animation-name: uk-fade-left; }

.uk-animation-slide-right {
  -webkit-animation-name: uk-fade-right;
  animation-name: uk-fade-right; }

/*
 * Scale
 */
.uk-animation-scale {
  -webkit-animation-name: uk-scale-12;
  animation-name: uk-scale-12; }

/*
 * Shake
 */
.uk-animation-shake {
  -webkit-animation-name: uk-shake;
  animation-name: uk-shake; }

/* Direction modifiers
 ========================================================================== */
.uk-animation-reverse {
  -webkit-animation-direction: reverse;
  animation-direction: reverse;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in; }

/* Duration modifiers
========================================================================== */
.uk-animation-15 {
  -webkit-animation-duration: 15s;
  animation-duration: 15s; }

/* Origin modifiers
========================================================================== */
.uk-animation-top-left {
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0; }

.uk-animation-top-center {
  -webkit-transform-origin: 50% 0;
  transform-origin: 50% 0; }

.uk-animation-top-right {
  -webkit-transform-origin: 100% 0;
  transform-origin: 100% 0; }

.uk-animation-middle-left {
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%; }

.uk-animation-middle-right {
  -webkit-transform-origin: 100% 50%;
  transform-origin: 100% 50%; }

.uk-animation-bottom-left {
  -webkit-transform-origin: 0 100%;
  transform-origin: 0 100%; }

.uk-animation-bottom-center {
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%; }

.uk-animation-bottom-right {
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%; }

/* Sub-object: `uk-animation-hover`
========================================================================== */
/*
 * Enable animation only on hover
 * Note: Firefox also needs this because animations are not triggered when switching between display `hidden` and `block`
 */
.uk-animation-hover:not(:hover),
.uk-animation-hover:not(:hover) [class*='uk-animation-'],
.uk-touch .uk-animation-hover:not(.uk-hover),
.uk-touch .uk-animation-hover:not(.uk-hover) [class*='uk-animation-'] {
  -webkit-animation-name: none;
  animation-name: none; }

/* Keyframes: Fade
 * Used by dropdown, datepicker and slideshow component
 ========================================================================== */
@-webkit-keyframes uk-fade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

@keyframes uk-fade {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }

/* Keyframes: Fade with slide
 ========================================================================== */
/*
 * Top
 */
@-webkit-keyframes uk-fade-top {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-100%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }

@keyframes uk-fade-top {
  0% {
    opacity: 0;
    transform: translateY(-100%); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

/*
 * Bottom
 */
@-webkit-keyframes uk-fade-bottom {
  0% {
    opacity: 0;
    -webkit-transform: translateY(100%); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }

@keyframes uk-fade-bottom {
  0% {
    opacity: 0;
    transform: translateY(100%); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

/*
 * Left
 */
@-webkit-keyframes uk-fade-left {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0); } }

@keyframes uk-fade-left {
  0% {
    opacity: 0;
    transform: translateX(-100%); }
  100% {
    opacity: 1;
    transform: translateX(0); } }

/*
 * Right
 */
@-webkit-keyframes uk-fade-right {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%); }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0); } }

@keyframes uk-fade-right {
  0% {
    opacity: 0;
    transform: translateX(100%); }
  100% {
    opacity: 1;
    transform: translateX(0); } }

/* Keyframes: Fade with scale
 ========================================================================== */
/*
 * Scale by 0.2
 */
@-webkit-keyframes uk-fade-scale-02 {
  0% {
    opacity: 0;
    -webkit-transform: scale(0.2); }
  100% {
    opacity: 1;
    -webkit-transform: scale(1); } }

@keyframes uk-fade-scale-02 {
  0% {
    opacity: 0;
    transform: scale(0.2); }
  100% {
    opacity: 1;
    transform: scale(1); } }

/*
 * Scale by 1.5
 * Used by slideshow component
 */
@-webkit-keyframes uk-fade-scale-15 {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.5); }
  100% {
    opacity: 1;
    -webkit-transform: scale(1); } }

@keyframes uk-fade-scale-15 {
  0% {
    opacity: 0;
    transform: scale(1.5); }
  100% {
    opacity: 1;
    transform: scale(1); } }

/*
 * Scale by 1.8
 */
@-webkit-keyframes uk-fade-scale-18 {
  0% {
    opacity: 0;
    -webkit-transform: scale(1.8); }
  100% {
    opacity: 1;
    -webkit-transform: scale(1); } }

@keyframes uk-fade-scale-18 {
  0% {
    opacity: 0;
    transform: scale(1.8); }
  100% {
    opacity: 1;
    transform: scale(1); } }

/* Keyframes: Slide
 * Used by slideshow component
 ========================================================================== */
/*
 * Left
 */
@-webkit-keyframes uk-slide-left {
  0% {
    -webkit-transform: translateX(-100%); }
  100% {
    -webkit-transform: translateX(0); } }

@keyframes uk-slide-left {
  0% {
    transform: translateX(-100%); }
  100% {
    transform: translateX(0); } }

/*
 * Right
 */
@-webkit-keyframes uk-slide-right {
  0% {
    -webkit-transform: translateX(100%); }
  100% {
    -webkit-transform: translateX(0); } }

@keyframes uk-slide-right {
  0% {
    transform: translateX(100%); }
  100% {
    transform: translateX(0); } }

/*
 * Left third
 */
@-webkit-keyframes uk-slide-left-33 {
  0% {
    -webkit-transform: translateX(33%); }
  100% {
    -webkit-transform: translateX(0); } }

@keyframes uk-slide-left-33 {
  0% {
    transform: translateX(33%); }
  100% {
    transform: translateX(0); } }

/*
 * Right third
 */
@-webkit-keyframes uk-slide-right-33 {
  0% {
    -webkit-transform: translateX(-33%); }
  100% {
    -webkit-transform: translateX(0); } }

@keyframes uk-slide-right-33 {
  0% {
    transform: translateX(-33%); }
  100% {
    transform: translateX(0); } }

/* Keyframes: Scale
 ========================================================================== */
@-webkit-keyframes uk-scale-12 {
  0% {
    -webkit-transform: scale(1.2); }
  100% {
    -webkit-transform: scale(1); } }

@keyframes uk-scale-12 {
  0% {
    transform: scale(1.2); }
  100% {
    transform: scale(1); } }

/* Keyframes: Rotate
 * Used by icon component
 ========================================================================== */
@-webkit-keyframes uk-rotate {
  0% {
    -webkit-transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg); } }

@keyframes uk-rotate {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(359deg); } }

/* Keyframes: Shake
 ========================================================================== */
@-webkit-keyframes uk-shake {
  0%, 100% {
    -webkit-transform: translateX(0); }
  10% {
    -webkit-transform: translateX(-9px); }
  20% {
    -webkit-transform: translateX(8px); }
  30% {
    -webkit-transform: translateX(-7px); }
  40% {
    -webkit-transform: translateX(6px); }
  50% {
    -webkit-transform: translateX(-5px); }
  60% {
    -webkit-transform: translateX(4px); }
  70% {
    -webkit-transform: translateX(-3px); }
  80% {
    -webkit-transform: translateX(2px); }
  90% {
    -webkit-transform: translateX(-1px); } }

@keyframes uk-shake {
  0%, 100% {
    transform: translateX(0); }
  10% {
    transform: translateX(-9px); }
  20% {
    transform: translateX(8px); }
  30% {
    transform: translateX(-7px); }
  40% {
    transform: translateX(6px); }
  50% {
    transform: translateX(-5px); }
  60% {
    transform: translateX(4px); }
  70% {
    transform: translateX(-3px); }
  80% {
    transform: translateX(2px); }
  90% {
    transform: translateX(-1px); } }

/* Keyframes: Fade with slide fixed
 * Used by dropdown and search component
 ========================================================================== */
/*
 * Top fixed
 */
@-webkit-keyframes uk-slide-top-fixed {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-10px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }

@keyframes uk-slide-top-fixed {
  0% {
    opacity: 0;
    transform: translateY(-10px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

/*
 * Bottom fixed
 */
@-webkit-keyframes uk-slide-bottom-fixed {
  0% {
    opacity: 0;
    -webkit-transform: translateY(10px); }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0); } }

@keyframes uk-slide-bottom-fixed {
  0% {
    opacity: 0;
    transform: translateY(10px); }
  100% {
    opacity: 1;
    transform: translateY(0); } }

/* ========================================================================
   Component: Dropdown
 ========================================================================== */
/*
 * 1. Hide by default
 * 2. Set position
 * 3. Box-sizing is needed for `uk-dropdown-justify`
 * 4. Set width
 */
.uk-dropdown,
.uk-dropdown-blank {
  /* 1 */
  display: none;
  /* 2 */
  position: absolute;
  z-index: 970;
  /* 3 */
  box-sizing: border-box;
  /* 4 */
  width: 200px; }

/*
 * Dropdown style
 * 1. Reset button group whitespace hack
 */
.uk-dropdown {
  padding: 15px;
  background: #f5f5f5;
  color: #444;
  /* 1 */
  font-size: 1rem;
  vertical-align: top; }

/*
 * 1. Show dropdown
 * 2. Set animation
 * 3. Needed for scale animation
 */
.uk-open > .uk-dropdown,
.uk-open > .uk-dropdown-blank {
  /* 1 */
  display: block;
  /* 2 */
  -webkit-animation: uk-fade 0.2s ease-in-out;
  animation: uk-fade 0.2s ease-in-out;
  /* 3 */
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0; }

/* Alignment modifiers
 ========================================================================== */
/*
 * Modifier
 */
.uk-dropdown-top {
  margin-top: -5px; }

.uk-dropdown-bottom {
  margin-top: 5px; }

.uk-dropdown-left {
  margin-left: -5px; }

.uk-dropdown-right {
  margin-left: 5px; }

/* Nav in dropdown
 ========================================================================== */
.uk-dropdown .uk-nav {
  margin: 0 -15px; }

/* Grid and panel in dropdown
 ========================================================================== */
/*
* Vertical gutter
*/
/*
 * Grid
 * Higher specificity to override large gutter
 */
.uk-grid .uk-dropdown-grid + .uk-dropdown-grid {
  margin-top: 15px; }

/* Panels */
.uk-dropdown-grid > [class*='uk-width-'] > .uk-panel + .uk-panel {
  margin-top: 15px; }

/* Tablet and bigger */
@media (min-width: 768px) {
  /*
     * Horizontal gutter
     */
  .uk-dropdown:not(.uk-dropdown-stack) > .uk-dropdown-grid {
    margin-left: -15px;
    margin-right: -15px; }
  .uk-dropdown:not(.uk-dropdown-stack) > .uk-dropdown-grid > [class*='uk-width-'] {
    padding-left: 15px;
    padding-right: 15px; }
  /*
     * Column divider
     */
  .uk-dropdown:not(.uk-dropdown-stack) > .uk-dropdown-grid > [class*='uk-width-']:nth-child(n+2) {
    border-left: 1px solid #ddd; }
  /*
     * Width multiplier for dropdown columns
     */
  .uk-dropdown-width-2:not(.uk-dropdown-stack) {
    width: 400px; }
  .uk-dropdown-width-3:not(.uk-dropdown-stack) {
    width: 600px; }
  .uk-dropdown-width-4:not(.uk-dropdown-stack) {
    width: 800px; }
  .uk-dropdown-width-5:not(.uk-dropdown-stack) {
    width: 1000px; } }

/* Phone landscape and smaller */
@media (max-width: 767px) {
  /*
     * Stack columns and take full width
     */
  .uk-dropdown-grid > [class*='uk-width-'] {
    width: 100%; }
  /*
     * Vertical gutter
     */
  .uk-dropdown-grid > [class*='uk-width-']:nth-child(n+2) {
    margin-top: 15px; } }

/*
* Stack grid columns
*/
.uk-dropdown-stack > .uk-dropdown-grid > [class*='uk-width-'] {
  width: 100%; }

.uk-dropdown-stack > .uk-dropdown-grid > [class*='uk-width-']:nth-child(n+2) {
  margin-top: 15px; }

/* Modifier `uk-dropdown-small`
 ========================================================================== */
/*
 * Set min-width and text expands dropdown if needed
 */
.uk-dropdown-small {
  min-width: 150px;
  width: auto;
  padding: 5px;
  white-space: nowrap; }

/*
 * Nav in dropdown
 */
.uk-dropdown-small .uk-nav {
  margin: 0 -5px; }

/* Modifier: `uk-dropdown-navbar`
 ========================================================================== */
.uk-dropdown-navbar {
  margin-top: 0;
  background: #f5f5f5;
  color: #444; }

.uk-open > .uk-dropdown-navbar {
  -webkit-animation: uk-slide-top-fixed 0.2s ease-in-out;
  animation: uk-slide-top-fixed 0.2s ease-in-out; }

/* Modifier `uk-dropdown-scrollable`
 ========================================================================== */
/*
 * Usefull for long lists
 */
.uk-dropdown-scrollable {
  overflow-y: auto;
  max-height: 200px; }

/* Sub-object: `uk-dropdown-overlay`
 ========================================================================== */
/* ========================================================================
   Component: Modal
 ========================================================================== */
/*
 * This is the modal overlay and modal dialog container
 * 1. Hide by default
 * 2. Set fixed position
 * 3. Allow scrolling for the modal dialog
 * 4. Mask the background page
 * 5. Fade-in transition
 * 6. Deactivate browser history navigation in IE11
 * 7. force hardware acceleration to prevent browser rendering hiccups
 */
.uk-modal {
  /* 1 */
  display: none;
  /* 2 */
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1010;
  /* 3 */
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  /* 4 */
  background: rgba(0, 0, 0, 0.6);
  /* 5 */
  opacity: 0;
  -webkit-transition: opacity 0.15s linear;
  transition: opacity 0.15s linear;
  /* 6 */
  touch-action: cross-slide-y pinch-zoom double-tap-zoom;
  /* 7 */
  -webkit-transform: translateZ(0);
  transform: translateZ(0); }

/*
 * Open state
 */
.uk-modal.uk-open {
  opacity: 1; }

/*
 * Prevents duplicated scrollbar caused by 4.
 */
.uk-modal-page,
.uk-modal-page body {
  overflow: hidden; }

/* Sub-object: `uk-modal-dialog`
 ========================================================================== */
/*
 * 1. Create position context for caption, spinner and close button
 * 2. Set box sizing
 * 3. Set style
 * 4. Slide-in transition
 */
.uk-modal-dialog {
  /* 1 */
  position: relative;
  /* 2 */
  box-sizing: border-box;
  margin: 50px auto;
  padding: 20px;
  width: 600px;
  max-width: 100%;
  max-width: calc(100% - 20px);
  /* 3 */
  background: #fff;
  /* 4 */
  opacity: 0;
  -webkit-transform: translateY(-100px);
  transform: translateY(-100px);
  -webkit-transition: opacity 0.3s linear, -webkit-transform 0.3s ease-out;
  transition: opacity 0.3s linear, transform 0.3s ease-out; }

/* Phone landscape and smaller */
@media (max-width: 767px) {
  /*
     * Fit in small screen
     */
  .uk-modal-dialog {
    width: auto;
    margin: 10px auto; } }

/*
 * Open state
 */
.uk-open .uk-modal-dialog {
  /* 4 */
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0); }

/*
 * Remove margin from the last-child
 */
.uk-modal-dialog > :not([class*='uk-modal-']):last-child {
  margin-bottom: 0; }

/* Close in modal
 ========================================================================== */
.uk-modal-dialog > .uk-close:first-child {
  margin: -10px -10px 0 0;
  float: right; }

/*
 * Remove margin from adjacent element
 */
.uk-modal-dialog > .uk-close:first-child + :not([class*='uk-modal-']) {
  margin-top: 0; }

/* Modifier: `uk-modal-dialog-lightbox`
 ========================================================================== */
.uk-modal-dialog-lightbox {
  margin: 15px auto;
  padding: 0;
  max-width: 95%;
  max-width: calc(100% - 30px);
  min-height: 50px; }

/*
 * Close button
 */
.uk-modal-dialog-lightbox > .uk-close:first-child {
  position: absolute;
  top: -12px;
  right: -12px;
  margin: 0;
  float: none; }

/* Phone landscape and smaller */
@media (max-width: 767px) {
  .uk-modal-dialog-lightbox > .uk-close:first-child {
    top: -7px;
    right: -7px; } }

/* Modifier: `uk-modal-dialog-blank`
 ========================================================================== */
.uk-modal-dialog-blank {
  margin: 0;
  padding: 0;
  width: 100%;
  max-width: 100%;
  -webkit-transition: opacity 0.3s linear;
  transition: opacity 0.3s linear; }

/*
* Close button
*/
.uk-modal-dialog-blank > .uk-close:first-child {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 1;
  margin: 0;
  float: none; }

/* Modifier: `uk-modal-dialog-large`
 ========================================================================== */
/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-modal-dialog-large {
    width: 930px; } }

/* Large screen and bigger */
@media (min-width: 1220px) {
  .uk-modal-dialog-large {
    width: 1130px; } }

/* Sub-Object: `uk-modal-header` and `uk-modal-footer`
 ========================================================================== */
.uk-modal-header {
  margin-bottom: 15px; }

.uk-modal-footer {
  margin-top: 15px; }

/*
 * Remove margin from the last-child
 */
.uk-modal-header > :last-child,
.uk-modal-footer > :last-child {
  margin-bottom: 0; }

/* Sub-Object: `uk-modal-caption`
 ========================================================================== */
.uk-modal-caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -20px;
  margin-bottom: -10px;
  color: #fff;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

/* Sub-Object: `uk-modal-spinner`
 ========================================================================== */
.uk-modal-spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 25px;
  color: #ddd; }

.uk-modal-spinner:after {
  content: "\f110";
  display: block;
  font-family: FontAwesome;
  -webkit-animation: uk-rotate 2s infinite linear;
  animation: uk-rotate 2s infinite linear; }

/* ========================================================================
   Component: Off-canvas
 ========================================================================== */
/*
 * This is the offcanvas overlay and bar container
 * 1. Hide by default
 * 2. Set fixed position
 * 3. Deactivate browser touch actions in IE11
 * 4. Mask the background page
 */
.uk-offcanvas {
  /* 1 */
  display: none;
  /* 2 */
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  /* 3 */
  touch-action: none;
  /* 4 */
  background: rgba(0, 0, 0, 0.1); }

.uk-offcanvas.uk-active {
  display: block; }

/* Sub-object `uk-offcanvas-page`
 ========================================================================== */
/*
 * Prepares the whole HTML page to slide-out
 * 1. Fix the main page and disallow scrolling
 * 2. Side-out transition
 */
.uk-offcanvas-page {
  /* 1 */
  position: fixed;
  /* 2 */
  -webkit-transition: margin-left 0.3s ease-in-out;
  transition: margin-left 0.3s ease-in-out; }

/* Sub-object `uk-offcanvas-bar`
 ========================================================================== */
/*
 * This is the offcanvas bar
 * 1. Set fixed position
 * 2. Size and style
 * 3. Allow scrolling
 * 4. Side-out transition
 * 5. Deactivate scroll chaining in IE11
 */
.uk-offcanvas-bar {
  /* 1 */
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  z-index: 1001;
  /* 2 */
  width: 270px;
  max-width: 100%;
  background: #333;
  /* 3 */
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  /* 4 */
  -webkit-transition: -webkit-transform 0.3s ease-in-out;
  transition: transform 0.3s ease-in-out;
  /* 5 */
  -ms-scroll-chaining: none; }

.uk-offcanvas.uk-active .uk-offcanvas-bar.uk-offcanvas-bar-show {
  -webkit-transform: translateX(0%);
  transform: translateX(0%); }

/* Modifier `uk-offcanvas-bar-flip`
 ========================================================================== */
.uk-offcanvas-bar-flip {
  left: auto;
  right: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%); }

/* Panel in offcanvas
 ========================================================================== */
.uk-offcanvas .uk-panel {
  margin: 20px 15px;
  color: #777; }

.uk-offcanvas .uk-panel-title {
  color: #ccc; }

.uk-offcanvas .uk-panel a:not([class]) {
  color: #ccc; }

.uk-offcanvas .uk-panel a:not([class]):hover {
  color: #fff; }

/* ========================================================================
   Component: Switcher
 ========================================================================== */
/*
 * 1. Deactivate browser history navigation in IE11
 */
.uk-switcher {
  margin: 0;
  padding: 0;
  list-style: none;
  /* 1 */
  touch-action: cross-slide-y pinch-zoom double-tap-zoom; }

/*
 * Items
 */
.uk-switcher > :not(.uk-active) {
  display: none; }

/* ========================================================================
   Component: Text
 ========================================================================== */
/* Size modifiers
 ========================================================================== */
.uk-text-small {
  font-size: 11px;
  line-height: 16px; }

.uk-text-large {
  font-size: 18px;
  line-height: 24px;
  font-weight: normal; }

/* Weight modifiers
 ========================================================================== */
.uk-text-bold {
  font-weight: bold; }

/* Color modifiers
 ========================================================================== */
.uk-text-muted {
  color: #999 !important; }

.uk-text-primary {
  color: #2d7091 !important; }

.uk-text-success {
  color: #659f13 !important; }

.uk-text-warning {
  color: #e28327 !important; }

.uk-text-danger {
  color: #d85030 !important; }

.uk-text-contrast {
  color: #fff !important; }

/* Alignment modifiers
 ========================================================================== */
.uk-text-left {
  text-align: left !important; }

.uk-text-right {
  text-align: right !important; }

.uk-text-center {
  text-align: center !important; }

.uk-text-justify {
  text-align: justify !important; }

.uk-text-top {
  vertical-align: top !important; }

.uk-text-middle {
  vertical-align: middle !important; }

.uk-text-bottom {
  vertical-align: bottom !important; }

/* Only tablets portrait and smaller */
@media (max-width: 959px) {
  .uk-text-center-medium {
    text-align: center !important; }
  .uk-text-left-medium {
    text-align: left !important; } }

/* Phone landscape and smaller */
@media (max-width: 767px) {
  .uk-text-center-small {
    text-align: center !important; }
  .uk-text-left-small {
    text-align: left !important; } }

/* Wrap modifiers
 ========================================================================== */
/*
 * Prevent text from wrapping onto multiple lines
 */
.uk-text-nowrap {
  white-space: nowrap; }

/*
 * Prevent text from wrapping onto multiple lines, and truncate with an ellipsis
 */
.uk-text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap; }

/*
 * Break strings if their length exceeds the width of their container
 */
.uk-text-break {
  word-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto; }

/* ========================================================================
   Component: Utility
 ========================================================================== */
/* Container
 ========================================================================== */
.uk-container {
  box-sizing: border-box;
  max-width: 980px;
  padding: 0 0px; }

/* Large screen and bigger */
@media (min-width: 1220px) {
  .uk-container {
    max-width: 1200px;
    padding: 0 35px; } }

/*
 * Micro clearfix
 */
.uk-container:before,
.uk-container:after {
  content: "";
  display: table; }

.uk-container:after {
  clear: both; }

/*
 * Center container
 */
.uk-container-center {
  margin-left: auto;
  margin-right: auto; }

/* Clearing
 ========================================================================== */
/*
 * Micro clearfix
* `table-cell` is used with `:before` because `table` creates a 1px gap when it becomes a flex item, only in Webkit
 * `table` is used again with `:after` because `clear` only works with block elements.
 * Note: `display: block` with `overflow: hidden` is currently not working in the latest Safari
 */
.uk-clearfix:before {
  content: "";
  display: table-cell; }

.uk-clearfix:after {
  content: "";
  display: table;
  clear: both; }

/*
 *  Create a new block formatting context
 */
.uk-nbfc {
  overflow: hidden; }

.uk-nbfc-alt {
  display: table-cell;
  width: 10000px; }

/* Alignment of block elements
 ========================================================================== */
/*
 * Float blocks
 * 1. Prevent content overflow on small devices
 */
.uk-float-left {
  float: left; }

.uk-float-right {
  float: right; }

/* 1 */
[class*='uk-float-'] {
  max-width: 100%; }

/* Alignment of images and objects
 ========================================================================== */
/*
 * Alignment
 */
[class*='uk-align-'] {
  display: block;
  margin-bottom: 15px; }

.uk-align-left {
  margin-right: 15px;
  float: left; }

.uk-align-right {
  margin-left: 15px;
  float: right; }

/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-align-medium-left {
    margin-right: 15px;
    float: left; }
  .uk-align-medium-right {
    margin-left: 15px;
    float: right; } }

.uk-align-center {
  margin-left: auto;
  margin-right: auto; }

/* Vertical alignment
 ========================================================================== */
/*
 * Remove whitespace between child elements when using `inline-block`
 */
.uk-vertical-align {
  font-size: 0.001px; }

/*
 *  The `uk-vertical-align` container needs a specific height
 */
.uk-vertical-align:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

/*
 * Sub-object which can have any height
 * 1. Reset whitespace hack
 */
.uk-vertical-align-middle,
.uk-vertical-align-bottom {
  display: inline-block;
  max-width: 100%;
  /* 1 */
  font-size: 1rem; }

.uk-vertical-align-middle {
  vertical-align: middle; }

.uk-vertical-align-bottom {
  vertical-align: bottom; }

/* Height
 ========================================================================== */
/*
 * More robust if padding and border are used
 */
[class*='uk-height'] {
  box-sizing: border-box; }

/*
 * Useful to extend the `html` and `body` element to the full height of the page.
 */
.uk-height-1-1 {
  height: 100%; }

/*
 * Useful to create image teasers
 */
.uk-height-viewport {
  height: 100vh;
  min-height: 600px; }

/* Responsive objects
 * Note: Images are already responsive by default, see Base component
 ========================================================================== */
/*
 * 1. Corrects `max-width` and `max-height` behavior if padding and border are used
 */
.uk-responsive-width,
.uk-responsive-height {
  box-sizing: border-box; }

/*
 * Responsiveness: Sets a maximum width relative to the parent and auto scales the height
 * `important` needed to override `uk-img-preserve img`
 */
.uk-responsive-width {
  max-width: 100% !important;
  height: auto; }

/*
 * Responsiveness: Sets a maximum height relative to the parent and auto scales the width
 * Only works if the parent element has a fixed height.
 */
.uk-responsive-height {
  max-height: 100%;
  width: auto; }

/* Margin
 ========================================================================== */
/*
 * Create a block with the same margin of a paragraph
 * Add margin if adjacent element
 */
.uk-margin {
  margin-bottom: 15px; }

* + .uk-margin {
  margin-top: 15px; }

.uk-margin-top {
  margin-top: 15px !important; }

.uk-margin-bottom {
  margin-bottom: 15px !important; }

.uk-margin-left {
  margin-left: 15px !important; }

.uk-margin-right {
  margin-right: 15px !important; }

/*
 * Larger margins
 */
.uk-margin-large {
  margin-bottom: 50px; }

* + .uk-margin-large {
  margin-top: 50px; }

.uk-margin-large-top {
  margin-top: 50px !important; }

.uk-margin-large-bottom {
  margin-bottom: 50px !important; }

.uk-margin-large-left {
  margin-left: 50px !important; }

.uk-margin-large-right {
  margin-right: 50px !important; }

/*
 * Smaller margins
 */
.uk-margin-small {
  margin-bottom: 5px; }

* + .uk-margin-small {
  margin-top: 5px; }

.uk-margin-small-top {
  margin-top: 5px !important; }

.uk-margin-small-bottom {
  margin-bottom: 5px !important; }

.uk-margin-small-left {
  margin-left: 5px !important; }

.uk-margin-small-right {
  margin-right: 5px !important; }

/*
 * Remove margins
 */
.uk-margin-remove {
  margin: 0 !important; }

.uk-margin-top-remove {
  margin-top: 0 !important; }

.uk-margin-bottom-remove {
  margin-bottom: 0 !important; }

/* Padding
 ========================================================================== */
.uk-padding-remove {
  padding: 0 !important; }

.uk-padding-top-remove {
  padding-top: 0 !important; }

.uk-padding-bottom-remove {
  padding-bottom: 0 !important; }

.uk-padding-vertical-remove {
  padding-top: 0 !important;
  padding-bottom: 0 !important; }

/* Border
 ========================================================================== */
.uk-border-circle {
  border-radius: 50%; }

.uk-border-rounded {
  border-radius: 5px; }

/* Headings
 ========================================================================== */
.uk-heading-large {
  font-size: 36px;
  line-height: 42px; }

/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-heading-large {
    font-size: 52px;
    line-height: 64px; } }

/* Link
 ========================================================================== */
/*
 * Let links appear in default text color
 */
.uk-link-muted,
.uk-link-muted a {
  color: #444; }

.uk-link-muted:hover,
.uk-link-muted a:hover {
  color: #444; }

/*
 * Reset link style
 */
.uk-link-reset,
.uk-link-reset a,
.uk-link-reset:hover,
.uk-link-reset a:hover,
.uk-link-reset:focus,
.uk-link-reset a:focus {
  color: inherit;
  text-decoration: none; }

/* Scrollable
 ========================================================================== */
/*
 * Enable scrolling for preformatted text
 */
.uk-scrollable-text {
  height: 300px;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  resize: both; }

/*
 * Box with scrolling enabled
 */
.uk-scrollable-box {
  box-sizing: border-box;
  height: 170px;
  padding: 10px;
  border: 1px solid #ddd;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  resize: both; }

.uk-scrollable-box > :last-child {
  margin-bottom: 0; }

/* Overflow
 ========================================================================== */
.uk-overflow-hidden {
  overflow: hidden; }

/*
 * Enable scrollbars if content is clipped
 */
.uk-overflow-container {
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

.uk-overflow-container > :last-child {
  margin-bottom: 0; }

/* Position
 ========================================================================== */
.uk-position-absolute,
[class*='uk-position-top'],
[class*='uk-position-bottom'] {
  position: absolute !important; }

/* Don't use `width: 100%` because it is wrong if the parent has padding. */
.uk-position-top {
  top: 0;
  left: 0;
  right: 0; }

.uk-position-bottom {
  bottom: 0;
  left: 0;
  right: 0; }

.uk-position-top-left {
  top: 0;
  left: 0; }

.uk-position-top-right {
  top: 0;
  right: 0; }

.uk-position-bottom-left {
  bottom: 0;
  left: 0; }

.uk-position-bottom-right {
  bottom: 0;
  right: 0; }

/*
 * Cover
 */
.uk-position-cover {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

/*
 * Relative
 */
.uk-position-relative {
  position: relative !important; }

/*
 * Z-index
 */
.uk-position-z-index {
  z-index: 1; }

/* Display
 ========================================================================== */
/*
 * Display
 * 1. Required if child is a responsive image
 */
.uk-display-block {
  display: block !important; }

.uk-display-inline {
  display: inline !important; }

.uk-display-inline-block {
  display: inline-block !important;
  /* 1 */
  max-width: 100%; }

/*
 * Visibility
 * Avoids setting display to `block` so it works also with `inline-block` and `table`
 */
/* Desktop and bigger */
@media (min-width: 960px) {
  .uk-visible-small {
    display: none !important; }
  .uk-visible-medium {
    display: none !important; }
  .uk-hidden-large {
    display: none !important; } }

/* Tablets portrait */
@media (min-width: 768px) and (max-width: 959px) {
  .uk-visible-small {
    display: none !important; }
  .uk-visible-large {
    display: none !important; }
  .uk-hidden-medium {
    display: none !important; } }

/* Phone landscape and smaller*/
@media (max-width: 767px) {
  .uk-visible-medium {
    display: none !important; }
  .uk-visible-large {
    display: none !important; }
  .uk-hidden-small {
    display: none !important; } }

/* Remove from the flow and screen readers on any device */
.uk-hidden {
  display: none !important;
  visibility: hidden !important; }

/* It's hidden, but still affects layout */
.uk-invisible {
  visibility: hidden !important; }

/* Show on hover */
.uk-visible-hover:hover .uk-hidden,
.uk-visible-hover:hover .uk-invisible {
  display: block !important;
  visibility: visible !important; }

.uk-visible-hover-inline:hover .uk-hidden,
.uk-visible-hover-inline:hover .uk-invisible {
  display: inline-block !important;
  visibility: visible !important; }

/* Hide on touch */
.uk-touch .uk-hidden-touch,
.uk-notouch .uk-hidden-notouch {
  display: none !important; }

/* ========================================================================
   Component: Flex
 ========================================================================== */
.uk-flex {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex; }

.uk-flex-inline {
  display: -ms-inline-flexbox;
  display: -webkit-inline-flex;
  display: inline-flex; }

/*
 * Fixes initial flex-shrink value in IE10
 */
.uk-flex > *,
.uk-flex-inline > * {
  -ms-flex-negative: 1; }

/* Alignment
 ========================================================================== */
/*
 * Vertical alignment
 * Default value is `stretch`
 */
.uk-flex-top {
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start; }

.uk-flex-middle {
  -ms-flex-align: center;
  -webkit-align-items: center;
  align-items: center; }

.uk-flex-bottom {
  -ms-flex-align: end;
  -webkit-align-items: flex-end;
  align-items: flex-end; }

/*
 * Horizontal alignment
 * Default value is `flex-start`
 */
.uk-flex-center {
  -ms-flex-pack: center;
  -webkit-justify-content: center;
  justify-content: center; }

.uk-flex-right {
  -ms-flex-pack: end;
  -webkit-justify-content: flex-end;
  justify-content: flex-end; }

.uk-flex-space-between {
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
  justify-content: space-between; }

.uk-flex-space-around {
  -ms-flex-pack: distribute;
  -webkit-justify-content: space-around;
  justify-content: space-around; }

/* Direction
 ========================================================================== */
.uk-flex-row-reverse {
  -ms-flex-direction: row-reverse;
  -webkit-flex-direction: row-reverse;
  flex-direction: row-reverse; }

.uk-flex-column {
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column; }

.uk-flex-column-reverse {
  -ms-flex-direction: column-reverse;
  -webkit-flex-direction: column-reverse;
  flex-direction: column-reverse; }

/* Wrap
 ========================================================================== */
.uk-flex-nowrap {
  -ms-flex-wrap: nowrap;
  -webkit-flex-wrap: nowrap;
  flex-wrap: nowrap; }

.uk-flex-wrap {
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap; }

.uk-flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse;
  -webkit-flex-wrap: wrap-reverse;
  flex-wrap: wrap-reverse; }

/*
 * Horizontal alignment
 * Default value is `stretch`
 */
.uk-flex-wrap-top {
  -ms-flex-line-pack: start;
  -webkit-align-content: flex-start;
  align-content: flex-start; }

.uk-flex-wrap-middle {
  -ms-flex-line-pack: center;
  -webkit-align-content: center;
  align-content: center; }

.uk-flex-wrap-bottom {
  -ms-flex-line-pack: end;
  -webkit-align-content: flex-end;
  align-content: flex-end; }

.uk-flex-wrap-space-between {
  -ms-flex-line-pack: justify;
  -webkit-align-content: space-between;
  align-content: space-between; }

.uk-flex-wrap-space-around {
  -ms-flex-line-pack: distribute;
  -webkit-align-content: space-around;
  align-content: space-around; }

/* Item ordering
 ========================================================================== */
/*
 * Default is 0
 */
.uk-flex-order-first {
  -ms-flex-order: -1;
  -webkit-order: -1;
  order: -1; }

.uk-flex-order-last {
  -ms-flex-order: 99;
  -webkit-order: 99;
  order: 99; }

/* Phone landscape and bigger */
@media (min-width: 480px) {
  .uk-flex-order-first-small {
    -ms-flex-order: -1;
    -webkit-order: -1;
    order: -1; }
  .uk-flex-order-last-small {
    -ms-flex-order: 99;
    -webkit-order: 99;
    order: 99; } }

/* Tablet and bigger */
@media (min-width: 768px) {
  .uk-flex-order-first-medium {
    -ms-flex-order: -1;
    -webkit-order: -1;
    order: -1; }
  .uk-flex-order-last-medium {
    -ms-flex-order: 99;
    -webkit-order: 99;
    order: 99; } }

/* Desktop and bigger */
@media (min-width: 960px) {
  .uk-flex-order-first-large {
    -ms-flex-order: -1;
    -webkit-order: -1;
    order: -1; }
  .uk-flex-order-last-large {
    -ms-flex-order: 99;
    -webkit-order: 99;
    order: 99; } }

/* Large screen and bigger */
@media (min-width: 1220px) {
  .uk-flex-order-first-xlarge {
    -ms-flex-order: -1;
    -webkit-order: -1;
    order: -1; }
  .uk-flex-order-last-xlarge {
    -ms-flex-order: 99;
    -webkit-order: 99;
    order: 99; } }

/* Item dimensions
 ========================================================================== */
/*
 * Initial: 0 1 auto
 * Content dimensions, but shrinks
 */
/*
 * No Flex: 0 0 auto
 * Content dimensions
 */
.uk-flex-item-none {
  -ms-flex: none;
  -webkit-flex: none;
  flex: none; }

/*
 * Relative Flex: 1 1 auto
 * Space is allocated considering content
 * 1. Fixes flex-shrink value in IE10
 */
.uk-flex-item-auto {
  -ms-flex: auto;
  -webkit-flex: auto;
  flex: auto;
  /* 1 */
  -ms-flex-negative: 1; }

/*
 * Absolute Flex: 1 1 0%
 * Space is allocated solely based on flex
 */
.uk-flex-item-1 {
  -ms-flex: 1;
  -webkit-flex: 1;
  flex: 1; }

/* ========================================================================
   Component: Contrast
 ========================================================================== */
.uk-contrast {
  color: #fff;
  /* Active */ }
  .uk-contrast a:not([class]),
  .uk-contrast .uk-link {
    color: fade(#fff, 70%);
    text-decoration: none; }
  .uk-contrast a:not([class]):hover,
  .uk-contrast .uk-link:hover {
    color: #fff;
    text-decoration: underline; }
  .uk-contrast :not(pre) > code,
  .uk-contrast :not(pre) > kbd,
  .uk-contrast :not(pre) > samp {
    color: #fff; }
  .uk-contrast em {
    color: #fff; }
  .uk-contrast h1, .uk-contrast h2, .uk-contrast h3, .uk-contrast h4, .uk-contrast h5, .uk-contrast h6 {
    color: #fff; }
  .uk-contrast hr {
    border-top-color: fade(#fff, 20%); }
  .uk-contrast .uk-nav li > a,
  .uk-contrast .uk-nav li > a:hover {
    text-decoration: none; }
  .uk-contrast .uk-nav-side > li > a {
    color: #fff; }
  .uk-contrast .uk-nav-side > li > a:hover,
  .uk-contrast .uk-nav-side > li > a:focus {
    background: fade(#fff, 10%);
    color: #fff; }
  .uk-contrast .uk-nav-side > li.uk-active > a {
    background: #fff;
    color: #444; }
  .uk-contrast .uk-nav-side .uk-nav-header {
    color: #fff; }
  .uk-contrast .uk-nav-side .uk-nav-divider {
    border-top-color: fade(#fff, 20%); }
  .uk-contrast .uk-nav-side ul a {
    color: fade(#fff, 70%); }
  .uk-contrast .uk-nav-side ul a:hover {
    color: #fff; }
  .uk-contrast .uk-subnav > * > a {
    color: fade(#fff, 70%);
    text-decoration: none; }
  .uk-contrast .uk-subnav > * > a:hover,
  .uk-contrast .uk-subnav > * > a:focus {
    color: #fff;
    text-decoration: none; }
  .uk-contrast .uk-subnav > .uk-active > a {
    color: #fff; }
  .uk-contrast .uk-subnav-line > :nth-child(n+2):before {
    border-left-color: fade(#fff, 20%); }
  .uk-contrast .uk-subnav-pill > * > a:hover,
  .uk-contrast .uk-subnav-pill > * > a:focus {
    background: fade(#fff, 70%);
    color: #444;
    text-decoration: none; }
  .uk-contrast .uk-subnav-pill > .uk-active > a {
    background: #fff;
    color: #444; }
  .uk-contrast .uk-tab {
    border-bottom-color: fade(#fff, 20%); }
  .uk-contrast .uk-tab > li > a {
    border-color: transparent;
    color: fade(#fff, 70%); }
  .uk-contrast .uk-tab > li > a:hover,
  .uk-contrast .uk-tab > li > a:focus,
  .uk-contrast .uk-tab > li.uk-open > a {
    border-color: fade(#fff, 70%);
    background: fade(#fff, 70%);
    color: #444;
    text-decoration: none; }
  .uk-contrast .uk-tab > li.uk-active > a {
    border-color: fade(#fff, 20%);
    border-bottom-color: transparent;
    background: #fff;
    color: #444; }
  .uk-contrast .uk-tab-center {
    border-bottom-color: fade(#fff, 20%); }
  .uk-contrast .uk-tab-grid:before {
    border-top-color: fade(#fff, 20%); }
  .uk-contrast .uk-list-line > li:nth-child(n+2) {
    border-top-color: fade(#fff, 20%); }
  .uk-contrast .uk-form select,
  .uk-contrast .uk-form textarea,
  .uk-contrast .uk-form input:not([type]),
  .uk-contrast .uk-form input[type="text"],
  .uk-contrast .uk-form input[type="password"],
  .uk-contrast .uk-form input[type="datetime"],
  .uk-contrast .uk-form input[type="datetime-local"],
  .uk-contrast .uk-form input[type="date"],
  .uk-contrast .uk-form input[type="month"],
  .uk-contrast .uk-form input[type="time"],
  .uk-contrast .uk-form input[type="week"],
  .uk-contrast .uk-form input[type="number"],
  .uk-contrast .uk-form input[type="email"],
  .uk-contrast .uk-form input[type="url"],
  .uk-contrast .uk-form input[type="search"],
  .uk-contrast .uk-form input[type="tel"],
  .uk-contrast .uk-form input[type="color"] {
    border-color: fade(#fff, 80%);
    background: fade(#fff, 80%);
    color: #444;
    background-clip: padding-box; }
    .uk-contrast .uk-form select:focus,
    .uk-contrast .uk-form textarea:focus,
    .uk-contrast .uk-form input:not([type]):focus,
    .uk-contrast .uk-form input[type="text"]:focus,
    .uk-contrast .uk-form input[type="password"]:focus,
    .uk-contrast .uk-form input[type="datetime"]:focus,
    .uk-contrast .uk-form input[type="datetime-local"]:focus,
    .uk-contrast .uk-form input[type="date"]:focus,
    .uk-contrast .uk-form input[type="month"]:focus,
    .uk-contrast .uk-form input[type="time"]:focus,
    .uk-contrast .uk-form input[type="week"]:focus,
    .uk-contrast .uk-form input[type="number"]:focus,
    .uk-contrast .uk-form input[type="email"]:focus,
    .uk-contrast .uk-form input[type="url"]:focus,
    .uk-contrast .uk-form input[type="search"]:focus,
    .uk-contrast .uk-form input[type="tel"]:focus,
    .uk-contrast .uk-form input[type="color"]:focus {
      border-color: #fff;
      background: #fff;
      color: #444; }
  .uk-contrast .uk-form :-ms-input-placeholder {
    color: fade(#444, 70%) !important; }
  .uk-contrast .uk-form ::-moz-placeholder {
    color: fade(#444, 70%); }
  .uk-contrast .uk-form ::-webkit-input-placeholder {
    color: fade(#444, 70%); }
  .uk-contrast .uk-button {
    color: #444;
    background: #fff; }
  .uk-contrast .uk-button:hover,
  .uk-contrast .uk-button:focus {
    background-color: fade(#fff, 80%);
    color: #444; }
  .uk-contrast .uk-button:active,
  .uk-contrast .uk-button.uk-active {
    background-color: fade(#fff, 70%);
    color: #444; }
  .uk-contrast .uk-button-primary {
    background-color: #00a8e6;
    color: #fff; }
  .uk-contrast .uk-button-primary:hover,
  .uk-contrast .uk-button-primary:focus {
    background-color: #35b3ee;
    color: #fff; }
  .uk-contrast .uk-button-primary:active,
  .uk-contrast .uk-button-primary.uk-active {
    background-color: #0091ca;
    color: #fff; }
  .uk-contrast .uk-icon-hover {
    color: fade(#fff, 70%); }
  .uk-contrast .uk-icon-hover:hover {
    color: #fff; }
  .uk-contrast .uk-icon-button {
    background: #fff;
    color: #444; }
  .uk-contrast .uk-icon-button:hover,
  .uk-contrast .uk-icon-button:focus {
    background-color: fade(#fff, 80%);
    color: #444; }
  .uk-contrast .uk-icon-button:active {
    background-color: fade(#fff, 70%);
    color: #444; }
  .uk-contrast .uk-text-muted {
    color: fade(#fff, 60%) !important; }
  .uk-contrast .uk-text-primary {
    color: #2d7091 !important; }

/* ========================================================================
   Component: Print
 ========================================================================== */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group; }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: 0.5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; } }

/* ========================================================================
   Component: Autocomplete
 ========================================================================== */
/*
 * 1. Container width fits its content
 * 2. Create position context
 * 3. Prevent `inline-block` consequences
 * 4. Remove the gap between the container and its child element
 */
.uk-autocomplete {
  /* 1 */
  display: inline-block;
  /* 2 */
  position: relative;
  /* 3 */
  max-width: 100%;
  /* 4 */
  vertical-align: middle; }

/* Legacy dropdown modifier */
.uk-dropdown-flip {
  left: auto;
  right: 0; }

/* Nav modifier `uk-nav-autocomplete`
 ========================================================================== */
/*
 * Items
 */
.uk-nav-autocomplete > li > a {
  color: #444; }

/*
 * Active
 * 1. Remove default focus style
 */
.uk-nav-autocomplete > li.uk-active > a {
  background: #00a8e6;
  color: #fff;
  /* 1 */
  outline: none; }

/*
 * Sub-object: `uk-nav-header`
 */
.uk-nav-autocomplete .uk-nav-header {
  color: #999; }

/*
 * Sub-object: `uk-nav-divider`
 */
.uk-nav-autocomplete .uk-nav-divider {
  border-top: 1px solid #ddd; }

/* ========================================================================
   Component: Notify
 ========================================================================== */
/*
 * Message container for positioning
 */
.uk-notify {
  position: fixed;
  top: 10px;
  left: 10px;
  z-index: 1040;
  box-sizing: border-box;
  width: 350px; }

/* Position modifiers
========================================================================== */
.uk-notify-top-right,
.uk-notify-bottom-right {
  left: auto;
  right: 10px; }

.uk-notify-top-center,
.uk-notify-bottom-center {
  left: 50%;
  margin-left: -175px; }

.uk-notify-bottom-left,
.uk-notify-bottom-right,
.uk-notify-bottom-center {
  top: auto;
  bottom: 10px; }

/* Responsiveness
========================================================================== */
/* Phones portrait and smaller */
@media (max-width: 479px) {
  /*
     * Fit in small screen
     */
  .uk-notify {
    left: 10px;
    right: 10px;
    width: auto;
    margin: 0; } }

/* Sub-object: `uk-notify-message`
========================================================================== */
.uk-notify-message {
  position: relative;
  margin-bottom: 10px;
  padding: 15px;
  background: #444;
  color: #fff;
  font-size: 16px;
  line-height: 22px;
  cursor: pointer; }

/* Close in notify
 ========================================================================== */
.uk-notify-message > .uk-close {
  visibility: hidden;
  float: right; }

.uk-notify-message:hover > .uk-close {
  visibility: visible; }

/* Modifier: `uk-alert-info`
 ========================================================================== */
.uk-notify-message-primary {
  background: #ebf7fd;
  color: #2d7091; }

/* Modifier: `uk-alert-success`
 ========================================================================== */
.uk-notify-message-success {
  background: #f2fae3;
  color: #659f13; }

/* Modifier: `uk-notify-message-warning`
 ========================================================================== */
.uk-notify-message-warning {
  background: #fffceb;
  color: #e28327; }

/* Modifier: `uk-notify-message-danger`
 ========================================================================== */
.uk-notify-message-danger {
  background: #fff1f0;
  color: #d85030; }

/* ========================================================================
   Component: Slideshow
 ========================================================================== */
/*
 * 1. Create position context
 * 2. Create stacking context to prevent z-index issues with other components
 * 3. Set width because child elements are positioned absolute. Height is set via JS
 * 4. Reset list style
 * 5. Clip child elements
 * 6. Deactivate browser history navigation in IE11
 */
.uk-slideshow {
  /* 1 */
  position: relative;
  /* 2 */
  z-index: 0;
  /* 3 */
  width: 100%;
  /* 4 */
  margin: 0;
  padding: 0;
  list-style: none;
  /* 5 */
  overflow: hidden;
  /* 6 */
  touch-action: pan-y; }

/*
 * Sub-object item
 * 1. Position items above each other
 * 2. Expand to parent container width
 * 3. Hide by default
 */
.uk-slideshow > li {
  /* 1 */
  position: absolute;
  top: 0;
  left: 0;
  /* 2 */
  width: 100%;
  /* 3 */
  opacity: 0; }

/*
 * Active
 * 1. Stack at first
 * 2. Show slide
 */
.uk-slideshow > .uk-active {
  /* 1 */
  z-index: 10;
  /* 2 */
  opacity: 1; }

/*
 * Hide default images which is only relevant to keep existing proportions
 */
.uk-slideshow > li > img {
  visibility: hidden; }

/*
 * Pointer for controls
 */
[data-uk-slideshow-slide] {
  cursor: pointer; }

/* Modifier: `uk-slideshow-fullscreen`
 ========================================================================== */
.uk-slideshow-fullscreen,
.uk-slideshow-fullscreen > li {
  height: 100vh; }

/* Animations
 ========================================================================== */
/*
 * Fade
 */
.uk-slideshow-fade-in {
  -webkit-animation: uk-fade 0.5s linear;
  animation: uk-fade 0.5s linear; }

.uk-slideshow-fade-out {
  -webkit-animation: uk-fade 0.5s linear reverse;
  animation: uk-fade 0.5s linear reverse; }

/*
 * Scroll
 */
.uk-slideshow-scroll-forward-in {
  -webkit-animation: uk-slide-right 0.5s ease-in-out;
  animation: uk-slide-right 0.5s ease-in-out; }

.uk-slideshow-scroll-forward-out {
  -webkit-animation: uk-slide-left 0.5s ease-in-out reverse;
  animation: uk-slide-left 0.5s ease-in-out reverse; }

.uk-slideshow-scroll-backward-in {
  -webkit-animation: uk-slide-left 0.5s ease-in-out;
  animation: uk-slide-left 0.5s ease-in-out; }

.uk-slideshow-scroll-backward-out {
  -webkit-animation: uk-slide-right 0.5s ease-in-out reverse;
  animation: uk-slide-right 0.5s ease-in-out reverse; }

/*
 * Scale
 */
.uk-slideshow-scale-out {
  -webkit-animation: uk-fade-scale-15 0.5s ease-in-out reverse;
  animation: uk-fade-scale-15 0.5s ease-in-out reverse; }

/*
 * Swipe
 */
.uk-slideshow-swipe-forward-in {
  -webkit-animation: uk-slide-left-33 0.5s ease-in-out;
  animation: uk-slide-left-33 0.5s ease-in-out; }

.uk-slideshow-swipe-forward-out {
  -webkit-animation: uk-slide-left 0.5s ease-in-out reverse;
  animation: uk-slide-left 0.5s ease-in-out reverse; }

.uk-slideshow-swipe-backward-in {
  -webkit-animation: uk-slide-right-33 0.5s ease-in-out;
  animation: uk-slide-right-33 0.5s ease-in-out; }

.uk-slideshow-swipe-backward-out {
  -webkit-animation: uk-slide-right 0.5s ease-in-out reverse;
  animation: uk-slide-right 0.5s ease-in-out reverse; }

.uk-slideshow-swipe-forward-in:before,
.uk-slideshow-swipe-backward-in:before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.6);
  -webkit-animation: uk-fade 0.5s ease-in-out reverse;
  animation: uk-fade 0.5s ease-in-out reverse; }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLmNzcyIsInNvdXJjZXMiOlsiYXBwLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvdWlraXQtbWl4aW5zLnNjc3MiLCJfZm9udHMuc2NzcyIsInZhcmlhYmxlcy5zY3NzIiwiX2h0bWwuc2NzcyIsIl9taXhpbnMuc2NzcyIsImNyb3BwZXIuc2NzcyIsIl9oZWxwZXJzLnNjc3MiLCJfcHJlbG9hZGVyLnNjc3MiLCJfdGlja2V0bGlzdC5zY3NzIiwiX2Zvcm1zLnNjc3MiLCJfcGlrYWRheS5zY3NzIiwiX2J1dHRvbnMuc2NzcyIsIl9oZWFkZXIuc2NzcyIsImNoZWNrb3V0LnNjc3MiLCJfZm9vdGVyLnNjc3MiLCJfY291bnRlci5zY3NzIiwiaG9tZS5zY3NzIiwiY2F0ZWdvcnkuc2NzcyIsInBhcmsuc2NzcyIsIl9naWZ0Y2FyZHMuc2NzcyIsIl9naWZ0Y2FyZHNfZGV0YWlscy5zY3NzIiwiX2llLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvdWlraXQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL3ZhcmlhYmxlcy5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvYmFzZS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvZ3JpZC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvcGFuZWwuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL2Jsb2NrLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9hcnRpY2xlLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9jb21tZW50LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9jb3Zlci5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvbmF2LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9uYXZiYXIuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL3N1Ym5hdi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvYnJlYWRjcnVtYi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvcGFnaW5hdGlvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvdGFiLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS90aHVtYm5hdi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvbGlzdC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvZGVzY3JpcHRpb24tbGlzdC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvdGFibGUuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL2Zvcm0uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL2J1dHRvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvaWNvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvY2xvc2Uuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL2JhZGdlLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9hbGVydC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvdGh1bWJuYWlsLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9vdmVybGF5LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9jb2x1bW4uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL2FuaW1hdGlvbi5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvZHJvcGRvd24uc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL21vZGFsLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9vZmZjYW52YXMuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb3JlL3N3aXRjaGVyLnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS90ZXh0LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS91dGlsaXR5LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9mbGV4LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29yZS9jb250cmFzdC5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvcmUvcHJpbnQuc2NzcyIsIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb21wb25lbnRzL2F1dG9jb21wbGV0ZS5zY3NzIiwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvbXBvbmVudHMvbm90aWZ5LnNjc3MiLCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29tcG9uZW50cy9zbGlkZXNob3cuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyJAaW1wb3J0IFwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL3Vpa2l0LW1peGlucy5zY3NzXCI7XG5cbkBpbXBvcnQgXCJmb250c1wiO1xuQGltcG9ydCBcInZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImh0bWxcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJjcm9wcGVyXCI7XG5cbkBpbXBvcnQgXCJoZWxwZXJzXCI7XG5AaW1wb3J0IFwicHJlbG9hZGVyXCI7XG5AaW1wb3J0IFwidGlja2V0bGlzdFwiO1xuQGltcG9ydCBcImZvcm1zXCI7XG5AaW1wb3J0IFwicGlrYWRheVwiO1xuXG5AaW1wb3J0IFwiYnV0dG9uc1wiO1xuQGltcG9ydCBcImhlYWRlclwiO1xuQGltcG9ydCBcImNoZWNrb3V0XCI7XG5AaW1wb3J0IFwiZm9vdGVyXCI7XG5AaW1wb3J0IFwiY291bnRlclwiO1xuXG5AaW1wb3J0IFwiaG9tZVwiO1xuQGltcG9ydCBcImNhdGVnb3J5XCI7XG5AaW1wb3J0IFwicGFya1wiO1xuXG4vL0dpZnRjYXJkc1xuQGltcG9ydCBcImdpZnRjYXJkc1wiO1xuQGltcG9ydCBcImdpZnRjYXJkc19kZXRhaWxzXCI7XG5cbkBpbXBvcnQgXCJpZVwiO1xuXG5AaW1wb3J0IFwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL3Vpa2l0LnNjc3NcIjtcbkBpbXBvcnQgXCIuLi9ib3dlcl9jb21wb25lbnRzL3Vpa2l0L3Njc3MvY29tcG9uZW50cy9hdXRvY29tcGxldGUuc2Nzc1wiO1xuQGltcG9ydCBcIi4uL2Jvd2VyX2NvbXBvbmVudHMvdWlraXQvc2Nzcy9jb21wb25lbnRzL25vdGlmeS5zY3NzXCI7XG5AaW1wb3J0IFwiLi4vYm93ZXJfY29tcG9uZW50cy91aWtpdC9zY3NzL2NvbXBvbmVudHMvc2xpZGVzaG93LnNjc3NcIjtcbiIsIkBtaXhpbiBob29rLWRhdGVwaWNrZXItbmF2KCl7fVxuQG1peGluIGhvb2stZGF0ZXBpY2tlci1uYXYtaXRlbSgpe31cbkBtaXhpbiBob29rLWRhdGVwaWNrZXItdGFibGUtaXRlbSgpe31cbkBtaXhpbiBob29rLWRhdGVwaWNrZXItdGFibGUtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWRhdGVwaWNrZXItdGFibGUtaXRlbS1vbmNsaWNrKCl7fVxuQG1peGluIGhvb2stZGF0ZXBpY2tlci10YWJsZS1pdGVtLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWRhdGVwaWNrZXItbWlzYygpe31cbkBtaXhpbiBob29rLW5hdi1hdXRvY29tcGxldGUoKXt9XG5AbWl4aW4gaG9vay1uYXYtYXV0b2NvbXBsZXRlLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLW5hdi1hdXRvY29tcGxldGUtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LWF1dG9jb21wbGV0ZS1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stYXV0b2NvbXBsZXRlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1hY2NvcmRpb24oKXt9XG5AbWl4aW4gaG9vay1hY2NvcmRpb24tdGl0bGUoKXt9XG5AbWl4aW4gaG9vay1hY2NvcmRpb24tY29udGVudCgpe31cbkBtaXhpbiBob29rLWFjY29yZGlvbi1taXNjKCl7fVxuQG1peGluIGhvb2stZm9ybS1hZHZhbmNlZCgpe31cbkBtaXhpbiBob29rLWZvcm0tYWR2YW5jZWQtY2hlY2tlZCgpe31cbkBtaXhpbiBob29rLWZvcm0tYWR2YW5jZWQtcmFkaW8oKXt9XG5AbWl4aW4gaG9vay1mb3JtLWFkdmFuY2VkLWNoZWNrYm94KCl7fVxuQG1peGluIGhvb2stZm9ybS1hZHZhbmNlZC1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLWZvcm0tYWR2YW5jZWQtbWlzYygpe31cbkBtaXhpbiBob29rLWRvdG5hdi1pdGVtKCl7fVxuQG1peGluIGhvb2stZG90bmF2LWl0ZW0taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1kb3RuYXYtaXRlbS1vbmNsaWNrKCl7fVxuQG1peGluIGhvb2stZG90bmF2LWl0ZW0tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stZG90bmF2LWNvbnRyYXN0LWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1kb3RuYXYtY29udHJhc3QtaXRlbS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWRvdG5hdi1jb250cmFzdC1pdGVtLW9uY2xpY2soKXt9XG5AbWl4aW4gaG9vay1kb3RuYXYtY29udHJhc3QtaXRlbS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1kb3RuYXYtbWlzYygpe31cbkBtaXhpbiBob29rLWZvcm0tZmlsZS1taXNjKCl7fVxuQG1peGluIGhvb2stZm9ybS1wYXNzd29yZC1taXNjKCl7fVxuQG1peGluIGhvb2stZm9ybS1zZWxlY3QtbWlzYygpe31cbkBtaXhpbiBob29rLWh0bWxlZGl0b3IoKXt9XG5AbWl4aW4gaG9vay1odG1sZWRpdG9yLW5hdmJhcigpe31cbkBtaXhpbiBob29rLWh0bWxlZGl0b3ItbmF2YmFyLW5hdigpe31cbkBtaXhpbiBob29rLWh0bWxlZGl0b3ItbmF2YmFyLW5hdi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWh0bWxlZGl0b3ItbmF2YmFyLW5hdi1vbmNsaWNrKCl7fVxuQG1peGluIGhvb2staHRtbGVkaXRvci1uYXZiYXItbmF2LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWh0bWxlZGl0b3ItY29udGVudCgpe31cbkBtaXhpbiBob29rLWh0bWxlZGl0b3ItbWlzYygpe31cbkBtaXhpbiBob29rLW5lc3RhYmxlKCl7fVxuQG1peGluIGhvb2stbmVzdGFibGUtaXRlbSgpe31cbkBtaXhpbiBob29rLW5lc3RhYmxlLWRyYWdnZWQoKXt9XG5AbWl4aW4gaG9vay1uZXN0YWJsZS1wbGFjZWhvbGRlcigpe31cbkBtaXhpbiBob29rLW5lc3RhYmxlLWVtcHR5KCl7fVxuQG1peGluIGhvb2stbmVzdGFibGUtaGFuZGxlKCl7fVxuQG1peGluIGhvb2stbmVzdGFibGUtdG9nZ2xlKCl7fVxuQG1peGluIGhvb2stbmVzdGFibGUtcGFuZWwoKXt9XG5AbWl4aW4gaG9vay1uZXN0YWJsZS1taXNjKCl7fVxuQG1peGluIGhvb2stbm90aWZ5KCl7fVxuQG1peGluIGhvb2stbm90aWZ5LW1lc3NhZ2UoKXt9XG5AbWl4aW4gaG9vay1ub3RpZnktbWVzc2FnZS1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2stbm90aWZ5LW1lc3NhZ2Utc3VjY2Vzcygpe31cbkBtaXhpbiBob29rLW5vdGlmeS1tZXNzYWdlLXdhcm5pbmcoKXt9XG5AbWl4aW4gaG9vay1ub3RpZnktbWVzc2FnZS1kYW5nZXIoKXt9XG5AbWl4aW4gaG9vay1ub3RpZnktbWlzYygpe31cbkBtaXhpbiBob29rLXBsYWNlaG9sZGVyKCl7fVxuQG1peGluIGhvb2stcGxhY2Vob2xkZXItbGFyZ2UoKXt9XG5AbWl4aW4gaG9vay1wbGFjZWhvbGRlci1taXNjKCl7fVxuQG1peGluIGhvb2stcHJvZ3Jlc3MoKXt9XG5AbWl4aW4gaG9vay1wcm9ncmVzcy1iYXIoKXt9XG5AbWl4aW4gaG9vay1wcm9ncmVzcy1taW5pKCl7fVxuQG1peGluIGhvb2stcHJvZ3Jlc3Mtc21hbGwoKXt9XG5AbWl4aW4gaG9vay1wcm9ncmVzcy1iYXItc3VjY2Vzcygpe31cbkBtaXhpbiBob29rLXByb2dyZXNzLWJhci13YXJuaW5nKCl7fVxuQG1peGluIGhvb2stcHJvZ3Jlc3MtYmFyLWRhbmdlcigpe31cbkBtaXhpbiBob29rLXByb2dyZXNzLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zZWFyY2goKXt9XG5AbWl4aW4gaG9vay1zZWFyY2gtaWNvbigpe31cbkBtaXhpbiBob29rLXNlYXJjaC1maWVsZCgpe31cbkBtaXhpbiBob29rLXNlYXJjaC1maWVsZC1mb2N1cygpe31cbkBtaXhpbiBob29rLWRyb3Bkb3duLXNlYXJjaCgpe31cbkBtaXhpbiBob29rLW5hdi1zZWFyY2goKXt9XG5AbWl4aW4gaG9vay1uYXYtc2VhcmNoLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLW5hdi1zZWFyY2gtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LXNlYXJjaC1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stb2ZmY2FudmFzLXNlYXJjaC1maWVsZCgpe31cbkBtaXhpbiBob29rLXNlYXJjaC1taXNjKCl7fVxuQG1peGluIGhvb2stc2xpZGVuYXYoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1ob3Zlcigpe31cbkBtaXhpbiBob29rLXNsaWRlbmF2LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLXNsaWRlbmF2LWNvbnRyYXN0KCl7fVxuQG1peGluIGhvb2stc2xpZGVuYXYtY29udHJhc3QtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1jb250cmFzdC1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1zbGlkZW5hdi1taXNjKCl7fVxuQG1peGluIGhvb2stc2xpZGVyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1zbGlkZXNob3ctbWlzYygpe31cbkBtaXhpbiBob29rLXNvcnRhYmxlKCl7fVxuQG1peGluIGhvb2stc29ydGFibGUtZHJhZ2dlZCgpe31cbkBtaXhpbiBob29rLXNvcnRhYmxlLXBsYWNlaG9sZGVyKCl7fVxuQG1peGluIGhvb2stc29ydGFibGUtZW1wdHkoKXt9XG5AbWl4aW4gaG9vay1zb3J0YWJsZS1taXNjKCl7fVxuQG1peGluIGhvb2stc3RpY2t5LW1pc2MoKXt9XG5AbWl4aW4gaG9vay11cGxvYWQtbWlzYygpe31cbkBtaXhpbiBob29rLXRvb2x0aXAoKXt9XG5AbWl4aW4gaG9vay10b29sdGlwLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1hbGVydCgpe31cbkBtaXhpbiBob29rLWFsZXJ0LXN1Y2Nlc3MoKXt9XG5AbWl4aW4gaG9vay1hbGVydC13YXJuaW5nKCl7fVxuQG1peGluIGhvb2stYWxlcnQtZGFuZ2VyKCl7fVxuQG1peGluIGhvb2stYWxlcnQtbWlzYygpe31cbkBtaXhpbiBob29rLWFydGljbGUtdGl0bGUoKXt9XG5AbWl4aW4gaG9vay1hcnRpY2xlLW1ldGEoKXt9XG5AbWl4aW4gaG9vay1hcnRpY2xlLWxlYWQoKXt9XG5AbWl4aW4gaG9vay1hcnRpY2xlLWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1hcnRpY2xlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1hbmltYXRpb24tbWlzYygpe31cbkBtaXhpbiBob29rLWJhZGdlKCl7fVxuQG1peGluIGhvb2stYmFkZ2Utc3VjY2Vzcygpe31cbkBtaXhpbiBob29rLWJhZGdlLXdhcm5pbmcoKXt9XG5AbWl4aW4gaG9vay1iYWRnZS1kYW5nZXIoKXt9XG5AbWl4aW4gaG9vay1iYWRnZS1taXNjKCl7fVxuQG1peGluIGhvb2stYmFzZS1ib2R5KCl7fVxuQG1peGluIGhvb2stYmFzZS1saW5rKCl7fVxuQG1peGluIGhvb2stYmFzZS1saW5rLWhvdmVyKCl7fVxuQG1peGluIGhvb2stYmFzZS1jb2RlKCl7fVxuQG1peGluIGhvb2stYmFzZS1oKCl7fVxuQG1peGluIGhvb2stYmFzZS1oMSgpe31cbkBtaXhpbiBob29rLWJhc2UtaDIoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWgzKCl7fVxuQG1peGluIGhvb2stYmFzZS1oNCgpe31cbkBtaXhpbiBob29rLWJhc2UtaDUoKXt9XG5AbWl4aW4gaG9vay1iYXNlLWg2KCl7fVxuQG1peGluIGhvb2stYmFzZS1ocigpe31cbkBtaXhpbiBob29rLWJhc2UtYmxvY2txdW90ZSgpe31cbkBtaXhpbiBob29rLWJhc2UtcHJlKCl7fVxuQG1peGluIGhvb2stYmFzZS1taXNjKCl7fVxuQG1peGluIGhvb2stYmxvY2soKXt9XG5AbWl4aW4gaG9vay1ibG9jay1kZWZhdWx0KCl7fVxuQG1peGluIGhvb2stYmxvY2stbXV0ZWQoKXt9XG5AbWl4aW4gaG9vay1ibG9jay1zZWNvbmRhcnkoKXt9XG5AbWl4aW4gaG9vay1ibG9jay1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2stYmxvY2stbWlzYygpe31cbkBtaXhpbiBob29rLWJyZWFkY3J1bWIoKXt9XG5AbWl4aW4gaG9vay1icmVhZGNydW1iLWRpdmlkZXIoKXt9XG5AbWl4aW4gaG9vay1icmVhZGNydW1iLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1jbG9zZSgpe31cbkBtaXhpbiBob29rLWNsb3NlLWFsdCgpe31cbkBtaXhpbiBob29rLWNsb3NlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1idXR0b24oKXt9XG5AbWl4aW4gaG9vay1idXR0b24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLXByaW1hcnkoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1zdWNjZXNzKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLXN1Y2Nlc3MtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tc3VjY2Vzcy1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tZGFuZ2VyKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWRhbmdlci1ob3Zlcigpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1kYW5nZXItYWN0aXZlKCl7fVxuQG1peGluIGhvb2stYnV0dG9uLWRpc2FibGUoKXt9XG5AbWl4aW4gaG9vay1idXR0b24tbGluaygpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1sYXJnZSgpe31cbkBtaXhpbiBob29rLWJ1dHRvbi1taXNjKCl7fVxuQG1peGluIGhvb2stY29sdW1uKCl7fVxuQG1peGluIGhvb2stY29sdW1uLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1iYXNlLWNvZGUoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1uYXYtc2lkZSgpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LW5hdi1zaWRlLWhvdmVyKCl7fVxuQG1peGluIGhvb2stY29udHJhc3QtbmF2LXNpZGUtYWN0aXZlKCl7fVxuQG1peGluIGhvb2stY29udHJhc3QtbmF2LXNpZGUtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stY29udHJhc3QtbmF2LXNpZGUtZGl2aWRlcigpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LXN1Ym5hdigpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LXN1Ym5hdi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LXN1Ym5hdi1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1zdWJuYXYtbGluZS1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stY29udHJhc3Qtc3VibmF2LXBpbGwtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1zdWJuYXYtcGlsbC1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC10YWIoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC10YWItaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC10YWItYWN0aXZlKCl7fVxuQG1peGluIGhvb2stY29udHJhc3QtbGlzdC1saW5lKCl7fVxuQG1peGluIGhvb2stY29udHJhc3QtZm9ybSgpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LWZvcm0tZm9jdXMoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1idXR0b24oKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1idXR0b24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1idXR0b24tYWN0aXZlKCl7fVxuQG1peGluIGhvb2stY29udHJhc3QtYnV0dG9uLXByaW1hcnkoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LWljb24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1pY29uLWhvdmVyLWhvdmVyKCl7fVxuQG1peGluIGhvb2stY29udHJhc3QtaWNvbi1idXR0b24oKXt9XG5AbWl4aW4gaG9vay1jb250cmFzdC1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LWljb24tYnV0dG9uLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWNvbnRyYXN0LW1pc2MoKXt9XG5AbWl4aW4gaG9vay1jb3Zlci1taXNjKCl7fVxuQG1peGluIGhvb2stY29tbWVudCgpe31cbkBtaXhpbiBob29rLWNvbW1lbnQtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stY29tbWVudC1hdmF0YXIoKXt9XG5AbWl4aW4gaG9vay1jb21tZW50LXRpdGxlKCl7fVxuQG1peGluIGhvb2stY29tbWVudC1tZXRhKCl7fVxuQG1peGluIGhvb2stY29tbWVudC1ib2R5KCl7fVxuQG1peGluIGhvb2stY29tbWVudC1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2stY29tbWVudC1taXNjKCl7fVxuQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC1taXNjKCl7fVxuQG1peGluIGhvb2stZHJvcGRvd24oKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bi1uYXZiYXIoKXt9XG5AbWl4aW4gaG9vay1kcm9wZG93bi1vdmVybGF5KCl7fVxuQG1peGluIGhvb2stZHJvcGRvd24tbWlzYygpe31cbkBtaXhpbiBob29rLWdyaWQtbWlzYygpe31cbkBtaXhpbiBob29rLWZsZXgtbWlzYygpe31cbkBtaXhpbiBob29rLWljb24taG92ZXIoKXt9XG5AbWl4aW4gaG9vay1pY29uLWhvdmVyLWhvdmVyKCl7fVxuQG1peGluIGhvb2staWNvbi1idXR0b24oKXt9XG5AbWl4aW4gaG9vay1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbkBtaXhpbiBob29rLWljb24tYnV0dG9uLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLWljb24tbWlzYygpe31cbkBtaXhpbiBob29rLWxpc3QtbGluZSgpe31cbkBtaXhpbiBob29rLWxpc3Qtc3RyaXBlZCgpe31cbkBtaXhpbiBob29rLWxpc3QtbWlzYygpe31cbkBtaXhpbiBob29rLWZvcm0oKXt9XG5AbWl4aW4gaG9vay1mb3JtLWZvY3VzKCl7fVxuQG1peGluIGhvb2stZm9ybS1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLWZvcm0tbGVnZW5kKCl7fVxuQG1peGluIGhvb2stZm9ybS1kYW5nZXIoKXt9XG5AbWl4aW4gaG9vay1mb3JtLXN1Y2Nlc3MoKXt9XG5AbWl4aW4gaG9vay1mb3JtLWJsYW5rKCl7fVxuQG1peGluIGhvb2stZm9ybS1ibGFuay1mb2N1cygpe31cbkBtaXhpbiBob29rLWZvcm0tc3RhY2tlZC1sYWJlbCgpe31cbkBtaXhpbiBob29rLWZvcm0taG9yaXpvbnRhbC1sYWJlbCgpe31cbkBtaXhpbiBob29rLWZvcm0tbWlzYygpe31cbkBtaXhpbiBob29rLW1vZGFsKCl7fVxuQG1peGluIGhvb2stbW9kYWwtZGlhbG9nKCl7fVxuQG1peGluIGhvb2stbW9kYWwtZGlhbG9nLWxpZ2h0Ym94KCl7fVxuQG1peGluIGhvb2stbW9kYWwtaGVhZGVyKCl7fVxuQG1peGluIGhvb2stbW9kYWwtZm9vdGVyKCl7fVxuQG1peGluIGhvb2stbW9kYWwtY2FwdGlvbigpe31cbkBtaXhpbiBob29rLW1vZGFsLXNwaW5uZXIoKXt9XG5AbWl4aW4gaG9vay1tb2RhbC1taXNjKCl7fVxuQG1peGluIGhvb2stbmF2LWhlYWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LXN1Yigpe31cbkBtaXhpbiBob29rLW5hdi1wYXJlbnQtaWNvbigpe31cbkBtaXhpbiBob29rLW5hdi1zaWRlKCl7fVxuQG1peGluIGhvb2stbmF2LXNpZGUtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtc2lkZS1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1uYXYtc2lkZS1oZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtc2lkZS1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LWRyb3Bkb3duKCl7fVxuQG1peGluIGhvb2stbmF2LWRyb3Bkb3duLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbmF2LWRyb3Bkb3duLWhlYWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1kcm9wZG93bi1kaXZpZGVyKCl7fVxuQG1peGluIGhvb2stbmF2LW5hdmJhcigpe31cbkBtaXhpbiBob29rLW5hdi1uYXZiYXItaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXYtbmF2YmFyLWhlYWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1uYXZiYXItZGl2aWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1vZmZjYW52YXMoKXt9XG5AbWl4aW4gaG9vay1uYXYtb2ZmY2FudmFzLWhvdmVyKCl7fVxuQG1peGluIGhvb2stbmF2LW9mZmNhbnZhcy1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1uYXYtb2ZmY2FudmFzLWhlYWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1vZmZjYW52YXMtZGl2aWRlcigpe31cbkBtaXhpbiBob29rLW5hdi1taXNjKCl7fVxuQG1peGluIGhvb2stbmF2YmFyKCl7fVxuQG1peGluIGhvb2stbmF2YmFyLW5hdigpe31cbkBtaXhpbiBob29rLW5hdmJhci1uYXYtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItbmF2LW9uY2xpY2soKXt9XG5AbWl4aW4gaG9vay1uYXZiYXItbmF2LWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLW5hdmJhci1jb250ZW50KCl7fVxuQG1peGluIGhvb2stbmF2YmFyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1vZmZjYW52YXMoKXt9XG5AbWl4aW4gaG9vay1vZmZjYW52YXMtYmFyKCl7fVxuQG1peGluIGhvb2stb2ZmY2FudmFzLXBhbmVsKCl7fVxuQG1peGluIGhvb2stb2ZmY2FudmFzLW1pc2MoKXt9XG5AbWl4aW4gaG9vay1vdmVybGF5LXBhbmVsKCl7fVxuQG1peGluIGhvb2stb3ZlcmxheS1iYWNrZ3JvdW5kKCl7fVxuQG1peGluIGhvb2stb3ZlcmxheS1pbWFnZSgpe31cbkBtaXhpbiBob29rLW92ZXJsYXktaWNvbigpe31cbkBtaXhpbiBob29rLW92ZXJsYXktbWlzYygpe31cbkBtaXhpbiBob29rLW92ZXJsYXktYXJlYSgpe31cbkBtaXhpbiBob29rLW92ZXJsYXktYXJlYS1pY29uKCl7fVxuQG1peGluIGhvb2stb3ZlcmxheS1hcmVhLWNvbnRlbnQoKXt9XG5AbWl4aW4gaG9vay1vdmVybGF5LWNhcHRpb24oKXt9XG5AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWl0ZW0oKXt9XG5AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWxpbmsoKXt9XG5AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWxpbmstaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWxpbmstYWN0aXZlKCl7fVxuQG1peGluIGhvb2stcGFnaW5hdGlvbi1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1wYWdpbmF0aW9uLWRpc2FibGVkKCl7fVxuQG1peGluIGhvb2stcGFnaW5hdGlvbi1taXNjKCl7fVxuQG1peGluIGhvb2stcGFuZWwtdGl0bGUoKXt9XG5AbWl4aW4gaG9vay1wYW5lbC1iYWRnZSgpe31cbkBtaXhpbiBob29rLXBhbmVsLWJveCgpe31cbkBtaXhpbiBob29rLXBhbmVsLWJveC1ob3Zlcigpe31cbkBtaXhpbiBob29rLXBhbmVsLWJveC1wcmltYXJ5KCl7fVxuQG1peGluIGhvb2stcGFuZWwtYm94LXByaW1hcnktaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1wYW5lbC1ib3gtc2Vjb25kYXJ5KCl7fVxuQG1peGluIGhvb2stcGFuZWwtYm94LXNlY29uZGFyeS1ob3Zlcigpe31cbkBtaXhpbiBob29rLXBhbmVsLWhvdmVyKCl7fVxuQG1peGluIGhvb2stcGFuZWwtaG92ZXItaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1wYW5lbC1oZWFkZXIoKXt9XG5AbWl4aW4gaG9vay1wYW5lbC1taXNjKCl7fVxuQG1peGluIGhvb2stcHJpbnQoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtYWN0aXZlKCl7fVxuQG1peGluIGhvb2stc3VibmF2LWxpbmUtZGl2aWRlcigpe31cbkBtaXhpbiBob29rLXN1Ym5hdi1waWxsKCl7fVxuQG1peGluIGhvb2stc3VibmF2LXBpbGwtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtcGlsbC1hY3RpdmUoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtZGlzYWJsZWQoKXt9XG5AbWl4aW4gaG9vay1zdWJuYXYtbWlzYygpe31cbkBtaXhpbiBob29rLXN3aXRjaGVyLW1pc2MoKXt9XG5AbWl4aW4gaG9vay10YWJsZSgpe31cbkBtaXhpbiBob29rLXRhYmxlLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLXRhYmxlLXN0cmlwZWQoKXt9XG5AbWl4aW4gaG9vay10YWJsZS1jb25kZW5zZWQoKXt9XG5AbWl4aW4gaG9vay10YWJsZS1ob3Zlcigpe31cbkBtaXhpbiBob29rLXRhYmxlLW1pc2MoKXt9XG5AbWl4aW4gaG9vay10aHVtYm5haWwoKXt9XG5AbWl4aW4gaG9vay10aHVtYm5haWwtaG92ZXIoKXt9XG5AbWl4aW4gaG9vay10aHVtYm5haWwtY2FwdGlvbigpe31cbkBtaXhpbiBob29rLXRodW1ibmFpbC1taXNjKCl7fVxuQG1peGluIGhvb2stdGFiKCl7fVxuQG1peGluIGhvb2stdGFiLWhvdmVyKCl7fVxuQG1peGluIGhvb2stdGFiLWFjdGl2ZSgpe31cbkBtaXhpbiBob29rLXRhYi1kaXNhYmxlZCgpe31cbkBtaXhpbiBob29rLXRhYi1taXNjKCl7fVxuQG1peGluIGhvb2stdGV4dC1taXNjKCl7fVxuQG1peGluIGhvb2stdGh1bWJuYXYoKXt9XG5AbWl4aW4gaG9vay10aHVtYm5hdi1taXNjKCl7fVxuQG1peGluIGhvb2stY29udGFpbmVyKCl7fVxuQG1peGluIGhvb2stc2Nyb2xsYWJsZS1ib3goKXt9XG5AbWl4aW4gaG9vay11dGlsaXR5LW1pc2MoKXt9IiwiQGltcG9ydCB1cmwoaHR0cHM6Ly9mb250cy5nb29nbGVhcGlzLmNvbS9jc3M/ZmFtaWx5PUxhdG86NDAwLDcwMCw5MDAsMzAwKTtcblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdDaGVsc2VhLU1hcmtldCc7XG4gICAgc3JjOiB1cmwoJy9mb250cy9jaGVsc2VhbWFya2V0LXJlZ3VsYXItd2ViZm9udC5lb3QnKTsgLyogSUU5IENvbXBhdCBNb2RlcyAqL1xuICAgIHNyYzogdXJsKCcvZm9udHMvY2hlbHNlYW1hcmtldC1yZWd1bGFyLXdlYmZvbnQuZW90PyNpZWZpeCcpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSwgLyogSUU2LUlFOCAqL1xuICAgICAgICAgdXJsKCcvZm9udHMvY2hlbHNlYW1hcmtldC1yZWd1bGFyLXdlYmZvbnQud29mZjInKSBmb3JtYXQoJ3dvZmYyJyksIC8qIFN1cGVyIE1vZGVybiBCcm93c2VycyAqL1xuICAgICAgICAgdXJsKCcvZm9udHMvY2hlbHNlYW1hcmtldC1yZWd1bGFyLXdlYmZvbnQud29mZicpIGZvcm1hdCgnd29mZicpLCAvKiBQcmV0dHkgTW9kZXJuIEJyb3dzZXJzICovXG4gICAgICAgICB1cmwoJy9mb250cy9jaGVsc2VhbWFya2V0LXJlZ3VsYXItd2ViZm9udC50dGYnKSAgZm9ybWF0KCd0cnVldHlwZScpLCAvKiBTYWZhcmksIEFuZHJvaWQsIGlPUyAqL1xuICAgICAgICAgdXJsKCcvZm9udHMvY2hlbHNlYW1hcmtldC1yZWd1bGFyLXdlYmZvbnQuc3ZnI0NoZWxzZWFNYXJrZXQtUmVndWxhcicpIGZvcm1hdCgnc3ZnJyk7IC8qIExlZ2FjeSBpT1MgKi9cbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbn1cblxuJGZvbnQtYm9keTogJ0xhdG8nLCBzYW5zLXNlcmlmO1xuJGZvbnQtaGVhZGluZzogJ0xhdG8nLCBzYW5zLXNlcmlmO1xuJGZvbnQtdGhlbWU6ICdDaGVsc2VhLU1hcmtldCcsIHNhbnMtc2VyaWY7XG4iLCJcbiR0aGVtZS1ncmF5LWRhcms6ICM0QTRBNEE7XG4kdGhlbWUtZ3JheS1saWdodGVyOiBsaWdodGVuKCR0aGVtZS1ncmF5LWRhcmssNDApO1xuJHRoZW1lLWdyYXktbGlnaHQ6IGxpZ2h0ZW4oJHRoZW1lLWdyYXktZGFyayw2MCk7XG5cbiR0aGVtZS1vcmFuZ2U6ICNGN0E1MDA7XG4kdGhlbWUtYmx1ZTogIzAwNUFBNjtcbiR0aGVtZS1ibHVlLWxpZ2h0OiBsaWdodGVuKCR0aGVtZS1ibHVlLDEwKTtcbiR0aGVtZS1ibHVlLWxpZ2h0LWFsdDogIzAwQUNFNztcbiR0aGVtZS1ibHVlLWRhcms6ICMwMDM0NjA7XG4kdGhlbWUtZ3JlZW46ICM3OEMwNTY7XG4kdGhlbWUtcmVkOiAjZjQ0YzRjO1xuXG4kZm9udC1ib2R5LWNvbG9yOiAkdGhlbWUtZ3JheS1kYXJrO1xuJGZvbnQtaGVhZGluZy1jb2xvcjogJHRoZW1lLWdyYXktZGFyaztcblxuJGZvbnQtbGluay1jb2xvcjogJHRoZW1lLWJsdWU7XG4kZm9udC1saW5rLWhvdmVyLWNvbG9yOiAkdGhlbWUtYmx1ZS1saWdodDtcblxuJGJyZWFrcG9pbnQtc21hbGw6ICAgICAgNDgwcHggIWRlZmF1bHQ7XG4kYnJlYWtwb2ludC1tZWRpdW06ICAgICA3NjhweCAhZGVmYXVsdDtcbiRicmVha3BvaW50LWxhcmdlOiAgICAgIDk2MHB4ICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQteGxhcmdlOiAgICAgMTIyMHB4ICFkZWZhdWx0O1xuXG4kdXRpbGl0eS1jb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsOiAwcHg7XG5cbiRjb250ZW50LXBhZGRpbmc6IDMwcHg7XG4kY29udGVudC1wYWRkaW5nLW1vYmlsZTogMTVweDtcbiRib3JkZXItcmFkaXVzOiAzcHg7XG4iLCIkYmFzZS1ib2R5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI0ZGRkZGRjtcbiRiYXNlLWJvZHktZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC1ib2R5O1xuJGJhc2UtYm9keS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1cHg7XG4kYmFzZS1ib2R5LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgMjBweDtcbiRiYXNlLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkZm9udC1ib2R5LWNvbG9yO1xuJGJhc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRmb250LWxpbmstY29sb3I7XG4kYmFzZS1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvbnQtbGluay1ob3Zlci1jb2xvcjtcblxuJGJhc2UtbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1cHg7XG4kYmFzZS1oZWFkaW5nLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICAgJGZvbnQtaGVhZGluZztcbiRiYXNlLWhlYWRpbmctZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICBub3JtYWw7XG4kYmFzZS1oZWFkaW5nLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJGZvbnQtaGVhZGluZy1jb2xvcjtcblxuJGJhc2UtaGVhZGluZy1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICAgICAgIDI1cHggIWRlZmF1bHQ7XG5cbiRiYXNlLWgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzNnB4ICFkZWZhdWx0O1xuJGJhc2UtaDEtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQycHggIWRlZmF1bHQ7XG4kYmFzZS1oMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjRweCAhZGVmYXVsdDtcbiRiYXNlLWgyLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGJhc2UtaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE4cHggIWRlZmF1bHQ7XG4kYmFzZS1oMy1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMjRweCAhZGVmYXVsdDtcbiRiYXNlLWg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xuJGJhc2UtaDQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIycHggIWRlZmF1bHQ7XG4kYmFzZS1oNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRiYXNlLWg1LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGJhc2UtaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG4kYmFzZS1oNi1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcbiRiYXNlLWxpc3QtcGFkZGluZy1sZWZ0OiAgICAgICAgICAgICAgICAgICAgICAgICAwcHg7XG5cbiRiYXNlLWhyLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAkYmFzZS1tYXJnaW4tdmVydGljYWwgIWRlZmF1bHQ7XG4kYmFzZS1oci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRiYXNlLWhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG5cbi50aGVtZS1pbnZlcnRlZCB7XG5cbiAgICBoMSxoMixoMyxoNCxoNSxoNiB7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgIH1cbiAgICBwIHtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgfVxufVxuXG5lbVxue1xuICAgIGNvbG9yOiAkYmFzZS1ib2R5LWNvbG9yICFpbXBvcnRhbnQ7XG59XG5cbmh0bWwge1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbmJvZHkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIC8vYmFja2dyb3VuZC1jb2xvcjogbGlnaHRlbigkdGhlbWUtZ3JheS1saWdodCw5KTtcbiAgICAvL2JhY2tncm91bmQtaW1hZ2U6IHVybCgnaHR0cHM6Ly93d3cudG9wdGFsLmNvbS9kZXNpZ25lcnMvc3VidGxlcGF0dGVybnMvcGF0dGVybnMvbGlnaHRfd29vbC5wbmcnKTtcblxuICAgICYuZXJyb3Ige1xuICAgICAgICBwYWRkaW5nOiAwcHggIWltcG9ydGFudDtcbiAgICB9XG59XG5cbmgxLGgyLGgzLGg0LGg1LGg2IHtcblxuICAgIGZvbnQtZmFtaWx5OiAkZm9udC10aGVtZSAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkdGhlbWUtYmx1ZSAhaW1wb3J0YW50O1xuXG4gICAgJi5hbHQge1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIH1cblxuICAgICYuYm9sZCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxuXG59XG5cbnAge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLXdlYmtpdC1tYXJnaW4tYmVmb3JlOiAwcHg7XG4gICAgLXdlYmtpdC1tYXJnaW4tYWZ0ZXI6IDBweDtcbiAgICAtd2Via2l0LW1hcmdpbi1zdGFydDogMHB4O1xuICAgIC13ZWJraXQtbWFyZ2luLWVuZDogMHB4O1xuXG4gICAgJi5zbGltIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDMwMDtcbiAgICB9XG59XG5cbmFkZHJlc3Mge1xuICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG59XG5cbnAubGVnYWwge1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgIGNvbG9yOiAkdGhlbWUtZ3JheS1saWdodGVyO1xufVxuXG51bCB7XG4gICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogaW5zaWRlO1xufVxuXG4udWstYWxlcnQge1xuXG4gICAgdWwge1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgLXdlYmtpdC1tYXJnaW46IG5vbmU7XG4gICAgICAgIGxpc3Qtc3R5bGUtcG9zaXRpb246IG91dHNpZGU7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuXG4gICAgICAgIGxpIHtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG4jZXJyb3ItY29udGFpbmVyIHtcblxuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZzogMzVweCAwcHg7XG5cbiAgICBoMSB7XG4gICAgICAgIGNvbG9yOiAkdGhlbWUtZ3JheS1saWdodGVyO1xuICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgIH1cblxuICAgIHAge1xuICAgICAgICBtYXJnaW46IDI1cHggMHB4O1xuICAgIH1cblxuICAgICNsb2dvIHtcbiAgICAgICAgd2lkdGg6IDIwMHB4O1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxufVxuIiwiQG1peGluIHRyYW5zaXRpb24oJGFyZ3MuLi4pIHtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246ICRhcmdzO1xuICAgIC1tb3otdHJhbnNpdGlvbjogJGFyZ3M7XG4gICAgLW1zLXRyYW5zaXRpb246ICRhcmdzO1xuICAgIC1vLXRyYW5zaXRpb246ICRhcmdzO1xuICAgIHRyYW5zaXRpb246ICRhcmdzO1xufVxuXG5AbWl4aW4gdHJhbnNmb3JtKCR0cmFuc2Zvcm1zKSB7XG4gICAgLW1vei10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuICAgIC1vLXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG4gICAgLW1zLXRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06ICR0cmFuc2Zvcm1zO1xuICAgIHRyYW5zZm9ybTogJHRyYW5zZm9ybXM7XG59XG5cbkBtaXhpbiBuby1zZWxlY3R7XG4gIC13ZWJraXQtdG91Y2gtY2FsbG91dDogbm9uZTtcbiAgLXdlYmtpdC11c2VyLXNlbGVjdDogbm9uZTtcbiAgLWtodG1sLXVzZXItc2VsZWN0OiBub25lO1xuICAtbW96LXVzZXItc2VsZWN0OiBub25lO1xuICAtbXMtdXNlci1zZWxlY3Q6IG5vbmU7XG4gIHVzZXItc2VsZWN0OiBub25lO1xufVxuXG4vL3RyYW5zZm9ybSBvcmlnaW5cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgICBtb3otdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICAtby10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgIC1tcy10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5AbWl4aW4gb3B0aW9uYWwtYXQtcm9vdCgkc2VsKSB7XG4gIEBhdC1yb290ICN7aWYobm90ICYsICRzZWwsIHNlbGVjdG9yLWFwcGVuZCgmLCAkc2VsKSl9IHtcbiAgICBAY29udGVudDtcbiAgfVxufVxuXG5AbWl4aW4gcGxhY2Vob2xkZXIge1xuICBAaW5jbHVkZSBvcHRpb25hbC1hdC1yb290KCc6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXInKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cblxuICBAaW5jbHVkZSBvcHRpb25hbC1hdC1yb290KCc6LW1vei1wbGFjZWhvbGRlcicpIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIEBpbmNsdWRlIG9wdGlvbmFsLWF0LXJvb3QoJzo6LW1vei1wbGFjZWhvbGRlcicpIHtcbiAgICBAY29udGVudDtcbiAgfVxuXG4gIEBpbmNsdWRlIG9wdGlvbmFsLWF0LXJvb3QoJzotbXMtaW5wdXQtcGxhY2Vob2xkZXInKSB7XG4gICAgQGNvbnRlbnQ7XG4gIH1cbn1cblxuQG1peGluIGJveC1zaGFkb3coJHRvcCwgJGxlZnQsICRibHVyLCAkY29sb3IsICRpbnNldDogZmFsc2UpIHtcblxuICAgIEBpZiAkaW5zZXQge1xuICAgICAgICAtd2Via2l0LWJveC1zaGFkb3c6aW5zZXQgJHRvcCAkbGVmdCAkYmx1ciAkY29sb3I7XG4gICAgICAgIC1tb3otYm94LXNoYWRvdzppbnNldCAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzppbnNldCAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICB9IEBlbHNlIHtcbiAgICAgICAgLXdlYmtpdC1ib3gtc2hhZG93OiAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICAgICAgLW1vei1ib3gtc2hhZG93OiAkdG9wICRsZWZ0ICRibHVyICRjb2xvcjtcbiAgICAgICAgYm94LXNoYWRvdzogJHRvcCAkbGVmdCAkYmx1ciAkY29sb3I7XG4gICAgfVxufVxuIiwiLyohXG4gKiBDcm9wcGVyLmpzIHYxLjEuMFxuICogaHR0cHM6Ly9naXRodWIuY29tL2Zlbmd5dWFuY2hlbi9jcm9wcGVyanNcbiAqXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTUtMjAxNyBGZW5neXVhbiBDaGVuXG4gKiBSZWxlYXNlZCB1bmRlciB0aGUgTUlUIGxpY2Vuc2VcbiAqXG4gKiBEYXRlOiAyMDE3LTEwLTA4VDA5OjEwOjU3LjYzNFpcbiAqLy5jcm9wcGVyLWNvbnRhaW5lcntkaXJlY3Rpb246bHRyO2ZvbnQtc2l6ZTowO2xpbmUtaGVpZ2h0OjA7cG9zaXRpb246cmVsYXRpdmU7LW1zLXRvdWNoLWFjdGlvbjpub25lO3RvdWNoLWFjdGlvbjpub25lOy13ZWJraXQtdXNlci1zZWxlY3Q6bm9uZTstbW96LXVzZXItc2VsZWN0Om5vbmU7LW1zLXVzZXItc2VsZWN0Om5vbmU7dXNlci1zZWxlY3Q6bm9uZX0uY3JvcHBlci1jb250YWluZXIgaW1ne2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjEwMCU7aW1hZ2Utb3JpZW50YXRpb246MGRlZzttYXgtaGVpZ2h0Om5vbmUhaW1wb3J0YW50O21heC13aWR0aDpub25lIWltcG9ydGFudDttaW4taGVpZ2h0OjAhaW1wb3J0YW50O21pbi13aWR0aDowIWltcG9ydGFudDt3aWR0aDoxMDAlfS5jcm9wcGVyLWNhbnZhcywuY3JvcHBlci1jcm9wLWJveCwuY3JvcHBlci1kcmFnLWJveCwuY3JvcHBlci1tb2RhbCwuY3JvcHBlci13cmFwLWJveHtib3R0b206MDtsZWZ0OjA7cG9zaXRpb246YWJzb2x1dGU7cmlnaHQ6MDt0b3A6MH0uY3JvcHBlci1jYW52YXMsLmNyb3BwZXItd3JhcC1ib3h7b3ZlcmZsb3c6aGlkZGVufS5jcm9wcGVyLWRyYWctYm94e2JhY2tncm91bmQtY29sb3I6I2ZmZjtvcGFjaXR5OjB9LmNyb3BwZXItbW9kYWx7YmFja2dyb3VuZC1jb2xvcjojMDAwO29wYWNpdHk6LjV9LmNyb3BwZXItdmlldy1ib3h7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtvdXRsaW5lLWNvbG9yOnJnYmEoNTEsMTUzLDI1NSwuNzUpO291dGxpbmU6MXB4IHNvbGlkICMzOWY7b3ZlcmZsb3c6aGlkZGVuO3dpZHRoOjEwMCV9LmNyb3BwZXItZGFzaGVke2JvcmRlcjowIGRhc2hlZCAjZWVlO2Rpc3BsYXk6YmxvY2s7b3BhY2l0eTouNTtwb3NpdGlvbjphYnNvbHV0ZX0uY3JvcHBlci1kYXNoZWQuZGFzaGVkLWh7Ym9yZGVyLWJvdHRvbS13aWR0aDoxcHg7Ym9yZGVyLXRvcC13aWR0aDoxcHg7aGVpZ2h0OjMzLjMzMzMzJTtsZWZ0OjA7dG9wOjMzLjMzMzMzJTt3aWR0aDoxMDAlfS5jcm9wcGVyLWRhc2hlZC5kYXNoZWQtdntib3JkZXItbGVmdC13aWR0aDoxcHg7Ym9yZGVyLXJpZ2h0LXdpZHRoOjFweDtoZWlnaHQ6MTAwJTtsZWZ0OjMzLjMzMzMzJTt0b3A6MDt3aWR0aDozMy4zMzMzMyV9LmNyb3BwZXItY2VudGVye2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjA7bGVmdDo1MCU7b3BhY2l0eTouNzU7cG9zaXRpb246YWJzb2x1dGU7dG9wOjUwJTt3aWR0aDowfS5jcm9wcGVyLWNlbnRlcjphZnRlciwuY3JvcHBlci1jZW50ZXI6YmVmb3Jle2JhY2tncm91bmQtY29sb3I6I2VlZTtjb250ZW50OlwiIFwiO2Rpc3BsYXk6YmxvY2s7cG9zaXRpb246YWJzb2x1dGV9LmNyb3BwZXItY2VudGVyOmJlZm9yZXtoZWlnaHQ6MXB4O2xlZnQ6LTNweDt0b3A6MDt3aWR0aDo3cHh9LmNyb3BwZXItY2VudGVyOmFmdGVye2hlaWdodDo3cHg7bGVmdDowO3RvcDotM3B4O3dpZHRoOjFweH0uY3JvcHBlci1mYWNlLC5jcm9wcGVyLWxpbmUsLmNyb3BwZXItcG9pbnR7ZGlzcGxheTpibG9jaztoZWlnaHQ6MTAwJTtvcGFjaXR5Oi4xO3Bvc2l0aW9uOmFic29sdXRlO3dpZHRoOjEwMCV9LmNyb3BwZXItZmFjZXtiYWNrZ3JvdW5kLWNvbG9yOiNmZmY7bGVmdDowO3RvcDowfS5jcm9wcGVyLWxpbmV7YmFja2dyb3VuZC1jb2xvcjojMzlmfS5jcm9wcGVyLWxpbmUubGluZS1le2N1cnNvcjplLXJlc2l6ZTtyaWdodDotM3B4O3RvcDowO3dpZHRoOjVweH0uY3JvcHBlci1saW5lLmxpbmUtbntjdXJzb3I6bi1yZXNpemU7aGVpZ2h0OjVweDtsZWZ0OjA7dG9wOi0zcHh9LmNyb3BwZXItbGluZS5saW5lLXd7Y3Vyc29yOnctcmVzaXplO2xlZnQ6LTNweDt0b3A6MDt3aWR0aDo1cHh9LmNyb3BwZXItbGluZS5saW5lLXN7Ym90dG9tOi0zcHg7Y3Vyc29yOnMtcmVzaXplO2hlaWdodDo1cHg7bGVmdDowfS5jcm9wcGVyLXBvaW50e2JhY2tncm91bmQtY29sb3I6IzM5ZjtoZWlnaHQ6NXB4O29wYWNpdHk6Ljc1O3dpZHRoOjVweH0uY3JvcHBlci1wb2ludC5wb2ludC1le2N1cnNvcjplLXJlc2l6ZTttYXJnaW4tdG9wOi0zcHg7cmlnaHQ6LTNweDt0b3A6NTAlfS5jcm9wcGVyLXBvaW50LnBvaW50LW57Y3Vyc29yOm4tcmVzaXplO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0zcHg7dG9wOi0zcHh9LmNyb3BwZXItcG9pbnQucG9pbnQtd3tjdXJzb3I6dy1yZXNpemU7bGVmdDotM3B4O21hcmdpbi10b3A6LTNweDt0b3A6NTAlfS5jcm9wcGVyLXBvaW50LnBvaW50LXN7Ym90dG9tOi0zcHg7Y3Vyc29yOnMtcmVzaXplO2xlZnQ6NTAlO21hcmdpbi1sZWZ0Oi0zcHh9LmNyb3BwZXItcG9pbnQucG9pbnQtbmV7Y3Vyc29yOm5lLXJlc2l6ZTtyaWdodDotM3B4O3RvcDotM3B4fS5jcm9wcGVyLXBvaW50LnBvaW50LW53e2N1cnNvcjpudy1yZXNpemU7bGVmdDotM3B4O3RvcDotM3B4fS5jcm9wcGVyLXBvaW50LnBvaW50LXN3e2JvdHRvbTotM3B4O2N1cnNvcjpzdy1yZXNpemU7bGVmdDotM3B4fS5jcm9wcGVyLXBvaW50LnBvaW50LXNle2JvdHRvbTotM3B4O2N1cnNvcjpzZS1yZXNpemU7aGVpZ2h0OjIwcHg7b3BhY2l0eToxO3JpZ2h0Oi0zcHg7d2lkdGg6MjBweH1AbWVkaWEgKG1pbi13aWR0aDo3NjhweCl7LmNyb3BwZXItcG9pbnQucG9pbnQtc2V7aGVpZ2h0OjE1cHg7d2lkdGg6MTVweH19QG1lZGlhIChtaW4td2lkdGg6OTkycHgpey5jcm9wcGVyLXBvaW50LnBvaW50LXNle2hlaWdodDoxMHB4O3dpZHRoOjEwcHh9fUBtZWRpYSAobWluLXdpZHRoOjEyMDBweCl7LmNyb3BwZXItcG9pbnQucG9pbnQtc2V7aGVpZ2h0OjVweDtvcGFjaXR5Oi43NTt3aWR0aDo1cHh9fS5jcm9wcGVyLXBvaW50LnBvaW50LXNlOmJlZm9yZXtiYWNrZ3JvdW5kLWNvbG9yOiMzOWY7Ym90dG9tOi01MCU7Y29udGVudDpcIiBcIjtkaXNwbGF5OmJsb2NrO2hlaWdodDoyMDAlO29wYWNpdHk6MDtwb3NpdGlvbjphYnNvbHV0ZTtyaWdodDotNTAlO3dpZHRoOjIwMCV9LmNyb3BwZXItaW52aXNpYmxle29wYWNpdHk6MH0uY3JvcHBlci1iZ3tiYWNrZ3JvdW5kLWltYWdlOnVybChcImRhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQkFBQUFBUUFRTUFBQUFsUFcwaUFBQUFBM05DU1ZRSUNBamI0VS9nQUFBQUJsQk1WRVhNek16Ly8vL1RqUlYyQUFBQUNYQklXWE1BQUFyckFBQUs2d0dDaXcxYUFBQUFISFJGV0hSVGIyWjBkMkZ5WlFCQlpHOWlaU0JHYVhKbGQyOXlhM01nUTFNMjZMeXlqQUFBQUJGSlJFRlVDSmxqK00vQWdCVmhGLzBQQUg2L0QvSGtEeE9HQUFBQUFFbEZUa1N1UW1DQ1wiKX0uY3JvcHBlci1oaWRle2Rpc3BsYXk6YmxvY2s7aGVpZ2h0OjA7cG9zaXRpb246YWJzb2x1dGU7d2lkdGg6MH0uY3JvcHBlci1oaWRkZW57ZGlzcGxheTpub25lIWltcG9ydGFudH0uY3JvcHBlci1tb3Zle2N1cnNvcjptb3ZlfS5jcm9wcGVyLWNyb3B7Y3Vyc29yOmNyb3NzaGFpcn0uY3JvcHBlci1kaXNhYmxlZCAuY3JvcHBlci1kcmFnLWJveCwuY3JvcHBlci1kaXNhYmxlZCAuY3JvcHBlci1mYWNlLC5jcm9wcGVyLWRpc2FibGVkIC5jcm9wcGVyLWxpbmUsLmNyb3BwZXItZGlzYWJsZWQgLmNyb3BwZXItcG9pbnR7Y3Vyc29yOm5vdC1hbGxvd2VkfVxuIiwiLmNvbnRlbnQtcGFkZGluZyB7XG5cbiAgICBwYWRkaW5nOiAkY29udGVudC1wYWRkaW5nLW1vYmlsZTtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgcGFkZGluZzogJGNvbnRlbnQtcGFkZGluZztcbiAgICB9XG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG4gICAgICAgIHBhZGRpbmc6ICRjb250ZW50LXBhZGRpbmcgKiAxLjU7XG4gICAgfVxufVxuXG4uY29udGVudC1wYWRkaW5nLW1vYmlsZSB7XG5cbiAgICBwYWRkaW5nOiAwcHggJGNvbnRlbnQtcGFkZGluZy1tb2JpbGU7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICB9XG59XG5cbi5wYWdlLWhlYWRlciB7XG5cbiAgICBwYWRkaW5nLWJvdHRvbTogMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgbWFyZ2luLXRvcDogMTBweDtcblxuICAgIGgxIHtcbiAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBtYXJnaW46IDBweDtcbiAgICB9XG5cbiAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICR0aGVtZS1ibHVlO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTBweDtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzBweDtcbiAgICAgICAgbWFyZ2luLXRvcDogMjVweDtcbiAgICB9XG59XG5cbi5pY29uIHtcbiAgICAvL2ZpbGw6ICNGRkY7XG59XG5cbi5oaWRlIHtcbiAgICBkaXNwbGF5OiBub25lO1xufVxuXG4uc3BhY2VyIHtcbiAgICBoZWlnaHQ6IDI1cHg7XG59XG5cbi50ZXh0LWNlbnRlciB7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuXG5cbi5tb2RhbC1jb250ZW50IHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuICAgIHAge1xuICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgIH1cblxuICAgICYubW9kYWwtYmx1ZSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ibHVlO1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICB9XG59XG5cbi5jbGVhcmZpeDphZnRlciB7XG4gICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtc2l6ZTogMDtcbiAgICBjb250ZW50OiBcIiBcIjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBoZWlnaHQ6IDA7XG59XG4uY2xlYXJmaXggeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbi8qIHN0YXJ0IGNvbW1lbnRlZCBiYWNrc2xhc2ggaGFjayBcXCovXG4qIGh0bWwgLmNsZWFyZml4IHsgaGVpZ2h0OiAxJTsgfVxuLmNsZWFyZml4IHsgZGlzcGxheTogYmxvY2s7IH1cbi8qIGNsb3NlIGNvbW1lbnRlZCBiYWNrc2xhc2ggaGFjayAqL1xuXG5bdi1jbG9ha10ge1xuICBkaXNwbGF5OiBub25lO1xufVxuXG4ubWFyZ2luLXRvcFxue1xuICAgIG1hcmdpbi10b3A6IDVweDtcbn0iLCIubG9hZGluZyB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHByZWxvYWRlciAuOHMgbGluZWFyIGluZmluaXRlO1xuICAgXHRhbmltYXRpb246IHByZWxvYWRlciAuOHMgbGluZWFyIGluZmluaXRlO1xuICAgIHdpZHRoOiAzNXB4ICFpbXBvcnRhbnQ7XG4gICAgYm9yZGVyLXJhZGl1czogMTAwJSAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYXNlLWJvZHktYmFja2dyb3VuZDtcbiAgICBwYWRkaW5nOiAwcHg7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdGhlbWUtZ3JheS1kYXJrICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IHRyYW5zcGFyZW50O1xufVxuXG5Aa2V5ZnJhbWVzIHByZWxvYWRlciB7XG5cdGZyb20ge3RyYW5zZm9ybTogcm90YXRlKDBkZWcpO31cblx0dG8ge3RyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7fVxufVxuQC13ZWJraXQta2V5ZnJhbWVzIHByZWxvYWRlciB7XG5cdGZyb20gey13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7fVxuXHR0byB7LXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO31cbn1cbiIsIiN0aWNrZXQtbGlzdCB7XG5cbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIG1hcmdpbjogMHB4O1xuICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG5cbiAgICAudGlja2V0LXR5cGUge1xuXG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGVuKCR0aGVtZS1ncmF5LWxpZ2h0LDcpO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDFweCwxcHgsMnB4LHJnYmEoMjI3LDIyNywyMjcsLjYpKTtcblxuICAgICAgICAucGFyYyB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnN1YnRpdGxlIHtcblxuICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAucHJvbW8ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiMjAwMDA7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmluZm8ge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkdGhlbWUtZ3JheS1saWdodCw0MCk7XG4gICAgICAgICAgICAgICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMnB4O1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAycHggNXB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDNweDtcbiAgICAgICAgICAgICAgICAvLyB0b3A6IDVweCAhaW1wb3J0YW50O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnZhbGlkaXR5IHtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgLy9tYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLnRpY2tldC1hY3Rpb25zIHtcblxuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTVweDtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMHB4O1xuICAgICAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgICAgICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByaWNpbmcge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcblxuICAgICAgICAgICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgICAgICAvL21hcmdpbi10b3A6IDRweDtcbiAgICAgICAgICAgICAgICAgICAgLy8gY29sb3I6ICMwMDA7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnByaWNlLWluZm8ge1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZ3JheS1saWdodGVyO1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgICAgICAgICAgICAgICYubHQge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5hbW91bnQge1xuXG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDM1cHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1yaWdodDogNDVweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgZmxvYXQ6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50eXBlLW1pbiB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDNweDtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiAtM3B4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgLnR5cGUtcGx1cyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAzcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IC0zcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAucHJpY2luZy1tb2JpbGUge1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgICAgICAgICAgICAgICAucHJpY2Uge1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDNweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC5wcmljZS1pbmZvIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZ3JheS1saWdodGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5sdCB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBsaW5lLXRocm91Z2g7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuYW1vdW50LWJveCB7XG5cbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tbGVmdDogNXB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgIC50aWNrZXQtYW1vdW50IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiA0NXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDM1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGhlbWUtZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjNzOyAvKiBTYWZhcmkgKi9cbiAgICAgICAgICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAucHJpY2luZy1zYWxlcyB7XG5cbiAgICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnByaWNlIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAzcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5wcmljZS1pbmZvIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAgICAgICAgICYubHQge1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IGxpbmUtdGhyb3VnaDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAudGlja2V0LXZvdWNoZXIge1xuXG4gICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAyNXB4O1xuXG4gICAgICAgIC50aHVtYm5haWwtd3JhcCB7XG5cbiAgICAgICAgICAgIC50aHVtYm5haWwge1xuICAgICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICAgICAgLmluZm8td3JhcCB7XG4gICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5wcmljZSB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ibHVlO1xuICAgICAgICB9XG5cbiAgICAgICAgLmFjdGlvbnMge1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgcmlnaHQ6IDIwcHg7XG4gICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtNTAlKTtcblxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ncmF5LWRhcms7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIuZm9ybSB7XG5cbiAgICBmaWVsZHNldCB7XG4gICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgcGFkZGluZzogMHB4O1xuXG4gICAgICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcblxuICAgICAgICAgICAgICAgICYubGFyZ2VyLW1hcmdpbiB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpbnB1dFt0eXBlPXRleHRdLCBpbnB1dFt0eXBlPW51bWJlcl0sIGlucHV0W3R5cGU9ZW1haWxdIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBvdXRsaW5lOiBub25lO1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICR0aGVtZS1ncmF5LWxpZ2h0O1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHBsYWNlaG9sZGVyIHtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJvZHkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6IGRhcmtlbigkdGhlbWUtZ3JheS1saWdodCwyMCkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRleHRhcmVhIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICByZXNpemU6IG5vbmU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkdGhlbWUtZ3JheS1saWdodDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJvZHk7XG5cbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBwbGFjZWhvbGRlciB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1ib2R5ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiBkYXJrZW4oJHRoZW1lLWdyYXktbGlnaHQsMTApICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAubGltaXQge1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogbGlnaHRlbigkZm9udC1ib2R5LWNvbG9yLDI1KTtcblxuICAgICAgICAgICAgICAgICYudG9vbG9uZyB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtcmVkO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNoZWNrYm94LWxhYmVsIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLXRvcDogMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDI1cHg7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5yYWRpby1sYWJlbCB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLnBheW1lbnQtbG9nbyB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlucHV0W3R5cGU9cmFkaW9dIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDVweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaW5wdXRbdHlwZT1jaGVja2JveF0ge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICYuZm9ybS1ncm91cC1wcmVmaXgge1xuXG4gICAgICAgICAgICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLnByZWZpeCB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiA0MHB4O1xuICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDMwcHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbiIsIi8qIVxuICogUGlrYWRheVxuICogQ29weXJpZ2h0IMKpIDIwMTQgRGF2aWQgQnVzaGVsbCB8IEJTRCAmIE1JVCBsaWNlbnNlIHwgaHR0cDovL2RidXNoZWxsLmNvbS9cbiAqL1xuXG4vLyBWYXJpYWJsZXNcbi8vIERlY2xhcmUgYW55IG9mIHRoZXNlIHZhcmlhYmxlcyBiZWZvcmUgaW1wb3J0aW5nIHRoaXMgU0NTUyBmaWxlIHRvIGVhc2lseSBvdmVycmlkZSBkZWZhdWx0c1xuLy8gVmFyaWFibGVzIGFyZSBuYW1lc3BhY2VkIHdpdGggdGhlIHBkIChwaWthZGF5KSBwcmVmaXhcblxuLy8gQ29sb3Vyc1xuJHBkLXRleHQtY29sb3I6ICRmb250LWJvZHktY29sb3IgIWRlZmF1bHQ7XG4kcGQtdGl0bGUtY29sb3I6ICRmb250LWhlYWRpbmctY29sb3IgIWRlZmF1bHQ7XG4kcGQtdGl0bGUtYmc6ICNmZmYgIWRlZmF1bHQ7XG4kcGQtcGlja2VyLWJnOiAjZmZmICFkZWZhdWx0O1xuJHBkLXBpY2tlci1ib3JkZXI6ICR0aGVtZS1ncmF5LWxpZ2h0ICFkZWZhdWx0O1xuJHBkLXBpY2tlci1ib3JkZXItYm90dG9tOiAkdGhlbWUtZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwZC1waWNrZXItc2hhZG93OiByZ2JhKDAsMCwwLC41KSAhZGVmYXVsdDtcbiRwZC10aC1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRwZC1kYXktY29sb3I6ICM2NjYgIWRlZmF1bHQ7XG4kcGQtZGF5LWJnOiAjZjVmNWY1ICFkZWZhdWx0O1xuJHBkLWRheS1ob3Zlci1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcbiRwZC1kYXktaG92ZXItYmc6ICR0aGVtZS1ibHVlICFkZWZhdWx0O1xuJHBkLWRheS10b2RheS1jb2xvcjogJHRoZW1lLWJsdWUgIWRlZmF1bHQ7XG4kcGQtZGF5LXNlbGVjdGVkLWNvbG9yOiAjZmZmICFkZWZhdWx0O1xuJHBkLWRheS1zZWxlY3RlZC1iZzogJHRoZW1lLWJsdWUgIWRlZmF1bHQ7XG4kcGQtZGF5LXNlbGVjdGVkLXNoYWRvdzogZGFya2VuKCR0aGVtZS1ibHVlLDUpICFkZWZhdWx0O1xuJHBkLWRheS1kaXNhYmxlZC1jb2xvcjogIzk5OSAhZGVmYXVsdDtcbiRwZC13ZWVrLWNvbG9yOiAjOTk5ICFkZWZhdWx0O1xuXG5cbi8vIEZvbnRcbiRwZC1mb250LWZhbWlseTogJGZvbnQtYm9keSAhZGVmYXVsdDtcblxuXG4ucGlrYS1zaW5nbGUge1xuICAgIHotaW5kZXg6IDk5OTk7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGNvbG9yOiAkcGQtdGV4dC1jb2xvcjtcbiAgICBiYWNrZ3JvdW5kOiAkcGQtcGlja2VyLWJnO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICRwZC1waWNrZXItYm9yZGVyO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwZC1waWNrZXItYm9yZGVyLWJvdHRvbTtcbiAgICBmb250LWZhbWlseTogJHBkLWZvbnQtZmFtaWx5O1xuXG4gICAgJi5pcy1oaWRkZW4ge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgICYuaXMtYm91bmQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJveC1zaGFkb3c6IDAgNXB4IDE1cHggLTVweCAkcGQtcGlja2VyLXNoYWRvdztcbiAgICB9XG59XG5cbi8vIGNsZWFyIGNoaWxkIGZsb2F0IChwaWthLWxlbmRhciksIHVzaW5nIHRoZSBmYW1vdXMgbWljcm8gY2xlYXJmaXggaGFja1xuLy8gaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG4ucGlrYS1zaW5nbGUge1xuICAgICp6b29tOiAxO1xuXG4gICAgJjpiZWZvcmUsXG4gICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICB9XG5cbiAgICAmOmFmdGVyIHsgY2xlYXI6IGJvdGggfVxufVxuXG4ucGlrYS1sZW5kYXIge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAyNDBweDtcbiAgICBtYXJnaW46IDhweDtcbn1cblxuLnBpa2EtdGl0bGUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICBzZWxlY3Qge1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogOTk5ODtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgZmlsdGVyOiBhbHBoYShvcGFjaXR5PTApO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbn1cblxuLnBpa2EtbGFiZWwge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAqZGlzcGxheTogaW5saW5lO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB6LWluZGV4OiA5OTk5O1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDVweCAzcHg7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIGNvbG9yOiAkcGQtdGl0bGUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBkLXRpdGxlLWJnO1xufVxuXG4ucGlrYS1wcmV2LFxuLnBpa2EtbmV4dCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMzBweDtcbiAgICB0ZXh0LWluZGVudDogMjBweDsgLy8gaGlkZSB0ZXh0IHVzaW5nIHRleHQtaW5kZW50IHRyaWNrLCB1c2luZyB3aWR0aCB2YWx1ZSAoaXQncyBlbm91Z2gpXG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICBiYWNrZ3JvdW5kLXNpemU6IDc1JSA3NSU7XG4gICAgb3BhY2l0eTogLjU7XG4gICAgKnBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAqdG9wOiAwO1xuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuXG4gICAgJi5pcy1kaXNhYmxlZCB7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgb3BhY2l0eTogLjI7XG4gICAgfVxufVxuXG4ucGlrYS1wcmV2LFxuLmlzLXJ0bCAucGlrYS1uZXh0IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJ2RhdGE6aW1hZ2UvcG5nO2Jhc2U2NCxpVkJPUncwS0dnb0FBQUFOU1VoRVVnQUFBQlFBQUFBZUNBWUFBQUFzRWo1ckFBQUFVa2xFUVZSNDJ1M1ZNUW9BSUJBRFFmOFBnaitPRDloRzJDdE9OSkIyeW1Ra0tlMEhid0FQMHh1Y0RpUVdBUklUSURFQkVuTWdNUThTOCtBcUJJbDZrS2dIaVhxUXFBZUplcEJvL3ozOEovVTB1QUhsYUJrQmw5STRHd0FBQUFCSlJVNUVya0pnZ2c9PScpO1xuICAgICpsZWZ0OiAwO1xufVxuXG4ucGlrYS1uZXh0LFxuLmlzLXJ0bCAucGlrYS1wcmV2IHtcbiAgICBmbG9hdDogcmlnaHQ7XG4gICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCdkYXRhOmltYWdlL3BuZztiYXNlNjQsaVZCT1J3MEtHZ29BQUFBTlNVaEVVZ0FBQUJRQUFBQWVDQVlBQUFBc0VqNXJBQUFBVTBsRVFWUjQydTNWT3dvQU1BZ0UwZHdmQW5OalUyNmJZa0JDRkd3ZmlMOVZWV29PK0JKNEdmM2d0c0VLS29GQk5UQ29DQVlWd2FBaUdOUUdNVUhNa2pHYmdqazJtSU9OdVhvMG5DOFhuQ2YxSlhnQXJWSVpBUWg1VEtZQUFBQUFTVVZPUks1Q1lJST0nKTtcbiAgICAqcmlnaHQ6IDA7XG59XG5cbi5waWthLXNlbGVjdCB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICpkaXNwbGF5OiBpbmxpbmU7XG59XG5cbi5waWthLXRhYmxlIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBib3JkZXItY29sbGFwc2U6IGNvbGxhcHNlO1xuICAgIGJvcmRlci1zcGFjaW5nOiAwO1xuICAgIGJvcmRlcjogMDtcblxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgICAgd2lkdGg6IDE0LjI4NTcxNDI4NTcxNDI4NiU7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgfVxuXG4gICAgdGgge1xuICAgICAgICBjb2xvcjogJHBkLXRoLWNvbG9yO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuICAgICAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cblxuICAgIGFiYnIge1xuICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICBjdXJzb3I6IGhlbHA7XG4gICAgfVxufVxuXG4ucGlrYS1idXR0b24ge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICAtbW96LWJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBvdXRsaW5lOiBub25lO1xuICAgIGJvcmRlcjogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogNXB4O1xuICAgIGNvbG9yOiAkcGQtZGF5LWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICBsaW5lLWhlaWdodDogMTVweDtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgYmFja2dyb3VuZDogJHBkLWRheS1iZztcblxuICAgIC5pcy10b2RheSAmIHtcbiAgICAgICAgY29sb3I6ICRwZC1kYXktdG9kYXktY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgIH1cblxuICAgIC5pcy1zZWxlY3RlZCAmIHtcbiAgICAgICAgY29sb3I6ICRwZC1kYXktc2VsZWN0ZWQtY29sb3I7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkcGQtZGF5LXNlbGVjdGVkLWJnO1xuICAgICAgICBib3gtc2hhZG93OiBpbnNldCAwIDFweCAzcHggJHBkLWRheS1zZWxlY3RlZC1zaGFkb3c7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICB9XG5cbiAgICAuaXMtZGlzYWJsZWQgJixcbiAgICAuaXMtb3V0c2lkZS1jdXJyZW50LW1vbnRoICYge1xuICAgICAgICBjb2xvcjogJHBkLWRheS1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgb3BhY2l0eTogLjM7XG4gICAgfVxuXG4gICAgLmlzLWRpc2FibGVkICYge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cblxuICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHBkLWRheS1ob3Zlci1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZDogJHBkLWRheS1ob3Zlci1iZztcbiAgICAgICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogM3B4O1xuICAgIH1cblxuICAgIC5pcy1zZWxlY3Rpb24tZGlzYWJsZWQge1xuICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgY3Vyc29yOiBkZWZhdWx0O1xuICAgIH1cbn1cblxuLnBpa2Etd2VlayB7XG4gICAgZm9udC1zaXplOiAxMXB4O1xuICAgIGNvbG9yOiAkcGQtd2Vlay1jb2xvcjtcbn1cblxuLmlzLWlucmFuZ2UgLnBpa2EtYnV0dG9uIHtcbiAgICBiYWNrZ3JvdW5kOiAjRDVFOUY3O1xufVxuXG4uaXMtc3RhcnRyYW5nZSAucGlrYS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICM2Q0IzMUQ7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG5cbi5pcy1lbmRyYW5nZSAucGlrYS1idXR0b24ge1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGJhY2tncm91bmQ6ICMzM2FhZmY7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAzcHg7XG59XG4iLCIuYnRuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtYmx1ZTtcbiAgICBmb250LWZhbWlseTogJGZvbnQtYm9keTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBwYWRkaW5nOiAxMHB4IDE1cHg7XG4gICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgZm9udC1zaXplOiAxNXB4O1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuM3M7XG4gICAgdHJhbnNpdGlvbjogYWxsIC4zcztcblxuICAgICYuaWNvbi1sZWZ0IC5mYSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIH1cbiAgICAmLmljb24tcmlnaHQgLmZhIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgICB9XG5cbiAgICAmOmhvdmVyIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtYmx1ZS1saWdodDtcbiAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgfVxuXG4gICAgJi5idG4tYmxvY2sge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG5cbiAgICAmLmJ0bi1ibG9jay1tb2JpbGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgIH1cblxuICAgICYuYnRuLWNpcmNsZSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAzNXB4O1xuICAgICAgICBoZWlnaHQ6IDM1cHg7XG4gICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDEwMCU7XG5cbiAgICAgICAgLmZhIHtcbiAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgJi5idG4tc20ge1xuICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNXB4O1xuICAgIH1cblxuICAgICYuYnRuLWlubGluZSB7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiA1cHg7XG4gICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgIH1cblxuICAgICYuYnRuLWxnIHtcbiAgICAgICAgcGFkZGluZzogMTJweCAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuXG4gICAgJi5idG4teGxnIHtcbiAgICAgICAgcGFkZGluZzogMTVweCAyMHB4O1xuICAgICAgICBmb250LXNpemU6IDIwcHg7XG4gICAgfVxuXG4gICAgJi5idG4tbGluayB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICBjb2xvcjogJGZvbnQtbGluay1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmJ0bi1kYXJrIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWdyYXktZGFyaztcbiAgICB9XG5cbiAgICAmLmJ0bi1kaXNhYmxlZCB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ncmF5LWxpZ2h0O1xuICAgICAgICBjdXJzb3I6IGRlZmF1bHQ7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgIH1cblxuICAgICYuYnRuLXN1Y2Nlc3Mge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtZ3JlZW47XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBzYXR1cmF0ZShsaWdodGVuKCR0aGVtZS1ncmVlbiw1KSwxNSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAmLmJ0bi1kYW5nZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtcmVkO1xuICAgICAgICBjb2xvcjogI0ZGRjtcblxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2F0dXJhdGUobGlnaHRlbigkdGhlbWUtcmVkLDUpLDE1KTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiIsIiNoZWFkZXIge1xuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgLy9iYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvYmFubmVyLmpwZycpO1xuICAgIC8vIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9iZ19oYWxsb3dlZW4uanBnJyk7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICNzcGlkZXJ3ZWIge1xuICAgICAgICB3aWR0aDogMTUlO1xuICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgIHRvcDogMHB4O1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuXG4gICAgI2dyYWRpZW50IHtcblxuICAgICAgICBiYWNrZ3JvdW5kOiAtbW96LWxpbmVhci1ncmFkaWVudCgtOTBkZWcsIHJnYmEoJHRoZW1lLWJsdWUsMSkgNSUsIHJnYmEoJHRoZW1lLWJsdWUsMC4zKSAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogLXdlYmtpdC1ncmFkaWVudChsZWZ0IHRvcCwgcmlnaHQgYm90dG9tLCBjb2xvci1zdG9wKDUlLCByZ2JhKCR0aGVtZS1ibHVlLDEpKSwgY29sb3Itc3RvcCgxMDAlLCByZ2JhKCR0aGVtZS1ibHVlLC4zKSkpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAtd2Via2l0LWxpbmVhci1ncmFkaWVudCgtOTBkZWcsIHJnYmEoJHRoZW1lLWJsdWUsMSkgNSUsIHJnYmEoJHRoZW1lLWJsdWUsMC4zKSAxMDAlKTtcbiAgICAgICAgYmFja2dyb3VuZDogLW8tbGluZWFyLWdyYWRpZW50KC05MGRlZywgcmdiYSgkdGhlbWUtYmx1ZSwxKSA1JSwgcmdiYSgkdGhlbWUtYmx1ZSwwLjMpIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiAtbXMtbGluZWFyLWdyYWRpZW50KC05MGRlZywgcmdiYSgkdGhlbWUtYmx1ZSwxKSA1JSwgcmdiYSgkdGhlbWUtYmx1ZSwwLjMpIDEwMCUpO1xuICAgICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQoMTgwZGVnLCByZ2JhKCR0aGVtZS1ibHVlLDEpIDUlLCByZ2JhKCR0aGVtZS1ibHVlLDAuMykgMTAwJSk7XG5cbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMztcbiAgICB9XG5cbiAgICAjdmlkZW8ge1xuICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgIHRvcDogMHB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgei1pbmRleDogMjtcbiAgICB9XG5cbiAgICAjY292ZXIge1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogNTtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAzMHB4O1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICAgIH1cblxuICAgICAgICBpbWcge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICAjY292ZXItYm94IHtcblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgYm94LXNoYWRvdygwcHgsIDJweCwgMzRweCwgcmdiYSgwLDAsMCwuMzUpKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3NsaWRlc2hvdyB7XG4gICAgICAgICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvYmFubmVyLmpwZycpO1xuICAgICAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgICAgICBtaW4taGVpZ2h0OiAyODBweDtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjYm93IHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IC0yMHB4O1xuICAgICAgICAgICAgICAgIHRvcDogLTEwcHg7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxNTBweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5jb250ZW50IHtcblxuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4IDEwcHg7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDMwcHggNDVweDtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBoMSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJvZHkgIWltcG9ydGFudDtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNnB4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI4cHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgICAgICAgICAgICAgICAgICBiIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmVhdHVyZXMge1xuICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcblxuICAgICAgICAgICAgICAgICAgICA+bGkge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggZG90dGVkICR0aGVtZS1ncmF5LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTVweCAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nLWxlZnQ6IDUwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLmljb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZWZ0OiAwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMzVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjbWVudS10b3Age1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW4tdG9wOiAxNXB4O1xuICAgICAgICB6LWluZGV4OiAxMDtcblxuICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMnB4O1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgJi5sb2NhbGUtdG9nZ2xlIHtcblxuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuXG4gICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmc6IDJweCA2cHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0ycHg7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjE1cztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXM7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtYmx1ZS1kYXJrO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ibHVlLWxpZ2h0LWFsdDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtYmx1ZS1saWdodC1hbHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICNuYXYge1xuXG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDBweDtcbiAgICAgICAgei1pbmRleDogMTU7XG5cbiAgICAgICAgI21lbnUtbWFpbi1ib3gge1xuXG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAwcHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNtZW51LWJ1cmdlciB7XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDVweDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyNHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjbG9nbyB7XG5cbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMjBweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDQwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaW1nIHtcblxuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNjBweDtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2NhcnQtbW9iaWxlIHtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcblxuICAgICAgICAgICAgICAgIC5mYSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5pdGVtcyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtMTBweDtcbiAgICAgICAgICAgICAgICAgICAgdG9wOiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWdyZWVuO1xuXG4gICAgICAgICAgICAgICAgICAgICYuaGlkZGVuIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNtZW51LW1haW4ge1xuXG4gICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgICAgICAgICBtYXJnaW46IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDogMzJweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuXG4gICAgICAgICAgICAgICAgbGkge1xuXG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC10aGVtZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxN3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGV0dGVyLXNwYWNpbmc6IC0uNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWJsdWUtbGlnaHQtYWx0O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJi5kcm9wZG93biB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgLm1lbnUtZHJvcGRvd24ge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWVudS1kcm9wZG93bi13cmFwcGVyIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAyNXB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQwMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVsIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogY2FsYyg1MCUgLSAxMHB4KTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogMXB4IHNvbGlkICR0aGVtZS1ncmF5LWxpZ2h0O1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmbG9hdDogbm9uZTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYm9keTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNXB4O1xuXG5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWJsdWUtbGlnaHQtYWx0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yaWdodDogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWJsdWUtbGlnaHQtYWx0O1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC5tZW51LWRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2NhcnQtYnV0dG9uIHtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtZ3JlZW47XG4gICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAyNHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDhweCAxNXB4O1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxOHB4O1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAuMTVzO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAuMTVzO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAgICAgICAgIC5pdGVtcyB7XG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDIwcHg7XG4gICAgICAgICAgICAgICAgICAgIHJpZ2h0OiAtNnB4O1xuICAgICAgICAgICAgICAgICAgICB0b3A6IC02cHg7XG4gICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjBweDtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGhlbWUtYmx1ZS1saWdodC1hbHQ7XG5cbiAgICAgICAgICAgICAgICAgICAgJi5oaWRkZW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5mYSB7XG4gICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2F0dXJhdGUobGlnaHRlbigkdGhlbWUtZ3JlZW4sNSksMTUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI2RlZmF1bHQtbGFuZy10b2dnbGUge1xuXG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogNTBweDtcblxuICAgICAgICAgICAgICAgIC5sb2NhbGUtdG9nZ2xlIHtcblxuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcblxuICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ibHVlLWxpZ2h0LWFsdDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC4xNXM7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uOiBhbGwgLjE1cztcbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICY6aG92ZXIge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgICAgICYuYWN0aXZlIHtcblxuICAgICAgICAgICAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAmLmRlZmF1bHQge1xuXG4gICAgICAgICNuYXYge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWJsdWU7XG4gICAgICAgIH1cbiAgICB9XG59XG5cbi5wYXltZW50LXdhcm5pbmcge1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLW9yYW5nZTtcbiAgICBjb2xvcjogI0ZGRjtcbiAgICBwYWRkaW5nOiAxMHB4IDBweDtcblxuICAgIGEge1xuICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgICB9XG59XG5cbiNtZW51LW1vYmlsZS1iYXIge1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWJsdWU7XG4gICAgb3ZlcmZsb3cteTogc2Nyb2xsO1xuXG4gICAgI2xvZ28tYm94IHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDBweDtcblxuICAgICAgICAjbG9nbyB7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI21lbnUge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDBweDtcblxuICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDEwcHggMTVweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG4gICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCByZ2JhKDI1NSwyNTUsMjU1LC4yKTtcbiAgICAgICAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ibHVlLWxpZ2h0O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICYuY2FydCB7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgICAgICAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBhbGwgLjE1cztcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIC4xNXM7XG5cbiAgICAgICAgICAgICAgICAgICAgLml0ZW1zIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTRweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgICAgICAgICAgcmlnaHQ6IDE1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICB0b3A6IDVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAzMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ibHVlLWxpZ2h0LWFsdDtcblxuICAgICAgICAgICAgICAgICAgICAgICAgJi5oaWRkZW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogc2F0dXJhdGUobGlnaHRlbigkdGhlbWUtZ3JlZW4sNSksMTUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiI2NhcnQtdG90YWwge1xuXG4gICAgbWFyZ2luLWJvdHRvbTogMzBweDtcblxuICAgICNsYWJlbCB7XG4gICAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICB9XG5cbiAgICAjdG90YWwge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgfVxufVxuXG4jY2hlY2tvdXQtYm94IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIHBhZGRpbmc6ICRjb250ZW50LXBhZGRpbmc7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHRoZW1lLWdyYXktbGlnaHQ7XG59XG5cbiNjaGVja291dC1wYWdlIHtcblxuICAgIHBhZGRpbmc6IDI1cHg7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHg7XG4gICAgfVxuXG4gICAgI2xvZ28ge1xuICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICB9XG5cbiAgICAjYmFkZ2Utc2hvcCB7XG4gICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAzNXB4O1xuICAgIH1cbn1cbiIsIiNmb290ZXIge1xuXG4gICAgcGFkZGluZzogMzBweCAwcHg7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGJvdHRvbTogMjBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgIC51ay1jb250YWluZXJcbiAgICB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcbiAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgIH1cblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuICAgICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgfVxuXG4gICAgI2NvbHJ1eXQtbG9nbyB7XG5cbiAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB0b3A6IDZweDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcbiAgICAgICAgICAgIHdpZHRoOiA3NXB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG4gICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjbWVudS1mb290ZXItYm94IHtcblxuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgLy9yaWdodDogMDtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1hcmdpbi10b3A6IDVweDtcblxuICAgICAgICAubWVudS1mb290ZXItY29udGFjdFxuICAgICAgICB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogNXB4O1xuICAgICAgICAgICAgY29sb3I6ICM3Nzc7XG4gICAgICAgIH1cblxuICAgICAgICAjbWVudS1mb290ZXIge1xuXG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiA4cHg7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpub3QoOmxhc3QtY2hpbGQpOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCJ8XCI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogN3B4O1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDRweDtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogLjQ7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxufVxuIiwiI2NvdW50ZXIge1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICByaWdodDogLTEyMHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ncmVlbjtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgcGFkZGluZzogNnB4IDEwcHg7XG4gICAgei1pbmRleDogMTA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHRvcDogMHB4O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIC41cztcbiAgICB0cmFuc2l0aW9uOiBhbGwgLjVzO1xuXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICB0b3A6IDEyMHB4O1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogMTMzMHB4KSB7XG4gICAgICAgIHRvcDogMHB4O1xuICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAwcHg7XG4gICAgfVxuXG4gICAgI3RpbWUge1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgIH1cblxuICAgICN0aXRsZSB7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIjaG9tZSB7XG5cbiAgICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvaGFsbG93ZWVuX3dhbGxwYXBlci5qcGcnKTtcbiAgICAvLyBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvYmdfaGFsbG93ZWVuLmpwZycpO1xuICAgIGJhY2tncm91bmQtYXR0YWNobWVudDogZml4ZWQ7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgY2VudGVyO1xuICAgIHotaW5kZXg6IDIwO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgIC5zdWJ0aXRsZSB7XG5cbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRoZW1lLWJsdWU7XG4gICAgICAgIHBhZGRpbmc6IDEwcHggMHB4O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG5cbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIH1cblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogLTNweDtcbiAgICAgICAgICAgIHdpZHRoOiA2MHB4O1xuICAgICAgICAgICAgaGVpZ2h0OiA2MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDYwcHg7XG4gICAgICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDBweCwwcHgsN3B4LHJnYmEoMTU3LDE1NywxNTcsLjUpKTtcbiAgICAgICAgICAgIHotaW5kZXg6IDEwO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LXRoZW1lO1xuICAgICAgICAgICAgZm9udC1zaXplOiAxOHB4O1xuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiA4MHB4O1xuICAgICAgICB9XG4gICAgfVxufVxuXG5cblxuLnByb2R1Y3QtbGlzdCB7XG5cbiAgICBwYWRkaW5nOiAyNXB4IDBweDtcblxuICAgICYubGltaXQge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICAmOm50aC1vZi10eXBlKDFuKzMpOm5vdCgubW9yZSkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuICAgICAgICAgICAgICAgICY6bnRoLW9mLXR5cGUoMW4rMyk6bm90KC5tb3JlKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbn1cblxuLnByb2R1Y3QtYm94IHtcblxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cyAqIDQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICBib3JkZXI6IDFweCBzb2xpZCBsaWdodGVuKCR0aGVtZS1ncmF5LWxpZ2h0LDcpO1xuXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZzogNXB4O1xuXG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdygxcHgsMXB4LDJweCxyZ2JhKDIyNywyMjcsMjI3LC42KSk7XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcbiAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG5cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAzMHB4O1xuICAgIH1cblxuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogYWxsIDMwMG1zIGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgLW1vei10cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgICAtby10cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTtcbiAgICB0cmFuc2l0aW9uOiBhbGwgMzAwbXMgY3ViaWMtYmV6aWVyKDAuMjE1LCAwLjYxMCwgMC4zNTUsIDEuMDAwKTsgLyogZWFzZU91dEN1YmljICovXG5cbiAgICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiBjdWJpYy1iZXppZXIoMC4yMTUsIDAuNjEwLCAwLjM1NSwgMS4wMDApO1xuICAgIC1tb3otdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgLW8tdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG4gICAgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb246IGN1YmljLWJlemllcigwLjIxNSwgMC42MTAsIDAuMzU1LCAxLjAwMCk7XG5cbiAgICAucHJvbW8ge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNiMjAwMDA7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgcGFkZGluZzogNXB4O1xuICAgICAgICBmb250LXNpemU6IDlweDtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDlweDtcbiAgICAgICAgbGVmdDogLTJweDtcbiAgICAgICAgdG9wOiA1cHg7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG4gICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICBmb250LXNpemU6IDExcHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMTJweDtcbiAgICAgICAgICAgIGxlZnQ6IC0ycHg7XG4gICAgICAgICAgICB0b3A6IDhweDtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDRweCA1cHg7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogLjNwdDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTFweDtcbiAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxMXB4O1xuICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgdG9wOiAxNXB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRodW1iIHtcblxuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogY2VudGVyO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBoZWlnaHQ6IDgwcHg7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgIGhlaWdodDogMTIwcHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuaW5mbywgLmluZm8tZGVmYXVsdCB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgICB9XG5cbiAgICAuaW5mb1xuICAgIHtcbiAgICAgICAgY29sb3I6ICR0aGVtZS1ibHVlO1xuICAgIH1cblxuICAgICYubGFzdCB7XG5cbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmc6IDNweDtcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuZnJhbWUge1xuXG4gICAgICAgICAgICBib3JkZXI6IDFweCBkYXNoZWQgJHRoZW1lLWJsdWU7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICogMztcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIC1tb3otYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIC13ZWJraXQtYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzICogMjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLmNvbnRlbnQge1xuXG4gICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICAgICAgICAgICAgICAuYXJyb3cge1xuXG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjBweDtcblxuICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC5sYWJlbCB7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogOXB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBjb2xvcjogJHRoZW1lLWJsdWU7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgfVxuXG4gICAgfVxuXG4gICAgJjpob3ZlciB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjA1KTtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgICAgICBAaW5jbHVkZSBib3gtc2hhZG93KDRweCw0cHgsNnB4LHJnYmEoMjI3LDIyNywyMjcsLjQpKTtcbiAgICB9XG59XG4iLCIjY2F0ZWdvcnkge1xuXG4gICAgI2NhdGVnb3J5LWhlYWRlciB7XG5cblxuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDI1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDM1cHg7XG4gICAgICAgIH1cblxuICAgICAgICBoMSB7XG4gICAgICAgICAgICBjb2xvcjogJHRoZW1lLWJsdWU7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtdGhlbWU7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogLjk7XG4gICAgICAgICAgICBmb250LXNpemU6IDI2cHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDMycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAuYmFubmVyIHtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC5iYW5uZXItbW9iaWxlIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLmJhbm5lci1kZXNrdG9wIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmNvbnRlbnQge1xuXG4gICAgICAgICAgICBwYWRkaW5nOiAyMHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgIHBhZGRpbmctbGVmdDogMzBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC5wYXJrLWxpc3Qtc21hbGwge1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRoZW1lLWdyYXktbGlnaHQ7XG4gICAgICAgIHBhZGRpbmctdG9wOiAxNXB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAyNXB4O1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBsaSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDEzcHg7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6OmFmdGVyIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiBcIiAtIFwiO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZ3JheS1saWdodGVyO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTNweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTBweDtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6bGFzdC1jaGlsZDo6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCIjcGFyay1oZWFkZXIge1xuXG4gICAgcGFkZGluZzogMTBweCAxMHB4IDIwcHggMTBweDtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgIHBhZGRpbmc6IDUwcHggMjBweCA5MHB4IDIwcHg7XG4gICAgfVxuXG4gICAgI2xvZ28ge1xuXG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgbWF4LWhlaWdodDogMTUwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAvKiBUYWJsZXQgYW5kIGJpZ2dlciAqL1xuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICBtYXgtaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI292ZXJsYXkge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwyNTUsMjU1LDAuNik7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgYm90dG9tOiAwcHg7XG5cbiAgICAgICAgLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIH1cblxuICAgIH1cbn1cblxuI3Bhcmstd3JhcHBlciB7XG5cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuXG4gICAgLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG4gICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC01MHB4O1xuICAgIH1cblxuICAgIGgzIHtcbiAgICAgICAgYiB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgI3RpdGxlIHtcbiAgICAgICAgbGluZS1oZWlnaHQ6IDIycHg7XG4gICAgICAgIHBhZGRpbmc6IDIwcHggMTVweDtcbiAgICAgICAgZm9udC1zaXplOiAyMHB4O1xuICAgICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgICBjb2xvcjogI0ZGRjtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDIwcHggMDtcbiAgICAgICAgfVxuICAgIH1cblxuICAgICN0aXRsZS1tb2JpbGUge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHBhZGRpbmc6IDE1cHggJGNvbnRlbnQtcGFkZGluZy1tb2JpbGU7XG4gICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgfVxuXG4gICAgI2N0YSB7XG5cbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcbiAgICAgICAgICAgIC8vZmxvYXQ6IHJpZ2h0O1xuICAgICAgICB9XG5cbiAgICAgICAgLmJ0biB7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogOHB4O1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmVtcC1idXltb3JlIHtcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMTBweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG5cbiAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDE1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIC5lbXAtb3Ige1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICBmb250LXdlaWdodDogMzAwO1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZTtcblxuICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbiAgICAjZGlzbmV5LXN1YnRpdGxlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLTE1cHg7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDI1cHg7XG4gICAgfVxuXG4gICAgI2Rpc25leS1jYWwge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgfVxuXG4gICAgI2Rpc25leS1jb25kaXRpb25zIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMzVweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHRleHQtYWxpZ246IGp1c3RpZnk7XG4gICAgfVxuXG4gICAgI3BhcmstdmlkZW8ge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgICAucGFyay12aWRlby15dFxuICAgICAgICB7XG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbn1cblxuLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG59XG5cblxuLm1vZGFsLWluZm8ge1xuXG59XG4iLCIjZ2lmdGNhcmRzLWhvbWUge1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcblxuICAgIC5oZWFkZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvZ2lmdGNhcmRzL2NvdmVyX2dpZnRjYXJkcy5qcGcnKTtcbiAgICAgICAgaGVpZ2h0OiAyNTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgIGhlaWdodDogNDAwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAuYmFkZ2Uge1xuXG4gICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICBsZWZ0OiAxNXB4O1xuICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zZm9ybShzY2FsZSgxKSk7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEyMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAgICAgICAgICAgICBsZWZ0OiA1MHB4O1xuICAgICAgICAgICAgICAgIHRvcDogNzVweDtcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjAwcHg7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyk7XG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtKHNjYWxlKDEuMSkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLnRleHR1cmUge1xuICAgICAgICBiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJy9pbWFnZXMvZ2lmdGNhcmRzL3RleHR1cmUuanBnJyk7XG4gICAgICAgIGhlaWdodDogNjAwcHg7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IHRvcCBjZW50ZXI7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICBoZWlnaHQ6IDQwMHB4O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLmN0YS1iYXIge1xuXG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ibHVlO1xuICAgICAgICBwYWRkaW5nOiAyNXB4IDI1cHg7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgICAgICBtYXJnaW4tdG9wOiAtNjAwcHg7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgei1pbmRleDogMTA7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLTQ1MHB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICBwYWRkaW5nOiAzMHB4IDQwcHg7XG4gICAgICAgIH1cblxuICAgICAgICAubm90aWZpY2F0aW9uIHtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ibHVlLWxpZ2h0LWFsdDtcbiAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDVweCAxMHB4O1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMXB4O1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICB0b3A6IC00MHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIHRvcDogLTIwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICBjb2xvcjogI0ZGRiAhaW1wb3J0YW50O1xuICAgICAgICAgICAgZm9udC1zaXplOiAyMnB4O1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI0cHg7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtdGhlbWU7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICBtYXJnaW46IDBweDtcbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDBweDtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyOHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IDBweDtcbiAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMzBweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC5mZWF0dXJlcyB7XG4gICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICBwYWRkaW5nOiAwcHg7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGO1xuICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNDAwO1xuICAgICAgICAgICAgICAgIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG5cbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgICAgY29udGVudDogXCLCt1wiO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggM3B4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6bGFzdC1jaGlsZDphZnRlciB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgIC5jb250ZW50IHtcblxuICAgICAgICBwYWRkaW5nOiAyNXB4IDBweDtcblxuICAgICAgICAuaWNvbiB7XG4gICAgICAgICAgICB3aWR0aDogNTVweDtcbiAgICAgICAgICAgIGhlaWdodDogNTVweDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtc2l6ZTogY29udGFpbjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cblxuICAgICAgICBoMy5iIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJGZvbnQtYm9keTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDUwcHggMHB4O1xuICAgICAgICB9XG5cbiAgICAgICAgLmN0YS1ib3R0b20ge1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5ib3gtdGl0bGUge1xuICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWJvZHkgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtZ3JheS1kYXJrICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAuYm90dG9tIHtcblxuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR0aGVtZS1ncmF5LWxpZ2h0LDgpO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRoZW1lLWdyYXktbGlnaHQ7XG5cbiAgICAgICAgaDMge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5pbnNwaXJhdGlvbi13cmFwcGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuXG4gICAgICAgICAgICAuaW5zcGlyYXRpb24ge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNDklO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDIlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBibHVlO1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHg7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICNGRkZGRkY7XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gICAgICAgICAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgJjpudGgtY2hpbGQoMm4pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjMuNSU7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgICY6bnRoLWNoaWxkKDJuKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyJTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAgICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICNnaWZ0ZmFxIHtcbiAgICAgICAgICAgIC5mYXEge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAgICAgICAgICAgICBsaSB7XG5cbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0aGVtZS1ncmF5LWxpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4IDBweDtcblxuICAgICAgICAgICAgICAgICAgICAucXVlc3Rpb24ge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxM3B4O1xuICAgICAgICAgICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIC5hbndzZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLm9wZW4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgLnF1ZXN0aW9uIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICAgICAgLmFud3NlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMHB4O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICB9XG5cbn1cbiIsIiNnaWZ0Y2FyZCB7XG5cbiAgICBwYWRkaW5nLXRvcDogNTBweDtcblxuICAgIC5iYWNrZ3JvdW5kIHtcbiAgICAgICAgYmFja2dyb3VuZC1pbWFnZTogdXJsKCcvaW1hZ2VzL2dpZnRjYXJkcy9jb3Zlcl9naWZ0Y2FyZHMuanBnJyk7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogYm90dG9tIGNlbnRlcjtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgdG9wOiAwcHg7XG5cbiAgICAgICAgLmRpbW1lciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCR0aGVtZS1ibHVlLWRhcmssLjUpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAubmF2aWdhdGlvbiB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC5sb2dvIHtcbiAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgICAgbGVmdDogMjVweDtcbiAgICAgICAgfVxuICAgICAgICAuYnRuIHtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgdG9wOiAyNXB4O1xuICAgICAgICAgICAgcmlnaHQ6IDI1cHg7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAjcHJlbG9hZGVyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICB9XG5cbiAgICAjd3JhcHBlciB7XG5cbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB3aWR0aDogOTUlO1xuICAgICAgICBtYXgtd2lkdGg6IDkwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgbWFyZ2luLXRvcDogNTBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRjtcbiAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIHBhZGRpbmc6IDIwcHg7XG5cbiAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgcGFkZGluZzogNTBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5tZW51LXdyYXBwZXIge1xuXG4gICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogNTBweDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLm1lbnUge1xuICAgICAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luOiAwcHg7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4O1xuICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICAgICAgICAgIGxpIHtcblxuICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICR0aGVtZS1ncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxNXB4O1xuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLnRleHQge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICAgICAgLm51bWJlciB7XG4gICAgICAgICAgICAgICAgICAgICAgICB3aWR0aDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ncmF5LWxpZ2h0ZXI7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgICAgICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDI1cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAkdGhlbWUtYmx1ZTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICAgICAgICAgICAgICAgICAgIC5udW1iZXIge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ibHVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLnNsaWRlc2hvdy13cmFwcGVyIHtcblxuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuXG4gICAgICAgICAgICBAbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMHB4IDE1MHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDUwcHg7XG4gICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgPiB1bCB7XG5cbiAgICAgICAgICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICAgICAgICAgIHBhZGRpbmc6IDBweDtcbiAgICAgICAgICAgICAgICBtYXJnaW46IDBweDtcblxuICAgICAgICAgICAgICAgID5saS5jYXJkICB7XG5cbiAgICAgICAgICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG5cbiAgICAgICAgICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIHdpZHRoOiAyMDBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiA1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKGFsbCAuMnMgZWFzZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBib3gtc2hhZG93OiAycHggMnB4IDVweCAwIHJnYmEoMCwwLDAsMC4xNSk7XG4gICAgICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbWcge1xuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9yZGVyOiA1cHggc29saWQgJHRoZW1lLWJsdWU7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH1cblxuXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAjdm91Y2hlci1ib3gge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cblxuICAgICAgICAjdm91Y2hlci1wcmV2aWV3IHtcblxuICAgICAgICAgICAgcGFkZGluZzogMTBweDtcbiAgICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICNFRUU7XG4gICAgICAgICAgICB3aWR0aDogNDIwcHg7XG4gICAgICAgICAgICBoZWlnaHQ6IDU1MHB4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI0ZGRkZGRjtcbiAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIHRvcDogMHB4O1xuICAgICAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjVweDtcblxuICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNmb3JtLW9yaWdpbigwJSAwJSk7XG5cbiAgICAgICAgICAgIEBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwcHg7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICN2b3VjaGVyLWNvbnRlbnQge1xuXG4gICAgICAgICAgICAgICAgYm9yZGVyOiAycHggc29saWQgIzAwNUFBNjtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIGhlaWdodDogNTMwcHg7XG5cbiAgICAgICAgICAgICAgICAjdm91Y2hlci11cGxvYWQge1xuXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgI3ZvdWNoZXItdGl0bGUtYm94IHtcblxuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IGNvdmVyO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDEzMHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXIgYm90dG9tO1xuICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgICAgICAgICAgICAgI3ZvdWNoZXItdGl0bGUge1xuICAgICAgICAgICAgICAgICAgICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbjogMCBhdXRvO1xuICAgICAgICAgICAgICAgICAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogOTAwO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjMDA1QUE2O1xuICAgICAgICAgICAgICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG5cblxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAjdm91Y2hlci1wcmljZSB7XG4gICAgICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICMwMDVBQTY7XG4gICAgICAgICAgICAgICAgbGVmdDogMTBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA1cHggMTBweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG4gICAgICAgICAgICAgICAgYm90dG9tOiAxMDhweDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6IDE4cHg7XG4gICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDIwcHg7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDkwMDtcbiAgICAgICAgICAgICAgICBjb2xvcjogI0ZGRjtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3ZvdWNoZXItcmliYm9uIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjMDA1QUE2O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB0b3A6IDdweDtcbiAgICAgICAgICAgICAgICByaWdodDogMjVweDtcbiAgICAgICAgICAgICAgICB3aWR0aDogNTBweDtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMHB4O1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgICAgICAgICAgICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcblxuICAgICAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICNwaWN0dXJlLXVwbG9hZCB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDAuMXB4O1xuICAgICAgICAgICAgICAgIGhlaWdodDogMC4xcHg7XG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3BpY3R1cmUtdXBsb2FkLWxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1NnB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR0aGVtZS1ibHVlO1xuICAgICAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAgICAgICAgICAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UpO1xuXG4gICAgICAgICAgICAgICAgLmxhYmVsIHtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICAuZmEge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgICAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgICAgICAgICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCR0aGVtZS1ibHVlLDEwKTtcbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3ZvdWNoZXItY292ZXIge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIC8vbWFyZ2luLWJvdHRvbTogMTVweDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDI1NnB4O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlciBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICAjY292ZXItcmVtb3ZlIHtcbiAgICAgICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC42KTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICNGRkY7XG4gICAgICAgICAgICAgICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDI1NnB4O1xuICAgICAgICAgICAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwO1xuXG4gICAgICAgICAgICAgICAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24oYWxsIC4ycyBlYXNlKTtcbiAgICAgICAgICAgICAgICAgICAgQGluY2x1ZGUgbm8tc2VsZWN0KCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgICAgICNjb3Zlci1yZW1vdmUge1xuICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgI3ZvdWNoZXItb3ZlcmxheSB7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDQ0MHB4O1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBib3R0b206IC0yMHB4O1xuICAgICAgICAgICAgICAgIGxlZnQ6IC0xMHB4O1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgnL2ltYWdlcy9naWZ0Y2FyZHMvZW52X292ZXJsYXkucG5nJyk7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb250YWluO1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGJvdHRvbSBjZW50ZXI7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDIwMHB4O1xuICAgICAgICAgICAgfVxuXG4gICAgICAgIH1cblxuICAgICAgICAucmVjaXBpZW50LWRldGFpbHMge1xuICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHRoZW1lLWdyYXktbGlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAxNXB4O1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgIH1cblxuICAgIH1cblxuICAgICNtb2RhbC1waWN0dXJlIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgcmlnaHQ6IDA7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwwLDAsLjgpO1xuXG4gICAgICAgICNtb2RhbC1waWN0dXJlLWNvbnRlbnQge1xuXG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGRkZGO1xuICAgICAgICAgICAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXM7XG4gICAgICAgICAgICBib3JkZXI6IDVweCBzb2xpZCAjRkZGRkZGO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgICAgICAgd2lkdGg6IDk1JTtcbiAgICAgICAgICAgIG1heC13aWR0aDogOTAwcHg7XG4gICAgICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgICAgIHRvcDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuXG4gICAgICAgICAgICAjcGljdHVyZS1jcm9wcGVyIHtcbiAgICAgICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG59XG5cbiNnaWZ0Y2FyZCAucHJlbG9hZGVyLCAjY2hlY2tvdXQtcHJlbG9hZGVyIHtcbiAgICB6LWluZGV4OiAzO1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDBweDtcbiAgICBsZWZ0OiAwcHg7XG4gICAgYm90dG9tOiAwcHg7XG4gICAgcmlnaHQ6IDBweDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsMCwwLC43KTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBoZWlnaHQ6IDEwMCU7XG5cbiAgICAucHJlbG9hZGVyLW1lc3NhZ2Uge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTUwJSk7XG4gICAgICAgIGNvbG9yOiAjRkZGRkZGO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgfVxufVxuIiwiLmllIHtcblxuICAgICNoZWFkZXIgI2dyYWRpZW50IHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG59XG5cbiN1cGdyYWRlLWJyb3dzZXIge1xuXG4gICAgZGlzcGxheTogbm9uZTtcblxuICAgICN3cmFwcGVyIHtcbiAgICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjRkZGO1xuICAgICAgICAtbXMtZmlsdGVyOiBcInByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5BbHBoYShPcGFjaXR5PTkwKVwiO1xuICAgICAgICBmaWx0ZXI6IGFscGhhKG9wYWNpdHk9OTApO1xuICAgICAgICAtbW96LW9wYWNpdHk6IDAuOTtcbiAgICAgICAgLWtodG1sLW9wYWNpdHk6IDAuOTtcbiAgICAgICAgb3BhY2l0eTogMC45O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgYm90dG9tOiAwcHg7XG4gICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgei1pbmRleDogMTU7XG4gICAgfVxuXG4gICAgI2NvbnRlbnQge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDBweDtcbiAgICAgICAgcmlnaHQ6IDBweDtcbiAgICAgICAgdG9wOiAwcHg7XG4gICAgICAgIGJvdHRvbTogMHB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIHotaW5kZXg6IDE2O1xuICAgICAgICBwYWRkaW5nOiAxMDBweCAwcHg7XG5cbiAgICAgICAgI2xvZ28ge1xuICAgICAgICAgICAgd2lkdGg6IDE1MHB4O1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgfVxuXG4gICAgICAgIGgyIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA5MDA7XG4gICAgICAgIH1cblxuICAgICAgICBwIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICB9XG5cbiAgICAgICAgI2Jyb3dzZXJzIHtcblxuICAgICAgICAgICAgcGFkZGluZzogMjVweCAwcHg7XG5cbiAgICAgICAgICAgIC5icm93c2VyLWxpbmsge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAwcHggMTVweDtcbiAgICAgICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC50aXRsZSB7XG4gICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cblxuICAgICAgICB9XG4gICAgfVxuXG59XG4iLCIvLyBMRVNTIHJlbGF0ZWRcbkBpbXBvcnQgXCJjb3JlL3ZhcmlhYmxlcy5zY3NzXCI7XG5cbi8vIERlZmF1bHRzXG5AaW1wb3J0IFwiY29yZS9iYXNlLnNjc3NcIjtcblxuLy8gTGF5b3V0XG5AaW1wb3J0IFwiY29yZS9ncmlkLnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL3BhbmVsLnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL2Jsb2NrLnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL2FydGljbGUuc2Nzc1wiO1xuQGltcG9ydCBcImNvcmUvY29tbWVudC5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9jb3Zlci5zY3NzXCI7XG5cbi8vIE5hdnNcbkBpbXBvcnQgXCJjb3JlL25hdi5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9uYXZiYXIuc2Nzc1wiO1xuQGltcG9ydCBcImNvcmUvc3VibmF2LnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL2JyZWFkY3J1bWIuc2Nzc1wiO1xuQGltcG9ydCBcImNvcmUvcGFnaW5hdGlvbi5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS90YWIuc2Nzc1wiO1xuQGltcG9ydCBcImNvcmUvdGh1bWJuYXYuc2Nzc1wiO1xuXG4vLyBFbGVtZW50c1xuQGltcG9ydCBcImNvcmUvbGlzdC5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9kZXNjcmlwdGlvbi1saXN0LnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL3RhYmxlLnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL2Zvcm0uc2Nzc1wiO1xuXG4vLyBDb21tb25cbkBpbXBvcnQgXCJjb3JlL2J1dHRvbi5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9pY29uLnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL2Nsb3NlLnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL2JhZGdlLnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL2FsZXJ0LnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL3RodW1ibmFpbC5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9vdmVybGF5LnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL2NvbHVtbi5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9hbmltYXRpb24uc2Nzc1wiO1xuXG4vLyBKYXZhU2NyaXB0XG5AaW1wb3J0IFwiY29yZS9kcm9wZG93bi5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9tb2RhbC5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9vZmZjYW52YXMuc2Nzc1wiO1xuQGltcG9ydCBcImNvcmUvc3dpdGNoZXIuc2Nzc1wiO1xuXG4vLyBOZWVkIHRvIGJlIGxvYWRlZCBsYXN0XG5AaW1wb3J0IFwiY29yZS90ZXh0LnNjc3NcIjtcbkBpbXBvcnQgXCJjb3JlL3V0aWxpdHkuc2Nzc1wiO1xuQGltcG9ydCBcImNvcmUvZmxleC5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9jb250cmFzdC5zY3NzXCI7XG5AaW1wb3J0IFwiY29yZS9wcmludC5zY3NzXCI7XG4iLCIvL1xuLy8gQ29tcG9uZW50OiAgICAgICBWYXJpYWJsZXNcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBhbGwgY29sb3IgYW5kIHN0eWxlIHJlbGF0ZWQgdmFsdWVzIGFzIHZhcmlhYmxlc1xuLy8gICAgICAgICAgICAgICAgICB0byBhbGxvdyBlYXN5IGN1c3RvbWl6YXRpb24gZm9yIHRoZSBtb3N0IGNvbW1vbiBjYXNlcy5cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBHbG9iYWwgdmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEJyZWFrcG9pbnRzXG4vL1xuJGJyZWFrcG9pbnQtc21hbGw6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQ4MHB4ICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtbWVkaXVtOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtbGFyZ2U6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDk2MHB4ICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQteGxhcmdlOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEyMjBweCAhZGVmYXVsdDtcblxuJGJyZWFrcG9pbnQtbWluaS1tYXg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICgkYnJlYWtwb2ludC1zbWFsbCAtIDEpICFkZWZhdWx0O1xuJGJyZWFrcG9pbnQtc21hbGwtbWF4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICgkYnJlYWtwb2ludC1tZWRpdW0gLSAxKSAhZGVmYXVsdDtcbiRicmVha3BvaW50LW1lZGl1bS1tYXg6ICAgICAgICAgICAgICAgICAgICAgICAgICAoJGJyZWFrcG9pbnQtbGFyZ2UgLSAxKSAhZGVmYXVsdDtcbiRicmVha3BvaW50LWxhcmdlLW1heDogICAgICAgICAgICAgICAgICAgICAgICAgICAoJGJyZWFrcG9pbnQteGxhcmdlIC0gMSkgIWRlZmF1bHQ7XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEJhc2Vcbi8vIERlc2NyaXB0aW9uOiAgICAgU2V0cyBkZWZhdWx0IHZhbHVlcyBmb3IgSFRNTCBlbGVtZW50c1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWgxYCwgYHVrLWgyYCwgYHVrLWgzYCwgYHVrLWg0YCwgYHVrLWg1YCwgYHVrLWg2YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGlua2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWltZy1wcmVzZXJ2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYmFzZS1ib2R5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYXNlLWJvZHktZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgICBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kYmFzZS1ib2R5LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsICFkZWZhdWx0O1xuJGJhc2UtYm9keS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kYmFzZS1ib2R5LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRiYXNlLWJvZHktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuXG4kYmFzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzA3RCAhZGVmYXVsdDtcbiRiYXNlLWxpbmstdGV4dC1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJGJhc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICMwNTkgIWRlZmF1bHQ7XG4kYmFzZS1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogICAgICAgICAgICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuXG4kYmFzZS1jb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI0QwNSAhZGVmYXVsdDtcbiRiYXNlLWNvZGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuJGJhc2UtY29kZS1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAgICAgIENvbnNvbGFzLCBtb25vc3BhY2UsIHNlcmlmICFkZWZhdWx0O1xuJGJhc2UtZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNEMDUgIWRlZmF1bHQ7XG4kYmFzZS1pbnMtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmYSAhZGVmYXVsdDtcbiRiYXNlLWlucy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJGJhc2UtbWFyay1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmEgIWRlZmF1bHQ7XG4kYmFzZS1tYXJrLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRiYXNlLXF1b3RlLWZvbnQtc3R5bGU6ICAgICAgICAgICAgICAgICAgICAgICAgICBpdGFsaWMgIWRlZmF1bHQ7XG5cbiRiYXNlLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kYmFzZS1oZWFkaW5nLWZvbnQtZmFtaWx5OiAgICAgICAgICAgICAgICAgICAgICAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGJhc2UtaGVhZGluZy1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcbiRiYXNlLWhlYWRpbmctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJGJhc2UtaGVhZGluZy10ZXh0LXRyYW5zZm9ybTogICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kYmFzZS1oZWFkaW5nLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgMjVweCAhZGVmYXVsdDtcbiRiYXNlLWgxLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzNnB4ICFkZWZhdWx0O1xuJGJhc2UtaDEtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQycHggIWRlZmF1bHQ7XG4kYmFzZS1oMi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjRweCAhZGVmYXVsdDtcbiRiYXNlLWgyLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGJhc2UtaDMtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE4cHggIWRlZmF1bHQ7XG4kYmFzZS1oMy1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMjRweCAhZGVmYXVsdDtcbiRiYXNlLWg0LWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xuJGJhc2UtaDQtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIycHggIWRlZmF1bHQ7XG4kYmFzZS1oNS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRiYXNlLWg1LWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJGJhc2UtaDYtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG4kYmFzZS1oNi1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcblxuJGJhc2UtbGlzdC1wYWRkaW5nLWxlZnQ6ICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbiRiYXNlLWhyLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAkYmFzZS1tYXJnaW4tdmVydGljYWwgIWRlZmF1bHQ7XG4kYmFzZS1oci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRiYXNlLWhyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG5cbiRiYXNlLWJsb2NrcXVvdGUtcGFkZGluZy1sZWZ0OiAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJGJhc2UtYmxvY2txdW90ZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgIDE2cHggIWRlZmF1bHQ7XG4kYmFzZS1ibG9ja3F1b3RlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgMjJweCAhZGVmYXVsdDtcbiRiYXNlLWJsb2NrcXVvdGUtZm9udC1zdHlsZTogICAgICAgICAgICAgICAgICAgICBpdGFsaWMgIWRlZmF1bHQ7XG5cbiRiYXNlLXByZS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGJhc2UtcHJlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kYmFzZS1wcmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRiYXNlLXByZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuJGJhc2UtcHJlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgIDE4cHggIWRlZmF1bHQ7XG4kYmFzZS1wcmUtZm9udC1mYW1pbHk6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJGJhc2UtY29kZS1mb250LWZhbWlseSAhZGVmYXVsdDtcblxuJGJhc2Utc2VsZWN0aW9uLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICMzOWYgIWRlZmF1bHQ7XG4kYmFzZS1zZWxlY3Rpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQmFzZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBOb3JtYWxpemUgZGVmYXVsdCBgZm9udC1mYW1pbHlgIGFuZCBzZXQgYGZvbnQtc2l6ZWAgdG8gc3VwcG9ydCBgcmVtYCB1bml0c1xuICogMi4gUHJldmVudHMgaU9TIHRleHQgc2l6ZSBhZGp1c3QgYWZ0ZXIgb3JpZW50YXRpb24gY2hhbmdlLCB3aXRob3V0IGRpc2FibGluZyB1c2VyIHpvb21cbiAqIDMuIFN0eWxlXG4gKi9cblxuaHRtbCB7XG4gICAgLyogMSAqL1xuICAgIGZvbnQ6ICRiYXNlLWJvZHktZm9udC13ZWlnaHQgJGJhc2UtYm9keS1mb250LXNpemUgdW5xdW90ZShcIi9cIikgJGJhc2UtYm9keS1saW5lLWhlaWdodCAkYmFzZS1ib2R5LWZvbnQtZmFtaWx5O1xuICAgIC8qIDIgKi9cbiAgICAtd2Via2l0LXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgLW1zLXRleHQtc2l6ZS1hZGp1c3Q6IDEwMCU7XG4gICAgLyogMyAqL1xuICAgIGJhY2tncm91bmQ6ICRiYXNlLWJvZHktYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhc2UtYm9keS1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLWJhc2UtYm9keSgpO1xufVxuXG4vKlxuICogUmVtb3ZlcyBkZWZhdWx0IG1hcmdpbi5cbiAqL1xuXG5ib2R5IHsgbWFyZ2luOiAwOyB9XG5cblxuLyogTGlua3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlIHRoZSBncmF5IGJhY2tncm91bmQgY29sb3IgZnJvbSBhY3RpdmUgbGlua3MgaW4gSUUgMTAuXG4gKi9cblxuYSB7IGJhY2tncm91bmQ6IHRyYW5zcGFyZW50OyB9XG5cbi8qXG4gKiBJbXByb3ZlIHJlYWRhYmlsaXR5IG9mIGZvY3VzZWQgZWxlbWVudHMgd2hlbiB0aGV5IGFyZSBhbHNvIGluIGFuIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbiAqL1xuXG5hOmFjdGl2ZSxcbmE6aG92ZXIgeyBvdXRsaW5lOiAwOyB9XG5cbi8qXG4gKiBTdHlsZVxuICovXG5cbmEsXG4udWstbGluayB7XG4gICAgY29sb3I6ICRiYXNlLWxpbmstY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiAkYmFzZS1saW5rLXRleHQtZGVjb3JhdGlvbjtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgaG9vay1iYXNlLWxpbmsoKTtcbn1cblxuYTpob3Zlcixcbi51ay1saW5rOmhvdmVyIHtcbiAgICBjb2xvcjogJGJhc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRiYXNlLWxpbmstaG92ZXItdGV4dC1kZWNvcmF0aW9uO1xuICAgIEBpbmNsdWRlIGhvb2stYmFzZS1saW5rLWhvdmVyKCk7XG59XG5cblxuLyogVGV4dC1sZXZlbCBzZW1hbnRpY3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQWRkcmVzcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmFiYnJbdGl0bGVdIHsgYm9yZGVyLWJvdHRvbTogMXB4IGRvdHRlZDsgfVxuXG4vKlxuICogQWRkcmVzcyBzdHlsZSBzZXQgdG8gYGJvbGRlcmAgaW4gRmlyZWZveCA0KywgU2FmYXJpLCBhbmQgQ2hyb21lLlxuICovXG5cbmIsXG5zdHJvbmcgeyBmb250LXdlaWdodDogYm9sZDsgfVxuXG4vKlxuICogMS4gQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuICogMi4gQ29uc29sYXMgaGFzIGEgYmV0dGVyIGJhc2VsaW5lIGluIHJ1bm5pbmcgdGV4dCBjb21wYXJlZCB0byBgQ291cmllcmBcbiAqL1xuXG46bm90KHByZSkgPiBjb2RlLFxuOm5vdChwcmUpID4ga2JkLFxuOm5vdChwcmUpID4gc2FtcCB7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtY29kZS1mb250LXNpemU7XG4gICAgLyogMiAqL1xuICAgIGZvbnQtZmFtaWx5OiAkYmFzZS1jb2RlLWZvbnQtZmFtaWx5O1xuICAgIC8qIDMgKi9cbiAgICBjb2xvcjogJGJhc2UtY29kZS1jb2xvcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgIEBpbmNsdWRlIGhvb2stYmFzZS1jb2RlKCk7XG59XG5cbi8qXG4gKiBFbXBoYXNpemVcbiAqL1xuXG5lbSB7IGNvbG9yOiAkYmFzZS1lbS1jb2xvcjsgfVxuXG4vKlxuICogSW5zZXJ0XG4gKi9cblxuaW5zIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS1pbnMtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJhc2UtaW5zLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLypcbiAqIE1hcmtcbiAqIE5vdGU6IEFkZHJlc3NlcyBzdHlsaW5nIG5vdCBwcmVzZW50IGluIElFIDgvOS5cbiAqL1xuXG5tYXJrIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS1tYXJrLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYXNlLW1hcmstY29sb3I7XG59XG5cbi8qXG4gKiBRdW90ZVxuICovXG5cbnEgeyBmb250LXN0eWxlOiAkYmFzZS1xdW90ZS1mb250LXN0eWxlOyB9XG5cbi8qXG4gKiBBZGRyZXNzZXMgaW5jb25zaXN0ZW50IGFuZCB2YXJpYWJsZSBmb250IHNpemUgaW4gYWxsIGJyb3dzZXJzLlxuICovXG5cbnNtYWxsIHsgZm9udC1zaXplOiA4MCU7IH1cblxuLypcbiAqIFByZXZlbnRzIGBzdWJgIGFuZCBgc3VwYCBhZmZlY3RpbmcgYGxpbmUtaGVpZ2h0YCBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxuc3ViLFxuc3VwIHtcbiAgICBmb250LXNpemU6IDc1JTtcbiAgICBsaW5lLWhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xufVxuXG5zdXAgeyB0b3A6IC0wLjVlbTsgfVxuc3ViIHsgYm90dG9tOiAtMC4yNWVtOyB9XG5cblxuLyogRW1iZWRkZWQgY29udGVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgdGhlIGdhcCBiZXR3ZWVuIGVtYmVkZGVkIGNvbnRlbnQgYW5kIHRoZSBib3R0b20gb2YgdGhlaXIgY29udGFpbmVycy5cbiAqL1xuXG5hdWRpbyxcbmNhbnZhcyxcbmlmcmFtZSxcbmltZyxcbnN2ZyxcbnZpZGVvIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZTsgfVxuXG4vKlxuICogUmVzcG9uc2l2ZW5lc3NcbiAqIDEuIFNldHMgYSBtYXhpbXVtIHdpZHRoIHJlbGF0aXZlIHRvIHRoZSBwYXJlbnQgYW5kIGF1dG8gc2NhbGVzIHRoZSBoZWlnaHRcbiAqIDIuIENvcnJlY3RzIGBtYXgtd2lkdGhgIGJlaGF2aW9yIGlmIHBhZGRpbmcgYW5kIGJvcmRlciBhcmUgdXNlZFxuICovXG5cbmF1ZGlvLFxuY2FudmFzLFxuaW1nLFxuc3ZnLFxudmlkZW8ge1xuICAgIC8qIDEgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIC8qIDIgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xufVxuXG4vKlxuICogUHJlc2VydmUgb3JpZ2luYWwgZGltZW5zaW9uc1xuICovXG5cbi51ay1pbWctcHJlc2VydmUsXG4udWstaW1nLXByZXNlcnZlIGF1ZGlvLFxuLnVrLWltZy1wcmVzZXJ2ZSBjYW52YXMsXG4udWstaW1nLXByZXNlcnZlIGltZyxcbi51ay1pbWctcHJlc2VydmUgc3ZnLFxuLnVrLWltZy1wcmVzZXJ2ZSB2aWRlbyB7IG1heC13aWR0aDogbm9uZTsgfVxuXG4vKlxuICogUmVtb3ZlIGJvcmRlciB3aGVuIGluc2lkZSBgYWAgZWxlbWVudCBpbiBJRSA4LzkvMTAuXG4gKi9cblxuaW1nIHsgYm9yZGVyOiAwOyB9XG5cbi8qXG4gKiBDb3JyZWN0IG92ZXJmbG93IG5vdCBoaWRkZW4gaW4gSUUgOS8xMC8xMS5cbiAqL1xuXG5zdmc6bm90KDpyb290KSB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuXG4vKiBCbG9jayBlbGVtZW50c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZXNldCBtYXJnaW5cbiAqL1xuXG5ibG9ja3F1b3RlLFxuZmlndXJlIHsgbWFyZ2luOiAwOyB9XG5cbi8qXG4gKiBNYXJnaW5zXG4gKi9cblxucCxcbnVsLFxub2wsXG5kbCxcbmJsb2NrcXVvdGUsXG5wcmUsXG5hZGRyZXNzLFxuZmllbGRzZXQsXG5maWd1cmUgeyBtYXJnaW46IDAgMCAkYmFzZS1tYXJnaW4tdmVydGljYWwgMDsgfVxuXG4qICsgcCxcbiogKyB1bCxcbiogKyBvbCxcbiogKyBkbCxcbiogKyBibG9ja3F1b3RlLFxuKiArIHByZSxcbiogKyBhZGRyZXNzLFxuKiArIGZpZWxkc2V0LFxuKiArIGZpZ3VyZSB7IG1hcmdpbi10b3A6ICRiYXNlLW1hcmdpbi12ZXJ0aWNhbDsgfVxuXG5cbi8qIEhlYWRpbmdzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgbWFyZ2luOiAwIDAgJGJhc2UtbWFyZ2luLXZlcnRpY2FsIDA7XG4gICAgZm9udC1mYW1pbHk6ICAkYmFzZS1oZWFkaW5nLWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkYmFzZS1oZWFkaW5nLWZvbnQtd2VpZ2h0O1xuICAgIGNvbG9yOiAkYmFzZS1oZWFkaW5nLWNvbG9yO1xuICAgIHRleHQtdHJhbnNmb3JtOiAkYmFzZS1oZWFkaW5nLXRleHQtdHJhbnNmb3JtO1xuICAgIEBpbmNsdWRlIGhvb2stYmFzZS1oKCk7XG59XG5cbi8qXG4gKiBNYXJnaW5zXG4gKi9cblxuKiArIGgxLFxuKiArIGgyLFxuKiArIGgzLFxuKiArIGg0LFxuKiArIGg1LFxuKiArIGg2IHsgbWFyZ2luLXRvcDogJGJhc2UtaGVhZGluZy1tYXJnaW4tdG9wOyB9XG5cbi8qXG4gKiBTaXplc1xuICovXG5cbmgxLCAudWstaDEge1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtaDEtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkYmFzZS1oMS1saW5lLWhlaWdodDtcbiAgICBAaW5jbHVkZSBob29rLWJhc2UtaDEoKTtcbn1cblxuaDIsIC51ay1oMiB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oMi1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWgyLWxpbmUtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGhvb2stYmFzZS1oMigpO1xufVxuXG5oMywgLnVrLWgzIHtcbiAgICBmb250LXNpemU6ICRiYXNlLWgzLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGJhc2UtaDMtbGluZS1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgaG9vay1iYXNlLWgzKCk7XG59XG5cbmg0LCAudWstaDQge1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtaDQtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkYmFzZS1oNC1saW5lLWhlaWdodDtcbiAgICBAaW5jbHVkZSBob29rLWJhc2UtaDQoKTtcbn1cblxuaDUsIC51ay1oNSB7XG4gICAgZm9udC1zaXplOiAkYmFzZS1oNS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWg1LWxpbmUtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGhvb2stYmFzZS1oNSgpO1xufVxuXG5oNiwgLnVrLWg2IHtcbiAgICBmb250LXNpemU6ICRiYXNlLWg2LWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGJhc2UtaDYtbGluZS1oZWlnaHQ7XG4gICAgQGluY2x1ZGUgaG9vay1iYXNlLWg2KCk7XG59XG5cblxuLyogTGlzdHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG51bCxcbm9sIHsgcGFkZGluZy1sZWZ0OiAkYmFzZS1saXN0LXBhZGRpbmctbGVmdDsgfVxuXG4vKlxuICogUmVzZXQgbWFyZ2luIGZvciBuZXN0ZWQgbGlzdHNcbiAqL1xuXG51bCA+IGxpID4gdWwsXG51bCA+IGxpID4gb2wsXG5vbCA+IGxpID4gb2wsXG5vbCA+IGxpID4gdWwgeyBtYXJnaW46IDA7IH1cblxuXG4vKiBEZXNjcmlwdGlvbiBsaXN0c1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmR0IHsgZm9udC13ZWlnaHQ6IGJvbGQ7IH1cbmRkIHsgbWFyZ2luLWxlZnQ6IDA7IH1cblxuXG4vKiBIb3Jpem9udGFsIHJ1bGVzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEFkZHJlc3MgZGlmZmVyZW5jZXMgYmV0d2VlbiBGaXJlZm94IGFuZCBvdGhlciBicm93c2Vycy5cbiAqIDIuIFN0eWxlXG4gKi9cblxuaHIge1xuICAgIC8qIDEgKi9cbiAgICBib3gtc2l6aW5nOiBjb250ZW50LWJveDtcbiAgICBoZWlnaHQ6IDA7XG4gICAgLyogMiAqL1xuICAgIG1hcmdpbjogJGJhc2UtaHItbWFyZ2luLXZlcnRpY2FsIDA7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci10b3A6ICRiYXNlLWhyLWJvcmRlci13aWR0aCBzb2xpZCAkYmFzZS1oci1ib3JkZXI7XG4gICAgQGluY2x1ZGUgaG9vay1iYXNlLWhyKCk7XG59XG5cblxuLyogQWRkcmVzc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmFkZHJlc3MgeyBmb250LXN0eWxlOiBub3JtYWw7IH1cblxuXG4vKiBCbG9ja3F1b3Rlc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbmJsb2NrcXVvdGUge1xuICAgIHBhZGRpbmctbGVmdDogJGJhc2UtYmxvY2txdW90ZS1wYWRkaW5nLWxlZnQ7XG4gICAgYm9yZGVyLWxlZnQ6ICRiYXNlLWJsb2NrcXVvdGUtYm9yZGVyLXdpZHRoIHNvbGlkICRiYXNlLWJsb2NrcXVvdGUtYm9yZGVyO1xuICAgIGZvbnQtc2l6ZTogJGJhc2UtYmxvY2txdW90ZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRiYXNlLWJsb2NrcXVvdGUtbGluZS1oZWlnaHQ7XG4gICAgZm9udC1zdHlsZTogJGJhc2UtYmxvY2txdW90ZS1mb250LXN0eWxlO1xuICAgIEBpbmNsdWRlIGhvb2stYmFzZS1ibG9ja3F1b3RlKCk7XG59XG5cblxuLyogUHJlZm9ybWF0dGVkIHRleHRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ29udGFpbiBvdmVyZmxvdyBpbiBhbGwgYnJvd3NlcnMuXG4gKi9cblxucHJlIHtcbiAgICBwYWRkaW5nOiAkYmFzZS1wcmUtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkYmFzZS1wcmUtYmFja2dyb3VuZDtcbiAgICBmb250OiAkYmFzZS1wcmUtZm9udC1zaXplIHVucXVvdGUoXCIvXCIpICRiYXNlLXByZS1saW5lLWhlaWdodCAkYmFzZS1wcmUtZm9udC1mYW1pbHk7XG4gICAgY29sb3I6ICRiYXNlLXByZS1jb2xvcjtcbiAgICAtbW96LXRhYi1zaXplOiA0O1xuICAgIHRhYi1zaXplOiA0O1xuICAgIC8qIDEgKi9cbiAgICBvdmVyZmxvdzogYXV0bztcbiAgICBAaW5jbHVkZSBob29rLWJhc2UtcHJlKCk7XG59XG5cblxuLyogU2VsZWN0aW9uIHBzZXVkby1lbGVtZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuOjotbW96LXNlbGVjdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJGJhc2Utc2VsZWN0aW9uLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRiYXNlLXNlbGVjdGlvbi1jb2xvcjtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTtcbn1cblxuOjpzZWxlY3Rpb24ge1xuICAgIGJhY2tncm91bmQ6ICRiYXNlLXNlbGVjdGlvbi1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYmFzZS1zZWxlY3Rpb24tY29sb3I7XG4gICAgdGV4dC1zaGFkb3c6IG5vbmU7XG59XG5cblxuLyogSFRNTDUgZWxlbWVudHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGFueSBIVE1MNSBlbGVtZW50IGluIElFIDgvOS5cbiAqIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBgZGV0YWlsc2Agb3IgYHN1bW1hcnlgIGluIElFIDEwLzExIGFuZCBGaXJlZm94LlxuICogQ29ycmVjdCBgYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgZm9yIGBtYWluYCBpbiBJRSAxMS5cbiAqL1xuXG5hcnRpY2xlLFxuYXNpZGUsXG5kZXRhaWxzLFxuZmlnY2FwdGlvbixcbmZpZ3VyZSxcbmZvb3RlcixcbmhlYWRlcixcbm1haW4sXG5uYXYsXG5zZWN0aW9uLFxuc3VtbWFyeSB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cbi8qXG4gKiBOb3JtYWxpemUgdmVydGljYWwgYWxpZ25tZW50IG9mIGBwcm9ncmVzc2AgaW4gQ2hyb21lLCBGaXJlZm94LCBhbmQgT3BlcmEuXG4gKi9cblxucHJvZ3Jlc3MgeyB2ZXJ0aWNhbC1hbGlnbjogYmFzZWxpbmU7IH1cblxuLypcbiAqIFByZXZlbnQgZGlzcGxheWluZyBgYXVkaW9gIHdpdGhvdXQgY29udHJvbHMgaW4gQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhXG4gKi9cblxuYXVkaW86bm90KFtjb250cm9sc10pIHsgZGlzcGxheTogbm9uZTsgfVxuXG4vKlxuICogQWRkcmVzcyBgW2hpZGRlbl1gIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LzEwLlxuICogSGlkZSB0aGUgYHRlbXBsYXRlYCBlbGVtZW50IGluIElFIDgvOS8xMC8xMSwgU2FmYXJpLCBhbmQgRmlyZWZveCA8IDIyLlxuICovXG5cbltoaWRkZW5dLFxudGVtcGxhdGUgeyBkaXNwbGF5OiBub25lOyB9XG5cblxuLyogSWZyYW1lXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuaWZyYW1lIHsgYm9yZGVyOiAwOyB9XG5cblxuLyogRml4IHZpZXdwb3J0IGZvciBJRTEwIHNuYXAgbW9kZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6IDQwMHB4KSB7XG4gICAgQC1tcy12aWV3cG9ydHtcbiAgICAgICAgd2lkdGg6IGRldmljZS13aWR0aDtcbiAgICB9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLWJhc2UtbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay1iYXNlLWJvZHkoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWxpbmsoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWxpbmstaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWNvZGUoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWgoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWgxKCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1oMigpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaDMoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWg0KCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1oNSgpe31cbi8vIEBtaXhpbiBob29rLWJhc2UtaDYoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLWhyKCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1ibG9ja3F1b3RlKCl7fVxuLy8gQG1peGluIGhvb2stYmFzZS1wcmUoKXt9XG4vLyBAbWl4aW4gaG9vay1iYXNlLW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBHcmlkXG4vLyBEZXNjcmlwdGlvbjogICAgIFByb3ZpZGVzIGEgcmVzcG9uc2l2ZSwgZmx1aWQgYW5kIG5lc3RhYmxlIGdyaWRcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1ncmlkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstd2lkdGgtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXB1c2gtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXB1bGwtKmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1ncmlkLWNvbGxhcHNlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtbWVkaXVtYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1sYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtZGl2aWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtbWFyZ2luYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZ3JpZC1tYXRjaGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWdyaWQtd2lkdGgtKmBcbi8vXG4vLyBVc2VzOiAgICAgICAgICAgIFBhbmVsOiBgdWstcGFuZWxgXG4vL1xuLy8gVXNlZCBieTogICAgICAgICBEcm9wZG93blxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLWdyaWQgLS0+XG4vLyA8ZGl2IGNsYXNzPVwidWstZ3JpZFwiPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJ1ay13aWR0aC0xLTJcIj48L2Rpdj5cbi8vICAgICA8ZGl2IGNsYXNzPVwidWstd2lkdGgtMS0yXCI+PC9kaXY+XG4vLyA8L2Rpdj5cbi8vXG4vLyA8IS0tIHVrLWdyaWQtZGl2aWRlciAtLT5cbi8vIDxkaXYgY2xhc3M9XCJ1ay1ncmlkIHVrLWdyaWQtZGl2aWRlclwiPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJ1ay13aWR0aC0xLTJcIj48L2Rpdj5cbi8vICAgICA8ZGl2IGNsYXNzPVwidWstd2lkdGgtMS0yXCI+PC9kaXY+XG4vLyA8L2Rpdj5cbi8vIDxociBjbGFzcz1cInVrLWdyaWQtZGl2aWRlclwiPlxuLy8gPGRpdiBjbGFzcz1cInVrLWdyaWQgdWstZ3JpZC1kaXZpZGVyXCI+XG4vLyAgICAgPGRpdiBjbGFzcz1cInVrLXdpZHRoLTEtMlwiPjwvZGl2PlxuLy8gICAgIDxkaXYgY2xhc3M9XCJ1ay13aWR0aC0xLTJcIj48L2Rpdj5cbi8vIDwvZGl2PlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRncmlkLWd1dHRlci1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgICAyNXB4ICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDI1cHggIWRlZmF1bHQ7XG5cbiRncmlkLWd1dHRlci1sYXJnZS1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAzNXB4ICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLWxhcmdlLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgIDM1cHggIWRlZmF1bHQ7XG5cbiRncmlkLWd1dHRlci14bGFyZ2UtaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXhsYXJnZS12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG5cbiRncmlkLWd1dHRlci1zbWFsbC1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGdyaWQtZ3V0dGVyLXNtYWxsLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG5cbiRncmlkLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJGdyaWQtZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogR3JpZFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBNYWtlcyBncmlkIG1vcmUgcm9idXN0IHNvIHRoYXQgaXQgY2FuIGJlIHVzZWQgd2l0aCBvdGhlciBibG9jayBlbGVtZW50cyBsaWtlIGxpc3RzXG4gKi9cblxuLnVrLWdyaWQge1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKlxuICogREVQUkVDQVRFRFxuICogTWljcm8gY2xlYXJmaXhcbiAqIENhbid0IHVzZSBgdGFibGVgIGJlY2F1c2UgaXQgY3JlYXRlcyBhIDFweCBnYXAgd2hlbiBpdCBiZWNvbWVzIGEgZmxleCBpdGVtLCBvbmx5IGluIFdlYmtpdFxuICovXG5cbi51ay1ncmlkOmJlZm9yZSxcbi51ay1ncmlkOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51ay1ncmlkOmFmdGVyIHsgY2xlYXI6IGJvdGg7IH1cblxuLypcbiAqIEdyaWQgY2VsbFxuICogMS4gU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnNcbiAqIDIuIE1ha2VzIGdyaWQgbW9yZSByb2J1c3Qgc28gdGhhdCBpdCBjYW4gYmUgdXNlZCB3aXRoIG90aGVyIGJsb2NrIGVsZW1lbnRzXG4gKiAzLiBERVBSRUNBVEVEIFVzaW5nIGBmbG9hdGAgdG8gc3VwcG9ydCBJRTlcbiAqL1xuXG4udWstZ3JpZCA+ICoge1xuICAgIC8qIDEgKi9cbiAgICAtbXMtZmxleDogbm9uZTtcbiAgICAtd2Via2l0LWZsZXg6IG5vbmU7XG4gICAgZmxleDogbm9uZTtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIDMgKi9cbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1ncmlkID4gKiA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIEdyaWQgZ3V0dGVyXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERlZmF1bHQgZ3V0dGVyXG4gKi9cblxuLyogSG9yaXpvbnRhbCAqL1xuLnVrLWdyaWQgeyBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci1ob3Jpem9udGFsOyB9XG4udWstZ3JpZCA+ICogeyBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZCArIC51ay1ncmlkLFxuLnVrLWdyaWQtbWFyZ2luLFxuLnVrLWdyaWQgPiAqID4gLnVrLXBhbmVsICsgLnVrLXBhbmVsIHsgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXZlcnRpY2FsOyB9XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAvKiBIb3Jpem9udGFsICovXG4gICAgLnVrLWdyaWQgeyBtYXJnaW4tbGVmdDogLSRncmlkLWd1dHRlci1sYXJnZS1ob3Jpem9udGFsOyB9XG4gICAgLnVrLWdyaWQgPiAqIHsgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXItbGFyZ2UtaG9yaXpvbnRhbDsgfVxuXG4gICAgLyogVmVydGljYWwgKi9cbiAgICAudWstZ3JpZCArIC51ay1ncmlkLFxuICAgIC51ay1ncmlkLW1hcmdpbixcbiAgICAudWstZ3JpZCA+ICogPiAudWstcGFuZWwgKyAudWstcGFuZWwgeyBtYXJnaW4tdG9wOiAkZ3JpZC1ndXR0ZXItbGFyZ2UtdmVydGljYWw7IH1cblxufVxuXG4vKlxuICogQ29sbGFwc2UgZ3V0dGVyXG4gKi9cblxuLyogSG9yaXpvbnRhbCAqL1xuLnVrLWdyaWQtY29sbGFwc2UgeyBtYXJnaW4tbGVmdDogMDsgfVxuLnVrLWdyaWQtY29sbGFwc2UgPiAqIHsgcGFkZGluZy1sZWZ0OiAwOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1jb2xsYXBzZSArIC51ay1ncmlkLWNvbGxhcHNlLFxuLnVrLWdyaWQtY29sbGFwc2UgPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1jb2xsYXBzZSA+ICogPiAudWstcGFuZWwgKyAudWstcGFuZWwgeyBtYXJnaW4tdG9wOiAwOyB9XG5cbi8qXG4gKiBTbWFsbCBndXR0ZXJcbiAqL1xuXG4vKiBIb3Jpem9udGFsICovXG4udWstZ3JpZC1zbWFsbCB7IG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyLXNtYWxsLWhvcml6b250YWw7IH1cbi51ay1ncmlkLXNtYWxsID4gKiB7IHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyLXNtYWxsLWhvcml6b250YWw7IH1cblxuLyogVmVydGljYWwgKi9cbi51ay1ncmlkLXNtYWxsICsgLnVrLWdyaWQtc21hbGwsXG4udWstZ3JpZC1zbWFsbCA+IC51ay1ncmlkLW1hcmdpbixcbi51ay1ncmlkLXNtYWxsID4gKiA+IC51ay1wYW5lbCArIC51ay1wYW5lbCB7IG1hcmdpbi10b3A6ICRncmlkLWd1dHRlci1zbWFsbC12ZXJ0aWNhbDsgfVxuXG4vKlxuICogTWVkaXVtIGd1dHRlclxuICovXG5cbi8qIEhvcml6b250YWwgKi9cbi51ay1ncmlkLW1lZGl1bSB7IG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyLWhvcml6b250YWw7IH1cbi51ay1ncmlkLW1lZGl1bSA+ICogeyBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci1ob3Jpem9udGFsOyB9XG5cbi8qIFZlcnRpY2FsICovXG4udWstZ3JpZC1tZWRpdW0gKyAudWstZ3JpZC1tZWRpdW0sXG4udWstZ3JpZC1tZWRpdW0gPiAudWstZ3JpZC1tYXJnaW4sXG4udWstZ3JpZC1tZWRpdW0gPiAqID4gLnVrLXBhbmVsICsgLnVrLXBhbmVsIHsgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXZlcnRpY2FsOyB9XG5cblxuLypcbiAqIExhcmdlIGd1dHRlclxuICovXG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC8qIEhvcml6b250YWwgKi9cbiAgICAudWstZ3JpZC1sYXJnZSB7IG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyLWxhcmdlLWhvcml6b250YWw7IH1cbiAgICAudWstZ3JpZC1sYXJnZSA+ICogeyBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci1sYXJnZS1ob3Jpem9udGFsOyB9XG5cbiAgICAvKiBWZXJ0aWNhbCAqL1xuICAgIC51ay1ncmlkLWxhcmdlICsgLnVrLWdyaWQtbGFyZ2UsXG4gICAgLnVrLWdyaWQtbGFyZ2UtbWFyZ2luLFxuICAgIC51ay1ncmlkLWxhcmdlID4gKiA+IC51ay1wYW5lbCArIC51ay1wYW5lbCB7IG1hcmdpbi10b3A6ICRncmlkLWd1dHRlci1sYXJnZS12ZXJ0aWNhbDsgfVxuXG59XG5cbi8qIEV4dHJhIExhcmdlIHNjcmVlbnMgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC8qIEhvcml6b250YWwgKi9cbiAgICAudWstZ3JpZC1sYXJnZSB7IG1hcmdpbi1sZWZ0OiAtJGdyaWQtZ3V0dGVyLXhsYXJnZS1ob3Jpem9udGFsOyB9XG4gICAgLnVrLWdyaWQtbGFyZ2UgPiAqIHsgcGFkZGluZy1sZWZ0OiAkZ3JpZC1ndXR0ZXIteGxhcmdlLWhvcml6b250YWw7IH1cblxuICAgIC8qIFZlcnRpY2FsICovXG4gICAgLnVrLWdyaWQtbGFyZ2UgKyAudWstZ3JpZC1sYXJnZSxcbiAgICAudWstZ3JpZC1sYXJnZS1tYXJnaW4sXG4gICAgLnVrLWdyaWQtbGFyZ2UgPiAqID4gLnVrLXBhbmVsICsgLnVrLXBhbmVsIHsgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXhsYXJnZS12ZXJ0aWNhbDsgfVxuXG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay1ncmlkLWRpdmlkZXJgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEhvcml6b250YWwgZGl2aWRlclxuICogT25seSB3b3JrcyB3aXRoIHRoZSBkZWZhdWx0IGd1dHRlci4gRG9lcyBub3Qgd29yayB3aXRoIGd1dHRlciBjb2xsYXBzZSwgc21hbGwgb3IgbGFyZ2UuXG4gKiBEb2VzIG5vdCB3b3JrIHdpdGggYHVrLXB1c2gtKmAsIGB1ay1wdWxsLSpgIGFuZCBub3QgaWYgdGhlIGNvbHVtbnMgZmxvYXQgaW50byB0aGUgbmV4dCByb3cuXG4gKi9cblxuLnVrLWdyaWQtZGl2aWRlcjpub3QoOmVtcHR5KSB7XG4gICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tcmlnaHQ6IC0kZ3JpZC1ndXR0ZXItaG9yaXpvbnRhbDtcbn1cblxuLnVrLWdyaWQtZGl2aWRlciA+ICoge1xuICAgIHBhZGRpbmctbGVmdDogJGdyaWQtZ3V0dGVyLWhvcml6b250YWw7XG4gICAgcGFkZGluZy1yaWdodDogJGdyaWQtZ3V0dGVyLWhvcml6b250YWw7XG59XG5cbi51ay1ncmlkLWRpdmlkZXIgPiBbY2xhc3MqPSd1ay13aWR0aC0xLSddOm5vdCgudWstd2lkdGgtMS0xKTpudGgtY2hpbGQobisyKSxcbi51ay1ncmlkLWRpdmlkZXIgPiBbY2xhc3MqPSd1ay13aWR0aC0yLSddOm50aC1jaGlsZChuKzIpLFxuLnVrLWdyaWQtZGl2aWRlciA+IFtjbGFzcyo9J3VrLXdpZHRoLTMtJ106bnRoLWNoaWxkKG4rMiksXG4udWstZ3JpZC1kaXZpZGVyID4gW2NsYXNzKj0ndWstd2lkdGgtNC0nXTpudGgtY2hpbGQobisyKSxcbi51ay1ncmlkLWRpdmlkZXIgPiBbY2xhc3MqPSd1ay13aWR0aC01LSddOm50aC1jaGlsZChuKzIpLFxuLnVrLWdyaWQtZGl2aWRlciA+IFtjbGFzcyo9J3VrLXdpZHRoLTYtJ106bnRoLWNoaWxkKG4rMiksXG4udWstZ3JpZC1kaXZpZGVyID4gW2NsYXNzKj0ndWstd2lkdGgtNy0nXTpudGgtY2hpbGQobisyKSxcbi51ay1ncmlkLWRpdmlkZXIgPiBbY2xhc3MqPSd1ay13aWR0aC04LSddOm50aC1jaGlsZChuKzIpLFxuLnVrLWdyaWQtZGl2aWRlciA+IFtjbGFzcyo9J3VrLXdpZHRoLTktJ106bnRoLWNoaWxkKG4rMikgeyBib3JkZXItbGVmdDogJGdyaWQtZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJGdyaWQtZGl2aWRlci1ib3JkZXI7IH1cblxuLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1ncmlkLWRpdmlkZXIgPiBbY2xhc3MqPSd1ay13aWR0aC1tZWRpdW0tJ106bm90KC51ay13aWR0aC1tZWRpdW0tMS0xKTpudGgtY2hpbGQobisyKSB7IGJvcmRlci1sZWZ0OiAkZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkZ3JpZC1kaXZpZGVyLWJvcmRlcjsgfVxuXG59XG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstZ3JpZC1kaXZpZGVyID4gW2NsYXNzKj0ndWstd2lkdGgtbGFyZ2UtJ106bm90KC51ay13aWR0aC1sYXJnZS0xLTEpOm50aC1jaGlsZChuKzIpIHsgYm9yZGVyLWxlZnQ6ICRncmlkLWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRncmlkLWRpdmlkZXItYm9yZGVyOyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC8qXG4gICAgICogTGFyZ2UgZ3V0dGVyXG4gICAgICovXG5cbiAgICAudWstZ3JpZC1kaXZpZGVyOm5vdCg6ZW1wdHkpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kZ3JpZC1ndXR0ZXItbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiAtJGdyaWQtZ3V0dGVyLWxhcmdlLWhvcml6b250YWw7XG4gICAgfVxuXG4gICAgLnVrLWdyaWQtZGl2aWRlciA+ICoge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRncmlkLWd1dHRlci1sYXJnZS1ob3Jpem9udGFsO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZ3JpZC1ndXR0ZXItbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICB9XG5cbiAgICAudWstZ3JpZC1kaXZpZGVyOmVtcHR5IHtcbiAgICAgICAgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLWxhcmdlLXZlcnRpY2FsO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZ3JpZC1ndXR0ZXItbGFyZ2UtdmVydGljYWw7XG4gICAgfVxuXG59XG5cbi8qXG4gKiBWZXJ0aWNhbCBkaXZpZGVyXG4gKi9cblxuLnVrLWdyaWQtZGl2aWRlcjplbXB0eSB7XG4gICAgbWFyZ2luLXRvcDogJGdyaWQtZ3V0dGVyLXZlcnRpY2FsO1xuICAgIG1hcmdpbi1ib3R0b206ICRncmlkLWd1dHRlci12ZXJ0aWNhbDtcbiAgICBib3JkZXItdG9wOiAkZ3JpZC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkZ3JpZC1kaXZpZGVyLWJvcmRlcjtcbn1cblxuLyogTWF0Y2ggcGFuZWxzIGluIGdyaWRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEJlaGF2ZSBsaWtlIGEgYmxvY2sgZWxlbWVudFxuICovXG5cbi51ay1ncmlkLW1hdGNoID4gKiB7XG4gICAgZGlzcGxheTogLW1zLWZsZXhib3g7XG4gICAgZGlzcGxheTogLXdlYmtpdC1mbGV4O1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgLyogMSAqL1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC13cmFwOiB3cmFwO1xufVxuXG4udWstZ3JpZC1tYXRjaCA+ICogPiAqIHtcbiAgICAvKiAxICovXG4gICAgLW1zLWZsZXg6IG5vbmU7XG4gICAgLXdlYmtpdC1mbGV4OiBub25lO1xuICAgIGZsZXg6IG5vbmU7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB3aWR0aDogMTAwJTtcbn1cblxuXG4vKiBFdmVuIGdyaWQgY2VsbCB3aWR0aHNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5bY2xhc3MqPSd1ay1ncmlkLXdpZHRoJ10gPiAqIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4udWstZ3JpZC13aWR0aC0xLTIgPiAqIHsgd2lkdGg6IDUwJTsgfVxuLnVrLWdyaWQtd2lkdGgtMS0zID4gKiB7IHdpZHRoOiAzMy4zMzMlOyB9XG4udWstZ3JpZC13aWR0aC0xLTQgPiAqIHsgd2lkdGg6IDI1JTsgfVxuLnVrLWdyaWQtd2lkdGgtMS01ID4gKiB7IHdpZHRoOiAyMCU7IH1cbi51ay1ncmlkLXdpZHRoLTEtNiA+ICogeyB3aWR0aDogMTYuNjY2JTsgfVxuLnVrLWdyaWQtd2lkdGgtMS0xMCA+ICogeyB3aWR0aDogMTAlOyB9XG5cbi51ay1ncmlkLXdpZHRoLWF1dG8gPiAqIHsgd2lkdGg6IGF1dG87IH1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWdyaWQtd2lkdGgtc21hbGwtMS0xID4gKiB7IHdpZHRoOiAxMDAlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtc21hbGwtMS0yID4gKiB7IHdpZHRoOiA1MCU7IH1cbiAgICAudWstZ3JpZC13aWR0aC1zbWFsbC0xLTMgPiAqIHsgd2lkdGg6IDMzLjMzMyU7IH1cbiAgICAudWstZ3JpZC13aWR0aC1zbWFsbC0xLTQgPiAqIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay1ncmlkLXdpZHRoLXNtYWxsLTEtNSA+ICogeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtc21hbGwtMS02ID4gKiB7IHdpZHRoOiAxNi42NjYlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtc21hbGwtMS0xMCA+ICogeyB3aWR0aDogMTAlOyB9XG5cbn1cblxuLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1ncmlkLXdpZHRoLW1lZGl1bS0xLTEgPiAqIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAudWstZ3JpZC13aWR0aC1tZWRpdW0tMS0yID4gKiB7IHdpZHRoOiA1MCU7IH1cbiAgICAudWstZ3JpZC13aWR0aC1tZWRpdW0tMS0zID4gKiB7IHdpZHRoOiAzMy4zMzMlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtbWVkaXVtLTEtNCA+ICogeyB3aWR0aDogMjUlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtbWVkaXVtLTEtNSA+ICogeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtbWVkaXVtLTEtNiA+ICogeyB3aWR0aDogMTYuNjY2JTsgfVxuICAgIC51ay1ncmlkLXdpZHRoLW1lZGl1bS0xLTEwID4gKiB7IHdpZHRoOiAxMCU7IH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWdyaWQtd2lkdGgtbGFyZ2UtMS0xID4gKiB7IHdpZHRoOiAxMDAlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtbGFyZ2UtMS0yID4gKiB7IHdpZHRoOiA1MCU7IH1cbiAgICAudWstZ3JpZC13aWR0aC1sYXJnZS0xLTMgPiAqIHsgd2lkdGg6IDMzLjMzMyU7IH1cbiAgICAudWstZ3JpZC13aWR0aC1sYXJnZS0xLTQgPiAqIHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay1ncmlkLXdpZHRoLWxhcmdlLTEtNSA+ICogeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtbGFyZ2UtMS02ID4gKiB7IHdpZHRoOiAxNi42NjYlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgtbGFyZ2UtMS0xMCA+ICogeyB3aWR0aDogMTAlOyB9XG5cbn1cblxuLyogTGFyZ2Ugc2NyZWVuIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC14bGFyZ2UpIHtcblxuICAgIC51ay1ncmlkLXdpZHRoLXhsYXJnZS0xLTEgPiAqIHsgd2lkdGg6IDEwMCU7IH1cbiAgICAudWstZ3JpZC13aWR0aC14bGFyZ2UtMS0yID4gKiB7IHdpZHRoOiA1MCU7IH1cbiAgICAudWstZ3JpZC13aWR0aC14bGFyZ2UtMS0zID4gKiB7IHdpZHRoOiAzMy4zMzMlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgteGxhcmdlLTEtNCA+ICogeyB3aWR0aDogMjUlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgteGxhcmdlLTEtNSA+ICogeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLWdyaWQtd2lkdGgteGxhcmdlLTEtNiA+ICogeyB3aWR0aDogMTYuNjY2JTsgfVxuICAgIC51ay1ncmlkLXdpZHRoLXhsYXJnZS0xLTEwID4gKiB7IHdpZHRoOiAxMCU7IH1cblxufVxuXG5cbi8qIFN1Yi1vYmplY3RzOiBgdWstd2lkdGgtKmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5bY2xhc3MqPSd1ay13aWR0aCddIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG4vKlxuICogV2lkdGhzXG4gKi9cblxuLyogV2hvbGUgKi9cbi51ay13aWR0aC0xLTEgeyB3aWR0aDogMTAwJTsgfVxuXG4vKiBIYWx2ZXMgKi9cbi51ay13aWR0aC0xLTIsXG4udWstd2lkdGgtMi00LFxuLnVrLXdpZHRoLTMtNixcbi51ay13aWR0aC01LTEwIHsgd2lkdGg6IDUwJTsgfVxuXG4vKiBUaGlyZHMgKi9cbi51ay13aWR0aC0xLTMsXG4udWstd2lkdGgtMi02IHsgd2lkdGg6IDMzLjMzMyU7IH1cbi51ay13aWR0aC0yLTMsXG4udWstd2lkdGgtNC02IHsgd2lkdGg6IDY2LjY2NiU7IH1cblxuLyogUXVhcnRlcnMgKi9cbi51ay13aWR0aC0xLTQgeyB3aWR0aDogMjUlOyB9XG4udWstd2lkdGgtMy00IHsgd2lkdGg6IDc1JTsgfVxuXG4vKiBGaWZ0aHMgKi9cbi51ay13aWR0aC0xLTUsXG4udWstd2lkdGgtMi0xMCB7IHdpZHRoOiAyMCU7IH1cbi51ay13aWR0aC0yLTUsXG4udWstd2lkdGgtNC0xMCB7IHdpZHRoOiA0MCU7IH1cbi51ay13aWR0aC0zLTUsXG4udWstd2lkdGgtNi0xMCB7IHdpZHRoOiA2MCU7IH1cbi51ay13aWR0aC00LTUsXG4udWstd2lkdGgtOC0xMCB7IHdpZHRoOiA4MCU7IH1cblxuLyogU2l4dGhzICovXG4udWstd2lkdGgtMS02IHsgd2lkdGg6IDE2LjY2NiU7IH1cbi51ay13aWR0aC01LTYgeyB3aWR0aDogODMuMzMzJTsgfVxuXG4vKiBUZW50aHMgKi9cbi51ay13aWR0aC0xLTEwIHsgd2lkdGg6IDEwJTsgfVxuLnVrLXdpZHRoLTMtMTAgeyB3aWR0aDogMzAlOyB9XG4udWstd2lkdGgtNy0xMCB7IHdpZHRoOiA3MCU7IH1cbi51ay13aWR0aC05LTEwIHsgd2lkdGg6IDkwJTsgfVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXNtYWxsKSB7XG5cbiAgICAvKiBXaG9sZSAqL1xuICAgIC51ay13aWR0aC1zbWFsbC0xLTEgeyB3aWR0aDogMTAwJTsgfVxuXG4gICAgLyogSGFsdmVzICovXG4gICAgLnVrLXdpZHRoLXNtYWxsLTEtMixcbiAgICAudWstd2lkdGgtc21hbGwtMi00LFxuICAgIC51ay13aWR0aC1zbWFsbC0zLTYsXG4gICAgLnVrLXdpZHRoLXNtYWxsLTUtMTAgeyB3aWR0aDogNTAlOyB9XG5cbiAgICAvKiBUaGlyZHMgKi9cbiAgICAudWstd2lkdGgtc21hbGwtMS0zLFxuICAgIC51ay13aWR0aC1zbWFsbC0yLTYgeyB3aWR0aDogMzMuMzMzJTsgfVxuICAgIC51ay13aWR0aC1zbWFsbC0yLTMsXG4gICAgLnVrLXdpZHRoLXNtYWxsLTQtNiB7IHdpZHRoOiA2Ni42NjYlOyB9XG5cbiAgICAvKiBRdWFydGVycyAqL1xuICAgIC51ay13aWR0aC1zbWFsbC0xLTQgeyB3aWR0aDogMjUlOyB9XG4gICAgLnVrLXdpZHRoLXNtYWxsLTMtNCB7IHdpZHRoOiA3NSU7IH1cblxuICAgIC8qIEZpZnRocyAqL1xuICAgIC51ay13aWR0aC1zbWFsbC0xLTUsXG4gICAgLnVrLXdpZHRoLXNtYWxsLTItMTAgeyB3aWR0aDogMjAlOyB9XG4gICAgLnVrLXdpZHRoLXNtYWxsLTItNSxcbiAgICAudWstd2lkdGgtc21hbGwtNC0xMCB7IHdpZHRoOiA0MCU7IH1cbiAgICAudWstd2lkdGgtc21hbGwtMy01LFxuICAgIC51ay13aWR0aC1zbWFsbC02LTEwIHsgd2lkdGg6IDYwJTsgfVxuICAgIC51ay13aWR0aC1zbWFsbC00LTUsXG4gICAgLnVrLXdpZHRoLXNtYWxsLTgtMTAgeyB3aWR0aDogODAlOyB9XG5cbiAgICAvKiBTaXh0aHMgKi9cbiAgICAudWstd2lkdGgtc21hbGwtMS02IHsgd2lkdGg6IDE2LjY2NiU7IH1cbiAgICAudWstd2lkdGgtc21hbGwtNS02IHsgd2lkdGg6IDgzLjMzMyU7IH1cblxuICAgIC8qIFRlbnRocyAqL1xuICAgIC51ay13aWR0aC1zbWFsbC0xLTEwIHsgd2lkdGg6IDEwJTsgfVxuICAgIC51ay13aWR0aC1zbWFsbC0zLTEwIHsgd2lkdGg6IDMwJTsgfVxuICAgIC51ay13aWR0aC1zbWFsbC03LTEwIHsgd2lkdGg6IDcwJTsgfVxuICAgIC51ay13aWR0aC1zbWFsbC05LTEwIHsgd2lkdGg6IDkwJTsgfVxuXG59XG5cbi8qIFRhYmxldCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAvKiBXaG9sZSAqL1xuICAgIC51ay13aWR0aC1tZWRpdW0tMS0xIHsgd2lkdGg6IDEwMCU7IH1cblxuICAgIC8qIEhhbHZlcyAqL1xuICAgIC51ay13aWR0aC1tZWRpdW0tMS0yLFxuICAgIC51ay13aWR0aC1tZWRpdW0tMi00LFxuICAgIC51ay13aWR0aC1tZWRpdW0tMy02LFxuICAgIC51ay13aWR0aC1tZWRpdW0tNS0xMCB7IHdpZHRoOiA1MCU7IH1cblxuICAgIC8qIFRoaXJkcyAqL1xuICAgIC51ay13aWR0aC1tZWRpdW0tMS0zLFxuICAgIC51ay13aWR0aC1tZWRpdW0tMi02IHsgd2lkdGg6IDMzLjMzMyU7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtLTItMyxcbiAgICAudWstd2lkdGgtbWVkaXVtLTQtNiB7IHdpZHRoOiA2Ni42NjYlOyB9XG5cbiAgICAvKiBRdWFydGVycyAqL1xuICAgIC51ay13aWR0aC1tZWRpdW0tMS00IHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay13aWR0aC1tZWRpdW0tMy00IHsgd2lkdGg6IDc1JTsgfVxuXG4gICAgLyogRmlmdGhzICovXG4gICAgLnVrLXdpZHRoLW1lZGl1bS0xLTUsXG4gICAgLnVrLXdpZHRoLW1lZGl1bS0yLTEwIHsgd2lkdGg6IDIwJTsgfVxuICAgIC51ay13aWR0aC1tZWRpdW0tMi01LFxuICAgIC51ay13aWR0aC1tZWRpdW0tNC0xMCB7IHdpZHRoOiA0MCU7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtLTMtNSxcbiAgICAudWstd2lkdGgtbWVkaXVtLTYtMTAgeyB3aWR0aDogNjAlOyB9XG4gICAgLnVrLXdpZHRoLW1lZGl1bS00LTUsXG4gICAgLnVrLXdpZHRoLW1lZGl1bS04LTEwIHsgd2lkdGg6IDgwJTsgfVxuXG4gICAgLyogU2l4dGhzICovXG4gICAgLnVrLXdpZHRoLW1lZGl1bS0xLTYgeyB3aWR0aDogMTYuNjY2JTsgfVxuICAgIC51ay13aWR0aC1tZWRpdW0tNS02IHsgd2lkdGg6IDgzLjMzMyU7IH1cblxuICAgIC8qIFRlbnRocyAqL1xuICAgIC51ay13aWR0aC1tZWRpdW0tMS0xMCB7IHdpZHRoOiAxMCU7IH1cbiAgICAudWstd2lkdGgtbWVkaXVtLTMtMTAgeyB3aWR0aDogMzAlOyB9XG4gICAgLnVrLXdpZHRoLW1lZGl1bS03LTEwIHsgd2lkdGg6IDcwJTsgfVxuICAgIC51ay13aWR0aC1tZWRpdW0tOS0xMCB7IHdpZHRoOiA5MCU7IH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLyogV2hvbGUgKi9cbiAgICAudWstd2lkdGgtbGFyZ2UtMS0xIHsgd2lkdGg6IDEwMCU7IH1cblxuICAgIC8qIEhhbHZlcyAqL1xuICAgIC51ay13aWR0aC1sYXJnZS0xLTIsXG4gICAgLnVrLXdpZHRoLWxhcmdlLTItNCxcbiAgICAudWstd2lkdGgtbGFyZ2UtMy02LFxuICAgIC51ay13aWR0aC1sYXJnZS01LTEwIHsgd2lkdGg6IDUwJTsgfVxuXG4gICAgLyogVGhpcmRzICovXG4gICAgLnVrLXdpZHRoLWxhcmdlLTEtMyxcbiAgICAudWstd2lkdGgtbGFyZ2UtMi02IHsgd2lkdGg6IDMzLjMzMyU7IH1cbiAgICAudWstd2lkdGgtbGFyZ2UtMi0zLFxuICAgIC51ay13aWR0aC1sYXJnZS00LTYgeyB3aWR0aDogNjYuNjY2JTsgfVxuXG4gICAgLyogUXVhcnRlcnMgKi9cbiAgICAudWstd2lkdGgtbGFyZ2UtMS00IHsgd2lkdGg6IDI1JTsgfVxuICAgIC51ay13aWR0aC1sYXJnZS0zLTQgeyB3aWR0aDogNzUlOyB9XG5cbiAgICAvKiBGaWZ0aHMgKi9cbiAgICAudWstd2lkdGgtbGFyZ2UtMS01LFxuICAgIC51ay13aWR0aC1sYXJnZS0yLTEwIHsgd2lkdGg6IDIwJTsgfVxuICAgIC51ay13aWR0aC1sYXJnZS0yLTUsXG4gICAgLnVrLXdpZHRoLWxhcmdlLTQtMTAgeyB3aWR0aDogNDAlOyB9XG4gICAgLnVrLXdpZHRoLWxhcmdlLTMtNSxcbiAgICAudWstd2lkdGgtbGFyZ2UtNi0xMCB7IHdpZHRoOiA2MCU7IH1cbiAgICAudWstd2lkdGgtbGFyZ2UtNC01LFxuICAgIC51ay13aWR0aC1sYXJnZS04LTEwIHsgd2lkdGg6IDgwJTsgfVxuXG4gICAgLyogU2l4dGhzICovXG4gICAgLnVrLXdpZHRoLWxhcmdlLTEtNiB7IHdpZHRoOiAxNi42NjYlOyB9XG4gICAgLnVrLXdpZHRoLWxhcmdlLTUtNiB7IHdpZHRoOiA4My4zMzMlOyB9XG5cbiAgICAvKiBUZW50aHMgKi9cbiAgICAudWstd2lkdGgtbGFyZ2UtMS0xMCB7IHdpZHRoOiAxMCU7IH1cbiAgICAudWstd2lkdGgtbGFyZ2UtMy0xMCB7IHdpZHRoOiAzMCU7IH1cbiAgICAudWstd2lkdGgtbGFyZ2UtNy0xMCB7IHdpZHRoOiA3MCU7IH1cbiAgICAudWstd2lkdGgtbGFyZ2UtOS0xMCB7IHdpZHRoOiA5MCU7IH1cblxufVxuXG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsYXJnZSkge1xuXG4gICAgLyogV2hvbGUgKi9cbiAgICAudWstd2lkdGgteGxhcmdlLTEtMSB7IHdpZHRoOiAxMDAlOyB9XG5cbiAgICAvKiBIYWx2ZXMgKi9cbiAgICAudWstd2lkdGgteGxhcmdlLTEtMixcbiAgICAudWstd2lkdGgteGxhcmdlLTItNCxcbiAgICAudWstd2lkdGgteGxhcmdlLTMtNixcbiAgICAudWstd2lkdGgteGxhcmdlLTUtMTAgeyB3aWR0aDogNTAlOyB9XG5cbiAgICAvKiBUaGlyZHMgKi9cbiAgICAudWstd2lkdGgteGxhcmdlLTEtMyxcbiAgICAudWstd2lkdGgteGxhcmdlLTItNiB7IHdpZHRoOiAzMy4zMzMlOyB9XG4gICAgLnVrLXdpZHRoLXhsYXJnZS0yLTMsXG4gICAgLnVrLXdpZHRoLXhsYXJnZS00LTYgeyB3aWR0aDogNjYuNjY2JTsgfVxuXG4gICAgLyogUXVhcnRlcnMgKi9cbiAgICAudWstd2lkdGgteGxhcmdlLTEtNCB7IHdpZHRoOiAyNSU7IH1cbiAgICAudWstd2lkdGgteGxhcmdlLTMtNCB7IHdpZHRoOiA3NSU7IH1cblxuICAgIC8qIEZpZnRocyAqL1xuICAgIC51ay13aWR0aC14bGFyZ2UtMS01LFxuICAgIC51ay13aWR0aC14bGFyZ2UtMi0xMCB7IHdpZHRoOiAyMCU7IH1cbiAgICAudWstd2lkdGgteGxhcmdlLTItNSxcbiAgICAudWstd2lkdGgteGxhcmdlLTQtMTAgeyB3aWR0aDogNDAlOyB9XG4gICAgLnVrLXdpZHRoLXhsYXJnZS0zLTUsXG4gICAgLnVrLXdpZHRoLXhsYXJnZS02LTEwIHsgd2lkdGg6IDYwJTsgfVxuICAgIC51ay13aWR0aC14bGFyZ2UtNC01LFxuICAgIC51ay13aWR0aC14bGFyZ2UtOC0xMCB7IHdpZHRoOiA4MCU7IH1cblxuICAgIC8qIFNpeHRocyAqL1xuICAgIC51ay13aWR0aC14bGFyZ2UtMS02IHsgd2lkdGg6IDE2LjY2NiU7IH1cbiAgICAudWstd2lkdGgteGxhcmdlLTUtNiB7IHdpZHRoOiA4My4zMzMlOyB9XG5cbiAgICAvKiBUZW50aHMgKi9cbiAgICAudWstd2lkdGgteGxhcmdlLTEtMTAgeyB3aWR0aDogMTAlOyB9XG4gICAgLnVrLXdpZHRoLXhsYXJnZS0zLTEwIHsgd2lkdGg6IDMwJTsgfVxuICAgIC51ay13aWR0aC14bGFyZ2UtNy0xMCB7IHdpZHRoOiA3MCU7IH1cbiAgICAudWstd2lkdGgteGxhcmdlLTktMTAgeyB3aWR0aDogOTAlOyB9XG5cbn1cblxuXG4vKiBTdWItb2JqZWN0OiBgdWstcHVzaC0qYCBhbmQgYHVrLXB1bGwtKmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogU291cmNlIG9yZGVyaW5nXG4gKiBXb3JrcyBvbmx5IHdpdGggYHVrLXdpZHRoLW1lZGl1bS0qYFxuICovXG5cbi8qIFRhYmxldCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICBbY2xhc3MqPSd1ay1wdXNoLSddLFxuICAgIFtjbGFzcyo9J3VrLXB1bGwtJ10geyBwb3NpdGlvbjogcmVsYXRpdmU7IH1cblxuICAgIC8qXG4gICAgICogUHVzaFxuICAgICAqL1xuXG4gICAgLyogSGFsdmVzICovXG4gICAgLnVrLXB1c2gtMS0yLFxuICAgIC51ay1wdXNoLTItNCxcbiAgICAudWstcHVzaC0zLTYsXG4gICAgLnVrLXB1c2gtNS0xMCB7IGxlZnQ6IDUwJTsgfVxuXG4gICAgLyogVGhpcmRzICovXG4gICAgLnVrLXB1c2gtMS0zLFxuICAgIC51ay1wdXNoLTItNiB7IGxlZnQ6IDMzLjMzMyU7IH1cbiAgICAudWstcHVzaC0yLTMsXG4gICAgLnVrLXB1c2gtNC02IHsgbGVmdDogNjYuNjY2JTsgfVxuXG4gICAgLyogUXVhcnRlcnMgKi9cbiAgICAudWstcHVzaC0xLTQgeyBsZWZ0OiAyNSU7IH1cbiAgICAudWstcHVzaC0zLTQgeyBsZWZ0OiA3NSU7IH1cblxuICAgIC8qIEZpZnRocyAqL1xuICAgIC51ay1wdXNoLTEtNSxcbiAgICAudWstcHVzaC0yLTEwIHsgbGVmdDogMjAlOyB9XG4gICAgLnVrLXB1c2gtMi01LFxuICAgIC51ay1wdXNoLTQtMTAgeyBsZWZ0OiA0MCU7IH1cbiAgICAudWstcHVzaC0zLTUsXG4gICAgLnVrLXB1c2gtNi0xMCB7IGxlZnQ6IDYwJTsgfVxuICAgIC51ay1wdXNoLTQtNSxcbiAgICAudWstcHVzaC04LTEwIHsgbGVmdDogODAlOyB9XG5cbiAgICAvKiBTaXh0aHMgKi9cbiAgICAudWstcHVzaC0xLTYgeyBsZWZ0OiAxNi42NjYlOyB9XG4gICAgLnVrLXB1c2gtNS02IHsgbGVmdDogODMuMzMzJTsgfVxuXG4gICAgLyogVGVudGhzICovXG4gICAgLnVrLXB1c2gtMS0xMCB7IGxlZnQ6IDEwJTsgfVxuICAgIC51ay1wdXNoLTMtMTAgeyBsZWZ0OiAzMCU7IH1cbiAgICAudWstcHVzaC03LTEwIHsgbGVmdDogNzAlOyB9XG4gICAgLnVrLXB1c2gtOS0xMCB7IGxlZnQ6IDkwJTsgfVxuXG4gICAgLypcbiAgICAgKiBQdWxsXG4gICAgICovXG5cbiAgICAgLyogSGFsdmVzICovXG4gICAgIC51ay1wdWxsLTEtMixcbiAgICAgLnVrLXB1bGwtMi00LFxuICAgICAudWstcHVsbC0zLTYsXG4gICAgIC51ay1wdWxsLTUtMTAgeyBsZWZ0OiAtNTAlOyB9XG5cbiAgICAgLyogVGhpcmRzICovXG4gICAgIC51ay1wdWxsLTEtMyxcbiAgICAgLnVrLXB1bGwtMi02IHsgbGVmdDogLTMzLjMzMyU7IH1cbiAgICAgLnVrLXB1bGwtMi0zLFxuICAgICAudWstcHVsbC00LTYgeyBsZWZ0OiAtNjYuNjY2JTsgfVxuXG4gICAgIC8qIFF1YXJ0ZXJzICovXG4gICAgIC51ay1wdWxsLTEtNCB7IGxlZnQ6IC0yNSU7IH1cbiAgICAgLnVrLXB1bGwtMy00IHsgbGVmdDogLTc1JTsgfVxuXG4gICAgIC8qIEZpZnRocyAqL1xuICAgICAudWstcHVsbC0xLTUsXG4gICAgIC51ay1wdWxsLTItMTAgeyBsZWZ0OiAtMjAlOyB9XG4gICAgIC51ay1wdWxsLTItNSxcbiAgICAgLnVrLXB1bGwtNC0xMCB7IGxlZnQ6IC00MCU7IH1cbiAgICAgLnVrLXB1bGwtMy01LFxuICAgICAudWstcHVsbC02LTEwIHsgbGVmdDogLTYwJTsgfVxuICAgICAudWstcHVsbC00LTUsXG4gICAgIC51ay1wdWxsLTgtMTAgeyBsZWZ0OiAtODAlOyB9XG5cbiAgICAgLyogU2l4dGhzICovXG4gICAgIC51ay1wdWxsLTEtNiB7IGxlZnQ6IC0xNi42NjYlOyB9XG4gICAgIC51ay1wdWxsLTUtNiB7IGxlZnQ6IC04My4zMzMlOyB9XG5cbiAgICAgLyogVGVudGhzICovXG4gICAgIC51ay1wdWxsLTEtMTAgeyBsZWZ0OiAtMTAlOyB9XG4gICAgIC51ay1wdWxsLTMtMTAgeyBsZWZ0OiAtMzAlOyB9XG4gICAgIC51ay1wdWxsLTctMTAgeyBsZWZ0OiAtNzAlOyB9XG4gICAgIC51ay1wdWxsLTktMTAgeyBsZWZ0OiAtOTAlOyB9XG5cbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stZ3JpZC1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWdyaWQtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgUGFuZWxcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgZm9yIHJldXNhYmxlIGNvbnRlbnQgYXJlYXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1wYW5lbGBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1wYW5lbC10aXRsZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhbmVsLWJhZGdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcGFuZWwtdGVhc2VyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcGFuZWwtYm9keWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1wYW5lbC1ib3hgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYW5lbC1ib3gtaG92ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYW5lbC1ib3gtcHJpbWFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhbmVsLWJveC1wcmltYXJ5LWhvdmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcGFuZWwtYm94LXNlY29uZGFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhbmVsLWJveC1zZWNvbmRhcnktaG92ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYW5lbC1ob3ZlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhbmVsLWhlYWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhbmVsLXNwYWNlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcGFuZWwtZGl2aWRlcmBcbi8vXG4vLyBVc2VzOiAgICAgICAgICAgIE5hdjogYHVrLW5hdi1zaWRlYFxuLy9cbi8vIFVzZWQgYnk6ICAgICAgICAgRHJvcGRvd25cbi8vICAgICAgICAgICAgICAgICAgT2ZmLWNhbnZhc1xuLy8gICAgICAgICAgICAgICAgICBHcmlkXG4vL1xuLy8gTWFya3VwOlxuLy9cbi8vIDwhLS0gdWstcGFuZWwgLS0+XG4vLyA8ZGl2IGNsYXNzPVwidWstcGFuZWxcIj5cbi8vICAgICA8ZGl2IGNsYXNzPVwidWstcGFuZWwtYmFkZ2UgdWstYmFkZ2VcIj48L2Rpdj5cbi8vICAgICA8aDMgY2xhc3M9XCJ1ay1wYW5lbC10aXRsZVwiPjwvaDM+XG4vLyAgICAgPHA+PC9wPlxuLy8gPC9kaXY+XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHBhbmVsLXRpdGxlLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtdGl0bGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcbiRwYW5lbC10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAyNHB4ICFkZWZhdWx0O1xuJHBhbmVsLXRpdGxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcbiRwYW5lbC10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJHBhbmVsLXRpdGxlLXRleHQtdHJhbnNmb3JtOiAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG5cbiRwYW5lbC10ZWFzZXItbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgICAkcGFuZWwtdGl0bGUtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcblxuJHBhbmVsLWJveC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtYm94LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwYW5lbC1ib3gtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJHBhbmVsLWJveC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRwYW5lbC1ib3gtY29sb3IgIWRlZmF1bHQ7XG4kcGFuZWwtYm94LXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRwYW5lbC1ib3gtYmFkZ2UtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJHBhbmVsLWJveC1iYWRnZS1yaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICRwYW5lbC1ib3gtYmFkZ2UtdG9wICFkZWZhdWx0O1xuJHBhbmVsLWJveC10ZWFzZXItbWFyZ2luOiAgICAgICAgICAgICAgICAgICAgICAgIC0kcGFuZWwtYm94LXBhZGRpbmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1ib3gtcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAjZWJmN2ZkICFkZWZhdWx0O1xuJHBhbmVsLWJveC1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICMyZDcwOTEgIWRlZmF1bHQ7XG4kcGFuZWwtYm94LXByaW1hcnktaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgJHBhbmVsLWJveC1wcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHBhbmVsLWJveC1wcmltYXJ5LXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICMyZDcwOTEgIWRlZmF1bHQ7XG5cbiRwYW5lbC1ib3gtc2Vjb25kYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAjZWVlICFkZWZhdWx0O1xuJHBhbmVsLWJveC1zZWNvbmRhcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kcGFuZWwtYm94LXNlY29uZGFyeS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgJHBhbmVsLWJveC1zZWNvbmRhcnktY29sb3IgIWRlZmF1bHQ7XG4kcGFuZWwtYm94LXNlY29uZGFyeS10aXRsZS1jb2xvcjogICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcblxuJHBhbmVsLWhvdmVyLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRwYW5lbC1ob3Zlci1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHBhbmVsLWhvdmVyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kcGFuZWwtaG92ZXItYmFkZ2UtdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRwYW5lbC1ob3Zlci1iYWRnZS1yaWdodDogICAgICAgICAgICAgICAgICAgICAgICAkcGFuZWwtaG92ZXItYmFkZ2UtdG9wICFkZWZhdWx0O1xuJHBhbmVsLWhvdmVyLXRlYXNlci1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAgIC0kcGFuZWwtaG92ZXItcGFkZGluZyAhZGVmYXVsdDtcblxuJHBhbmVsLWhlYWRlci10aXRsZS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGVyLXRpdGxlLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1oZWFkZXItdGl0bGUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGVyLXRpdGxlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcblxuJHBhbmVsLXNwYWNlLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG5cbiRwYW5lbC1kaXZpZGVyLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAyNXB4ICFkZWZhdWx0O1xuJHBhbmVsLWRpdmlkZXItZ3V0dGVyLWxhcmdlOiAgICAgICAgICAgICAgICAgICAgIDM1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kaXZpZGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG5cbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkcGFuZWwtYm94LXBhZGRpbmcgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFBhbmVsXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIE5lZWRlZCBmb3IgYGFgIGVsZW1lbnRzXG4gKiAyLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dCBmb3IgYmFkZ2VzXG4gKi9cblxuLnVrLXBhbmVsIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLypcbiAqIEFsbG93IHBhbmVscyB0byBiZSBhbmNob3JzXG4gKi9cblxuLnVrLXBhbmVsLFxuLnVrLXBhbmVsOmhvdmVyIHsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyB9XG5cbi8qXG4gKiBNaWNybyBjbGVhcmZpeCB0byBtYWtlIHBhbmVscyBtb3JlIHJvYnVzdFxuICovXG5cbi51ay1wYW5lbDpiZWZvcmUsXG4udWstcGFuZWw6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG59XG5cbi51ay1wYW5lbDphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGQgaWYgbm90IGB1ay13aWRnZXQtdGl0bGVgXG4gKi9cblxuLnVrLXBhbmVsID4gOm5vdCgudWstcGFuZWwtdGl0bGUpOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cblxuLyogU3ViLW9iamVjdDogYHVrLXBhbmVsLXRpdGxlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYW5lbC10aXRsZSB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAkcGFuZWwtdGl0bGUtbWFyZ2luLWJvdHRvbTtcbiAgICBmb250LXNpemU6ICRwYW5lbC10aXRsZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRwYW5lbC10aXRsZS1saW5lLWhlaWdodDtcbiAgICBmb250LXdlaWdodDogJHBhbmVsLXRpdGxlLWZvbnQtd2VpZ2h0O1xuICAgIHRleHQtdHJhbnNmb3JtOiAkcGFuZWwtdGl0bGUtdGV4dC10cmFuc2Zvcm07XG4gICAgY29sb3I6ICRwYW5lbC10aXRsZS1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXBhbmVsLXRpdGxlKCk7XG59XG5cblxuLyogU3ViLW9iamVjdDogYHVrLXBhbmVsLWJhZGdlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYW5lbC1iYWRnZSB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICB6LWluZGV4OiAxO1xuICAgIEBpbmNsdWRlIGhvb2stcGFuZWwtYmFkZ2UoKTtcbn1cblxuLyogU3ViLW9iamVjdDogYHVrLXBhbmVsLXRlYXNlcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcGFuZWwtdGVhc2VyIHsgbWFyZ2luLWJvdHRvbTogJHBhbmVsLXRlYXNlci1tYXJnaW4tYm90dG9tOyB9XG5cblxuLyogU3ViLW9iamVjdDogYHVrLXBhbmVsLWJvZHlgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBhbmVsLWJvZHkgeyBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nOyB9XG5cblxuLyogTW9kaWZpZXI6IGB1ay1wYW5lbC1ib3hgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBhbmVsLWJveCB7XG4gICAgcGFkZGluZzogJHBhbmVsLWJveC1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRwYW5lbC1ib3gtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHBhbmVsLWJveC1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXBhbmVsLWJveCgpO1xufVxuXG4udWstcGFuZWwtYm94LWhvdmVyOmhvdmVyIHtcbiAgICBjb2xvcjogJHBhbmVsLWJveC1ob3Zlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXBhbmVsLWJveC1ob3ZlcigpO1xufVxuXG4udWstcGFuZWwtYm94IC51ay1wYW5lbC10aXRsZSB7IGNvbG9yOiAkcGFuZWwtYm94LXRpdGxlLWNvbG9yOyB9XG5cbi51ay1wYW5lbC1ib3ggLnVrLXBhbmVsLWJhZGdlIHtcbiAgICB0b3A6ICRwYW5lbC1ib3gtYmFkZ2UtdG9wO1xuICAgIHJpZ2h0OiAkcGFuZWwtYm94LWJhZGdlLXJpZ2h0O1xufVxuXG4udWstcGFuZWwtYm94ID4gLnVrLXBhbmVsLXRlYXNlciB7XG4gICAgbWFyZ2luLXRvcDogJHBhbmVsLWJveC10ZWFzZXItbWFyZ2luO1xuICAgIG1hcmdpbi1sZWZ0OiAkcGFuZWwtYm94LXRlYXNlci1tYXJnaW47XG4gICAgbWFyZ2luLXJpZ2h0OiAkcGFuZWwtYm94LXRlYXNlci1tYXJnaW47XG59XG5cbi8qXG4gKiBOYXYgaW4gcGFuZWxcbiAqL1xuXG4udWstcGFuZWwtYm94ID4gLnVrLW5hdi1zaWRlIHsgbWFyZ2luOiAwICgtJHBhbmVsLWJveC1wYWRkaW5nKTsgfVxuXG4vKlxuICogU3ViLW1vZGlmaWVyOiBgdWstcGFuZWwtYm94LXByaW1hcnlgXG4gKi9cblxuLnVrLXBhbmVsLWJveC1wcmltYXJ5IHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFuZWwtYm94LXByaW1hcnktYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHBhbmVsLWJveC1wcmltYXJ5LWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stcGFuZWwtYm94LXByaW1hcnkoKTtcbn1cblxuLnVrLXBhbmVsLWJveC1wcmltYXJ5LWhvdmVyOmhvdmVyIHtcbiAgICBjb2xvcjogJHBhbmVsLWJveC1wcmltYXJ5LWhvdmVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stcGFuZWwtYm94LXByaW1hcnktaG92ZXIoKTtcbn1cblxuLnVrLXBhbmVsLWJveC1wcmltYXJ5IC51ay1wYW5lbC10aXRsZSB7IGNvbG9yOiAkcGFuZWwtYm94LXByaW1hcnktdGl0bGUtY29sb3I7IH1cblxuLypcbiAqIFN1Yi1tb2RpZmllcjogYHVrLXBhbmVsLWJveC1zZWNvbmRhcnlgXG4gKi9cblxuLnVrLXBhbmVsLWJveC1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1ib3gtc2Vjb25kYXJ5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRwYW5lbC1ib3gtc2Vjb25kYXJ5LWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stcGFuZWwtYm94LXNlY29uZGFyeSgpO1xufVxuXG4udWstcGFuZWwtYm94LXNlY29uZGFyeS1ob3Zlcjpob3ZlciB7XG4gICAgY29sb3I6ICRwYW5lbC1ib3gtc2Vjb25kYXJ5LWhvdmVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stcGFuZWwtYm94LXNlY29uZGFyeS1ob3ZlcigpO1xufVxuXG4udWstcGFuZWwtYm94LXNlY29uZGFyeSAudWstcGFuZWwtdGl0bGUgeyBjb2xvcjogJHBhbmVsLWJveC1zZWNvbmRhcnktdGl0bGUtY29sb3I7IH1cblxuXG4vKiBNb2RpZmllcjogYHVrLXBhbmVsLWhvdmVyYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYW5lbC1ob3ZlciB7XG4gICAgcGFkZGluZzogJHBhbmVsLWhvdmVyLXBhZGRpbmc7XG4gICAgY29sb3I6ICRwYW5lbC1ob3Zlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXBhbmVsLWhvdmVyKCk7XG59XG5cbi51ay1wYW5lbC1ob3Zlcjpob3ZlciB7XG4gICAgYmFja2dyb3VuZDogJHBhbmVsLWhvdmVyLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRwYW5lbC1ob3Zlci1ob3Zlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXBhbmVsLWhvdmVyLWhvdmVyKCk7XG59XG5cbi51ay1wYW5lbC1ob3ZlciAudWstcGFuZWwtYmFkZ2Uge1xuICAgIHRvcDogJHBhbmVsLWhvdmVyLWJhZGdlLXRvcDtcbiAgICByaWdodDogJHBhbmVsLWhvdmVyLWJhZGdlLXJpZ2h0O1xufVxuXG4udWstcGFuZWwtaG92ZXIgPiAudWstcGFuZWwtdGVhc2VyIHtcbiAgICBtYXJnaW4tdG9wOiAkcGFuZWwtaG92ZXItdGVhc2VyLW1hcmdpbjtcbiAgICBtYXJnaW4tbGVmdDogJHBhbmVsLWhvdmVyLXRlYXNlci1tYXJnaW47XG4gICAgbWFyZ2luLXJpZ2h0OiAkcGFuZWwtaG92ZXItdGVhc2VyLW1hcmdpbjtcbn1cblxuXG4vKiBNb2RpZmllcjogYHVrLXBhbmVsLWhlYWRlcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcGFuZWwtaGVhZGVyIC51ay1wYW5lbC10aXRsZSB7XG4gICAgcGFkZGluZy1ib3R0b206ICRwYW5lbC1oZWFkZXItdGl0bGUtcGFkZGluZztcbiAgICBib3JkZXItYm90dG9tOiAkcGFuZWwtaGVhZGVyLXRpdGxlLWJvcmRlci13aWR0aCBzb2xpZCAkcGFuZWwtaGVhZGVyLXRpdGxlLWJvcmRlcjtcbiAgICBjb2xvcjogJHBhbmVsLWhlYWRlci10aXRsZS1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXBhbmVsLWhlYWRlcigpO1xufVxuXG5cbi8qIE1vZGlmaWVyOiBgdWstcGFuZWwtc3BhY2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBhbmVsLXNwYWNlIHsgcGFkZGluZzogJHBhbmVsLXNwYWNlLXBhZGRpbmc7IH1cblxuLnVrLXBhbmVsLXNwYWNlIC51ay1wYW5lbC1iYWRnZSB7XG4gICAgdG9wOiAkcGFuZWwtc3BhY2UtcGFkZGluZztcbiAgICByaWdodDogJHBhbmVsLXNwYWNlLXBhZGRpbmc7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay1wYW5lbC1kaXZpZGVyYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYW5lbCArIC51ay1wYW5lbC1kaXZpZGVyIHsgbWFyZ2luLXRvcDogKCRwYW5lbC1kaXZpZGVyLWd1dHRlciAqIDIpICFpbXBvcnRhbnQ7IH1cblxuLnVrLXBhbmVsICsgLnVrLXBhbmVsLWRpdmlkZXI6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0oJHBhbmVsLWRpdmlkZXItZ3V0dGVyKTtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIGJvcmRlci10b3A6ICRwYW5lbC1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkcGFuZWwtZGl2aWRlci1ib3JkZXI7XG59XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAudWstcGFuZWwgKyAudWstcGFuZWwtZGl2aWRlciB7IG1hcmdpbi10b3A6ICgkcGFuZWwtZGl2aWRlci1ndXR0ZXItbGFyZ2UgKiAyKSAhaW1wb3J0YW50OyB9XG4gICAgLnVrLXBhbmVsICsgLnVrLXBhbmVsLWRpdmlkZXI6YmVmb3JlIHsgdG9wOiAtKCRwYW5lbC1kaXZpZGVyLWd1dHRlci1sYXJnZSk7IH1cblxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1wYW5lbC1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLXBhbmVsLXRpdGxlKCl7fVxuLy8gQG1peGluIGhvb2stcGFuZWwtYmFkZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1wYW5lbC1ib3goKXt9XG4vLyBAbWl4aW4gaG9vay1wYW5lbC1ib3gtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1wYW5lbC1ib3gtcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLXBhbmVsLWJveC1wcmltYXJ5LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stcGFuZWwtYm94LXNlY29uZGFyeSgpe31cbi8vIEBtaXhpbiBob29rLXBhbmVsLWJveC1zZWNvbmRhcnktaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1wYW5lbC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLXBhbmVsLWhvdmVyLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stcGFuZWwtaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stcGFuZWwtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQmxvY2tcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgdG8gY3JlYXRlIGhvcml6b250YWwgbGF5b3V0IGJsb2Nrc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWJsb2NrYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWJsb2NrLWxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYmxvY2stZGVmYXVsdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJsb2NrLW11dGVkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYmxvY2stcHJpbWFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJsb2NrLXNlY29uZGFyeWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYmxvY2stcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRibG9jay1wYWRkaW5nLXZlcnRpY2FsLWxhcmdlOiAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuXG4kYmxvY2stbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgJGJsb2NrLXBhZGRpbmctdmVydGljYWwgIWRlZmF1bHQ7XG4kYmxvY2stbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1tZWRpdW06ICAgICAgICAgICAgJGJsb2NrLXBhZGRpbmctdmVydGljYWwtbGFyZ2UgIWRlZmF1bHQ7XG4kYmxvY2stbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbC1sYXJnZTogICAgICAgICAgICAgMTAwcHggIWRlZmF1bHQ7XG5cbiRibG9jay1kZWZhdWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJsb2NrLW11dGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4kYmxvY2stcHJpbWFyeS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgIzAwYThlNiAhZGVmYXVsdDtcbiRibG9jay1zZWNvbmRhcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAjMjIyICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBCbG9ja1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1ibG9jayB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZy10b3A6ICRibG9jay1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkYmxvY2stcGFkZGluZy12ZXJ0aWNhbDtcbiAgICBAaW5jbHVkZSBob29rLWJsb2NrKCk7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstYmxvY2sge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGJsb2NrLXBhZGRpbmctdmVydGljYWwtbGFyZ2U7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkYmxvY2stcGFkZGluZy12ZXJ0aWNhbC1sYXJnZTtcbiAgICB9XG5cbn1cblxuLypcbiAqIE1pY3JvIGNsZWFyZml4IHRvIG1ha2UgYmxvY2tzIG1vcmUgcm9idXN0XG4gKi9cblxuLnVrLWJsb2NrOmJlZm9yZSxcbi51ay1ibG9jazphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnVrLWJsb2NrOmFmdGVyIHsgY2xlYXI6IGJvdGg7IH1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1ibG9jayA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFBhZGRpbmcgTW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTGFyZ2UgcGFkZGluZ1xuICovXG5cbi51ay1ibG9jay1sYXJnZSB7XG4gICAgcGFkZGluZy10b3A6ICRibG9jay1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIHBhZGRpbmctYm90dG9tOiAkYmxvY2stbGFyZ2UtcGFkZGluZy12ZXJ0aWNhbDtcbn1cblxuLyogVGFibGV0cyBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstYmxvY2stbGFyZ2Uge1xuICAgICAgICBwYWRkaW5nLXRvcDogJGJsb2NrLWxhcmdlLXBhZGRpbmctdmVydGljYWwtbWVkaXVtO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGJsb2NrLWxhcmdlLXBhZGRpbmctdmVydGljYWwtbWVkaXVtO1xuICAgIH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWJsb2NrLWxhcmdlIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRibG9jay1sYXJnZS1wYWRkaW5nLXZlcnRpY2FsLWxhcmdlO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJGJsb2NrLWxhcmdlLXBhZGRpbmctdmVydGljYWwtbGFyZ2U7XG4gICAgfVxuXG59XG5cblxuLyogQ29sb3IgTW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRGVmYXVsdFxuICovXG5cbi51ay1ibG9jay1kZWZhdWx0IHtcbiAgICBiYWNrZ3JvdW5kOiAkYmxvY2stZGVmYXVsdC1iYWNrZ3JvdW5kO1xuICAgIEBpbmNsdWRlIGhvb2stYmxvY2stZGVmYXVsdCgpO1xufVxuXG4vKlxuICogTXV0ZWRcbiAqL1xuXG4udWstYmxvY2stbXV0ZWQge1xuICAgIGJhY2tncm91bmQ6ICRibG9jay1tdXRlZC1iYWNrZ3JvdW5kO1xuICAgIEBpbmNsdWRlIGhvb2stYmxvY2stbXV0ZWQoKTtcbn1cblxuLypcbiAqIFByaW1hcnlcbiAqL1xuXG4udWstYmxvY2stcHJpbWFyeSB7XG4gICAgYmFja2dyb3VuZDogJGJsb2NrLXByaW1hcnktYmFja2dyb3VuZDtcbiAgICBAaW5jbHVkZSBob29rLWJsb2NrLXByaW1hcnkoKTtcbn1cblxuLypcbiAqIFNlY29uZGFyeVxuICovXG5cbi51ay1ibG9jay1zZWNvbmRhcnkge1xuICAgIGJhY2tncm91bmQ6ICRibG9jay1zZWNvbmRhcnktYmFja2dyb3VuZDtcbiAgICBAaW5jbHVkZSBob29rLWJsb2NrLXNlY29uZGFyeSgpO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1ibG9jay1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWJsb2NrKCl7fVxuLy8gQG1peGluIGhvb2stYmxvY2stZGVmYXVsdCgpe31cbi8vIEBtaXhpbiBob29rLWJsb2NrLW11dGVkKCl7fVxuLy8gQG1peGluIGhvb2stYmxvY2stc2Vjb25kYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stYmxvY2stcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLWJsb2NrLW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBBcnRpY2xlXG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBhcnRpY2xlcyB3aXRoaW4geW91ciBwYWdlXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYXJ0aWNsZWBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1hcnRpY2xlLXRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYXJ0aWNsZS1tZXRhYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYXJ0aWNsZS1sZWFkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYXJ0aWNsZS1kaXZpZGVyYFxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLWFydGljbGUgLS0+XG4vLyA8ZGl2IGNsYXNzPVwidWstYXJ0aWNsZVwiPlxuLy8gICAgIDxoMSBjbGFzcz1cInVrLWFydGljbGUtdGl0bGVcIj48L2gxPlxuLy8gICAgIDxwIGNsYXNzPVwidWstYXJ0aWNsZS1tZXRhXCI+PC9wPlxuLy8gICAgIDxwIGNsYXNzPVwidWstYXJ0aWNsZS1sZWFkXCI+PC9wPlxuLy8gICAgIDxwPjwvcD5cbi8vICAgICA8aHIgY2xhc3M9XCJ1ay1hcnRpY2xlLWRpdmlkZXJcIj5cbi8vICAgICA8cD48L3A+XG4vLyA8L2Rpdj5cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kYXJ0aWNsZS1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjVweCAhZGVmYXVsdDtcblxuJGFydGljbGUtdGl0bGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgIDM2cHggIWRlZmF1bHQ7XG4kYXJ0aWNsZS10aXRsZS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgNDJweCAhZGVmYXVsdDtcbiRhcnRpY2xlLXRpdGxlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG4kYXJ0aWNsZS10aXRsZS10ZXh0LXRyYW5zZm9ybTogICAgICAgICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcblxuJGFydGljbGUtbWV0YS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG4kYXJ0aWNsZS1tZXRhLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcbiRhcnRpY2xlLW1ldGEtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4kYXJ0aWNsZS1sZWFkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRhcnRpY2xlLWxlYWQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAxOHB4ICFkZWZhdWx0O1xuJGFydGljbGUtbGVhZC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIDI0cHggIWRlZmF1bHQ7XG4kYXJ0aWNsZS1sZWFkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgbm9ybWFsICFkZWZhdWx0O1xuXG4kYXJ0aWNsZS1kaXZpZGVyLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgMjVweCAhZGVmYXVsdDtcbiRhcnRpY2xlLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBBcnRpY2xlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIE1pY3JvIGNsZWFyZml4IHRvIG1ha2UgYXJ0aWNsZXMgbW9yZSByb2J1c3RcbiAqL1xuXG4udWstYXJ0aWNsZTpiZWZvcmUsXG4udWstYXJ0aWNsZTphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnVrLWFydGljbGU6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWFydGljbGUgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLypcbiAqIFZlcnRpY2FsIGd1dHRlciBmb3IgYXJ0aWNsZXNcbiAqL1xuXG4udWstYXJ0aWNsZSArIC51ay1hcnRpY2xlIHsgbWFyZ2luLXRvcDogJGFydGljbGUtbWFyZ2luLXRvcDsgfVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLWFydGljbGUtdGl0bGVgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFydGljbGUtdGl0bGUge1xuICAgIGZvbnQtc2l6ZTogJGFydGljbGUtdGl0bGUtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkYXJ0aWNsZS10aXRsZS1saW5lLWhlaWdodDtcbiAgICBmb250LXdlaWdodDogJGFydGljbGUtdGl0bGUtZm9udC13ZWlnaHQ7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRhcnRpY2xlLXRpdGxlLXRleHQtdHJhbnNmb3JtO1xuICAgIEBpbmNsdWRlIGhvb2stYXJ0aWNsZS10aXRsZSgpO1xufVxuXG4udWstYXJ0aWNsZS10aXRsZSBhIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG59XG5cblxuLyogU3ViLW9iamVjdCBgdWstYXJ0aWNsZS1tZXRhYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hcnRpY2xlLW1ldGEge1xuICAgIGZvbnQtc2l6ZTogJGFydGljbGUtbWV0YS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRhcnRpY2xlLW1ldGEtbGluZS1oZWlnaHQ7XG4gICAgY29sb3I6ICRhcnRpY2xlLW1ldGEtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1hcnRpY2xlLW1ldGEoKTtcbn1cblxuXG4vKiBTdWItb2JqZWN0IGB1ay1hcnRpY2xlLWxlYWRgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFydGljbGUtbGVhZCB7XG4gICAgY29sb3I6ICRhcnRpY2xlLWxlYWQtY29sb3I7XG4gICAgZm9udC1zaXplOiAkYXJ0aWNsZS1sZWFkLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGFydGljbGUtbGVhZC1saW5lLWhlaWdodDtcbiAgICBmb250LXdlaWdodDogJGFydGljbGUtbGVhZC1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBob29rLWFydGljbGUtbGVhZCgpO1xufVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLWFydGljbGUtZGl2aWRlcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYXJ0aWNsZS1kaXZpZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkYXJ0aWNsZS1kaXZpZGVyLW1hcmdpbjtcbiAgICBib3JkZXItY29sb3I6ICRhcnRpY2xlLWRpdmlkZXItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGhvb2stYXJ0aWNsZS1kaXZpZGVyKCk7XG59XG5cbiogKyAudWstYXJ0aWNsZS1kaXZpZGVyIHsgbWFyZ2luLXRvcDogJGFydGljbGUtZGl2aWRlci1tYXJnaW47IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stYXJ0aWNsZS1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWFydGljbGUtdGl0bGUoKXt9XG4vLyBAbWl4aW4gaG9vay1hcnRpY2xlLW1ldGEoKXt9XG4vLyBAbWl4aW4gaG9vay1hcnRpY2xlLWxlYWQoKXt9XG4vLyBAbWl4aW4gaG9vay1hcnRpY2xlLWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1hcnRpY2xlLW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBDb21tZW50XG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBjb21tZW50IHRocmVhZHNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jb21tZW50YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWNvbW1lbnQtaGVhZGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29tbWVudC1hdmF0YXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1jb21tZW50LXRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29tbWVudC1tZXRhYFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29tbWVudC1ib2R5YFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29tbWVudC1saXN0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstY29tbWVudC1wcmltYXJ5YFxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLWNvbW1lbnQgLS0+XG4vLyA8YXJ0aWNsZSBjbGFzcz1cInVrLWNvbW1lbnRcIj5cbi8vICAgICA8aGVhZGVyIGNsYXNzPVwidWstY29tbWVudC1oZWFkZXJcIj5cbi8vICAgICAgICAgPGltZyBjbGFzcz1cInVrLWNvbW1lbnQtYXZhdGFyXCIgc3JjPVwiYXZhdGFyLnN2Z1wiIHdpZHRoPVwiNTBcIiBoZWlnaHQ9XCI1MFwiIGFsdD1cIlwiPlxuLy8gICAgICAgICA8aDQgY2xhc3M9XCJ1ay1jb21tZW50LXRpdGxlXCI+PC9oND5cbi8vICAgICAgICAgPGRpdiBjbGFzcz1cInVrLWNvbW1lbnQtbWV0YVwiPjwvZGl2PlxuLy8gICAgIDwvaGVhZGVyPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJ1ay1jb21tZW50LWJvZHlcIj5cbi8vICAgICAgICAgPHA+PC9wPlxuLy8gICAgIDwvZGl2PlxuLy8gPC9hcnRpY2xlPlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjb21tZW50LWhlYWRlci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kY29tbWVudC1hdmF0YXItbWFyZ2luLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJGNvbW1lbnQtdGl0bGUtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRjb21tZW50LXRpdGxlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xuJGNvbW1lbnQtdGl0bGUtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgIDIycHggIWRlZmF1bHQ7XG5cbiRjb21tZW50LW1ldGEtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG4kY29tbWVudC1tZXRhLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiRjb21tZW50LW1ldGEtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAxMXB4ICFkZWZhdWx0O1xuJGNvbW1lbnQtbWV0YS1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgIDE2cHggIWRlZmF1bHQ7XG5cbiRjb21tZW50LWxpc3QtbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGNvbW1lbnQtbGlzdC1wYWRkaW5nLWxlZnQ6ICAgICAgICAgICAgICAgICAgICAgIDEwMHB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb21tZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbW1lbnQge1xuICAgIEBpbmNsdWRlIGhvb2stY29tbWVudCgpO1xufVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLWNvbW1lbnQtaGVhZGVyYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50LWhlYWRlciB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGNvbW1lbnQtaGVhZGVyLW1hcmdpbi1ib3R0b207XG4gICAgQGluY2x1ZGUgaG9vay1jb21tZW50LWhlYWRlcigpO1xufVxuXG4vKlxuICogTWljcm8gY2xlYXJmaXhcbiAqL1xuXG4udWstY29tbWVudC1oZWFkZXI6YmVmb3JlLFxuLnVrLWNvbW1lbnQtaGVhZGVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4udWstY29tbWVudC1oZWFkZXI6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLWNvbW1lbnQtYXZhdGFyYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50LWF2YXRhciB7XG4gICAgbWFyZ2luLXJpZ2h0OiAkY29tbWVudC1hdmF0YXItbWFyZ2luLXJpZ2h0O1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIEBpbmNsdWRlIGhvb2stY29tbWVudC1hdmF0YXIoKTtcbn1cblxuXG4vKiBTdWItb2JqZWN0IGB1ay1jb21tZW50LXRpdGxlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50LXRpdGxlIHtcbiAgICBtYXJnaW46ICRjb21tZW50LXRpdGxlLW1hcmdpbi10b3AgMCAwIDA7XG4gICAgZm9udC1zaXplOiAkY29tbWVudC10aXRsZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRjb21tZW50LXRpdGxlLWxpbmUtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGhvb2stY29tbWVudC10aXRsZSgpO1xufVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLWNvbW1lbnQtbWV0YWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY29tbWVudC1tZXRhIHtcbiAgICBtYXJnaW46ICRjb21tZW50LW1ldGEtbWFyZ2luLXRvcCAwIDAgMDtcbiAgICBmb250LXNpemU6ICRjb21tZW50LW1ldGEtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkY29tbWVudC1tZXRhLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkY29tbWVudC1tZXRhLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stY29tbWVudC1tZXRhKCk7XG59XG5cblxuLyogU3ViLW9iamVjdCBgdWstY29tbWVudC1ib2R5YFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb21tZW50LWJvZHkge1xuICAgIEBpbmNsdWRlIGhvb2stY29tbWVudC1ib2R5KCk7XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4gLnVrLWNvbW1lbnQtYm9keSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLWNvbW1lbnQtbGlzdGBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY29tbWVudC1saXN0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi51ay1jb21tZW50LWxpc3QgLnVrLWNvbW1lbnQgKyB1bCB7XG4gICAgbWFyZ2luOiAkY29tbWVudC1saXN0LW1hcmdpbi10b3AgMCAwIDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLnVrLWNvbW1lbnQtbGlzdCA+IGxpOm50aC1jaGlsZChuKzIpLFxuLnVrLWNvbW1lbnQtbGlzdCAudWstY29tbWVudCArIHVsID4gbGk6bnRoLWNoaWxkKG4rMikgeyBtYXJnaW4tdG9wOiAkY29tbWVudC1saXN0LW1hcmdpbi10b3A7IH1cblxuLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1jb21tZW50LWxpc3QgLnVrLWNvbW1lbnQgKyB1bCB7IHBhZGRpbmctbGVmdDogJGNvbW1lbnQtbGlzdC1wYWRkaW5nLWxlZnQ7IH1cblxufVxuXG5cbi8qIE1vZGlmaWVyIGB1ay1jb21tZW50LXByaW1hcnlgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWNvbW1lbnQtcHJpbWFyeSB7XG4gICAgQGluY2x1ZGUgaG9vay1jb21tZW50LXByaW1hcnkoKTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stY29tbWVudC1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQoKXt9XG4vLyBAbWl4aW4gaG9vay1jb21tZW50LWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtYXZhdGFyKCl7fVxuLy8gQG1peGluIGhvb2stY29tbWVudC10aXRsZSgpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtbWV0YSgpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtYm9keSgpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtcHJpbWFyeSgpe31cbi8vIEBtaXhpbiBob29rLWNvbW1lbnQtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIENvdmVyXG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBpbWFnZXMgYW5kIHZpZGVvcyB0byBjb3ZlciB0aGVpciBjb250YWluZXIgaW4gYSBjZW50ZXJlZCBwb3NpdGlvblxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWNvdmVyLSpgXG4vL1xuLy8gVXNlZCBieTogICAgICAgICBTbGlkZXNob3dcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQ292ZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogQmFja2dyb3VuZCBpbWFnZSBhbHdheXMgY292ZXJzIGFuZCBjZW50ZXJzIGl0cyBlbGVtZW50XG4gKi9cblxuLnVrLWNvdmVyLWJhY2tncm91bmQge1xuICAgIGJhY2tncm91bmQtcG9zaXRpb246IDUwJSA1MCU7XG4gICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuXG4vKlxuICogRW11bGF0ZXMgaW1hZ2UgY292ZXIsIHdvcmtzIHdpdGggdmlkZW8gYW5kIGltYWdlIGVsZW1lbnRzXG4gKiAxLiBQYXJlbnQgY29udGFpbmVyIHdoaWNoIGNsaXBzIHJlc2l6ZWQgb2JqZWN0XG4gKiAyLiBSZXNpemVzIHRoZSBvYmplY3QgdG8gYWx3YXlzIGNvdmVycyBpdHMgY29udGFpbmVyXG4gKiAzLiBSZXNldCB0aGUgcmVzcG9uc2l2ZSBpbWFnZSBDU1NcbiAqIDQuIENlbnRlciBvYmplY3RcbiAqL1xuXG4vKiAxICovXG4udWstY292ZXIgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cbi51ay1jb3Zlci1vYmplY3Qge1xuICAgIC8qIDIgKi9cbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWluLXdpZHRoOiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgLyogMyAqL1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICAvKiA0ICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbn1cblxuLypcbiAqIFRvIGNlbnRlciBpZnJhbWVzIHVzZSBgZGF0YS11ay1jb3ZlcmAgSmF2YVNjcmlwdFxuICovXG5cbltkYXRhLXVrLWNvdmVyXSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICB0b3A6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stY292ZXItbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay1jb3Zlci1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgTmF2XG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBsaXN0IG5hdmlnYXRpb25zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbmF2YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLW5hdi1oZWFkZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXYtZGl2aWRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5hdi1zdWJgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstbmF2LXBhcmVudC1pY29uYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LXNpZGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXYtZHJvcGRvd25gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXYtbmF2YmFyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2LW9mZmNhbnZhc2Bcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1wYXJlbnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vcGVuYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdG91Y2hgXG4vL1xuLy8gVXNlczogICAgICAgICAgICBJY29uOiBGb250QXdlc29tZVxuLy9cbi8vIFVzZWQgYnk6ICAgICAgICAgUGFuZWxcbi8vICAgICAgICAgICAgICAgICAgRHJvcGRvd25cbi8vXG4vLyBNYXJrdXA6XG4vL1xuLy8gPCEtLSB1ay1uYXYgLS0+XG4vLyA8dWwgY2xhc3M9XCJ1ay1uYXZcIj5cbi8vICAgICA8bGkgY2xhc3M9XCJ1ay1hY3RpdmVcIj48YSBocmVmPVwiXCI+PC9hPjwvbGk+XG4vLyAgICAgPGxpPjxhIGhyZWY9XCJcIj48L2E+PC9saT5cbi8vIDwvdWw+XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG5hdi1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRuYXYtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kbmF2LWhlYWRlci1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgJG5hdi1wYWRkaW5nLXZlcnRpY2FsICFkZWZhdWx0O1xuJG5hdi1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICRuYXYtcGFkZGluZy1ob3Jpem9udGFsICFkZWZhdWx0O1xuJG5hdi1oZWFkZXItZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG4kbmF2LWhlYWRlci1mb250LXdlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRuYXYtaGVhZGVyLXRleHQtdHJhbnNmb3JtOiAgICAgICAgICAgICAgICAgICAgICB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kbmF2LWhlYWRlci1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJG5hdi1kaXZpZGVyLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgIDlweCAhZGVmYXVsdDtcbiRuYXYtZGl2aWRlci1tYXJnaW4taG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAkbmF2LXBhZGRpbmctaG9yaXpvbnRhbCAhZGVmYXVsdDtcblxuJG5hdi1zdWJ0aXRsZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG4kbmF2LXN1YnRpdGxlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcblxuJG5hdi1uZXN0ZWQtcGFkZGluZy1sZWZ0OiAgICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kbmF2LW5lc3RlZC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgMnB4ICFkZWZhdWx0O1xuJG5hdi1uZXN0ZWQtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG5cbiRuYXYtc3ViLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kbmF2LXN1Yi1wYWRkaW5nLWxlZnQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgJG5hdi1wYWRkaW5nLWhvcml6b250YWwgIWRlZmF1bHQ7XG5cbiRuYXYtcGFyZW50LWljb246ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcZjEwNFwiICFkZWZhdWx0O1xuJG5hdi1wYXJlbnQtb3Blbi1pY29uOiAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxmMTA3XCIgIWRlZmF1bHQ7XG4kbmF2LXBhcmVudC1pY29uLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRuYXYtcGFyZW50LWljb24tbWFyZ2luLXJpZ2h0OiAgICAgICAgICAgICAgICAgICAtMTBweCAhZGVmYXVsdDtcblxuJG5hdi1zaWRlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2LXNpZGUtaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwwLjA1KSAhZGVmYXVsdDtcbiRuYXYtc2lkZS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdi1zaWRlLWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICMwMGE4ZTYgIWRlZmF1bHQ7XG4kbmF2LXNpZGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXYtc2lkZS1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdi1zaWRlLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXNpZGUtZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuJG5hdi1zaWRlLW5lc3RlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICMwN0QgIWRlZmF1bHQ7XG4kbmF2LXNpZGUtbmVzdGVkLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgIzA1OSAhZGVmYXVsdDtcblxuJG5hdi1kcm9wZG93bi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2LWRyb3Bkb3duLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgIzAwYThlNiAhZGVmYXVsdDtcbiRuYXYtZHJvcGRvd24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdi1kcm9wZG93bi1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG4kbmF2LWRyb3Bkb3duLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRuYXYtZHJvcGRvd24tZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kbmF2LWRyb3Bkb3duLW5lc3RlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIzA3RCAhZGVmYXVsdDtcbiRuYXYtZHJvcGRvd24tbmVzdGVkLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAjMDU5ICFkZWZhdWx0O1xuXG4kbmF2LW5hdmJhci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXYtbmF2YmFyLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAjMDBhOGU2ICFkZWZhdWx0O1xuJG5hdi1uYXZiYXItaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2LW5hdmJhci1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiRuYXYtbmF2YmFyLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi1uYXZiYXItZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRuYXYtbmF2YmFyLW5lc3RlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjMDdEICFkZWZhdWx0O1xuJG5hdi1uYXZiYXItbmVzdGVkLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICMwNTkgIWRlZmF1bHQ7XG5cbiRuYXYtb2ZmY2FudmFzLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJG5hdi1vZmZjYW52YXMtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kbmF2LW9mZmNhbnZhcy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXYtb2ZmY2FudmFzLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAjNDA0MDQwICFkZWZhdWx0O1xuJG5hdi1vZmZjYW52YXMtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2LW9mZmNhbnZhcy1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgIzFhMWExYSAhZGVmYXVsdDtcbiRuYXYtb2ZmY2FudmFzLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJG5hdi1vZmZjYW52YXMtaGVhZGVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2LW9mZmNhbnZhcy1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgIzFhMWExYSAhZGVmYXVsdDtcbiRuYXYtb2ZmY2FudmFzLWRpdmlkZXItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kbmF2LW9mZmNhbnZhcy1uZXN0ZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRuYXYtb2ZmY2FudmFzLW5lc3RlZC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBOYXZcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2LFxuLnVrLW5hdiB1bCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuLypcbiAqIEl0ZW1zXG4gKi9cblxuLnVrLW5hdiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnVrLW5hdiA+IGxpID4gYSB7IHBhZGRpbmc6ICRuYXYtcGFkZGluZy12ZXJ0aWNhbCAkbmF2LXBhZGRpbmctaG9yaXpvbnRhbDsgfVxuXG4vKlxuICogTmVzdGVkIGl0ZW1zXG4gKi9cblxuLnVrLW5hdiB1bCB7IHBhZGRpbmctbGVmdDogJG5hdi1uZXN0ZWQtcGFkZGluZy1sZWZ0OyB9XG5cbi51ay1uYXYgdWwgYSB7IHBhZGRpbmc6ICRuYXYtbmVzdGVkLXBhZGRpbmctdmVydGljYWwgJG5hdi1uZXN0ZWQtcGFkZGluZy1ob3Jpem9udGFsOyB9XG5cbi8qXG4gKiBJdGVtIHN1YnRpdGxlXG4gKi9cblxuLnVrLW5hdiBsaSA+IGEgPiBkaXYge1xuICAgIGZvbnQtc2l6ZTogJG5hdi1zdWJ0aXRsZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICRuYXYtc3VidGl0bGUtbGluZS1oZWlnaHQ7XG59XG5cblxuLyogU3ViLW9iamVjdDogYHVrLW5hdi1oZWFkZXJgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdi1oZWFkZXIge1xuICAgIHBhZGRpbmc6ICRuYXYtaGVhZGVyLXBhZGRpbmctdmVydGljYWwgJG5hdi1oZWFkZXItcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIHRleHQtdHJhbnNmb3JtOiAkbmF2LWhlYWRlci10ZXh0LXRyYW5zZm9ybTtcbiAgICBmb250LXdlaWdodDogJG5hdi1oZWFkZXItZm9udC13ZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkbmF2LWhlYWRlci1mb250LXNpemU7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtaGVhZGVyKCk7XG59XG5cbi51ay1uYXYtaGVhZGVyOm5vdCg6Zmlyc3QtY2hpbGQpIHsgbWFyZ2luLXRvcDogJG5hdi1oZWFkZXItbWFyZ2luLXRvcDsgfVxuXG5cbi8qIFN1Yi1vYmplY3Q6IGB1ay1uYXYtZGl2aWRlcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2LWRpdmlkZXIge1xuICAgIG1hcmdpbjogJG5hdi1kaXZpZGVyLW1hcmdpbi12ZXJ0aWNhbCAkbmF2LWRpdmlkZXItbWFyZ2luLWhvcml6b250YWw7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtZGl2aWRlcigpO1xufVxuXG5cbi8qIFN1Yi1vYmplY3Q6IGB1ay1uYXYtc3ViYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBgdWxgIG5lZWRlZCBmb3IgaGlnaGVyIHNwZWNpZmljaXR5IHRvIG92ZXJyaWRlIHBhZGRpbmdcbiAqL1xuXG51bC51ay1uYXYtc3ViIHtcbiAgICBwYWRkaW5nOiAkbmF2LXN1Yi1wYWRkaW5nLXZlcnRpY2FsIDAgJG5hdi1zdWItcGFkZGluZy12ZXJ0aWNhbCAkbmF2LXN1Yi1wYWRkaW5nLWxlZnQ7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtc3ViKCk7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay1uYXYtcGFyZW50LWljb25gXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdi1wYXJlbnQtaWNvbiA+IC51ay1wYXJlbnQgPiBhOmFmdGVyIHtcbiAgICBjb250ZW50OiAkbmF2LXBhcmVudC1pY29uO1xuICAgIHdpZHRoOiAkbmF2LXBhcmVudC1pY29uLXdpZHRoO1xuICAgIG1hcmdpbi1yaWdodDogJG5hdi1wYXJlbnQtaWNvbi1tYXJnaW4tcmlnaHQ7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtcGFyZW50LWljb24oKTtcbn1cblxuLnVrLW5hdi1wYXJlbnQtaWNvbiA+IC51ay1wYXJlbnQudWstb3BlbiA+IGE6YWZ0ZXIgeyBjb250ZW50OiAkbmF2LXBhcmVudC1vcGVuLWljb247IH1cblxuXG4vKiBNb2RpZmllciBgdWstbmF2LXNpZGVgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEl0ZW1zXG4gKi9cblxuLnVrLW5hdi1zaWRlID4gbGkgPiBhIHtcbiAgICBjb2xvcjogJG5hdi1zaWRlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LXNpZGUoKTtcbn1cblxuLypcbiAqIEhvdmVyXG4gKiAxLiBBcHBseSBob3ZlciBzdHlsZSBhbHNvIHRvIGZvY3VzIHN0YXRlXG4gKiAyLiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICovXG5cbi51ay1uYXYtc2lkZSA+IGxpID4gYTpob3Zlcixcbi51ay1uYXYtc2lkZSA+IGxpID4gYTpmb2N1cyB7IC8vIDFcbiAgICBiYWNrZ3JvdW5kOiAkbmF2LXNpZGUtaG92ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5hdi1zaWRlLWhvdmVyLWNvbG9yO1xuICAgIC8qIDIgKi9cbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LXNpZGUtaG92ZXIoKTtcbn1cblxuLyogQWN0aXZlICovXG4udWstbmF2LXNpZGUgPiBsaS51ay1hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAkbmF2LXNpZGUtYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRuYXYtc2lkZS1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtc2lkZS1hY3RpdmUoKTtcbn1cblxuLypcbiAqIFN1Yi1vYmplY3Q6IGB1ay1uYXYtaGVhZGVyYFxuICovXG5cbi51ay1uYXYtc2lkZSAudWstbmF2LWhlYWRlciB7XG4gICAgY29sb3I6ICRuYXYtc2lkZS1oZWFkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtc2lkZS1oZWFkZXIoKTtcbn1cblxuLypcbiAqIFN1Yi1vYmplY3Q6IGB1ay1uYXYtZGl2aWRlcmBcbiAqL1xuXG4udWstbmF2LXNpZGUgLnVrLW5hdi1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wOiAkbmF2LXNpZGUtZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJG5hdi1zaWRlLWRpdmlkZXItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LXNpZGUtZGl2aWRlcigpO1xufVxuXG4vKlxuICogTmVzdGVkIGl0ZW1zXG4gKi9cblxuLnVrLW5hdi1zaWRlIHVsIGEgeyBjb2xvcjogJG5hdi1zaWRlLW5lc3RlZC1jb2xvcjsgfVxuLnVrLW5hdi1zaWRlIHVsIGE6aG92ZXIgeyBjb2xvcjogJG5hdi1zaWRlLW5lc3RlZC1ob3Zlci1jb2xvcjsgfVxuXG5cbi8qIE1vZGlmaWVyIGB1ay1uYXYtZHJvcGRvd25gXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEl0ZW1zXG4gKi9cblxuLnVrLW5hdi1kcm9wZG93biA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRuYXYtZHJvcGRvd24tY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtZHJvcGRvd24oKTtcbn1cblxuLypcbiAqIEhvdmVyXG4gKiAxLiBBcHBseSBob3ZlciBzdHlsZSBhbHNvIHRvIGZvY3VzIHN0YXRlXG4gKiAyLiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICovXG5cbi51ay1uYXYtZHJvcGRvd24gPiBsaSA+IGE6aG92ZXIsXG4udWstbmF2LWRyb3Bkb3duID4gbGkgPiBhOmZvY3VzIHsgLy8gMVxuICAgIGJhY2tncm91bmQ6ICRuYXYtZHJvcGRvd24taG92ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5hdi1kcm9wZG93bi1ob3Zlci1jb2xvcjtcbiAgICAvKiAyICovXG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBob29rLW5hdi1kcm9wZG93bi1ob3ZlcigpO1xufVxuXG4vKlxuICogU3ViLW9iamVjdDogYHVrLW5hdi1oZWFkZXJgXG4gKi9cblxuLnVrLW5hdi1kcm9wZG93biAudWstbmF2LWhlYWRlciB7XG4gICAgY29sb3I6ICRuYXYtZHJvcGRvd24taGVhZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LWRyb3Bkb3duLWhlYWRlcigpO1xufVxuXG4vKlxuICogU3ViLW9iamVjdDogYHVrLW5hdi1kaXZpZGVyYFxuICovXG5cbi51ay1uYXYtZHJvcGRvd24gLnVrLW5hdi1kaXZpZGVyIHtcbiAgICBib3JkZXItdG9wOiAkbmF2LWRyb3Bkb3duLWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtZHJvcGRvd24tZGl2aWRlci1ib3JkZXI7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtZHJvcGRvd24tZGl2aWRlcigpO1xufVxuXG4vKlxuICogTmVzdGVkIGl0ZW1zXG4gKi9cblxuLnVrLW5hdi1kcm9wZG93biB1bCBhIHsgY29sb3I6ICRuYXYtZHJvcGRvd24tbmVzdGVkLWNvbG9yOyB9XG4udWstbmF2LWRyb3Bkb3duIHVsIGE6aG92ZXIgeyBjb2xvcjogJG5hdi1kcm9wZG93bi1uZXN0ZWQtaG92ZXItY29sb3I7IH1cblxuXG4vKiBNb2RpZmllciBgdWstbmF2LW5hdmJhcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSXRlbXNcbiAqL1xuXG4udWstbmF2LW5hdmJhciA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRuYXYtbmF2YmFyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LW5hdmJhcigpO1xufVxuXG4vKlxuICogSG92ZXJcbiAqIDEuIEFwcGx5IGhvdmVyIHN0eWxlIGFsc28gdG8gZm9jdXMgc3RhdGVcbiAqIDIuIFJlbW92ZSBkZWZhdWx0IGZvY3VzIHN0eWxlXG4gKi9cblxuLnVrLW5hdi1uYXZiYXIgPiBsaSA+IGE6aG92ZXIsXG4udWstbmF2LW5hdmJhciA+IGxpID4gYTpmb2N1cyB7IC8vIDFcbiAgICBiYWNrZ3JvdW5kOiAkbmF2LW5hdmJhci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbmF2LW5hdmJhci1ob3Zlci1jb2xvcjtcbiAgICAvKiAyICovXG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBob29rLW5hdi1uYXZiYXItaG92ZXIoKTtcbn1cblxuLypcbiAqIFN1Yi1vYmplY3Q6IGB1ay1uYXYtaGVhZGVyYFxuICovXG5cbi51ay1uYXYtbmF2YmFyIC51ay1uYXYtaGVhZGVyIHtcbiAgICBjb2xvcjogJG5hdi1uYXZiYXItaGVhZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LW5hdmJhci1oZWFkZXIoKTtcbn1cblxuLypcbiAqIFN1Yi1vYmplY3Q6IGB1ay1uYXYtZGl2aWRlcmBcbiAqL1xuXG4udWstbmF2LW5hdmJhciAudWstbmF2LWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6ICRuYXYtbmF2YmFyLWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtbmF2YmFyLWRpdmlkZXItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LW5hdmJhci1kaXZpZGVyKCk7XG59XG5cbi8qXG4gKiBOZXN0ZWQgaXRlbXNcbiAqL1xuXG4udWstbmF2LW5hdmJhciB1bCBhIHsgY29sb3I6ICRuYXYtbmF2YmFyLW5lc3RlZC1jb2xvcjsgfVxuLnVrLW5hdi1uYXZiYXIgdWwgYTpob3ZlciB7IGNvbG9yOiAkbmF2LW5hdmJhci1uZXN0ZWQtaG92ZXItY29sb3I7IH1cblxuXG4vKiBNb2RpZmllciBgdWstbmF2LW9mZmNhbnZhc2BcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSXRlbXNcbiAqL1xuXG4udWstbmF2LW9mZmNhbnZhcyA+IGxpID4gYSB7XG4gICAgY29sb3I6ICRuYXYtb2ZmY2FudmFzLWNvbG9yO1xuICAgIHBhZGRpbmc6ICRuYXYtb2ZmY2FudmFzLXBhZGRpbmctdmVydGljYWwgJG5hdi1vZmZjYW52YXMtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LW9mZmNhbnZhcygpO1xufVxuXG4vKlxuICogSG92ZXJcbiAqIE5vIGhvdmVyIG9uIHRvdWNoIGRldmljZXMgYmVjYXVzZSBpdCBiZWhhdmVzIGJ1Z2d5IGluIGZpeGVkIG9mZmNhbnZhc1xuICogMS4gQXBwbHkgaG92ZXIgc3R5bGUgYWxzbyB0byBmb2N1cyBzdGF0ZVxuICogMi4gUmVtb3ZlIGRlZmF1bHQgZm9jdXMgc3R5bGVcbiAqL1xuXG4udWstbmF2LW9mZmNhbnZhcyA+IC51ay1vcGVuID4gYSxcbmh0bWw6bm90KC51ay10b3VjaCkgLnVrLW5hdi1vZmZjYW52YXMgPiBsaSA+IGE6aG92ZXIsXG5odG1sOm5vdCgudWstdG91Y2gpIC51ay1uYXYtb2ZmY2FudmFzID4gbGkgPiBhOmZvY3VzIHsgLy8gMVxuICAgIGJhY2tncm91bmQ6ICRuYXYtb2ZmY2FudmFzLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRuYXYtb2ZmY2FudmFzLWhvdmVyLWNvbG9yO1xuICAgIC8qIDIgKi9cbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LW9mZmNhbnZhcy1ob3ZlcigpO1xufVxuXG4vKlxuICogQWN0aXZlXG4gKiBgaHRtbCAudWstbmF2YCBuZWVkZWQgZm9yIGhpZ2hlciBzcGVjaWZpY2l0eSB0byBvdmVycmlkZSBob3ZlclxuICovXG5odG1sIC51ay1uYXYudWstbmF2LW9mZmNhbnZhcyA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6ICRuYXYtb2ZmY2FudmFzLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbmF2LW9mZmNhbnZhcy1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtb2ZmY2FudmFzLWFjdGl2ZSgpO1xufVxuXG4vKlxuICogU3ViLW9iamVjdDogYHVrLW5hdi1oZWFkZXJgXG4gKi9cblxuLnVrLW5hdi1vZmZjYW52YXMgLnVrLW5hdi1oZWFkZXIge1xuICAgIGNvbG9yOiAkbmF2LW9mZmNhbnZhcy1oZWFkZXItY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtb2ZmY2FudmFzLWhlYWRlcigpO1xufVxuXG4vKlxuICogU3ViLW9iamVjdDogYHVrLW5hdi1kaXZpZGVyYFxuICovXG5cbi51ay1uYXYtb2ZmY2FudmFzIC51ay1uYXYtZGl2aWRlciB7XG4gICAgYm9yZGVyLXRvcDogJG5hdi1vZmZjYW52YXMtZGl2aWRlci1ib3JkZXItd2lkdGggc29saWQgJG5hdi1vZmZjYW52YXMtZGl2aWRlci1ib3JkZXI7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtb2ZmY2FudmFzLWRpdmlkZXIoKTtcbn1cblxuLypcbiAqIE5lc3RlZCBpdGVtc1xuICogTm8gaG92ZXIgb24gdG91Y2ggZGV2aWNlcyBiZWNhdXNlIGl0IGJlaGF2ZXMgYnVnZ3kgaW4gZml4ZWQgb2ZmY2FudmFzXG4gKi9cblxuLnVrLW5hdi1vZmZjYW52YXMgdWwgYSB7IGNvbG9yOiAkbmF2LW9mZmNhbnZhcy1uZXN0ZWQtY29sb3I7IH1cbmh0bWw6bm90KC51ay10b3VjaCkgLnVrLW5hdi1vZmZjYW52YXMgdWwgYTpob3ZlciB7IGNvbG9yOiAkbmF2LW9mZmNhbnZhcy1uZXN0ZWQtaG92ZXItY29sb3I7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stbmF2LW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stbmF2LWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1kaXZpZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LXN1Yigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1wYXJlbnQtaWNvbigpe31cblxuLy8gQG1peGluIGhvb2stbmF2LXNpZGUoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtc2lkZS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1zaWRlLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1zaWRlLWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1zaWRlLWRpdmlkZXIoKXt9XG5cbi8vIEBtaXhpbiBob29rLW5hdi1kcm9wZG93bigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1kcm9wZG93bi1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1kcm9wZG93bi1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtZHJvcGRvd24tZGl2aWRlcigpe31cblxuLy8gQG1peGluIGhvb2stbmF2LW5hdmJhcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1uYXZiYXItaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtbmF2YmFyLWhlYWRlcigpe31cbi8vIEBtaXhpbiBob29rLW5hdi1uYXZiYXItZGl2aWRlcigpe31cblxuLy8gQG1peGluIGhvb2stbmF2LW9mZmNhbnZhcygpe31cbi8vIEBtaXhpbiBob29rLW5hdi1vZmZjYW52YXMtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtb2ZmY2FudmFzLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1vZmZjYW52YXMtaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LW9mZmNhbnZhcy1kaXZpZGVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1uYXYtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIE5hdmJhclxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgdGhlIG5hdmlnYXRpb24gYmFyXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbmF2YmFyYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLW5hdmJhci1uYXZgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItbmF2LXN1YnRpdGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLWNvbnRlbnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItYnJhbmRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItdG9nZ2xlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLXRvZ2dsZS1hbHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1uYXZiYXItY2VudGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmF2YmFyLWZsaXBgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstbmF2YmFyLWF0dGFjaGVkYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhcmVudGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW9wZW5gXG4vL1xuLy8gVXNlZCBieTogICAgICAgICBEcm9wZG93blxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLW5hdmJhciAtLT5cbi8vIDxuYXYgY2xhc3M9XCJ1ay1uYXZiYXJcIj5cbi8vICAgICA8dWwgY2xhc3M9XCJ1ay1uYXZiYXItbmF2XCI+XG4vLyAgICAgICAgIDxsaSBjbGFzcz1cInVrLWFjdGl2ZVwiPjxhIGhyZWY9XCJcIj48L2E+PC9saT5cbi8vICAgICAgICAgPGxpPjxhIGhyZWY9XCJcIj48L2E+PC9saT5cbi8vICAgICA8L3VsPlxuLy8gPC9uYXY+XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG5hdmJhci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNlZWUgIWRlZmF1bHQ7XG4kbmF2YmFyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItbGluay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjMDdEICFkZWZhdWx0O1xuJG5hdmJhci1saW5rLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICMwNTkgIWRlZmF1bHQ7XG5cbiRuYXZiYXItbmF2LWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICRuYXZiYXItbmF2LWhlaWdodCAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1mb250LWZhbWlseTogICAgICAgICAgICAgICAgICAgICAgICAgXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LW9uY2xpY2stYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtb25jbGljay1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRuYXZiYXItbmF2LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1uYXYtc3VidGl0bGUtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW5hdi1zdWJ0aXRsZS1vZmZzZXQ6ICAgICAgICAgICAgICAgICAgICAgMnB4ICFkZWZhdWx0O1xuXG4kbmF2YmFyLWJyYW5kLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcbiRuYXZiYXItYnJhbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJG5hdmJhci1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG5cbiRuYXZiYXItdG9nZ2xlLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAxOHB4ICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbmF2YmFyLXRvZ2dsZS1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItdG9nZ2xlLWljb246ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcZjBjOVwiICFkZWZhdWx0O1xuJG5hdmJhci10b2dnbGUtaWNvbi1hbHQ6ICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxmMDAyXCIgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE5hdmJhclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXIge1xuICAgIGJhY2tncm91bmQ6ICRuYXZiYXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5hdmJhci1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLW5hdmJhcigpO1xufVxuXG4vKlxuICogTWljcm8gY2xlYXJmaXhcbiAqL1xuXG4udWstbmF2YmFyOmJlZm9yZSxcbi51ay1uYXZiYXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG59XG5cbi51ay1uYXZiYXI6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG5cbi8qIFN1Yi1vYmplY3Q6IGB1ay1uYXZiYXItbmF2YFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItbmF2IHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGZsb2F0OiBsZWZ0O1xufVxuXG4vKlxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGRyb3Bkb3duc1xuICovXG5cbi51ay1uYXZiYXItbmF2ID4gbGkge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qXG4gKiAxLiBEaW1lbnNpb25zXG4gKiAyLiBTdHlsZVxuICovXG5cbi51ay1uYXZiYXItbmF2ID4gbGkgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAvKiAxICovXG4gICAgaGVpZ2h0OiAkbmF2YmFyLW5hdi1oZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkbmF2YmFyLW5hdi1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbGluZS1oZWlnaHQ6ICRuYXZiYXItbmF2LWxpbmUtaGVpZ2h0O1xuICAgIC8qIDIgKi9cbiAgICBjb2xvcjogJG5hdmJhci1uYXYtY29sb3I7XG4gICAgZm9udC1zaXplOiAkbmF2YmFyLW5hdi1mb250LXNpemU7XG4gICAgZm9udC1mYW1pbHk6ICRuYXZiYXItbmF2LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtd2VpZ2h0OiAkbmF2YmFyLW5hdi1mb250LXdlaWdodDtcbiAgICBAaW5jbHVkZSBob29rLW5hdmJhci1uYXYoKTtcbn1cblxuLyogQXBwZWFyIG5vdCBhcyBsaW5rICovXG4udWstbmF2YmFyLW5hdiA+IGxpID4gYVtocmVmPScjJ10geyBjdXJzb3I6IHRleHQ7IH1cblxuLypcbiAqIEhvdmVyXG4gKiAxLiBBcHBseSBob3ZlciBzdHlsZSBhbHNvIHRvIGZvY3VzIHN0YXRlXG4gKiAyLiBBbHNvIGFwcGx5IGlmIGRyb3Bkb3duIGlzIG9wZW5lZFxuICogMy4gUmVtb3ZlIGRlZmF1bHQgZm9jdXMgc3R5bGVcbiAqL1xuXG4udWstbmF2YmFyLW5hdiA+IGxpOmhvdmVyID4gYSxcbi51ay1uYXZiYXItbmF2ID4gbGkgPiBhOmZvY3VzLCAvLyAxXG4udWstbmF2YmFyLW5hdiA+IGxpLnVrLW9wZW4gPiBhIHsgLy8gMlxuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItbmF2LWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRuYXZiYXItbmF2LWhvdmVyLWNvbG9yO1xuICAgIC8qIDMgKi9cbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2YmFyLW5hdi1ob3ZlcigpO1xufVxuXG4vKiBPbkNsaWNrICovXG4udWstbmF2YmFyLW5hdiA+IGxpID4gYTphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItbmF2LW9uY2xpY2stYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5hdmJhci1uYXYtb25jbGljay1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLW5hdmJhci1uYXYtb25jbGljaygpO1xufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1uYXZiYXItbmF2ID4gbGkudWstYWN0aXZlID4gYSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1uYXYtYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRuYXZiYXItbmF2LWFjdGl2ZS1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLW5hdmJhci1uYXYtYWN0aXZlKCk7XG59XG5cblxuLyogU3ViLW9iamVjdHM6IGB1ay1uYXZiYXItbmF2LXN1YnRpdGxlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItbmF2IC51ay1uYXZiYXItbmF2LXN1YnRpdGxlIHsgbGluZS1oZWlnaHQ6ICRuYXZiYXItbmF2LWxpbmUtaGVpZ2h0IC0gJG5hdmJhci1uYXYtc3VidGl0bGUtZm9udC1zaXplIC0gJG5hdmJhci1uYXYtc3VidGl0bGUtb2Zmc2V0OyB9XG5cbi51ay1uYXZiYXItbmF2LXN1YnRpdGxlID4gZGl2IHtcbiAgICBtYXJnaW4tdG9wOiAoKCRuYXZiYXItbmF2LWxpbmUtaGVpZ2h0IC0gJG5hdmJhci1uYXYtc3VidGl0bGUtZm9udC1zaXplIC0gJG5hdmJhci1uYXYtZm9udC1zaXplKSAvIC0yKSArICRuYXZiYXItbmF2LXN1YnRpdGxlLW9mZnNldDtcbiAgICBmb250LXNpemU6ICRuYXZiYXItbmF2LXN1YnRpdGxlLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJG5hdmJhci1uYXYtc3VidGl0bGUtZm9udC1zaXplICsgJG5hdmJhci1uYXYtc3VidGl0bGUtb2Zmc2V0O1xufVxuXG5cbi8qIFN1Yi1vYmplY3RzOiBgdWstbmF2YmFyLWNvbnRlbnRgLCBgdWstbmF2YmFyLWJyYW5kYCwgYHVrLW5hdmJhci10b2dnbGVgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEltaXRhdGUgbmF2YmFyIGl0ZW1zXG4gKi9cblxuLnVrLW5hdmJhci1jb250ZW50LFxuLnVrLW5hdmJhci1icmFuZCxcbi51ay1uYXZiYXItdG9nZ2xlIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogJG5hdmJhci1uYXYtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDAgJG5hdmJhci1uYXYtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIEBpbmNsdWRlIGhvb2stbmF2YmFyLWNvbnRlbnQoKTtcbn1cblxuLypcbiAqIEhlbHBlciB0byBjZW50ZXIgYWxsIGNoaWxkIGVsZW1lbnRzIHZlcnRpY2FsbHlcbiAqL1xuXG4udWstbmF2YmFyLWNvbnRlbnQ6YmVmb3JlLFxuLnVrLW5hdmJhci1icmFuZDpiZWZvcmUsXG4udWstbmF2YmFyLXRvZ2dsZTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuXG4vKiBTdWItb2JqZWN0czogYHVrLW5hdmJhci1jb250ZW50YFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBCZXR0ZXIgc2libGluZyBzcGFjaW5nXG4gKi9cblxuLnVrLW5hdmJhci1jb250ZW50ICsgLnVrLW5hdmJhci1jb250ZW50Om5vdCgudWstbmF2YmFyLWNlbnRlcikgeyBwYWRkaW5nLWxlZnQ6IDA7IH1cblxuLypcbiAqIExpbmsgY29sb3JzXG4gKi9cblxuLnVrLW5hdmJhci1jb250ZW50ID4gYTpub3QoW2NsYXNzXSkgeyBjb2xvcjogJG5hdmJhci1saW5rLWNvbG9yOyB9XG4udWstbmF2YmFyLWNvbnRlbnQgPiBhOm5vdChbY2xhc3NdKTpob3ZlciB7IGNvbG9yOiAkbmF2YmFyLWxpbmstaG92ZXItY29sb3I7IH1cblxuXG4vKiBTdWItb2JqZWN0czogYHVrLW5hdmJhci1icmFuZGBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbmF2YmFyLWJyYW5kIHtcbiAgICBmb250LXNpemU6ICRuYXZiYXItYnJhbmQtZm9udC1zaXplO1xuICAgIGNvbG9yOiAkbmF2YmFyLWJyYW5kLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLypcbiAqIDEuIEFwcGx5IGhvdmVyIHN0eWxlIGFsc28gdG8gZm9jdXMgc3RhdGVcbiAqIDIuIFJlbW92ZSBkZWZhdWx0IGZvY3VzIHN0eWxlXG4gKi9cblxuLnVrLW5hdmJhci1icmFuZDpob3Zlcixcbi51ay1uYXZiYXItYnJhbmQ6Zm9jdXMgeyAvLyAxXG4gICAgY29sb3I6ICRuYXZiYXItYnJhbmQtaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBvdXRsaW5lOiBub25lO1xufVxuXG5cbi8qIFN1Yi1vYmplY3Q6IGB1ay1uYXZiYXItdG9nZ2xlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1uYXZiYXItdG9nZ2xlIHtcbiAgICBmb250LXNpemU6ICRuYXZiYXItdG9nZ2xlLWZvbnQtc2l6ZTtcbiAgICBjb2xvcjogJG5hdmJhci10b2dnbGUtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xufVxuXG4vKlxuICogMS4gQXBwbHkgaG92ZXIgc3R5bGUgYWxzbyB0byBmb2N1cyBzdGF0ZVxuICogMi4gUmVtb3ZlIGRlZmF1bHQgZm9jdXMgc3R5bGVcbiAqL1xuXG4udWstbmF2YmFyLXRvZ2dsZTpob3Zlcixcbi51ay1uYXZiYXItdG9nZ2xlOmZvY3VzIHsgLy8gMVxuICAgIGNvbG9yOiAkbmF2YmFyLXRvZ2dsZS1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIG91dGxpbmU6IG5vbmU7XG59XG5cbi8qXG4gKiAxLiBDZW50ZXIgaWNvbiB2ZXJ0aWNhbGx5XG4gKi9cblxuLnVrLW5hdmJhci10b2dnbGU6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6ICRuYXZiYXItdG9nZ2xlLWljb247XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIC8qIDEgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWstbmF2YmFyLXRvZ2dsZS1hbHQ6YWZ0ZXIgeyBjb250ZW50OiAkbmF2YmFyLXRvZ2dsZS1pY29uLWFsdDsgfVxuXG5cbi8qIFN1Yi1vYmplY3Q6IGB1ay1uYXZiYXItY2VudGVyYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBUaGUgZWxlbWVudCB3aXRoIHRoaXMgY2xhc3MgbmVlZHMgdG8gYmUgbGFzdCBjaGlsZCBpbiB0aGUgbmF2YmFyXG4gKiAxLiBUaGlzIGhhY2sgaXMgbmVlZGVkIGJlY2F1c2Ugb3RoZXIgZmxvYXQgZWxlbWVudHMgc2hpZnQgY2VudGVyZWQgdGV4dFxuICovXG5cbi51ay1uYXZiYXItY2VudGVyIHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLyogMSAqL1xuICAgIG1heC13aWR0aDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICAgIG1hcmdpbi1yaWdodDogYXV0bztcbn1cblxuXG4vKiBTdWItb2JqZWN0OiBgdWstbmF2YmFyLWZsaXBgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5hdmJhci1mbGlwIHsgZmxvYXQ6IHJpZ2h0OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLW5hdmJhci1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLW5hdmJhcigpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1uYXYoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItbmF2LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdi1vbmNsaWNrKCl7fVxuLy8gQG1peGluIGhvb2stbmF2YmFyLW5hdi1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXZiYXItY29udGVudCgpe31cbi8vIEBtaXhpbiBob29rLW5hdmJhci1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgU3VibmF2XG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciB0aGUgc3ViIG5hdmlnYXRpb25cbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zdWJuYXZgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstc3VibmF2LWxpbmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zdWJuYXYtcGlsbGBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gTWFya3VwOlxuLy9cbi8vIDwhLS0gdWstc3VibmF2IC0tPlxuLy8gPHVsIGNsYXNzPVwidWstc3VibmF2XCI+XG4vLyAgICAgPGxpPjxhIGhyZWY9XCJcIj48L2E+PC9saT5cbi8vIDwvdWw+XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJHN1Ym5hdi1tYXJnaW4taG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4kc3VibmF2LW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgJHN1Ym5hdi1tYXJnaW4taG9yaXpvbnRhbCAhZGVmYXVsdDtcblxuJHN1Ym5hdi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kc3VibmF2LWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzA3RCAhZGVmYXVsdDtcbiRzdWJuYXYtaG92ZXItdGV4dC1kZWNvcmF0aW9uOiAgICAgICAgICAgICAgICAgICBub25lICFkZWZhdWx0O1xuJHN1Ym5hdi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICMwN0QgIWRlZmF1bHQ7XG5cbiRzdWJuYXYtbGluZS1ib3JkZXItaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJHN1Ym5hdi1saW5lLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kc3VibmF2LWxpbmUtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuXG4kc3VibmF2LXBpbGwtcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgIDlweCAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAjZWVlICFkZWZhdWx0O1xuJHN1Ym5hdi1waWxsLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kc3VibmF2LXBpbGwtYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgIzAwYThlNiAhZGVmYXVsdDtcbiRzdWJuYXYtcGlsbC1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kc3VibmF2LWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogU3VibmF2XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIEd1dHRlclxuICogMi4gUmVtb3ZlIGRlZmF1bHQgbGlzdCBzdHlsZVxuICovXG5cbi51ay1zdWJuYXYge1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW4tbGVmdDogLSRzdWJuYXYtbWFyZ2luLWhvcml6b250YWw7XG4gICAgbWFyZ2luLXRvcDogLSRzdWJuYXYtbWFyZ2luLXZlcnRpY2FsO1xuICAgIC8qIDIgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qXG4gKiAxLiBTcGFjZSBpcyBhbGxvY2F0ZWQgc29sZWx5IGJhc2VkIG9uIGNvbnRlbnQgZGltZW5zaW9uc1xuICogMi4gSG9yaXpvbnRhbCBndXR0ZXIgaXMgdXNpbmcgYHBhZGRpbmdgIHNvIGB1ay13aWR0aC0qYCBjbGFzc2VzIGNhbiBiZSBhcHBsaWVkXG4gKiAzLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dCBmb3IgZHJvcGRvd25zXG4gKi9cblxuLnVrLXN1Ym5hdiA+ICoge1xuICAgIC8qIDEgKi9cbiAgICAtbXMtZmxleDogbm9uZTtcbiAgICAtd2Via2l0LWZsZXg6IG5vbmU7XG4gICAgZmxleDogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZy1sZWZ0OiAkc3VibmF2LW1hcmdpbi1ob3Jpem9udGFsO1xuICAgIG1hcmdpbi10b3A6ICRzdWJuYXYtbWFyZ2luLXZlcnRpY2FsO1xuICAgIC8qIDMgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi8qXG4gKiBERVBSRUNBVEVEIElFOSBTdXBwb3J0XG4gKi9cblxuLnVrLXN1Ym5hdjpiZWZvcmUsXG4udWstc3VibmF2OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51ay1zdWJuYXY6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4udWstc3VibmF2ID4gKiB7IGZsb2F0OiBsZWZ0OyB9XG5cblxuLyogSXRlbXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc3VibmF2ID4gKiA+ICoge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBjb2xvcjogJHN1Ym5hdi1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXN1Ym5hdigpO1xufVxuXG4vKlxuICogSG92ZXJcbiAqIDEuIEFwcGx5IGhvdmVyIHN0eWxlIGFsc28gdG8gZm9jdXMgc3RhdGVcbiAqL1xuXG4udWstc3VibmF2ID4gKiA+IDpob3Zlcixcbi51ay1zdWJuYXYgPiAqID4gOmZvY3VzIHsgLy8gMVxuICAgIGNvbG9yOiAkc3VibmF2LWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogJHN1Ym5hdi1ob3Zlci10ZXh0LWRlY29yYXRpb247XG4gICAgQGluY2x1ZGUgaG9vay1zdWJuYXYtaG92ZXIoKTtcbn1cblxuLypcbiAqIEFjdGl2ZVxuICovXG5cbi51ay1zdWJuYXYgPiAudWstYWN0aXZlID4gKiB7XG4gICAgY29sb3I6ICRzdWJuYXYtYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stc3VibmF2LWFjdGl2ZSgpO1xufVxuXG5cbi8qIE1vZGlmaWVyOiAnc3VibmF2LWxpbmUnXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXN1Ym5hdi1saW5lID4gOmJlZm9yZSB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAkc3VibmF2LWxpbmUtYm9yZGVyLWhlaWdodDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4udWstc3VibmF2LWxpbmUgPiA6bnRoLWNoaWxkKG4rMik6YmVmb3JlIHtcbiAgICBtYXJnaW4tcmlnaHQ6ICRzdWJuYXYtbWFyZ2luLWhvcml6b250YWw7XG4gICAgYm9yZGVyLWxlZnQ6ICRzdWJuYXYtbGluZS1ib3JkZXItd2lkdGggc29saWQgJHN1Ym5hdi1saW5lLWJvcmRlcjtcbiAgICBAaW5jbHVkZSBob29rLXN1Ym5hdi1saW5lLWRpdmlkZXIoKTtcbn1cblxuXG4vKiBNb2RpZmllcjogJ3N1Ym5hdi1waWxsJ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zdWJuYXYtcGlsbCA+ICogPiAqIHtcbiAgICBwYWRkaW5nOiAkc3VibmF2LXBpbGwtcGFkZGluZy12ZXJ0aWNhbCAkc3VibmF2LXBpbGwtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIEBpbmNsdWRlIGhvb2stc3VibmF2LXBpbGwoKTtcbn1cblxuLypcbiAqIEhvdmVyXG4gKiAxLiBBcHBseSBob3ZlciBzdHlsZSBhbHNvIHRvIGZvY3VzIHN0YXRlXG4gKiAyLiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICovXG5cbi51ay1zdWJuYXYtcGlsbCA+ICogPiA6aG92ZXIsXG4udWstc3VibmF2LXBpbGwgPiAqID4gOmZvY3VzIHsgLy8gMVxuICAgIGJhY2tncm91bmQ6ICRzdWJuYXYtcGlsbC1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkc3VibmF2LXBpbGwtaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpbmNsdWRlIGhvb2stc3VibmF2LXBpbGwtaG92ZXIoKTtcbn1cblxuLypcbiAqIEFjdGl2ZVxuICogYGxpYCBuZWVkZWQgZm9yIGhpZ2hlciBzcGVjaWZpY2l0eSB0byBvdmVycmlkZSBob3ZlclxuICovXG5cbi51ay1zdWJuYXYtcGlsbCA+IC51ay1hY3RpdmUgPiAqIHtcbiAgICBiYWNrZ3JvdW5kOiAkc3VibmF2LXBpbGwtYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRzdWJuYXYtcGlsbC1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1zdWJuYXYtcGlsbC1hY3RpdmUoKTtcbn1cblxuXG4vKiBEaXNhYmxlZCBzdGF0ZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1zdWJuYXYgPiAudWstZGlzYWJsZWQgPiAqIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGNvbG9yOiAkc3VibmF2LWRpc2FibGVkLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHRleHQ7XG4gICAgQGluY2x1ZGUgaG9vay1zdWJuYXYtZGlzYWJsZWQoKTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stc3VibmF2LW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stc3VibmF2KCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1saW5lLWRpdmlkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1zdWJuYXYtcGlsbCgpe31cbi8vIEBtaXhpbiBob29rLXN1Ym5hdi1waWxsLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LXBpbGwtYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LWRpc2FibGVkKCl7fVxuLy8gQG1peGluIGhvb2stc3VibmF2LW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBCcmVhZGNydW1iXG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBhIGJyZWFkY3J1bWIgbmF2aWdhdGlvblxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWJyZWFkY3J1bWJgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLWJyZWFkY3J1bWIgLS0+XG4vLyA8dWwgY2xhc3M9XCJ1ay1icmVhZGNydW1iXCI+XG4vLyAgICAgPGxpPjxhIGhyZWY9XCJcIj48L2E+PC9saT5cbi8vICAgICA8bGk+PHNwYW4+PC9zcGFuPjwvbGk+XG4vLyAgICAgPGxpIGNsYXNzPVwidWstYWN0aXZlXCI+PHNwYW4+PC9zcGFuPjwvbGk+XG4vLyA8L3VsPlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRicmVhZGNydW1iLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuXG4kYnJlYWRjcnVtYi1kaXZpZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIvXCIgIWRlZmF1bHQ7XG4kYnJlYWRjcnVtYi1kaXZpZGVyLW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuJGJyZWFkY3J1bWItZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IEJyZWFkY3J1bWJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gUmVtb3ZlIGRlZmF1bHQgbGlzdCBzdHlsZVxuICogMi4gUmVtb3ZlIHdoaXRlc3BhY2UgYmV0d2VlbiBjaGlsZCBlbGVtZW50cyB3aGVuIHVzaW5nIGBpbmxpbmUtYmxvY2tgXG4gKi9cblxuLnVrLWJyZWFkY3J1bWIge1xuICAgIC8qIDEgKi9cbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIGZvbnQtc2l6ZTogMC4wMDFweDtcbiAgICBAaW5jbHVkZSBob29rLWJyZWFkY3J1bWIoKTtcbn1cblxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZXNldCB3aGl0ZXNwYWNlIGhhY2tcbiAqL1xuXG4udWstYnJlYWRjcnVtYiA+IGxpIHtcbiAgICBmb250LXNpemU6ICRicmVhZGNydW1iLWZvbnQtc2l6ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4udWstYnJlYWRjcnVtYiA+IGxpLFxuLnVrLWJyZWFkY3J1bWIgPiBsaSA+IGEsXG4udWstYnJlYWRjcnVtYiA+IGxpID4gc3BhbiB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4udWstYnJlYWRjcnVtYiA+IGxpOm50aC1jaGlsZChuKzIpOmJlZm9yZSB7XG4gICAgY29udGVudDogJGJyZWFkY3J1bWItZGl2aWRlcjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luOiAwICRicmVhZGNydW1iLWRpdmlkZXItbWFyZ2luO1xuICAgIEBpbmNsdWRlIGhvb2stYnJlYWRjcnVtYi1kaXZpZGVyKCk7XG59XG5cbi8qXG4gKiBEaXNhYmxlZFxuICovXG5cbi51ay1icmVhZGNydW1iID4gbGk6bm90KC51ay1hY3RpdmUpID4gc3BhbiB7IGNvbG9yOiAkYnJlYWRjcnVtYi1kaXNhYmxlZC1jb2xvcjsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1icmVhZGNydW1iLW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stYnJlYWRjcnVtYigpe31cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLWJyZWFkY3J1bWItbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIFBhZ2luYXRpb25cbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgZm9yIGEgbmF2aWdhdGlvbiBiZXR3ZWVuIHBhZ2VzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstcGFnaW5hdGlvbmBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1wYWdpbmF0aW9uLXByZXZpb3VzYFxuLy8gICAgICAgICAgICAgICAgICBgdWstcGFnaW5hdGlvbi1uZXh0YFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXBhZ2luYXRpb24tbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhZ2luYXRpb24tcmlnaHRgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZGlzYWJsZWRgXG4vL1xuLy8gTWFya3VwOlxuLy9cbi8vIDwhLS0gdWstcGFnaW5hdGlvbiAtLT5cbi8vIDx1bCBjbGFzcz1cInVrLXBhZ2luYXRpb25cIj5cbi8vICAgICA8bGkgY2xhc3M9XCJ1ay1hY3RpdmVcIj48c3Bhbj48L3NwYW4+PC9saT5cbi8vICAgICA8bGk+PGEgaHJlZj1cIlwiPjwvYT48L2xpPlxuLy8gPC91bD5cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kcGFnaW5hdGlvbi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLW1hcmdpbi1sZWZ0OiAgICAgICAgICAgICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgM3B4ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICNlZWUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1vbmNsaWNrLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLW9uY2xpY2stY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgIzAwYThlNiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBQYWdpbmF0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlbW92ZSBkZWZhdWx0IGxpc3Qgc3R5bGVcbiAqIDIuIENlbnRlciBwYWdpbmF0aW9uIGJ5IGRlZmF1bHRcbiAqIDMuIFJlbW92ZSB3aGl0ZXNwYWNlIGJldHdlZW4gY2hpbGQgZWxlbWVudHMgd2hlbiB1c2luZyBgaW5saW5lLWJsb2NrYFxuICovXG5cbi51ay1wYWdpbmF0aW9uIHtcbiAgICAvKiAxICovXG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLyogMyAqL1xuICAgIGZvbnQtc2l6ZTogMC4wMDFweDtcbn1cblxuLypcbiAqIE1pY3JvIGNsZWFyZml4XG4gKiBOZWVkZWQgaWYgYHVrLXBhZ2luYXRpb24tcHJldmlvdXNgIG9yIGB1ay1wYWdpbmF0aW9uLW5leHRgIHN1Yi1vYmplY3RzIGFyZSB1c2VkXG4gKi9cblxuLnVrLXBhZ2luYXRpb246YmVmb3JlLFxuLnVrLXBhZ2luYXRpb246YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG59XG5cbi51ay1wYWdpbmF0aW9uOmFmdGVyIHsgY2xlYXI6IGJvdGg7IH1cblxuXG4vKiBJdGVtc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBSZXNldCB3aGl0ZXNwYWNlIGhhY2tcbiAqIDIuIFJlbW92ZSB0aGUgZ2FwIGF0IHRoZSBib3R0b20gb2YgaXQgY29udGFpbmVyXG4gKi9cblxuLnVrLXBhZ2luYXRpb24gPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8qIDEgKi9cbiAgICBmb250LXNpemU6ICRwYWdpbmF0aW9uLWZvbnQtc2l6ZTtcbiAgICAvKiAyICovXG4gICAgdmVydGljYWwtYWxpZ246IHRvcDtcbn1cblxuLnVrLXBhZ2luYXRpb24gPiBsaTpudGgtY2hpbGQobisyKSB7IG1hcmdpbi1sZWZ0OiAkcGFnaW5hdGlvbi1tYXJnaW4tbGVmdDsgfVxuXG4vKlxuICogMS4gTWFrZXMgcGFnaW5hdGlvbiBtb3JlIHJvYnVzdCBhZ2FpbnN0IGRpZmZlcmVudCBib3gtc2l6aW5nIHVzZVxuICogMi4gUmVzZXQgdGV4dC1hbGlnbiB0byBjZW50ZXIgaWYgYWxpZ25tZW50IG1vZGlmaWVyIGlzIHVzZWRcbiAqL1xuXG4udWstcGFnaW5hdGlvbiA+IGxpID4gYSxcbi51ay1wYWdpbmF0aW9uID4gbGkgPiBzcGFuIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWluLXdpZHRoOiAkcGFnaW5hdGlvbi1saW5lLWhlaWdodCArICgyICogJHBhZ2luYXRpb24tcGFkZGluZy12ZXJ0aWNhbCkgLSAoMiAqICRwYWdpbmF0aW9uLXBhZGRpbmctaG9yaXpvbnRhbCk7XG4gICAgcGFkZGluZzogJHBhZ2luYXRpb24tcGFkZGluZy12ZXJ0aWNhbCAkcGFnaW5hdGlvbi1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbGluZS1oZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmUtaGVpZ2h0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAvKiAxICovXG4gICAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gICAgLyogMiAqL1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBAaW5jbHVkZSBob29rLXBhZ2luYXRpb24taXRlbSgpO1xufVxuXG4vKlxuICogTGlua3NcbiAqL1xuXG4udWstcGFnaW5hdGlvbiA+IGxpID4gYSB7XG4gICAgYmFja2dyb3VuZDogJHBhZ2luYXRpb24tYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLWxpbmsoKTtcbn1cblxuLypcbiAqIEhvdmVyXG4gKiAxLiBBcHBseSBob3ZlciBzdHlsZSBhbHNvIHRvIGZvY3VzIHN0YXRlXG4gKiAyLiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICovXG5cbi51ay1wYWdpbmF0aW9uID4gbGkgPiBhOmhvdmVyLFxuLnVrLXBhZ2luYXRpb24gPiBsaSA+IGE6Zm9jdXMgeyAvLyAxXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24taG92ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgLyogMiAqL1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLWxpbmstaG92ZXIoKTtcbn1cblxuLyogT25DbGljayAqL1xuLnVrLXBhZ2luYXRpb24gPiBsaSA+IGE6YWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1vbmNsaWNrLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRwYWdpbmF0aW9uLW9uY2xpY2stY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLWxpbmstYWN0aXZlKCk7XG59XG5cbi8qXG4gKiBBY3RpdmVcbiAqL1xuXG4udWstcGFnaW5hdGlvbiA+IC51ay1hY3RpdmUgPiBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stcGFnaW5hdGlvbi1hY3RpdmUoKTtcbn1cblxuLypcbiAqIERpc2FibGVkXG4gKi9cblxuLnVrLXBhZ2luYXRpb24gPiAudWstZGlzYWJsZWQgPiBzcGFuIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXBhZ2luYXRpb24tZGlzYWJsZWQoKTtcbn1cblxuXG4vKiBQcmV2aW91cyBhbmQgbmV4dCBuYXZpZ2F0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBhZ2luYXRpb24tcHJldmlvdXMgeyBmbG9hdDogbGVmdDsgfVxuLnVrLXBhZ2luYXRpb24tbmV4dCB7IGZsb2F0OiByaWdodDsgfVxuXG5cbi8qIEFsaWdubWVudCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstcGFnaW5hdGlvbi1sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnVrLXBhZ2luYXRpb24tcmlnaHQgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1wYWdpbmF0aW9uLW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbi1pdGVtKCl7fVxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbi1saW5rKCl7fVxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbi1saW5rLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbi1saW5rLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLXBhZ2luYXRpb24tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stcGFnaW5hdGlvbi1kaXNhYmxlZCgpe31cbi8vIEBtaXhpbiBob29rLXBhZ2luYXRpb24tbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIFRhYlxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgYSB0YWJiZWQgbmF2aWdhdGlvblxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXRhYmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay10YWItZmxpcGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYi1jZW50ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWItZ3JpZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYi1ib3R0b21gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay10YWItbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYi1yaWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYi1yZXNwb25zaXZlYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRpc2FibGVkYFxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLXRhYiAtLT5cbi8vIDx1bCBjbGFzcz1cInVrLXRhYlwiIGRhdGEtdWstdGFiPlxuLy8gICAgIDxsaSBjbGFzcz1cInVrLWFjdGl2ZVwiPjxhIGhyZWY9XCJcIj48L2E+PC9saT5cbi8vICAgICA8bGk+PGEgaHJlZj1cIlwiPjwvYT48L2xpPlxuLy8gPC91bD5cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdGFiLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiR0YWItYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdGFiLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgICAgICAgMTJweCAhZGVmYXVsdDtcbiR0YWItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG4kdGFiLXBhZGRpbmctdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJHRhYi1wYWRkaW5nLXZlcnRpY2FsICFkZWZhdWx0O1xuJHRhYi1wYWRkaW5nLWJvdHRvbTogICAgICAgICAgICAgICAgICAgICAgICAgICAgICR0YWItcGFkZGluZy12ZXJ0aWNhbCAhZGVmYXVsdDtcbiR0YWItbWFyZ2luLWhvcml6b250YWw6ICAgICAgICAgICAgICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kdGFiLW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJHRhYi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMwN0QgIWRlZmF1bHQ7XG4kdGFiLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR0YWItaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJHRhYi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMwNTkgIWRlZmF1bHQ7XG4kdGFiLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiR0YWItYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJHRhYi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kdGFiLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVGFiXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRhYiB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICBib3JkZXItYm90dG9tOiAkdGFiLWJvcmRlci13aWR0aCBzb2xpZCAkdGFiLWJvcmRlcjtcbn1cblxuLypcbiAqIE1pY3JvIGNsZWFyZml4IG9uIHRoZSBkZWVwZXN0IGNvbnRhaW5lclxuICovXG5cbi51ay10YWI6YmVmb3JlLFxuLnVrLXRhYjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiB0YWJsZTtcbn1cblxuLnVrLXRhYjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbi8qXG4gKiBJdGVtc1xuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGRyb3Bkb3duc1xuICovXG5cbi51ay10YWIgPiBsaSB7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0YWItYm9yZGVyLXdpZHRoO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG59XG5cbi51ay10YWIgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6ICR0YWItcGFkZGluZy10b3AgJHRhYi1wYWRkaW5nLWhvcml6b250YWwgJHRhYi1wYWRkaW5nLWJvdHRvbSAkdGFiLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBib3JkZXI6ICR0YWItYm9yZGVyLXdpZHRoIHNvbGlkIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgY29sb3I6ICR0YWItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIEBpbmNsdWRlIGhvb2stdGFiKCk7XG59XG5cbi51ay10YWIgPiBsaTpudGgtY2hpbGQobisyKSA+IGEgeyBtYXJnaW4tbGVmdDogJHRhYi1tYXJnaW4taG9yaXpvbnRhbDsgfVxuXG4vKlxuICogSG92ZXJcbiAqIDEuIEFwcGx5IGhvdmVyIHN0eWxlIGFsc28gdG8gZm9jdXMgc3RhdGVcbiAqIDIuIEFsc28gYXBwbHkgaWYgZHJvcGRvd24gaXMgb3BlbmVkXG4gKiAzLiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICovXG5cbi51ay10YWIgPiBsaSA+IGE6aG92ZXIsXG4udWstdGFiID4gbGkgPiBhOmZvY3VzLCAvLyAxXG4udWstdGFiID4gbGkudWstb3BlbiA+IGEgeyAvLyAyXG4gICAgYm9yZGVyLWNvbG9yOiAkdGFiLWhvdmVyLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkdGFiLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWItaG92ZXItY29sb3I7XG4gICAgLyogMiAqL1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGluY2x1ZGUgaG9vay10YWItaG92ZXIoKTtcbn1cblxuLnVrLXRhYiA+IGxpOm5vdCgudWstYWN0aXZlKSA+IGE6aG92ZXIsXG4udWstdGFiID4gbGk6bm90KC51ay1hY3RpdmUpID4gYTpmb2N1cyxcbi51ay10YWIgPiBsaS51ay1vcGVuOm5vdCgudWstYWN0aXZlKSA+IGEge1xuICAgIG1hcmdpbi1ib3R0b206ICR0YWItYm9yZGVyLXdpZHRoO1xuICAgIHBhZGRpbmctYm90dG9tOiAkdGFiLXBhZGRpbmctYm90dG9tIC0gJHRhYi1ib3JkZXItd2lkdGg7XG59XG5cbi8qIEFjdGl2ZSAqL1xuLnVrLXRhYiA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgIGJvcmRlci1jb2xvcjogJHRhYi1hY3RpdmUtYm9yZGVyO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQ6ICR0YWItYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICR0YWItYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stdGFiLWFjdGl2ZSgpO1xufVxuXG4vKiBEaXNhYmxlZCAqL1xuLnVrLXRhYiA+IGxpLnVrLWRpc2FibGVkID4gYSB7XG4gICAgY29sb3I6ICR0YWItZGlzYWJsZWQtY29sb3I7XG4gICAgY3Vyc29yOiB0ZXh0O1xuICAgIEBpbmNsdWRlIGhvb2stdGFiLWRpc2FibGVkKCk7XG59XG5cbi51ay10YWIgPiBsaS51ay1kaXNhYmxlZCA+IGE6aG92ZXIsXG4udWstdGFiID4gbGkudWstZGlzYWJsZWQgPiBhOmZvY3VzLFxuLnVrLXRhYiA+IGxpLnVrLWRpc2FibGVkLnVrLWFjdGl2ZSA+IGEge1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuXG4vKiBNb2RpZmllcjogJ3RhYi1mbGlwJ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWItZmxpcCA+IGxpIHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi51ay10YWItZmxpcCA+IGxpOm50aC1jaGlsZChuKzIpID4gYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAkdGFiLW1hcmdpbi1ob3Jpem9udGFsO1xufVxuXG5cbi8qIE1vZGlmaWVyOiAndGFiLXJlc3BvbnNpdmUnXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRhYiA+IGxpLnVrLXRhYi1yZXNwb25zaXZlID4gYSB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xufVxuXG4vKlxuICogSWNvblxuICovXG5cbi51ay10YWItcmVzcG9uc2l2ZSA+IGE6YmVmb3JlIHtcbiAgICBjb250ZW50OiBcIlxcZjBjOVxcMDBhMFwiO1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbn1cblxuXG4vKiBNb2RpZmllcjogJ3RhYi1jZW50ZXInXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRhYi1jZW50ZXIgeyBib3JkZXItYm90dG9tOiAkdGFiLWJvcmRlci13aWR0aCBzb2xpZCAkdGFiLWJvcmRlcjsgfVxuXG4udWstdGFiLWNlbnRlci1ib3R0b20ge1xuICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogJHRhYi1ib3JkZXItd2lkdGggc29saWQgJHRhYi1ib3JkZXI7XG59XG5cbi51ay10YWItY2VudGVyOmJlZm9yZSxcbi51ay10YWItY2VudGVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4udWstdGFiLWNlbnRlcjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cblxuLypcbiAqIDEuIFVzaW5nIGByaWdodGAgdG8gcHJldmVudCB2ZXJ0aWNhbCBzY3JvbGxiYXIgY2F1c2VkIGJ5IGNlbnRlcmluZyBpZiB0byBtYW55IHRhYnNcbiAqL1xuXG4udWstdGFiLWNlbnRlciAudWstdGFiIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcmlnaHQ6IDUwJTtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgZmxvYXQ6IHJpZ2h0O1xufVxuXG4udWstdGFiLWNlbnRlciAudWstdGFiID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICByaWdodDogLTUwJTtcbn1cblxuLnVrLXRhYi1jZW50ZXIgLnVrLXRhYiA+IGxpID4gYSB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuXG5cbi8qIE1vZGlmaWVyOiAndGFiLWJvdHRvbSdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGFiLWJvdHRvbSB7XG4gICAgYm9yZGVyLXRvcDogJHRhYi1ib3JkZXItd2lkdGggc29saWQgJHRhYi1ib3JkZXI7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLnVrLXRhYi1ib3R0b20gPiBsaSB7XG4gICAgbWFyZ2luLXRvcDogLSR0YWItYm9yZGVyLXdpZHRoO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi51ay10YWItYm90dG9tID4gbGkgPiBhIHtcbiAgICBwYWRkaW5nLXRvcDogJHRhYi1wYWRkaW5nLWJvdHRvbTtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHRhYi1wYWRkaW5nLXRvcDtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFiLWJvcmRlci13aWR0aDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xufVxuXG4udWstdGFiLWJvdHRvbSA+IGxpOm5vdCgudWstYWN0aXZlKSA+IGE6aG92ZXIsXG4udWstdGFiLWJvdHRvbSA+IGxpOm5vdCgudWstYWN0aXZlKSA+IGE6Zm9jdXMsXG4udWstdGFiLWJvdHRvbSA+IGxpLnVrLW9wZW46bm90KC51ay1hY3RpdmUpID4gYSB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBtYXJnaW4tdG9wOiAkdGFiLWJvcmRlci13aWR0aDtcbiAgICBwYWRkaW5nLWJvdHRvbTogJHRhYi1wYWRkaW5nLXRvcDtcbiAgICBwYWRkaW5nLXRvcDogJHRhYi1wYWRkaW5nLWJvdHRvbSAtICR0YWItYm9yZGVyLXdpZHRoO1xufVxuXG4udWstdGFiLWJvdHRvbSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0YWItYWN0aXZlLWJvcmRlcjtcbn1cblxuXG4vKiBNb2RpZmllcjogJ3RhYi1ncmlkJ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dCB0byBwcmV2ZW50IGhpZGRlbiBib3JkZXIgYmVjYXVzZSBvZiBuZWdhdGl2ZSBgei1pbmRleGBcbiAqL1xuXG4udWstdGFiLWdyaWQge1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRhYi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgei1pbmRleDogMDtcbn1cblxuLnVrLXRhYi1ncmlkOmJlZm9yZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6ICR0YWItbWFyZ2luLWhvcml6b250YWw7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAtJHRhYi1ib3JkZXItd2lkdGg7XG4gICAgYm9yZGVyLXRvcDogJHRhYi1ib3JkZXItd2lkdGggc29saWQgJHRhYi1ib3JkZXI7XG4gICAgLyogMSAqL1xuICAgIHotaW5kZXg6IC0xO1xufVxuXG4udWstdGFiLWdyaWQgPiBsaTpmaXJzdC1jaGlsZCA+IGEgeyBtYXJnaW4tbGVmdDogJHRhYi1tYXJnaW4taG9yaXpvbnRhbDsgfVxuXG4udWstdGFiLWdyaWQgPiBsaSA+IGEgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cblxuLypcbiAqIElmIGB1ay10YWItYm90dG9tYFxuICovXG5cbi51ay10YWItZ3JpZC51ay10YWItYm90dG9tIHsgYm9yZGVyLXRvcDogbm9uZTsgfVxuLnVrLXRhYi1ncmlkLnVrLXRhYi1ib3R0b206YmVmb3JlIHtcbiAgICB0b3A6IC0kdGFiLWJvcmRlci13aWR0aDtcbiAgICBib3R0b206IGF1dG87XG59XG5cblxuLyogTW9kaWZpZXI6ICd0YWItbGVmdCcsICd0YWItcmlnaHQnXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay10YWItbGVmdCxcbiAgICAudWstdGFiLXJpZ2h0IHsgYm9yZGVyLWJvdHRvbTogbm9uZTsgfVxuXG4gICAgLnVrLXRhYi1sZWZ0ID4gbGksXG4gICAgLnVrLXRhYi1yaWdodCA+IGxpIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuXG4gICAgLnVrLXRhYi1sZWZ0ID4gbGkgPiBhLFxuICAgIC51ay10YWItcmlnaHQgPiBsaSA+IGEge1xuICAgICAgICBwYWRkaW5nLXRvcDogJHRhYi1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHRhYi1wYWRkaW5nLXZlcnRpY2FsO1xuICAgIH1cblxuICAgIC51ay10YWItbGVmdCA+IGxpOm50aC1jaGlsZChuKzIpID4gYSxcbiAgICAudWstdGFiLXJpZ2h0ID4gbGk6bnRoLWNoaWxkKG4rMikgPiBhIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgICAgIG1hcmdpbi10b3A6ICR0YWItbWFyZ2luLXZlcnRpY2FsO1xuICAgIH1cblxuICAgIC51ay10YWItbGVmdCA+IGxpLnVrLWFjdGl2ZSA+IGEsXG4gICAgLnVrLXRhYi1yaWdodCA+IGxpLnVrLWFjdGl2ZSA+IGEgeyBib3JkZXItY29sb3I6ICR0YWItYWN0aXZlLWJvcmRlcjsgfVxuXG4gICAgLypcbiAgICAgKiBNb2RpZmllcjogJ3RhYi1sZWZ0J1xuICAgICAqL1xuXG4gICAgLnVrLXRhYi1sZWZ0IHsgYm9yZGVyLXJpZ2h0OiAkdGFiLWJvcmRlci13aWR0aCBzb2xpZCAkdGFiLWJvcmRlcjsgfVxuICAgIC51ay10YWItbGVmdCA+IGxpIHsgbWFyZ2luLXJpZ2h0OiAtJHRhYi1ib3JkZXItd2lkdGg7IH1cbiAgICAudWstdGFiLWxlZnQgPiBsaSA+IGEge1xuICAgICAgICBib3JkZXItYm90dG9tLXdpZHRoOiAkdGFiLWJvcmRlci13aWR0aDtcbiAgICAgICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIH1cbiAgICAudWstdGFiLWxlZnQgPiBsaTpub3QoLnVrLWFjdGl2ZSkgPiBhOmhvdmVyLFxuICAgIC51ay10YWItbGVmdCA+IGxpOm5vdCgudWstYWN0aXZlKSA+IGE6Zm9jdXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICR0YWItYm9yZGVyLXdpZHRoO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogJHRhYi1wYWRkaW5nLXZlcnRpY2FsO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkdGFiLXBhZGRpbmctaG9yaXpvbnRhbCAtICR0YWItYm9yZGVyLXdpZHRoO1xuICAgIH1cbiAgICAudWstdGFiLWxlZnQgPiBsaS51ay1hY3RpdmUgPiBhIHsgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3BhcmVudDsgfVxuXG4gICAgLypcbiAgICAgKiBNb2RpZmllcjogJ3RhYi1yaWdodCdcbiAgICAgKi9cblxuICAgIC51ay10YWItcmlnaHQgeyBib3JkZXItbGVmdDogJHRhYi1ib3JkZXItd2lkdGggc29saWQgJHRhYi1ib3JkZXI7IH1cbiAgICAudWstdGFiLXJpZ2h0ID4gbGkgeyBtYXJnaW4tbGVmdDogLSR0YWItYm9yZGVyLXdpZHRoOyB9XG4gICAgLnVrLXRhYi1yaWdodCA+IGxpID4gYSB7XG4gICAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6ICR0YWItYm9yZGVyLXdpZHRoO1xuICAgICAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICB9XG4gICAgLnVrLXRhYi1yaWdodCA+IGxpOm5vdCgudWstYWN0aXZlKSA+IGE6aG92ZXIsXG4gICAgLnVrLXRhYi1yaWdodCA+IGxpOm5vdCgudWstYWN0aXZlKSA+IGE6Zm9jdXMge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBtYXJnaW4tbGVmdDogJHRhYi1ib3JkZXItd2lkdGg7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAkdGFiLXBhZGRpbmctdmVydGljYWw7XG4gICAgICAgIHBhZGRpbmctbGVmdDogJHRhYi1wYWRkaW5nLWhvcml6b250YWwgLSAkdGFiLWJvcmRlci13aWR0aDtcbiAgICB9XG4gICAgLnVrLXRhYi1yaWdodCA+IGxpLnVrLWFjdGl2ZSA+IGEgeyBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQ7IH1cblxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay10YWItbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay10YWIoKXt9XG4vLyBAbWl4aW4gaG9vay10YWItaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay10YWItYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stdGFiLWRpc2FibGVkKCl7fVxuLy8gQG1peGluIGhvb2stdGFiLW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBUaHVtYm5hdlxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgYSB0aHVtYm5haWwgbmF2aWdhdGlvblxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLXRodW1ibmF2YFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyBNYXJrdXA6XG4vL1xuLy8gPCEtLSB1ay10aHVtYm5hdiAtLT5cbi8vIDx1bCBjbGFzcz1cInVrLXRodW1ibmF2XCI+XG4vLyAgICAgPGxpIGNsYXNzPVwidWstYWN0aXZlXCI+PGEgaHJlZj1cIlwiPjwvYT48L2xpPlxuLy8gICAgIDxsaT48YSBocmVmPVwiXCI+PC9hPjwvbGk+XG4vLyA8L3VsPlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0aHVtYm5hdi1tYXJnaW4taG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJHRodW1ibmF2LW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICR0aHVtYm5hdi1tYXJnaW4taG9yaXpvbnRhbCAhZGVmYXVsdDtcblxuJHRodW1ibmF2LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiR0aHVtYm5hdi1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwLjcgIWRlZmF1bHQ7XG4kdGh1bWJuYXYtaG92ZXItb3BhY2l0eTogICAgICAgICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcbiR0aHVtYm5hdi1hY3RpdmUtb3BhY2l0eTogICAgICAgICAgICAgICAgICAgICAgICAxICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUaHVtYm5hdlxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBHdXR0ZXJcbiAqIDIuIFJlbW92ZSBkZWZhdWx0IGxpc3Qgc3R5bGVcbiAqL1xuXG4udWstdGh1bWJuYXYge1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xuICAgIC1tcy1mbGV4LXdyYXA6IHdyYXA7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IHdyYXA7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8qIDEgKi9cbiAgICBtYXJnaW4tbGVmdDogLSR0aHVtYm5hdi1tYXJnaW4taG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tdG9wOiAtJHRodW1ibmF2LW1hcmdpbi12ZXJ0aWNhbDtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xufVxuXG4vKlxuICogMS4gU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBjb250ZW50IGRpbWVuc2lvbnNcbiAqIDIuIEhvcml6b250YWwgZ3V0dGVyIGlzIHVzaW5nIGBwYWRkaW5nYCBzbyBgdWstd2lkdGgtKmAgY2xhc3NlcyBjYW4gYmUgYXBwbGllZFxuICovXG5cbi51ay10aHVtYm5hdiA+ICoge1xuICAgIC8qIDEgKi9cbiAgICAtbXMtZmxleDogbm9uZTtcbiAgICAtd2Via2l0LWZsZXg6IG5vbmU7XG4gICAgZmxleDogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZy1sZWZ0OiAkdGh1bWJuYXYtbWFyZ2luLWhvcml6b250YWw7XG4gICAgbWFyZ2luLXRvcDogJHRodW1ibmF2LW1hcmdpbi12ZXJ0aWNhbDtcbn1cblxuLypcbiAqIERFUFJFQ0FURUQgSUU5IFN1cHBvcnRcbiAqL1xuXG4udWstdGh1bWJuYXY6YmVmb3JlLFxuLnVrLXRodW1ibmF2OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi51ay10aHVtYm5hdjphZnRlciB7IGNsZWFyOiBib3RoOyB9XG5cbi51ay10aHVtYm5hdiA+ICogeyBmbG9hdDogbGVmdDsgfVxuXG5cbi8qIEl0ZW1zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRodW1ibmF2ID4gKiA+ICoge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJhY2tncm91bmQ6ICR0aHVtYm5hdi1iYWNrZ3JvdW5kO1xuICAgIEBpbmNsdWRlIGhvb2stdGh1bWJuYXYoKTtcbn1cblxuLnVrLXRodW1ibmF2ID4gKiA+ICogPiBpbWcge1xuICAgIG9wYWNpdHk6ICR0aHVtYm5hdi1vcGFjaXR5O1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjE1cyBsaW5lYXI7XG59XG5cbi8qXG4gKiBIb3ZlclxuICovXG5cbi51ay10aHVtYm5hdiA+ICogPiA6aG92ZXIgPiBpbWcsXG4udWstdGh1bWJuYXYgPiAqID4gOmZvY3VzID4gaW1nIHsgb3BhY2l0eTogJHRodW1ibmF2LWhvdmVyLW9wYWNpdHk7IH1cblxuLypcbiAqIEFjdGl2ZVxuICovXG5cbi51ay10aHVtYm5hdiA+IC51ay1hY3RpdmUgPiAqID4gaW1nIHsgb3BhY2l0eTogJHRodW1ibmF2LWFjdGl2ZS1vcGFjaXR5OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLXRodW1ibmF2LW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stdGh1bWJuYXYoKXt9XG4vLyBAbWl4aW4gaG9vay10aHVtYm5hdi1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgTGlzdFxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3Igb3JkZXJlZCBhbmQgdW5vcmRlcmVkIGxpc3RzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbGlzdGBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1saXN0LWxpbmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LXN0cmlwZWRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1saXN0LXNwYWNlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRsaXN0LW5lc3RlZC1wYWRkaW5nLWxlZnQ6ICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG4kbGlzdC1saW5lLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJGxpc3QtbGluZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbGlzdC1saW5lLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgMXB4ICFkZWZhdWx0O1xuXG4kbGlzdC1zdHJpcGVkLXBhZGRpbmctdmVydGljYWw6ICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRsaXN0LXN0cmlwZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kbGlzdC1zcGFjZS1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTGlzdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1saXN0IHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG5cbi8qXG4gKiBNaWNybyBjbGVhcmZpeCB0byBtYWtlIGxpc3QgbW9yZSByb2J1c3RcbiAqL1xuXG4udWstbGlzdCA+IGxpOmJlZm9yZSxcbi51ay1saXN0ID4gbGk6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG59XG5cbi51ay1saXN0ID4gbGk6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4vKlxuICogUmVtb3ZlIG1hcmdpbiBmcm9tIHRoZSBsYXN0LWNoaWxkXG4gKi9cblxuLnVrLWxpc3QgPiBsaSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKlxuICogTmVzdGVkIGxpc3RzXG4gKi9cblxuLnVrLWxpc3QgdWwge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nLWxlZnQ6ICRsaXN0LW5lc3RlZC1wYWRkaW5nLWxlZnQ7XG4gICAgbGlzdC1zdHlsZTogbm9uZTtcbn1cblxuXG4vKiBNb2RpZmllcjogYHVrLWxpc3QtbGluZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbGlzdC1saW5lID4gbGk6bnRoLWNoaWxkKG4rMikge1xuICAgIG1hcmdpbi10b3A6ICRsaXN0LWxpbmUtbWFyZ2luLXRvcDtcbiAgICBwYWRkaW5nLXRvcDogJGxpc3QtbGluZS1tYXJnaW4tdG9wO1xuICAgIGJvcmRlci10b3A6ICRsaXN0LWxpbmUtYm9yZGVyLXdpZHRoIHNvbGlkICRsaXN0LWxpbmUtYm9yZGVyO1xuICAgIEBpbmNsdWRlIGhvb2stbGlzdC1saW5lKCk7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay1saXN0LXN0cmlwZWRgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWxpc3Qtc3RyaXBlZCA+IGxpIHtcbiAgICBwYWRkaW5nOiAkbGlzdC1zdHJpcGVkLXBhZGRpbmctdmVydGljYWwgJGxpc3Qtc3RyaXBlZC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGluY2x1ZGUgaG9vay1saXN0LXN0cmlwZWQoKTtcbn1cblxuLnVrLWxpc3Qtc3RyaXBlZCA+IGxpOm50aC1vZi10eXBlKG9kZCkgeyBiYWNrZ3JvdW5kOiAkbGlzdC1zdHJpcGVkLWJhY2tncm91bmQ7IH1cblxuXG4vKiBNb2RpZmllcjogYHVrLWxpc3Qtc3BhY2VgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWxpc3Qtc3BhY2UgPiBsaTpudGgtY2hpbGQobisyKSB7IG1hcmdpbi10b3A6ICRsaXN0LXNwYWNlLW1hcmdpbi10b3A7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stbGlzdC1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWxpc3QtbGluZSgpe31cbi8vIEBtaXhpbiBob29rLWxpc3Qtc3RyaXBlZCgpe31cbi8vIEBtaXhpbiBob29rLWxpc3QtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIERlc2NyaXB0aW9uIGxpc3Rcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgZm9yIGRlc2NyaXB0aW9uIGxpc3RzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstZGVzY3JpcHRpb24tbGlzdGBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1kZXNjcmlwdGlvbi1saXN0LWhvcml6b250YWxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kZXNjcmlwdGlvbi1saXN0LWxpbmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGRlc2NyaXB0aW9uLWxpc3QtaG9yaXpvbnRhbC13aWR0aDogICAgICAgICAgICAgIDE2MHB4ICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtaG9yaXpvbnRhbC1tYXJnaW4tbGVmdDogICAgICAgIDE4MHB4ICFkZWZhdWx0O1xuXG4kZGVzY3JpcHRpb24tbGlzdC1saW5lLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtbGluZS1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcbiRkZXNjcmlwdGlvbi1saXN0LWxpbmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJGRlc2NyaXB0aW9uLWxpc3QtbGluZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbiRkZXNjcmlwdGlvbi1saXN0LWxpbmUtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IERlc2NyaXB0aW9uIGxpc3RcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5cbi8qIE1vZGlmaWVyOiBgdWstZGVzY3JpcHRpb24tbGlzdC1ob3Jpem9udGFsYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFRhYmxldCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstZGVzY3JpcHRpb24tbGlzdC1ob3Jpem9udGFsIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4gICAgLnVrLWRlc2NyaXB0aW9uLWxpc3QtaG9yaXpvbnRhbCA+IGR0IHtcbiAgICAgICAgd2lkdGg6ICRkZXNjcmlwdGlvbi1saXN0LWhvcml6b250YWwtd2lkdGg7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBjbGVhcjogYm90aDtcbiAgICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgfVxuXG4gICAgLnVrLWRlc2NyaXB0aW9uLWxpc3QtaG9yaXpvbnRhbCA+IGRkIHsgbWFyZ2luLWxlZnQ6ICRkZXNjcmlwdGlvbi1saXN0LWhvcml6b250YWwtbWFyZ2luLWxlZnQ7IH1cbn1cblxuXG4vKiBNb2RpZmllcjogYHVrLWRlc2NyaXB0aW9uLWxpc3QtbGluZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZGVzY3JpcHRpb24tbGlzdC1saW5lID4gZHQgeyBmb250LXdlaWdodDogJGRlc2NyaXB0aW9uLWxpc3QtbGluZS1mb250LXdlaWdodDsgfVxuXG4udWstZGVzY3JpcHRpb24tbGlzdC1saW5lID4gZHQ6bnRoLWNoaWxkKG4rMikge1xuICAgIG1hcmdpbi10b3A6ICRkZXNjcmlwdGlvbi1saXN0LWxpbmUtbWFyZ2luLXRvcDtcbiAgICBwYWRkaW5nLXRvcDogJGRlc2NyaXB0aW9uLWxpc3QtbGluZS1tYXJnaW4tdG9wO1xuICAgIGJvcmRlci10b3A6ICRkZXNjcmlwdGlvbi1saXN0LWxpbmUtYm9yZGVyLXdpZHRoIHNvbGlkICRkZXNjcmlwdGlvbi1saXN0LWxpbmUtYm9yZGVyO1xufVxuXG4udWstZGVzY3JpcHRpb24tbGlzdC1saW5lID4gZGQgeyBjb2xvcjogJGRlc2NyaXB0aW9uLWxpc3QtbGluZS1jb2xvcjsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1kZXNjcmlwdGlvbi1saXN0LW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stZGVzY3JpcHRpb24tbGlzdC1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBUYWJsZVxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgdGFibGVzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdGFibGVgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstdGFibGUtbWlkZGxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGFibGUtc3RyaXBlZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLWNvbmRlbnNlZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRhYmxlLWhvdmVyYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdGFibGUtbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiR0YWJsZS1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG4kdGFibGUtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgOHB4ICFkZWZhdWx0O1xuXG4kdGFibGUtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiR0YWJsZS1jYXB0aW9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuXG4kdGFibGUtc3RyaXBlZC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcblxuJHRhYmxlLWNvbmRlbnNlZC1wYWRkaW5nLXZlcnRpY2FsOiAgICAgICAgICAgICAgIDRweCAhZGVmYXVsdDtcbiR0YWJsZS1jb25kZW5zZWQtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICA4cHggIWRlZmF1bHQ7XG5cbiR0YWJsZS1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAjRUVFICFkZWZhdWx0O1xuXG4kdGFibGUtYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgJHRhYmxlLWhvdmVyLWJhY2tncm91bmQgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFRhYmxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFJlbW92ZSBtb3N0IHNwYWNpbmcgYmV0d2VlbiB0YWJsZSBjZWxscy5cbiAqIDIuIEJsb2NrIGVsZW1lbnQgYmVoYXZpb3JcbiAqIDMuIFN0eWxlXG4gKi9cblxuLnVrLXRhYmxlIHtcbiAgICAvKiAxICovXG4gICAgYm9yZGVyLWNvbGxhcHNlOiBjb2xsYXBzZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICAvKiAyICovXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyogMyAqL1xuICAgIG1hcmdpbi1ib3R0b206ICR0YWJsZS1tYXJnaW4tdmVydGljYWw7XG59XG5cbi8qXG4gKiBBZGQgbWFyZ2luIGlmIGFkamFjZW50IGVsZW1lbnRcbiAqL1xuXG4qICsgLnVrLXRhYmxlIHsgbWFyZ2luLXRvcDogJHRhYmxlLW1hcmdpbi12ZXJ0aWNhbDsgfVxuXG4udWstdGFibGUgdGgsXG4udWstdGFibGUgdGQge1xuICAgIHBhZGRpbmc6ICR0YWJsZS1wYWRkaW5nLXZlcnRpY2FsICR0YWJsZS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgQGluY2x1ZGUgaG9vay10YWJsZSgpO1xufVxuXG4vKlxuICogU2V0IGFsaWdubWVudFxuICovXG5cbi51ay10YWJsZSB0aCB7IHRleHQtYWxpZ246IGxlZnQ7IH1cbi51ay10YWJsZSB0ZCB7IHZlcnRpY2FsLWFsaWduOiB0b3A7IH1cblxuLnVrLXRhYmxlIHRoZWFkIHRoIHsgdmVydGljYWwtYWxpZ246IGJvdHRvbTsgfVxuXG4vKlxuICogQ2FwdGlvbiBhbmQgZm9vdGVyXG4gKi9cblxuLnVrLXRhYmxlIGNhcHRpb24sXG4udWstdGFibGUgdGZvb3Qge1xuICAgIGZvbnQtc2l6ZTogJHRhYmxlLWNhcHRpb24tZm9udC1zaXplO1xuICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLnVrLXRhYmxlIGNhcHRpb24ge1xuICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWNvbG9yO1xufVxuXG4vKlxuICogQWN0aXZlIFN0YXRlXG4gKi9cblxuLnVrLXRhYmxlIHRib2R5IHRyLnVrLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIEBpbmNsdWRlIGhvb2stdGFibGUtYWN0aXZlKCk7XG59XG5cblxuLyogU3ViLW1vZGlmaWVyOiBgdWstdGFibGUtbWlkZGxlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWJsZS1taWRkbGUsXG4udWstdGFibGUtbWlkZGxlIHRkIHsgdmVydGljYWwtYWxpZ246IG1pZGRsZSAhaW1wb3J0YW50OyB9XG5cblxuLyogTW9kaWZpZXI6IGB1ay10YWJsZS1zdHJpcGVkYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10YWJsZS1zdHJpcGVkIHRib2R5IHRyOm50aC1vZi10eXBlKG9kZCkge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1zdHJpcGVkLWJhY2tncm91bmQ7XG4gICAgQGluY2x1ZGUgaG9vay10YWJsZS1zdHJpcGVkKCk7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay10YWJsZS1jb25kZW5zZWRgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRhYmxlLWNvbmRlbnNlZCB0ZCB7XG4gICAgcGFkZGluZzogJHRhYmxlLWNvbmRlbnNlZC1wYWRkaW5nLXZlcnRpY2FsICR0YWJsZS1jb25kZW5zZWQtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIEBpbmNsdWRlIGhvb2stdGFibGUtY29uZGVuc2VkKCk7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay10YWJsZS1ob3ZlcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGFibGUtaG92ZXIgdGJvZHkgdHI6aG92ZXIge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIEBpbmNsdWRlIGhvb2stdGFibGUtaG92ZXIoKTtcbn1cblxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay10YWJsZS1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLXRhYmxlKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtc3RyaXBlZCgpe31cbi8vIEBtaXhpbiBob29rLXRhYmxlLWNvbmRlbnNlZCgpe31cbi8vIEBtaXhpbiBob29rLXRhYmxlLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stdGFibGUtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIEZvcm1cbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgZm9yIGZvcm1zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstZm9ybWBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1mb3JtLXJvd2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0taGVscC1pbmxpbmVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWhlbHAtYmxvY2tgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWxhYmVsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1jb250cm9sc2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0tY29udHJvbHMtY29uZGVuc2VkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1pY29uYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWZvcm0tc3RhY2tlZGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0taG9yaXpvbnRhbGBcbi8vXG4vLyBTdWItbW9kaWZpZXJzOiAgIGB1ay1mb3JtLWRhbmdlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0tc3VjY2Vzc2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0tc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWxhcmdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZm9ybS1ibGFua2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0td2lkdGgtbWluaWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0td2lkdGgtc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLXdpZHRoLW1lZGl1bWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWZvcm0td2lkdGgtbGFyZ2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1mb3JtLWNvbnRyb2xzLXRleHRgXG4vL1xuLy8gTWFya3VwOlxuLy9cbi8vIDwhLS0gdWstZm9ybSAtLT5cbi8vIDxmb3JtIGNsYXNzPVwidWstZm9ybVwiPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJ1ay1mb3JtLXJvd1wiPlxuLy8gICAgICAgICA8bGFiZWwgY2xhc3M9XCJ1ay1mb3JtLWxhYmVsXCIgZm9yPVwiZm9ybS1pbnB1dC0xXCI+PC9sYWJlbD5cbi8vICAgICAgICAgPGRpdiBjbGFzcz1cInVrLWZvcm0tY29udHJvbHNcIj5cbi8vICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGlkPVwiZm9ybS1pbnB1dC0xXCIgcGxhY2Vob2xkZXI9XCJUZXh0XCI+XG4vLyAgICAgICAgIDwvZGl2PlxuLy8gICAgIDwvZGl2PlxuLy8gPC9mb3JtPlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRmb3JtLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGZvcm0tcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDRweCA2cHggIWRlZmF1bHQ7XG4kZm9ybS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRmb3JtLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kZm9ybS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRmb3JtLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuXG4kZm9ybS1mb2N1cy1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5YmFjYSAhZGVmYXVsdDtcbiRmb3JtLWZvY3VzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZjVmYmZlICFkZWZhdWx0O1xuJGZvcm0tZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG5cbiRmb3JtLWRpc2FibGVkLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJGZvcm0tZGlzYWJsZWQtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kZm9ybS1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuJGZvcm0tcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbiRmb3JtLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kZm9ybS1sZWdlbmQtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRmb3JtLWxlZ2VuZC1ib3JkZXItd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kZm9ybS1sZWdlbmQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcbiRmb3JtLWxlZ2VuZC1saW5lLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuXG4kZm9ybS1zbWFsbC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjVweCAhZGVmYXVsdDtcbiRmb3JtLWxhcmdlLWhlaWdodDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0O1xuJGZvcm0tc21hbGwtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDNweCAzcHggIWRlZmF1bHQ7XG4kZm9ybS1sYXJnZS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOHB4IDZweCAhZGVmYXVsdDtcbiRmb3JtLXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuJGZvcm0tbGFyZ2UtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDE2cHggIWRlZmF1bHQ7XG5cbiRmb3JtLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZGM4ZDk5ICFkZWZhdWx0O1xuJGZvcm0tZGFuZ2VyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICNmZmY3ZjggIWRlZmF1bHQ7XG4kZm9ybS1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2Q4NTAzMCAhZGVmYXVsdDtcblxuJGZvcm0tc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICM4ZWM3M2IgIWRlZmF1bHQ7XG4kZm9ybS1zdWNjZXNzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZhZmZmMiAhZGVmYXVsdDtcbiRmb3JtLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjU5ZjEzICFkZWZhdWx0O1xuXG4kZm9ybS1ibGFuay1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRmb3JtLWJsYW5rLWJvcmRlci1zdHlsZTogICAgICAgICAgICAgICAgICAgICAgICBkYXNoZWQgIWRlZmF1bHQ7XG5cbiRmb3JtLW1pbmktd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0O1xuJGZvcm0tc21hbGwtd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEzMHB4ICFkZWZhdWx0O1xuJGZvcm0tbWVkaXVtLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJGZvcm0tbGFyZ2Utd2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDUwMHB4ICFkZWZhdWx0O1xuXG4kZm9ybS1oZWxwLWlubGluZS1tYXJnaW4tbGVmdDogICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRmb3JtLWhlbHAtYmxvY2stbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG5cbiRmb3JtLWNvbnRyb2xzLWNvbmRlbnNlZC1tYXJnaW4tdmVydGljYWw6ICAgICAgICA1cHggIWRlZmF1bHQ7XG5cbiRmb3JtLXN0YWNrZWQtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgICA1cHggIWRlZmF1bHQ7XG4kZm9ybS1zdGFja2VkLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcblxuJGZvcm0taG9yaXpvbnRhbC1sYWJlbC13aWR0aDogICAgICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJGZvcm0taG9yaXpvbnRhbC1sYWJlbC1tYXJnaW4tdG9wOiAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRmb3JtLWhvcml6b250YWwtY29udHJvbHMtbWFyZ2luLWxlZnQ6ICAgICAgICAgICAyMTVweCAhZGVmYXVsdDtcbiRmb3JtLWhvcml6b250YWwtY29udHJvbHMtdGV4dC1wYWRkaW5nLXRvcDogICAgICA1cHggIWRlZmF1bHQ7XG5cbiRmb3JtLWljb24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGZvcm0taWNvbi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9ybS1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogRm9ybVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBEZWZpbmUgY29uc2lzdGVudCBib3ggc2l6aW5nLlxuICogICAgRGVmYXVsdCBpcyBgY29udGVudC1ib3hgIHdpdGggZm9sbG93aW5nIGV4Y2VwdGlvbnMgc2V0IHRvIGBib3JkZXItYm94YFxuICogICAgYGJ1dHRvbmAsIGBzZWxlY3RgLCBgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdYCBhbmQgYGlucHV0W3R5cGU9XCJyYWRpb1wiXWBcbiAqICAgIGBpbnB1dFt0eXBlPVwic2VhcmNoXCJdYCBpbiBDaHJvbWUsIFNhZmFyaSBhbmQgT3BlcmFcbiAqICAgIGBpbnB1dFt0eXBlPVwiY29sb3JcIl1gIGluIEZpcmVmb3hcbiAqIDIuIEFkZHJlc3MgbWFyZ2lucyBzZXQgZGlmZmVyZW50bHkgaW4gRmlyZWZveC9JRSBhbmQgQ2hyb21lL1NhZmFyaS9PcGVyYS5cbiAqIDMuIFJlbW92ZSBgYm9yZGVyLXJhZGl1c2AgaW4gaU9TLlxuICogNC4gQ29ycmVjdCBgZm9udGAgcHJvcGVydGllcyBhbmQgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkLlxuICovXG5cbi51ay1mb3JtIGlucHV0LFxuLnVrLWZvcm0gc2VsZWN0LFxuLnVrLWZvcm0gdGV4dGFyZWEge1xuICAgIC8qIDEgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgLyogMyAqL1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgLyogNCAqL1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG59XG5cbi8qXG4gKiBBZGRyZXNzIGluY29uc2lzdGVudCBgdGV4dC10cmFuc2Zvcm1gIGluaGVyaXRhbmNlIHdoaWNoIGlzIG9ubHkgaW5oZXJpdCBpbiBGaXJlZm94XG4gKi9cblxuLnVrLWZvcm0gc2VsZWN0IHsgdGV4dC10cmFuc2Zvcm06IG5vbmU7IH1cblxuLypcbiAqIDEuIENvcnJlY3QgYGZvbnRgIHByb3BlcnRpZXMgbm90IGJlaW5nIGluaGVyaXRlZC5cbiAqIDIuIERvbid0IGluaGVyaXQgdGhlIGBmb250LXdlaWdodGAgYW5kIHVzZSBgYm9sZGAgaW5zdGVhZC5cbiAqIE5PVEU6IEJvdGggZGVjbGFyYXRpb25zIGRvbid0IHdvcmsgaW4gQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhLlxuICovXG5cbi51ay1mb3JtIG9wdGdyb3VwIHtcbiAgICAvKiAxICovXG4gICAgZm9udDogaW5oZXJpdDtcbiAgICAvKiAyICovXG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG59XG5cbi8qXG4gKiBSZW1vdmVzIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuICovXG5cbi51ay1mb3JtIGlucHV0OjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLypcbiAqIFJlbW92ZXMgZXhjZXNzIHBhZGRpbmcgaW4gSUUgOC85LzEwLlxuICovXG5cbi51ay1mb3JtIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJyYWRpb1wiXSB7IHBhZGRpbmc6IDA7IH1cblxuLypcbiAqIEltcHJvdmVzIGNvbnNpc3RlbmN5IG9mIGN1cnNvciBzdHlsZSBmb3IgY2xpY2thYmxlIGVsZW1lbnRzXG4gKi9cblxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdOm5vdCg6ZGlzYWJsZWQpLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cInJhZGlvXCJdOm5vdCg6ZGlzYWJsZWQpIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cbi8qXG4gKiBSZW1vdmUgZGVmYXVsdCBzdHlsZSBpbiBpT1MuXG4gKi9cblxuLnVrLWZvcm0gdGV4dGFyZWEsXG4udWstZm9ybSBpbnB1dDpub3QoW3R5cGVdKSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cImVtYWlsXCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cInVybFwiXSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4udWstZm9ybSBpbnB1dFt0eXBlPVwidGVsXCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJkYXRldGltZVwiXSB7IC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTsgfVxuXG4vKlxuICogUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYSBvbiBPUyBYLlxuICovXG5cbi51ay1mb3JtIGlucHV0W3R5cGU9XCJzZWFyY2hcIl06Oi13ZWJraXQtc2VhcmNoLWNhbmNlbC1idXR0b24sXG4udWstZm9ybSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1kZWNvcmF0aW9uIHsgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lOyB9XG5cbi8qXG4gKiBGaXggdGhlIGN1cnNvciBzdHlsZSBmb3IgQ2hyb21lJ3MgaW5jcmVtZW50L2RlY3JlbWVudCBidXR0b25zLiBGb3IgY2VydGFpblxuICogYGZvbnQtc2l6ZWAgdmFsdWVzIG9mIHRoZSBgaW5wdXRgLCBpdCBjYXVzZXMgdGhlIGN1cnNvciBzdHlsZSBvZiB0aGVcbiAqIGRlY3JlbWVudCBidXR0b24gdG8gY2hhbmdlIGZyb20gYGRlZmF1bHRgIHRvIGB0ZXh0YC5cbiAqL1xuXG4udWstZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1vdXRlci1zcGluLWJ1dHRvbiB7IGhlaWdodDogYXV0bzsgfVxuXG4vKlxuICogRGVmaW5lIGNvbnNpc3RlbnQgYm9yZGVyLCBtYXJnaW4sIGFuZCBwYWRkaW5nLlxuICovXG5cbi51ay1mb3JtIGZpZWxkc2V0IHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG59XG5cbi8qXG4gKiAxLiBSZW1vdmUgZGVmYXVsdCB2ZXJ0aWNhbCBzY3JvbGxiYXIgaW4gSUUgOC85LzEwLzExLlxuICogMi4gSW1wcm92ZSByZWFkYWJpbGl0eSBhbmQgYWxpZ25tZW50IGluIGFsbCBicm93c2Vycy5cbiAqL1xuXG4udWstZm9ybSB0ZXh0YXJlYSB7XG4gICAgLyogMSAqL1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC8qIDIgKi9cbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xufVxuXG4vKlxuICogUmVtb3ZlcyBwbGFjZWhvbGRlciB0cmFuc3BhcmVuY3kgaW4gRmlyZWZveC5cbiAqL1xuXG4udWstZm9ybSA6Oi1tb3otcGxhY2Vob2xkZXIgeyBvcGFjaXR5OiAxOyB9XG5cbi8qXG4gKiBSZW1vdmVzIGBib3gtc2hhZG93YCBmb3IgaW52YWxpZCBjb250cm9scyBpbiBGaXJlZm94LlxuICovXG5cbi51ay1mb3JtIDppbnZhbGlkIHsgYm94LXNoYWRvdzogbm9uZTsgfVxuXG4vKlxuICogVmVydGljYWwgYWxpZ25tZW50XG4gKi9cblxuLnVrLWZvcm0gaW5wdXQ6bm90KFt0eXBlPVwicmFkaW9cIl0pOm5vdChbdHlwZT1cImNoZWNrYm94XCJdKSxcbi51ay1mb3JtIHNlbGVjdCB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cblxuXG4vKiBTdHlsZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstZm9ybSA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKlxuICogQ29udHJvbHNcbiAqIEV4Y2VwdCBmb3IgYHJhbmdlYCwgYHJhZGlvYCwgYGNoZWNrYm94YCwgYGZpbGVgLCBgc3VibWl0YCwgYHJlc2V0YCwgYGJ1dHRvbmAgYW5kIGBpbWFnZWBcbiAqIDEuIE11c3QgYmUgYGhlaWdodGAgYmVjYXVzZSBgbWluLWhlaWdodGAgaXMgbm90IHdvcmtpbmcgaW4gT1NYXG4gKiAyLiBSZXNwb25zaXZlbmVzczogU2V0cyBhIG1heGltdW0gd2lkdGggcmVsYXRpdmUgdG8gdGhlIHBhcmVudCB0byBzY2FsZSBvbiBuYXJyb3dlciB2aWV3cG9ydHNcbiAqIDMuIFZlcnRpY2FsIGBwYWRkaW5nYCBuZWVkZWQgZm9yIGBzZWxlY3RgIGVsZW1lbnRzIGluIEZpcmVmb3hcbiAqIDQuIFN0eWxlXG4gKi9cblxuLnVrLWZvcm0gc2VsZWN0LFxuLnVrLWZvcm0gdGV4dGFyZWEsXG4udWstZm9ybSBpbnB1dDpub3QoW3R5cGVdKSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cImRhdGVcIl0sXG4udWstZm9ybSBpbnB1dFt0eXBlPVwibW9udGhcIl0sXG4udWstZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJ3ZWVrXCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cIm51bWJlclwiXSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJ1cmxcIl0sXG4udWstZm9ybSBpbnB1dFt0eXBlPVwic2VhcmNoXCJdLFxuLnVrLWZvcm0gaW5wdXRbdHlwZT1cInRlbFwiXSxcbi51ay1mb3JtIGlucHV0W3R5cGU9XCJjb2xvclwiXSB7XG4gICAgLyogMSAqL1xuICAgIGhlaWdodDogJGZvcm0taGVpZ2h0O1xuICAgIC8qIDIgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogMyAqL1xuICAgIHBhZGRpbmc6ICRmb3JtLXBhZGRpbmc7XG4gICAgLyogNCAqL1xuICAgIGJvcmRlcjogJGZvcm0tYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kOiAkZm9ybS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkZm9ybS1jb2xvcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IGFsbCAwLjJzIGxpbmVhcjtcbiAgICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlciwgYmFja2dyb3VuZCwgY29sb3IsIGJveC1zaGFkb3csIHBhZGRpbmc7XG4gICAgdHJhbnNpdGlvbjogYWxsIDAuMnMgbGluZWFyO1xuICAgIHRyYW5zaXRpb24tcHJvcGVydHk6IGJvcmRlciwgYmFja2dyb3VuZCwgY29sb3IsIGJveC1zaGFkb3csIHBhZGRpbmc7XG4gICAgQGluY2x1ZGUgaG9vay1mb3JtKCk7XG5cbiAgICAvLyBGb2N1cyBzdGF0ZVxuICAgICY6Zm9jdXMge1xuICAgICAgICBib3JkZXItY29sb3I6ICRmb3JtLWZvY3VzLWJvcmRlcjtcbiAgICAgICAgb3V0bGluZTogMDtcbiAgICAgICAgYmFja2dyb3VuZDogJGZvcm0tZm9jdXMtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRmb3JtLWZvY3VzLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWZvcm0tZm9jdXMoKTtcbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZVxuICAgICY6ZGlzYWJsZWQge1xuICAgICAgICBib3JkZXItY29sb3I6ICRmb3JtLWRpc2FibGVkLWJvcmRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGZvcm0tZGlzYWJsZWQtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRmb3JtLWRpc2FibGVkLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWZvcm0tZGlzYWJsZWQoKTtcbiAgICB9XG59XG5cbi8qXG4gKiBQbGFjZWhvbGRlclxuICovXG5cbi51ay1mb3JtIDotbXMtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGZvcm0tcGxhY2Vob2xkZXItY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLWZvcm0gOjotbW96LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRmb3JtLXBsYWNlaG9sZGVyLWNvbG9yOyB9XG4udWstZm9ybSA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGZvcm0tcGxhY2Vob2xkZXItY29sb3I7IH1cblxuLnVrLWZvcm0gOmRpc2FibGVkOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkZm9ybS1kaXNhYmxlZC1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstZm9ybSA6ZGlzYWJsZWQ6Oi1tb3otcGxhY2Vob2xkZXIgeyBjb2xvcjogJGZvcm0tZGlzYWJsZWQtY29sb3I7IH1cbi51ay1mb3JtIDpkaXNhYmxlZDo6LXdlYmtpdC1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkZm9ybS1kaXNhYmxlZC1jb2xvcjsgfVxuXG4vKlxuICogTGVnZW5kXG4gKiAxLiBCZWhhdmUgbGlrZSBibG9jayBlbGVtZW50XG4gKiAyLiBDb3JyZWN0IGBjb2xvcmAgbm90IGJlaW5nIGluaGVyaXRlZCBpbiBJRSA4LzkvMTAvMTEuXG4gKiAzLiBSZW1vdmUgcGFkZGluZ1xuICogNC4gYG1hcmdpbi1ib3R0b21gIGlzIG5vdCB3b3JraW5nIGluIFNhZmFyaSBhbmQgT3BlcmEuXG4gKiAgICBVc2luZyBgcGFkZGluZ2AgYW5kIDphZnRlciBpbnN0ZWFkIHRvIGNyZWF0ZSB0aGUgYm9yZGVyXG4gKiA1LiBTdHlsZVxuICovXG5cbi51ay1mb3JtIGxlZ2VuZCB7XG4gICAgLyogMSAqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIDIgKi9cbiAgICBib3JkZXI6IDA7XG4gICAgLyogMyAqL1xuICAgIHBhZGRpbmc6IDA7XG4gICAgLyogNCAqL1xuICAgIHBhZGRpbmctYm90dG9tOiAkZm9ybS1ndXR0ZXI7XG4gICAgLyogNSAqL1xuICAgIGZvbnQtc2l6ZTogJGZvcm0tbGVnZW5kLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGZvcm0tbGVnZW5kLWxpbmUtaGVpZ2h0O1xuICAgIEBpbmNsdWRlIGhvb2stZm9ybS1sZWdlbmQoKTtcbn1cblxuLypcbiAqIDEuIEZpeGVzIElFOVxuICovXG5cbi51ay1mb3JtIGxlZ2VuZDphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXItYm90dG9tOiAkZm9ybS1sZWdlbmQtYm9yZGVyLXdpZHRoIHNvbGlkICRmb3JtLWxlZ2VuZC1ib3JkZXI7XG4gICAgLyogMSAqL1xuICAgIHdpZHRoOiAxMDAlO1xufVxuXG5cbi8qIFNpemUgbW9kaWZpZXJzXG4gKiBIaWdoZXIgc3BlY2lmaWNpdHkgbmVlZGVkIHRvIG92ZXJyaWRlIGRlZmF1bHRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuc2VsZWN0LnVrLWZvcm0tc21hbGwsXG50ZXh0YXJlYS51ay1mb3JtLXNtYWxsLFxuaW5wdXRbdHlwZV0udWstZm9ybS1zbWFsbCxcbmlucHV0Om5vdChbdHlwZV0pLnVrLWZvcm0tc21hbGwge1xuICAgIGhlaWdodDogJGZvcm0tc21hbGwtaGVpZ2h0O1xuICAgIHBhZGRpbmc6ICRmb3JtLXNtYWxsLXBhZGRpbmc7XG4gICAgZm9udC1zaXplOiAkZm9ybS1zbWFsbC1mb250LXNpemU7XG59XG5cbnNlbGVjdC51ay1mb3JtLWxhcmdlLFxudGV4dGFyZWEudWstZm9ybS1sYXJnZSxcbmlucHV0W3R5cGVdLnVrLWZvcm0tbGFyZ2UsXG5pbnB1dDpub3QoW3R5cGVdKS51ay1mb3JtLWxhcmdlICB7XG4gICAgaGVpZ2h0OiAkZm9ybS1sYXJnZS1oZWlnaHQ7XG4gICAgcGFkZGluZzogJGZvcm0tbGFyZ2UtcGFkZGluZztcbiAgICBmb250LXNpemU6ICRmb3JtLWxhcmdlLWZvbnQtc2l6ZTtcbn1cblxuXG4vKiBSZXNldCBoZWlnaHRcbiAqIE11c3QgYmUgYWZ0ZXIgc2l6ZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZm9ybSB0ZXh0YXJlYSxcbi51ay1mb3JtIHNlbGVjdFttdWx0aXBsZV0sXG4udWstZm9ybSBzZWxlY3Rbc2l6ZV0geyBoZWlnaHQ6IGF1dG87IH1cblxuXG4vKiBWYWxpZGF0aW9uIHN0YXRlc1xuICogVXNpbmcgIWltcG9ydGFudCB0byBrZWVwIHRoZSBzZWxlY3RvciBzaW1wbGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRXJyb3Igc3RhdGVcbiAqL1xuXG4udWstZm9ybS1kYW5nZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGZvcm0tZGFuZ2VyLWJvcmRlciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLWRhbmdlci1iYWNrZ3JvdW5kICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6ICRmb3JtLWRhbmdlci1jb2xvciAhaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIGhvb2stZm9ybS1kYW5nZXIoKTtcbn1cblxuLypcbiAqIFN1Y2Nlc3Mgc3RhdGVcbiAqL1xuXG4udWstZm9ybS1zdWNjZXNzICB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1zdWNjZXNzLWJvcmRlciAhaW1wb3J0YW50O1xuICAgIGJhY2tncm91bmQ6ICRmb3JtLXN1Y2Nlc3MtYmFja2dyb3VuZCAhaW1wb3J0YW50O1xuICAgIGNvbG9yOiAkZm9ybS1zdWNjZXNzLWNvbG9yICFpbXBvcnRhbnQ7XG4gICAgQGluY2x1ZGUgaG9vay1mb3JtLXN1Y2Nlc3MoKTtcbn1cblxuXG4vKiBTdHlsZSBtb2RpZmllcnNcbiAqIFVzaW5nICFpbXBvcnRhbnQgdG8ga2VlcCB0aGUgc2VsZWN0b3Igc2ltcGxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEJsYW5rIGZvcm1cbiAqL1xuXG4udWstZm9ybS1ibGFuayB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgIGJvcmRlci1zdHlsZTogJGZvcm0tYmxhbmstYm9yZGVyLXN0eWxlICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogbm9uZSAhaW1wb3J0YW50O1xuICAgIEBpbmNsdWRlIGhvb2stZm9ybS1ibGFuaygpO1xufVxuXG4udWstZm9ybS1ibGFuazpmb2N1cyB7XG4gICAgYm9yZGVyLWNvbG9yOiAkZm9ybS1ibGFuay1ib3JkZXIgIWltcG9ydGFudDtcbiAgICBAaW5jbHVkZSBob29rLWZvcm0tYmxhbmstZm9jdXMoKTtcbn1cblxuXG4vKiBTaXplIHN1Yi1tb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRml4ZWQgd2lkdGhzXG4gKiBEaWZmZXJlbnQgd2lkdGhzIGZvciBtaW5pIHNpemVkIGBpbnB1dGAgYW5kIGBzZWxlY3RgIGVsZW1lbnRzXG4gKi9cblxuaW5wdXQudWstZm9ybS13aWR0aC1taW5pIHsgd2lkdGg6ICRmb3JtLW1pbmktd2lkdGg7IH1cbnNlbGVjdC51ay1mb3JtLXdpZHRoLW1pbmkgeyB3aWR0aDogKCRmb3JtLW1pbmktd2lkdGggKyAyNXB4KTsgfVxuLnVrLWZvcm0td2lkdGgtc21hbGwgeyB3aWR0aDogJGZvcm0tc21hbGwtd2lkdGg7IH1cbi51ay1mb3JtLXdpZHRoLW1lZGl1bSB7IHdpZHRoOiAkZm9ybS1tZWRpdW0td2lkdGg7IH1cbi51ay1mb3JtLXdpZHRoLWxhcmdlIHsgd2lkdGg6ICRmb3JtLWxhcmdlLXdpZHRoOyB9XG5cblxuLyogU3ViLW9iamVjdHM6IGB1ay1mb3JtLXJvd2BcbiAqIEdyb3VwcyBsYWJlbHMgYW5kIGNvbnRyb2xzIGluIHJvd3NcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTWljcm8gY2xlYXJmaXhcbiAqIE5lZWRlZCBmb3IgYHVrLWZvcm0taG9yaXpvbnRhbGAgbW9kaWZpZXJcbiAqL1xuXG4udWstZm9ybS1yb3c6YmVmb3JlLFxuLnVrLWZvcm0tcm93OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xufVxuXG4udWstZm9ybS1yb3c6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4vKlxuICogVmVydGljYWwgZ3V0dGVyXG4gKi9cblxuLnVrLWZvcm0tcm93ICsgLnVrLWZvcm0tcm93IHsgbWFyZ2luLXRvcDogJGZvcm0tZ3V0dGVyOyB9XG5cblxuLyogSGVscCB0ZXh0XG4gKiBTdWItb2JqZWN0OiBgdWstZm9ybS1oZWxwLWlubGluZWAsIGB1ay1mb3JtLWhlbHAtYmxvY2tgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWZvcm0taGVscC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW46IDAgMCAwICRmb3JtLWhlbHAtaW5saW5lLW1hcmdpbi1sZWZ0O1xufVxuXG4udWstZm9ybS1oZWxwLWJsb2NrIHsgbWFyZ2luOiAkZm9ybS1oZWxwLWJsb2NrLW1hcmdpbi10b3AgMCAwIDA7IH1cblxuXG4vKiBDb250cm9scyBjb250ZW50XG4gKiBTdWItb2JqZWN0OiBgdWstZm9ybS1jb250cm9sc2AsIGB1ay1mb3JtLWNvbnRyb2xzLWNvbmRlbnNlZGBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlIG1hcmdpbnNcbiAqL1xuXG4udWstZm9ybS1jb250cm9scyA+IDpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDA7IH1cbi51ay1mb3JtLWNvbnRyb2xzID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbi8qXG4gKiBHcm91cCBjb250cm9scyBhbmQgdGV4dCBpbnRvIGJsb2NrcyB3aXRoIGEgc21hbGwgc3BhY2luZyBiZXR3ZWVuIGJsb2Nrc1xuICovXG5cbi51ay1mb3JtLWNvbnRyb2xzLWNvbmRlbnNlZCB7IG1hcmdpbjogJGZvcm0tY29udHJvbHMtY29uZGVuc2VkLW1hcmdpbi12ZXJ0aWNhbCAwOyB9XG5cblxuLyogTW9kaWZpZXI6IGB1ay1mb3JtLXN0YWNrZWRgXG4gKiBSZXF1aXJlcyBzdWItb2JqZWN0OiBgdWstZm9ybS1sYWJlbGBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstZm9ybS1zdGFja2VkIC51ay1mb3JtLWxhYmVsIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zdGFja2VkLW1hcmdpbi1ib3R0b207XG4gICAgZm9udC13ZWlnaHQ6ICRmb3JtLXN0YWNrZWQtZm9udC13ZWlnaHQ7XG4gICAgQGluY2x1ZGUgaG9vay1mb3JtLXN0YWNrZWQtbGFiZWwoKTtcbn1cblxuXG4vKiBNb2RpZmllcjogYHVrLWZvcm0taG9yaXpvbnRhbGBcbiAqIFJlcXVpcmVzIHN1Yi1vYmplY3RzOiBgdWstZm9ybS1sYWJlbGAsIGB1ay1mb3JtLWNvbnRyb2xzYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFRhYmxldCBwb3J0cmFpdCBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LW1lZGl1bS1tYXgpIHtcblxuICAgIC8qIEJlaGF2ZSBsaWtlIGB1ay1mb3JtLXN0YWNrZWRgICovXG4gICAgLnVrLWZvcm0taG9yaXpvbnRhbCAudWstZm9ybS1sYWJlbCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zdGFja2VkLW1hcmdpbi1ib3R0b207XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZm9ybS1zdGFja2VkLWZvbnQtd2VpZ2h0O1xuICAgICAgICBAaW5jbHVkZSBob29rLWZvcm0tc3RhY2tlZC1sYWJlbCgpO1xuICAgIH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWZvcm0taG9yaXpvbnRhbCAudWstZm9ybS1sYWJlbCB7XG4gICAgICAgIHdpZHRoOiAkZm9ybS1ob3Jpem9udGFsLWxhYmVsLXdpZHRoO1xuICAgICAgICBtYXJnaW4tdG9wOiAkZm9ybS1ob3Jpem9udGFsLWxhYmVsLW1hcmdpbi10b3A7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBAaW5jbHVkZSBob29rLWZvcm0taG9yaXpvbnRhbC1sYWJlbCgpO1xuICAgIH1cblxuICAgIC51ay1mb3JtLWhvcml6b250YWwgLnVrLWZvcm0tY29udHJvbHMgeyBtYXJnaW4tbGVmdDogJGZvcm0taG9yaXpvbnRhbC1jb250cm9scy1tYXJnaW4tbGVmdDsgfVxuXG4gICAgLyogQmV0dGVyIHZlcnRpY2FsIGFsaWdubWVudCBpZiBjb250cm9scyBhcmUgY2hlY2tib3hlcyBhbmQgcmFkaW8gYnV0dG9ucyB3aXRoIHRleHQgKi9cbiAgICAudWstZm9ybS1ob3Jpem9udGFsIC51ay1mb3JtLWNvbnRyb2xzLXRleHQgeyBwYWRkaW5nLXRvcDogJGZvcm0taG9yaXpvbnRhbC1jb250cm9scy10ZXh0LXBhZGRpbmctdG9wOyB9XG5cbn1cblxuXG4vKiBTdWItb2JqZWN0OiBgdWstZm9ybS1pY29uYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDb250YWluZXIgd2lkdGggZml0cyBpdHMgY29udGVudFxuICogMi4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHRcbiAqIDMuIFByZXZlbnQgYGlubGluZS1ibG9ja2AgY29uc2VxdWVuY2VzXG4gKi9cblxuLnVrLWZvcm0taWNvbiB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIC8qIDMgKi9cbiAgICBtYXgtd2lkdGg6IDEwMCU7XG59XG5cbi8qXG4gKiAxLiBNYWtlIGZvcm0gZWxlbWVudCBjbGlja2FibGUgdGhyb3VnaCBpY29uXG4gKi9cblxuLnVrLWZvcm0taWNvbiA+IFtjbGFzcyo9J3VrLWljb24tJ10ge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB3aWR0aDogJGZvcm0taWNvbi13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiByb3VuZCgkZm9ybS1pY29uLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICBmb250LXNpemU6ICRmb3JtLWljb24tZm9udC1zaXplO1xuICAgIGNvbG9yOiAkZm9ybS1pY29uLWNvbG9yO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAvKiAxICovXG4gICAgcG9pbnRlci1ldmVudHM6IG5vbmU7XG59XG5cbi51ay1mb3JtLWljb246bm90KC51ay1mb3JtLWljb24tZmxpcCkgPiBpbnB1dCB7IHBhZGRpbmctbGVmdDogJGZvcm0taWNvbi13aWR0aCAhaW1wb3J0YW50OyB9XG5cbi8qXG4gKiBTdWItbW9kaWZpZXI6IGB1ay1mb3JtLWljb24tZmxpcGBcbiAqL1xuXG4udWstZm9ybS1pY29uLWZsaXAgPiBbY2xhc3MqPSd1ay1pY29uLSddIHsgcmlnaHQ6IDA7IH1cbi51ay1mb3JtLWljb24tZmxpcCA+IGlucHV0IHsgcGFkZGluZy1yaWdodDogJGZvcm0taWNvbi13aWR0aCAhaW1wb3J0YW50OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLWZvcm0tbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay1mb3JtKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1mb2N1cygpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tZGlzYWJsZWQoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLWxlZ2VuZCgpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tZGFuZ2VyKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1zdWNjZXNzKCl7fVxuLy8gQG1peGluIGhvb2stZm9ybS1ibGFuaygpe31cbi8vIEBtaXhpbiBob29rLWZvcm0tYmxhbmstZm9jdXMoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLXN0YWNrZWQtbGFiZWwoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLWhvcml6b250YWwtbGFiZWwoKXt9XG4vLyBAbWl4aW4gaG9vay1mb3JtLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIEJ1dHRvblxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgYnV0dG9uc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWJ1dHRvbmBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1idXR0b24tZ3JvdXBgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tZHJvcGRvd25gXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstYnV0dG9uLXByaW1hcnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tc3VjY2Vzc2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJ1dHRvbi1kYW5nZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1idXR0b24tbGlua2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJ1dHRvbi1taW5pYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYnV0dG9uLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYnV0dG9uLWxhcmdlYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWFjdGl2ZWBcbi8vXG4vLyBNYXJrdXA6XG4vL1xuLy8gPCEtLSB1ay1idXR0b24tZ3JvdXAgLS0+XG4vLyA8ZGl2IGNsYXNzPVwidWstYnV0dG9uLWdyb3VwXCI+XG4vLyAgICAgPGJ1dHRvbiBjbGFzcz1cInVrLWJ1dHRvblwiPjwvYnV0dG9uPlxuLy8gICAgIDxidXR0b24gY2xhc3M9XCJ1ay1idXR0b25cIj48L2J1dHRvbj5cbi8vIDwvZGl2PlxuLy9cbi8vIDwhLS0gdWstYnV0dG9uLWRyb3Bkb3duIC0tPlxuLy8gPGRpdiBjbGFzcz1cInVrLWJ1dHRvbi1kcm9wZG93blwiIGRhdGEtdWstZHJvcGRvd24+XG4vLyAgICAgPGJ1dHRvbiBjbGFzcz1cInVrLWJ1dHRvblwiPjwvYnV0dG9uPlxuLy8gICAgIDxkaXYgY2xhc3M9XCJ1ay1kcm9wZG93biB1ay1kcm9wZG93bi1zbWFsbFwiPlxuLy8gICAgICAgICA8dWwgY2xhc3M9XCJ1ay1uYXYgdWstbmF2LWRyb3Bkb3duXCI+XG4vLyAgICAgICAgICAgICA8bGk+PGEgaHJlZj1cIlwiPjwvYT48L2xpPlxuLy8gICAgICAgICA8L3VsPlxuLy8gICAgIDwvZGl2PlxuLy8gPC9kaXY+XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGJ1dHRvbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kYnV0dG9uLW1pbmktaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcbiRidXR0b24tc21hbGwtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyNXB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQwcHggIWRlZmF1bHQ7XG5cbiRidXR0b24tbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzMHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1taW5pLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG4kYnV0dG9uLXNtYWxsLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgMjVweCAhZGVmYXVsdDtcbiRidXR0b24tbGFyZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICA0MHB4ICFkZWZhdWx0O1xuXG4kYnV0dG9uLW1pbmktZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgMTFweCAhZGVmYXVsdDtcbiRidXR0b24tc21hbGwtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgIDE2cHggIWRlZmF1bHQ7XG5cbiRidXR0b24tcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAxMnB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1taW5pLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgIDZweCAhZGVmYXVsdDtcbiRidXR0b24tc21hbGwtcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGJ1dHRvbi1sYXJnZS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRidXR0b24tZm9udC1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGJ1dHRvbi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICNlZWUgIWRlZmF1bHQ7XG4kYnV0dG9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRidXR0b24taG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuJGJ1dHRvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRidXR0b24tYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuXG4kYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgIzAwYThlNiAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICMzNWIzZWUgIWRlZmF1bHQ7XG4kYnV0dG9uLXByaW1hcnktaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidXR0b24tcHJpbWFyeS1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgICAjMDA5MWNhICFkZWZhdWx0O1xuJGJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRidXR0b24tc3VjY2Vzcy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAjOGNjMTRjICFkZWZhdWx0O1xuJGJ1dHRvbi1zdWNjZXNzLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnV0dG9uLXN1Y2Nlc3MtaG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgIzhlYzczYiAhZGVmYXVsdDtcbiRidXR0b24tc3VjY2Vzcy1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ1dHRvbi1zdWNjZXNzLWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICM3MmFlNDEgIWRlZmF1bHQ7XG4kYnV0dG9uLXN1Y2Nlc3MtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJ1dHRvbi1kYW5nZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICNkYTMxNGIgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAjZTQzNTRmICFkZWZhdWx0O1xuJGJ1dHRvbi1kYW5nZXItaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnV0dG9uLWRhbmdlci1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgI2M5MTAzMiAhZGVmYXVsdDtcbiRidXR0b24tZGFuZ2VyLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kYnV0dG9uLWRpc2FibGVkLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRidXR0b24tZGlzYWJsZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4kYnV0dG9uLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzA3RCAhZGVmYXVsdDtcbiRidXR0b24tbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjMDU5ICFkZWZhdWx0O1xuJGJ1dHRvbi1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcbiRidXR0b24tbGluay1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBCdXR0b25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlcyBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuXG4udWstYnV0dG9uOjotbW96LWZvY3VzLWlubmVyIHtcbiAgICBib3JkZXI6IDA7XG4gICAgcGFkZGluZzogMDtcbn1cblxuLypcbiAqIDEuIENvcnJlY3QgaW5hYmlsaXR5IHRvIHN0eWxlIGNsaWNrYWJsZSBgaW5wdXRgIHR5cGVzIGluIGlPUy5cbiAqIDIuIFJlbW92ZSBtYXJnaW5zIGluIENocm9tZSwgU2FmYXJpIGFuZCBPcGVyYS5cbiAqIDMuIFJlbW92ZSBib3JkZXJzIGZvciBgYnV0dG9uYC5cbiAqIDQuIEFkZHJlc3MgYG92ZXJmbG93YCBzZXQgdG8gYGhpZGRlbmAgaW4gSUUgOC85LzEwLzExLlxuICogNS4gQ29ycmVjdCBgZm9udGAgcHJvcGVydGllcyBhbmQgYGNvbG9yYCBub3QgYmVpbmcgaW5oZXJpdGVkIGZvciBgYnV0dG9uYC5cbiAqIDYuIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2Ugd2hpY2ggaXMgb25seSBpbmhlcml0IGluIEZpcmVmb3ggYW5kIElFXG4gKiA3LiBTdHlsZVxuICogOC4gYGxpbmUtaGVpZ2h0YCBpcyB1c2VkIHRvIGNyZWF0ZSBhIGhlaWdodFxuICogOS4gYG1pbi1oZWlnaHRgIGlzIG5lY2Vzc2FyeSBmb3IgYGlucHV0YCBlbGVtZW50cyBpbiBGaXJlZm94IGFuZCBPcGVyYSBiZWNhdXNlIGBsaW5lLWhlaWdodGAgaXMgbm90IHdvcmtpbmcuXG4gKiAxMC4gUmVzZXQgYnV0dG9uIGdyb3VwIHdoaXRlc3BhY2UgaGFja1xuICogMTEuIFJlcXVpcmVkIGZvciBgYWAuXG4gKi9cblxuLnVrLWJ1dHRvbiB7XG4gICAgLyogMSAqL1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgbWFyZ2luOiAwO1xuICAgIC8qIDMgKi9cbiAgICBib3JkZXI6IG5vbmU7XG4gICAgLyogNCAqL1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIC8qIDUgKi9cbiAgICBmb250OiBpbmhlcml0O1xuICAgIGNvbG9yOiAkYnV0dG9uLWNvbG9yO1xuICAgIC8qIDYgKi9cbiAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAvKiA3ICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgcGFkZGluZzogMCAkYnV0dG9uLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiA4ICovXG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tbGluZS1oZWlnaHQ7XG4gICAgLyogOSAqL1xuICAgIG1pbi1oZWlnaHQ6ICRidXR0b24taGVpZ2h0O1xuICAgIC8qIDEwICovXG4gICAgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtc2l6ZTtcbiAgICAvKiAxMSAqL1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgaG9vay1idXR0b24oKTtcbn1cblxuLnVrLWJ1dHRvbjpub3QoOmRpc2FibGVkKSB7IGN1cnNvcjogcG9pbnRlcjsgfVxuXG4vKlxuICogSG92ZXJcbiAqIDEuIEFwcGx5IGhvdmVyIHN0eWxlIGFsc28gdG8gZm9jdXMgc3RhdGVcbiAqIDIuIFJlbW92ZSBkZWZhdWx0IGZvY3VzIHN0eWxlXG4gKiAzLiBSZXF1aXJlZCBmb3IgYGFgIGVsZW1lbnRzXG4gKi9cblxuLnVrLWJ1dHRvbjpob3Zlcixcbi51ay1idXR0b246Zm9jdXMgeyAvLyAxXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWhvdmVyLWNvbG9yO1xuICAgIC8qIDIgKi9cbiAgICBvdXRsaW5lOiBub25lO1xuICAgIC8qIDMgKi9cbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgQGluY2x1ZGUgaG9vay1idXR0b24taG92ZXIoKTtcbn1cblxuLyogQWN0aXZlICovXG4udWstYnV0dG9uOmFjdGl2ZSxcbi51ay1idXR0b24udWstYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWFjdGl2ZS1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLWJ1dHRvbi1hY3RpdmUoKTtcbn1cblxuXG4vKiBDb2xvciBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTW9kaWZpZXI6IGB1ay1idXR0b24tcHJpbWFyeWBcbiAqL1xuXG4udWstYnV0dG9uLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLXByaW1hcnktY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1idXR0b24tcHJpbWFyeSgpO1xufVxuXG4vKiBIb3ZlciAqL1xuLnVrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLFxuLnVrLWJ1dHRvbi1wcmltYXJ5OmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWhvdmVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stYnV0dG9uLXByaW1hcnktaG92ZXIoKTtcbn1cblxuLyogQWN0aXZlICovXG4udWstYnV0dG9uLXByaW1hcnk6YWN0aXZlLFxuLnVrLWJ1dHRvbi1wcmltYXJ5LnVrLWFjdGl2ZSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLXByaW1hcnktYWN0aXZlLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stYnV0dG9uLXByaW1hcnktYWN0aXZlKCk7XG59XG5cbi8qXG4gKiBNb2RpZmllcjogYHVrLWJ1dHRvbi1zdWNjZXNzYFxuICovXG5cbi51ay1idXR0b24tc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1zdWNjZXNzLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tc3VjY2Vzcy1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLWJ1dHRvbi1zdWNjZXNzKCk7XG59XG5cbi8qIEhvdmVyICovXG4udWstYnV0dG9uLXN1Y2Nlc3M6aG92ZXIsXG4udWstYnV0dG9uLXN1Y2Nlc3M6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tc3VjY2Vzcy1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLXN1Y2Nlc3MtaG92ZXItY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1idXR0b24tc3VjY2Vzcy1ob3ZlcigpO1xufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1idXR0b24tc3VjY2VzczphY3RpdmUsXG4udWstYnV0dG9uLXN1Y2Nlc3MudWstYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLXN1Y2Nlc3MtYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRidXR0b24tc3VjY2Vzcy1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1idXR0b24tc3VjY2Vzcy1hY3RpdmUoKTtcbn1cblxuLypcbiAqIE1vZGlmaWVyOiBgdWstYnV0dG9uLWRhbmdlcmBcbiAqL1xuXG4udWstYnV0dG9uLWRhbmdlciB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJ1dHRvbi1kYW5nZXItYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1kYW5nZXItY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1idXR0b24tZGFuZ2VyKCk7XG59XG5cbi8qIEhvdmVyICovXG4udWstYnV0dG9uLWRhbmdlcjpob3Zlcixcbi51ay1idXR0b24tZGFuZ2VyOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWRhbmdlci1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRhbmdlci1ob3Zlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLWJ1dHRvbi1kYW5nZXItaG92ZXIoKTtcbn1cblxuLyogQWN0aXZlICovXG4udWstYnV0dG9uLWRhbmdlcjphY3RpdmUsXG4udWstYnV0dG9uLWRhbmdlci51ay1hY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGFuZ2VyLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYnV0dG9uLWRhbmdlci1hY3RpdmUtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1idXR0b24tZGFuZ2VyLWFjdGl2ZSgpO1xufVxuXG5cbi8qIERpc2FibGVkIHN0YXRlXG4gKiBPdmVycmlkZXMgYWxzbyB0aGUgY29sb3IgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogRXF1YWwgZm9yIGFsbCBidXR0b24gdHlwZXMgKi9cbi51ay1idXR0b246ZGlzYWJsZWQge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRidXR0b24tZGlzYWJsZWQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGJ1dHRvbi1kaXNhYmxlZC1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLWJ1dHRvbi1kaXNhYmxlKCk7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay1idXR0b24tbGlua2BcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4gLyogUmVzZXQgKi9cbi51ay1idXR0b24tbGluayxcbi51ay1idXR0b24tbGluazpob3Zlcixcbi51ay1idXR0b24tbGluazpmb2N1cyxcbi51ay1idXR0b24tbGluazphY3RpdmUsXG4udWstYnV0dG9uLWxpbmsudWstYWN0aXZlLFxuLnVrLWJ1dHRvbi1saW5rOmRpc2FibGVkIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgQGluY2x1ZGUgaG9vay1idXR0b24tbGluaygpO1xufVxuXG4vKiBDb2xvciAqL1xuLnVrLWJ1dHRvbi1saW5rIHsgY29sb3I6ICRidXR0b24tbGluay1jb2xvcjsgfVxuXG4udWstYnV0dG9uLWxpbms6aG92ZXIsXG4udWstYnV0dG9uLWxpbms6Zm9jdXMsXG4udWstYnV0dG9uLWxpbms6YWN0aXZlLFxuLnVrLWJ1dHRvbi1saW5rLnVrLWFjdGl2ZSB7XG4gICAgY29sb3I6ICRidXR0b24tbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRidXR0b24tbGluay1ob3Zlci10ZXh0LWRlY29yYXRpb247XG59XG5cbi51ay1idXR0b24tbGluazpkaXNhYmxlZCB7IGNvbG9yOiAkYnV0dG9uLWxpbmstZGlzYWJsZWQtY29sb3I7IH1cblxuLyogRm9jdXMgKi9cbi51ay1idXR0b24tbGluazpmb2N1cyB7IG91dGxpbmU6IDFweCBkb3R0ZWQ7IH1cblxuXG4vKiBTaXplIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1idXR0b24tbWluaSB7XG4gICAgbWluLWhlaWdodDogJGJ1dHRvbi1taW5pLWhlaWdodDtcbiAgICBwYWRkaW5nOiAwICRidXR0b24tbWluaS1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tbWluaS1saW5lLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRidXR0b24tbWluaS1mb250LXNpemU7XG59XG5cbi51ay1idXR0b24tc21hbGwge1xuICAgIG1pbi1oZWlnaHQ6ICRidXR0b24tc21hbGwtaGVpZ2h0O1xuICAgIHBhZGRpbmc6IDAgJGJ1dHRvbi1zbWFsbC1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbGluZS1oZWlnaHQ6ICRidXR0b24tc21hbGwtbGluZS1oZWlnaHQ7XG4gICAgZm9udC1zaXplOiAkYnV0dG9uLXNtYWxsLWZvbnQtc2l6ZTtcbn1cblxuLnVrLWJ1dHRvbi1sYXJnZSB7XG4gICAgbWluLWhlaWdodDogJGJ1dHRvbi1sYXJnZS1oZWlnaHQ7XG4gICAgcGFkZGluZzogMCAkYnV0dG9uLWxhcmdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBsaW5lLWhlaWdodDogJGJ1dHRvbi1sYXJnZS1saW5lLWhlaWdodDtcbiAgICBmb250LXNpemU6ICRidXR0b24tbGFyZ2UtZm9udC1zaXplO1xuICAgIEBpbmNsdWRlIGhvb2stYnV0dG9uLWxhcmdlKCk7XG59XG5cblxuLyogU3ViLW9iamVjdCBgdWstYnV0dG9uLWdyb3VwYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBCZWhhdmUgbGlrZSBidXR0b25zXG4gKiAyLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dCBmb3IgZHJvcGRvd25zXG4gKiAzLiBSZW1vdmUgd2hpdGVzcGFjZSBiZXR3ZWVuIGNoaWxkIGVsZW1lbnRzIHdoZW4gdXNpbmcgYGlubGluZS1ibG9ja2BcbiAqIDQuIFByZXZlbnQgYnV0dG9ucyBmcm9tIHdyYXBwaW5nXG4gKiA1LiBSZW1vdmUgd2hpdGVzcGFjZSBiZXR3ZWVuIGNoaWxkIGVsZW1lbnRzIHdoZW4gdXNpbmcgYGlubGluZS1ibG9ja2BcbiAqL1xuXG4udWstYnV0dG9uLWdyb3VwIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKiAzICovXG4gICAgZm9udC1zaXplOiAwLjAwMXB4O1xuICAgIC8qIDQgKi9cbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4udWstYnV0dG9uLWdyb3VwID4gKiB7IGRpc3BsYXk6IGlubGluZS1ibG9jazsgfVxuXG4vKiA1ICovXG4udWstYnV0dG9uLWdyb3VwIC51ay1idXR0b24geyB2ZXJ0aWNhbC1hbGlnbjogdG9wOyB9XG5cblxuLyogU3ViLW9iamVjdDogYHVrLWJ1dHRvbi1kcm9wZG93bmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQmVoYXZlIGxpa2UgYnV0dG9uc1xuICogMi4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGRyb3Bkb3duc1xuICovXG5cbi51ay1idXR0b24tZHJvcGRvd24ge1xuICAgIC8qIDEgKi9cbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1idXR0b24tbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay1idXR0b24oKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLXByaW1hcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1zdWNjZXNzKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLXN1Y2Nlc3MtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tc3VjY2Vzcy1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tZGFuZ2VyKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLWRhbmdlci1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1kYW5nZXItYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stYnV0dG9uLWRpc2FibGUoKXt9XG4vLyBAbWl4aW4gaG9vay1idXR0b24tbGluaygpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1sYXJnZSgpe31cbi8vIEBtaXhpbiBob29rLWJ1dHRvbi1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgSWNvblxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgaWNvbnNcbi8vXG4vLyBBZGFwdGVkIGZyb20gaHR0cDovL2ZvcnRhd2Vzb21lLmdpdGh1Yi5jb20vRm9udC1Bd2Vzb21lIChWZXJzaW9uIDQuNi4wKVxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWljb24tKmBcbi8vXG4vLyBTdWItb2JqZWN0czogICAgIGB1ay1pY29uLWhvdmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaWNvbi1idXR0b25gXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstaWNvbi1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWljb24tbWVkaXVtYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaWNvbi1sYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWljb24tanVzdGlmeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWljb24tc3BpbmBcbi8vXG4vLyBVc2VzOiAgICAgICAgICAgIEFuaW1hdGlvblxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRpY29uLWZvbnQtcGF0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIi4uL2ZvbnRzXCIgIWRlZmF1bHQ7XG5cbiRpY29uLXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAxNTAlICFkZWZhdWx0O1xuJGljb24tbWVkaXVtLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgIDIwMCUgIWRlZmF1bHQ7XG4kaWNvbi1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgMjUwJSAhZGVmYXVsdDtcblxuJGljb24tc21hbGwtdmVydGljYWwtYWxpZ246ICAgICAgICAgICAgICAgICAgICAgIC0xMCUgIWRlZmF1bHQ7XG4kaWNvbi1tZWRpdW0tdmVydGljYWwtYWxpZ246ICAgICAgICAgICAgICAgICAgICAgLTE2JSAhZGVmYXVsdDtcbiRpY29uLWxhcmdlLXZlcnRpY2FsLWFsaWduOiAgICAgICAgICAgICAgICAgICAgICAtMjIlICFkZWZhdWx0O1xuXG4kaWNvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiRpY29uLWhvdmVyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuXG4kaWNvbi1idXR0b24td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMzVweCAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAkaWNvbi1idXR0b24td2lkdGggIWRlZmF1bHQ7XG4kaWNvbi1idXR0b24tYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgICAgICAgICAgMTAwJSAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAjZWVlICFkZWZhdWx0O1xuJGljb24tYnV0dG9uLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgIHJvdW5kKCgkaWNvbi1idXR0b24td2lkdGggKiAwLjUpKSAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuXG4kaWNvbi1idXR0b24taG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1ob3Zlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuXG4kaWNvbi1idXR0b24tYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRpY29uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBJY29uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQGZvbnQtZmFjZSB7XG4gICAgZm9udC1mYW1pbHk6ICdGb250QXdlc29tZSc7XG4gICAgc3JjOiB1cmwoXCIjeyRpY29uLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC53b2ZmMlwiKSBmb3JtYXQoJ3dvZmYyJyksXG4gICAgICAgICB1cmwoXCIjeyRpY29uLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC53b2ZmXCIpIGZvcm1hdChcIndvZmZcIiksXG4gICAgICAgICB1cmwoXCIjeyRpY29uLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC50dGZcIikgZm9ybWF0KFwidHJ1ZXR5cGVcIik7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbi8qXG4gKiAxLiBBbGxvdyBtYXJnaW5cbiAqIDIuIFByZXZlbnQgaW5oZXJpdCBmb250IHN0eWxlXG4gKiA0LiBDb3JyZWN0IGxpbmUtaGVpZ2h0XG4gKiA1LiBCZXR0ZXIgZm9udCByZW5kZXJpbmdcbiAqIDYuIFJlbW92ZSBgdGV4dC1kZWNvcmF0aW9uYCBmb3IgYW5jaG9yc1xuICovXG5cbltjbGFzcyo9J3VrLWljb24tJ10ge1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAvKiA0ICovXG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgLyogNSAqL1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAgIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi8qIDYgKi9cbltjbGFzcyo9J3VrLWljb24tJ10sXG5bY2xhc3MqPSd1ay1pY29uLSddOmhvdmVyLFxuW2NsYXNzKj0ndWstaWNvbi0nXTpmb2N1cyB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuXG5cbi8qIFNpemUgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWljb24tc21hbGwge1xuICAgIGZvbnQtc2l6ZTogJGljb24tc21hbGwtZm9udC1zaXplO1xuICAgIHZlcnRpY2FsLWFsaWduOiAkaWNvbi1zbWFsbC12ZXJ0aWNhbC1hbGlnbjtcbn1cblxuLnVrLWljb24tbWVkaXVtIHtcbiAgICBmb250LXNpemU6ICRpY29uLW1lZGl1bS1mb250LXNpemU7XG4gICAgdmVydGljYWwtYWxpZ246ICRpY29uLW1lZGl1bS12ZXJ0aWNhbC1hbGlnbjtcbn1cblxuLnVrLWljb24tbGFyZ2Uge1xuICAgIGZvbnQtc2l6ZTogJGljb24tbGFyZ2UtZm9udC1zaXplO1xuICAgIHZlcnRpY2FsLWFsaWduOiAkaWNvbi1sYXJnZS12ZXJ0aWNhbC1hbGlnbjtcbn1cblxuXG4vKiBNb2RpZmllcjogYHVrLWljb24tanVzdGlmeWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstaWNvbi1qdXN0aWZ5IHtcbiAgICB3aWR0aDogMWVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbn1cblxuXG4vKiBNb2RpZmllcjogYHVrLWljb24tc3BpbmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstaWNvbi1zcGluIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHVrLXJvdGF0ZSAycyBpbmZpbml0ZSBsaW5lYXI7XG4gICAgYW5pbWF0aW9uOiB1ay1yb3RhdGUgMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG5cbi8qIE1vZGlmaWVyOiBgdWstaWNvbi1ob3ZlcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstaWNvbi1ob3ZlciB7XG4gICAgY29sb3I6ICRpY29uLWhvdmVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2staWNvbi1ob3ZlcigpO1xufVxuXG4vKlxuICogSG92ZXJcbiAqL1xuXG4udWstaWNvbi1ob3Zlcjpob3ZlciB7XG4gICAgY29sb3I6ICRpY29uLWhvdmVyLWhvdmVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2staWNvbi1ob3Zlci1ob3ZlcigpO1xufVxuXG5cbi8qIE1vZGlmaWVyOiBgdWstaWNvbi1idXR0b25gXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWljb24tYnV0dG9uIHtcbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB3aWR0aDogJGljb24tYnV0dG9uLXdpZHRoO1xuICAgIGhlaWdodDogJGljb24tYnV0dG9uLWhlaWdodDtcbiAgICBib3JkZXItcmFkaXVzOiAkaWNvbi1idXR0b24tYm9yZGVyLXJhZGl1cztcbiAgICBiYWNrZ3JvdW5kOiAkaWNvbi1idXR0b24tYmFja2dyb3VuZDtcbiAgICBsaW5lLWhlaWdodDogJGljb24tYnV0dG9uLWhlaWdodDtcbiAgICBjb2xvcjogJGljb24tYnV0dG9uLWNvbG9yO1xuICAgIGZvbnQtc2l6ZTogJGljb24tYnV0dG9uLWZvbnQtc2l6ZTtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgQGluY2x1ZGUgaG9vay1pY29uLWJ1dHRvbigpO1xufVxuXG4vKlxuICogSG92ZXJcbiAqIDEuIEFwcGx5IGhvdmVyIHN0eWxlIGFsc28gdG8gZm9jdXMgc3RhdGVcbiAqIDIuIFJlbW92ZSBkZWZhdWx0IGZvY3VzIHN0eWxlXG4gKi9cblxuLnVrLWljb24tYnV0dG9uOmhvdmVyLFxuLnVrLWljb24tYnV0dG9uOmZvY3VzIHsgLy8gMVxuICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLWJ1dHRvbi1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkaWNvbi1idXR0b24taG92ZXItY29sb3I7XG4gICAgLyogMiAqL1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgQGluY2x1ZGUgaG9vay1pY29uLWJ1dHRvbi1ob3ZlcigpO1xufVxuXG4vKiBBY3RpdmUgKi9cbi51ay1pY29uLWJ1dHRvbjphY3RpdmUge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uLWJ1dHRvbi1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGljb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLWljb24tYnV0dG9uLWFjdGl2ZSgpO1xufVxuXG5cbi8qIEljb24gbWFwcGluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1pY29uLWdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDAwXCI7IH1cbi51ay1pY29uLW11c2ljOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDAxXCI7IH1cbi51ay1pY29uLXNlYXJjaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwMlwiOyB9XG4udWstaWNvbi1lbnZlbG9wZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDAzXCI7IH1cbi51ay1pY29uLWhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDA0XCI7IH1cbi51ay1pY29uLXN0YXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMDVcIjsgfVxuLnVrLWljb24tc3Rhci1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDA2XCI7IH1cbi51ay1pY29uLXVzZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMDdcIjsgfVxuLnVrLWljb24tZmlsbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwOFwiOyB9XG4udWstaWNvbi10aC1sYXJnZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwOVwiOyB9XG4udWstaWNvbi10aDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwYVwiOyB9XG4udWstaWNvbi10aC1saXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDBiXCI7IH1cbi51ay1pY29uLWNoZWNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDBjXCI7IH1cbi51ay1pY29uLXJlbW92ZTpiZWZvcmUsXG4udWstaWNvbi1jbG9zZTpiZWZvcmUsXG4udWstaWNvbi10aW1lczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwZFwiOyB9XG4udWstaWNvbi1zZWFyY2gtcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAwZVwiOyB9XG4udWstaWNvbi1zZWFyY2gtbWludXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTBcIjsgfVxuLnVrLWljb24tcG93ZXItb2ZmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDExXCI7IH1cbi51ay1pY29uLXNpZ25hbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxMlwiOyB9XG4udWstaWNvbi1nZWFyOmJlZm9yZSxcbi51ay1pY29uLWNvZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxM1wiOyB9XG4udWstaWNvbi10cmFzaC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDE0XCI7IH1cbi51ay1pY29uLWhvbWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTVcIjsgfVxuLnVrLWljb24tZmlsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDE2XCI7IH1cbi51ay1pY29uLWNsb2NrLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwMTdcIjsgfVxuLnVrLWljb24tcm9hZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxOFwiOyB9XG4udWstaWNvbi1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxOVwiOyB9XG4udWstaWNvbi1hcnJvdy1jaXJjbGUtby1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDFhXCI7IH1cbi51ay1pY29uLWFycm93LWNpcmNsZS1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDFiXCI7IH1cbi51ay1pY29uLWluYm94OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDFjXCI7IH1cbi51ay1pY29uLXBsYXktY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwMWRcIjsgfVxuLnVrLWljb24tcm90YXRlLXJpZ2h0OmJlZm9yZSxcbi51ay1pY29uLXJlcGVhdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAxZVwiOyB9XG4udWstaWNvbi1yZWZyZXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDIxXCI7IH1cbi51ay1pY29uLWxpc3QtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDIyXCI7IH1cbi51ay1pY29uLWxvY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjNcIjsgfVxuLnVrLWljb24tZmxhZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyNFwiOyB9XG4udWstaWNvbi1oZWFkcGhvbmVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDI1XCI7IH1cbi51ay1pY29uLXZvbHVtZS1vZmY6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjZcIjsgfVxuLnVrLWljb24tdm9sdW1lLWRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYwMjdcIjsgfVxuLnVrLWljb24tdm9sdW1lLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDI4XCI7IH1cbi51ay1pY29uLXFyY29kZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyOVwiOyB9XG4udWstaWNvbi1iYXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDJhXCI7IH1cbi51ay1pY29uLXRhZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAyYlwiOyB9XG4udWstaWNvbi10YWdzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDJjXCI7IH1cbi51ay1pY29uLWJvb2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmRcIjsgfVxuLnVrLWljb24tYm9va21hcms6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmVcIjsgfVxuLnVrLWljb24tcHJpbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMmZcIjsgfVxuLnVrLWljb24tY2FtZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDMwXCI7IH1cbi51ay1pY29uLWZvbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMzFcIjsgfVxuLnVrLWljb24tYm9sZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzMlwiOyB9XG4udWstaWNvbi1pdGFsaWM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMzNcIjsgfVxuLnVrLWljb24tdGV4dC1oZWlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwMzRcIjsgfVxuLnVrLWljb24tdGV4dC13aWR0aDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzNVwiOyB9XG4udWstaWNvbi1hbGlnbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDM2XCI7IH1cbi51ay1pY29uLWFsaWduLWNlbnRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzN1wiOyB9XG4udWstaWNvbi1hbGlnbi1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzOFwiOyB9XG4udWstaWNvbi1hbGlnbi1qdXN0aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDM5XCI7IH1cbi51ay1pY29uLWxpc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYwM2FcIjsgfVxuLnVrLWljb24tZGVkZW50OmJlZm9yZSxcbi51ay1pY29uLW91dGRlbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwM2JcIjsgfVxuLnVrLWljb24taW5kZW50OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDNjXCI7IH1cbi51ay1pY29uLXZpZGVvLWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjAzZFwiOyB9XG4udWstaWNvbi1waG90bzpiZWZvcmUsXG4udWstaWNvbi1pbWFnZTpiZWZvcmUsXG4udWstaWNvbi1waWN0dXJlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwM2VcIjsgfVxuLnVrLWljb24tcGVuY2lsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDQwXCI7IH1cbi51ay1pY29uLW1hcC1tYXJrZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDFcIjsgfVxuLnVrLWljb24tYWRqdXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDQyXCI7IH1cbi51ay1pY29uLXRpbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDNcIjsgfVxuLnVrLWljb24tZWRpdDpiZWZvcmUsXG4udWstaWNvbi1wZW5jaWwtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDRcIjsgfVxuLnVrLWljb24tc2hhcmUtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDVcIjsgfVxuLnVrLWljb24tY2hlY2stc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDZcIjsgfVxuLnVrLWljb24tYXJyb3dzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDQ3XCI7IH1cbi51ay1pY29uLXN0ZXAtYmFja3dhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNDhcIjsgfVxuLnVrLWljb24tZmFzdC1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0OVwiOyB9XG4udWstaWNvbi1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0YVwiOyB9XG4udWstaWNvbi1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDRiXCI7IH1cbi51ay1pY29uLXBhdXNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDRjXCI7IH1cbi51ay1pY29uLXN0b3A6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNGRcIjsgfVxuLnVrLWljb24tZm9yd2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA0ZVwiOyB9XG4udWstaWNvbi1mYXN0LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTBcIjsgfVxuLnVrLWljb24tc3RlcC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDUxXCI7IH1cbi51ay1pY29uLWVqZWN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDUyXCI7IH1cbi51ay1pY29uLWNoZXZyb24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1M1wiOyB9XG4udWstaWNvbi1jaGV2cm9uLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDU0XCI7IH1cbi51ay1pY29uLXBsdXMtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDU1XCI7IH1cbi51ay1pY29uLW1pbnVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1NlwiOyB9XG4udWstaWNvbi10aW1lcy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNTdcIjsgfVxuLnVrLWljb24tY2hlY2stY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDU4XCI7IH1cbi51ay1pY29uLXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1OVwiOyB9XG4udWstaWNvbi1pbmZvLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1YVwiOyB9XG4udWstaWNvbi1jcm9zc2hhaXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDViXCI7IH1cbi51ay1pY29uLXRpbWVzLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDVjXCI7IH1cbi51ay1pY29uLWNoZWNrLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDVkXCI7IH1cbi51ay1pY29uLWJhbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA1ZVwiOyB9XG4udWstaWNvbi1hcnJvdy1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDYwXCI7IH1cbi51ay1pY29uLWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDYxXCI7IH1cbi51ay1pY29uLWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDYyXCI7IH1cbi51ay1pY29uLWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYwNjNcIjsgfVxuLnVrLWljb24tbWFpbC1mb3J3YXJkOmJlZm9yZSxcbi51ay1pY29uLXNoYXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDY0XCI7IH1cbi51ay1pY29uLWV4cGFuZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2NVwiOyB9XG4udWstaWNvbi1jb21wcmVzczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2NlwiOyB9XG4udWstaWNvbi1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDY3XCI7IH1cbi51ay1pY29uLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDY4XCI7IH1cbi51ay1pY29uLWFzdGVyaXNrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDY5XCI7IH1cbi51ay1pY29uLWV4Y2xhbWF0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2YVwiOyB9XG4udWstaWNvbi1naWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDZiXCI7IH1cbi51ay1pY29uLWxlYWY6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNmNcIjsgfVxuLnVrLWljb24tZmlyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA2ZFwiOyB9XG4udWstaWNvbi1leWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNmVcIjsgfVxuLnVrLWljb24tZXllLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDcwXCI7IH1cbi51ay1pY29uLXdhcm5pbmc6YmVmb3JlLFxuLnVrLWljb24tZXhjbGFtYXRpb24tdHJpYW5nbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzFcIjsgfVxuLnVrLWljb24tcGxhbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzJcIjsgfVxuLnVrLWljb24tY2FsZW5kYXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzNcIjsgfVxuLnVrLWljb24tcmFuZG9tOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDc0XCI7IH1cbi51ay1pY29uLWNvbW1lbnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzVcIjsgfVxuLnVrLWljb24tbWFnbmV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDc2XCI7IH1cbi51ay1pY29uLWNoZXZyb24tdXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzdcIjsgfVxuLnVrLWljb24tY2hldnJvbi1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDc4XCI7IH1cbi51ay1pY29uLXJldHdlZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwNzlcIjsgfVxuLnVrLWljb24tc2hvcHBpbmctY2FydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA3YVwiOyB9XG4udWstaWNvbi1mb2xkZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwN2JcIjsgfVxuLnVrLWljb24tZm9sZGVyLW9wZW46YmVmb3JlIHsgY29udGVudDogXCJcXGYwN2NcIjsgfVxuLnVrLWljb24tYXJyb3dzLXY6YmVmb3JlIHsgY29udGVudDogXCJcXGYwN2RcIjsgfVxuLnVrLWljb24tYXJyb3dzLWg6YmVmb3JlIHsgY29udGVudDogXCJcXGYwN2VcIjsgfVxuLnVrLWljb24tYmFyLWNoYXJ0LW86YmVmb3JlLFxuLnVrLWljb24tYmFyLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDgwXCI7IH1cbi51ay1pY29uLXR3aXR0ZXItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDgxXCI7IH1cbi51ay1pY29uLWZhY2Vib29rLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4MlwiOyB9XG4udWstaWNvbi1jYW1lcmEtcmV0cm86YmVmb3JlIHsgY29udGVudDogXCJcXGYwODNcIjsgfVxuLnVrLWljb24ta2V5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDg0XCI7IH1cbi51ay1pY29uLWdlYXJzOmJlZm9yZSxcbi51ay1pY29uLWNvZ3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODVcIjsgfVxuLnVrLWljb24tY29tbWVudHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODZcIjsgfVxuLnVrLWljb24tdGh1bWJzLW8tdXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODdcIjsgfVxuLnVrLWljb24tdGh1bWJzLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4OFwiOyB9XG4udWstaWNvbi1zdGFyLWhhbGY6YmVmb3JlIHsgY29udGVudDogXCJcXGYwODlcIjsgfVxuLnVrLWljb24taGVhcnQtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4YVwiOyB9XG4udWstaWNvbi1zaWduLW91dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4YlwiOyB9XG4udWstaWNvbi1saW5rZWRpbi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOGNcIjsgfVxuLnVrLWljb24tdGh1bWItdGFjazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA4ZFwiOyB9XG4udWstaWNvbi1leHRlcm5hbC1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDhlXCI7IH1cbi51ay1pY29uLXNpZ24taW46YmVmb3JlIHsgY29udGVudDogXCJcXGYwOTBcIjsgfVxuLnVrLWljb24tdHJvcGh5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDkxXCI7IH1cbi51ay1pY29uLWdpdGh1Yi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOTJcIjsgfVxuLnVrLWljb24tdXBsb2FkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDkzXCI7IH1cbi51ay1pY29uLWxlbW9uLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwOTRcIjsgfVxuLnVrLWljb24tcGhvbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOTVcIjsgfVxuLnVrLWljb24tc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwOTZcIjsgfVxuLnVrLWljb24tYm9va21hcmstbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA5N1wiOyB9XG4udWstaWNvbi1waG9uZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOThcIjsgfVxuLnVrLWljb24tdHdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA5OVwiOyB9XG4udWstaWNvbi1mYWNlYm9vay1mOmJlZm9yZSxcbi51ay1pY29uLWZhY2Vib29rOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDlhXCI7IH1cbi51ay1pY29uLWdpdGh1YjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjA5YlwiOyB9XG4udWstaWNvbi11bmxvY2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOWNcIjsgfVxuLnVrLWljb24tY3JlZGl0LWNhcmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwOWRcIjsgfVxuLnVrLWljb24tcnNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMDllXCI7IH1cbi51ay1pY29uLWhkZC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGEwXCI7IH1cbi51ay1pY29uLWJ1bGxob3JuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGExXCI7IH1cbi51ay1pY29uLWJlbGw6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZjNcIjsgfVxuLnVrLWljb24tY2VydGlmaWNhdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYTNcIjsgfVxuLnVrLWljb24taGFuZC1vLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGE0XCI7IH1cbi51ay1pY29uLWhhbmQtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGE1XCI7IH1cbi51ay1pY29uLWhhbmQtby11cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhNlwiOyB9XG4udWstaWNvbi1oYW5kLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhN1wiOyB9XG4udWstaWNvbi1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhOFwiOyB9XG4udWstaWNvbi1hcnJvdy1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYTlcIjsgfVxuLnVrLWljb24tYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGFhXCI7IH1cbi51ay1pY29uLWFycm93LWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGFiXCI7IH1cbi51ay1pY29uLWdsb2JlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGFjXCI7IH1cbi51ay1pY29uLXdyZW5jaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhZFwiOyB9XG4udWstaWNvbi10YXNrczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBhZVwiOyB9XG4udWstaWNvbi1maWx0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYjBcIjsgfVxuLnVrLWljb24tYnJpZWZjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGIxXCI7IH1cbi51ay1pY29uLWFycm93cy1hbHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYjJcIjsgfVxuLnVrLWljb24tZ3JvdXA6YmVmb3JlLFxuLnVrLWljb24tdXNlcnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzBcIjsgfVxuLnVrLWljb24tY2hhaW46YmVmb3JlLFxuLnVrLWljb24tbGluazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjMVwiOyB9XG4udWstaWNvbi1jbG91ZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjMlwiOyB9XG4udWstaWNvbi1mbGFzazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjM1wiOyB9XG4udWstaWNvbi1jdXQ6YmVmb3JlLFxuLnVrLWljb24tc2Npc3NvcnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwYzRcIjsgfVxuLnVrLWljb24tY29weTpiZWZvcmUsXG4udWstaWNvbi1maWxlcy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGM1XCI7IH1cbi51ay1pY29uLXBhcGVyY2xpcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjNlwiOyB9XG4udWstaWNvbi1zYXZlOmJlZm9yZSxcbi51ay1pY29uLWZsb3BweS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGM3XCI7IH1cbi51ay1pY29uLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjOFwiOyB9XG4udWstaWNvbi1uYXZpY29uOmJlZm9yZSxcbi51ay1pY29uLXJlb3JkZXI6YmVmb3JlLFxuLnVrLWljb24tYmFyczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjOVwiOyB9XG4udWstaWNvbi1saXN0LXVsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGNhXCI7IH1cbi51ay1pY29uLWxpc3Qtb2w6YmVmb3JlIHsgY29udGVudDogXCJcXGYwY2JcIjsgfVxuLnVrLWljb24tc3RyaWtldGhyb3VnaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBjY1wiOyB9XG4udWstaWNvbi11bmRlcmxpbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwY2RcIjsgfVxuLnVrLWljb24tdGFibGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwY2VcIjsgfVxuLnVrLWljb24tbWFnaWM6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDBcIjsgfVxuLnVrLWljb24tdHJ1Y2s6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDFcIjsgfVxuLnVrLWljb24tcGludGVyZXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGQyXCI7IH1cbi51ay1pY29uLXBpbnRlcmVzdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDNcIjsgfVxuLnVrLWljb24tZ29vZ2xlLXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGQ0XCI7IH1cbi51ay1pY29uLWdvb2dsZS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGQ1XCI7IH1cbi51ay1pY29uLW1vbmV5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGQ2XCI7IH1cbi51ay1pY29uLWNhcmV0LWRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDdcIjsgfVxuLnVrLWljb24tY2FyZXQtdXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZDhcIjsgfVxuLnVrLWljb24tY2FyZXQtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkOVwiOyB9XG4udWstaWNvbi1jYXJldC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkYVwiOyB9XG4udWstaWNvbi1jb2x1bW5zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGRiXCI7IH1cbi51ay1pY29uLXVuc29ydGVkOmJlZm9yZSxcbi51ay1pY29uLXNvcnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZGNcIjsgfVxuLnVrLWljb24tc29ydC1kb3duOmJlZm9yZSxcbi51ay1pY29uLXNvcnQtZGVzYzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBkZFwiOyB9XG4udWstaWNvbi1zb3J0LXVwOmJlZm9yZSxcbi51ay1pY29uLXNvcnQtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGRlXCI7IH1cbi51ay1pY29uLWVudmVsb3BlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGUwXCI7IH1cbi51ay1pY29uLWxpbmtlZGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGUxXCI7IH1cbi51ay1pY29uLXJvdGF0ZS1sZWZ0OmJlZm9yZSxcbi51ay1pY29uLXVuZG86YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTJcIjsgfVxuLnVrLWljb24tbGVnYWw6YmVmb3JlLFxuLnVrLWljb24tZ2F2ZWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTNcIjsgfVxuLnVrLWljb24tZGFzaGJvYXJkOmJlZm9yZSxcbi51ay1pY29uLXRhY2hvbWV0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTRcIjsgfVxuLnVrLWljb24tY29tbWVudC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGU1XCI7IH1cbi51ay1pY29uLWNvbW1lbnRzLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwZTZcIjsgfVxuLnVrLWljb24tZmxhc2g6YmVmb3JlLFxuLnVrLWljb24tYm9sdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlN1wiOyB9XG4udWstaWNvbi1zaXRlbWFwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGU4XCI7IH1cbi51ay1pY29uLXVtYnJlbGxhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGU5XCI7IH1cbi51ay1pY29uLXBhc3RlOmJlZm9yZSxcbi51ay1pY29uLWNsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlYVwiOyB9XG4udWstaWNvbi1saWdodGJ1bGItbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlYlwiOyB9XG4udWstaWNvbi1leGNoYW5nZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlY1wiOyB9XG4udWstaWNvbi1jbG91ZC1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBlZFwiOyB9XG4udWstaWNvbi1jbG91ZC11cGxvYWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZWVcIjsgfVxuLnVrLWljb24tdXNlci1tZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmMFwiOyB9XG4udWstaWNvbi1zdGV0aG9zY29wZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmMVwiOyB9XG4udWstaWNvbi1zdWl0Y2FzZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmMlwiOyB9XG4udWstaWNvbi1iZWxsLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwYTJcIjsgfVxuLnVrLWljb24tY29mZmVlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGY0XCI7IH1cbi51ay1pY29uLWN1dGxlcnk6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZjVcIjsgfVxuLnVrLWljb24tZmlsZS10ZXh0LW86YmVmb3JlIHsgY29udGVudDogXCJcXGYwZjZcIjsgfVxuLnVrLWljb24tYnVpbGRpbmctbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmN1wiOyB9XG4udWstaWNvbi1ob3NwaXRhbC1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMGY4XCI7IH1cbi51ay1pY29uLWFtYnVsYW5jZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmOVwiOyB9XG4udWstaWNvbi1tZWRraXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZmFcIjsgfVxuLnVrLWljb24tZmlnaHRlci1qZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYwZmJcIjsgfVxuLnVrLWljb24tYmVlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmY1wiOyB9XG4udWstaWNvbi1oLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmZFwiOyB9XG4udWstaWNvbi1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjBmZVwiOyB9XG4udWstaWNvbi1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwMFwiOyB9XG4udWstaWNvbi1hbmdsZS1kb3VibGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDFcIjsgfVxuLnVrLWljb24tYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTAyXCI7IH1cbi51ay1pY29uLWFuZ2xlLWRvdWJsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTAzXCI7IH1cbi51ay1pY29uLWFuZ2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDRcIjsgfVxuLnVrLWljb24tYW5nbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDVcIjsgfVxuLnVrLWljb24tYW5nbGUtdXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMDZcIjsgfVxuLnVrLWljb24tYW5nbGUtZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwN1wiOyB9XG4udWstaWNvbi1kZXNrdG9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTA4XCI7IH1cbi51ay1pY29uLWxhcHRvcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwOVwiOyB9XG4udWstaWNvbi10YWJsZXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMGFcIjsgfVxuLnVrLWljb24tbW9iaWxlLXBob25lOmJlZm9yZSxcbi51ay1pY29uLW1vYmlsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwYlwiOyB9XG4udWstaWNvbi1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEwY1wiOyB9XG4udWstaWNvbi1xdW90ZS1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTBkXCI7IH1cbi51ay1pY29uLXF1b3RlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTBlXCI7IH1cbi51ay1pY29uLXNwaW5uZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTBcIjsgfVxuLnVrLWljb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTExXCI7IH1cbi51ay1pY29uLW1haWwtcmVwbHk6YmVmb3JlLFxuLnVrLWljb24tcmVwbHk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMTJcIjsgfVxuLnVrLWljb24tZ2l0aHViLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExM1wiOyB9XG4udWstaWNvbi1mb2xkZXItbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExNFwiOyB9XG4udWstaWNvbi1mb2xkZXItb3Blbi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTE1XCI7IH1cbi51ay1pY29uLXNtaWxlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxMThcIjsgfVxuLnVrLWljb24tZnJvd24tbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExOVwiOyB9XG4udWstaWNvbi1tZWgtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjExYVwiOyB9XG4udWstaWNvbi1nYW1lcGFkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFiXCI7IH1cbi51ay1pY29uLWtleWJvYXJkLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxMWNcIjsgfVxuLnVrLWljb24tZmxhZy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFkXCI7IH1cbi51ay1pY29uLWZsYWctY2hlY2tlcmVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTFlXCI7IH1cbi51ay1pY29uLXRlcm1pbmFsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTIwXCI7IH1cbi51ay1pY29uLWNvZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjFcIjsgfVxuLnVrLWljb24tbWFpbC1yZXBseS1hbGw6YmVmb3JlLFxuLnVrLWljb24tcmVwbHktYWxsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTIyXCI7IH1cbi51ay1pY29uLXN0YXItaGFsZi1lbXB0eTpiZWZvcmUsXG4udWstaWNvbi1zdGFyLWhhbGYtZnVsbDpiZWZvcmUsXG4udWstaWNvbi1zdGFyLWhhbGYtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyM1wiOyB9XG4udWstaWNvbi1sb2NhdGlvbi1hcnJvdzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyNFwiOyB9XG4udWstaWNvbi1jcm9wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI1XCI7IH1cbi51ay1pY29uLWNvZGUtZm9yazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyNlwiOyB9XG4udWstaWNvbi11bmxpbms6YmVmb3JlLFxuLnVrLWljb24tY2hhaW4tYnJva2VuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI3XCI7IH1cbi51ay1pY29uLXF1ZXN0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTI4XCI7IH1cbi51ay1pY29uLWluZm86YmVmb3JlIHsgY29udGVudDogXCJcXGYxMjlcIjsgfVxuLnVrLWljb24tZXhjbGFtYXRpb246YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmFcIjsgfVxuLnVrLWljb24tc3VwZXJzY3JpcHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmJcIjsgfVxuLnVrLWljb24tc3Vic2NyaXB0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTJjXCI7IH1cbi51ay1pY29uLWVyYXNlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEyZFwiOyB9XG4udWstaWNvbi1wdXp6bGUtcGllY2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxMmVcIjsgfVxuLnVrLWljb24tbWljcm9waG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzMFwiOyB9XG4udWstaWNvbi1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTMxXCI7IH1cbi51ay1pY29uLXNoaWVsZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzMlwiOyB9XG4udWstaWNvbi1jYWxlbmRhci1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTMzXCI7IH1cbi51ay1pY29uLWZpcmUtZXh0aW5ndWlzaGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTM0XCI7IH1cbi51ay1pY29uLXJvY2tldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzNVwiOyB9XG4udWstaWNvbi1tYXhjZG46YmVmb3JlIHsgY29udGVudDogXCJcXGYxMzZcIjsgfVxuLnVrLWljb24tY2hldnJvbi1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzN1wiOyB9XG4udWstaWNvbi1jaGV2cm9uLWNpcmNsZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzOFwiOyB9XG4udWstaWNvbi1jaGV2cm9uLWNpcmNsZS11cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjEzOVwiOyB9XG4udWstaWNvbi1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTNhXCI7IH1cbi51ay1pY29uLWh0bWw1OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTNiXCI7IH1cbi51ay1pY29uLWNzczM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2NcIjsgfVxuLnVrLWljb24tYW5jaG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTNkXCI7IH1cbi51ay1pY29uLXVubG9jay1hbHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxM2VcIjsgfVxuLnVrLWljb24tYnVsbHNleWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDBcIjsgfVxuLnVrLWljb24tZWxsaXBzaXMtaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0MVwiOyB9XG4udWstaWNvbi1lbGxpcHNpcy12OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQyXCI7IH1cbi51ay1pY29uLXJzcy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDNcIjsgfVxuLnVrLWljb24tcGxheS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNDRcIjsgfVxuLnVrLWljb24tdGlja2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ1XCI7IH1cbi51ay1pY29uLW1pbnVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0NlwiOyB9XG4udWstaWNvbi1taW51cy1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0N1wiOyB9XG4udWstaWNvbi1sZXZlbC11cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0OFwiOyB9XG4udWstaWNvbi1sZXZlbC1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTQ5XCI7IH1cbi51ay1pY29uLWNoZWNrLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0YVwiOyB9XG4udWstaWNvbi1wZW5jaWwtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRiXCI7IH1cbi51ay1pY29uLWV4dGVybmFsLWxpbmstc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRjXCI7IH1cbi51ay1pY29uLXNoYXJlLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE0ZFwiOyB9XG4udWstaWNvbi1jb21wYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTRlXCI7IH1cbi51ay1pY29uLXRvZ2dsZS1kb3duOmJlZm9yZSxcbi51ay1pY29uLWNhcmV0LXNxdWFyZS1vLWRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTBcIjsgfVxuLnVrLWljb24tdG9nZ2xlLXVwOmJlZm9yZSxcbi51ay1pY29uLWNhcmV0LXNxdWFyZS1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTUxXCI7IH1cbi51ay1pY29uLXRvZ2dsZS1yaWdodDpiZWZvcmUsXG4udWstaWNvbi1jYXJldC1zcXVhcmUtby1yaWdodDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1MlwiOyB9XG4udWstaWNvbi1ldXJvOmJlZm9yZSxcbi51ay1pY29uLWV1cjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1M1wiOyB9XG4udWstaWNvbi1nYnA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTRcIjsgfVxuLnVrLWljb24tZG9sbGFyOmJlZm9yZSxcbi51ay1pY29uLXVzZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1NVwiOyB9XG4udWstaWNvbi1ydXBlZTpiZWZvcmUsXG4udWstaWNvbi1pbnI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNTZcIjsgfVxuLnVrLWljb24tY255OmJlZm9yZSxcbi51ay1pY29uLXJtYjpiZWZvcmUsXG4udWstaWNvbi15ZW46YmVmb3JlLFxuLnVrLWljb24tanB5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTU3XCI7IH1cbi51ay1pY29uLXJ1YmxlOmJlZm9yZSxcbi51ay1pY29uLXJvdWJsZTpiZWZvcmUsXG4udWstaWNvbi1ydWI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNThcIjsgfVxuLnVrLWljb24td29uOmJlZm9yZSxcbi51ay1pY29uLWtydzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1OVwiOyB9XG4udWstaWNvbi1iaXRjb2luOmJlZm9yZSxcbi51ay1pY29uLWJ0YzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1YVwiOyB9XG4udWstaWNvbi1maWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTViXCI7IH1cbi51ay1pY29uLWZpbGUtdGV4dDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1Y1wiOyB9XG4udWstaWNvbi1zb3J0LWFscGhhLWFzYzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE1ZFwiOyB9XG4udWstaWNvbi1zb3J0LWFscGhhLWRlc2M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNWVcIjsgfVxuLnVrLWljb24tc29ydC1hbW91bnQtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTYwXCI7IH1cbi51ay1pY29uLXNvcnQtYW1vdW50LWRlc2M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjFcIjsgfVxuLnVrLWljb24tc29ydC1udW1lcmljLWFzYzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2MlwiOyB9XG4udWstaWNvbi1zb3J0LW51bWVyaWMtZGVzYzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2M1wiOyB9XG4udWstaWNvbi10aHVtYnMtdXA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjRcIjsgfVxuLnVrLWljb24tdGh1bWJzLWRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjVcIjsgfVxuLnVrLWljb24teW91dHViZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNjZcIjsgfVxuLnVrLWljb24teW91dHViZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2N1wiOyB9XG4udWstaWNvbi14aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTY4XCI7IH1cbi51ay1pY29uLXhpbmctc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTY5XCI7IH1cbi51ay1pY29uLXlvdXR1YmUtcGxheTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2YVwiOyB9XG4udWstaWNvbi1kcm9wYm94OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTZiXCI7IH1cbi51ay1pY29uLXN0YWNrLW92ZXJmbG93OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTZjXCI7IH1cbi51ay1pY29uLWluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE2ZFwiOyB9XG4udWstaWNvbi1mbGlja3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYxNmVcIjsgfVxuLnVrLWljb24tYWRuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTcwXCI7IH1cbi51ay1pY29uLWJpdGJ1Y2tldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3MVwiOyB9XG4udWstaWNvbi1iaXRidWNrZXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTcyXCI7IH1cbi51ay1pY29uLXR1bWJscjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3M1wiOyB9XG4udWstaWNvbi10dW1ibHItc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc0XCI7IH1cbi51ay1pY29uLWxvbmctYXJyb3ctZG93bjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3NVwiOyB9XG4udWstaWNvbi1sb25nLWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc2XCI7IH1cbi51ay1pY29uLWxvbmctYXJyb3ctbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3N1wiOyB9XG4udWstaWNvbi1sb25nLWFycm93LXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc4XCI7IH1cbi51ay1pY29uLWFwcGxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTc5XCI7IH1cbi51ay1pY29uLXdpbmRvd3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYxN2FcIjsgfVxuLnVrLWljb24tYW5kcm9pZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3YlwiOyB9XG4udWstaWNvbi1saW51eDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3Y1wiOyB9XG4udWstaWNvbi1kcmliYmJsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3ZFwiOyB9XG4udWstaWNvbi1za3lwZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE3ZVwiOyB9XG4udWstaWNvbi1mb3Vyc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTgwXCI7IH1cbi51ay1pY29uLXRyZWxsbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4MVwiOyB9XG4udWstaWNvbi1mZW1hbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODJcIjsgfVxuLnVrLWljb24tbWFsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4M1wiOyB9XG4udWstaWNvbi1naXR0aXA6YmVmb3JlLFxuLnVrLWljb24tZ3JhdGlwYXk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODRcIjsgfVxuLnVrLWljb24tc3VuLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxODVcIjsgfVxuLnVrLWljb24tbW9vbi1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg2XCI7IH1cbi51ay1pY29uLWFyY2hpdmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxODdcIjsgfVxuLnVrLWljb24tYnVnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg4XCI7IH1cbi51ay1pY29uLXZrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTg5XCI7IH1cbi51ay1pY29uLXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMThhXCI7IH1cbi51ay1pY29uLXJlbnJlbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE4YlwiOyB9XG4udWstaWNvbi1wYWdlbGluZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOGNcIjsgfVxuLnVrLWljb24tc3RhY2stZXhjaGFuZ2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOGRcIjsgfVxuLnVrLWljb24tYXJyb3ctY2lyY2xlLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOGVcIjsgfVxuLnVrLWljb24tYXJyb3ctY2lyY2xlLW8tbGVmdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5MFwiOyB9XG4udWstaWNvbi10b2dnbGUtbGVmdDpiZWZvcmUsXG4udWstaWNvbi1jYXJldC1zcXVhcmUtby1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTkxXCI7IH1cbi51ay1pY29uLWRvdC1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5MlwiOyB9XG4udWstaWNvbi13aGVlbGNoYWlyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTkzXCI7IH1cbi51ay1pY29uLXZpbWVvLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5NFwiOyB9XG4udWstaWNvbi10dXJraXNoLWxpcmE6YmVmb3JlLFxuLnVrLWljb24tdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTk1XCI7IH1cbi51ay1pY29uLXBsdXMtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTZcIjsgfVxuLnVrLWljb24tc3BhY2Utc2h1dHRsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5N1wiOyB9XG4udWstaWNvbi1zbGFjazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5OFwiOyB9XG4udWstaWNvbi1lbnZlbG9wZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOTlcIjsgfVxuLnVrLWljb24td29yZHByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTlhXCI7IH1cbi51ay1pY29uLW9wZW5pZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjE5YlwiOyB9XG4udWstaWNvbi1pbnN0aXR1dGlvbjpiZWZvcmUsXG4udWstaWNvbi1iYW5rOmJlZm9yZSxcbi51ay1pY29uLXVuaXZlcnNpdHk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxOWNcIjsgfVxuLnVrLWljb24tbW9ydGFyLWJvYXJkOmJlZm9yZSxcbi51ay1pY29uLWdyYWR1YXRpb24tY2FwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTlkXCI7IH1cbi51ay1pY29uLXlhaG9vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMTllXCI7IH1cbi51ay1pY29uLWdvb2dsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhMFwiOyB9XG4udWstaWNvbi1yZWRkaXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTFcIjsgfVxuLnVrLWljb24tcmVkZGl0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhMlwiOyB9XG4udWstaWNvbi1zdHVtYmxldXBvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTNcIjsgfVxuLnVrLWljb24tc3R1bWJsZXVwb246YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTRcIjsgfVxuLnVrLWljb24tZGVsaWNpb3VzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWE1XCI7IH1cbi51ay1pY29uLWRpZ2c6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTZcIjsgfVxuLnVrLWljb24tcGllZC1waXBlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhN1wiOyB9XG4udWstaWNvbi1waWVkLXBpcGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhOFwiOyB9XG4udWstaWNvbi1kcnVwYWw6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYTlcIjsgfVxuLnVrLWljb24tam9vbWxhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFhXCI7IH1cbi51ay1pY29uLWxhbmd1YWdlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWFiXCI7IH1cbi51ay1pY29uLWZheDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhY1wiOyB9XG4udWstaWNvbi1idWlsZGluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhZFwiOyB9XG4udWstaWNvbi1jaGlsZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFhZVwiOyB9XG4udWstaWNvbi1wYXc6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjBcIjsgfVxuLnVrLWljb24tc3Bvb246YmVmb3JlIHsgY29udGVudDogXCJcXGYxYjFcIjsgfVxuLnVrLWljb24tY3ViZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiMlwiOyB9XG4udWstaWNvbi1jdWJlczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiM1wiOyB9XG4udWstaWNvbi1iZWhhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI0XCI7IH1cbi51ay1pY29uLWJlaGFuY2Utc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI1XCI7IH1cbi51ay1pY29uLXN0ZWFtOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI2XCI7IH1cbi51ay1pY29uLXN0ZWFtLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiN1wiOyB9XG4udWstaWNvbi1yZWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI4XCI7IH1cbi51ay1pY29uLWF1dG9tb2JpbGU6YmVmb3JlLFxuLnVrLWljb24tY2FyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWI5XCI7IH1cbi51ay1pY29uLWNhYjpiZWZvcmUsXG4udWstaWNvbi10YXhpOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJhXCI7IH1cbi51ay1pY29uLXRyZWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYmJcIjsgfVxuLnVrLWljb24tc3BvdGlmeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFiY1wiOyB9XG4udWstaWNvbi1kZXZpYW50YXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWJkXCI7IH1cbi51ay1pY29uLXNvdW5kY2xvdWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYmVcIjsgfVxuLnVrLWljb24tZGF0YWJhc2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzBcIjsgfVxuLnVrLWljb24tZmlsZS1wZGYtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjMVwiOyB9XG4udWstaWNvbi1maWxlLXdvcmQtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjMlwiOyB9XG4udWstaWNvbi1maWxlLWV4Y2VsLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzNcIjsgfVxuLnVrLWljb24tZmlsZS1wb3dlcnBvaW50LW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzRcIjsgfVxuLnVrLWljb24tZmlsZS1waG90by1vOmJlZm9yZSxcbi51ay1pY29uLWZpbGUtcGljdHVyZS1vOmJlZm9yZSxcbi51ay1pY29uLWZpbGUtaW1hZ2UtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjNVwiOyB9XG4udWstaWNvbi1maWxlLXppcC1vOmJlZm9yZSxcbi51ay1pY29uLWZpbGUtYXJjaGl2ZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWM2XCI7IH1cbi51ay1pY29uLWZpbGUtc291bmQtbzpiZWZvcmUsXG4udWstaWNvbi1maWxlLWF1ZGlvLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxYzdcIjsgfVxuLnVrLWljb24tZmlsZS1tb3ZpZS1vOmJlZm9yZSxcbi51ay1pY29uLWZpbGUtdmlkZW8tbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjOFwiOyB9XG4udWstaWNvbi1maWxlLWNvZGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFjOVwiOyB9XG4udWstaWNvbi12aW5lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNhXCI7IH1cbi51ay1pY29uLWNvZGVwZW46YmVmb3JlIHsgY29udGVudDogXCJcXGYxY2JcIjsgfVxuLnVrLWljb24tanNmaWRkbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxY2NcIjsgfVxuLnVrLWljb24tbGlmZS1ib3V5OmJlZm9yZSxcbi51ay1pY29uLWxpZmUtYnVveTpiZWZvcmUsXG4udWstaWNvbi1saWZlLXNhdmVyOmJlZm9yZSxcbi51ay1pY29uLXN1cHBvcnQ6YmVmb3JlLFxuLnVrLWljb24tbGlmZS1yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNkXCI7IH1cbi51ay1pY29uLWNpcmNsZS1vLW5vdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWNlXCI7IH1cbi51ay1pY29uLXJhOmJlZm9yZSxcbi51ay1pY29uLXJlYmVsOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQwXCI7IH1cbi51ay1pY29uLWdlOmJlZm9yZSxcbi51ay1pY29uLWVtcGlyZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkMVwiOyB9XG4udWstaWNvbi1naXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQyXCI7IH1cbi51ay1pY29uLWdpdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkM1wiOyB9XG4udWstaWNvbi1oYWNrZXItbmV3czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkNFwiOyB9XG4udWstaWNvbi10ZW5jZW50LXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ1XCI7IH1cbi51ay1pY29uLXFxOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWQ2XCI7IH1cbi51ay1pY29uLXdlY2hhdDpiZWZvcmUsXG4udWstaWNvbi13ZWl4aW46YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDdcIjsgfVxuLnVrLWljb24tc2VuZDpiZWZvcmUsXG4udWstaWNvbi1wYXBlci1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkOFwiOyB9XG4udWstaWNvbi1zZW5kLW86YmVmb3JlLFxuLnVrLWljb24tcGFwZXItcGxhbmUtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkOVwiOyB9XG4udWstaWNvbi1oaXN0b3J5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRhXCI7IH1cbi51ay1pY29uLWdlbmRlcmxlc3M6YmVmb3JlLFxuLnVrLWljb24tY2lyY2xlLXRoaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYxZGJcIjsgfVxuLnVrLWljb24taGVhZGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRjXCI7IH1cbi51ay1pY29uLXBhcmFncmFwaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFkZFwiOyB9XG4udWstaWNvbi1zbGlkZXJzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWRlXCI7IH1cbi51ay1pY29uLXNoYXJlLWFsdDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlMFwiOyB9XG4udWstaWNvbi1zaGFyZS1hbHQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWUxXCI7IH1cbi51ay1pY29uLWJvbWI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTJcIjsgfVxuLnVrLWljb24tc29jY2VyLWJhbGwtbzpiZWZvcmUsXG4udWstaWNvbi1mdXRib2wtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlM1wiOyB9XG4udWstaWNvbi10dHk6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTRcIjsgfVxuLnVrLWljb24tYmlub2N1bGFyczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlNVwiOyB9XG4udWstaWNvbi1wbHVnOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWU2XCI7IH1cbi51ay1pY29uLXNsaWRlc2hhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTdcIjsgfVxuLnVrLWljb24tdHdpdGNoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWU4XCI7IH1cbi51ay1pY29uLXllbHA6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZTlcIjsgfVxuLnVrLWljb24tbmV3c3BhcGVyLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxZWFcIjsgfVxuLnVrLWljb24td2lmaTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlYlwiOyB9XG4udWstaWNvbi1jYWxjdWxhdG9yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWVjXCI7IH1cbi51ay1pY29uLXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFlZFwiOyB9XG4udWstaWNvbi1nb29nbGUtd2FsbGV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWVlXCI7IH1cbi51ay1pY29uLWNjLXZpc2E6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjBcIjsgfVxuLnVrLWljb24tY2MtbWFzdGVyY2FyZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmMVwiOyB9XG4udWstaWNvbi1jYy1kaXNjb3ZlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmMlwiOyB9XG4udWstaWNvbi1jYy1hbWV4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWYzXCI7IH1cbi51ay1pY29uLWNjLXBheXBhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmNFwiOyB9XG4udWstaWNvbi1jYy1zdHJpcGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjVcIjsgfVxuLnVrLWljb24tYmVsbC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmNlwiOyB9XG4udWstaWNvbi1iZWxsLXNsYXNoLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjdcIjsgfVxuLnVrLWljb24tdHJhc2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZjhcIjsgfVxuLnVrLWljb24tY29weXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWY5XCI7IH1cbi51ay1pY29uLWF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZhXCI7IH1cbi51ay1pY29uLWV5ZWRyb3BwZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZmJcIjsgfVxuLnVrLWljb24tcGFpbnQtYnJ1c2g6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZmNcIjsgfVxuLnVrLWljb24tYmlydGhkYXktY2FrZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjFmZFwiOyB9XG4udWstaWNvbi1hcmVhLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMWZlXCI7IH1cbi51ay1pY29uLXBpZS1jaGFydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwMFwiOyB9XG4udWstaWNvbi1saW5lLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjAxXCI7IH1cbi51ay1pY29uLWxhc3RmbTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIwMlwiOyB9XG4udWstaWNvbi1sYXN0Zm0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjAzXCI7IH1cbi51ay1pY29uLXRvZ2dsZS1vZmY6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDRcIjsgfVxuLnVrLWljb24tdG9nZ2xlLW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA1XCI7IH1cbi51ay1pY29uLWJpY3ljbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDZcIjsgfVxuLnVrLWljb24tYnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA3XCI7IH1cbi51ay1pY29uLWlveGhvc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMDhcIjsgfVxuLnVrLWljb24tYW5nZWxsaXN0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjA5XCI7IH1cbi51ay1pY29uLWNjOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBhXCI7IH1cbi51ay1pY29uLXNoZWtlbDpiZWZvcmUsXG4udWstaWNvbi1zaGVxZWw6YmVmb3JlLFxuLnVrLWljb24taWxzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBiXCI7IH1cbi51ay1pY29uLW1lYW5wYXRoOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjBjXCI7IH1cbi51ay1pY29uLWJ1eXNlbGxhZHM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGRcIjsgfVxuLnVrLWljb24tY29ubmVjdGRldmVsb3A6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMGVcIjsgfVxuLnVrLWljb24tZGFzaGN1YmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTBcIjsgfVxuLnVrLWljb24tZm9ydW1iZWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTFcIjsgfVxuLnVrLWljb24tbGVhbnB1YjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxMlwiOyB9XG4udWstaWNvbi1zZWxsc3k6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMTNcIjsgfVxuLnVrLWljb24tc2hpcnRzaW5idWxrOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE0XCI7IH1cbi51ay1pY29uLXNpbXBseWJ1aWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE1XCI7IH1cbi51ay1pY29uLXNreWF0bGFzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjE2XCI7IH1cbi51ay1pY29uLWNhcnQtcGx1czpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxN1wiOyB9XG4udWstaWNvbi1jYXJ0LWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogXCJcXGYyMThcIjsgfVxuLnVrLWljb24tZGlhbW9uZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIxOVwiOyB9XG4udWstaWNvbi1zaGlwOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjFhXCI7IH1cbi51ay1pY29uLXVzZXItc2VjcmV0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjFiXCI7IH1cbi51ay1pY29uLW1vdG9yY3ljbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMWNcIjsgfVxuLnVrLWljb24tc3RyZWV0LXZpZXc6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMWRcIjsgfVxuLnVrLWljb24taGVhcnRiZWF0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjFlXCI7IH1cbi51ay1pY29uLXZlbnVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjIxXCI7IH1cbi51ay1pY29uLW1hcnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjJcIjsgfVxuLnVrLWljb24tbWVyY3VyeTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyM1wiOyB9XG4udWstaWNvbi10cmFuc2dlbmRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyNFwiOyB9XG4udWstaWNvbi10cmFuc2dlbmRlci1hbHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjVcIjsgfVxuLnVrLWljb24tdmVudXMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjI2XCI7IH1cbi51ay1pY29uLW1hcnMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjI3XCI7IH1cbi51ay1pY29uLXZlbnVzLW1hcnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjhcIjsgfVxuLnVrLWljb24tbWFycy1zdHJva2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMjlcIjsgfVxuLnVrLWljb24tbWFycy1zdHJva2UtdjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyYVwiOyB9XG4udWstaWNvbi1tYXJzLXN0cm9rZS1oOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjJiXCI7IH1cbi51ay1pY29uLW5ldXRlcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIyY1wiOyB9XG4udWstaWNvbi1mYWNlYm9vay1vZmZpY2lhbDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzMFwiOyB9XG4udWstaWNvbi1waW50ZXJlc3QtcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzMVwiOyB9XG4udWstaWNvbi13aGF0c2FwcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjIzMlwiOyB9XG4udWstaWNvbi1zZXJ2ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMzNcIjsgfVxuLnVrLWljb24tdXNlci1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjM0XCI7IH1cbi51ay1pY29uLXVzZXItdGltZXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyMzVcIjsgfVxuLnVrLWljb24taG90ZWw6YmVmb3JlLFxuLnVrLWljb24tYmVkOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjM2XCI7IH1cbi51ay1pY29uLXZpYWNvaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYyMzdcIjsgfVxuLnVrLWljb24tdHJhaW46YmVmb3JlIHsgY29udGVudDogXCJcXGYyMzhcIjsgfVxuLnVrLWljb24tc3Vid2F5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjM5XCI7IH1cbi51ay1pY29uLW1lZGl1bS1sb2dvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjNhXCI7IH1cbi51ay1pY29uLTUwMHB4OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjZlXCI7IH1cbi51ay1pY29uLWFtYXpvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3MFwiOyB9XG4udWstaWNvbi1iYWxhbmNlLXNjYWxlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjRlXCI7IH1cbi51ay1pY29uLWJhdHRlcnktZW1wdHk6YmVmb3JlLFxuLnVrLWljb24tYmF0dGVyeS0wOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQ0XCI7IH1cbi51ay1pY29uLWJhdHRlcnktcXVhcnRlcjpiZWZvcmUsXG4udWstaWNvbi1iYXR0ZXJ5LTE6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDNcIjsgfVxuLnVrLWljb24tYmF0dGVyeS1oYWxmOmJlZm9yZSxcbi51ay1pY29uLWJhdHRlcnktMjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0MlwiOyB9XG4udWstaWNvbi1iYXR0ZXJ5LXRocmVlLXF1YXJ0ZXJzOmJlZm9yZSxcbi51ay1pY29uLWJhdHRlcnktMzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0MVwiOyB9XG4udWstaWNvbi1iYXR0ZXJ5LWZ1bGw6YmVmb3JlLFxuLnVrLWljb24tYmF0dGVyeS00OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQwXCI7IH1cbi51ay1pY29uLWJsYWNrLXRpZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3ZVwiOyB9XG4udWstaWNvbi1jYWxlbmRhci1jaGVjay1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjc0XCI7IH1cbi51ay1pY29uLWNhbGVuZGFyLW1pbnVzLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyNzJcIjsgfVxuLnVrLWljb24tY2FsZW5kYXItcGx1cy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjcxXCI7IH1cbi51ay1pY29uLWNhbGVuZGFyLXRpbWVzLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyNzNcIjsgfVxuLnVrLWljb24tY2MtZGluZXJzLWNsdWI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNGNcIjsgfVxuLnVrLWljb24tY2MtamNiOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjRiXCI7IH1cbi51ay1pY29uLWNocm9tZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2OFwiOyB9XG4udWstaWNvbi1jbG9uZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0ZFwiOyB9XG4udWstaWNvbi1jb21tZW50aW5nOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjdhXCI7IH1cbi51ay1pY29uLWNvbW1lbnRpbmctbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3YlwiOyB9XG4udWstaWNvbi1jb250YW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyNmRcIjsgfVxuLnVrLWljb24tY3JlYXRpdmUtY29tbW9uczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1ZVwiOyB9XG4udWstaWNvbi1leHBlZGl0ZWRzc2w6YmVmb3JlIHsgY29udGVudDogXCJcXGYyM2VcIjsgfVxuLnVrLWljb24tZmlyZWZveDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2OVwiOyB9XG4udWstaWNvbi1mb250aWNvbnM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyODBcIjsgfVxuLnVrLWljb24tZ2V0LXBvY2tldDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2NVwiOyB9XG4udWstaWNvbi1nZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2MFwiOyB9XG4udWstaWNvbi1nZy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNjFcIjsgfVxuLnVrLWljb24taGFuZC1saXphcmQtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1OFwiOyB9XG4udWstaWNvbi1oYW5kLXN0b3AtbzpiZWZvcmUsXG4udWstaWNvbi1oYW5kLXBhcGVyLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyNTZcIjsgfVxuLnVrLWljb24taGFuZC1wZWFjZS1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjViXCI7IH1cbi51ay1pY29uLWhhbmQtcG9pbnRlci1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjVhXCI7IH1cbi51ay1pY29uLWhhbmQtZ3JhYi1vOmJlZm9yZSxcbi51ay1pY29uLWhhbmQtcm9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjU1XCI7IH1cbi51ay1pY29uLWhhbmQtc2Npc3NvcnMtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1N1wiOyB9XG4udWstaWNvbi1oYW5kLXNwb2NrLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyNTlcIjsgfVxuLnVrLWljb24taG91cmdsYXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjU0XCI7IH1cbi51ay1pY29uLWhvdXJnbGFzcy1vOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjUwXCI7IH1cbi51ay1pY29uLWhvdXJnbGFzcy0xOmJlZm9yZSxcbi51ay1pY29uLWhvdXJnbGFzcy1zdGFydDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1MVwiOyB9XG4udWstaWNvbi1ob3VyZ2xhc3MtMjpiZWZvcmUsXG4udWstaWNvbi1ob3VyZ2xhc3MtaGFsZjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1MlwiOyB9XG4udWstaWNvbi1ob3VyZ2xhc3MtMzpiZWZvcmUsXG4udWstaWNvbi1ob3VyZ2xhc3MtZW5kOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjUzXCI7IH1cbi51ay1pY29uLWhvdXp6OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjdjXCI7IH1cbi51ay1pY29uLWktY3Vyc29yOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQ2XCI7IH1cbi51ay1pY29uLWluZHVzdHJ5OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjc1XCI7IH1cbi51ay1pY29uLWludGVybmV0LWV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjZiXCI7IH1cbi51ay1pY29uLW1hcDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3OVwiOyB9XG4udWstaWNvbi1tYXAtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3OFwiOyB9XG4udWstaWNvbi1tYXAtcGluOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjc2XCI7IH1cbi51ay1pY29uLW1hcC1zaWduczpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3N1wiOyB9XG4udWstaWNvbi1tb3VzZS1wb2ludGVyOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjQ1XCI7IH1cbi51ay1pY29uLW9iamVjdC1ncm91cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0N1wiOyB9XG4udWstaWNvbi1vYmplY3QtdW5ncm91cDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0OFwiOyB9XG4udWstaWNvbi1vZG5va2xhc3NuaWtpOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjYzXCI7IH1cbi51ay1pY29uLW9kbm9rbGFzc25pa2ktc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjY0XCI7IH1cbi51ay1pY29uLW9wZW5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjNkXCI7IH1cbi51ay1pY29uLW9wZXJhOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjZhXCI7IH1cbi51ay1pY29uLW9wdGluLW1vbnN0ZXI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyM2NcIjsgfVxuLnVrLWljb24tcmVnaXN0ZXJlZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1ZFwiOyB9XG4udWstaWNvbi1zYWZhcmk6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNjdcIjsgfVxuLnVrLWljb24tc3RpY2t5LW5vdGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyNDlcIjsgfVxuLnVrLWljb24tc3RpY2t5LW5vdGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI0YVwiOyB9XG4udWstaWNvbi10djpiZWZvcmUsXG4udWstaWNvbi10ZWxldmlzaW9uOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjZjXCI7IH1cbi51ay1pY29uLXRyYWRlbWFyazpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI1Y1wiOyB9XG4udWstaWNvbi10cmlwYWR2aXNvcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2MlwiOyB9XG4udWstaWNvbi12aW1lbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI3ZFwiOyB9XG4udWstaWNvbi13aWtpcGVkaWEtdzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI2NlwiOyB9XG4udWstaWNvbi15YzpiZWZvcmUsXG4udWstaWNvbi15LWNvbWJpbmF0b3I6YmVmb3JlIHsgY29udGVudDogXCJcXGYyM2JcIjsgfVxuLnVrLWljb24teWMtc3F1YXJlOmJlZm9yZSxcbi51ay1pY29uLXktY29tYmluYXRvci1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYxZDRcIjsgfVxuLy8gYWRkZWQgZmEgNC41XG4udWstaWNvbi1ibHVldG9vdGg6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOTNcIjsgfVxuLnVrLWljb24tYmx1ZXRvb3RoLWI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOTRcIjsgfVxuLnVrLWljb24tY29kaWVwaWU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyODRcIjsgfVxuLnVrLWljb24tY3JlZGl0LWNhcmQtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjgzXCI7IH1cbi51ay1pY29uLWVkZ2U6YmVmb3JlIHsgY29udGVudDogXCJcXGYyODJcIjsgfVxuLnVrLWljb24tZm9ydC1hd2Vzb21lOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjg2XCI7IH1cbi51ay1pY29uLWhhc2h0YWc6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOTJcIjsgfVxuLnVrLWljb24tbWl4Y2xvdWQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyODlcIjsgfVxuLnVrLWljb24tbW9keDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4NVwiOyB9XG4udWstaWNvbi1wYXVzZS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOGJcIjsgfVxuLnVrLWljb24tcGF1c2UtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyOGNcIjsgfVxuLnVrLWljb24tcGVyY2VudDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5NVwiOyB9XG4udWstaWNvbi1wcm9kdWN0LWh1bnQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyODhcIjsgfVxuLnVrLWljb24tcmVkZGl0LWFsaWVuOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjgxXCI7IH1cbi51ay1pY29uLXNjcmliZDpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI4YVwiOyB9XG4udWstaWNvbi1zaG9wcGluZy1iYWc6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOTBcIjsgfVxuLnVrLWljb24tc2hvcHBpbmctYmFza2V0OmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjkxXCI7IH1cbi51ay1pY29uLXN0b3AtY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjhkXCI7IH1cbi51ay1pY29uLXN0b3AtY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogXCJcXGYyOGVcIjsgfVxuLnVrLWljb24tdXNiOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjg3XCI7IH1cbi8vIGFkZGVkIGZhIDQuNlxuLnVrLWljb24tYW1lcmljYW4tc2lnbi1sYW5ndWFnZS1pbnRlcnByZXRpbmc6YmVmb3JlLFxuLnVrLWljb24tYXNsLWludGVycHJldGluZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhM1wiOyB9XG4udWstaWNvbi1hc3Npc3RpdmUtbGlzdGVuaW5nLXN5c3RlbXM6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTJcIjsgfVxuLnVrLWljb24tYXVkaW8tZGVzY3JpcHRpb246YmVmb3JlIHsgY29udGVudDogXCJcXGYyOWVcIjsgfVxuLnVrLWljb24tYmxpbmQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOWRcIjsgfVxuLnVrLWljb24tYnJhaWxsZTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhMVwiOyB9XG4udWstaWNvbi1kZWFmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmE0XCI7IH1cbi51ay1pY29uLWRlYWZuZXNzOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmE0XCI7IH1cbi51ay1pY29uLWVudmlyYTpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5OVwiOyB9XG4udWstaWNvbi1naXRsYWI6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOTZcIjsgfVxuLnVrLWljb24tZ2xpZGU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTVcIjsgfVxuLnVrLWljb24tZ2xpZGUtZzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhNlwiOyB9XG4udWstaWNvbi1oYXJkLW9mLWhlYXJpbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTRcIjsgfVxuLnVrLWljb24tbG93LXZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjJhOFwiOyB9XG4udWstaWNvbi1xdWVzdGlvbi1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5Y1wiOyB9XG4udWstaWNvbi1zaWduLWxhbmd1YWdlOmJlZm9yZSxcbi51ay1pY29uLXNpZ25pbmc6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTdcIjsgfVxuLnVrLWljb24tc25hcGNoYXQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYWJcIjsgfVxuLnVrLWljb24tc25hcGNoYXQtZ2hvc3Q6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYWNcIjsgfVxuLnVrLWljb24tc25hcGNoYXQtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmFkXCI7IH1cbi51ay1pY29uLXVuaXZlcnNhbC1hY2Nlc3M6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOWFcIjsgfVxuLnVrLWljb24tdmlhZGVvOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMmE5XCI7IH1cbi51ay1pY29uLXZpYWRlby1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYWFcIjsgfVxuLnVrLWljb24tdm9sdW1lLWNvbnRyb2wtcGhvbmU6YmVmb3JlIHsgY29udGVudDogXCJcXGYyYTBcIjsgfVxuLnVrLWljb24td2hlZWxjaGFpci1hbHQ6YmVmb3JlIHsgY29udGVudDogXCJcXGYyOWJcIjsgfVxuLnVrLWljb24td3BiZWdpbm5lcjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjI5N1wiOyB9XG4udWstaWNvbi13cGZvcm1zOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxmMjk4XCI7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2staWNvbi1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWljb24taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1pY29uLWhvdmVyLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2staWNvbi1idXR0b24oKXt9XG4vLyBAbWl4aW4gaG9vay1pY29uLWJ1dHRvbi1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWljb24tYnV0dG9uLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLWljb24tbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQ2xvc2Vcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgZm9yIGEgY2xvc2UgYnV0dG9uXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstY2xvc2VgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstY2xvc2UtYWx0YFxuLy9cbi8vIFVzZXM6ICAgICAgICAgICAgSWNvbjogRm9udEF3ZXNvbWVcbi8vXG4vLyBVc2VkIGJ5OiAgICAgICAgIEFsZXJ0XG4vLyAgICAgICAgICAgICAgICAgIE1vZGFsXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGNsb3NlLXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG5cbiRjbG9zZS1hbHQtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAycHggIWRlZmF1bHQ7XG4kY2xvc2UtYWx0LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2VlZSAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQ2xvc2VcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlcyBpbm5lciBwYWRkaW5nIGFuZCBib3JkZXIgaW4gRmlyZWZveCA0Ky5cbiAqL1xuXG4udWstY2xvc2U6Oi1tb3otZm9jdXMtaW5uZXIge1xuICAgIGJvcmRlcjogMDtcbiAgICBwYWRkaW5nOiAwO1xufVxuXG4vKlxuICogMS4gQ29ycmVjdCBpbmFiaWxpdHkgdG8gc3R5bGUgY2xpY2thYmxlIGBpbnB1dGAgdHlwZXMgaW4gaU9TLlxuICogMi4gUmVtb3ZlIG1hcmdpbnMgaW4gQ2hyb21lLCBTYWZhcmkgYW5kIE9wZXJhLlxuICogMy4gUmVtb3ZlIGJvcmRlcnMgZm9yIGBidXR0b25gLlxuICogNC4gQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4gKiA1LiBDb3JyZWN0IGBmb250YCBwcm9wZXJ0aWVzIGFuZCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgZm9yIGBidXR0b25gLlxuICogNi4gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYHRleHQtdHJhbnNmb3JtYCBpbmhlcml0YW5jZSB3aGljaCBpcyBvbmx5IGluaGVyaXQgaW4gRmlyZWZveCBhbmQgSUVcbiAqIDcuIFJlbW92ZSBkZWZhdWx0IGBidXR0b25gIHBhZGRpbmcgYW5kIGJhY2tncm91bmQgY29sb3JcbiAqIDguIFN0eWxlXG4gKi9cblxuLnVrLWNsb3NlIHtcbiAgICAvKiAxICovXG4gICAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICAgIC8qIDIgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgLyogMyAqL1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICAvKiA0ICovXG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gICAgLyogNSAqL1xuICAgIGZvbnQ6IGluaGVyaXQ7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gICAgLyogNiAqL1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIC8qIDcuICovXG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAvKiA4ICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICAgIHdpZHRoOiAkY2xvc2Utc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGNsb3NlLXNpemU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgb3BhY2l0eTogMC4zO1xuICAgIEBpbmNsdWRlIGhvb2stY2xvc2UoKTtcbn1cblxuLyogSWNvbiAqL1xuLnVrLWNsb3NlOmFmdGVyIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBjb250ZW50OiBcIlxcZjAwZFwiO1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbn1cblxuLypcbiAqIEhvdmVyXG4gKiAxLiBBcHBseSBob3ZlciBzdHlsZSBhbHNvIHRvIGZvY3VzIHN0YXRlXG4gKiAyLiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICogMy4gUmVxdWlyZWQgZm9yIGBhYCBlbGVtZW50c1xuICovXG5cbi51ay1jbG9zZTpob3Zlcixcbi51ay1jbG9zZTpmb2N1cyB7IC8vIDFcbiAgICBvcGFjaXR5OiAwLjU7XG4gICAgLyogMiAqL1xuICAgIG91dGxpbmU6IG5vbmU7XG4gICAgLyogMyAqL1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG59XG5cblxuLyogTW9kaWZpZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstY2xvc2UtYWx0IHtcbiAgICBwYWRkaW5nOiAkY2xvc2UtYWx0LXBhZGRpbmc7XG4gICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgIGJhY2tncm91bmQ6ICRjbG9zZS1hbHQtYmFja2dyb3VuZDtcbiAgICBvcGFjaXR5OiAxO1xuICAgIEBpbmNsdWRlIGhvb2stY2xvc2UtYWx0KCk7XG59XG5cbi8qIEhvdmVyICovXG4udWstY2xvc2UtYWx0OmhvdmVyLFxuLnVrLWNsb3NlLWFsdDpmb2N1cyB7IG9wYWNpdHk6IDE7IH1cblxuLyogSWNvbiAqL1xuLnVrLWNsb3NlLWFsdDphZnRlciB7IG9wYWNpdHk6IDAuNTsgfVxuXG4udWstY2xvc2UtYWx0OmhvdmVyOmFmdGVyLFxuLnVrLWNsb3NlLWFsdDpmb2N1czphZnRlciB7IG9wYWNpdHk6IDAuODsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1jbG9zZS1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWNsb3NlKCl7fVxuLy8gQG1peGluIGhvb2stY2xvc2UtYWx0KCl7fVxuLy8gQG1peGluIGhvb2stY2xvc2UtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIEJhZGdlXG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBiYWRnZXNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1iYWRnZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1iYWRnZS1ub3RpZmljYXRpb25gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1iYWRnZS1zdWNjZXNzYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYmFkZ2UtZGFuZ2VyYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRiYWRnZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjMDBhOGU2ICFkZWZhdWx0O1xuJGJhZGdlLXBhZGRpbmctaG9yaXpvbnRhbDogICAgICAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRiYWRnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMHB4ICFkZWZhdWx0O1xuJGJhZGdlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTRweCAhZGVmYXVsdDtcbiRiYWRnZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJhZGdlLXRleHQtdHJhbnNmb3JtOiAgICAgICAgICAgICAgICAgICAgICAgICAgIG5vbmUgIWRlZmF1bHQ7XG4kYmFkZ2UtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGJhZGdlLW5vdGlmaWNhdGlvbi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgIDEycHggIWRlZmF1bHQ7XG4kYmFkZ2Utbm90aWZpY2F0aW9uLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcblxuJGJhZGdlLXN1Y2Nlc3MtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICM4Y2MxNGMgIWRlZmF1bHQ7XG4kYmFkZ2Utd2FybmluZy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgI2ZhYTczMiAhZGVmYXVsdDtcbiRiYWRnZS1kYW5nZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAjZGEzMTRiICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBCYWRnZVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1iYWRnZSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDAgJGJhZGdlLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBiYWNrZ3JvdW5kOiAkYmFkZ2UtYmFja2dyb3VuZDtcbiAgICBmb250LXNpemU6ICRiYWRnZS1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6ICRiYWRnZS1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogJGJhZGdlLWxpbmUtaGVpZ2h0O1xuICAgIGNvbG9yOiAkYmFkZ2UtY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgdGV4dC10cmFuc2Zvcm06ICRiYWRnZS10ZXh0LXRyYW5zZm9ybTtcbiAgICBAaW5jbHVkZSBob29rLWJhZGdlKCk7XG59XG5cbi8qXG4gKiBLZWVwIGNvbG9yIHdoZW4gYmFkZ2UgaXMgYSBsaW5rXG4gKi9cblxuYS51ay1iYWRnZTpob3ZlciB7IGNvbG9yOiAkYmFkZ2UtaG92ZXItY29sb3I7IH1cblxuXG4vKiBNb2RpZmllcjogYHVrLWJhZGdlLW5vdGlmaWNhdGlvbmA7XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWJhZGdlLW5vdGlmaWNhdGlvbiB7XG4gICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICBtaW4td2lkdGg6ICRiYWRnZS1ub3RpZmljYXRpb24tbGluZS1oZWlnaHQ7XG4gICAgYm9yZGVyLXJhZGl1czogNTAwcHg7XG4gICAgZm9udC1zaXplOiAkYmFkZ2Utbm90aWZpY2F0aW9uLWZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGJhZGdlLW5vdGlmaWNhdGlvbi1saW5lLWhlaWdodDtcbn1cblxuXG4vKiBDb2xvciBtb2RpZmllclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBNb2RpZmllcjogYHVrLWJhZGdlLXN1Y2Nlc3NgXG4gKi9cblxuLnVrLWJhZGdlLXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1zdWNjZXNzLWJhY2tncm91bmQ7XG4gICAgQGluY2x1ZGUgaG9vay1iYWRnZS1zdWNjZXNzKCk7XG59XG5cbi8qXG4gKiBNb2RpZmllcjogYHVrLWJhZGdlLXdhcm5pbmdgXG4gKi9cblxuLnVrLWJhZGdlLXdhcm5pbmcge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS13YXJuaW5nLWJhY2tncm91bmQ7XG4gICAgQGluY2x1ZGUgaG9vay1iYWRnZS13YXJuaW5nKCk7XG59XG5cbi8qXG4gKiBNb2RpZmllcjogYHVrLWJhZGdlLWRhbmdlcmBcbiAqL1xuXG4udWstYmFkZ2UtZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFkZ2UtZGFuZ2VyLWJhY2tncm91bmQ7XG4gICAgQGluY2x1ZGUgaG9vay1iYWRnZS1kYW5nZXIoKTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stYmFkZ2UtbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay1iYWRnZSgpe31cbi8vIEBtaXhpbiBob29rLWJhZGdlLXN1Y2Nlc3MoKXt9XG4vLyBAbWl4aW4gaG9vay1iYWRnZS13YXJuaW5nKCl7fVxuLy8gQG1peGluIGhvb2stYmFkZ2UtZGFuZ2VyKCl7fVxuLy8gQG1peGluIGhvb2stYmFkZ2UtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIEFsZXJ0XG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBhbGVydCBtZXNzYWdlc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWFsZXJ0YFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLWFsZXJ0LWNsb3NlYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWFsZXJ0LXN1Y2Nlc3NgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbGVydC13YXJuaW5nYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYWxlcnQtZGFuZ2VyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYWxlcnQtbGFyZ2VgXG4vL1xuLy8gVXNlczogICAgICAgICAgICBDbG9zZTogYHVrLWNsb3NlYFxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLWFsZXJ0IC0tPlxuLy8gPGRpdiBjbGFzcz1cInVrLWFsZXJ0XCIgZGF0YS11ay1hbGVydD5cbi8vICAgICA8YSBocmVmPVwiI1wiIGNsYXNzPVwidWstYWxlcnQtY2xvc2UgdWstY2xvc2VcIj48L2E+XG4vLyAgICAgPHA+PC9wPlxuLy8gPC9kaXY+XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJGFsZXJ0LW1hcmdpbi12ZXJ0aWNhbDogICAgICAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kYWxlcnQtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRhbGVydC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZWJmN2ZkICFkZWZhdWx0O1xuJGFsZXJ0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICMyZDcwOTEgIWRlZmF1bHQ7XG5cbiRhbGVydC1zdWNjZXNzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAjZjJmYWUzICFkZWZhdWx0O1xuJGFsZXJ0LXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICM2NTlmMTMgIWRlZmF1bHQ7XG5cbiRhbGVydC13YXJuaW5nLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAjZmZmY2ViICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICNlMjgzMjcgIWRlZmF1bHQ7XG5cbiRhbGVydC1kYW5nZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgICAjZmZmMWYwICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNkODUwMzAgIWRlZmF1bHQ7XG5cbiRhbGVydC1sYXJnZS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBBbGVydFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1hbGVydCB7XG4gICAgbWFyZ2luLWJvdHRvbTogJGFsZXJ0LW1hcmdpbi12ZXJ0aWNhbDtcbiAgICBwYWRkaW5nOiAkYWxlcnQtcGFkZGluZztcbiAgICBiYWNrZ3JvdW5kOiAkYWxlcnQtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGFsZXJ0LWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stYWxlcnQoKTtcbn1cblxuLypcbiAqIEFkZCBtYXJnaW4gaWYgYWRqYWNlbnQgZWxlbWVudFxuICovXG5cbiogKyAudWstYWxlcnQgeyBtYXJnaW4tdG9wOiAkYWxlcnQtbWFyZ2luLXZlcnRpY2FsOyB9XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstYWxlcnQgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLypcbiAqIEtlZXAgY29sb3IgZm9yIGhlYWRpbmdzIGlmIHRoZSBkZWZhdWx0IGhlYWRpbmcgY29sb3IgaXMgY2hhbmdlZFxuICovXG5cbi51ay1hbGVydCBoMSxcbi51ay1hbGVydCBoMixcbi51ay1hbGVydCBoMyxcbi51ay1hbGVydCBoNCxcbi51ay1hbGVydCBoNSxcbi51ay1hbGVydCBoNiB7IGNvbG9yOiBpbmhlcml0OyB9XG5cblxuLyogQ2xvc2UgaW4gYWxlcnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYWxlcnQgPiAudWstY2xvc2U6Zmlyc3QtY2hpbGQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSBhZGphY2VudCBlbGVtZW50XG4gKi9cblxuLnVrLWFsZXJ0ID4gLnVrLWNsb3NlOmZpcnN0LWNoaWxkICsgKiB7IG1hcmdpbi10b3A6IDA7IH1cblxuXG4vKiBNb2RpZmllcjogYHVrLWFsZXJ0LXN1Y2Nlc3NgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFsZXJ0LXN1Y2Nlc3Mge1xuICAgIGJhY2tncm91bmQ6ICRhbGVydC1zdWNjZXNzLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRhbGVydC1zdWNjZXNzLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stYWxlcnQtc3VjY2VzcygpO1xufVxuXG5cbi8qIE1vZGlmaWVyOiBgdWstYWxlcnQtd2FybmluZ2BcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYWxlcnQtd2FybmluZyB7XG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LXdhcm5pbmctYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJGFsZXJ0LXdhcm5pbmctY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1hbGVydC13YXJuaW5nKCk7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay1hbGVydC1kYW5nZXJgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFsZXJ0LWRhbmdlciB7XG4gICAgYmFja2dyb3VuZDogJGFsZXJ0LWRhbmdlci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkYWxlcnQtZGFuZ2VyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stYWxlcnQtZGFuZ2VyKCk7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay1hbGVydC1sYXJnZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYWxlcnQtbGFyZ2UgeyBwYWRkaW5nOiAkYWxlcnQtbGFyZ2UtcGFkZGluZzsgfVxuXG4udWstYWxlcnQtbGFyZ2UgPiAudWstY2xvc2U6Zmlyc3QtY2hpbGQgeyBtYXJnaW46IC0xMHB4IC0xMHB4IDAgMDsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1hbGVydC1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWFsZXJ0KCl7fVxuLy8gQG1peGluIGhvb2stYWxlcnQtc3VjY2Vzcygpe31cbi8vIEBtaXhpbiBob29rLWFsZXJ0LXdhcm5pbmcoKXt9XG4vLyBAbWl4aW4gaG9vay1hbGVydC1kYW5nZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1hbGVydC1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgVGh1bWJuYWlsXG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBpbWFnZSB0aHVtYm5haWxzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdGh1bWJuYWlsYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLXRodW1ibmFpbC1jYXB0aW9uYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLXRodW1ibmFpbC1taW5pYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGh1bWJuYWlsLXNtYWxsYFxuLy8gICAgICAgICAgICAgICAgICBgdWstdGh1bWJuYWlsLW1lZGl1bWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRodW1ibmFpbC1sYXJnZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXRodW1ibmFpbC1leHBhbmRgXG4vL1xuLy8gTWFya3VwOlxuLy9cbi8vIDwhLS0gdWstdGh1bWJuYWlsIC0tPlxuLy8gPGZpZ3VyZSBjbGFzcz1cInVrLXRodW1ibmFpbFwiPlxuLy8gICAgIDxpbWcgc3JjPVwiXCIgYWx0PVwiXCI+XG4vLyAgICAgPGZpZ2NhcHRpb24gY2xhc3M9XCJ1ay10aHVtYm5haWwtY2FwdGlvblwiPjwvZmlnY2FwdGlvbj5cbi8vIDwvZmlndXJlPlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0cHggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiR0aHVtYm5haWwtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiR0aHVtYm5haWwtaG92ZXItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAjYWFhICFkZWZhdWx0O1xuJHRodW1ibmFpbC1ob3Zlci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAkdGh1bWJuYWlsLXBhZGRpbmcgIWRlZmF1bHQ7XG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcblxuJHRodW1ibmFpbC1taW5pLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDE1MHB4ICFkZWZhdWx0O1xuJHRodW1ibmFpbC1zbWFsbC13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJHRodW1ibmFpbC1tZWRpdW0td2lkdGg6ICAgICAgICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuJHRodW1ibmFpbC1sYXJnZS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgIDQwMHB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUaHVtYm5haWxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ29udGFpbmVyIHdpZHRoIGZpdHMgaXRzIGNvbnRlbnRcbiAqIDIuIFJlc3BvbnNpdmUgYmVoYXZpb3JcbiAqIDMuIENvcnJlY3RzIGBtYXgtd2lkdGhgIGJlaGF2aW9yIHNlZFxuICogNC4gUmVxdWlyZWQgZm9yIGBmaWd1cmVgIGVsZW1lbnRcbiAqIDUuIFN0eWxlXG4gKi9cblxuLnVrLXRodW1ibmFpbCB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAvKiAyICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIC8qIDMgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDMgKi9cbiAgICBtYXJnaW46IDA7XG4gICAgLyogNCAqL1xuICAgIHBhZGRpbmc6ICR0aHVtYm5haWwtcGFkZGluZztcbiAgICBib3JkZXI6ICR0aHVtYm5haWwtYm9yZGVyLXdpZHRoIHNvbGlkICR0aHVtYm5haWwtYm9yZGVyO1xuICAgIGJhY2tncm91bmQ6ICR0aHVtYm5haWwtYmFja2dyb3VuZDtcbiAgICBAaW5jbHVkZSBob29rLXRodW1ibmFpbCgpO1xufVxuXG4vKlxuICogSG92ZXIgc3RhdGUgZm9yIGBhYCBlbGVtZW50c1xuICogMS4gQXBwbHkgaG92ZXIgc3R5bGUgYWxzbyB0byBmb2N1cyBzdGF0ZVxuICogMi4gTmVlZGVkIGZvciBjYXB0aW9uXG4gKiAzLiBSZW1vdmUgZGVmYXVsdCBmb2N1cyBzdHlsZVxuICovXG5cbmEudWstdGh1bWJuYWlsOmhvdmVyLFxuYS51ay10aHVtYm5haWw6Zm9jdXMgeyAvLyAxXG4gICAgYm9yZGVyLWNvbG9yOiAkdGh1bWJuYWlsLWhvdmVyLWJvcmRlcjtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGh1bWJuYWlsLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgLyogMiAqL1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAvKiAzICovXG4gICAgb3V0bGluZTogbm9uZTtcbiAgICBAaW5jbHVkZSBob29rLXRodW1ibmFpbC1ob3ZlcigpO1xufVxuXG5cbi8qIENhcHRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGh1bWJuYWlsLWNhcHRpb24ge1xuICAgIHBhZGRpbmctdG9wOiAkdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgY29sb3I6ICR0aHVtYm5haWwtY2FwdGlvbi1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLXRodW1ibmFpbC1jYXB0aW9uKCk7XG59XG5cblxuLyogU2l6ZXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGh1bWJuYWlsLW1pbmkgeyB3aWR0aDogJHRodW1ibmFpbC1taW5pLXdpZHRoOyB9XG4udWstdGh1bWJuYWlsLXNtYWxsIHsgd2lkdGg6ICR0aHVtYm5haWwtc21hbGwtd2lkdGg7IH1cbi51ay10aHVtYm5haWwtbWVkaXVtIHsgd2lkdGg6ICR0aHVtYm5haWwtbWVkaXVtLXdpZHRoOyB9XG4udWstdGh1bWJuYWlsLWxhcmdlIHsgd2lkdGg6ICR0aHVtYm5haWwtbGFyZ2Utd2lkdGg7IH1cblxuLnVrLXRodW1ibmFpbC1leHBhbmQsXG4udWstdGh1bWJuYWlsLWV4cGFuZCA+IGltZyB7IHdpZHRoOiAxMDAlOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLXRodW1ibmFpbC1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLXRodW1ibmFpbCgpe31cbi8vIEBtaXhpbiBob29rLXRodW1ibmFpbC1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLXRodW1ibmFpbC1jYXB0aW9uKCl7fVxuLy8gQG1peGluIGhvb2stdGh1bWJuYWlsLW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBPdmVybGF5XG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBpbWFnZSBvdmVybGF5c1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLW92ZXJsYXlgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstb3ZlcmxheS1wYW5lbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW92ZXJsYXktaG92ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVybGF5LWFjdGl2ZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW92ZXJsYXktaWNvbmBcbi8vXG4vLyBNb2RpZmllcjogICAgICAgIGB1ay1vdmVybGF5LWJhY2tncm91bmRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVybGF5LWltYWdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3ZlcmxheS10b3BgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVybGF5LWJvdHRvbWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW92ZXJsYXktbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW92ZXJsYXktcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVybGF5LWZhZGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVybGF5LXNjYWxlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3ZlcmxheS1zcGluYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3ZlcmxheS1ncmF5c2NhbGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVybGF5LXNsaWRlLXRvcGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW92ZXJsYXktc2xpZGUtYm90dG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3ZlcmxheS1zbGlkZS1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3ZlcmxheS1zbGlkZS1yaWdodGBcbi8vXG4vLyBERVBSRUNBVEVEOiAgICAgIGB1ay1vdmVybGF5LWFyZWFgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1vdmVybGF5LWFyZWEtY29udGVudGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW92ZXJsYXktY2FwdGlvbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW92ZXJsYXktdG9nZ2xlYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLWhvdmVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYWN0aXZlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaWdub3JlYFxuLy9cbi8vIFVzZXM6ICAgICAgICAgICAgSWNvbjogYFtjbGFzcyo9J3VrLWljb24tJ11gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ib3JkZXItY2lyY2xlYFxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLW92ZXJsYXkgLS0+XG4vLyA8ZmlndXJlIGNsYXNzPVwidWstb3ZlcmxheVwiIGhyZWY9XCJcIj5cbi8vICAgICA8aW1nIHNyYz1cIlwiIGFsdD1cIlwiPlxuLy8gICAgIDxmaWdjYXB0aW9uIGNsYXNzPVwidWstb3ZlcmxheS1wYW5lbFwiPjwvZmlnY2FwdGlvbj5cbi8vIDwvZmlndXJlPlxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRvdmVybGF5LXBhbmVsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAyMHB4ICFkZWZhdWx0O1xuJG92ZXJsYXktcGFuZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRvdmVybGF5LXBhbmVsLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLDAuNSkgIWRlZmF1bHQ7XG5cbiRvdmVybGF5LWljb246ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIlxcZjAwMlwiICFkZWZhdWx0O1xuJG92ZXJsYXktaWNvbi1zaXplOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kb3ZlcmxheS1pY29uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJG92ZXJsYXktZmFkZS1pbi1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG4kb3ZlcmxheS1mYWRlLW91dC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgICAgMC43ICFkZWZhdWx0O1xuXG4kb3ZlcmxheS1zY2FsZS1pbi1zY2FsZTogICAgICAgICAgICAgICAgICAgICAgICAgMS4xICFkZWZhdWx0O1xuJG92ZXJsYXktc2NhbGUtb3V0LXNjYWxlOiAgICAgICAgICAgICAgICAgICAgICAgIDEgIWRlZmF1bHQ7XG5cbiRvdmVybGF5LXNwaW4taW4tc2NhbGU6ICAgICAgICAgICAgICAgICAgICAgICAgICAxLjEgIWRlZmF1bHQ7XG4kb3ZlcmxheS1zcGluLW91dC1zY2FsZTogICAgICAgICAgICAgICAgICAgICAgICAgMSAhZGVmYXVsdDtcbiRvdmVybGF5LXNwaW4taW4tcm90YXRlOiAgICAgICAgICAgICAgICAgICAgICAgICAzZGVnICFkZWZhdWx0O1xuJG92ZXJsYXktc3Bpbi1vdXQtcm90YXRlOiAgICAgICAgICAgICAgICAgICAgICAgIDBkZWcgIWRlZmF1bHQ7XG5cbiRvdmVybGF5LXBhbmVsLWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJG92ZXJsYXktcGFuZWwtbGluay10ZXh0LWRlY29yYXRpb246ICAgICAgICAgICAgIHVuZGVybGluZSAhZGVmYXVsdDtcblxuLy8gREVQUkVDQVRFRFxuJG92ZXJsYXktYXJlYS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsMC4zKSAhZGVmYXVsdDtcblxuJG92ZXJsYXktYXJlYS1pY29uOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiXFxmMDAyXCIgIWRlZmF1bHQ7XG4kb3ZlcmxheS1hcmVhLWljb24tc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgNTBweCAhZGVmYXVsdDtcbiRvdmVybGF5LWFyZWEtaWNvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG4kb3ZlcmxheS1hcmVhLWNvbnRlbnQtZm9udC1zaXplOiAgICAgICAgICAgICAgICAgMXJlbSAhZGVmYXVsdDtcbiRvdmVybGF5LWFyZWEtY29udGVudC1wYWRkaW5nLWhvcml6b250YWw6ICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJG92ZXJsYXktYXJlYS1jb250ZW50LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kb3ZlcmxheS1hcmVhLWNvbnRlbnQtbGluay1jb2xvcjogICAgICAgICAgICAgICAgaW5oZXJpdCAhZGVmYXVsdDtcblxuJG92ZXJsYXktY2FwdGlvbi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgIHJnYmEoMCwwLDAsMC41KSAhZGVmYXVsdDtcbiRvdmVybGF5LWNhcHRpb24tcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJG92ZXJsYXktY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE92ZXJsYXlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ29udGFpbmVyIHdpZHRoIGZpdHMgaXRzIGNvbnRlbnRcbiAqIDIuIENyZWF0ZSBwb3NpdGlvbiBjb250ZXh0XG4gKiAzLiBTZXQgbWF4LXdpZHRoIGZvciByZXNwb25zaXZlIGltYWdlcyB0byBwcmV2ZW50IGBpbmxpbmUtYmxvY2tgIGNvbnNlcXVlbmNlc1xuICogNC4gUmVtb3ZlIHRoZSBnYXAgYmV0d2VlbiB0aGUgY29udGFpbmVyIGFuZCBpdHMgY2hpbGQgZWxlbWVudFxuICogNS4gTmVlZGVkIGZvciB0cmFuc2l0aW9ucyBhbmQgdG8gZml4ZWQgd3Jvbmcgc2NhbGluZyBjYWxjdWxhdGlvbiBmb3IgaW1hZ2VzIGluIENocm9tZVxuICogNi4gRml4ZWQgYG92ZXJmbG93OiBoaWRkZW5gIHRvIGJlIGlnbm9yZWQgd2l0aCBib3JkZXItcmFkaXVzIGFuZCBDU1MgdHJhbnNmb3JtcyBpbiBXZWJraXRcbiAqIDcuIFJlc2V0IG1hcmdpblxuICovXG5cbi51ay1vdmVybGF5IHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLyogMyAqL1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAvKiA0ICovXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiA1ICovXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAvKiA2ICovXG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG4gICAgLyogNyAqL1xuICAgIG1hcmdpbjogMDtcbn1cblxuLyogNiBmb3IgU2FmYXJpICovXG4udWstb3ZlcmxheS51ay1ib3JkZXItY2lyY2xlIHsgLXdlYmtpdC1tYXNrLWltYWdlOiAtd2Via2l0LXJhZGlhbC1ncmFkaWVudChjaXJjbGUsIHdoaXRlIDEwMCUsIGJsYWNrIDEwMCUpOyB9XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gY29udGVudFxuICovXG5cbi51ay1vdmVybGF5ID4gOmZpcnN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLW92ZXJsYXktcGFuZWxgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIFBvc2l0aW9uIGNvdmVyXG4gKiAyLiBTdHlsZVxuICovXG5cbi51ay1vdmVybGF5LXBhbmVsIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZzogJG92ZXJsYXktcGFuZWwtcGFkZGluZztcbiAgICBjb2xvcjogJG92ZXJsYXktcGFuZWwtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1vdmVybGF5LXBhbmVsKCk7XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstb3ZlcmxheS1wYW5lbCA+IDpsYXN0LWNoaWxkLFxuLnVrLW92ZXJsYXktcGFuZWwudWstZmxleCA+ICogPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuLypcbiAqIEtlZXAgY29sb3IgZm9yIGhlYWRpbmdzIGlmIHRoZSBkZWZhdWx0IGhlYWRpbmcgY29sb3IgaXMgY2hhbmdlZFxuICovXG5cbi51ay1vdmVybGF5LXBhbmVsIGgxLFxuLnVrLW92ZXJsYXktcGFuZWwgaDIsXG4udWstb3ZlcmxheS1wYW5lbCBoMyxcbi51ay1vdmVybGF5LXBhbmVsIGg0LFxuLnVrLW92ZXJsYXktcGFuZWwgaDUsXG4udWstb3ZlcmxheS1wYW5lbCBoNiB7IGNvbG9yOiBpbmhlcml0OyB9XG5cbi51ay1vdmVybGF5LXBhbmVsIGE6bm90KFtjbGFzc10pIHtcbiAgICBjb2xvcjogJG92ZXJsYXktcGFuZWwtbGluay1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRvdmVybGF5LXBhbmVsLWxpbmstdGV4dC1kZWNvcmF0aW9uO1xufVxuXG4udWstb3ZlcmxheS1wYW5lbCBhW2NsYXNzKj0ndWstaWNvbi0nXTpub3QoLnVrLWljb24tYnV0dG9uKSB7IGNvbG9yOiAkb3ZlcmxheS1wYW5lbC1saW5rLWNvbG9yOyB9XG5cblxuLyogU3ViLW9iamVjdCBgdWstb3ZlcmxheS1ob3ZlcmAgYW5kIGB1ay1vdmVybGF5LWFjdGl2ZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstb3ZlcmxheS1ob3Zlcjpub3QoOmhvdmVyKTpub3QoLnVrLWhvdmVyKSAudWstb3ZlcmxheS1wYW5lbDpub3QoLnVrLWlnbm9yZSkgeyBvcGFjaXR5OiAwOyB9XG5cbi51ay1vdmVybGF5LWFjdGl2ZSA6bm90KC51ay1hY3RpdmUpID4gLnVrLW92ZXJsYXktcGFuZWw6bm90KC51ay1pZ25vcmUpIHsgb3BhY2l0eTogMDsgfVxuXG5cbi8qIE1vZGlmaWVyIGB1ay1vdmVybGF5LWJhY2tncm91bmRgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW92ZXJsYXktYmFja2dyb3VuZCB7XG4gICAgYmFja2dyb3VuZDogJG92ZXJsYXktcGFuZWwtYmFja2dyb3VuZDtcbiAgICBAaW5jbHVkZSBob29rLW92ZXJsYXktYmFja2dyb3VuZCgpO1xufVxuXG5cbi8qIE1vZGlmaWVyIGB1ay1vdmVybGF5LWltYWdlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBSZXNldCBwYW5lbFxuICovXG5cbi51ay1vdmVybGF5LWltYWdlIHtcbiAgICBwYWRkaW5nOiAwO1xuICAgIEBpbmNsdWRlIGhvb2stb3ZlcmxheS1pbWFnZSgpO1xufVxuXG5cbi8qIFBvc2l0aW9uIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1vdmVybGF5LXRvcCB7IGJvdHRvbTogYXV0bzsgfVxuXG4udWstb3ZlcmxheS1ib3R0b20geyB0b3A6IGF1dG87IH1cblxuLnVrLW92ZXJsYXktbGVmdCB7IHJpZ2h0OiBhdXRvOyB9XG5cbi51ay1vdmVybGF5LXJpZ2h0IHsgbGVmdDogYXV0bzsgfVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLW92ZXJsYXktaWNvbmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstb3ZlcmxheS1pY29uOmJlZm9yZSB7XG4gICAgY29udGVudDogJG92ZXJsYXktaWNvbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAkb3ZlcmxheS1pY29uLXNpemU7XG4gICAgaGVpZ2h0OiAkb3ZlcmxheS1pY29uLXNpemU7XG4gICAgbWFyZ2luLXRvcDogLSgkb3ZlcmxheS1pY29uLXNpemUgLyAyKTtcbiAgICBtYXJnaW4tbGVmdDogLSgkb3ZlcmxheS1pY29uLXNpemUgLyAyKTtcbiAgICBmb250LXNpemU6ICRvdmVybGF5LWljb24tc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICBmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGNvbG9yOiAkb3ZlcmxheS1pY29uLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stb3ZlcmxheS1pY29uKCk7XG59XG5cblxuLyogVHJhbnNpdGlvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstb3ZlcmxheS1mYWRlLFxuLnVrLW92ZXJsYXktc2NhbGUsXG4udWstb3ZlcmxheS1zcGluLFxuLnVrLW92ZXJsYXktZ3JheXNjYWxlLFxuLnVrLW92ZXJsYXktYmx1cixcbltjbGFzcyo9J3VrLW92ZXJsYXktc2xpZGUnXSB7XG4gICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC4zcztcbiAgICB0cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1vdXQ7XG4gICAgdHJhbnNpdGlvbi1wcm9wZXJ0eTogb3BhY2l0eSwgdHJhbnNmb3JtLCBmaWx0ZXI7XG59XG5cbi51ay1vdmVybGF5LWFjdGl2ZSAudWstb3ZlcmxheS1mYWRlLFxuLnVrLW92ZXJsYXktYWN0aXZlIC51ay1vdmVybGF5LXNjYWxlLFxuLnVrLW92ZXJsYXktYWN0aXZlIC51ay1vdmVybGF5LXNwaW4sXG4udWstb3ZlcmxheS1hY3RpdmUgW2NsYXNzKj0ndWstb3ZlcmxheS1zbGlkZSddIHsgdHJhbnNpdGlvbi1kdXJhdGlvbjogMC44czsgfVxuXG4vKlxuICogRmFkZVxuICovXG5cbi51ay1vdmVybGF5LWZhZGUgeyBvcGFjaXR5OiAkb3ZlcmxheS1mYWRlLW91dC1vcGFjaXR5OyB9XG5cbi51ay1vdmVybGF5LWhvdmVyOmhvdmVyIC51ay1vdmVybGF5LWZhZGUsXG4udWstb3ZlcmxheS1ob3Zlci51ay1ob3ZlciAudWstb3ZlcmxheS1mYWRlLFxuLnVrLW92ZXJsYXktYWN0aXZlIC51ay1hY3RpdmUgPiAudWstb3ZlcmxheS1mYWRlIHsgb3BhY2l0eTogJG92ZXJsYXktZmFkZS1pbi1vcGFjaXR5OyB9XG5cbi8qXG4gKiBTY2FsZVxuICovXG5cbi51ay1vdmVybGF5LXNjYWxlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJG92ZXJsYXktc2NhbGUtb3V0LXNjYWxlKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKCRvdmVybGF5LXNjYWxlLW91dC1zY2FsZSk7XG59XG5cbi51ay1vdmVybGF5LWhvdmVyOmhvdmVyIC51ay1vdmVybGF5LXNjYWxlLFxuLnVrLW92ZXJsYXktaG92ZXIudWstaG92ZXIgLnVrLW92ZXJsYXktc2NhbGUsXG4udWstb3ZlcmxheS1hY3RpdmUgLnVrLWFjdGl2ZSA+IC51ay1vdmVybGF5LXNjYWxlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJG92ZXJsYXktc2NhbGUtaW4tc2NhbGUpO1xuICAgIHRyYW5zZm9ybTogc2NhbGUoJG92ZXJsYXktc2NhbGUtaW4tc2NhbGUpO1xufVxuXG4vKlxuICogU3BpblxuICovXG5cbi51ay1vdmVybGF5LXNwaW4ge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkb3ZlcmxheS1zcGluLW91dC1zY2FsZSkgcm90YXRlKCRvdmVybGF5LXNwaW4tb3V0LXJvdGF0ZSk7XG4gICAgdHJhbnNmb3JtOiBzY2FsZSgkb3ZlcmxheS1zcGluLW91dC1zY2FsZSkgcm90YXRlKCRvdmVybGF5LXNwaW4tb3V0LXJvdGF0ZSk7XG59XG5cbi51ay1vdmVybGF5LWhvdmVyOmhvdmVyIC51ay1vdmVybGF5LXNwaW4sXG4udWstb3ZlcmxheS1ob3Zlci51ay1ob3ZlciAudWstb3ZlcmxheS1zcGluLFxuLnVrLW92ZXJsYXktYWN0aXZlIC51ay1hY3RpdmUgPiAudWstb3ZlcmxheS1zcGluIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoJG92ZXJsYXktc3Bpbi1pbi1zY2FsZSkgcm90YXRlKCRvdmVybGF5LXNwaW4taW4tcm90YXRlKTtcbiAgICB0cmFuc2Zvcm06IHNjYWxlKCRvdmVybGF5LXNwaW4taW4tc2NhbGUpIHJvdGF0ZSgkb3ZlcmxheS1zcGluLWluLXJvdGF0ZSk7XG59XG5cbi8qXG4gKiBHcmF5c2NhbGVcbiAqL1xuXG4udWstb3ZlcmxheS1ncmF5c2NhbGUge1xuICAgIC13ZWJraXQtZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG4gICAgZmlsdGVyOiBncmF5c2NhbGUoMTAwJSk7XG59XG5cbi51ay1vdmVybGF5LWhvdmVyOmhvdmVyIC51ay1vdmVybGF5LWdyYXlzY2FsZSxcbi51ay1vdmVybGF5LWhvdmVyLnVrLWhvdmVyIC51ay1vdmVybGF5LWdyYXlzY2FsZSxcbi51ay1vdmVybGF5LWFjdGl2ZSAudWstYWN0aXZlID4gLnVrLW92ZXJsYXktZ3JheXNjYWxlIHtcbiAgICAtd2Via2l0LWZpbHRlcjogZ3JheXNjYWxlKDAlKTtcbiAgICBmaWx0ZXI6IGdyYXlzY2FsZSgwJSk7XG59XG5cbi8qXG4gKiBTbGlkZVxuICovXG5cbltjbGFzcyo9J3VrLW92ZXJsYXktc2xpZGUnXSB7IG9wYWNpdHk6IDA7IH1cblxuLyogVG9wICovXG4udWstb3ZlcmxheS1zbGlkZS10b3Age1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xufVxuXG4vKiBCb3R0b20gKi9cbi51ay1vdmVybGF5LXNsaWRlLWJvdHRvbSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDEwMCUpO1xufVxuXG4vKiBMZWZ0ICovXG4udWstb3ZlcmxheS1zbGlkZS1sZWZ0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbn1cblxuLyogUmlnaHQgKi9cbi51ay1vdmVybGF5LXNsaWRlLXJpZ2h0IHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cbi8qIEhvdmVyICovXG4udWstb3ZlcmxheS1ob3Zlcjpob3ZlciBbY2xhc3MqPSd1ay1vdmVybGF5LXNsaWRlJ10sXG4udWstb3ZlcmxheS1ob3Zlci51ay1ob3ZlciBbY2xhc3MqPSd1ay1vdmVybGF5LXNsaWRlJ10sXG4udWstb3ZlcmxheS1hY3RpdmUgLnVrLWFjdGl2ZSA+IFtjbGFzcyo9J3VrLW92ZXJsYXktc2xpZGUnXSB7XG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKSB0cmFuc2xhdGVZKDApO1xufVxuXG5cbi8qIERFUFJFQ0FURURcbiAqIFN1Yi1vYmplY3QgYHVrLW92ZXJsYXktYXJlYWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gU2V0IHBvc2l0aW9uXG4gKiAyLiBTZXQgc3R5bGVcbiAqIDMuIEZhZGUtaW4gdHJhbnNpdGlvblxuICovXG5cbi51ay1vdmVybGF5LWFyZWEge1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xuICAgIC8qIDIgKi9cbiAgICBiYWNrZ3JvdW5kOiAkb3ZlcmxheS1hcmVhLWJhY2tncm91bmQ7XG4gICAgLyogMyAqL1xuICAgIG9wYWNpdHk6IDA7XG4gICAgLXdlYmtpdC10cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuMTVzIGxpbmVhcjtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgIEBpbmNsdWRlIGhvb2stb3ZlcmxheS1hcmVhKCk7XG59XG5cbi8qXG4gKiBIb3ZlclxuICogMS4gYHVrLWhvdmVyYCB0byBzdXBwb3J0IHRvdWNoIGRldmljZXNcbiAqIDIuIFVzZSBvcHRpb25hbCBgdWstb3ZlcmxheS10b2dnbGVgIHRvIHRyaWdnZXIgdGhlIG92ZXJsYXkgZWFybGllclxuICovXG5cbi51ay1vdmVybGF5OmhvdmVyIC51ay1vdmVybGF5LWFyZWEsXG4udWstb3ZlcmxheS51ay1ob3ZlciAudWstb3ZlcmxheS1hcmVhLCAvLyAxXG4udWstb3ZlcmxheS10b2dnbGU6aG92ZXIgLnVrLW92ZXJsYXktYXJlYSwgLy8gMlxuLnVrLW92ZXJsYXktdG9nZ2xlLnVrLWhvdmVyIC51ay1vdmVybGF5LWFyZWEgeyBvcGFjaXR5OiAxOyB9XG5cbi8qXG4gKiBJY29uXG4gKi9cblxuLnVrLW92ZXJsYXktYXJlYTplbXB0eTpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICRvdmVybGF5LWFyZWEtaWNvbjtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiA1MCU7XG4gICAgbGVmdDogNTAlO1xuICAgIHdpZHRoOiAkb3ZlcmxheS1hcmVhLWljb24tc2l6ZTtcbiAgICBoZWlnaHQ6ICRvdmVybGF5LWFyZWEtaWNvbi1zaXplO1xuICAgIG1hcmdpbi10b3A6IC0oJG92ZXJsYXktYXJlYS1pY29uLXNpemUgLyAyKTtcbiAgICBtYXJnaW4tbGVmdDogLSgkb3ZlcmxheS1hcmVhLWljb24tc2l6ZSAvIDIpO1xuICAgIGZvbnQtc2l6ZTogJG92ZXJsYXktYXJlYS1pY29uLXNpemU7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgZm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBjb2xvcjogJG92ZXJsYXktYXJlYS1pY29uLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stb3ZlcmxheS1hcmVhLWljb24oKTtcbn1cblxuXG4vKiBERVBSRUNBVEVEXG4gKiBTdWItb2JqZWN0IGB1ay1vdmVybGF5LWFyZWEtY29udGVudGBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUmVtb3ZlIHdoaXRlc3BhY2UgYmV0d2VlbiBjaGlsZCBlbGVtZW50cyB3aGVuIHVzaW5nIGBpbmxpbmUtYmxvY2tgXG4gKiBOZWVkZWQgZm9yIEZpcmVmb3hcbiAqL1xuXG4udWstb3ZlcmxheS1hcmVhOm5vdCg6ZW1wdHkpIHsgZm9udC1zaXplOiAwLjAwMXB4OyB9XG5cbi8qXG4gKiAxLiBOZWVkZWQgZm9yIHZlcnRpY2FsIGFsaWdubWVudFxuICovXG5cbi51ay1vdmVybGF5LWFyZWE6bm90KDplbXB0eSk6YmVmb3JlIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8qXG4gKiAxLiBTZXQgdmVydGljYWwgYWxpZ25tZW50XG4gKiAyLiBSZXNldCB3aGl0ZXNwYWNlIGhhY2tcbiAqIDMuIFNldCBob3Jpem9udGFsIGFsaWdubWVudFxuICogNC4gU2V0IHN0eWxlXG4gKi9cblxuLnVrLW92ZXJsYXktYXJlYS1jb250ZW50IHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAvKiAyICovXG4gICAgZm9udC1zaXplOiAkb3ZlcmxheS1hcmVhLWNvbnRlbnQtZm9udC1zaXplO1xuICAgIC8qIDMgKi9cbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgLyogNCAqL1xuICAgIHBhZGRpbmc6IDAgJG92ZXJsYXktYXJlYS1jb250ZW50LXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBjb2xvcjogJG92ZXJsYXktYXJlYS1jb250ZW50LWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stb3ZlcmxheS1hcmVhLWNvbnRlbnQoKTtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSB0aGUgbGFzdC1jaGlsZFxuICovXG5cbi51ay1vdmVybGF5LWFyZWEtY29udGVudCA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG4vKlxuICogTGlua3MgaW4gb3ZlcmxheSBhcmVhXG4gKi9cblxuLnVrLW92ZXJsYXktYXJlYS1jb250ZW50IGE6bm90KFtjbGFzc10pLFxuLnVrLW92ZXJsYXktYXJlYS1jb250ZW50IGE6bm90KFtjbGFzc10pOmhvdmVyIHsgY29sb3I6ICRvdmVybGF5LWFyZWEtY29udGVudC1saW5rLWNvbG9yOyB9XG5cblxuLyogREVQUkVDQVRFRFxuICogU3ViLW9iamVjdCBgdWstb3ZlcmxheS1jYXB0aW9uYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBTZXQgcG9zaXRpb25cbiAqIDIuIFNldCBzdHlsZVxuICogMy4gRmFkZS1pbiB0cmFuc2l0aW9uXG4gKi9cblxuLnVrLW92ZXJsYXktY2FwdGlvbiB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbiAgICAvKiAyICovXG4gICAgcGFkZGluZzogJG92ZXJsYXktY2FwdGlvbi1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRvdmVybGF5LWNhcHRpb24tYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG92ZXJsYXktY2FwdGlvbi1jb2xvcjtcbiAgICAvKiAzICovXG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgwLDAsMCk7XG4gICAgQGluY2x1ZGUgaG9vay1vdmVybGF5LWNhcHRpb24oKTtcbn1cblxuLypcbiAqIEhvdmVyXG4gKiAxLiBgdWstaG92ZXJgIHRvIHN1cHBvcnQgdG91Y2ggZGV2aWNlc1xuICogMi4gVXNlIG9wdGlvbmFsIGB1ay1vdmVybGF5LXRvZ2dsZWAgdG8gdHJpZ2dlciB0aGUgb3ZlcmxheSBlYXJsaWVyXG4gKi9cblxuLnVrLW92ZXJsYXk6aG92ZXIgLnVrLW92ZXJsYXktY2FwdGlvbixcbi51ay1vdmVybGF5LnVrLWhvdmVyIC51ay1vdmVybGF5LWNhcHRpb24sIC8vIDFcbi51ay1vdmVybGF5LXRvZ2dsZTpob3ZlciAudWstb3ZlcmxheS1jYXB0aW9uLCAvLyAyXG4udWstb3ZlcmxheS10b2dnbGUudWstaG92ZXIgLnVrLW92ZXJsYXktY2FwdGlvbiB7IG9wYWNpdHk6IDE7IH1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stb3ZlcmxheS1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLW92ZXJsYXktcGFuZWwoKXt9XG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LWJhY2tncm91bmQoKXt9XG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LWltYWdlKCl7fVxuLy8gQG1peGluIGhvb2stb3ZlcmxheS1pY29uKCl7fVxuLy8gQG1peGluIGhvb2stb3ZlcmxheS1taXNjKCl7fVxuXG4vLyBERVBSRUNBVEVEXG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LWFyZWEoKXt9XG4vLyBAbWl4aW4gaG9vay1vdmVybGF5LWFyZWEtaWNvbigpe31cbi8vIEBtaXhpbiBob29rLW92ZXJsYXktYXJlYS1jb250ZW50KCl7fVxuLy8gQG1peGluIGhvb2stb3ZlcmxheS1jYXB0aW9uKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBDb2x1bW5cbi8vIERlc2NyaXB0aW9uOiAgICAgUHJvdmlkZXMgYSByZXNwb25zaXZlLCBmbHVpZCBhbmQgbmVzdGFibGUgY29sdW1ucyBmb3IgdGV4dCBhbmQgaW5saW5lIGVsZW1lbnRzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstY29sdW1uYFxuLy9cbi8vIE1vZGlmaWVyczogICAgICAgYHVrLWNvbHVtbi1zbWFsbGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNvbHVtbi1tZWRpdW0tKmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kY29sdW1uLWd1dHRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyNXB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb2x1bW5cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5bY2xhc3MqPSd1ay1jb2x1bW4tJ10ge1xuICAgIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1ndXR0ZXI7XG4gICAgLW1vei1jb2x1bW4tZ2FwOiAkY29sdW1uLWd1dHRlcjtcbiAgICBjb2x1bW4tZ2FwOiAkY29sdW1uLWd1dHRlcjtcbiAgICBAaW5jbHVkZSBob29rLWNvbHVtbigpO1xufVxuXG5cbi8qIFdpZHRoIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb2x1bW4tMS0yIHtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcbiAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcbiAgICBjb2x1bW4tY291bnQ6IDI7XG59XG5cbi51ay1jb2x1bW4tMS0zIHtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcbiAgICAtbW96LWNvbHVtbi1jb3VudDogMztcbiAgICBjb2x1bW4tY291bnQ6IDM7XG59XG5cbi51ay1jb2x1bW4tMS00IHtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogNDtcbiAgICAtbW96LWNvbHVtbi1jb3VudDogNDtcbiAgICBjb2x1bW4tY291bnQ6IDQ7XG59XG5cbi51ay1jb2x1bW4tMS01IHtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogNTtcbiAgICAtbW96LWNvbHVtbi1jb3VudDogNTtcbiAgICBjb2x1bW4tY291bnQ6IDU7XG59XG5cbi51ay1jb2x1bW4tMS02IHtcbiAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogNjtcbiAgICAtbW96LWNvbHVtbi1jb3VudDogNjtcbiAgICBjb2x1bW4tY291bnQ6IDY7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwpIHtcblxuICAgIC51ay1jb2x1bW4tc21hbGwtMS0yIHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgfVxuXG4gICAgLnVrLWNvbHVtbi1zbWFsbC0xLTMge1xuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMztcbiAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMztcbiAgICB9XG5cbiAgICAudWstY29sdW1uLXNtYWxsLTEtNCB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiA0O1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogNDtcbiAgICAgICAgY29sdW1uLWNvdW50OiA0O1xuICAgIH1cblxuICAgIC51ay1jb2x1bW4tc21hbGwtMS01IHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDU7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiA1O1xuICAgICAgICBjb2x1bW4tY291bnQ6IDU7XG4gICAgfVxuXG4gICAgLnVrLWNvbHVtbi1zbWFsbC0xLTYge1xuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogNjtcbiAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDY7XG4gICAgICAgIGNvbHVtbi1jb3VudDogNjtcbiAgICB9XG5cbn1cblxuLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1jb2x1bW4tbWVkaXVtLTEtMiB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAyO1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgY29sdW1uLWNvdW50OiAyO1xuICAgIH1cblxuICAgIC51ay1jb2x1bW4tbWVkaXVtLTEtMyB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzO1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogMztcbiAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgIH1cblxuICAgIC51ay1jb2x1bW4tbWVkaXVtLTEtNCB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiA0O1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogNDtcbiAgICAgICAgY29sdW1uLWNvdW50OiA0O1xuICAgIH1cblxuICAgIC51ay1jb2x1bW4tbWVkaXVtLTEtNSB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiA1O1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogNTtcbiAgICAgICAgY29sdW1uLWNvdW50OiA1O1xuICAgIH1cblxuICAgIC51ay1jb2x1bW4tbWVkaXVtLTEtNiB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiA2O1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogNjtcbiAgICAgICAgY29sdW1uLWNvdW50OiA2O1xuICAgIH1cblxufVxuXG4vKiBEZXNrdG9wIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1sYXJnZSkge1xuXG4gICAgLnVrLWNvbHVtbi1sYXJnZS0xLTIge1xuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogMjtcbiAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDI7XG4gICAgICAgIGNvbHVtbi1jb3VudDogMjtcbiAgICB9XG5cbiAgICAudWstY29sdW1uLWxhcmdlLTEtMyB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiAzO1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogMztcbiAgICAgICAgY29sdW1uLWNvdW50OiAzO1xuICAgIH1cblxuICAgIC51ay1jb2x1bW4tbGFyZ2UtMS00IHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDQ7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiA0O1xuICAgICAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgfVxuXG4gICAgLnVrLWNvbHVtbi1sYXJnZS0xLTUge1xuICAgICAgICAtd2Via2l0LWNvbHVtbi1jb3VudDogNTtcbiAgICAgICAgLW1vei1jb2x1bW4tY291bnQ6IDU7XG4gICAgICAgIGNvbHVtbi1jb3VudDogNTtcbiAgICB9XG5cbiAgICAudWstY29sdW1uLWxhcmdlLTEtNiB7XG4gICAgICAgIC13ZWJraXQtY29sdW1uLWNvdW50OiA2O1xuICAgICAgICAtbW96LWNvbHVtbi1jb3VudDogNjtcbiAgICAgICAgY29sdW1uLWNvdW50OiA2O1xuICAgIH1cblxufVxuXG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsYXJnZSkge1xuXG4gICAgLnVrLWNvbHVtbi14bGFyZ2UtMS0yIHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDI7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAyO1xuICAgICAgICBjb2x1bW4tY291bnQ6IDI7XG4gICAgfVxuXG4gICAgLnVrLWNvbHVtbi14bGFyZ2UtMS0zIHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDM7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiAzO1xuICAgICAgICBjb2x1bW4tY291bnQ6IDM7XG4gICAgfVxuXG4gICAgLnVrLWNvbHVtbi14bGFyZ2UtMS00IHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDQ7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiA0O1xuICAgICAgICBjb2x1bW4tY291bnQ6IDQ7XG4gICAgfVxuXG4gICAgLnVrLWNvbHVtbi14bGFyZ2UtMS01IHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDU7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiA1O1xuICAgICAgICBjb2x1bW4tY291bnQ6IDU7XG4gICAgfVxuXG4gICAgLnVrLWNvbHVtbi14bGFyZ2UtMS02IHtcbiAgICAgICAgLXdlYmtpdC1jb2x1bW4tY291bnQ6IDY7XG4gICAgICAgIC1tb3otY29sdW1uLWNvdW50OiA2O1xuICAgICAgICBjb2x1bW4tY291bnQ6IDY7XG4gICAgfVxufVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1jb2x1bW4tbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay1jb2x1bW4oKXt9XG4vLyBAbWl4aW4gaG9vay1jb2x1bW4tbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgQW5pbWF0aW9uXG4vLyBEZXNjcmlwdGlvbjogICAgIFByb3ZpZGVzIGEgdXNlZnVsIHNldCBvZiBrZXlmcmFtZSBhbmltYXRpb25zXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstYW5pbWF0aW9uLSpgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstYW5pbWF0aW9uLWZhZGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2NhbGUtdXBgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2NhbGUtZG93bmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi1zbGlkZS10b3BgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2xpZGUtYm90dG9tYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXNsaWRlLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2xpZGUtcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2NhbGVgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tc2hha2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tcmV2ZXJzZWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi0xNWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi10b3AtbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi10b3AtY2VudGVyYFxuLy8gICAgICAgICAgICAgICAgICBgdWstYW5pbWF0aW9uLXRvcC1yaWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi1taWRkbGUtbGVmdGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi1taWRkbGUtcmlnaHRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tYm90dG9tLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1hbmltYXRpb24tYm90dG9tLWNlbnRlcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFuaW1hdGlvbi1ib3R0b20tcmlnaHRgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstYW5pbWF0aW9uLWhvdmVyYFxuLy9cbi8vIFVzZXM6ICAgICAgICAgICAgU2Nyb2xsc3B5XG4vL1xuLy8gVXNlZCBieTogICAgICAgICBEcm9wZG93blxuLy8gICAgICAgICAgICAgICAgICBJY29uXG4vLyAgICAgICAgICAgICAgICAgIFNlYXJjaFxuLy8gICAgICAgICAgICAgICAgICBEYXRlcGlja2VyXG4vLyAgICAgICAgICAgICAgICAgIFNsaWRlc2hvd1xuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBBbmltYXRpb25cbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5bY2xhc3MqPSd1ay1hbmltYXRpb24tJ10ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWR1cmF0aW9uOiAwLjVzO1xuICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMC41cztcbiAgICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGVhc2Utb3V0O1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWZpbGwtbW9kZTogYm90aDtcbiAgICBhbmltYXRpb24tZmlsbC1tb2RlOiBib3RoO1xufVxuXG4vKiBIaWRlIGFuaW1hdGVkIGVsZW1lbnQgaWYgc2Nyb2xsc3B5IGlzIHVzZWQgKi9cbkBtZWRpYSBzY3JlZW4ge1xuXG4gICAgW2RhdGEtdWstc2Nyb2xsc3B5Kj0ndWstYW5pbWF0aW9uLSddOm5vdChbZGF0YS11ay1zY3JvbGxzcHkqPSd0YXJnZXQnXSkgeyBvcGFjaXR5OiAwOyB9XG5cbn1cblxuLypcbiAqIEZhZGVcbiAqIEhpZ2hlciBzcGVjaWZpY2l0eSAoIWltcG9ydGFudCkgbmVlZGVkIGJlY2F1c2Ugb2YgcmV2ZXJzZSBtb2RpZmllclxuICovXG5cbi51ay1hbmltYXRpb24tZmFkZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdWstZmFkZTtcbiAgICBhbmltYXRpb24tbmFtZTogdWstZmFkZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogMC44cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDAuOHM7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBsaW5lYXIgIWltcG9ydGFudDtcbn1cblxuLypcbiAqIEZhZGUgd2l0aCBzY2FsZVxuICovXG5cbi51ay1hbmltYXRpb24tc2NhbGUtdXAge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUtc2NhbGUtMDI7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUtc2NhbGUtMDI7XG59XG5cbi51ay1hbmltYXRpb24tc2NhbGUtZG93biB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdWstZmFkZS1zY2FsZS0xODtcbiAgICBhbmltYXRpb24tbmFtZTogdWstZmFkZS1zY2FsZS0xODtcbn1cblxuLypcbiAqIEZhZGUgd2l0aCBzbGlkZVxuICovXG5cbi51ay1hbmltYXRpb24tc2xpZGUtdG9wIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLXRvcDtcbiAgICBhbmltYXRpb24tbmFtZTogdWstZmFkZS10b3A7XG59XG5cbi51ay1hbmltYXRpb24tc2xpZGUtYm90dG9tIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLWJvdHRvbTtcbiAgICBhbmltYXRpb24tbmFtZTogdWstZmFkZS1ib3R0b207XG59XG5cbi51ay1hbmltYXRpb24tc2xpZGUtbGVmdCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdWstZmFkZS1sZWZ0O1xuICAgIGFuaW1hdGlvbi1uYW1lOiB1ay1mYWRlLWxlZnQ7XG59XG5cbi51ay1hbmltYXRpb24tc2xpZGUtcmlnaHQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUtcmlnaHQ7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHVrLWZhZGUtcmlnaHQ7XG59XG5cbi8qXG4gKiBTY2FsZVxuICovXG5cbi51ay1hbmltYXRpb24tc2NhbGUge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLW5hbWU6IHVrLXNjYWxlLTEyO1xuICAgIGFuaW1hdGlvbi1uYW1lOiB1ay1zY2FsZS0xMjtcbn1cblxuLypcbiAqIFNoYWtlXG4gKi9cblxuLnVrLWFuaW1hdGlvbi1zaGFrZSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tbmFtZTogdWstc2hha2U7XG4gICAgYW5pbWF0aW9uLW5hbWU6IHVrLXNoYWtlO1xufVxuXG5cbi8qIERpcmVjdGlvbiBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYW5pbWF0aW9uLXJldmVyc2Uge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLWRpcmVjdGlvbjogcmV2ZXJzZTtcbiAgICBhbmltYXRpb24tZGlyZWN0aW9uOiByZXZlcnNlO1xuICAgIC13ZWJraXQtYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogZWFzZS1pbjtcbiAgICBhbmltYXRpb24tdGltaW5nLWZ1bmN0aW9uOiBlYXNlLWluO1xufVxuXG5cbi8qIER1cmF0aW9uIG1vZGlmaWVyc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWFuaW1hdGlvbi0xNSB7XG4gICAgLXdlYmtpdC1hbmltYXRpb24tZHVyYXRpb246IDE1cztcbiAgICBhbmltYXRpb24tZHVyYXRpb246IDE1cztcbn1cblxuXG4vKiBPcmlnaW4gbW9kaWZpZXJzXG49PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYW5pbWF0aW9uLXRvcC1sZWZ0IHtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG4gICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbn1cblxuLnVrLWFuaW1hdGlvbi10b3AtY2VudGVyIHtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMDtcbiAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDA7XG59XG5cbi51ay1hbmltYXRpb24tdG9wLXJpZ2h0IHtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDA7XG4gICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMDtcbn1cblxuLnVrLWFuaW1hdGlvbi1taWRkbGUtbGVmdCB7XG4gICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMCA1MCU7XG4gICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgNTAlO1xufVxuXG4udWstYW5pbWF0aW9uLW1pZGRsZS1yaWdodCB7XG4gICAgIC13ZWJraXQtdHJhbnNmb3JtLW9yaWdpbjogMTAwJSA1MCU7XG4gICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgNTAlO1xufVxuXG4udWstYW5pbWF0aW9uLWJvdHRvbS1sZWZ0IHtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAwIDEwMCU7XG4gICAgIHRyYW5zZm9ybS1vcmlnaW46IDAgMTAwJTtcbn1cblxuLnVrLWFuaW1hdGlvbi1ib3R0b20tY2VudGVyIHtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiA1MCUgMTAwJTtcbiAgICAgdHJhbnNmb3JtLW9yaWdpbjogNTAlIDEwMCU7XG59XG5cbi51ay1hbmltYXRpb24tYm90dG9tLXJpZ2h0IHtcbiAgICAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAxMDAlIDEwMCU7XG4gICAgIHRyYW5zZm9ybS1vcmlnaW46IDEwMCUgMTAwJTtcbn1cblxuXG4vKiBTdWItb2JqZWN0OiBgdWstYW5pbWF0aW9uLWhvdmVyYFxuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEVuYWJsZSBhbmltYXRpb24gb25seSBvbiBob3ZlclxuICogTm90ZTogRmlyZWZveCBhbHNvIG5lZWRzIHRoaXMgYmVjYXVzZSBhbmltYXRpb25zIGFyZSBub3QgdHJpZ2dlcmVkIHdoZW4gc3dpdGNoaW5nIGJldHdlZW4gZGlzcGxheSBgaGlkZGVuYCBhbmQgYGJsb2NrYFxuICovXG5cbi51ay1hbmltYXRpb24taG92ZXI6bm90KDpob3ZlciksXG4udWstYW5pbWF0aW9uLWhvdmVyOm5vdCg6aG92ZXIpIFtjbGFzcyo9J3VrLWFuaW1hdGlvbi0nXSxcbi51ay10b3VjaCAudWstYW5pbWF0aW9uLWhvdmVyOm5vdCgudWstaG92ZXIpLFxuLnVrLXRvdWNoIC51ay1hbmltYXRpb24taG92ZXI6bm90KC51ay1ob3ZlcikgW2NsYXNzKj0ndWstYW5pbWF0aW9uLSddIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiBub25lO1xuICAgIGFuaW1hdGlvbi1uYW1lOiBub25lO1xufVxuXG5cbi8qIEtleWZyYW1lczogRmFkZVxuICogVXNlZCBieSBkcm9wZG93biwgZGF0ZXBpY2tlciBhbmQgc2xpZGVzaG93IGNvbXBvbmVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB1ay1mYWRlIHtcbiAgICAwJSB7IG9wYWNpdHk6IDA7IH1cbiAgICAxMDAlIHsgb3BhY2l0eTogMTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUge1xuICAgIDAlIHsgb3BhY2l0eTogMDsgfVxuICAgIDEwMCUgeyBvcGFjaXR5OiAxOyB9XG59XG5cblxuLyogS2V5ZnJhbWVzOiBGYWRlIHdpdGggc2xpZGVcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogVG9wXG4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHVrLWZhZGUtdG9wIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC0xMDAlKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB1ay1mYWRlLXRvcCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwMCUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuLypcbiAqIEJvdHRvbVxuICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB1ay1mYWRlLWJvdHRvbSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMDAlKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB1ay1mYWRlLWJvdHRvbSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTAwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG4vKlxuICogTGVmdFxuICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB1ay1mYWRlLWxlZnQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLWZhZGUtbGVmdCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApO1xuICAgIH1cbn1cblxuLypcbiAqIFJpZ2h0XG4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHVrLWZhZGUtcmlnaHQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdWstZmFkZS1yaWdodCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7XG4gICAgfVxufVxuXG5cbi8qIEtleWZyYW1lczogRmFkZSB3aXRoIHNjYWxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFNjYWxlIGJ5IDAuMlxuICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB1ay1mYWRlLXNjYWxlLTAyIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgwLjIpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB1ay1mYWRlLXNjYWxlLTAyIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMC4yKTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG4vKlxuICogU2NhbGUgYnkgMS41XG4gKiBVc2VkIGJ5IHNsaWRlc2hvdyBjb21wb25lbnRcbiAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdWstZmFkZS1zY2FsZS0xNSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogc2NhbGUoMS41KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdWstZmFkZS1zY2FsZS0xNSB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEuNSk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuLypcbiAqIFNjYWxlIGJ5IDEuOFxuICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB1ay1mYWRlLXNjYWxlLTE4IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKDEpO1xuICAgIH1cbn1cblxuQGtleWZyYW1lcyB1ay1mYWRlLXNjYWxlLTE4IHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS44KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogc2NhbGUoMSk7XG4gICAgfVxufVxuXG5cbi8qIEtleWZyYW1lczogU2xpZGVcbiAqIFVzZWQgYnkgc2xpZGVzaG93IGNvbXBvbmVudFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBMZWZ0XG4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHVrLXNsaWRlLWxlZnQge1xuICAgIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gICAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG59XG5cbkBrZXlmcmFtZXMgdWstc2xpZGUtbGVmdCB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTEwMCUpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxufVxuXG4vKlxuICogUmlnaHRcbiAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdWstc2xpZGUtcmlnaHQge1xuICAgIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cbiAgICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbn1cblxuQGtleWZyYW1lcyB1ay1zbGlkZS1yaWdodCB7XG4gICAgMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG59XG5cbi8qXG4gKiBMZWZ0IHRoaXJkXG4gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHVrLXNsaWRlLWxlZnQtMzMge1xuICAgIDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMzMlKTsgfVxuICAgIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLWxlZnQtMzMge1xuICAgIDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDMzJSk7IH1cbiAgICAxMDAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG59XG5cbi8qXG4gKiBSaWdodCB0aGlyZFxuICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB1ay1zbGlkZS1yaWdodC0zMyB7XG4gICAgMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzMlKTsgfVxuICAgIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgwKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXJpZ2h0LTMzIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMzMlKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbn1cblxuXG4vKiBLZXlmcmFtZXM6IFNjYWxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHVrLXNjYWxlLTEyIHtcbiAgICAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxLjIpOyB9XG4gICAgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgxKTsgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLXNjYWxlLTEyIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogc2NhbGUoMS4yKTsgfVxuICAgIDEwMCUgeyB0cmFuc2Zvcm06IHNjYWxlKDEpOyB9XG59XG5cblxuLyogS2V5ZnJhbWVzOiBSb3RhdGVcbiAqIFVzZWQgYnkgaWNvbiBjb21wb25lbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG5ALXdlYmtpdC1rZXlmcmFtZXMgdWstcm90YXRlIHtcbiAgICAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgICAxMDAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpOyB9XG59XG5cbkBrZXlmcmFtZXMgdWstcm90YXRlIHtcbiAgICAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gICAgMTAwJSB7IHRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7IH1cbn1cblxuXG4vKiBLZXlmcmFtZXM6IFNoYWtlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQC13ZWJraXQta2V5ZnJhbWVzIHVrLXNoYWtlIHtcbiAgICAwJSwgMTAwJSB7IC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDApOyB9XG4gICAgMTAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTlweCk7IH1cbiAgICAyMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg4cHgpOyB9XG4gICAgMzAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTdweCk7IH1cbiAgICA0MCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpOyB9XG4gICAgNTAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTVweCk7IH1cbiAgICA2MCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCg0cHgpOyB9XG4gICAgNzAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7IH1cbiAgICA4MCUgeyAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgycHgpOyB9XG4gICAgOTAlIHsgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTFweCk7IH1cbn1cblxuQGtleWZyYW1lcyB1ay1zaGFrZSB7XG4gICAgMCUsIDEwMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCk7IH1cbiAgICAxMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTlweCk7IH1cbiAgICAyMCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoOHB4KTsgfVxuICAgIDMwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtN3B4KTsgfVxuICAgIDQwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCg2cHgpOyB9XG4gICAgNTAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC01cHgpOyB9XG4gICAgNjAlIHsgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKDRweCk7IH1cbiAgICA3MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoLTNweCk7IH1cbiAgICA4MCUgeyB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMnB4KTsgfVxuICAgIDkwJSB7IHRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMXB4KTsgfVxufVxuXG5cbi8qIEtleWZyYW1lczogRmFkZSB3aXRoIHNsaWRlIGZpeGVkXG4gKiBVc2VkIGJ5IGRyb3Bkb3duIGFuZCBzZWFyY2ggY29tcG9uZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFRvcCBmaXhlZFxuICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB1ay1zbGlkZS10b3AtZml4ZWQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG4gICAgfVxufVxuXG5Aa2V5ZnJhbWVzIHVrLXNsaWRlLXRvcC1maXhlZCB7XG4gICAgMCUge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoLTEwcHgpO1xuICAgIH1cbiAgICAxMDAlIHtcbiAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKDApO1xuICAgIH1cbn1cblxuLypcbiAqIEJvdHRvbSBmaXhlZFxuICovXG5cbkAtd2Via2l0LWtleWZyYW1lcyB1ay1zbGlkZS1ib3R0b20tZml4ZWQge1xuICAgIDAlIHtcbiAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMTBweCk7XG4gICAgfVxuICAgIDEwMCUge1xuICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5cbkBrZXlmcmFtZXMgdWstc2xpZGUtYm90dG9tLWZpeGVkIHtcbiAgICAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgxMHB4KTtcbiAgICB9XG4gICAgMTAwJSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB9XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLWFuaW1hdGlvbi1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWFuaW1hdGlvbi1taXNjKCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBEcm9wZG93blxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgYSB0b2dnbGVhYmxlIGRyb3Bkb3duXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstZHJvcGRvd25gXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstZHJvcGRvd24tb3ZlcmxheWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1kcm9wZG93bi1ibGFua2Bcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLXRvcGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLWJvdHRvbWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLWxlZnRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wZG93bi1yaWdodGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLWp1c3RpZnlgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wZG93bi1ncmlkYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcGRvd24td2lkdGgtMmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLXdpZHRoLTNgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wZG93bi13aWR0aC00YFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcGRvd24td2lkdGgtNWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWRyb3Bkb3duLXN0YWNrYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZHJvcGRvd24tc21hbGxgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wZG93bi1uYXZiYXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kcm9wZG93bi1zY3JvbGxhYmxlYFxuLy9cbi8vIFN0YXRlczogICAgICAgICAgYHVrLW9wZW5gXG4vL1xuLy8gVXNlczogICAgICAgICAgICBBbmltYXRpb25cbi8vICAgICAgICAgICAgICAgICAgR3JpZDogYHVrLXdpZHRoLSpgXG4vLyAgICAgICAgICAgICAgICAgIFBhbmVsOiBgdWstcGFuZWxgXG4vLyAgICAgICAgICAgICAgICAgIE5hdjogYHVrLW5hdmBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kZHJvcGRvd24tei1pbmRleDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOTcwICFkZWZhdWx0O1xuJGRyb3Bkb3duLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuJGRyb3Bkb3duLW1hcmdpbi10b3A6ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiRkcm9wZG93bi1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRkcm9wZG93bi1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxcmVtICFkZWZhdWx0O1xuJGRyb3Bkb3duLWFuaW1hdGlvbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVrLWZhZGUgIWRlZmF1bHQ7XG5cbiRkcm9wZG93bi1kaXZpZGVyLWJvcmRlci13aWR0aDogICAgICAgICAgICAgICAgICAxcHggIWRlZmF1bHQ7XG4kZHJvcGRvd24tZGl2aWRlci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgICAgI2RkZCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLXNtYWxsLXBhZGRpbmc6ICAgICAgICAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLW5hdmJhci1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAgICAgIDAgIWRlZmF1bHQ7XG4kZHJvcGRvd24tbmF2YmFyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1uYXZiYXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAjNDQ0ICFkZWZhdWx0O1xuJGRyb3Bkb3duLW5hdmJhci1hbmltYXRpb246ICAgICAgICAgICAgICAgICAgICAgIHVrLXNsaWRlLXRvcC1maXhlZCAhZGVmYXVsdDtcblxuJGRyb3Bkb3duLXNjcm9sbGFibGUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBEcm9wZG93blxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBIaWRlIGJ5IGRlZmF1bHRcbiAqIDIuIFNldCBwb3NpdGlvblxuICogMy4gQm94LXNpemluZyBpcyBuZWVkZWQgZm9yIGB1ay1kcm9wZG93bi1qdXN0aWZ5YFxuICogNC4gU2V0IHdpZHRoXG4gKi9cblxuLnVrLWRyb3Bkb3duLFxuLnVrLWRyb3Bkb3duLWJsYW5rIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHotaW5kZXg6ICRkcm9wZG93bi16LWluZGV4O1xuICAgIC8qIDMgKi9cbiAgICBib3gtc2l6aW5nOiBib3JkZXItYm94O1xuICAgIC8qIDQgKi9cbiAgICB3aWR0aDogJGRyb3Bkb3duLXdpZHRoO1xufVxuXG4vKlxuICogRHJvcGRvd24gc3R5bGVcbiAqIDEuIFJlc2V0IGJ1dHRvbiBncm91cCB3aGl0ZXNwYWNlIGhhY2tcbiAqL1xuXG4udWstZHJvcGRvd24ge1xuICAgIHBhZGRpbmc6ICRkcm9wZG93bi1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRkcm9wZG93bi1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tY29sb3I7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogJGRyb3Bkb3duLWZvbnQtc2l6ZTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIEBpbmNsdWRlIGhvb2stZHJvcGRvd24oKTtcbn1cblxuLypcbiAqIDEuIFNob3cgZHJvcGRvd25cbiAqIDIuIFNldCBhbmltYXRpb25cbiAqIDMuIE5lZWRlZCBmb3Igc2NhbGUgYW5pbWF0aW9uXG4gKi9cblxuLnVrLW9wZW4gPiAudWstZHJvcGRvd24sXG4udWstb3BlbiA+IC51ay1kcm9wZG93bi1ibGFuayB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICAtd2Via2l0LWFuaW1hdGlvbjogJGRyb3Bkb3duLWFuaW1hdGlvbiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIGFuaW1hdGlvbjogJGRyb3Bkb3duLWFuaW1hdGlvbiAwLjJzIGVhc2UtaW4tb3V0O1xuICAgIC8qIDMgKi9cbiAgICAtd2Via2l0LXRyYW5zZm9ybS1vcmlnaW46IDAgMDtcbiAgICB0cmFuc2Zvcm0tb3JpZ2luOiAwIDA7XG59XG5cbi8qIEFsaWdubWVudCBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTW9kaWZpZXJcbiAqL1xuXG4udWstZHJvcGRvd24tdG9wIHsgbWFyZ2luLXRvcDogKC0xICogJGRyb3Bkb3duLW1hcmdpbi10b3ApOyB9XG4udWstZHJvcGRvd24tYm90dG9tIHsgbWFyZ2luLXRvcDogJGRyb3Bkb3duLW1hcmdpbi10b3A7IH1cbi51ay1kcm9wZG93bi1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICgtMSAqICRkcm9wZG93bi1tYXJnaW4tdG9wKTsgfVxuLnVrLWRyb3Bkb3duLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6ICRkcm9wZG93bi1tYXJnaW4tdG9wOyB9XG5cblxuLyogTmF2IGluIGRyb3Bkb3duXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRyb3Bkb3duIC51ay1uYXYgeyBtYXJnaW46IDAgKC0kZHJvcGRvd24tcGFkZGluZyk7IH1cblxuXG4vKiBHcmlkIGFuZCBwYW5lbCBpbiBkcm9wZG93blxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4qIFZlcnRpY2FsIGd1dHRlclxuKi9cblxuLypcbiAqIEdyaWRcbiAqIEhpZ2hlciBzcGVjaWZpY2l0eSB0byBvdmVycmlkZSBsYXJnZSBndXR0ZXJcbiAqL1xuXG4udWstZ3JpZCAudWstZHJvcGRvd24tZ3JpZCArIC51ay1kcm9wZG93bi1ncmlkIHsgbWFyZ2luLXRvcDogJGRyb3Bkb3duLXBhZGRpbmc7IH1cblxuLyogUGFuZWxzICovXG4udWstZHJvcGRvd24tZ3JpZCA+IFtjbGFzcyo9J3VrLXdpZHRoLSddID4gLnVrLXBhbmVsICsgLnVrLXBhbmVsIHsgbWFyZ2luLXRvcDogJGRyb3Bkb3duLXBhZGRpbmc7IH1cblxuLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC8qXG4gICAgICogSG9yaXpvbnRhbCBndXR0ZXJcbiAgICAgKi9cblxuICAgIC51ay1kcm9wZG93bjpub3QoLnVrLWRyb3Bkb3duLXN0YWNrKSA+IC51ay1kcm9wZG93bi1ncmlkIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0kZHJvcGRvd24tcGFkZGluZyA7XG4gICAgICAgIG1hcmdpbi1yaWdodDogLSRkcm9wZG93bi1wYWRkaW5nO1xuICAgIH1cblxuICAgIC51ay1kcm9wZG93bjpub3QoLnVrLWRyb3Bkb3duLXN0YWNrKSA+IC51ay1kcm9wZG93bi1ncmlkID4gW2NsYXNzKj0ndWstd2lkdGgtJ10ge1xuICAgICAgICBwYWRkaW5nLWxlZnQ6ICRkcm9wZG93bi1wYWRkaW5nO1xuICAgICAgICBwYWRkaW5nLXJpZ2h0OiAkZHJvcGRvd24tcGFkZGluZztcbiAgICB9XG5cbiAgICAvKlxuICAgICAqIENvbHVtbiBkaXZpZGVyXG4gICAgICovXG5cbiAgICAudWstZHJvcGRvd246bm90KC51ay1kcm9wZG93bi1zdGFjaykgPiAudWstZHJvcGRvd24tZ3JpZCA+IFtjbGFzcyo9J3VrLXdpZHRoLSddOm50aC1jaGlsZChuKzIpIHsgYm9yZGVyLWxlZnQ6ICRkcm9wZG93bi1kaXZpZGVyLWJvcmRlci13aWR0aCBzb2xpZCAkZHJvcGRvd24tZGl2aWRlci1ib3JkZXI7IH1cblxuICAgIC8qXG4gICAgICogV2lkdGggbXVsdGlwbGllciBmb3IgZHJvcGRvd24gY29sdW1uc1xuICAgICAqL1xuXG4gICAgLnVrLWRyb3Bkb3duLXdpZHRoLTI6bm90KC51ay1kcm9wZG93bi1zdGFjaykgeyB3aWR0aDogKCRkcm9wZG93bi13aWR0aCAqIDIpOyB9XG4gICAgLnVrLWRyb3Bkb3duLXdpZHRoLTM6bm90KC51ay1kcm9wZG93bi1zdGFjaykgeyB3aWR0aDogKCRkcm9wZG93bi13aWR0aCAqIDMpOyB9XG4gICAgLnVrLWRyb3Bkb3duLXdpZHRoLTQ6bm90KC51ay1kcm9wZG93bi1zdGFjaykgeyB3aWR0aDogKCRkcm9wZG93bi13aWR0aCAqIDQpOyB9XG4gICAgLnVrLWRyb3Bkb3duLXdpZHRoLTU6bm90KC51ay1kcm9wZG93bi1zdGFjaykgeyB3aWR0aDogKCRkcm9wZG93bi13aWR0aCAqIDUpOyB9XG5cbn1cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBzbWFsbGVyICovXG5AbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwtbWF4KSB7XG5cbiAgICAvKlxuICAgICAqIFN0YWNrIGNvbHVtbnMgYW5kIHRha2UgZnVsbCB3aWR0aFxuICAgICAqL1xuXG4gICAgLnVrLWRyb3Bkb3duLWdyaWQgPiBbY2xhc3MqPSd1ay13aWR0aC0nXSB7IHdpZHRoOiAxMDAlOyB9XG5cbiAgICAvKlxuICAgICAqIFZlcnRpY2FsIGd1dHRlclxuICAgICAqL1xuXG4gICAgLnVrLWRyb3Bkb3duLWdyaWQgPiBbY2xhc3MqPSd1ay13aWR0aC0nXTpudGgtY2hpbGQobisyKSB7IG1hcmdpbi10b3A6ICRkcm9wZG93bi1wYWRkaW5nOyB9XG5cbn1cblxuLypcbiogU3RhY2sgZ3JpZCBjb2x1bW5zXG4qL1xuXG4udWstZHJvcGRvd24tc3RhY2sgPiAudWstZHJvcGRvd24tZ3JpZCA+IFtjbGFzcyo9J3VrLXdpZHRoLSddIHsgd2lkdGg6IDEwMCU7IH1cblxuLnVrLWRyb3Bkb3duLXN0YWNrID4gLnVrLWRyb3Bkb3duLWdyaWQgPiBbY2xhc3MqPSd1ay13aWR0aC0nXTpudGgtY2hpbGQobisyKSB7IG1hcmdpbi10b3A6ICRkcm9wZG93bi1wYWRkaW5nOyB9XG5cblxuXG4vKiBNb2RpZmllciBgdWstZHJvcGRvd24tc21hbGxgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFNldCBtaW4td2lkdGggYW5kIHRleHQgZXhwYW5kcyBkcm9wZG93biBpZiBuZWVkZWRcbiAqL1xuXG4udWstZHJvcGRvd24tc21hbGwge1xuICAgIG1pbi13aWR0aDogMTUwcHg7XG4gICAgd2lkdGg6IGF1dG87XG4gICAgcGFkZGluZzogJGRyb3Bkb3duLXNtYWxsLXBhZGRpbmc7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLypcbiAqIE5hdiBpbiBkcm9wZG93blxuICovXG5cbi51ay1kcm9wZG93bi1zbWFsbCAudWstbmF2IHsgbWFyZ2luOiAwICgtJGRyb3Bkb3duLXNtYWxsLXBhZGRpbmcpOyB9XG5cblxuLyogTW9kaWZpZXI6IGB1ay1kcm9wZG93bi1uYXZiYXJgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWRyb3Bkb3duLW5hdmJhciB7XG4gICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLW5hdmJhci1tYXJnaW47XG4gICAgYmFja2dyb3VuZDogJGRyb3Bkb3duLW5hdmJhci1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbmF2YmFyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stZHJvcGRvd24tbmF2YmFyKCk7XG59XG5cbi51ay1vcGVuID4gLnVrLWRyb3Bkb3duLW5hdmJhciB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246ICRkcm9wZG93bi1uYXZiYXItYW5pbWF0aW9uIDAuMnMgZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uOiAkZHJvcGRvd24tbmF2YmFyLWFuaW1hdGlvbiAwLjJzIGVhc2UtaW4tb3V0O1xufVxuXG5cbi8qIE1vZGlmaWVyIGB1ay1kcm9wZG93bi1zY3JvbGxhYmxlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBVc2VmdWxsIGZvciBsb25nIGxpc3RzXG4gKi9cblxuLnVrLWRyb3Bkb3duLXNjcm9sbGFibGUge1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgbWF4LWhlaWdodDogJGRyb3Bkb3duLXNjcm9sbGFibGUtaGVpZ2h0O1xufVxuXG5cbi8qIFN1Yi1vYmplY3Q6IGB1ay1kcm9wZG93bi1vdmVybGF5YFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1kcm9wZG93bi1vdmVybGF5IHtcbiAgICBAaW5jbHVkZSBob29rLWRyb3Bkb3duLW92ZXJsYXkoKTtcbn1cblxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1kcm9wZG93bi1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWRyb3Bkb3duKCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tbmF2YmFyKCl7fVxuLy8gQG1peGluIGhvb2stZHJvcGRvd24tb3ZlcmxheSgpe31cbi8vIEBtaXhpbiBob29rLWRyb3Bkb3duLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIE1vZGFsXG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciBtb2RhbCBkaWFsb2dzXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstbW9kYWxgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstbW9kYWwtZGlhbG9nYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtY2xvc2VgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1oZWFkZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1mb290ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1jYXB0aW9uYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbW9kYWwtc3Bpbm5lcmBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1tb2RhbC1kaWFsb2ctbGlnaHRib3hgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1kaWFsb2ctYmxhbmtgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tb2RhbC1kaWFsb2ctbGFyZ2VgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstb3BlbmBcbi8vXG4vLyBVc2VzOiAgICAgICAgICAgIENsb3NlOiBgdWstY2xvc2VgXG4vL1xuLy8gTWFya3VwOlxuLy9cbi8vIDwhLS0gdWstbW9kYWwgLS0+XG4vLyA8YSBocmVmPVwiI21vZGFsXCIgZGF0YS11ay1tb2RhbD1cIlwiPjwvYT5cbi8vIDxkaXYgaWQ9XCJtb2RhbFwiIGNsYXNzPVwidWstbW9kYWxcIj5cbi8vICAgICA8ZGl2IGNsYXNzPVwidWstbW9kYWwtZGlhbG9nXCI+XG4vLyAgICAgICAgIDxhIGhyZWY9XCJcIiBjbGFzcz1cInVrLW1vZGFsLWNsb3NlIHVrLWNsb3NlXCI+PC9hPlxuLy8gICAgICAgICA8cD48L3A+XG4vLyAgICAgPC9kaXY+XG4vLyA8L2Rpdj5cbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbW9kYWwtei1pbmRleDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTAxMCAhZGVmYXVsdDtcbiRtb2RhbC1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZ2JhKDAsMCwwLDAuNikgIWRlZmF1bHQ7XG5cbiRtb2RhbC1kaWFsb2ctbWFyZ2luLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDIwcHggIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtZGlhbG9nLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJG1vZGFsLWRpYWxvZy1sYXJnZS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgIDkzMHB4ICFkZWZhdWx0O1xuJG1vZGFsLWRpYWxvZy1sYXJnZS13aWR0aC1sYXJnZTogICAgICAgICAgICAgICAgIDExMzBweCAhZGVmYXVsdDtcblxuJG1vZGFsLWhlYWRlci1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRtb2RhbC1mb290ZXItbWFyZ2luLXRvcDogICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kbW9kYWwtY2FwdGlvbi1tYXJnaW4tYm90dG9tOiAgICAgICAgICAgICAgICAgICAgLTEwcHggIWRlZmF1bHQ7XG4kbW9kYWwtY2FwdGlvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogTW9kYWxcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogVGhpcyBpcyB0aGUgbW9kYWwgb3ZlcmxheSBhbmQgbW9kYWwgZGlhbG9nIGNvbnRhaW5lclxuICogMS4gSGlkZSBieSBkZWZhdWx0XG4gKiAyLiBTZXQgZml4ZWQgcG9zaXRpb25cbiAqIDMuIEFsbG93IHNjcm9sbGluZyBmb3IgdGhlIG1vZGFsIGRpYWxvZ1xuICogNC4gTWFzayB0aGUgYmFja2dyb3VuZCBwYWdlXG4gKiA1LiBGYWRlLWluIHRyYW5zaXRpb25cbiAqIDYuIERlYWN0aXZhdGUgYnJvd3NlciBoaXN0b3J5IG5hdmlnYXRpb24gaW4gSUUxMVxuICogNy4gZm9yY2UgaGFyZHdhcmUgYWNjZWxlcmF0aW9uIHRvIHByZXZlbnQgYnJvd3NlciByZW5kZXJpbmcgaGljY3Vwc1xuICovXG5cbi51ay1tb2RhbCB7XG4gICAgLyogMSAqL1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgLyogMiAqL1xuICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICB0b3A6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgei1pbmRleDogJG1vZGFsLXotaW5kZXg7XG4gICAgLyogMyAqL1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC8qIDQgKi9cbiAgICBiYWNrZ3JvdW5kOiAkbW9kYWwtYmFja2dyb3VuZDtcbiAgICAvKiA1ICovXG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAgIHRyYW5zaXRpb246IG9wYWNpdHkgMC4xNXMgbGluZWFyO1xuICAgIC8qIDYgKi9cbiAgICB0b3VjaC1hY3Rpb246IGNyb3NzLXNsaWRlLXkgcGluY2gtem9vbSBkb3VibGUtdGFwLXpvb207XG4gICAgLyogNyAqL1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICBAaW5jbHVkZSBob29rLW1vZGFsKCk7XG59XG5cbi8qXG4gKiBPcGVuIHN0YXRlXG4gKi9cblxuLnVrLW1vZGFsLnVrLW9wZW4geyBvcGFjaXR5OiAxOyB9XG5cbi8qXG4gKiBQcmV2ZW50cyBkdXBsaWNhdGVkIHNjcm9sbGJhciBjYXVzZWQgYnkgNC5cbiAqL1xuXG4udWstbW9kYWwtcGFnZSxcbi51ay1tb2RhbC1wYWdlIGJvZHkgeyBvdmVyZmxvdzogaGlkZGVuOyB9XG5cblxuLyogU3ViLW9iamVjdDogYHVrLW1vZGFsLWRpYWxvZ2BcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ3JlYXRlIHBvc2l0aW9uIGNvbnRleHQgZm9yIGNhcHRpb24sIHNwaW5uZXIgYW5kIGNsb3NlIGJ1dHRvblxuICogMi4gU2V0IGJveCBzaXppbmdcbiAqIDMuIFNldCBzdHlsZVxuICogNC4gU2xpZGUtaW4gdHJhbnNpdGlvblxuICovXG5cbi51ay1tb2RhbC1kaWFsb2cge1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLyogMiAqL1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWFyZ2luOiAkbW9kYWwtZGlhbG9nLW1hcmdpbi12ZXJ0aWNhbCBhdXRvO1xuICAgIHBhZGRpbmc6ICRtb2RhbC1kaWFsb2ctcGFkZGluZztcbiAgICB3aWR0aDogJG1vZGFsLWRpYWxvZy13aWR0aDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgbWF4LXdpZHRoOiB1bnF1b3RlKFwiY2FsYygxMDAlIC0gMjBweClcIik7XG4gICAgLyogMyAqL1xuICAgIGJhY2tncm91bmQ6ICRtb2RhbC1kaWFsb2ctYmFja2dyb3VuZDtcbiAgICAvKiA0ICovXG4gICAgb3BhY2l0eTogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWSgtMTAwcHgpO1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGxpbmVhciwgLXdlYmtpdC10cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbiAgICB0cmFuc2l0aW9uOiBvcGFjaXR5IDAuM3MgbGluZWFyLCB0cmFuc2Zvcm0gMC4zcyBlYXNlLW91dDtcbiAgICBAaW5jbHVkZSBob29rLW1vZGFsLWRpYWxvZygpO1xufVxuXG4vKiBQaG9uZSBsYW5kc2NhcGUgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbC1tYXgpIHtcblxuICAgIC8qXG4gICAgICogRml0IGluIHNtYWxsIHNjcmVlblxuICAgICAqL1xuXG4gICAgLnVrLW1vZGFsLWRpYWxvZyB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICBtYXJnaW46IDEwcHggYXV0bztcbiAgICB9XG5cbn1cblxuLypcbiAqIE9wZW4gc3RhdGVcbiAqL1xuXG4udWstb3BlbiAudWstbW9kYWwtZGlhbG9nIHtcbiAgICAvKiA0ICovXG4gICAgb3BhY2l0eTogMTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWSgwKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVkoMCk7XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstbW9kYWwtZGlhbG9nID4gOm5vdChbY2xhc3MqPSd1ay1tb2RhbC0nXSk6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBDbG9zZSBpbiBtb2RhbFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1tb2RhbC1kaWFsb2cgPiAudWstY2xvc2U6Zmlyc3QtY2hpbGQge1xuICAgIG1hcmdpbjogLTEwcHggLTEwcHggMCAwO1xuICAgIGZsb2F0OiByaWdodDtcbn1cblxuLypcbiAqIFJlbW92ZSBtYXJnaW4gZnJvbSBhZGphY2VudCBlbGVtZW50XG4gKi9cblxuIC51ay1tb2RhbC1kaWFsb2cgPiAudWstY2xvc2U6Zmlyc3QtY2hpbGQgKyA6bm90KFtjbGFzcyo9J3VrLW1vZGFsLSddKSB7IG1hcmdpbi10b3A6IDA7IH1cblxuXG4vKiBNb2RpZmllcjogYHVrLW1vZGFsLWRpYWxvZy1saWdodGJveGBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbW9kYWwtZGlhbG9nLWxpZ2h0Ym94IHtcbiAgICBtYXJnaW46IDE1cHggYXV0bztcbiAgICBwYWRkaW5nOiAwO1xuICAgIG1heC13aWR0aDogOTUlO1xuICAgIG1heC13aWR0aDogdW5xdW90ZShcImNhbGMoMTAwJSAtIDMwcHgpXCIpO1xuICAgIG1pbi1oZWlnaHQ6IDUwcHg7XG4gICAgQGluY2x1ZGUgaG9vay1tb2RhbC1kaWFsb2ctbGlnaHRib3goKTtcbn1cblxuLypcbiAqIENsb3NlIGJ1dHRvblxuICovXG5cbi51ay1tb2RhbC1kaWFsb2ctbGlnaHRib3ggPiAudWstY2xvc2U6Zmlyc3QtY2hpbGQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IC0xMnB4O1xuICAgIHJpZ2h0OiAtMTJweDtcbiAgICBtYXJnaW46IDA7XG4gICAgZmxvYXQ6IG5vbmU7XG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXNtYWxsLW1heCkge1xuXG4gICAgLnVrLW1vZGFsLWRpYWxvZy1saWdodGJveCA+IC51ay1jbG9zZTpmaXJzdC1jaGlsZCB7XG4gICAgICAgIHRvcDogLTdweDtcbiAgICAgICAgcmlnaHQ6IC03cHg7XG4gICAgfVxuXG59XG5cbi8qIE1vZGlmaWVyOiBgdWstbW9kYWwtZGlhbG9nLWJsYW5rYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1tb2RhbC1kaWFsb2ctYmxhbmsge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAtd2Via2l0LXRyYW5zaXRpb246IG9wYWNpdHkgMC4zcyBsaW5lYXI7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjNzIGxpbmVhcjtcbn1cblxuLypcbiogQ2xvc2UgYnV0dG9uXG4qL1xuXG4udWstbW9kYWwtZGlhbG9nLWJsYW5rID4gLnVrLWNsb3NlOmZpcnN0LWNoaWxkIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAyMHB4O1xuICAgIHJpZ2h0OiAyMHB4O1xuICAgIHotaW5kZXg6IDE7XG4gICAgbWFyZ2luOiAwO1xuICAgIGZsb2F0OiBub25lO1xufVxuXG5cbi8qIE1vZGlmaWVyOiBgdWstbW9kYWwtZGlhbG9nLWxhcmdlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIFRhYmxldCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstbW9kYWwtZGlhbG9nLWxhcmdlIHsgd2lkdGg6ICRtb2RhbC1kaWFsb2ctbGFyZ2Utd2lkdGg7IH1cblxufVxuXG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsYXJnZSkge1xuXG4gICAgLnVrLW1vZGFsLWRpYWxvZy1sYXJnZSB7IHdpZHRoOiAkbW9kYWwtZGlhbG9nLWxhcmdlLXdpZHRoLWxhcmdlOyB9XG5cbn1cblxuXG4vKiBTdWItT2JqZWN0OiBgdWstbW9kYWwtaGVhZGVyYCBhbmQgYHVrLW1vZGFsLWZvb3RlcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbW9kYWwtaGVhZGVyIHtcbiAgICBtYXJnaW4tYm90dG9tOiAkbW9kYWwtaGVhZGVyLW1hcmdpbi1ib3R0b207XG4gICAgQGluY2x1ZGUgaG9vay1tb2RhbC1oZWFkZXIoKTtcbn1cblxuLnVrLW1vZGFsLWZvb3RlciB7XG4gICAgbWFyZ2luLXRvcDogJG1vZGFsLWZvb3Rlci1tYXJnaW4tdG9wO1xuICAgIEBpbmNsdWRlIGhvb2stbW9kYWwtZm9vdGVyKCk7XG59XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luIGZyb20gdGhlIGxhc3QtY2hpbGRcbiAqL1xuXG4udWstbW9kYWwtaGVhZGVyICA+IDpsYXN0LWNoaWxkLFxuLnVrLW1vZGFsLWZvb3RlciAgPiA6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuXG4vKiBTdWItT2JqZWN0OiBgdWstbW9kYWwtY2FwdGlvbmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbW9kYWwtY2FwdGlvbiB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgYm90dG9tOiAoLSRtb2RhbC1kaWFsb2ctcGFkZGluZyk7XG4gICAgbWFyZ2luLWJvdHRvbTogJG1vZGFsLWNhcHRpb24tbWFyZ2luLWJvdHRvbTtcbiAgICBjb2xvcjogJG1vZGFsLWNhcHRpb24tY29sb3I7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gICAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbiAgICBAaW5jbHVkZSBob29rLW1vZGFsLWNhcHRpb24oKTtcbn1cblxuXG4vKiBTdWItT2JqZWN0OiBgdWstbW9kYWwtc3Bpbm5lcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbW9kYWwtc3Bpbm5lciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IDUwJTtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsLTUwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwtNTAlKTtcbiAgICBmb250LXNpemU6IDI1cHg7XG4gICAgY29sb3I6ICNkZGQ7XG4gICAgQGluY2x1ZGUgaG9vay1tb2RhbC1zcGlubmVyKCk7XG59XG5cbi51ay1tb2RhbC1zcGlubmVyOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlxcZjExMFwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogdWstcm90YXRlIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgICBhbmltYXRpb246IHVrLXJvdGF0ZSAycyBpbmZpbml0ZSBsaW5lYXI7XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLW1vZGFsLW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stbW9kYWwoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1kaWFsb2coKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1kaWFsb2ctbGlnaHRib3goKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1mb290ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1tb2RhbC1jYXB0aW9uKCl7fVxuLy8gQG1peGluIGhvb2stbW9kYWwtc3Bpbm5lcigpe31cbi8vIEBtaXhpbiBob29rLW1vZGFsLW1pc2MoKXt9XG4iLCIvLyBOYW1lOiAgICAgICAgICAgIE9mZi1jYW52YXNcbi8vIERlc2NyaXB0aW9uOiAgICAgRGVmaW5lcyBzdHlsZXMgZm9yIGFuIG9mZi1jYW52YXMgc2lkZWJhciB0aGF0IHNsaWRlcyBpbiBhbmQgb3V0IG9mIHRoZSBwYWdlXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstb2ZmY2FudmFzYFxuLy9cbi8vIFN1Yi1vYmplY3RzOiAgICAgYHVrLW9mZmNhbnZhcy1wYWdlYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb2ZmY2FudmFzLWJhcmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW9mZmNhbnZhcy1jbG9zZWBcbi8vXG4vLyBNb2RpZmllcnM6ICAgICAgIGB1ay1vZmZjYW52YXMtYmFyLWZsaXBgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vIFVzZXM6ICAgICAgICAgICAgUGFuZWw6IGB1ay1wYW5lbGBcbi8vXG4vLyBNYXJrdXA6XG4vL1xuLy8gPCEtLSB1ay1vZmZjYW52YXMgLS0+XG4vLyA8YSBocmVmPVwiI29mZmNhbnZhc1wiIGRhdGEtdWstb2ZmY2FudmFzPk9wZW48L2E+XG4vLyA8ZGl2IGlkPVwib2ZmY2FudmFzXCIgY2xhc3M9XCJ1ay1vZmZjYW52YXNcIj5cbi8vICAgICA8ZGl2IGNsYXNzPVwidWstb2ZmY2FudmFzLWJhclwiPjwvZGl2PlxuLy8gPC9kaXY+XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuJG9mZmNhbnZhcy16LWluZGV4OiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICAgICAgcmdiYSgwLDAsMCwwLjEpICFkZWZhdWx0O1xuXG4kb2ZmY2FudmFzLWJhci13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgMjcwcHggIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLWJhci1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuJG9mZmNhbnZhcy1wYW5lbC1tYXJnaW46ICAgICAgICAgICAgICAgICAgICAgICAgIDIwcHggMTVweCAhZGVmYXVsdDtcbiRvZmZjYW52YXMtcGFuZWwtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAjNzc3ICFkZWZhdWx0O1xuJG9mZmNhbnZhcy1wYW5lbC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kb2ZmY2FudmFzLXBhbmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRvZmZjYW52YXMtcGFuZWwtdGl0bGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAkb2ZmY2FudmFzLXBhbmVsLWxpbmstY29sb3IgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE9mZi1jYW52YXNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogVGhpcyBpcyB0aGUgb2ZmY2FudmFzIG92ZXJsYXkgYW5kIGJhciBjb250YWluZXJcbiAqIDEuIEhpZGUgYnkgZGVmYXVsdFxuICogMi4gU2V0IGZpeGVkIHBvc2l0aW9uXG4gKiAzLiBEZWFjdGl2YXRlIGJyb3dzZXIgdG91Y2ggYWN0aW9ucyBpbiBJRTExXG4gKiA0LiBNYXNrIHRoZSBiYWNrZ3JvdW5kIHBhZ2VcbiAqL1xuXG4udWstb2ZmY2FudmFzIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogbm9uZTtcbiAgICAvKiAyICovXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICByaWdodDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXotaW5kZXg7XG4gICAgLyogMyAqL1xuICAgIHRvdWNoLWFjdGlvbjogbm9uZTtcbiAgICAvKiA0ICovXG4gICAgYmFja2dyb3VuZDogJG9mZmNhbnZhcy1iYWNrZ3JvdW5kO1xuICAgIEBpbmNsdWRlIGhvb2stb2ZmY2FudmFzKCk7XG59XG5cbi51ay1vZmZjYW52YXMudWstYWN0aXZlIHsgZGlzcGxheTogYmxvY2s7IH1cblxuXG4vKiBTdWItb2JqZWN0IGB1ay1vZmZjYW52YXMtcGFnZWBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogUHJlcGFyZXMgdGhlIHdob2xlIEhUTUwgcGFnZSB0byBzbGlkZS1vdXRcbiAqIDEuIEZpeCB0aGUgbWFpbiBwYWdlIGFuZCBkaXNhbGxvdyBzY3JvbGxpbmdcbiAqIDIuIFNpZGUtb3V0IHRyYW5zaXRpb25cbiAqL1xuXG4udWstb2ZmY2FudmFzLXBhZ2Uge1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgLyogMiAqL1xuICAgIC13ZWJraXQtdHJhbnNpdGlvbjogbWFyZ2luLWxlZnQgMC4zcyBlYXNlLWluLW91dDtcbiAgICB0cmFuc2l0aW9uOiBtYXJnaW4tbGVmdCAwLjNzIGVhc2UtaW4tb3V0O1xufVxuXG5cbi8qIFN1Yi1vYmplY3QgYHVrLW9mZmNhbnZhcy1iYXJgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFRoaXMgaXMgdGhlIG9mZmNhbnZhcyBiYXJcbiAqIDEuIFNldCBmaXhlZCBwb3NpdGlvblxuICogMi4gU2l6ZSBhbmQgc3R5bGVcbiAqIDMuIEFsbG93IHNjcm9sbGluZ1xuICogNC4gU2lkZS1vdXQgdHJhbnNpdGlvblxuICogNS4gRGVhY3RpdmF0ZSBzY3JvbGwgY2hhaW5pbmcgaW4gSUUxMVxuICovXG5cbi51ay1vZmZjYW52YXMtYmFyIHtcbiAgICAvKiAxICovXG4gICAgcG9zaXRpb246IGZpeGVkO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgtMTAwJSk7XG4gICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVYKC0xMDAlKTtcbiAgICB6LWluZGV4OiAkb2ZmY2FudmFzLXotaW5kZXggKyAxO1xuICAgIC8qIDIgKi9cbiAgICB3aWR0aDogJG9mZmNhbnZhcy1iYXItd2lkdGg7XG4gICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgIGJhY2tncm91bmQ6ICRvZmZjYW52YXMtYmFyLWJhY2tncm91bmQ7XG4gICAgLyogMyAqL1xuICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIC8qIDQgKi9cbiAgICAtd2Via2l0LXRyYW5zaXRpb246IC13ZWJraXQtdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgdHJhbnNpdGlvbjogdHJhbnNmb3JtIDAuM3MgZWFzZS1pbi1vdXQ7XG4gICAgLyogNSAqL1xuICAgIC1tcy1zY3JvbGwtY2hhaW5pbmc6IG5vbmU7XG4gICAgQGluY2x1ZGUgaG9vay1vZmZjYW52YXMtYmFyKCk7XG59XG5cbi51ay1vZmZjYW52YXMudWstYWN0aXZlIC51ay1vZmZjYW52YXMtYmFyLnVrLW9mZmNhbnZhcy1iYXItc2hvdyB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMCUpO1xuICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlWCgwJSk7XG59XG5cbi8qIE1vZGlmaWVyIGB1ay1vZmZjYW52YXMtYmFyLWZsaXBgXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW9mZmNhbnZhcy1iYXItZmxpcCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlWCgxMDAlKTtcbiAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVgoMTAwJSk7XG59XG5cblxuLyogUGFuZWwgaW4gb2ZmY2FudmFzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW9mZmNhbnZhcyAudWstcGFuZWwge1xuICAgIG1hcmdpbjogJG9mZmNhbnZhcy1wYW5lbC1tYXJnaW47XG4gICAgY29sb3I6ICRvZmZjYW52YXMtcGFuZWwtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1vZmZjYW52YXMtcGFuZWwoKTtcbn1cblxuLnVrLW9mZmNhbnZhcyAudWstcGFuZWwtdGl0bGUgeyBjb2xvcjogJG9mZmNhbnZhcy1wYW5lbC10aXRsZS1jb2xvcjsgfVxuXG4udWstb2ZmY2FudmFzIC51ay1wYW5lbCBhOm5vdChbY2xhc3NdKSB7IGNvbG9yOiAkb2ZmY2FudmFzLXBhbmVsLWxpbmstY29sb3I7IH1cbi51ay1vZmZjYW52YXMgLnVrLXBhbmVsIGE6bm90KFtjbGFzc10pOmhvdmVyIHsgY29sb3I6ICRvZmZjYW52YXMtcGFuZWwtbGluay1ob3Zlci1jb2xvcjsgfVxuXG5cbi8vIEhvb2tzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuQGluY2x1ZGUgaG9vay1vZmZjYW52YXMtbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay1vZmZjYW52YXMoKXt9XG4vLyBAbWl4aW4gaG9vay1vZmZjYW52YXMtYmFyKCl7fVxuLy8gQG1peGluIGhvb2stb2ZmY2FudmFzLXBhbmVsKCl7fVxuLy8gQG1peGluIGhvb2stb2ZmY2FudmFzLW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBTd2l0Y2hlclxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgdGhlIHN3aXRjaGVyXG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstc3dpdGNoZXJgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBTd2l0Y2hlclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBEZWFjdGl2YXRlIGJyb3dzZXIgaGlzdG9yeSBuYXZpZ2F0aW9uIGluIElFMTFcbiAqL1xuLnVrLXN3aXRjaGVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIC8qIDEgKi9cbiAgICB0b3VjaC1hY3Rpb246IGNyb3NzLXNsaWRlLXkgcGluY2gtem9vbSBkb3VibGUtdGFwLXpvb207XG59XG5cbi8qXG4gKiBJdGVtc1xuICovXG5cbi51ay1zd2l0Y2hlciA+IDpub3QoLnVrLWFjdGl2ZSkgeyBkaXNwbGF5OiBub25lOyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLXN3aXRjaGVyLW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stc3dpdGNoZXItbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIFRleHRcbi8vIERlc2NyaXB0aW9uOiAgICAgQ29sbGVjdGlvbiBvZiB1c2VmdWwgdGV4dCB1dGlsaXR5IGNsYXNzZXMgdG8gc3R5bGUgeW91ciBjb250ZW50XG4vL1xuLy8gQ29tcG9uZW50OiAgICAgICBgdWstdGV4dC0qYFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiR0ZXh0LXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgICAgICAgICAgICAgICAgICAxMXB4ICFkZWZhdWx0O1xuJHRleHQtc21hbGwtbGluZS1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgIDE2cHggIWRlZmF1bHQ7XG4kdGV4dC1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAgICAgMThweCAhZGVmYXVsdDtcbiR0ZXh0LWxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgICAgICAyNHB4ICFkZWZhdWx0O1xuJHRleHQtbGFyZ2UtZm9udC13ZWlnaHQ6ICAgICAgICAgICAgICAgICAgICAgICAgIG5vcm1hbCAhZGVmYXVsdDtcblxuJHRleHQtbXV0ZWQtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM5OTkgIWRlZmF1bHQ7XG4kdGV4dC1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzJkNzA5MSAhZGVmYXVsdDtcbiR0ZXh0LXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjNjU5ZjEzICFkZWZhdWx0O1xuJHRleHQtd2FybmluZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNlMjgzMjcgIWRlZmF1bHQ7XG4kdGV4dC1kYW5nZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgI2Q4NTAzMCAhZGVmYXVsdDtcbiR0ZXh0LWNvbnRyYXN0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBUZXh0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogU2l6ZSBtb2RpZmllcnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstdGV4dC1zbWFsbCB7XG4gICAgZm9udC1zaXplOiAkdGV4dC1zbWFsbC1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICR0ZXh0LXNtYWxsLWxpbmUtaGVpZ2h0O1xufVxuXG4udWstdGV4dC1sYXJnZSB7XG4gICAgZm9udC1zaXplOiAkdGV4dC1sYXJnZS1mb250LXNpemU7XG4gICAgbGluZS1oZWlnaHQ6ICR0ZXh0LWxhcmdlLWxpbmUtaGVpZ2h0O1xuICAgIGZvbnQtd2VpZ2h0OiAkdGV4dC1sYXJnZS1mb250LXdlaWdodDtcbn1cblxuXG4vKiBXZWlnaHQgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRleHQtYm9sZCB7IGZvbnQtd2VpZ2h0OiBib2xkOyB9XG5cblxuLyogQ29sb3IgbW9kaWZpZXJzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXRleHQtbXV0ZWQgeyBjb2xvcjogJHRleHQtbXV0ZWQtY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtcHJpbWFyeSB7IGNvbG9yOiAkdGV4dC1wcmltYXJ5LWNvbG9yICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LXN1Y2Nlc3MgeyBjb2xvcjogJHRleHQtc3VjY2Vzcy1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstdGV4dC13YXJuaW5nIHsgY29sb3I6ICR0ZXh0LXdhcm5pbmctY29sb3IgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtZGFuZ2VyIHsgY29sb3I6ICR0ZXh0LWRhbmdlci1jb2xvciAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1jb250cmFzdCB7IGNvbG9yOiAkdGV4dC1jb250cmFzdC1jb2xvciAhaW1wb3J0YW50OyB9XG5cblxuLyogQWxpZ25tZW50IG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay10ZXh0LWxlZnQgeyB0ZXh0LWFsaWduOiBsZWZ0ICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LXJpZ2h0IHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuLnVrLXRleHQtY2VudGVyIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LWp1c3RpZnkgeyB0ZXh0LWFsaWduOiBqdXN0aWZ5ICFpbXBvcnRhbnQ7IH1cblxuLnVrLXRleHQtdG9wIHsgdmVydGljYWwtYWxpZ246IHRvcCAhaW1wb3J0YW50OyB9XG4udWstdGV4dC1taWRkbGUgeyB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlICFpbXBvcnRhbnQ7IH1cbi51ay10ZXh0LWJvdHRvbSB7IHZlcnRpY2FsLWFsaWduOiBib3R0b20gIWltcG9ydGFudDsgfVxuXG4vKiBPbmx5IHRhYmxldHMgcG9ydHJhaXQgYW5kIHNtYWxsZXIgKi9cbkBtZWRpYSAobWF4LXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0tbWF4KSB7XG5cbiAgICAudWstdGV4dC1jZW50ZXItbWVkaXVtIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1sZWZ0LW1lZGl1bSB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgc21hbGxlciAqL1xuQG1lZGlhIChtYXgtd2lkdGg6ICRicmVha3BvaW50LXNtYWxsLW1heCkge1xuXG4gICAgLnVrLXRleHQtY2VudGVyLXNtYWxsIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1sZWZ0LXNtYWxsIHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG5cbn1cblxuXG4vKiBXcmFwIG1vZGlmaWVyc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBQcmV2ZW50IHRleHQgZnJvbSB3cmFwcGluZyBvbnRvIG11bHRpcGxlIGxpbmVzXG4gKi9cblxuLnVrLXRleHQtbm93cmFwIHsgd2hpdGUtc3BhY2U6IG5vd3JhcDsgfVxuXG4vKlxuICogUHJldmVudCB0ZXh0IGZyb20gd3JhcHBpbmcgb250byBtdWx0aXBsZSBsaW5lcywgYW5kIHRydW5jYXRlIHdpdGggYW4gZWxsaXBzaXNcbiAqL1xuXG4udWstdGV4dC10cnVuY2F0ZSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xufVxuXG4vKlxuICogQnJlYWsgc3RyaW5ncyBpZiB0aGVpciBsZW5ndGggZXhjZWVkcyB0aGUgd2lkdGggb2YgdGhlaXIgY29udGFpbmVyXG4gKi9cblxuLnVrLXRleHQtYnJlYWsge1xuICAgIHdvcmQtd3JhcDogYnJlYWstd29yZDtcbiAgICAtd2Via2l0LWh5cGhlbnM6IGF1dG87XG4gICAgLW1zLWh5cGhlbnM6IGF1dG87XG4gICAgLW1vei1oeXBoZW5zOiBhdXRvO1xuICAgIGh5cGhlbnM6IGF1dG87XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLXRleHQtbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay10ZXh0LW1pc2MoKXt9IiwiLy8gTmFtZTogICAgICAgICAgICBVdGlsaXR5XG4vLyBEZXNjcmlwdGlvbjogICAgIENvbGxlY3Rpb24gb2YgdXNlZnVsIHV0aWxpdHkgY2xhc3NlcyB0byBzdHlsZSB5b3VyIGNvbnRlbnRcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1jb250YWluZXItKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWNsZWFyZml4YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbmJmYy0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstZmxvYXQtKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWFsaWduLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay12ZXJ0aWNhbC1hbGlnbi0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaGVpZ2h0LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1yZXNwb25zaXZlLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1tYXJnaW4tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBhZGRpbmctKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWJvcmRlci0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstaGVhZGluZy0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbGluay0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2Nyb2xsYWJsZS0qYFxuLy8gICAgICAgICAgICAgICAgICBgdWstb3ZlcmZsb3ctKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXBvc2l0aW9uLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1kaXNwbGF5LSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay12aXNpYmxlLSpgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1oaWRkZW4tKmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLWludmlzaWJsZWBcbi8vXG4vLyBVc2VkIGJ5OiAgICAgICAgIE92ZXJsYXlcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kdXRpbGl0eS1jb250YWluZXItbWF4LXdpZHRoOiAgICAgICAgICAgICAgICAgICAgOTgwcHggIWRlZmF1bHQ7XG4kdXRpbGl0eS1jb250YWluZXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgICAgMjVweCAhZGVmYXVsdDtcblxuJHV0aWxpdHktY29udGFpbmVyLWxhcmdlLW1heC13aWR0aDogICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiR1dGlsaXR5LWNvbnRhaW5lci1sYXJnZS1wYWRkaW5nLWhvcml6b250YWw6ICAgICAzNXB4ICFkZWZhdWx0O1xuXG4kdXRpbGl0eS1hbGlnbi1ob3Jpem9udGFsOiAgICAgICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiR1dGlsaXR5LWFsaWduLXZlcnRpY2FsOiAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuXG4kdXRpbGl0eS1oZWlnaHQtdmlld3BvcnQtbWluLWhlaWdodDogICAgICAgICAgICAgNjAwcHggIWRlZmF1bHQ7XG5cbiR1dGlsaXR5LW1hcmdpbjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJHV0aWxpdHktbWFyZ2luLXNtYWxsOiAgICAgICAgICAgICAgICAgICAgICAgICAgIDVweCAhZGVmYXVsdDtcbiR1dGlsaXR5LW1hcmdpbi1sYXJnZTogICAgICAgICAgICAgICAgICAgICAgICAgICA1MHB4ICFkZWZhdWx0O1xuXG4kdXRpbGl0eS1ib3JkZXItcm91bmRlZDogICAgICAgICAgICAgICAgICAgICAgICAgNXB4ICFkZWZhdWx0O1xuXG4kdXRpbGl0eS1oZWFkaW5nLWxhcmdlLXNtYWxsLWZvbnQtc2l6ZTogICAgICAgICAgMzZweCAhZGVmYXVsdDtcbiR1dGlsaXR5LWhlYWRpbmctbGFyZ2Utc21hbGwtbGluZS1oZWlnaHQ6ICAgICAgICA0MnB4ICFkZWZhdWx0O1xuJHV0aWxpdHktaGVhZGluZy1sYXJnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgIDUycHggIWRlZmF1bHQ7XG4kdXRpbGl0eS1oZWFkaW5nLWxhcmdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgNjRweCAhZGVmYXVsdDtcblxuJHV0aWxpdHktbGluay1tdXRlZC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kdXRpbGl0eS1saW5rLW11dGVkLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcblxuJHV0aWxpdHktc2Nyb2xsYWJsZS10ZXh0LWhlaWdodDogICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG4kdXRpbGl0eS1zY3JvbGxhYmxlLWJveC1oZWlnaHQ6ICAgICAgICAgICAgICAgICAgMTcwcHggIWRlZmF1bHQ7XG4kdXRpbGl0eS1zY3JvbGxhYmxlLWJveC1wYWRkaW5nOiAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiR1dGlsaXR5LXNjcm9sbGFibGUtYm94LWJvcmRlcjogICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJHV0aWxpdHktc2Nyb2xsYWJsZS1ib3gtYm9yZGVyLXdpZHRoOiAgICAgICAgICAgIDFweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogVXRpbGl0eVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qIENvbnRhaW5lclxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb250YWluZXIge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgbWF4LXdpZHRoOiAkdXRpbGl0eS1jb250YWluZXItbWF4LXdpZHRoO1xuICAgIHBhZGRpbmc6IDAgJHV0aWxpdHktY29udGFpbmVyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBAaW5jbHVkZSBob29rLWNvbnRhaW5lcigpO1xufVxuXG4vKiBMYXJnZSBzY3JlZW4gYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LXhsYXJnZSkge1xuXG4gICAgLnVrLWNvbnRhaW5lciB7XG4gICAgICAgIG1heC13aWR0aDogJHV0aWxpdHktY29udGFpbmVyLWxhcmdlLW1heC13aWR0aDtcbiAgICAgICAgcGFkZGluZzogMCAkdXRpbGl0eS1jb250YWluZXItbGFyZ2UtcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIH1cblxufVxuXG4vKlxuICogTWljcm8gY2xlYXJmaXhcbiAqL1xuXG4udWstY29udGFpbmVyOmJlZm9yZSxcbi51ay1jb250YWluZXI6YWZ0ZXIge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGU7XG59XG5cbi51ay1jb250YWluZXI6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuXG4vKlxuICogQ2VudGVyIGNvbnRhaW5lclxuICovXG5cbi51ay1jb250YWluZXItY2VudGVyIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cblxuLyogQ2xlYXJpbmdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogTWljcm8gY2xlYXJmaXhcbiogYHRhYmxlLWNlbGxgIGlzIHVzZWQgd2l0aCBgOmJlZm9yZWAgYmVjYXVzZSBgdGFibGVgIGNyZWF0ZXMgYSAxcHggZ2FwIHdoZW4gaXQgYmVjb21lcyBhIGZsZXggaXRlbSwgb25seSBpbiBXZWJraXRcbiAqIGB0YWJsZWAgaXMgdXNlZCBhZ2FpbiB3aXRoIGA6YWZ0ZXJgIGJlY2F1c2UgYGNsZWFyYCBvbmx5IHdvcmtzIHdpdGggYmxvY2sgZWxlbWVudHMuXG4gKiBOb3RlOiBgZGlzcGxheTogYmxvY2tgIHdpdGggYG92ZXJmbG93OiBoaWRkZW5gIGlzIGN1cnJlbnRseSBub3Qgd29ya2luZyBpbiB0aGUgbGF0ZXN0IFNhZmFyaVxuICovXG5cbi51ay1jbGVhcmZpeDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgZGlzcGxheTogdGFibGUtY2VsbDtcbn1cblxuLnVrLWNsZWFyZml4OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IHRhYmxlO1xuICAgIGNsZWFyOiBib3RoO1xufVxuXG5cbi8qXG4gKiAgQ3JlYXRlIGEgbmV3IGJsb2NrIGZvcm1hdHRpbmcgY29udGV4dFxuICovXG5cbi51ay1uYmZjIHsgb3ZlcmZsb3c6IGhpZGRlbjsgfVxuXG4udWstbmJmYy1hbHQge1xuICAgIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gICAgd2lkdGg6IDEwMDAwcHg7XG59XG5cblxuLyogQWxpZ25tZW50IG9mIGJsb2NrIGVsZW1lbnRzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEZsb2F0IGJsb2Nrc1xuICogMS4gUHJldmVudCBjb250ZW50IG92ZXJmbG93IG9uIHNtYWxsIGRldmljZXNcbiAqL1xuXG4udWstZmxvYXQtbGVmdCB7IGZsb2F0OiBsZWZ0OyB9XG4udWstZmxvYXQtcmlnaHQgeyBmbG9hdDogcmlnaHQ7IH1cblxuLyogMSAqL1xuW2NsYXNzKj0ndWstZmxvYXQtJ10geyBtYXgtd2lkdGg6IDEwMCU7IH1cblxuXG4vKiBBbGlnbm1lbnQgb2YgaW1hZ2VzIGFuZCBvYmplY3RzXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEFsaWdubWVudFxuICovXG5cbltjbGFzcyo9J3VrLWFsaWduLSddIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tYm90dG9tOiAkdXRpbGl0eS1hbGlnbi12ZXJ0aWNhbDtcbn1cblxuLnVrLWFsaWduLWxlZnQge1xuICAgIG1hcmdpbi1yaWdodDogJHV0aWxpdHktYWxpZ24taG9yaXpvbnRhbDtcbiAgICBmbG9hdDogbGVmdDtcbn1cblxuLnVrLWFsaWduLXJpZ2h0IHtcbiAgICBtYXJnaW4tbGVmdDogJHV0aWxpdHktYWxpZ24taG9yaXpvbnRhbDtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi8qIFRhYmxldCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSB7XG5cbiAgICAudWstYWxpZ24tbWVkaXVtLWxlZnQge1xuICAgICAgICBtYXJnaW4tcmlnaHQ6ICR1dGlsaXR5LWFsaWduLWhvcml6b250YWw7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgIH1cblxuICAgIC51ay1hbGlnbi1tZWRpdW0tcmlnaHQge1xuICAgICAgICBtYXJnaW4tbGVmdDogJHV0aWxpdHktYWxpZ24taG9yaXpvbnRhbDtcbiAgICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cblxufVxuXG4udWstYWxpZ24tY2VudGVyIHtcbiAgICBtYXJnaW4tbGVmdDogYXV0bztcbiAgICBtYXJnaW4tcmlnaHQ6IGF1dG87XG59XG5cblxuLyogVmVydGljYWwgYWxpZ25tZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFJlbW92ZSB3aGl0ZXNwYWNlIGJldHdlZW4gY2hpbGQgZWxlbWVudHMgd2hlbiB1c2luZyBgaW5saW5lLWJsb2NrYFxuICovXG5cbi51ay12ZXJ0aWNhbC1hbGlnbiB7IGZvbnQtc2l6ZTogMC4wMDFweDsgfVxuXG4vKlxuICogIFRoZSBgdWstdmVydGljYWwtYWxpZ25gIGNvbnRhaW5lciBuZWVkcyBhIHNwZWNpZmljIGhlaWdodFxuICovXG5cbi51ay12ZXJ0aWNhbC1hbGlnbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLypcbiAqIFN1Yi1vYmplY3Qgd2hpY2ggY2FuIGhhdmUgYW55IGhlaWdodFxuICogMS4gUmVzZXQgd2hpdGVzcGFjZSBoYWNrXG4gKi9cblxuLnVrLXZlcnRpY2FsLWFsaWduLW1pZGRsZSxcbi51ay12ZXJ0aWNhbC1hbGlnbi1ib3R0b20ge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgLyogMSAqL1xuICAgIGZvbnQtc2l6ZTogMXJlbTtcbn1cblxuLnVrLXZlcnRpY2FsLWFsaWduLW1pZGRsZSB7IHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IH1cbi51ay12ZXJ0aWNhbC1hbGlnbi1ib3R0b20geyB2ZXJ0aWNhbC1hbGlnbjogYm90dG9tOyB9XG5cblxuLyogSGVpZ2h0XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIE1vcmUgcm9idXN0IGlmIHBhZGRpbmcgYW5kIGJvcmRlciBhcmUgdXNlZFxuICovXG5cbltjbGFzcyo9J3VrLWhlaWdodCddIHsgYm94LXNpemluZzogYm9yZGVyLWJveDsgfVxuXG4vKlxuICogVXNlZnVsIHRvIGV4dGVuZCB0aGUgYGh0bWxgIGFuZCBgYm9keWAgZWxlbWVudCB0byB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIHBhZ2UuXG4gKi9cblxuLnVrLWhlaWdodC0xLTEgeyBoZWlnaHQ6IDEwMCU7IH1cblxuLypcbiAqIFVzZWZ1bCB0byBjcmVhdGUgaW1hZ2UgdGVhc2Vyc1xuICovXG5cbi51ay1oZWlnaHQtdmlld3BvcnQge1xuICAgIGhlaWdodDogMTAwdmg7XG4gICAgbWluLWhlaWdodDogJHV0aWxpdHktaGVpZ2h0LXZpZXdwb3J0LW1pbi1oZWlnaHQ7XG59XG5cblxuLyogUmVzcG9uc2l2ZSBvYmplY3RzXG4gKiBOb3RlOiBJbWFnZXMgYXJlIGFscmVhZHkgcmVzcG9uc2l2ZSBieSBkZWZhdWx0LCBzZWUgQmFzZSBjb21wb25lbnRcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogMS4gQ29ycmVjdHMgYG1heC13aWR0aGAgYW5kIGBtYXgtaGVpZ2h0YCBiZWhhdmlvciBpZiBwYWRkaW5nIGFuZCBib3JkZXIgYXJlIHVzZWRcbiAqL1xuXG4udWstcmVzcG9uc2l2ZS13aWR0aCxcbi51ay1yZXNwb25zaXZlLWhlaWdodCB7IGJveC1zaXppbmc6IGJvcmRlci1ib3g7IH1cblxuLypcbiAqIFJlc3BvbnNpdmVuZXNzOiBTZXRzIGEgbWF4aW11bSB3aWR0aCByZWxhdGl2ZSB0byB0aGUgcGFyZW50IGFuZCBhdXRvIHNjYWxlcyB0aGUgaGVpZ2h0XG4gKiBgaW1wb3J0YW50YCBuZWVkZWQgdG8gb3ZlcnJpZGUgYHVrLWltZy1wcmVzZXJ2ZSBpbWdgXG4gKi9cblxuLnVrLXJlc3BvbnNpdmUtd2lkdGgge1xuICAgIG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgIGhlaWdodDogYXV0bztcbn1cblxuLypcbiAqIFJlc3BvbnNpdmVuZXNzOiBTZXRzIGEgbWF4aW11bSBoZWlnaHQgcmVsYXRpdmUgdG8gdGhlIHBhcmVudCBhbmQgYXV0byBzY2FsZXMgdGhlIHdpZHRoXG4gKiBPbmx5IHdvcmtzIGlmIHRoZSBwYXJlbnQgZWxlbWVudCBoYXMgYSBmaXhlZCBoZWlnaHQuXG4gKi9cblxuLnVrLXJlc3BvbnNpdmUtaGVpZ2h0IHtcbiAgICBtYXgtaGVpZ2h0OiAxMDAlO1xuICAgIHdpZHRoOiBhdXRvO1xufVxuXG5cbi8qIE1hcmdpblxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBDcmVhdGUgYSBibG9jayB3aXRoIHRoZSBzYW1lIG1hcmdpbiBvZiBhIHBhcmFncmFwaFxuICogQWRkIG1hcmdpbiBpZiBhZGphY2VudCBlbGVtZW50XG4gKi9cblxuLnVrLW1hcmdpbiB7IG1hcmdpbi1ib3R0b206ICR1dGlsaXR5LW1hcmdpbjsgfVxuKiArIC51ay1tYXJnaW4geyBtYXJnaW4tdG9wOiAkdXRpbGl0eS1tYXJnaW47IH1cblxuLnVrLW1hcmdpbi10b3AgeyBtYXJnaW4tdG9wOiAkdXRpbGl0eS1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1ib3R0b20geyBtYXJnaW4tYm90dG9tOiAkdXRpbGl0eS1tYXJnaW4gIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1sZWZ0IHsgbWFyZ2luLWxlZnQ6ICR1dGlsaXR5LW1hcmdpbiAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXJpZ2h0IHsgbWFyZ2luLXJpZ2h0OiAkdXRpbGl0eS1tYXJnaW4gIWltcG9ydGFudDsgfVxuXG4vKlxuICogTGFyZ2VyIG1hcmdpbnNcbiAqL1xuXG4udWstbWFyZ2luLWxhcmdlIHsgbWFyZ2luLWJvdHRvbTogJHV0aWxpdHktbWFyZ2luLWxhcmdlOyB9XG4qICsgLnVrLW1hcmdpbi1sYXJnZSB7IG1hcmdpbi10b3A6ICR1dGlsaXR5LW1hcmdpbi1sYXJnZTsgfVxuXG4udWstbWFyZ2luLWxhcmdlLXRvcCB7IG1hcmdpbi10b3A6ICR1dGlsaXR5LW1hcmdpbi1sYXJnZSAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLWxhcmdlLWJvdHRvbSB7IG1hcmdpbi1ib3R0b206ICR1dGlsaXR5LW1hcmdpbi1sYXJnZSAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLWxhcmdlLWxlZnQgeyBtYXJnaW4tbGVmdDogJHV0aWxpdHktbWFyZ2luLWxhcmdlICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tbGFyZ2UtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICR1dGlsaXR5LW1hcmdpbi1sYXJnZSAhaW1wb3J0YW50OyB9XG5cbi8qXG4gKiBTbWFsbGVyIG1hcmdpbnNcbiAqL1xuXG4udWstbWFyZ2luLXNtYWxsIHsgbWFyZ2luLWJvdHRvbTogJHV0aWxpdHktbWFyZ2luLXNtYWxsOyB9XG4qICsgLnVrLW1hcmdpbi1zbWFsbCB7IG1hcmdpbi10b3A6ICR1dGlsaXR5LW1hcmdpbi1zbWFsbDsgfVxuXG4udWstbWFyZ2luLXNtYWxsLXRvcCB7IG1hcmdpbi10b3A6ICR1dGlsaXR5LW1hcmdpbi1zbWFsbCAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXNtYWxsLWJvdHRvbSB7IG1hcmdpbi1ib3R0b206ICR1dGlsaXR5LW1hcmdpbi1zbWFsbCAhaW1wb3J0YW50OyB9XG4udWstbWFyZ2luLXNtYWxsLWxlZnQgeyBtYXJnaW4tbGVmdDogJHV0aWxpdHktbWFyZ2luLXNtYWxsICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tc21hbGwtcmlnaHQgeyBtYXJnaW4tcmlnaHQ6ICR1dGlsaXR5LW1hcmdpbi1zbWFsbCAhaW1wb3J0YW50OyB9XG5cbi8qXG4gKiBSZW1vdmUgbWFyZ2luc1xuICovXG5cbi51ay1tYXJnaW4tcmVtb3ZlIHsgbWFyZ2luOiAwICFpbXBvcnRhbnQ7IH1cbi51ay1tYXJnaW4tdG9wLXJlbW92ZSB7IG1hcmdpbi10b3A6IDAgIWltcG9ydGFudDsgfVxuLnVrLW1hcmdpbi1ib3R0b20tcmVtb3ZlIHsgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cblxuLyogUGFkZGluZ1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1wYWRkaW5nLXJlbW92ZSB7IHBhZGRpbmc6IDAgIWltcG9ydGFudDsgfVxuLnVrLXBhZGRpbmctdG9wLXJlbW92ZSB7IHBhZGRpbmctdG9wOiAwICFpbXBvcnRhbnQ7IH1cbi51ay1wYWRkaW5nLWJvdHRvbS1yZW1vdmUgeyBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50OyB9XG5cbi51ay1wYWRkaW5nLXZlcnRpY2FsLXJlbW92ZSB7XG4gICAgcGFkZGluZy10b3A6IDAgIWltcG9ydGFudDtcbiAgICBwYWRkaW5nLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4vKiBCb3JkZXJcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstYm9yZGVyLWNpcmNsZSB7IGJvcmRlci1yYWRpdXM6IDUwJTsgfVxuLnVrLWJvcmRlci1yb3VuZGVkIHsgYm9yZGVyLXJhZGl1czogJHV0aWxpdHktYm9yZGVyLXJvdW5kZWQ7IH1cblxuXG4vKiBIZWFkaW5nc1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1oZWFkaW5nLWxhcmdlIHtcbiAgICBmb250LXNpemU6ICR1dGlsaXR5LWhlYWRpbmctbGFyZ2Utc21hbGwtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkdXRpbGl0eS1oZWFkaW5nLWxhcmdlLXNtYWxsLWxpbmUtaGVpZ2h0O1xufVxuXG4vKiBUYWJsZXQgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LW1lZGl1bSkge1xuXG4gICAgLnVrLWhlYWRpbmctbGFyZ2Uge1xuICAgICAgICBmb250LXNpemU6ICR1dGlsaXR5LWhlYWRpbmctbGFyZ2UtZm9udC1zaXplO1xuICAgICAgICBsaW5lLWhlaWdodDogJHV0aWxpdHktaGVhZGluZy1sYXJnZS1saW5lLWhlaWdodDtcbiAgICB9XG5cbn1cblxuXG4vKiBMaW5rXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIExldCBsaW5rcyBhcHBlYXIgaW4gZGVmYXVsdCB0ZXh0IGNvbG9yXG4gKi9cblxuLnVrLWxpbmstbXV0ZWQsXG4udWstbGluay1tdXRlZCBhIHsgY29sb3I6ICR1dGlsaXR5LWxpbmstbXV0ZWQtY29sb3I7IH1cblxuLnVrLWxpbmstbXV0ZWQ6aG92ZXIsXG4udWstbGluay1tdXRlZCBhOmhvdmVyIHsgY29sb3I6ICR1dGlsaXR5LWxpbmstbXV0ZWQtaG92ZXItY29sb3I7IH1cblxuLypcbiAqIFJlc2V0IGxpbmsgc3R5bGVcbiAqL1xuXG4udWstbGluay1yZXNldCxcbi51ay1saW5rLXJlc2V0IGEsXG4udWstbGluay1yZXNldDpob3Zlcixcbi51ay1saW5rLXJlc2V0IGE6aG92ZXIsXG4udWstbGluay1yZXNldDpmb2N1cyxcbi51ay1saW5rLXJlc2V0IGE6Zm9jdXMge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuXG4vKiBTY3JvbGxhYmxlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEVuYWJsZSBzY3JvbGxpbmcgZm9yIHByZWZvcm1hdHRlZCB0ZXh0XG4gKi9cblxuLnVrLXNjcm9sbGFibGUtdGV4dCB7XG4gICAgaGVpZ2h0OiAkdXRpbGl0eS1zY3JvbGxhYmxlLXRleHQtaGVpZ2h0O1xuICAgIG92ZXJmbG93LXk6IHNjcm9sbDtcbiAgICAtd2Via2l0LW92ZXJmbG93LXNjcm9sbGluZzogdG91Y2g7XG4gICAgcmVzaXplOiBib3RoO1xufVxuXG4vKlxuICogQm94IHdpdGggc2Nyb2xsaW5nIGVuYWJsZWRcbiAqL1xuXG4udWstc2Nyb2xsYWJsZS1ib3gge1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgaGVpZ2h0OiAkdXRpbGl0eS1zY3JvbGxhYmxlLWJveC1oZWlnaHQ7XG4gICAgcGFkZGluZzogJHV0aWxpdHktc2Nyb2xsYWJsZS1ib3gtcGFkZGluZztcbiAgICBib3JkZXI6ICR1dGlsaXR5LXNjcm9sbGFibGUtYm94LWJvcmRlci13aWR0aCBzb2xpZCAkdXRpbGl0eS1zY3JvbGxhYmxlLWJveC1ib3JkZXI7XG4gICAgb3ZlcmZsb3c6IGF1dG87XG4gICAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuICAgIHJlc2l6ZTogYm90aDtcbiAgICBAaW5jbHVkZSBob29rLXNjcm9sbGFibGUtYm94KCk7XG59XG5cbi51ay1zY3JvbGxhYmxlLWJveCA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIE92ZXJmbG93XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW92ZXJmbG93LWhpZGRlbiB7IG92ZXJmbG93OiBoaWRkZW47IH1cblxuLypcbiAqIEVuYWJsZSBzY3JvbGxiYXJzIGlmIGNvbnRlbnQgaXMgY2xpcHBlZFxuICovXG5cbi51ay1vdmVyZmxvdy1jb250YWluZXIge1xuICAgIG92ZXJmbG93OiBhdXRvO1xuICAgIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbn1cblxuLnVrLW92ZXJmbG93LWNvbnRhaW5lciA+IDpsYXN0LWNoaWxkIHsgbWFyZ2luLWJvdHRvbTogMDsgfVxuXG5cbi8qIFBvc2l0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLXBvc2l0aW9uLWFic29sdXRlLFxuW2NsYXNzKj0ndWstcG9zaXRpb24tdG9wJ10sXG5bY2xhc3MqPSd1ay1wb3NpdGlvbi1ib3R0b20nXSB7IHBvc2l0aW9uOiBhYnNvbHV0ZSAhaW1wb3J0YW50OyB9XG5cbi8qIERvbid0IHVzZSBgd2lkdGg6IDEwMCVgIGJlY2F1c2UgaXQgaXMgd3JvbmcgaWYgdGhlIHBhcmVudCBoYXMgcGFkZGluZy4gKi9cbi51ay1wb3NpdGlvbi10b3Age1xuICAgIHRvcDogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4udWstcG9zaXRpb24tYm90dG9tIHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLnVrLXBvc2l0aW9uLXRvcC1sZWZ0IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbn1cblxuLnVrLXBvc2l0aW9uLXRvcC1yaWdodCB7XG4gICAgdG9wOiAwO1xuICAgIHJpZ2h0OiAwO1xufVxuXG4udWstcG9zaXRpb24tYm90dG9tLWxlZnQge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xufVxuXG4udWstcG9zaXRpb24tYm90dG9tLXJpZ2h0IHtcbiAgICBib3R0b206IDA7XG4gICAgcmlnaHQ6IDA7XG59XG5cbi8qXG4gKiBDb3ZlclxuICovXG5cbi51ay1wb3NpdGlvbi1jb3ZlciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDogMDtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogMDtcbn1cblxuLypcbiAqIFJlbGF0aXZlXG4gKi9cblxuLnVrLXBvc2l0aW9uLXJlbGF0aXZlIHsgcG9zaXRpb246IHJlbGF0aXZlICFpbXBvcnRhbnQ7IH1cblxuLypcbiAqIFotaW5kZXhcbiAqL1xuXG4udWstcG9zaXRpb24tei1pbmRleCB7IHotaW5kZXg6IDE7IH1cblxuXG4vKiBEaXNwbGF5XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIERpc3BsYXlcbiAqIDEuIFJlcXVpcmVkIGlmIGNoaWxkIGlzIGEgcmVzcG9uc2l2ZSBpbWFnZVxuICovXG5cbi51ay1kaXNwbGF5LWJsb2NrIHsgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDsgfVxuLnVrLWRpc3BsYXktaW5saW5lIHsgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7IH1cblxuLnVrLWRpc3BsYXktaW5saW5lLWJsb2NrIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICAvKiAxICovXG4gICAgbWF4LXdpZHRoOiAxMDAlO1xufVxuXG4vKlxuICogVmlzaWJpbGl0eVxuICogQXZvaWRzIHNldHRpbmcgZGlzcGxheSB0byBgYmxvY2tgIHNvIGl0IHdvcmtzIGFsc28gd2l0aCBgaW5saW5lLWJsb2NrYCBhbmQgYHRhYmxlYFxuICovXG5cbi8qIERlc2t0b3AgYW5kIGJpZ2dlciAqL1xuQG1lZGlhIChtaW4td2lkdGg6ICRicmVha3BvaW50LWxhcmdlKSB7XG5cbiAgICAudWstdmlzaWJsZS1zbWFsbCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC51ay12aXNpYmxlLW1lZGl1bSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC51ay1oaWRkZW4tbGFyZ2UgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBUYWJsZXRzIHBvcnRyYWl0ICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtKSBhbmQgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtbWVkaXVtLW1heCkge1xuXG4gICAgLnVrLXZpc2libGUtc21hbGwgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdmlzaWJsZS1sYXJnZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudCA7IH1cbiAgICAudWstaGlkZGVuLW1lZGl1bSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG59XG5cbi8qIFBob25lIGxhbmRzY2FwZSBhbmQgc21hbGxlciovXG5AbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtc21hbGwtbWF4KSB7XG5cbiAgICAudWstdmlzaWJsZS1tZWRpdW0geyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdmlzaWJsZS1sYXJnZSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIC51ay1oaWRkZW4tc21hbGwgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxufVxuXG4vKiBSZW1vdmUgZnJvbSB0aGUgZmxvdyBhbmQgc2NyZWVuIHJlYWRlcnMgb24gYW55IGRldmljZSAqL1xuLnVrLWhpZGRlbiB7XG4gICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbiAhaW1wb3J0YW50O1xufVxuXG4vKiBJdCdzIGhpZGRlbiwgYnV0IHN0aWxsIGFmZmVjdHMgbGF5b3V0ICovXG4udWstaW52aXNpYmxlIHsgdmlzaWJpbGl0eTogaGlkZGVuICFpbXBvcnRhbnQ7IH1cblxuLyogU2hvdyBvbiBob3ZlciAqL1xuLnVrLXZpc2libGUtaG92ZXI6aG92ZXIgLnVrLWhpZGRlbixcbi51ay12aXNpYmxlLWhvdmVyOmhvdmVyIC51ay1pbnZpc2libGUge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgdmlzaWJpbGl0eTogdmlzaWJsZSAhaW1wb3J0YW50O1xufVxuXG4udWstdmlzaWJsZS1ob3Zlci1pbmxpbmU6aG92ZXIgLnVrLWhpZGRlbixcbi51ay12aXNpYmxlLWhvdmVyLWlubGluZTpob3ZlciAudWstaW52aXNpYmxlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgICB2aXNpYmlsaXR5OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG59XG5cbi8qIEhpZGUgb24gdG91Y2ggKi9cbi51ay10b3VjaCAudWstaGlkZGVuLXRvdWNoLFxuLnVrLW5vdG91Y2ggLnVrLWhpZGRlbi1ub3RvdWNoIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLXV0aWxpdHktbWlzYygpO1xuXG4vLyBAbWl4aW4gaG9vay1jb250YWluZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1zY3JvbGxhYmxlLWJveCgpe31cbi8vIEBtaXhpbiBob29rLXV0aWxpdHktbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgRmxleFxuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyB0byBjcmVhdGUgbGF5b3V0cyB3aXRoIGZsZXhib3hcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1mbGV4LSpgXG4vL1xuLy8gVXNlZCBieTogICAgICAgICBDYXB0aW9uXG4vL1xuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBGbGV4XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLWZsZXgge1xuICAgIGRpc3BsYXk6IC1tcy1mbGV4Ym94O1xuICAgIGRpc3BsYXk6IC13ZWJraXQtZmxleDtcbiAgICBkaXNwbGF5OiBmbGV4O1xufVxuXG4udWstZmxleC1pbmxpbmUge1xuICAgIGRpc3BsYXk6IC1tcy1pbmxpbmUtZmxleGJveDtcbiAgICBkaXNwbGF5OiAtd2Via2l0LWlubGluZS1mbGV4O1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xufVxuXG4vKlxuICogRml4ZXMgaW5pdGlhbCBmbGV4LXNocmluayB2YWx1ZSBpbiBJRTEwXG4gKi9cblxuLnVrLWZsZXggPiAqLFxuLnVrLWZsZXgtaW5saW5lID4gKiB7IC1tcy1mbGV4LW5lZ2F0aXZlOiAxOyB9XG5cblxuLyogQWxpZ25tZW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIFZlcnRpY2FsIGFsaWdubWVudFxuICogRGVmYXVsdCB2YWx1ZSBpcyBgc3RyZXRjaGBcbiAqL1xuXG4vLyAudWstZmxleC1zdHJldGNoIHsgYWxpZ24taXRlbXM6IHN0cmV0Y2g7IH1cblxuLnVrLWZsZXgtdG9wIHtcbiAgICAtbXMtZmxleC1hbGlnbjogc3RhcnQ7XG4gICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1zdGFydDtcbiAgICBhbGlnbi1pdGVtczogZmxleC1zdGFydDtcbn1cblxuLnVrLWZsZXgtbWlkZGxlIHtcbiAgICAtbXMtZmxleC1hbGlnbjogY2VudGVyO1xuICAgIC13ZWJraXQtYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBhbGlnbi1pdGVtczogY2VudGVyO1xufVxuXG4udWstZmxleC1ib3R0b20ge1xuICAgIC1tcy1mbGV4LWFsaWduOiBlbmQ7XG4gICAgLXdlYmtpdC1hbGlnbi1pdGVtczogZmxleC1lbmQ7XG4gICAgYWxpZ24taXRlbXM6IGZsZXgtZW5kO1xufVxuXG4vKlxuICogSG9yaXpvbnRhbCBhbGlnbm1lbnRcbiAqIERlZmF1bHQgdmFsdWUgaXMgYGZsZXgtc3RhcnRgXG4gKi9cblxuLy8gLnVrLWZsZXgtbGVmdCB7IGp1c3RpZnktY29udGVudDogZmxleC1zdGFydDsgfVxuXG4udWstZmxleC1jZW50ZXIge1xuICAgIC1tcy1mbGV4LXBhY2s6IGNlbnRlcjtcbiAgICAtd2Via2l0LWp1c3RpZnktY29udGVudDogY2VudGVyO1xuICAgIGp1c3RpZnktY29udGVudDogY2VudGVyO1xufVxuXG4udWstZmxleC1yaWdodCB7XG4gICAgLW1zLWZsZXgtcGFjazogZW5kO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGZsZXgtZW5kO1xufVxuXG4udWstZmxleC1zcGFjZS1iZXR3ZWVuIHtcbiAgICAtbXMtZmxleC1wYWNrOiBqdXN0aWZ5O1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2Vlbjtcbn1cblxuLnVrLWZsZXgtc3BhY2UtYXJvdW5kIHtcbiAgICAtbXMtZmxleC1wYWNrOiBkaXN0cmlidXRlO1xuICAgIC13ZWJraXQtanVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAganVzdGlmeS1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG59XG5cblxuLyogRGlyZWN0aW9uXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLy8gLnVrLWZsZXgtcm93IHsgZmxleC1kaXJlY3Rpb246IHJvdzsgfVxuXG4udWstZmxleC1yb3ctcmV2ZXJzZSB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICAtd2Via2l0LWZsZXgtZGlyZWN0aW9uOiByb3ctcmV2ZXJzZTtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93LXJldmVyc2U7XG59XG5cbi51ay1mbGV4LWNvbHVtbiB7XG4gICAgLW1zLWZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG4gICAgLXdlYmtpdC1mbGV4LWRpcmVjdGlvbjogY29sdW1uO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW47XG59XG5cbi51ay1mbGV4LWNvbHVtbi1yZXZlcnNlIHtcbiAgICAtbXMtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIC13ZWJraXQtZmxleC1kaXJlY3Rpb246IGNvbHVtbi1yZXZlcnNlO1xuICAgIGZsZXgtZGlyZWN0aW9uOiBjb2x1bW4tcmV2ZXJzZTtcbn1cblxuXG4vKiBXcmFwXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLy8gRGVmYXVsdFxuLnVrLWZsZXgtbm93cmFwIHtcbiAgICAtbXMtZmxleC13cmFwOiBub3dyYXA7XG4gICAgLXdlYmtpdC1mbGV4LXdyYXA6IG5vd3JhcDtcbiAgICBmbGV4LXdyYXA6IG5vd3JhcDtcbn1cblxuLnVrLWZsZXgtd3JhcCB7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcDtcbiAgICAtd2Via2l0LWZsZXgtd3JhcDogd3JhcDtcbiAgICBmbGV4LXdyYXA6IHdyYXA7XG59XG5cbi51ay1mbGV4LXdyYXAtcmV2ZXJzZSB7XG4gICAgLW1zLWZsZXgtd3JhcDogd3JhcC1yZXZlcnNlO1xuICAgIC13ZWJraXQtZmxleC13cmFwOiB3cmFwLXJldmVyc2U7XG4gICAgZmxleC13cmFwOiB3cmFwLXJldmVyc2U7XG59XG5cbi8qXG4gKiBIb3Jpem9udGFsIGFsaWdubWVudFxuICogRGVmYXVsdCB2YWx1ZSBpcyBgc3RyZXRjaGBcbiAqL1xuXG4vLyAudWstZmxleC13cmFwLXN0cmV0Y2ggeyBhbGlnbi1jb250ZW50OiBzdHJldGNoOyB9XG5cbi51ay1mbGV4LXdyYXAtdG9wIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IHN0YXJ0O1xuICAgIC13ZWJraXQtYWxpZ24tY29udGVudDogZmxleC1zdGFydDtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LXN0YXJ0O1xufVxuXG4udWstZmxleC13cmFwLW1pZGRsZSB7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBjZW50ZXI7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBjZW50ZXI7XG4gICAgYWxpZ24tY29udGVudDogY2VudGVyO1xufVxuXG4udWstZmxleC13cmFwLWJvdHRvbSB7XG4gICAgLW1zLWZsZXgtbGluZS1wYWNrOiBlbmQ7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcbiAgICBhbGlnbi1jb250ZW50OiBmbGV4LWVuZDtcbn1cblxuLnVrLWZsZXgtd3JhcC1zcGFjZS1iZXR3ZWVuIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGp1c3RpZnk7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1iZXR3ZWVuO1xuICAgIGFsaWduLWNvbnRlbnQ6IHNwYWNlLWJldHdlZW47XG59XG5cbi51ay1mbGV4LXdyYXAtc3BhY2UtYXJvdW5kIHtcbiAgICAtbXMtZmxleC1saW5lLXBhY2s6IGRpc3RyaWJ1dGU7XG4gICAgLXdlYmtpdC1hbGlnbi1jb250ZW50OiBzcGFjZS1hcm91bmQ7XG4gICAgYWxpZ24tY29udGVudDogc3BhY2UtYXJvdW5kO1xufVxuXG5cbi8qIEl0ZW0gb3JkZXJpbmdcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogRGVmYXVsdCBpcyAwXG4gKi9cblxuLnVrLWZsZXgtb3JkZXItZmlyc3Qge1xuICAgIC1tcy1mbGV4LW9yZGVyOiAtMTtcbiAgICAtd2Via2l0LW9yZGVyOiAtMTtcbiAgICBvcmRlcjogLTE7XG59XG5cbi51ay1mbGV4LW9yZGVyLWxhc3Qge1xuICAgIC1tcy1mbGV4LW9yZGVyOiA5OTtcbiAgICAtd2Via2l0LW9yZGVyOiA5OTtcbiAgICBvcmRlcjogOTk7XG59XG5cblxuLyogUGhvbmUgbGFuZHNjYXBlIGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1zbWFsbCkge1xuXG4gICAgLnVrLWZsZXgtb3JkZXItZmlyc3Qtc21hbGwge1xuICAgICAgICAtbXMtZmxleC1vcmRlcjogLTE7XG4gICAgICAgIC13ZWJraXQtb3JkZXI6IC0xO1xuICAgICAgICBvcmRlcjogLTE7XG4gICAgfVxuXG4gICAgLnVrLWZsZXgtb3JkZXItbGFzdC1zbWFsbCB7XG4gICAgICAgIC1tcy1mbGV4LW9yZGVyOiA5OTtcbiAgICAgICAgLXdlYmtpdC1vcmRlcjogOTk7XG4gICAgICAgIG9yZGVyOiA5OTtcbiAgICB9XG5cbn1cblxuLyogVGFibGV0IGFuZCBiaWdnZXIgKi9cbkBtZWRpYSAobWluLXdpZHRoOiAkYnJlYWtwb2ludC1tZWRpdW0pIHtcblxuICAgIC51ay1mbGV4LW9yZGVyLWZpcnN0LW1lZGl1bSB7XG4gICAgICAgIC1tcy1mbGV4LW9yZGVyOiAtMTtcbiAgICAgICAgLXdlYmtpdC1vcmRlcjogLTE7XG4gICAgICAgIG9yZGVyOiAtMTtcbiAgICB9XG5cbiAgICAudWstZmxleC1vcmRlci1sYXN0LW1lZGl1bSB7XG4gICAgICAgIC1tcy1mbGV4LW9yZGVyOiA5OTtcbiAgICAgICAgLXdlYmtpdC1vcmRlcjogOTk7XG4gICAgICAgIG9yZGVyOiA5OTtcbiAgICB9XG5cbn1cblxuLyogRGVza3RvcCBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQtbGFyZ2UpIHtcblxuICAgIC51ay1mbGV4LW9yZGVyLWZpcnN0LWxhcmdlIHtcbiAgICAgICAgLW1zLWZsZXgtb3JkZXI6IC0xO1xuICAgICAgICAtd2Via2l0LW9yZGVyOiAtMTtcbiAgICAgICAgb3JkZXI6IC0xO1xuICAgIH1cblxuICAgIC51ay1mbGV4LW9yZGVyLWxhc3QtbGFyZ2Uge1xuICAgICAgICAtbXMtZmxleC1vcmRlcjogOTk7XG4gICAgICAgIC13ZWJraXQtb3JkZXI6IDk5O1xuICAgICAgICBvcmRlcjogOTk7XG4gICAgfVxuXG59XG5cbi8qIExhcmdlIHNjcmVlbiBhbmQgYmlnZ2VyICovXG5AbWVkaWEgKG1pbi13aWR0aDogJGJyZWFrcG9pbnQteGxhcmdlKSB7XG5cbiAgICAudWstZmxleC1vcmRlci1maXJzdC14bGFyZ2Uge1xuICAgICAgICAtbXMtZmxleC1vcmRlcjogLTE7XG4gICAgICAgIC13ZWJraXQtb3JkZXI6IC0xO1xuICAgICAgICBvcmRlcjogLTE7XG4gICAgfVxuXG4gICAgLnVrLWZsZXgtb3JkZXItbGFzdC14bGFyZ2Uge1xuICAgICAgICAtbXMtZmxleC1vcmRlcjogOTk7XG4gICAgICAgIC13ZWJraXQtb3JkZXI6IDk5O1xuICAgICAgICBvcmRlcjogOTk7XG4gICAgfVxuXG59XG5cblxuXG4vKiBJdGVtIGRpbWVuc2lvbnNcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4vKlxuICogSW5pdGlhbDogMCAxIGF1dG9cbiAqIENvbnRlbnQgZGltZW5zaW9ucywgYnV0IHNocmlua3NcbiAqL1xuXG4vKlxuICogTm8gRmxleDogMCAwIGF1dG9cbiAqIENvbnRlbnQgZGltZW5zaW9uc1xuICovXG5cbi51ay1mbGV4LWl0ZW0tbm9uZSB7XG4gICAgLW1zLWZsZXg6IG5vbmU7XG4gICAgLXdlYmtpdC1mbGV4OiBub25lO1xuICAgIGZsZXg6IG5vbmU7XG59XG5cbi8qXG4gKiBSZWxhdGl2ZSBGbGV4OiAxIDEgYXV0b1xuICogU3BhY2UgaXMgYWxsb2NhdGVkIGNvbnNpZGVyaW5nIGNvbnRlbnRcbiAqIDEuIEZpeGVzIGZsZXgtc2hyaW5rIHZhbHVlIGluIElFMTBcbiAqL1xuXG4udWstZmxleC1pdGVtLWF1dG8ge1xuICAgIC1tcy1mbGV4OiBhdXRvO1xuICAgIC13ZWJraXQtZmxleDogYXV0bztcbiAgICBmbGV4OiBhdXRvO1xuICAgIC8qIDEgKi9cbiAgICAtbXMtZmxleC1uZWdhdGl2ZTogMTtcbn1cblxuLypcbiAqIEFic29sdXRlIEZsZXg6IDEgMSAwJVxuICogU3BhY2UgaXMgYWxsb2NhdGVkIHNvbGVseSBiYXNlZCBvbiBmbGV4XG4gKi9cblxuLnVrLWZsZXgtaXRlbS0xIHtcbiAgICAtbXMtZmxleDogMTtcbiAgICAtd2Via2l0LWZsZXg6IDE7XG4gICAgZmxleDogMTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stZmxleC1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLWZsZXgtbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIENvbnRyYXN0XG4vLyBEZXNjcmlwdGlvbjogICAgIFV0aWxpdHkgY2xhc3MgdG8gYWRqdXN0IGNvbG9ycyBmb3IgZGFyayBvciBjb2xvcmVkIGJsb2Nrc1xuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWNvbnRyYXN0YFxuLy9cbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5cbi8vIFZhcmlhYmxlc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiRjb250cmFzdC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGNvbnRyYXN0LWludmVydGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG5cbi8vXG4vLyBDb21wb25lbnRzXG4vL1xuXG4kY29udHJhc3QtYmFzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWNvbG9yICFkZWZhdWx0O1xuXG4kY29udHJhc3QtYmFzZS1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgZmFkZSgkY29udHJhc3QtY29sb3IsIDcwJSkgIWRlZmF1bHQ7XG4kY29udHJhc3QtYmFzZS1saW5rLXRleHQtZGVjb3JhdGlvbjogICAgICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRjb250cmFzdC1iYXNlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3QtYmFzZS1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjogICAgICAgdW5kZXJsaW5lICFkZWZhdWx0O1xuXG4kY29udHJhc3QtYmFzZS1jb2RlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWNvbG9yICFkZWZhdWx0O1xuJGNvbnRyYXN0LWJhc2UtZW0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICRjb250cmFzdC1jb2xvciAhZGVmYXVsdDtcblxuJGNvbnRyYXN0LWJhc2UtaGVhZGluZy1jb2xvcjogICAgICAgICAgICAgICAgICAgICRjb250cmFzdC1jb2xvciAhZGVmYXVsdDtcblxuJGNvbnRyYXN0LWJhc2UtaHItYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgIGZhZGUoJGNvbnRyYXN0LWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuXG4kY29udHJhc3QtbmF2LXNpZGUtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWNvbG9yICFkZWZhdWx0O1xuJGNvbnRyYXN0LW5hdi1zaWRlLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgIGZhZGUoJGNvbnRyYXN0LWNvbG9yLCAxMCUpICFkZWZhdWx0O1xuJGNvbnRyYXN0LW5hdi1zaWRlLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICRjb250cmFzdC1jb2xvciAhZGVmYXVsdDtcbiRjb250cmFzdC1uYXYtc2lkZS1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3QtbmF2LXNpZGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWludmVydGVkLWNvbG9yICFkZWZhdWx0O1xuJGNvbnRyYXN0LW5hdi1zaWRlLWhlYWRlci1jb2xvcjogICAgICAgICAgICAgICAgICRjb250cmFzdC1jb2xvciAhZGVmYXVsdDtcbiRjb250cmFzdC1uYXYtc2lkZS1kaXZpZGVyLWJvcmRlcjogICAgICAgICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgMjAlKSAhZGVmYXVsdDtcbiRjb250cmFzdC1uYXYtc2lkZS1uZXN0ZWQtY29sb3I6ICAgICAgICAgICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgNzAlKSAhZGVmYXVsdDtcbiRjb250cmFzdC1uYXYtc2lkZS1uZXN0ZWQtaG92ZXItY29sb3I6ICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG5cbiRjb250cmFzdC1zdWJuYXYtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgNzAlKSAhZGVmYXVsdDtcbiRjb250cmFzdC1zdWJuYXYtaG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3Qtc3VibmF2LWhvdmVyLXRleHQtZGVjb3JhdGlvbjogICAgICAgICAgbm9uZSAhZGVmYXVsdDtcbiRjb250cmFzdC1zdWJuYXYtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG5cbiRjb250cmFzdC1zdWJuYXYtbGluZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuJGNvbnRyYXN0LXN1Ym5hdi1waWxsLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgIGZhZGUoJGNvbnRyYXN0LWNvbG9yLCA3MCUpICFkZWZhdWx0O1xuJGNvbnRyYXN0LXN1Ym5hdi1waWxsLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRjb250cmFzdC1pbnZlcnRlZC1jb2xvciAhZGVmYXVsdDtcbiRjb250cmFzdC1zdWJuYXYtcGlsbC1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3Qtc3VibmF2LXBpbGwtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgJGNvbnRyYXN0LWludmVydGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kY29udHJhc3QtdGFiLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFkZSgkY29udHJhc3QtY29sb3IsIDIwJSkgIWRlZmF1bHQ7XG4kY29udHJhc3QtdGFiLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmFkZSgkY29udHJhc3QtY29sb3IsIDcwJSkgIWRlZmF1bHQ7XG4kY29udHJhc3QtdGFiLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgZmFkZSgkY29udHJhc3QtY29sb3IsIDcwJSkgIWRlZmF1bHQ7XG4kY29udHJhc3QtdGFiLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgZmFkZSgkY29udHJhc3QtY29sb3IsIDcwJSkgIWRlZmF1bHQ7XG4kY29udHJhc3QtdGFiLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWludmVydGVkLWNvbG9yICFkZWZhdWx0O1xuJGNvbnRyYXN0LXRhYi1hY3RpdmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgIGZhZGUoJGNvbnRyYXN0LWNvbG9yLCAyMCUpICFkZWZhdWx0O1xuJGNvbnRyYXN0LXRhYi1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICRjb250cmFzdC1jb2xvciAhZGVmYXVsdDtcbiRjb250cmFzdC10YWItYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICAkY29udHJhc3QtaW52ZXJ0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRjb250cmFzdC1saXN0LWxpbmUtYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuJGNvbnRyYXN0LWZvcm0tYm9yZGVyOiAgICAgICAgICAgICAgICAgICAgICAgICAgIGZhZGUoJGNvbnRyYXN0LWNvbG9yLCA4MCUpICFkZWZhdWx0O1xuJGNvbnRyYXN0LWZvcm0tYmFja2dyb3VuZDogICAgICAgICAgICAgICAgICAgICAgIGZhZGUoJGNvbnRyYXN0LWNvbG9yLCA4MCUpICFkZWZhdWx0O1xuJGNvbnRyYXN0LWZvcm0tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgICRjb250cmFzdC1pbnZlcnRlZC1jb2xvciAhZGVmYXVsdDtcbiRjb250cmFzdC1mb3JtLWZvY3VzLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3QtZm9ybS1mb2N1cy1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWNvbG9yICFkZWZhdWx0O1xuJGNvbnRyYXN0LWZvcm0tZm9jdXMtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICRjb250cmFzdC1pbnZlcnRlZC1jb2xvciAhZGVmYXVsdDtcblxuJGNvbnRyYXN0LWZvcm0tcGxhY2Vob2xkZXItY29sb3I6ICAgICAgICAgICAgICAgIGZhZGUoJGNvbnRyYXN0LWludmVydGVkLWNvbG9yLCA3MCUpICFkZWZhdWx0O1xuXG4kY29udHJhc3QtYnV0dG9uLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWNvbG9yICFkZWZhdWx0O1xuJGNvbnRyYXN0LWJ1dHRvbi1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgICRjb250cmFzdC1pbnZlcnRlZC1jb2xvciAhZGVmYXVsdDtcbiRjb250cmFzdC1idXR0b24taG92ZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgODAlKSAhZGVmYXVsdDtcbiRjb250cmFzdC1idXR0b24taG92ZXItY29sb3I6ICAgICAgICAgICAgICAgICAgICAkY29udHJhc3QtaW52ZXJ0ZWQtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3QtYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgZmFkZSgkY29udHJhc3QtY29sb3IsIDcwJSkgIWRlZmF1bHQ7XG4kY29udHJhc3QtYnV0dG9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWludmVydGVkLWNvbG9yICFkZWZhdWx0O1xuXG4kY29udHJhc3QtYnV0dG9uLXByaW1hcnktYmFja2dyb3VuZDogICAgICAgICAgICAgIzAwYThlNiAhZGVmYXVsdDtcbiRjb250cmFzdC1idXR0b24tcHJpbWFyeS1jb2xvcjogICAgICAgICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3QtYnV0dG9uLXByaW1hcnktaG92ZXItYmFja2dyb3VuZDogICAgICAgIzM1YjNlZSAhZGVmYXVsdDtcbiRjb250cmFzdC1idXR0b24tcHJpbWFyeS1ob3Zlci1jb2xvcjogICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3QtYnV0dG9uLXByaW1hcnktYWN0aXZlLWJhY2tncm91bmQ6ICAgICAgIzAwOTFjYSAhZGVmYXVsdDtcbiRjb250cmFzdC1idXR0b24tcHJpbWFyeS1hY3RpdmUtY29sb3I6ICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG5cbiRjb250cmFzdC1pY29uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgNzAlKSAhZGVmYXVsdDtcbiRjb250cmFzdC1pY29uLWhvdmVyLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG5cbiRjb250cmFzdC1pY29uLWJ1dHRvbi1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAgICAkY29udHJhc3QtY29sb3IgIWRlZmF1bHQ7XG4kY29udHJhc3QtaWNvbi1idXR0b24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgJGNvbnRyYXN0LWludmVydGVkLWNvbG9yICFkZWZhdWx0O1xuJGNvbnRyYXN0LWljb24tYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ6ICAgICAgICAgIGZhZGUoJGNvbnRyYXN0LWNvbG9yLCA4MCUpICFkZWZhdWx0O1xuJGNvbnRyYXN0LWljb24tYnV0dG9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRjb250cmFzdC1pbnZlcnRlZC1jb2xvciAhZGVmYXVsdDtcbiRjb250cmFzdC1pY29uLWJ1dHRvbi1hY3RpdmUtYmFja2dyb3VuZDogICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgNzAlKSAhZGVmYXVsdDtcbiRjb250cmFzdC1pY29uLWJ1dHRvbi1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAkY29udHJhc3QtaW52ZXJ0ZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRjb250cmFzdC10ZXh0LW11dGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICBmYWRlKCRjb250cmFzdC1jb2xvciwgNjAlKSAhZGVmYXVsdDtcbiRjb250cmFzdC10ZXh0LXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICAjMmQ3MDkxICFkZWZhdWx0O1xuXG5cbi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgQ29tcG9uZW50OiBDb250cmFzdFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1jb250cmFzdCB7XG5cbiAgICBjb2xvcjogJGNvbnRyYXN0LWJhc2UtY29sb3I7XG5cbiAgICAvLyBCYXNlXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgICAvL1xuICAgIC8vIExpbmtcbiAgICAvL1xuXG4gICAgYTpub3QoW2NsYXNzXSksXG4gICAgLnVrLWxpbmsgIHtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1iYXNlLWxpbmstY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGNvbnRyYXN0LWJhc2UtbGluay10ZXh0LWRlY29yYXRpb247XG4gICAgfVxuXG4gICAgYTpub3QoW2NsYXNzXSk6aG92ZXIsXG4gICAgLnVrLWxpbms6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGNvbnRyYXN0LWJhc2UtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkY29udHJhc3QtYmFzZS1saW5rLWhvdmVyLXRleHQtZGVjb3JhdGlvbjtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIENvZGVcbiAgICAvL1xuXG4gICAgOm5vdChwcmUpID4gY29kZSxcbiAgICA6bm90KHByZSkgPiBrYmQsXG4gICAgOm5vdChwcmUpID4gc2FtcCB7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtYmFzZS1jb2RlLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LWJhc2UtY29kZSgpO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gRW1waGFzaXplXG4gICAgLy9cblxuICAgIGVtIHsgY29sb3I6ICRjb250cmFzdC1iYXNlLWVtLWNvbG9yOyB9XG5cbiAgICAvL1xuICAgIC8vIEhlYWRpbmdzXG4gICAgLy9cblxuICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYgeyBjb2xvcjogJGNvbnRyYXN0LWJhc2UtaGVhZGluZy1jb2xvcjsgfVxuXG4gICAgLy9cbiAgICAvLyBIb3Jpem9udGFsIHJ1bGVzXG4gICAgLy9cblxuICAgIGhyIHsgYm9yZGVyLXRvcC1jb2xvcjogJGNvbnRyYXN0LWJhc2UtaHItYm9yZGVyOyB9XG5cblxuICAgIC8vIE5hdlxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICAgLnVrLW5hdiBsaSA+IGEsXG4gICAgLnVrLW5hdiBsaSA+IGE6aG92ZXIgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cblxuICAgIC8vXG4gICAgLy8gTmF2IFNpdGVcbiAgICAvL1xuXG4gICAgLnVrLW5hdi1zaWRlID4gbGkgPiBhIHtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1uYXYtc2lkZS1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1uYXYtc2lkZSgpO1xuICAgIH1cblxuICAgIC51ay1uYXYtc2lkZSA+IGxpID4gYTpob3ZlcixcbiAgICAudWstbmF2LXNpZGUgPiBsaSA+IGE6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29udHJhc3QtbmF2LXNpZGUtaG92ZXItYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1uYXYtc2lkZS1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1uYXYtc2lkZS1ob3ZlcigpO1xuICAgIH1cblxuICAgIC51ay1uYXYtc2lkZSA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29udHJhc3QtbmF2LXNpZGUtYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtbmF2LXNpZGUtYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LW5hdi1zaWRlLWFjdGl2ZSgpO1xuICAgIH1cblxuICAgIC8vIE5hdiBoZWFkZXJcbiAgICAudWstbmF2LXNpZGUgLnVrLW5hdi1oZWFkZXIge1xuICAgICAgICBjb2xvcjogJGNvbnRyYXN0LW5hdi1zaWRlLWhlYWRlci1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1uYXYtc2lkZS1oZWFkZXIoKTtcbiAgICB9XG5cbiAgICAvLyBOYXYgZGl2aWRlclxuICAgIC51ay1uYXYtc2lkZSAudWstbmF2LWRpdmlkZXIge1xuICAgICAgICBib3JkZXItdG9wLWNvbG9yOiAkY29udHJhc3QtbmF2LXNpZGUtZGl2aWRlci1ib3JkZXI7XG4gICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3QtbmF2LXNpZGUtZGl2aWRlcigpO1xuICAgIH1cblxuICAgIC8vIE5lc3RlZCBpdGVtc1xuICAgIC51ay1uYXYtc2lkZSB1bCBhIHsgY29sb3I6ICRjb250cmFzdC1uYXYtc2lkZS1uZXN0ZWQtY29sb3I7IH1cbiAgICAudWstbmF2LXNpZGUgdWwgYTpob3ZlciB7IGNvbG9yOiAkY29udHJhc3QtbmF2LXNpZGUtbmVzdGVkLWhvdmVyLWNvbG9yOyB9XG5cblxuICAgIC8vIFN1Ym5hdlxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICAgLnVrLXN1Ym5hdiA+ICogPiBhIHtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1zdWJuYXYtY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1zdWJuYXYoKTtcbiAgICB9XG5cbiAgICAudWstc3VibmF2ID4gKiA+IGE6aG92ZXIsXG4gICAgLnVrLXN1Ym5hdiA+ICogPiBhOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1zdWJuYXYtaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogJGNvbnRyYXN0LXN1Ym5hdi1ob3Zlci10ZXh0LWRlY29yYXRpb247XG4gICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3Qtc3VibmF2LWhvdmVyKCk7XG4gICAgfVxuXG4gICAgLnVrLXN1Ym5hdiA+IC51ay1hY3RpdmUgPiBhIHtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1zdWJuYXYtYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LXN1Ym5hdi1hY3RpdmUoKTtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIFN1Ym5hdiBsaW5lXG4gICAgLy9cblxuICAgIC51ay1zdWJuYXYtbGluZSA+IDpudGgtY2hpbGQobisyKTpiZWZvcmUge1xuICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogJGNvbnRyYXN0LXN1Ym5hdi1saW5lLWJvcmRlcjtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1zdWJuYXYtbGluZS1kaXZpZGVyKCk7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBTdWJuYXYgcGlsbFxuICAgIC8vXG5cbiAgICAudWstc3VibmF2LXBpbGwgPiAqID4gYTpob3ZlcixcbiAgICAudWstc3VibmF2LXBpbGwgPiAqID4gYTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb250cmFzdC1zdWJuYXYtcGlsbC1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGNvbnRyYXN0LXN1Ym5hdi1waWxsLWhvdmVyLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3Qtc3VibmF2LXBpbGwtaG92ZXIoKTtcbiAgICB9XG5cbiAgICAudWstc3VibmF2LXBpbGwgPiAudWstYWN0aXZlID4gYSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb250cmFzdC1zdWJuYXYtcGlsbC1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1zdWJuYXYtcGlsbC1hY3RpdmUtY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3Qtc3VibmF2LXBpbGwtYWN0aXZlKCk7XG4gICAgfVxuXG5cbiAgICAvLyBUYWJcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAgIC51ay10YWIgeyBib3JkZXItYm90dG9tLWNvbG9yOiAkY29udHJhc3QtdGFiLWJvcmRlcjsgfVxuXG4gICAgLnVrLXRhYiA+IGxpID4gYSB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtdGFiLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LXRhYigpO1xuICAgIH1cblxuICAgIC51ay10YWIgPiBsaSA+IGE6aG92ZXIsXG4gICAgLnVrLXRhYiA+IGxpID4gYTpmb2N1cyxcbiAgICAudWstdGFiID4gbGkudWstb3BlbiA+IGEge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb250cmFzdC10YWItaG92ZXItYm9yZGVyO1xuICAgICAgICBiYWNrZ3JvdW5kOiAkY29udHJhc3QtdGFiLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtdGFiLWhvdmVyLWNvbG9yO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3QtdGFiLWhvdmVyKCk7XG4gICAgfVxuXG4gICAgLyogQWN0aXZlICovXG4gICAgLnVrLXRhYiA+IGxpLnVrLWFjdGl2ZSA+IGEge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb250cmFzdC10YWItYWN0aXZlLWJvcmRlcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb250cmFzdC10YWItYWN0aXZlLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtdGFiLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC10YWItYWN0aXZlKCk7XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBUYWIgY2VudGVyXG4gICAgLy9cblxuICAgIC51ay10YWItY2VudGVyIHsgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGNvbnRyYXN0LXRhYi1ib3JkZXI7IH1cblxuICAgIC8vXG4gICAgLy8gVGFiIGdyaWRcbiAgICAvL1xuXG4gICAgLnVrLXRhYi1ncmlkOmJlZm9yZSB7IGJvcmRlci10b3AtY29sb3I6ICRjb250cmFzdC10YWItYm9yZGVyOyB9XG5cblxuICAgIC8vIExpc3RcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAgIC51ay1saXN0LWxpbmUgPiBsaTpudGgtY2hpbGQobisyKSB7XG4gICAgICAgIGJvcmRlci10b3AtY29sb3I6ICRjb250cmFzdC1saXN0LWxpbmUtYm9yZGVyO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LWxpc3QtbGluZSgpO1xuICAgIH1cblxuXG4gICAgLy8gRm9ybVxuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4gICAgLnVrLWZvcm0gc2VsZWN0LFxuICAgIC51ay1mb3JtIHRleHRhcmVhLFxuICAgIC51ay1mb3JtIGlucHV0Om5vdChbdHlwZV0pLFxuICAgIC51ay1mb3JtIGlucHV0W3R5cGU9XCJ0ZXh0XCJdLFxuICAgIC51ay1mb3JtIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXSxcbiAgICAudWstZm9ybSBpbnB1dFt0eXBlPVwiZGF0ZXRpbWVcIl0sXG4gICAgLnVrLWZvcm0gaW5wdXRbdHlwZT1cImRhdGV0aW1lLWxvY2FsXCJdLFxuICAgIC51ay1mb3JtIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgIC51ay1mb3JtIGlucHV0W3R5cGU9XCJtb250aFwiXSxcbiAgICAudWstZm9ybSBpbnB1dFt0eXBlPVwidGltZVwiXSxcbiAgICAudWstZm9ybSBpbnB1dFt0eXBlPVwid2Vla1wiXSxcbiAgICAudWstZm9ybSBpbnB1dFt0eXBlPVwibnVtYmVyXCJdLFxuICAgIC51ay1mb3JtIGlucHV0W3R5cGU9XCJlbWFpbFwiXSxcbiAgICAudWstZm9ybSBpbnB1dFt0eXBlPVwidXJsXCJdLFxuICAgIC51ay1mb3JtIGlucHV0W3R5cGU9XCJzZWFyY2hcIl0sXG4gICAgLnVrLWZvcm0gaW5wdXRbdHlwZT1cInRlbFwiXSxcbiAgICAudWstZm9ybSBpbnB1dFt0eXBlPVwiY29sb3JcIl0ge1xuICAgICAgICBib3JkZXItY29sb3I6ICRjb250cmFzdC1mb3JtLWJvcmRlcjtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbnRyYXN0LWZvcm0tYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1mb3JtLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNsaXA6IHBhZGRpbmctYm94O1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LWZvcm0oKTtcblxuICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGJvcmRlci1jb2xvcjogJGNvbnRyYXN0LWZvcm0tZm9jdXMtYm9yZGVyO1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGNvbnRyYXN0LWZvcm0tZm9jdXMtYmFja2dyb3VuZDtcbiAgICAgICAgICAgIGNvbG9yOiAkY29udHJhc3QtZm9ybS1mb2N1cy1jb2xvcjtcbiAgICAgICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3QtZm9ybS1mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLy9cbiAgICAvLyBQbGFjZWhvbGRlclxuICAgIC8vXG5cbiAgICAudWstZm9ybSA6LW1zLWlucHV0LXBsYWNlaG9sZGVyIHsgY29sb3I6ICRjb250cmFzdC1mb3JtLXBsYWNlaG9sZGVyLWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICAudWstZm9ybSA6Oi1tb3otcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbnRyYXN0LWZvcm0tcGxhY2Vob2xkZXItY29sb3I7IH1cbiAgICAudWstZm9ybSA6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgeyBjb2xvcjogJGNvbnRyYXN0LWZvcm0tcGxhY2Vob2xkZXItY29sb3I7IH1cblxuXG4gICAgLy8gQnV0dG9uXG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbiAgICAudWstYnV0dG9uIHtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1idXR0b24tY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQ6ICRjb250cmFzdC1idXR0b24tYmFja2dyb3VuZDtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1idXR0b24oKTtcbiAgICB9XG5cbiAgICAudWstYnV0dG9uOmhvdmVyLFxuICAgIC51ay1idXR0b246Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29udHJhc3QtYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtYnV0dG9uLWhvdmVyLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LWJ1dHRvbi1ob3ZlcigpO1xuICAgIH1cblxuICAgIC51ay1idXR0b246YWN0aXZlLFxuICAgIC51ay1idXR0b24udWstYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRyYXN0LWJ1dHRvbi1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICAgICAgY29sb3I6ICRjb250cmFzdC1idXR0b24tYWN0aXZlLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LWJ1dHRvbi1hY3RpdmUoKTtcbiAgICB9XG5cbiAgICAvL1xuICAgIC8vIEJ1dHRvbiBwcmltYXJ5XG4gICAgLy9cblxuICAgIC51ay1idXR0b24tcHJpbWFyeSB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250cmFzdC1idXR0b24tcHJpbWFyeS1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGNvbnRyYXN0LWJ1dHRvbi1wcmltYXJ5LWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LWJ1dHRvbi1wcmltYXJ5KCk7XG4gICAgfVxuXG4gICAgLnVrLWJ1dHRvbi1wcmltYXJ5OmhvdmVyLFxuICAgIC51ay1idXR0b24tcHJpbWFyeTpmb2N1cyB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb250cmFzdC1idXR0b24tcHJpbWFyeS1ob3Zlci1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGNvbnRyYXN0LWJ1dHRvbi1wcmltYXJ5LWhvdmVyLWNvbG9yO1xuICAgICAgICBAaW5jbHVkZSBob29rLWNvbnRyYXN0LWJ1dHRvbi1wcmltYXJ5LWhvdmVyKCk7XG4gICAgfVxuXG4gICAgLnVrLWJ1dHRvbi1wcmltYXJ5OmFjdGl2ZSxcbiAgICAudWstYnV0dG9uLXByaW1hcnkudWstYWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRyYXN0LWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGNvbnRyYXN0LWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1idXR0b24tcHJpbWFyeS1hY3RpdmUoKTtcbiAgICB9XG5cblxuICAgIC8vIEljb25cbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAgIC8vXG4gICAgLy8gSWNvbiBob3ZlclxuICAgIC8vXG5cbiAgICAudWstaWNvbi1ob3ZlciB7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtaWNvbi1ob3Zlci1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1pY29uLWhvdmVyKCk7XG4gICAgfVxuXG4gICAgLnVrLWljb24taG92ZXI6aG92ZXIge1xuICAgICAgICBjb2xvcjogJGNvbnRyYXN0LWljb24taG92ZXItaG92ZXItY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3QtaWNvbi1ob3Zlci1ob3ZlcigpO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gSWNvbiBidXR0b25cbiAgICAvL1xuXG4gICAgLnVrLWljb24tYnV0dG9uIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGNvbnRyYXN0LWljb24tYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtaWNvbi1idXR0b24tY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3QtaWNvbi1idXR0b24oKTtcbiAgICB9XG5cbiAgICAudWstaWNvbi1idXR0b246aG92ZXIsXG4gICAgLnVrLWljb24tYnV0dG9uOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRyYXN0LWljb24tYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICAgIGNvbG9yOiAkY29udHJhc3QtaWNvbi1idXR0b24taG92ZXItY29sb3I7XG4gICAgICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3QtaWNvbi1idXR0b24taG92ZXIoKTtcbiAgICB9XG5cbiAgICAudWstaWNvbi1idXR0b246YWN0aXZlIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbnRyYXN0LWljb24tYnV0dG9uLWFjdGl2ZS1iYWNrZ3JvdW5kO1xuICAgICAgICBjb2xvcjogJGNvbnRyYXN0LWljb24tYnV0dG9uLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgQGluY2x1ZGUgaG9vay1jb250cmFzdC1pY29uLWJ1dHRvbi1hY3RpdmUoKTtcbiAgICB9XG5cblxuICAgIC8vIFRleHRcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAgIC51ay10ZXh0LW11dGVkIHsgY29sb3I6ICRjb250cmFzdC10ZXh0LW11dGVkLWNvbG9yICFpbXBvcnRhbnQ7IH1cbiAgICAudWstdGV4dC1wcmltYXJ5IHsgY29sb3I6ICRjb250cmFzdC10ZXh0LXByaW1hcnktY29sb3IgIWltcG9ydGFudDsgfVxuXG5cbiAgICAvLyBNaXNjIGhvb2tcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuICAgIEBpbmNsdWRlIGhvb2stY29udHJhc3QtbWlzYygpO1xuXG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1iYXNlLWNvZGUoKXt9XG5cbi8vIEBtaXhpbiBob29rLWNvbnRyYXN0LW5hdi1zaWRlKCl7fVxuLy8gQG1peGluIGhvb2stY29udHJhc3QtbmF2LXNpZGUtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1uYXYtc2lkZS1hY3RpdmUoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1uYXYtc2lkZS1oZWFkZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1uYXYtc2lkZS1kaXZpZGVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1zdWJuYXYoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1zdWJuYXYtaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1zdWJuYXYtYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stY29udHJhc3Qtc3VibmF2LWxpbmUtZGl2aWRlcigpe31cbi8vIEBtaXhpbiBob29rLWNvbnRyYXN0LXN1Ym5hdi1waWxsLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stY29udHJhc3Qtc3VibmF2LXBpbGwtYWN0aXZlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC10YWIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC10YWItaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC10YWItYWN0aXZlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1saXN0LWxpbmUoKXt9XG5cbi8vIEBtaXhpbiBob29rLWNvbnRyYXN0LWZvcm0oKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1mb3JtLWZvY3VzKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1idXR0b24oKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1idXR0b24taG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1idXR0b24tYWN0aXZlKCl7fVxuLy8gQG1peGluIGhvb2stY29udHJhc3QtYnV0dG9uLXByaW1hcnkoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1idXR0b24tcHJpbWFyeS1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWNvbnRyYXN0LWJ1dHRvbi1wcmltYXJ5LWFjdGl2ZSgpe31cblxuLy8gQG1peGluIGhvb2stY29udHJhc3QtaWNvbi1ob3Zlcigpe31cbi8vIEBtaXhpbiBob29rLWNvbnRyYXN0LWljb24taG92ZXItaG92ZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1pY29uLWJ1dHRvbigpe31cbi8vIEBtaXhpbiBob29rLWNvbnRyYXN0LWljb24tYnV0dG9uLWhvdmVyKCl7fVxuLy8gQG1peGluIGhvb2stY29udHJhc3QtaWNvbi1idXR0b24tYWN0aXZlKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1jb250cmFzdC1taXNjKCl7fSIsIi8vIE5hbWU6ICAgICAgICAgICAgUHJpbnRcbi8vIERlc2NyaXB0aW9uOiAgICAgT3B0aW1pemUgcGFnZSBmb3IgcHJpbnRpbmdcbi8vXG4vLyBBZGFwdGVkIGZyb20gaHR0cDovL2dpdGh1Yi5jb20vaDVicC9odG1sNS1ib2lsZXJwbGF0ZVxuLy9cbi8vIE1vZGlmaWNhdGlvbnM6ICAgUmVtb3ZlZCBsaW5rIGBocmVmYCBhbmQgYHRpdGxlYCByZWxhdGVkIHJ1bGVzXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFByaW50XG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuQG1lZGlhIHByaW50IHtcblxuICAgICosXG4gICAgKjpiZWZvcmUsXG4gICAgKjphZnRlciB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiBibGFjayAhaW1wb3J0YW50O1xuICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgYSxcbiAgICBhOnZpc2l0ZWQgeyB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgfVxuXG4gICAgcHJlLFxuICAgIGJsb2NrcXVvdGUge1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgfVxuXG4gICAgdGhlYWQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IH1cblxuICAgIHRyLFxuICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgaW1nIHsgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7IH1cblxuICAgIEBwYWdlIHsgbWFyZ2luOiAwLjVjbTsgfVxuXG4gICAgcCxcbiAgICBoMixcbiAgICBoMyB7XG4gICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgIHdpZG93czogMztcbiAgICB9XG5cbiAgICBoMixcbiAgICBoMyB7IHBhZ2UtYnJlYWstYWZ0ZXI6IGF2b2lkOyB9XG5cbiAgIEBpbmNsdWRlIGhvb2stcHJpbnQoKTtcblxufVxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vIEBtaXhpbiBob29rLXByaW50KCl7fVxuIiwiLy8gTmFtZTogICAgICAgICAgICBBdXRvY29tcGxldGVcbi8vIERlc2NyaXB0aW9uOiAgICAgUHJvdmlkZXMgc3VnZ2VzdGlvbnMgd2hpbGUgeW91IHR5cGUgaW50byBhbiBpbnB1dCBmaWVsZFxuLy9cbi8vIENvbXBvbmVudDogICAgICAgYHVrLWF1dG9jb21wbGV0ZWBcbi8vXG4vLyBNb2RpZmllcjpcdCAgICAoTmF2KSBgdWstbmF2LWF1dG9jb21wbGV0ZWBcbi8vXG4vLyBTdGF0ZXM6ICAgICAgICAgIGB1ay1hY3RpdmVgXG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLy8gVmFyaWFibGVzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy8gTmF2IG1vZGlmaWVyXG4kbmF2LWF1dG9jb21wbGV0ZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXYtYXV0b2NvbXBsZXRlLWFjdGl2ZS1iYWNrZ3JvdW5kOiAgICAgICAgICAgICAjMDBhOGU2ICFkZWZhdWx0O1xuJG5hdi1hdXRvY29tcGxldGUtYWN0aXZlLWNvbG9yOiAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2LWF1dG9jb21wbGV0ZS1oZWFkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIzk5OSAhZGVmYXVsdDtcbiRuYXYtYXV0b2NvbXBsZXRlLWRpdmlkZXItYm9yZGVyOiAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdi1hdXRvY29tcGxldGUtZGl2aWRlci1ib3JkZXItd2lkdGg6ICAgICAgICAgIDFweCAhZGVmYXVsdDtcblxuXG4vKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgIENvbXBvbmVudDogQXV0b2NvbXBsZXRlXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIDEuIENvbnRhaW5lciB3aWR0aCBmaXRzIGl0cyBjb250ZW50XG4gKiAyLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dFxuICogMy4gUHJldmVudCBgaW5saW5lLWJsb2NrYCBjb25zZXF1ZW5jZXNcbiAqIDQuIFJlbW92ZSB0aGUgZ2FwIGJldHdlZW4gdGhlIGNvbnRhaW5lciBhbmQgaXRzIGNoaWxkIGVsZW1lbnRcbiAqL1xuXG4udWstYXV0b2NvbXBsZXRlIHtcbiAgICAvKiAxICovXG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIC8qIDIgKi9cbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLyogMyAqL1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAvKiA0ICovXG4gICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cblxuLyogTGVnYWN5IGRyb3Bkb3duIG1vZGlmaWVyICovXG4udWstZHJvcGRvd24tZmxpcCB7XG4gICAgbGVmdDogYXV0bztcbiAgICByaWdodDogMDtcbn1cblxuLyogTmF2IG1vZGlmaWVyIGB1ay1uYXYtYXV0b2NvbXBsZXRlYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBJdGVtc1xuICovXG5cbi51ay1uYXYtYXV0b2NvbXBsZXRlID4gbGkgPiBhIHtcbiAgICBjb2xvcjogJG5hdi1hdXRvY29tcGxldGUtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1uYXYtYXV0b2NvbXBsZXRlKCk7XG59XG5cbi8qXG4gKiBBY3RpdmVcbiAqIDEuIFJlbW92ZSBkZWZhdWx0IGZvY3VzIHN0eWxlXG4gKi9cblxuLnVrLW5hdi1hdXRvY29tcGxldGUgPiBsaS51ay1hY3RpdmUgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAkbmF2LWF1dG9jb21wbGV0ZS1hY3RpdmUtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5hdi1hdXRvY29tcGxldGUtYWN0aXZlLWNvbG9yO1xuICAgIC8qIDEgKi9cbiAgICBvdXRsaW5lOiBub25lO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LWF1dG9jb21wbGV0ZS1hY3RpdmUoKTtcbn1cblxuLypcbiAqIFN1Yi1vYmplY3Q6IGB1ay1uYXYtaGVhZGVyYFxuICovXG5cbi51ay1uYXYtYXV0b2NvbXBsZXRlIC51ay1uYXYtaGVhZGVyIHtcbiAgICBjb2xvcjogJG5hdi1hdXRvY29tcGxldGUtaGVhZGVyLWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LWF1dG9jb21wbGV0ZS1oZWFkZXIoKTtcbn1cblxuLypcbiAqIFN1Yi1vYmplY3Q6IGB1ay1uYXYtZGl2aWRlcmBcbiAqL1xuXG4udWstbmF2LWF1dG9jb21wbGV0ZSAudWstbmF2LWRpdmlkZXIge1xuICAgIGJvcmRlci10b3A6ICRuYXYtYXV0b2NvbXBsZXRlLWRpdmlkZXItYm9yZGVyLXdpZHRoIHNvbGlkICRuYXYtYXV0b2NvbXBsZXRlLWRpdmlkZXItYm9yZGVyO1xuICAgIEBpbmNsdWRlIGhvb2stbmF2LWF1dG9jb21wbGV0ZS1kaXZpZGVyKCk7XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLWF1dG9jb21wbGV0ZS1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLW5hdi1hdXRvY29tcGxldGUoKXt9XG4vLyBAbWl4aW4gaG9vay1uYXYtYXV0b2NvbXBsZXRlLWFjdGl2ZSgpe31cbi8vIEBtaXhpbiBob29rLW5hdi1hdXRvY29tcGxldGUtaGVhZGVyKCl7fVxuLy8gQG1peGluIGhvb2stbmF2LWF1dG9jb21wbGV0ZS1kaXZpZGVyKCl7fVxuXG4vLyBAbWl4aW4gaG9vay1hdXRvY29tcGxldGUtbWlzYygpe31cbiIsIi8vIE5hbWU6ICAgICAgICAgICAgTm90aWZ5XG4vLyBEZXNjcmlwdGlvbjogICAgIERlZmluZXMgc3R5bGVzIGZvciB0b2dnbGVhYmxlIG5vdGlmaWNhdGlvbnNcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1ub3RpZnlgXG4vL1xuLy8gU3ViLW9iamVjdHM6ICAgICBgdWstbm90aWZ5LW1lc3NhZ2VgXG4vL1xuLy8gTW9kaWZpZXJzOiAgICAgICBgdWstbm90aWZ5LXRvcC1jZW50ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZnktdG9wLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbm90aWZ5LWJvdHRvbS1sZWZ0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbm90aWZ5LWJvdHRvbS1jZW50ZXJgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZnktYm90dG9tLXJpZ2h0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstbm90aWZ5LW1lc3NhZ2UtcHJpbWFyeWBcbi8vICAgICAgICAgICAgICAgICAgYHVrLW5vdGlmeS1tZXNzYWdlLXN1Y2Nlc3NgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1ub3RpZnktbWVzc2FnZS13YXJuaW5nYFxuLy8gICAgICAgICAgICAgICAgICBgdWstbm90aWZ5LW1lc3NhZ2UtZGFuZ2VyYFxuLy9cbi8vIFVzZXM6ICAgICAgICAgICAgQ2xvc2U6IGB1ay1jbG9zZWBcbi8vXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuXG4vLyBWYXJpYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4kbm90aWZ5LXBvc2l0aW9uOiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRub3RpZnktei1pbmRleDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxMDQwICFkZWZhdWx0O1xuJG5vdGlmeS13aWR0aDogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDM1MHB4ICFkZWZhdWx0O1xuXG4kbm90aWZ5LW1lc3NhZ2UtbWFyZ2luLWJvdHRvbTogICAgICAgICAgICAgICAgICAgMTBweCAhZGVmYXVsdDtcbiRub3RpZnktbWVzc2FnZS1wYWRkaW5nOiAgICAgICAgICAgICAgICAgICAgICAgICAxNXB4ICFkZWZhdWx0O1xuJG5vdGlmeS1tZXNzYWdlLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAgICAgICAgICM0NDQgIWRlZmF1bHQ7XG4kbm90aWZ5LW1lc3NhZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRub3RpZnktbWVzc2FnZS1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgICAgICAxNnB4ICFkZWZhdWx0O1xuJG5vdGlmeS1tZXNzYWdlLWxpbmUtaGVpZ2h0OiAgICAgICAgICAgICAgICAgICAgIDIycHggIWRlZmF1bHQ7XG5cbiRub3RpZnktbWVzc2FnZS1wcmltYXJ5LWJhY2tncm91bmQ6ICAgICAgICAgICAgICAjZWJmN2ZkICFkZWZhdWx0O1xuJG5vdGlmeS1tZXNzYWdlLXByaW1hcnktY29sb3I6ICAgICAgICAgICAgICAgICAgICMyZDcwOTEgIWRlZmF1bHQ7XG5cbiRub3RpZnktbWVzc2FnZS1zdWNjZXNzLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAjZjJmYWUzICFkZWZhdWx0O1xuJG5vdGlmeS1tZXNzYWdlLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAgICAgICM2NTlmMTMgIWRlZmF1bHQ7XG5cbiRub3RpZnktbWVzc2FnZS13YXJuaW5nLWJhY2tncm91bmQ6ICAgICAgICAgICAgICAjZmZmY2ViICFkZWZhdWx0O1xuJG5vdGlmeS1tZXNzYWdlLXdhcm5pbmctY29sb3I6ICAgICAgICAgICAgICAgICAgICNlMjgzMjcgIWRlZmF1bHQ7XG5cbiRub3RpZnktbWVzc2FnZS1kYW5nZXItYmFja2dyb3VuZDogICAgICAgICAgICAgICAjZmZmMWYwICFkZWZhdWx0O1xuJG5vdGlmeS1tZXNzYWdlLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICNkODUwMzAgIWRlZmF1bHQ7XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IE5vdGlmeVxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiBNZXNzYWdlIGNvbnRhaW5lciBmb3IgcG9zaXRpb25pbmdcbiAqL1xuXG4udWstbm90aWZ5IHtcbiAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgdG9wOiAkbm90aWZ5LXBvc2l0aW9uO1xuICAgIGxlZnQ6ICRub3RpZnktcG9zaXRpb247XG4gICAgei1pbmRleDogJG5vdGlmeS16LWluZGV4O1xuICAgIGJveC1zaXppbmc6IGJvcmRlci1ib3g7XG4gICAgd2lkdGg6ICRub3RpZnktd2lkdGg7XG4gICAgQGluY2x1ZGUgaG9vay1ub3RpZnkoKTtcbn1cblxuXG4vKiBQb3NpdGlvbiBtb2RpZmllcnNcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1ub3RpZnktdG9wLXJpZ2h0LFxuLnVrLW5vdGlmeS1ib3R0b20tcmlnaHQgIHtcbiAgICBsZWZ0OiBhdXRvO1xuICAgIHJpZ2h0OiAkbm90aWZ5LXBvc2l0aW9uO1xufVxuXG4udWstbm90aWZ5LXRvcC1jZW50ZXIsXG4udWstbm90aWZ5LWJvdHRvbS1jZW50ZXIge1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogKCRub3RpZnktd2lkdGggLyAtMik7XG59XG5cbi51ay1ub3RpZnktYm90dG9tLWxlZnQsXG4udWstbm90aWZ5LWJvdHRvbS1yaWdodCxcbi51ay1ub3RpZnktYm90dG9tLWNlbnRlciB7XG4gICAgdG9wOiBhdXRvO1xuICAgIGJvdHRvbTogJG5vdGlmeS1wb3NpdGlvbjtcbn1cblxuXG4vKiBSZXNwb25zaXZlbmVzc1xuPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLyogUGhvbmVzIHBvcnRyYWl0IGFuZCBzbWFsbGVyICovXG5AbWVkaWEgKG1heC13aWR0aDogJGJyZWFrcG9pbnQtbWluaS1tYXgpIHtcblxuICAgIC8qXG4gICAgICogRml0IGluIHNtYWxsIHNjcmVlblxuICAgICAqL1xuXG4gICAgLnVrLW5vdGlmeSB7XG4gICAgICAgIGxlZnQ6IDEwcHg7XG4gICAgICAgIHJpZ2h0OiAxMHB4O1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgIH1cblxufVxuXG5cbi8qIFN1Yi1vYmplY3Q6IGB1ay1ub3RpZnktbWVzc2FnZWBcbj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1ub3RpZnktbWVzc2FnZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbi1ib3R0b206ICRub3RpZnktbWVzc2FnZS1tYXJnaW4tYm90dG9tO1xuICAgIHBhZGRpbmc6ICRub3RpZnktbWVzc2FnZS1wYWRkaW5nO1xuICAgIGJhY2tncm91bmQ6ICRub3RpZnktbWVzc2FnZS1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbm90aWZ5LW1lc3NhZ2UtY29sb3I7XG4gICAgZm9udC1zaXplOiAkbm90aWZ5LW1lc3NhZ2UtZm9udC1zaXplO1xuICAgIGxpbmUtaGVpZ2h0OiAkbm90aWZ5LW1lc3NhZ2UtbGluZS1oZWlnaHQ7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIEBpbmNsdWRlIGhvb2stbm90aWZ5LW1lc3NhZ2UoKTtcbn1cblxuXG4vKiBDbG9zZSBpbiBub3RpZnlcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbm90aWZ5LW1lc3NhZ2UgPiAudWstY2xvc2Uge1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICBmbG9hdDogcmlnaHQ7XG59XG5cbi51ay1ub3RpZnktbWVzc2FnZTpob3ZlciA+IC51ay1jbG9zZSB7IHZpc2liaWxpdHk6IHZpc2libGU7IH1cblxuXG4vKiBNb2RpZmllcjogYHVrLWFsZXJ0LWluZm9gXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLnVrLW5vdGlmeS1tZXNzYWdlLXByaW1hcnkge1xuICAgIGJhY2tncm91bmQ6ICRub3RpZnktbWVzc2FnZS1wcmltYXJ5LWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRub3RpZnktbWVzc2FnZS1wcmltYXJ5LWNvbG9yO1xuICAgIEBpbmNsdWRlIGhvb2stbm90aWZ5LW1lc3NhZ2UtcHJpbWFyeSgpO1xufVxuXG5cbi8qIE1vZGlmaWVyOiBgdWstYWxlcnQtc3VjY2Vzc2BcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbm90aWZ5LW1lc3NhZ2Utc3VjY2VzcyB7XG4gICAgYmFja2dyb3VuZDogJG5vdGlmeS1tZXNzYWdlLXN1Y2Nlc3MtYmFja2dyb3VuZDtcbiAgICBjb2xvcjogJG5vdGlmeS1tZXNzYWdlLXN1Y2Nlc3MtY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1ub3RpZnktbWVzc2FnZS1zdWNjZXNzKCk7XG59XG5cblxuLyogTW9kaWZpZXI6IGB1ay1ub3RpZnktbWVzc2FnZS13YXJuaW5nYFxuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi51ay1ub3RpZnktbWVzc2FnZS13YXJuaW5nIHtcbiAgICBiYWNrZ3JvdW5kOiAkbm90aWZ5LW1lc3NhZ2Utd2FybmluZy1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkbm90aWZ5LW1lc3NhZ2Utd2FybmluZy1jb2xvcjtcbiAgICBAaW5jbHVkZSBob29rLW5vdGlmeS1tZXNzYWdlLXdhcm5pbmcoKTtcbn1cblxuXG4vKiBNb2RpZmllcjogYHVrLW5vdGlmeS1tZXNzYWdlLWRhbmdlcmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstbm90aWZ5LW1lc3NhZ2UtZGFuZ2VyIHtcbiAgICBiYWNrZ3JvdW5kOiAkbm90aWZ5LW1lc3NhZ2UtZGFuZ2VyLWJhY2tncm91bmQ7XG4gICAgY29sb3I6ICRub3RpZnktbWVzc2FnZS1kYW5nZXItY29sb3I7XG4gICAgQGluY2x1ZGUgaG9vay1ub3RpZnktbWVzc2FnZS1kYW5nZXIoKTtcbn1cblxuXG4vLyBIb29rc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbkBpbmNsdWRlIGhvb2stbm90aWZ5LW1pc2MoKTtcblxuLy8gQG1peGluIGhvb2stbm90aWZ5KCl7fVxuLy8gQG1peGluIGhvb2stbm90aWZ5LW1lc3NhZ2UoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZnktbWVzc2FnZS1wcmltYXJ5KCl7fVxuLy8gQG1peGluIGhvb2stbm90aWZ5LW1lc3NhZ2Utc3VjY2Vzcygpe31cbi8vIEBtaXhpbiBob29rLW5vdGlmeS1tZXNzYWdlLXdhcm5pbmcoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZnktbWVzc2FnZS1kYW5nZXIoKXt9XG4vLyBAbWl4aW4gaG9vay1ub3RpZnktbWlzYygpe30iLCIvLyBOYW1lOiAgICAgICAgICAgIFNsaWRlc2hvd1xuLy8gRGVzY3JpcHRpb246ICAgICBEZWZpbmVzIHN0eWxlcyBmb3IgYSBzbGlkZXNob3dcbi8vXG4vLyBDb21wb25lbnQ6ICAgICAgIGB1ay1zbGlkZXNob3dgXG4vL1xuLy8gTW9kaWZpZXI6ICAgICAgICBgdWstc2xpZGVzaG93LWZ1bGxzY3JlZW5gXG4vL1xuLy8gU3ViLW1vZGlmaWVyOiAgICBgdWstc2xpZGVzaG93LWZhZGUtb3V0YFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2xpZGVzaG93LXNjcm9sbC1mb3J3YXJkLWluYFxuLy8gICAgICAgICAgICAgICAgICBgdWstc2xpZGVzaG93LXNjcm9sbC1mb3J3YXJkLW91dGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNsaWRlc2hvdy1zY3JvbGwtYmFja3dhcmQtaW5gXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zbGlkZXNob3ctc2Nyb2xsLWJhY2t3YXJkLW91dGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNsaWRlc2hvdy1zY2FsZS1vdXRgXG4vLyAgICAgICAgICAgICAgICAgIGB1ay1zbGlkZXNob3ctc3dpcGUtZm9yd2FyZC1pbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNsaWRlc2hvdy1zd2lwZS1mb3J3YXJkLW91dGBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNsaWRlc2hvdy1zd2lwZS1iYWNrd2FyZC1pbmBcbi8vICAgICAgICAgICAgICAgICAgYHVrLXNsaWRlc2hvdy1zd2lwZS1iYWNrd2FyZC1vdXRgXG4vL1xuLy8gU3RhdGVzOiAgICAgICAgICBgdWstYWN0aXZlYFxuLy9cbi8vIFVzZXM6ICAgICAgICAgICAgQ292ZXIgKEpTKVxuLy9cbi8vIE1hcmt1cDpcbi8vXG4vLyA8IS0tIHVrLXNsaWRlc2hvdyAtLT5cbi8vIDx1bCBjbGFzcz1cInVrLXNsaWRlc2hvd1wiIGRhdGEtdWstc2xpZGVzaG93PlxuLy8gICAgIDxsaT48aW1nIHNyYz1cIlwiIHdpZHRoPVwiXCIgaGVpZ2h0PVwiXCIgYWx0PVwiXCI+PC9saT5cbi8vIDwvdWw+XG4vL1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cblxuLyogPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICBDb21wb25lbnQ6IFNsaWRlc2hvd1xuID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovXG5cbi8qXG4gKiAxLiBDcmVhdGUgcG9zaXRpb24gY29udGV4dFxuICogMi4gQ3JlYXRlIHN0YWNraW5nIGNvbnRleHQgdG8gcHJldmVudCB6LWluZGV4IGlzc3VlcyB3aXRoIG90aGVyIGNvbXBvbmVudHNcbiAqIDMuIFNldCB3aWR0aCBiZWNhdXNlIGNoaWxkIGVsZW1lbnRzIGFyZSBwb3NpdGlvbmVkIGFic29sdXRlLiBIZWlnaHQgaXMgc2V0IHZpYSBKU1xuICogNC4gUmVzZXQgbGlzdCBzdHlsZVxuICogNS4gQ2xpcCBjaGlsZCBlbGVtZW50c1xuICogNi4gRGVhY3RpdmF0ZSBicm93c2VyIGhpc3RvcnkgbmF2aWdhdGlvbiBpbiBJRTExXG4gKi9cblxuLnVrLXNsaWRlc2hvdyB7XG4gICAgLyogMSAqL1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAvKiAyICovXG4gICAgei1pbmRleDogMDtcbiAgICAvKiAzICovXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgLyogNCAqL1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgLyogNSAqL1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgLyogNiAqL1xuICAgIHRvdWNoLWFjdGlvbjogcGFuLXk7XG59XG5cbi8qXG4gKiBTdWItb2JqZWN0IGl0ZW1cbiAqIDEuIFBvc2l0aW9uIGl0ZW1zIGFib3ZlIGVhY2ggb3RoZXJcbiAqIDIuIEV4cGFuZCB0byBwYXJlbnQgY29udGFpbmVyIHdpZHRoXG4gKiAzLiBIaWRlIGJ5IGRlZmF1bHRcbiAqL1xuXG4udWstc2xpZGVzaG93ID4gbGkge1xuICAgIC8qIDEgKi9cbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLyogMiAqL1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIC8qIDMgKi9cbiAgICBvcGFjaXR5OiAwO1xufVxuXG4vKlxuICogQWN0aXZlXG4gKiAxLiBTdGFjayBhdCBmaXJzdFxuICogMi4gU2hvdyBzbGlkZVxuICovXG5cbi51ay1zbGlkZXNob3cgPiAudWstYWN0aXZlIHtcbiAgICAvKiAxICovXG4gICAgei1pbmRleDogMTA7XG4gICAgLyogMiAqL1xuICAgIG9wYWNpdHk6IDE7XG59XG5cbi8qXG4gKiBIaWRlIGRlZmF1bHQgaW1hZ2VzIHdoaWNoIGlzIG9ubHkgcmVsZXZhbnQgdG8ga2VlcCBleGlzdGluZyBwcm9wb3J0aW9uc1xuICovXG5cbi51ay1zbGlkZXNob3cgPiBsaSA+IGltZyB7IHZpc2liaWxpdHk6IGhpZGRlbjsgfVxuXG4vKlxuICogUG9pbnRlciBmb3IgY29udHJvbHNcbiAqL1xuXG5bZGF0YS11ay1zbGlkZXNob3ctc2xpZGVdIHsgY3Vyc29yOiBwb2ludGVyOyB9XG5cblxuLyogTW9kaWZpZXI6IGB1ay1zbGlkZXNob3ctZnVsbHNjcmVlbmBcbiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqL1xuXG4udWstc2xpZGVzaG93LWZ1bGxzY3JlZW4sXG4udWstc2xpZGVzaG93LWZ1bGxzY3JlZW4gPiBsaSB7IGhlaWdodDogMTAwdmg7IH1cblxuXG4vKiBBbmltYXRpb25zXG4gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0gKi9cblxuLypcbiAqIEZhZGVcbiAqL1xuXG4gLnVrLXNsaWRlc2hvdy1mYWRlLWluIHtcbiAgICAgLXdlYmtpdC1hbmltYXRpb246IHVrLWZhZGUgMC41cyBsaW5lYXI7XG4gICAgIGFuaW1hdGlvbjogdWstZmFkZSAwLjVzIGxpbmVhcjtcbiB9XG5cbi51ay1zbGlkZXNob3ctZmFkZS1vdXQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiB1ay1mYWRlIDAuNXMgbGluZWFyIHJldmVyc2U7XG4gICAgYW5pbWF0aW9uOiB1ay1mYWRlIDAuNXMgbGluZWFyIHJldmVyc2U7XG59XG5cbi8qXG4gKiBTY3JvbGxcbiAqL1xuXG4udWstc2xpZGVzaG93LXNjcm9sbC1mb3J3YXJkLWluIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogdWstc2xpZGUtcmlnaHQgMC41cyBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb246IHVrLXNsaWRlLXJpZ2h0IDAuNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi51ay1zbGlkZXNob3ctc2Nyb2xsLWZvcndhcmQtb3V0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogdWstc2xpZGUtbGVmdCAwLjVzIGVhc2UtaW4tb3V0IHJldmVyc2U7XG4gICAgYW5pbWF0aW9uOiB1ay1zbGlkZS1sZWZ0IDAuNXMgZWFzZS1pbi1vdXQgcmV2ZXJzZTtcbn1cblxuLnVrLXNsaWRlc2hvdy1zY3JvbGwtYmFja3dhcmQtaW4ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiB1ay1zbGlkZS1sZWZ0IDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uOiB1ay1zbGlkZS1sZWZ0IDAuNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi51ay1zbGlkZXNob3ctc2Nyb2xsLWJhY2t3YXJkLW91dCB7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHVrLXNsaWRlLXJpZ2h0IDAuNXMgZWFzZS1pbi1vdXQgcmV2ZXJzZTtcbiAgICBhbmltYXRpb246IHVrLXNsaWRlLXJpZ2h0IDAuNXMgZWFzZS1pbi1vdXQgcmV2ZXJzZTtcbn1cblxuLypcbiAqIFNjYWxlXG4gKi9cblxuLnVrLXNsaWRlc2hvdy1zY2FsZS1vdXQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiB1ay1mYWRlLXNjYWxlLTE1IDAuNXMgZWFzZS1pbi1vdXQgcmV2ZXJzZTtcbiAgICBhbmltYXRpb246IHVrLWZhZGUtc2NhbGUtMTUgMC41cyBlYXNlLWluLW91dCByZXZlcnNlO1xufVxuXG4vKlxuICogU3dpcGVcbiAqL1xuXG4udWstc2xpZGVzaG93LXN3aXBlLWZvcndhcmQtaW4ge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiB1ay1zbGlkZS1sZWZ0LTMzIDAuNXMgZWFzZS1pbi1vdXQ7XG4gICAgYW5pbWF0aW9uOiB1ay1zbGlkZS1sZWZ0LTMzIDAuNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi51ay1zbGlkZXNob3ctc3dpcGUtZm9yd2FyZC1vdXQge1xuICAgIC13ZWJraXQtYW5pbWF0aW9uOiB1ay1zbGlkZS1sZWZ0IDAuNXMgZWFzZS1pbi1vdXQgcmV2ZXJzZTtcbiAgICBhbmltYXRpb246IHVrLXNsaWRlLWxlZnQgMC41cyBlYXNlLWluLW91dCByZXZlcnNlO1xufVxuXG4udWstc2xpZGVzaG93LXN3aXBlLWJhY2t3YXJkLWluIHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogdWstc2xpZGUtcmlnaHQtMzMgMC41cyBlYXNlLWluLW91dDtcbiAgICBhbmltYXRpb246IHVrLXNsaWRlLXJpZ2h0LTMzIDAuNXMgZWFzZS1pbi1vdXQ7XG59XG5cbi51ay1zbGlkZXNob3ctc3dpcGUtYmFja3dhcmQtb3V0IHtcbiAgICAtd2Via2l0LWFuaW1hdGlvbjogdWstc2xpZGUtcmlnaHQgMC41cyBlYXNlLWluLW91dCByZXZlcnNlO1xuICAgIGFuaW1hdGlvbjogdWstc2xpZGUtcmlnaHQgMC41cyBlYXNlLWluLW91dCByZXZlcnNlO1xufVxuXG4udWstc2xpZGVzaG93LXN3aXBlLWZvcndhcmQtaW46YmVmb3JlLFxuLnVrLXNsaWRlc2hvdy1zd2lwZS1iYWNrd2FyZC1pbjpiZWZvcmUge1xuICAgIGNvbnRlbnQ6ICcnO1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgYm90dG9tOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgcmlnaHQ6IDA7XG4gICAgei1pbmRleDogMTtcbiAgICBiYWNrZ3JvdW5kOiByZ2JhKDAsMCwwLDAuNik7XG4gICAgLXdlYmtpdC1hbmltYXRpb246IHVrLWZhZGUgMC41cyBlYXNlLWluLW91dCByZXZlcnNlO1xuICAgIGFuaW1hdGlvbjogdWstZmFkZSAwLjVzIGVhc2UtaW4tb3V0IHJldmVyc2U7XG59XG5cblxuLy8gSG9va3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AaW5jbHVkZSBob29rLXNsaWRlc2hvdy1taXNjKCk7XG5cbi8vIEBtaXhpbiBob29rLXNsaWRlc2hvdy1taXNjKCl7fVxuIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUVBQSxPQUFPLENBQUMsaUVBQUk7QUFFWixVQUFVO0VBQ04sV0FBVyxFQUFFLGdCQUFnQjtFQUM3QixHQUFHLEVBQUUsK0NBQStDO0VBQUUsc0JBQXNCO0VBQzVFLEdBQUcsRUFBRSxzREFBc0QsQ0FBQywyQkFBMkIsRUFDbEYsaURBQWlELENBQUMsZUFBZSxFQUNqRSxnREFBZ0QsQ0FBQyxjQUFjLEVBQy9ELCtDQUErQyxDQUFFLGtCQUFrQixFQUNuRSxxRUFBcUUsQ0FBQyxhQUFhO0VBQUUsZ0JBQWdCO0VBQzFHLFdBQVcsRUFBRSxNQUFNO0VBQ25CLFVBQVUsRUFBRSxNQUFNOztBRXNCdEIsQUFFSSxlQUZXLENBRVgsRUFBRSxFQUZOLGVBQWUsQ0FFUixFQUFFLEVBRlQsZUFBZSxDQUVMLEVBQUUsRUFGWixlQUFlLENBRUYsRUFBRSxFQUZmLGVBQWUsQ0FFQyxFQUFFLEVBRmxCLGVBQWUsQ0FFSSxFQUFFLENBQUM7RUFDZCxLQUFLLEVBQUUsSUFBSSxHQUNkOztBQUpMLEFBS0ksZUFMVyxDQUtYLENBQUMsQ0FBQztFQUNFLEtBQUssRUFBRSxJQUFJLEdBQ2Q7O0FBR0wsQUFBQSxFQUFFLENBQ0Y7RUFDSSxLQUFLLEVENUNTLE9BQU8sQ0M0Q0csVUFBVSxHQUNyQzs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNELHNCQUFzQixFQUFFLFdBQVc7RUFDbkMsdUJBQXVCLEVBQUUsU0FBUyxHQUNyQzs7QUFFRCxBQUFBLElBQUksQ0FBQztFQUNELFFBQVEsRUFBRSxRQUFRO0VBQ2xCLGNBQWMsRUFBRSxHQUFHO0VBQ25CLFVBQVUsRUFBRSxJQUFJO0VBQ2hCLE1BQU0sRUFBRSxJQUFJLEdBT2Y7RUFYRCxBQVFJLElBUkEsQUFRQyxNQUFNLENBQUM7SUFDSixPQUFPLEVBQUUsY0FBYyxHQUMxQjs7QUFHTCxBQUFBLEVBQUUsRUFBQyxFQUFFLEVBQUMsRUFBRSxFQUFDLEVBQUUsRUFBQyxFQUFFLEVBQUMsRUFBRSxDQUFDO0VBRWQsV0FBVyxFRnBERixnQkFBZ0IsRUFBRSxVQUFVLENFb0RaLFVBQVU7RUFDbkMsS0FBSyxFRC9ESSxPQUFPLENDK0RHLFVBQVUsR0FXaEM7RUFkRCxBQUtJLEVBTEYsQUFLRyxJQUFJLEVBTE4sRUFBRSxBQUtBLElBQUksRUFMSCxFQUFFLEFBS0gsSUFBSSxFQUxBLEVBQUUsQUFLTixJQUFJLEVBTEcsRUFBRSxBQUtULElBQUksRUFMTSxFQUFFLEFBS1osSUFBSSxDQUFDO0lBQ0YsV0FBVyxFQUFFLEdBQUc7SUFDaEIsY0FBYyxFQUFFLFNBQVMsR0FDNUI7RUFSTCxBQVVJLEVBVkYsQUFVRyxLQUFLLEVBVlAsRUFBRSxBQVVBLEtBQUssRUFWSixFQUFFLEFBVUgsS0FBSyxFQVZELEVBQUUsQUFVTixLQUFLLEVBVkUsRUFBRSxBQVVULEtBQUssRUFWSyxFQUFFLEFBVVosS0FBSyxDQUFDO0lBQ0gsV0FBVyxFQUFFLEdBQUcsR0FDbkI7O0FBSUwsQUFBQSxDQUFDLENBQUM7RUFDRSxXQUFXLEVBQUUsR0FBRztFQUNoQixPQUFPLEVBQUUsS0FBSztFQUNkLHFCQUFxQixFQUFFLEdBQUc7RUFDMUIsb0JBQW9CLEVBQUUsR0FBRztFQUN6QixvQkFBb0IsRUFBRSxHQUFHO0VBQ3pCLGtCQUFrQixFQUFFLEdBQUcsR0FLMUI7RUFYRCxBQVFJLENBUkgsQUFRSSxLQUFLLENBQUM7SUFDSCxXQUFXLEVBQUUsR0FBRyxHQUNuQjs7QUFHTCxBQUFBLE9BQU8sQ0FBQztFQUNKLFdBQVcsRUFBRSxHQUFHLEdBQ25COztBQUVELEFBQUEsQ0FBQyxBQUFBLE1BQU0sQ0FBQztFQUNKLFNBQVMsRUFBRSxJQUFJO0VBQ2YsV0FBVyxFQUFFLEdBQUc7RUFDaEIsS0FBSyxFRHBHWSxPQUE0QixHQ3FHaEQ7O0FBRUQsQUFBQSxFQUFFLENBQUM7RUFDQyxtQkFBbUIsRUFBRSxNQUFNLEdBQzlCOztBQUVELEFBRUksU0FGSyxDQUVMLEVBQUUsQ0FBQztFQUNDLE1BQU0sRUFBRSxHQUFHO0VBQ1gsY0FBYyxFQUFFLElBQUk7RUFDcEIsbUJBQW1CLEVBQUUsT0FBTztFQUM1QixXQUFXLEVBQUUsSUFBSSxHQUtwQjtFQVhMLEFBUVEsU0FSQyxDQUVMLEVBQUUsQ0FNRSxFQUFFLENBQUM7SUFDQyxXQUFXLEVBQUUsSUFBSSxHQUNwQjs7QUFJVCxBQUFBLGdCQUFnQixDQUFDO0VBRWIsVUFBVSxFQUFFLFVBQVU7RUFDdEIsT0FBTyxFQUFFLFFBQVEsR0FnQnBCO0VBbkJELEFBS0ksZ0JBTFksQ0FLWixFQUFFLENBQUM7SUFDQyxLQUFLLEVEL0hRLE9BQTRCO0lDZ0l6QyxXQUFXLEVBQUUsR0FBRyxHQUNuQjtFQVJMLEFBVUksZ0JBVlksQ0FVWixDQUFDLENBQUM7SUFDRSxNQUFNLEVBQUUsUUFBUSxHQUNuQjtFQVpMLEFBY0ksZ0JBZFksQ0FjWixLQUFLLENBQUM7SUFDRixLQUFLLEVBQUUsS0FBSztJQUNaLE9BQU8sRUFBRSxZQUFZO0lBQ3JCLGFBQWEsRUFBRSxJQUFJLEdBQ3RCOztBRTdJTDs7Ozs7Ozs7R0FRRztBQUFBLEFBQUEsa0JBQWtCLENBQUE7RUFBQyxTQUFTLEVBQUMsR0FBRztFQUFDLFNBQVMsRUFBQyxDQUFDO0VBQUMsV0FBVyxFQUFDLENBQUM7RUFBQyxRQUFRLEVBQUMsUUFBUTtFQUFDLGdCQUFnQixFQUFDLElBQUk7RUFBQyxZQUFZLEVBQUMsSUFBSTtFQUFDLG1CQUFtQixFQUFDLElBQUk7RUFBQyxnQkFBZ0IsRUFBQyxJQUFJO0VBQUMsZUFBZSxFQUFDLElBQUk7RUFBQyxXQUFXLEVBQUMsSUFBSSxHQUFFOztBQUFELEFBQUEsa0JBQWtCLENBQUMsR0FBRyxDQUFBO0VBQUMsT0FBTyxFQUFDLEtBQUs7RUFBQyxNQUFNLEVBQUMsSUFBSTtFQUFDLGlCQUFpQixFQUFDLElBQUk7RUFBQyxVQUFVLEVBQUMsSUFBSSxDQUFBLFVBQVU7RUFBQyxTQUFTLEVBQUMsSUFBSSxDQUFBLFVBQVU7RUFBQyxVQUFVLEVBQUMsQ0FBQyxDQUFBLFVBQVU7RUFBQyxTQUFTLEVBQUMsQ0FBQyxDQUFBLFVBQVU7RUFBQyxLQUFLLEVBQUMsSUFBSSxHQUFFOztBQUFELEFBQUEsZUFBZSxFQUFDLGlCQUFpQixFQUFDLGlCQUFpQixFQUFDLGNBQWMsRUFBQyxpQkFBaUIsQ0FBQTtFQUFDLE1BQU0sRUFBQyxDQUFDO0VBQUMsSUFBSSxFQUFDLENBQUM7RUFBQyxRQUFRLEVBQUMsUUFBUTtFQUFDLEtBQUssRUFBQyxDQUFDO0VBQUMsR0FBRyxFQUFDLENBQUMsR0FBRTs7QUFBRCxBQUFBLGVBQWUsRUFBQyxpQkFBaUIsQ0FBQTtFQUFDLFFBQVEsRUFBQyxNQUFNLEdBQUU7O0FBQUQsQUFBQSxpQkFBaUIsQ0FBQTtFQUFDLGdCQUFnQixFQUFDLElBQUk7RUFBQyxPQUFPLEVBQUMsQ0FBQyxHQUFFOztBQUFELEFBQUEsY0FBYyxDQUFBO0VBQUMsZ0JBQWdCLEVBQUMsSUFBSTtFQUFDLE9BQU8sRUFBQyxFQUFFLEdBQUU7O0FBQUQsQUFBQSxpQkFBaUIsQ0FBQTtFQUFDLE9BQU8sRUFBQyxLQUFLO0VBQUMsTUFBTSxFQUFDLElBQUk7RUFBQyxhQUFhLEVBQUMsd0JBQW9CO0VBQUMsT0FBTyxFQUFDLGNBQWM7RUFBQyxRQUFRLEVBQUMsTUFBTTtFQUFDLEtBQUssRUFBQyxJQUFJLEdBQUU7O0FBQUQsQUFBQSxlQUFlLENBQUE7RUFBQyxNQUFNLEVBQUMsYUFBYTtFQUFDLE9BQU8sRUFBQyxLQUFLO0VBQUMsT0FBTyxFQUFDLEVBQUU7RUFBQyxRQUFRLEVBQUMsUUFBUSxHQUFFOztBQUFELEFBQUEsZUFBZSxBQUFBLFNBQVMsQ0FBQTtFQUFDLG1CQUFtQixFQUFDLEdBQUc7RUFBQyxnQkFBZ0IsRUFBQyxHQUFHO0VBQUMsTUFBTSxFQUFDLFNBQVM7RUFBQyxJQUFJLEVBQUMsQ0FBQztFQUFDLEdBQUcsRUFBQyxTQUFTO0VBQUMsS0FBSyxFQUFDLElBQUksR0FBRTs7QUFBRCxBQUFBLGVBQWUsQUFBQSxTQUFTLENBQUE7RUFBQyxpQkFBaUIsRUFBQyxHQUFHO0VBQUMsa0JBQWtCLEVBQUMsR0FBRztFQUFDLE1BQU0sRUFBQyxJQUFJO0VBQUMsSUFBSSxFQUFDLFNBQVM7RUFBQyxHQUFHLEVBQUMsQ0FBQztFQUFDLEtBQUssRUFBQyxTQUFTLEdBQUU7O0FBQUQsQUFBQSxlQUFlLENBQUE7RUFBQyxPQUFPLEVBQUMsS0FBSztFQUFDLE1BQU0sRUFBQyxDQUFDO0VBQUMsSUFBSSxFQUFDLEdBQUc7RUFBQyxPQUFPLEVBQUMsR0FBRztFQUFDLFFBQVEsRUFBQyxRQUFRO0VBQUMsR0FBRyxFQUFDLEdBQUc7RUFBQyxLQUFLLEVBQUMsQ0FBQyxHQUFFOztBQUFELEFBQUEsZUFBZSxBQUFBLE1BQU0sRUFBQyxlQUFlLEFBQUEsT0FBTyxDQUFBO0VBQUMsZ0JBQWdCLEVBQUMsSUFBSTtFQUFDLE9BQU8sRUFBQyxHQUFHO0VBQUMsT0FBTyxFQUFDLEtBQUs7RUFBQyxRQUFRLEVBQUMsUUFBUSxHQUFFOztBQUFELEFBQUEsZUFBZSxBQUFBLE9BQU8sQ0FBQTtFQUFDLE1BQU0sRUFBQyxHQUFHO0VBQUMsSUFBSSxFQUFDLElBQUk7RUFBQyxHQUFHLEVBQUMsQ0FBQztFQUFDLEtBQUssRUFBQyxHQUFHLEdBQUU7O0FBQUQsQUFBQSxlQUFlLEFBQUEsTUFBTSxDQUFBO0VBQUMsTUFBTSxFQUFDLEdBQUc7RUFBQyxJQUFJLEVBQUMsQ0FBQztFQUFDLEdBQUcsRUFBQyxJQUFJO0VBQUMsS0FBSyxFQUFDLEdBQUcsR0FBRTs7QUFBRCxBQUFBLGFBQWEsRUFBQyxhQUFhLEVBQUMsY0FBYyxDQUFBO0VBQUMsT0FBTyxFQUFDLEtBQUs7RUFBQyxNQUFNLEVBQUMsSUFBSTtFQUFDLE9BQU8sRUFBQyxFQUFFO0VBQUMsUUFBUSxFQUFDLFFBQVE7RUFBQyxLQUFLLEVBQUMsSUFBSSxHQUFFOztBQUFELEFBQUEsYUFBYSxDQUFBO0VBQUMsZ0JBQWdCLEVBQUMsSUFBSTtFQUFDLElBQUksRUFBQyxDQUFDO0VBQUMsR0FBRyxFQUFDLENBQUMsR0FBRTs7QUFBRCxBQUFBLGFBQWEsQ0FBQTtFQUFDLGdCQUFnQixFQUFDLElBQUksR0FBRTs7QUFBRCxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQUE7RUFBQyxNQUFNLEVBQUMsUUFBUTtFQUFDLEtBQUssRUFBQyxJQUFJO0VBQUMsR0FBRyxFQUFDLENBQUM7RUFBQyxLQUFLLEVBQUMsR0FBRyxHQUFFOztBQUFELEFBQUEsYUFBYSxBQUFBLE9BQU8sQ0FBQTtFQUFDLE1BQU0sRUFBQyxRQUFRO0VBQUMsTUFBTSxFQUFDLEdBQUc7RUFBQyxJQUFJLEVBQUMsQ0FBQztFQUFDLEdBQUcsRUFBQyxJQUFJLEdBQUU7O0FBQUQsQUFBQSxhQUFhLEFBQUEsT0FBTyxDQUFBO0VBQUMsTUFBTSxFQUFDLFFBQVE7RUFBQyxJQUFJLEVBQUMsSUFBSTtFQUFDLEdBQUcsRUFBQyxDQUFDO0VBQUMsS0FBSyxFQUFDLEdBQUcsR0FBRTs7QUFBRCxBQUFBLGFBQWEsQUFBQSxPQUFPLENBQUE7RUFBQyxNQUFNLEVBQUMsSUFBSTtFQUFDLE1BQU0sRUFBQyxRQUFRO0VBQUMsTUFBTSxFQUFDLEdBQUc7RUFBQyxJQUFJLEVBQUMsQ0FBQyxHQUFFOztBQUFELEFBQUEsY0FBYyxDQUFBO0VBQUMsZ0JBQWdCLEVBQUMsSUFBSTtFQUFDLE1BQU0sRUFBQyxHQUFHO0VBQUMsT0FBTyxFQUFDLEdBQUc7RUFBQyxLQUFLLEVBQUMsR0FBRyxHQUFFOztBQUFELEFBQUEsY0FBYyxBQUFBLFFBQVEsQ0FBQTtFQUFDLE1BQU0sRUFBQyxRQUFRO0VBQUMsVUFBVSxFQUFDLElBQUk7RUFBQyxLQUFLLEVBQUMsSUFBSTtFQUFDLEdBQUcsRUFBQyxHQUFHLEdBQUU7O0FBQUQsQUFBQSxjQUFjLEFBQUEsUUFBUSxDQUFBO0VBQUMsTUFBTSxFQUFDLFFBQVE7RUFBQyxJQUFJLEVBQUMsR0FBRztFQUFDLFdBQVcsRUFBQyxJQUFJO0VBQUMsR0FBRyxFQUFDLElBQUksR0FBRTs7QUFBRCxBQUFBLGNBQWMsQUFBQSxRQUFRLENBQUE7RUFBQyxNQUFNLEVBQUMsUUFBUTtFQUFDLElBQUksRUFBQyxJQUFJO0VBQUMsVUFBVSxFQUFDLElBQUk7RUFBQyxHQUFHLEVBQUMsR0FBRyxHQUFFOztBQUFELEFBQUEsY0FBYyxBQUFBLFFBQVEsQ0FBQTtFQUFDLE1BQU0sRUFBQyxJQUFJO0VBQUMsTUFBTSxFQUFDLFFBQVE7RUFBQyxJQUFJLEVBQUMsR0FBRztFQUFDLFdBQVcsRUFBQyxJQUFJLEdBQUU7O0FBQUQsQUFBQSxjQUFjLEFBQUEsU0FBUyxDQUFBO0VBQUMsTUFBTSxFQUFDLFNBQVM7RUFBQyxLQUFLLEVBQUMsSUFBSTtFQUFDLEdBQUcsRUFBQyxJQUFJLEdBQUU7O0FBQUQsQUFBQSxjQUFjLEFBQUEsU0FBUyxDQUFBO0VBQUMsTUFBTSxFQUFDLFNBQVM7RUFBQyxJQUFJLEVBQUMsSUFBSTtFQUFDLEdBQUcsRUFBQyxJQUFJLEdBQUU7O0FBQUQsQUFBQSxjQUFjLEFBQUEsU0FBUyxDQUFBO0VBQUMsTUFBTSxFQUFDLElBQUk7RUFBQyxNQUFNLEVBQUMsU0FBUztFQUFDLElBQUksRUFBQyxJQUFJLEdBQUU7O0FBQUQsQUFBQSxjQUFjLEFBQUEsU0FBUyxDQUFBO0VBQUMsTUFBTSxFQUFDLElBQUk7RUFBQyxNQUFNLEVBQUMsU0FBUztFQUFDLE1BQU0sRUFBQyxJQUFJO0VBQUMsT0FBTyxFQUFDLENBQUM7RUFBQyxLQUFLLEVBQUMsSUFBSTtFQUFDLEtBQUssRUFBQyxJQUFJLEdBQUU7O0FBQUQsTUFBTSxFQUFFLFNBQVMsRUFBRSxLQUFLO0VBQUMsQUFBQSxjQUFjLEFBQUEsU0FBUyxDQUFBO0lBQUMsTUFBTSxFQUFDLElBQUk7SUFBQyxLQUFLLEVBQUMsSUFBSSxHQUFFOztBQUFBLE1BQU0sRUFBRSxTQUFTLEVBQUUsS0FBSztFQUFDLEFBQUEs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 */
