@charset "UTF-8";
/**
 * Wonderful Union
 * Origin Theme
*/
/* Origin Dependencies */
/*
* Default Bootstrap Vars
* raw.githubusercontent.com/twbs/bootstrap-sass/master/assets/stylesheets/bootstrap/_variables.scss
*/
/* Type */
/* Color */
/* Store and Account Var's */
/* Helpers  */
.no-pagination .section-pagination {
  display: none; }

.row.no-gutters {
  margin-right: 0;
  margin-left: 0; }

.row.no-gutters > [class^="col-"],
.row.no-gutters > [class*=" col-"] {
  padding-right: 0;
  padding-left: 0; }

.modal-content {
  max-height: 90vh;
  overflow-x: scroll; }

.clearfix:before, .clearfix:after {
  content: '';
  display: table;
  clear: both; }

/*! 
 * angular-loading-bar v0.9.0
 * https://chieffancypants.github.io/angular-loading-bar
 * Copyright (c) 2016 Wes Cruver
 * License: MIT
 */
/* Make clicks pass-through */
#loading-bar,
#loading-bar-spinner {
  pointer-events: none;
  -webkit-pointer-events: none;
  transition: 350ms linear all; }

#loading-bar.ng-enter,
#loading-bar.ng-leave.ng-leave-active,
#loading-bar-spinner.ng-enter,
#loading-bar-spinner.ng-leave.ng-leave-active {
  opacity: 0; }

#loading-bar.ng-enter.ng-enter-active,
#loading-bar.ng-leave,
#loading-bar-spinner.ng-enter.ng-enter-active,
#loading-bar-spinner.ng-leave {
  opacity: 1; }

#loading-bar .bar {
  transition: width 350ms;
  background: #29d;
  position: fixed;
  z-index: 10002;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  border-bottom-right-radius: 1px;
  border-top-right-radius: 1px; }

/* Fancy blur effect */
#loading-bar .peg {
  position: absolute;
  width: 70px;
  right: 0;
  top: 0;
  height: 2px;
  opacity: .45;
  -ms-box-shadow: #29d 1px 0 6px 1px;
  box-shadow: #29d 1px 0 6px 1px;
  border-radius: 100%; }

#loading-bar-spinner {
  display: block;
  position: fixed;
  z-index: 10002;
  top: 10px;
  left: 10px; }

#loading-bar-spinner .spinner-icon {
  width: 14px;
  height: 14px;
  border: solid 2px transparent;
  border-top-color: #29d;
  border-left-color: #29d;
  border-radius: 50%;
  -webkit-animation: loading-bar-spinner 400ms linear infinite;
  animation: loading-bar-spinner 400ms linear infinite; }

@-webkit-keyframes loading-bar-spinner {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes loading-bar-spinner {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

/* Accessibility */
#page:focus {
  outline: none; }

/* Angular */
.ng-cloak {
  display: none; }

[ng-click], [data-ng-click], [ui-sref] {
  cursor: pointer; }

.page-inner {
  overflow: hidden; }

/* Old Browser Message */
p.browserupgrade {
  position: absolute;
  top: 0;
  left: 0;
  margin: 0;
  padding: .2em;
  background: #f00;
  color: #fff;
  z-index: 9999999999; }

p.browserupgrade a {
  color: #fff;
  text-decoration: underline; }

p.browserupgrade a:hover {
  color: #fff; }

/* Splash Page */
.page-splash header, .page-splash footer {
  display: none; }

/* Helpers */
.show {
  display: block; }

.hide {
  display: none;
  visibility: hidden; }

.invisible {
  visibility: hidden; }

.modal-scroll {
  max-height: 400px;
  overflow-y: scroll; }

.pre-no-style {
  padding: 0;
  margin: 0;
  font-size: inherit;
  color: inherit;
  background-color: inherit;
  border: 0;
  border-radius: 0; }

.fit-video {
  position: relative;
  padding-bottom: 56.25%; }
  .fit-video iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important; }

/* Master Fallback Fixes */
#GC.GC_birthday select {
  -webkit-appearance: menulist-button;
     -moz-appearance: menulist-button;
          appearance: menulist-button;
  display: inline-block; }

/*
 * Responsive/type reset for Origin Theme fallback to Master Theme
 */
@font-face {
  font-family: 'Glyphicons Master Theme';
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Master Theme';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.master-theme {
  /* General */
  /* Grid */
  /* Events */
  /* Store */
  /* Header */
  /* Featured Listing */
  /* Regular Listing */
  /* Sidebar */
  /* Categories */
  /* Account Center */
  /* Structure */
  /* Header */
  /* Sidebar */
  /* Avatar */
  /* Tables */
  /* Pagination */ }
  .master-theme p, .master-theme dl, .master-theme ol, .master-theme ul {
    margin: 1em 0;
    padding: 0; }
  .master-theme dd {
    margin: 0;
    padding: 0; }
  .master-theme i, .master-theme em {
    font-style: italic; }
  .master-theme b, .master-theme strong {
    font-weight: 700; }
    .master-theme b a, .master-theme b span, .master-theme strong a, .master-theme strong span {
      font-weight: inherit; }
  .master-theme table {
    margin: 0;
    border-collapse: separate; }
  .master-theme, .master-theme h1, .master-theme h2, .master-theme h3, .master-theme h4, .master-theme h5, .master-theme h6, .master-theme th, .master-theme dt, .master-theme p, .master-theme a, .master-theme span, .master-theme li, .master-theme td, .master-theme dd, .master-theme address, .master-theme input, .master-theme textarea, .master-theme .vcard, .master-theme #dashboard, .master-theme #breadcrumbs, .master-theme legend {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    -webkit-font-smoothing: antialiased; }
  .master-theme a, .master-theme a:visited {
    color: inherit;
    text-decoration: underline; }
  .master-theme button {
    cursor: pointer; }
  .master-theme {
    font-size: 16px; }
  .master-theme h1, .master-theme h2, .master-theme h3, .master-theme h4, .master-theme h5, .master-theme h6 {
    font-family: inherit;
    font-weight: 700;
    text-rendering: optimizelegibility; }
    .master-theme h1 a, .master-theme h2 a, .master-theme h3 a, .master-theme h4 a, .master-theme h5 a, .master-theme h6 a {
      text-decoration: none; }
  .master-theme h1 {
    font-size: 2em;
    line-height: 1.333em; }
  .master-theme h2 {
    font-size: 1.4em;
    line-height: 1.4em; }
  .master-theme h3 {
    font-size: 1.2em; }
  .master-theme h4 {
    font-size: 1.1em;
    font-weight: 700; }
  .master-theme h5 {
    font-size: 0.846em;
    line-height: 2.09em;
    letter-spacing: 2px; }
  .master-theme h6 {
    font-size: 0.67em; }
  .master-theme *, .master-theme *:before, .master-theme *:after {
    box-sizing: border-box; }
  .master-theme #fancybox-wrap {
    box-sizing: content-box; }
  .master-theme .clearfix:before, .master-theme .clearfix:after {
    content: "";
    display: table; }
  .master-theme .clearfix:after {
    clear: both; }
  .master-theme p.browserupgrade {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: .2em;
    background: #f00;
    color: #fff;
    z-index: 9999999999; }
  .master-theme p.browserupgrade a {
    color: #fff;
    text-decoration: underline; }
  .master-theme p.browserupgrade a:hover {
    color: #fff; }
  .master-theme .event .info, .master-theme .event #unified .title {
    display: none; }
  .master-theme #GC {
    margin: 0 auto;
    max-width: 1200px; }
  .master-theme input, .master-theme textarea {
    border: 1px solid #ccc;
    border-radius: 2px;
    background: #fff;
    box-shadow: none; }
  .master-theme #GC .recaptcha_input_area {
    width: auto !important;
    height: auto !important; }
  .master-theme blockquote {
    border: 0;
    background: rgba(255, 255, 255, 0.2); }
    .master-theme blockquote .author {
      font-weight: 700; }
  .master-theme pre {
    white-space: pre-wrap; }
  .master-theme .section.news .article > .footer .nav.actions > .readmore {
    float: none; }
  .master-theme .section.news .article > .footer .nav.actions {
    height: auto; }
  .master-theme #footer {
    height: auto; }
  .master-theme #breadcrumbs, .master-theme .rss {
    display: none; }
  .master-theme a[href*="/user/"] {
    word-break: break-all; }
  .master-theme .content li {
    list-style-type: disc;
    margin-left: 20px; }
  .master-theme #dashboard .section, .master-theme #page, .master-theme #breadcrumbs, .master-theme #header .section, .master-theme #footer .section, .master-theme.store #main.full, .master-theme #main.full, .master-theme .main.full, .master-theme #aside, .master-theme .aside {
    width: 100%; }
  .master-theme #dashboard .section, .master-theme #container, .master-theme #breadcrumbs, .master-theme #header .section, .master-theme #footer .section, .master-theme #main.full, .master-theme .main.full {
    max-width: 960px; }
  .master-theme #main, .master-theme .main {
    width: 54%;
    max-width: 540px;
    margin: 0 auto; }
  .master-theme #aside, .master-theme .aside {
    width: 38%;
    max-width: 380px;
    margin: 0 auto; }
  .master-theme .events .tickets a, .master-theme .events .tickets span, .master-theme .events .tickets.vip a {
    width: auto;
    height: auto;
    text-indent: 0;
    background: none; }
  .master-theme.store, .master-theme.store #aside .listing .item span, .master-theme.store #aside .listing .item a {
    font-family: inherit; }
  .master-theme.store #container {
    float: none;
    margin: 0 auto 150px auto;
    max-width: 920px;
    width: 100%; }
  .master-theme.store #main {
    float: left;
    margin: 0;
    width: 70%; }
  .master-theme.store #aside {
    float: left;
    margin: 0;
    width: 30%; }
  .master-theme.store #main > .section {
    padding: 0 15px !important; }
  .master-theme.store #main > .header,
  .master-theme.store #main > .section > .header {
    padding: 15px; }
  .master-theme.store #main .featured {
    clear: left;
    margin-bottom: 25px;
    padding: 40px 0 0 0;
    border: 0; }
  .master-theme.store #main .shop .listing .item,
  .master-theme.store #main .featured .listing .item,
  .master-theme.store #main .category.products .listing .item {
    margin: 0 2% 2% 0;
    height: auto !important;
    border: 0; }
  .master-theme.store #main .shop .listing .item > .product,
  .master-theme.store #main .featured .listing .item > .product,
  .master-theme.store #main .category.products .listing .item > .product {
    border: 4px solid #000; }
  .master-theme.store #main .shop .listing .item .figure,
  .master-theme.store #main .featured .listing .item .figure,
  .master-theme.store #main .category.products .listing .item .figure {
    overflow: hidden;
    padding-bottom: 100%;
    min-width: 0;
    max-width: 100%;
    width: 100%;
    height: 0; }
  .master-theme.store #main .listing .item a,
  .master-theme.store #main .listing .item a span,
  .master-theme.store #main .listing .item a span span {
    padding: 0; }
  .master-theme.store #main .shop .listing .item .content,
  .master-theme.store #main .featured .listing .item .content,
  .master-theme.store #main .category.products .listing .item .content,
  .master-theme.store #main .shop .listing .item:hover .content,
  .master-theme.store #main .featured .listing .item:hover .content,
  .master-theme.store #main .category.products .listing .item:hover .content {
    top: auto;
    bottom: 0;
    overflow: visible; }
  .master-theme.store #main .shop .listing .item .product-details,
  .master-theme.store #main .featured .listing .item .product-details,
  .master-theme.store #main .category.products .listing .item .product-details {
    overflow: hidden;
    max-height: 0;
    width: 100%;
    transition: max-height 0.3s ease; }
  .master-theme.store #main .shop .listing .item:hover .product-details,
  .master-theme.store #main .featured .listing .item:hover .product-details,
  .master-theme.store #main .category.products .listing .item:hover .product-details {
    max-height: 100px; }
  .master-theme.store #main .shop .listing .item .product-container,
  .master-theme.store #main .featured .listing .item .product-container,
  .master-theme.store #main .category.products .listing .item .product-container {
    padding: 0;
    width: 100%; }
  .master-theme.store #main .shop .listing .item .product-container > a,
  .master-theme.store #main .featured .listing .item .product-container > a,
  .master-theme.store #main .category.products .listing .item .product-container > a {
    display: block;
    padding: 10px; }
  .master-theme.store .product .figure img,
  .master-theme.store #main .featured .listing .item .figure img {
    min-width: 0; }
  .master-theme.store h1.title {
    margin: 40px 0 20px 0;
    text-align: left;
    font-size: 30px; }
  .master-theme.store #main .featured .listing .item {
    width: 49%; }
  .master-theme.store #main .featured .listing .item.second {
    margin: 0 0 2% 0; }
  .master-theme.store #main > .featured .flag {
    margin: 0; }
  .master-theme.store #main .shop .listing .item,
  .master-theme.store #main .category.products .listing .item {
    width: 32%; }
  .master-theme.store #main .shop .listing .item.third,
  .master-theme.store #main .category.products .listing .item.third {
    margin: 0 0 2% 0; }
  .master-theme.store .button {
    border: 0;
    border-radius: 0; }
  .master-theme.store #aside #GC.store.header {
    margin: 65px 15px 15px 15px; }
  .master-theme.store #aside .listing .item {
    margin: 0 15px;
    padding: 0;
    border: 1px solid #ededed;
    background: #fff; }
  .master-theme.store #aside .listing .item + .item {
    border-top: none; }
  .master-theme.store #aside .listing .item span,
  .master-theme.store #aside .listing .item a {
    display: block;
    padding: 10px;
    font-weight: 400; }
  .master-theme.store #aside .listing .item a:hover {
    background: #fafafa; }
  .master-theme.store #aside .categories > .header {
    display: none; }
  .master-theme .account #container {
    padding-bottom: 150px; }
  .master-theme #GC.GC_account {
    padding: 0; }
  .master-theme #GC.GC_account .GC_panes {
    margin: 0; }
  .master-theme #GC.GC_account .GC_panes > .GC_view {
    float: none;
    overflow: hidden;
    border: none; }
  .master-theme #GC.GC_account #toolbar ul li,
  .master-theme #GC.GC_account #toolbar ul li.selected,
  .master-theme #GC.GC_account #toolbar ul li:hover {
    margin: 0;
    border: none;
    border-left: 1px solid #dcdcdc;
    border-radius: 0; }
  .master-theme #GC.GC_account .GC_panes {
    padding: 0 10px; }
  .master-theme #GC.GC_account > .GC_header {
    border-bottom: 1px solid #dcdcdc; }
  .master-theme #GC.GC_account > .GC_header h1 {
    margin: 0;
    padding: 15px;
    line-height: 1; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li:hover,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.selected {
    margin: 0;
    padding: 4px 0;
    border-radius: 0px; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li:hover,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.selected {
    background: #fafafa; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email {
    margin: 0;
    padding: 0;
    border-top: none; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email a.pic {
    margin: 0;
    padding: 0;
    width: 200px;
    height: 200px; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email img {
    padding: 0;
    background: none;
    box-shadow: none; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email .username {
    margin: 0;
    padding: 10px;
    text-align: left; }
  .master-theme #GC.GC_account table {
    padding: 0; }
  .master-theme #GC.GC_account table td,
  .master-theme #GC.GC_account table th {
    padding: 10px; }
  .master-theme #GC.GC_account table .options {
    width: 10px; }
  .master-theme #GC.GC_account table .avatar {
    overflow: hidden;
    height: 50px; }
  .master-theme #GC.GC_account .pagination {
    display: block;
    margin: 0;
    padding: 15px 0 0 0; }
  .master-theme #GC.GC_account .pagination .title {
    margin: 0;
    text-align: center;
    line-height: 40px; }
  .master-theme #GC.GC_account .pagination .pages {
    margin: -40px 0 0 0; }
  .master-theme #GC.GC_account .pagination .first,
  .master-theme #GC.GC_account .pagination .last {
    display: none; }
  .master-theme #GC.GC_account .pagination a {
    text-decoration: none;
    text-transform: none;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    speak: none;
    -webkit-font-smoothing: antialiased; }
  .master-theme #GC.GC_account .pagination .pages > .actions {
    display: block;
    float: left; }
  .master-theme #GC.GC_account .pagination .pages > .forth {
    display: block;
    float: right; }
  .master-theme .markItUpHeader {
    height: 30px; }
  .master-theme #GC .markItUpHeader ul a,
  .master-theme .markItUpHeader ul a {
    width: 20px;
    height: 20px; }
  .master-theme #GC .markItUpHeader ul ul li,
  .master-theme .markItUpHeader ul ul li {
    background: #fff; }
  .master-theme #GC_thread_panel .wrap {
    width: 100%; }
  .master-theme #GC_thread_panel .markItUpHeader {
    box-shadow: none; }
  .master-theme #GC .GC_blogs.GC_modify #title,
  .master-theme #GC_thread_panel #GC_thread_title,
  .master-theme #GC_thread_panel textarea,
  .master-theme .markItUp {
    width: 100%;
    min-width: 100%;
    max-width: 100%; }
  .master-theme.events #main {
    float: none;
    width: 100%; }

@media screen and (max-width: 880px) {
  .master-theme {
    /* Store */
    /* GC Stuff */ }
    .master-theme.store #header,
    .master-theme.store #footer {
      display: block; }
    .master-theme.store #main,
    .master-theme.store #aside {
      float: none;
      width: 100%;
      max-width: 100%; }
    .master-theme #main #GC {
      min-width: 0px; }
    .master-theme #GC.GC_account .GC_panes .GC_navigation,
    .master-theme #GC.GC_account .GC_panes > .GC_view,
    .master-theme #GC #markItUpBody {
      clear: both;
      margin: 0;
      padding: 0;
      width: 100%;
      border: none; }
    .master-theme #recaptcha_image {
      width: 100% !important; }
    .master-theme #recaptcha_response_field {
      width: auto !important; }
    .master-theme #recaptcha_table > tbody td {
      padding: 0 !important;
      width: 100% !important; }
    .master-theme #GC.GC_product {
      background-image: none; }
    .master-theme #GC.GC_product .GC_product_description,
    .master-theme #GC.GC_product .GC_product_purchase,
    .master-theme #GC #markItUpBody #body {
      margin: 10px 1%;
      width: 98%; }
    .master-theme #GC.GC_store table {
      font-size: 8px; }
    .master-theme #GC button {
      margin-bottom: 2px;
      padding: 5px 15px; }
    .master-theme #GC #GC_checkout_progress li {
      display: block;
      padding: 5px 4% 5px 2%;
      text-align: center; }
    .master-theme #GC fieldset ul {
      padding-top: 90px; }
    .master-theme #GC .input label,
    .master-theme #GC .select label,
    .master-theme #GC .captcha label,
    .master-theme #GC .text label {
      float: none;
      text-align: left; }
    .master-theme #GC .GC_address,
    .master-theme #GC .GC_payment {
      float: none;
      width: 93%; }
    .master-theme #GC input[type="text"],
    .master-theme #GC input[type="password"],
    .master-theme #GC input[type="email"],
    .master-theme #GC input[type="tel"],
    .master-theme #GC input[type="date"],
    .master-theme #GC textarea,
    .master-theme .ui-dialog textarea {
      width: 93%; }
    .master-theme #GC .GC_shipping .GC_same_as_billing {
      left: 0; }
    .master-theme #GC .actions li,
    .master-theme #GC .actions .prev {
      display: block;
      float: none;
      margin-bottom: 4px; }
    .master-theme #GC.GC_account #toolbar {
      margin: 0; }
    .master-theme #GC.GC_account #toolbar .nav li a {
      text-indent: -9999px; }
    .master-theme #GC.GC_engine {
      width: 90%; }
    .master-theme #GC.GC_account.GC_mail table .time,
    .master-theme #GC.GC_account .GC_friends #GC_friend_action th:last-child,
    .master-theme #GC.GC_account .GC_friends #GC_friend_action td.time,
    .master-theme #GC.GC_account .GC_links table .url,
    .master-theme #GC.GC_account.GC_comments table .author,
    .master-theme #GC.GC_account.GC_comments table .date,
    .master-theme #GC.GC_account.GC_linked table tr .displayname,
    .master-theme #GC.GC_account .GC_orders .date,
    .master-theme #GC.GC_account .GC_orders .total {
      display: none; }
    .master-theme #GC.GC_product .GC_product_purchase .purchase_form .select {
      margin: 0; }
    .master-theme #GC.GC_cart h1 {
      line-height: 1em; }
    .master-theme #GC.GC_account .GC_panes > .GC_view {
      min-height: 0; }
    .master-theme #GC .actions .prev a {
      margin-right: 0; }
    .master-theme #GC .GC_ticket.GC_countdown {
      width: 100%; }
    .master-theme #GC input.quantity {
      width: 3em; }
    .master-theme #GC #GC_checkout_progress {
      text-align: center; }
    .master-theme #GC th.total, .master-theme #GC td.total, .master-theme #GC tfoot th {
      text-align: left; }
    .master-theme #GC.GC_payment_information .total strong {
      display: inline-block;
      background-color: transparent;
      color: #000; }
    .master-theme #GC.GC_payment_information #PaymentForm-continue button {
      display: block;
      width: 100%;
      padding: 15px; }
    .master-theme #GC tfoot th, .master-theme #GC tfoot td {
      display: block; }
    .master-theme #GC tfoot th {
      padding-bottom: 0; }
    .master-theme #GC tfoot td {
      padding-top: 0; }
    .master-theme #GC.GC_store table {
      font-size: 14px; }
    .master-theme #GC.GC_store thead {
      display: none; }
    .master-theme #GC.GC_store tbody td {
      display: block; }
      .master-theme #GC.GC_store tbody td.item:before {
        content: "Item: "; }
      .master-theme #GC.GC_store tbody td.shipping:before {
        content: "Shipping: "; }
      .master-theme #GC.GC_store tbody td.price:before {
        content: "Price: "; }
      .master-theme #GC.GC_store tbody td.quantity:before {
        content: "Quantity: "; }
      .master-theme #GC.GC_store tbody td.total:before {
        content: "Total: "; }
      .master-theme #GC.GC_store tbody td:before {
        font-weight: bold; } }

@media screen and (max-width: 880px) and (max-width: 600px) {
  .ui-dialog {
    max-width: 320px !important;
    box-shadow: rgba(0, 0, 0, 0.4) 0 0px 20px; } }

/**
 * import this into client directory and redefine
 * sass variables for customization
 * find variables inside @import './variables/variables.scss';
 */
/* Type */
/* carousel */
/* common variables for the store && account templates */
/* colors */
/* borders */
/* font */
/* line height */
/* form elements */
/* animations */
/* layout && breakpoints */
/* header / main nav */
/* account */
/* store listing types */
/* store aside */
/* footer */
/* modules */
/* Avatar rollovers */
.avatar_wrapper {
  position: relative;
  max-width: 100%;
  transition: none; }

.avatar_rollover {
  position: absolute;
  z-index: 1100;
  padding: 6px;
  color: #222222;
  border-radius: 5px;
  background-color: #EEEEEE;
  opacity: 0.9; }
  .avatar_rollover img {
    float: left;
    width: 100px;
    height: 100px;
    margin-right: 6px; }
  .avatar_rollover .rollover_content {
    float: left;
    width: 200px;
    overflow: hidden; }
    .avatar_rollover .rollover_content p {
      margin: 0;
      padding: 0; }
    .avatar_rollover .rollover_content .name {
      font-weight: 700;
      font-size: 18px; }
    .avatar_rollover .rollover_content .more dt, .avatar_rollover .rollover_content .more dd {
      width: 49px;
      margin: 0;
      padding: 0;
      float: left; }
    .avatar_rollover .rollover_content .more .stat {
      float: left;
      width: 100px; }

/* common variables for the store && account templates */
.no-border {
  border: 0 !important; }

.clearfix:before, .clearfix:after {
  content: '';
  display: table; }

.clearfix:after {
  clear: both; }

body {
  background-color: transparent;
  font-family: Helvetica, Arial, sans-serif;
  font-size: 16px;
  font-weight: normal; }
  body.account #page .wrap, body.store #page .wrap {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1180px; }
    @media screen and (max-width: 1180px) {
      body.account #page .wrap, body.store #page .wrap {
        padding: 0 10px; } }
  body.account #page a, body.store #page a {
    transition: 0.5s ease;
    color: #7e291a; }
    body.account #page a:hover, body.account #page a:focus, body.store #page a:hover, body.store #page a:focus {
      opacity: 0.8;
      color: rgba(54, 54, 54, 0.75);
      text-decoration: none;
      box-shadow: none;
      outline: none; }
  body.account .row, body.store .row {
    margin-left: 0;
    margin-right: 0; }
  body.account #container {
    display: block;
    overflow: hidden;
    clear: both;
    margin: auto;
    padding: 0 12px;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      body.account #container {
        padding: 0 0; } }
  body.store .section-cart,
  body.store .section-order-billing,
  body.store .section-shipping-method,
  body.store .section-payment-information,
  body.store .section-order-summary {
    background-color: transparent; }
    body.store .section-cart, body.store .section-cart h1, body.store .section-cart h2, body.store .section-cart h3, body.store .section-cart h4, body.store .section-cart h5, body.store .section-cart h6,
    body.store .section-order-billing,
    body.store .section-order-billing h1,
    body.store .section-order-billing h2,
    body.store .section-order-billing h3,
    body.store .section-order-billing h4,
    body.store .section-order-billing h5,
    body.store .section-order-billing h6,
    body.store .section-shipping-method,
    body.store .section-shipping-method h1,
    body.store .section-shipping-method h2,
    body.store .section-shipping-method h3,
    body.store .section-shipping-method h4,
    body.store .section-shipping-method h5,
    body.store .section-shipping-method h6,
    body.store .section-payment-information,
    body.store .section-payment-information h1,
    body.store .section-payment-information h2,
    body.store .section-payment-information h3,
    body.store .section-payment-information h4,
    body.store .section-payment-information h5,
    body.store .section-payment-information h6,
    body.store .section-order-summary,
    body.store .section-order-summary h1,
    body.store .section-order-summary h2,
    body.store .section-order-summary h3,
    body.store .section-order-summary h4,
    body.store .section-order-summary h5,
    body.store .section-order-summary h6 {
      color: #040404; }
  body.media {
    overflow: auto; }
  body.privacy .section.privacy {
    max-width: 1180px;
    margin: auto;
    padding: 12px; }
    @media screen and (max-width: 840px) {
      body.privacy .section.privacy {
        padding: 20px; } }

ul {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0;
  padding: 0; }
  ul li {
    list-style: none; }

ol {
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-padding-start: 0; }

@media screen and (max-width: 840px) {
  h1, h2, h3 {
    font-size: 24px;
    line-height: 1.4; } }

/* Form elements */
input {
  border: 0;
  border-radius: 0;
  padding: 5px;
  height: 36px;
  color: #040404; }
  input:focus {
    opacity: 0.8;
    outline: none; }

button:focus {
  opacity: 0.8;
  outline: none; }

a:focus {
  outline: none; }

select {
  color: #040404;
  text-indent: 5px; }

.input, .select {
  position: relative;
  display: block;
  overflow: hidden;
  width: 100%;
  color: #040404; }
  .input label, .select label {
    display: block;
    float: left;
    margin-bottom: 8px;
    padding: 0;
    width: 100%;
    line-height: 18px;
    font-weight: normal; }
  .input input, .select input {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff; }
    .input input:focus, .select input:focus {
      opacity: 0.8;
      outline: none; }
  .input select, .select select {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 0;
    width: 100%;
    height: 36px;
    text-align: left;
    line-height: 36px;
    text-indent: 9px;
    color: #040404;
    background-color: #fff;
    height: 36px;
    color: #040404;
    background-color: #fff;
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
    background-position: calc(98.75% - 5px) 50%;
    background-repeat: no-repeat;
    background-size: 10px;
    border-radius: 0; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
    .input select:focus, .select select:focus {
      opacity: 0.8;
      outline: none; }
  .input .error, .select .error {
    position: absolute;
    right: 5px;
    top: -2px;
    font-size: 14px;
    color: #d9534f; }
  .input.input-message .error, .select.input-message .error {
    margin-top: 9px; }
    @media screen and (max-width: 500px) {
      .input.input-message .error, .select.input-message .error {
        margin-left: 0; } }

/* row */
.row {
  margin-left: 0;
  margin-right: 0; }
  .row:before {
    content: none; }

.row-buttons {
  display: block;
  clear: both;
  float: left;
  margin: 20px 0; }
  @media screen and (max-width: 840px) {
    .row-buttons {
      width: 100%; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button {
      width: 100% !important;
      display: block;
      clear: both;
      margin: 5px 0; } }
  @media screen and (max-width: 840px) {
    .row-buttons .button:nth-child(2) {
      margin: 10px 0 !important; } }
  .row-buttons.row-buttons-two {
    width: 100%;
    padding-top: 20px;
    border-top: 1px solid #f1f1f1; }
    .row-buttons.row-buttons-two .button {
      display: inline-block; }
      .row-buttons.row-buttons-two .button:nth-child(2) {
        float: right; }

/* buttons */
.button, a.button {
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 0;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease;
  /* Piss Poor Planning Promotes Poor Performance  */ }
  .button:hover, .button:focus, a.button:hover, a.button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  body.account #page .button,
  body.store #page .button, body.account #page a.button,
  body.store #page a.button {
    color: #fff; }

.button-primary {
  background-color: #7e291a; }
  .button-primary:hover, .button-primary:focus {
    background-color: #541b11; }

button[disabled="disabled"],
a[disabled="disabled"] {
  cursor: not-allowed !important;
  opacity: 0.5; }

.btn-accordion {
  display: inline-block;
  padding-bottom: 1em; }
  .btn-accordion:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-left: 0.5em;
    border-style: solid;
    border-width: 0.5em 0.25em 0 0.25em;
    border-color: #7e291a transparent transparent transparent; }
  .btn-accordion[aria-expanded="true"]:after {
    transform: rotate(180deg); }

#fancybox-content p {
  color: #040404; }

#fancybox-content button {
  padding: 10px 14px;
  border: none;
  border-radius: 4px;
  background-color: #e4e4e4;
  transition: 0.5s ease;
  padding: 12px 24px;
  background-color: #666666;
  border: 0;
  border-radius: 0;
  color: #fff;
  display: inline-block;
  font-size: initial;
  text-align: center;
  text-transform: capitalize;
  transition: 0.5s ease; }
  #fancybox-content button:hover, #fancybox-content button:focus {
    background-color: gray;
    color: #fff;
    text-decoration: none;
    outline: 0;
    box-shadow: none; }
  #fancybox-content button:hover {
    opacity: 0.75; }

/* store imports */
/* mixin for flaged listing for products and categories */
/**
 * general listing for products and categories
 */
/* store elements */
.main-store-products,
.main-category-products {
  width: 75%;
  float: left;
  padding-right: 15px; }
  .main-store-products:before, .main-store-products:after,
  .main-category-products:before,
  .main-category-products:after {
    content: '';
    display: table; }
  .main-store-products:after,
  .main-category-products:after {
    clear: both; }
  @media screen and (max-width: 840px) {
    .main-store-products,
    .main-category-products {
      display: block;
      clear: both;
      width: 100%;
      padding: 10px; }
      @supports (padding: 0px) {
        .main-store-products,
        .main-category-products {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .main-store-products img,
  .main-category-products img {
    width: 100%; }

.aside-store {
  color: #040404;
  width: 25%;
  float: right;
  padding-left: 15px; }
  @media screen and (max-width: 840px) {
    .aside-store {
      display: block;
      clear: both;
      width: 100%;
      padding: 10px; }
      @supports (padding: 0px) {
        .aside-store {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }

aside#wu-alert-banner {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  width: 100vw;
  min-height: 50px;
  position: absolute;
  background-color: #db0000;
  opacity: 0.9;
  color: #fff;
  z-index: 1234;
  display: flex;
  align-items: center;
  justify-content: center; }
  aside#wu-alert-banner .message-text {
    text-align: center;
    flex-basis: 50%; }
    aside#wu-alert-banner .message-text .more-info {
      color: #fff;
      text-decoration: underline;
      display: block; }
      aside#wu-alert-banner .message-text .more-info:hover, aside#wu-alert-banner .message-text .more-info:focus {
        color: #fff; }
  aside#wu-alert-banner .close {
    cursor: pointer;
    opacity: 1;
    color: #fff;
    height: 20px;
    width: 20px;
    position: absolute;
    right: 10px;
    top: 10px; }

.section-order-billing {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 0;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-billing {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-billing {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-order-billing .section-billing-profile,
  .section-order-billing .section-billing-information {
    background-color: #f7f7f7;
    border-radius: 0;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-order-billing .section-billing-profile,
      .section-order-billing .section-billing-information {
        padding: 10px; } }
    .section-order-billing .section-billing-profile h1, .section-order-billing .section-billing-profile h2, .section-order-billing .section-billing-profile h3,
    .section-order-billing .section-billing-information h1,
    .section-order-billing .section-billing-information h2,
    .section-order-billing .section-billing-information h3 {
      margin-top: 0; }
    .section-order-billing .section-billing-profile input, .section-order-billing .section-billing-profile select,
    .section-order-billing .section-billing-information input,
    .section-order-billing .section-billing-information select {
      background-color: #fff;
      border-radius: 4px;
      font: 300 16px "Helvetica Neue", Helvetica, Arial, sans-serif; }
    .section-order-billing .section-billing-profile .row-payment-method,
    .section-order-billing .section-billing-information .row-payment-method {
      margin-bottom: 20px; }
    .section-order-billing .section-billing-profile .fieldset,
    .section-order-billing .section-billing-information .fieldset {
      padding: 0 20px 0 0;
      float: left;
      width: 50%;
      position: relative;
      transition: 0.5s ease; }
      @media screen and (max-width: 840px) {
        .section-order-billing .section-billing-profile .fieldset,
        .section-order-billing .section-billing-information .fieldset {
          display: block;
          width: 100%;
          padding: 0; } }
      .section-order-billing .section-billing-profile .fieldset legend,
      .section-order-billing .section-billing-information .fieldset legend {
        position: relative;
        border: 0;
        width: 100%;
        top: 5px;
        color: #040404; }
      .section-order-billing .section-billing-profile .fieldset ul,
      .section-order-billing .section-billing-information .fieldset ul {
        position: relative; }
    .section-order-billing .section-billing-profile .button:nth-child(2),
    .section-order-billing .section-billing-information .button:nth-child(2) {
      margin-left: 10px; }
    .section-order-billing .section-billing-profile .button-continue,
    .section-order-billing .section-billing-profile .button-save,
    .section-order-billing .section-billing-information .button-continue,
    .section-order-billing .section-billing-information .button-save {
      background-color: #7e291a; }
      .section-order-billing .section-billing-profile .button-continue:hover, .section-order-billing .section-billing-profile .button-continue:focus,
      .section-order-billing .section-billing-profile .button-save:hover,
      .section-order-billing .section-billing-profile .button-save:focus,
      .section-order-billing .section-billing-information .button-continue:hover,
      .section-order-billing .section-billing-information .button-continue:focus,
      .section-order-billing .section-billing-information .button-save:hover,
      .section-order-billing .section-billing-information .button-save:focus {
        background-color: #541b11; }
  .section-order-billing .section-billing-profile {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    padding-bottom: 0; }
  .section-order-billing .section-billing-information {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    padding-top: 0; }
  .section-order-billing .StripeElement {
    display: block;
    float: left;
    margin-bottom: 18px;
    border: 0;
    padding: 8px 10px;
    width: 100%;
    height: 36px;
    text-align: left;
    text-indent: 9px;
    color: #000;
    background-color: #fff;
    border-radius: 4px; }

.cart-info {
  background-color: #f7f7f7;
  border-radius: 0;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1180px;
  color: #040404;
  overflow: hidden;
  display: block;
  padding: 0; }
  @media screen and (max-width: 840px) {
    .cart-info {
      padding: 10px; } }
  .cart-info .cart-items {
    float: right; }
    @media screen and (max-width: 840px) {
      .cart-info .cart-items {
        float: none; } }

.section-cart {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 0;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-cart {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-cart {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-cart h1 {
    font-size: 28px;
    margin: 20px 0 40px 0; }
    @media screen and (max-width: 840px) {
      .section-cart h1 {
        text-align: center; } }
  .section-cart .section-cart-information {
    background-color: #f7f7f7;
    border-radius: 0;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-cart .section-cart-information {
        padding: 10px; } }
    .section-cart .section-cart-information .review {
      border-bottom: 1px solid #f1f1f1;
      padding: 10px 12px; }
  .section-cart .table {
    border-radius: 0;
    padding: 10px; }
    @media screen and (max-width: 840px) {
      .section-cart .table thead {
        display: none; } }
    .section-cart .table .total {
      text-align: right; }
      @media screen and (max-width: 840px) {
        .section-cart .table .total {
          text-align: left; } }
    .section-cart .table th.quantity, .section-cart .table td.quantity {
      width: 100px;
      white-space: nowrap; }
      @media screen and (max-width: 840px) {
        .section-cart .table th.quantity, .section-cart .table td.quantity {
          width: 100%; } }
    .section-cart .table th {
      padding: 12px; }
    .section-cart .table td {
      vertical-align: baseline;
      padding: 12px;
      font-weight: 300; }
      @media screen and (max-width: 840px) {
        .section-cart .table td {
          display: block;
          width: 100%; }
          .section-cart .table td:before {
            content: attr(data-description);
            display: block;
            font-weight: 800; } }
      @media screen and (max-width: 840px) {
        .section-cart .table td.td-bundle-extra {
          display: none; } }
      .section-cart .table td .button-quantity {
        height: 32px;
        width: 31px;
        background-color: #666666;
        text-transform: uppercase;
        padding: 0;
        line-height: 1.0;
        font-size: 12px;
        font-weight: bold; }
        .section-cart .table td .button-quantity:hover {
          background-color: #444444; }
      .section-cart .table td.item a {
        margin-right: 5px;
        text-transform: capitalize; }
        .section-cart .table td.item a:hover {
          color: #e4e4e4; }
      .section-cart .table td.item .sku {
        display: block;
        color: #666666; }
      .section-cart .table td.quantity input {
        position: relative;
        height: 32px;
        width: 36px;
        top: 2px;
        margin-right: 4px;
        color: #040404;
        background-color: #fff; }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot {
        padding: 20px 0;
        display: block; } }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot th, .section-cart .table tfoot td {
        display: block;
        padding: 8px 12px 4px 12px; } }
    @media screen and (max-width: 840px) {
      .section-cart .table tfoot td {
        padding: 2px 12px; } }
  .section-cart .table > thead > tr > th,
  .section-cart .table > tbody > tr > td {
    border-bottom: 1px solid #f1f1f1;
    border-top: 0; }
    @media screen and (max-width: 840px) {
      .section-cart .table > thead > tr > th:not(:last-child),
      .section-cart .table > tbody > tr > td:not(:last-child) {
        border-color: rgba(241, 241, 241, 0.2); } }
  .section-cart .table > tfoot > tr > td,
  .section-cart .table > tfoot > tr > th {
    border-top: 0;
    text-align: right;
    width: 100px; }
    @media screen and (max-width: 840px) {
      .section-cart .table > tfoot > tr > td,
      .section-cart .table > tfoot > tr > th {
        text-align: left;
        width: 100%; } }
  .section-cart .row-buttons-actions {
    padding: 20px 0;
    width: 100%;
    overflow: hidden;
    margin-top: 20px;
    border-top: 1px solid #f1f1f1; }
    .section-cart .row-buttons-actions a, .section-cart .row-buttons-actions button {
      padding: 12px 24px;
      background-color: #666666;
      border: 0;
      border-radius: 0;
      color: #fff;
      display: inline-block;
      font-size: initial;
      text-align: center;
      text-transform: capitalize;
      transition: 0.5s ease;
      display: inline-block; }
      .section-cart .row-buttons-actions a:hover, .section-cart .row-buttons-actions a:focus, .section-cart .row-buttons-actions button:hover, .section-cart .row-buttons-actions button:focus {
        background-color: gray;
        color: #fff;
        text-decoration: none;
        outline: 0;
        box-shadow: none; }
      .section-cart .row-buttons-actions a:hover, .section-cart .row-buttons-actions a:focus, .section-cart .row-buttons-actions button:hover, .section-cart .row-buttons-actions button:focus {
        background-color: #AAAAAA; }
      @media screen and (max-width: 840px) {
        .section-cart .row-buttons-actions a, .section-cart .row-buttons-actions button {
          display: block;
          width: 100%;
          margin-bottom: 20px; } }
    @media screen and (min-width: 840px) {
      .section-cart .row-buttons-actions .button-group {
        float: right; } }
    @media screen and (max-width: 840px) {
      .section-cart .row-buttons-actions .button-continue {
        padding: 12px;
        width: 100%; }
        .section-cart .row-buttons-actions .button-continue:hover, .section-cart .row-buttons-actions .button-continue:focus {
          color: #666666; } }
    .section-cart .row-buttons-actions .button-update {
      margin-right: 20px; }
      @media screen and (max-width: 840px) {
        .section-cart .row-buttons-actions .button-update {
          margin-right: 0; } }
    .section-cart .row-buttons-actions .button-checkout {
      background-color: #7e291a; }
      .section-cart .row-buttons-actions .button-checkout:hover, .section-cart .row-buttons-actions .button-checkout:focus {
        background-color: #541b11; }

.section-store-categories .item {
  width: 33%;
  text-align: center; }
  .section-store-categories .item .figure {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
    min-width: 0;
    max-width: 100%;
    overflow: hidden; }
    .section-store-categories .item .figure a {
      display: block;
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0; }
    .section-store-categories .item .figure img {
      width: 100%;
      max-width: 100%;
      vertical-align: middle;
      transition: 0.5s ease; }
      @media screen and (max-width: 840px) {
        .section-store-categories .item .figure img {
          margin: auto; } }
  .section-store-categories .item .product-details {
    margin-top: 10px; }
    .section-store-categories .item .product-details .product-container .product {
      margin-top: 5px; }

.section-store-categories .header-store-categories h2.title {
  margin-bottom: 60px; }

.section-store-categories .item {
  height: 100%;
  min-height: 100%;
  margin-bottom: 20px; }

.section-store-categories .item .content {
  background-color: #fff; }
  .section-store-categories .item .content a {
    padding: 6px 10px 10px 10px; }
    .section-store-categories .item .content a:hover {
      color: rgba(4, 4, 4, 0.5); }

.section-store-categories .header-categories .title, .section-store-categories .header-store-categories .title {
  margin-bottom: 20px; }

.section-store-categories .detail-store-categories {
  overflow: hidden;
  margin: 20px auto 100px auto; }
  .section-store-categories .detail-store-categories .listing {
    display: flex;
    flex-wrap: wrap; }

.section-store-categories .details.excerpt .name {
  position: relative;
  top: 5px; }

/* store category nav list */
.nav-categories {
  text-align: center; }
  .nav-categories .wrap {
    padding-bottom: 12px;
    padding-top: 12px; }
    .nav-categories .wrap .listing {
      display: inline-block; }

.main-category-products .header-category h1.title {
  margin-bottom: 60px; }

.main-category-products .listing {
  display: flex;
  flex-wrap: wrap; }

.main-category-products .detail {
  display: block;
  overflow: hidden;
  margin: 0 0 100px 0; }
  .main-category-products .detail .item {
    width: 33%;
    text-align: center; }
    .main-category-products .detail .item .figure {
      position: relative;
      width: 100%;
      height: 0;
      padding-bottom: 100%;
      min-width: 0;
      max-width: 100%;
      overflow: hidden; }
      .main-category-products .detail .item .figure a {
        display: block;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0; }
      .main-category-products .detail .item .figure img {
        width: 100%;
        max-width: 100%;
        vertical-align: middle;
        transition: 0.5s ease; }
        @media screen and (max-width: 840px) {
          .main-category-products .detail .item .figure img {
            margin: auto; } }
    .main-category-products .detail .item .product-details {
      margin-top: 10px; }
      .main-category-products .detail .item .product-details .product-container .product {
        margin-top: 5px; }
  .main-category-products .detail .item {
    padding: 0 20px;
    margin-bottom: 40px; }
    @media screen and (max-width: 500px) {
      .main-category-products .detail .item {
        padding: 0 10px;
        width: 50%; }
        .main-category-products .detail .item .name {
          font-size: 0.8em; } }
  .main-category-products .detail .details .tab {
    display: none; }
  .main-category-products .detail .details .product-details {
    text-align: center; }
  .main-category-products .detail .cash {
    font-weight: 800; }

.section-order-extra {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 0;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-extra {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-extra {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (max-width: 840px) {
    .section-order-extra {
      padding: 20px; } }
  .section-order-extra .section-additional-information {
    background-color: #f7f7f7;
    border-radius: 0;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-order-extra .section-additional-information {
        padding: 10px; } }
    .section-order-extra .section-additional-information .fieldset legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404;
      color: #fff; }
    .section-order-extra .section-additional-information .row-buttons .button-shipping-back {
      padding: 14px 24px; }
      .section-order-extra .section-additional-information .row-buttons .button-shipping-back:hover, .section-order-extra .section-additional-information .row-buttons .button-shipping-back:focus {
        color: #fff; }
    .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info {
      background-color: #7e291a;
      margin-left: 10px; }
      .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info:hover, .section-order-extra .section-additional-information .row-buttons .button-submit-additional-info:focus {
        background-color: #541b11; }

.section-payment-information {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 0;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-payment-information {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-payment-information {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-payment-information .header-order-summary {
    background-color: #f7f7f7;
    border-radius: 0;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px;
    margin-bottom: 30px; }
    @media screen and (max-width: 840px) {
      .section-payment-information .header-order-summary {
        padding: 10px; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .header-order-summary {
        padding: 0 20px; } }
  .section-payment-information .section-payment-address-information,
  .section-payment-information .section-purchase-information {
    background-color: #f7f7f7;
    border-radius: 0;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information,
      .section-payment-information .section-purchase-information {
        padding: 10px; } }
    .section-payment-information .section-payment-address-information .col,
    .section-payment-information .section-purchase-information .col {
      float: left; }
      .section-payment-information .section-payment-address-information .col.col-1-2,
      .section-payment-information .section-purchase-information .col.col-1-2 {
        width: 50%;
        margin-bottom: 20px; }
        @media screen and (max-width: 840px) {
          .section-payment-information .section-payment-address-information .col.col-1-2,
          .section-payment-information .section-purchase-information .col.col-1-2 {
            width: 100%;
            display: block;
            clear: both; }
            .section-payment-information .section-payment-address-information .col.col-1-2:nth-child(2),
            .section-payment-information .section-purchase-information .col.col-1-2:nth-child(2) {
              margin-top: 20px; } }
        .section-payment-information .section-payment-address-information .col.col-1-2 ul:nth-child(2),
        .section-payment-information .section-purchase-information .col.col-1-2 ul:nth-child(2) {
          margin: 10px 0; }
        .section-payment-information .section-payment-address-information .col.col-1-2 ul li:nth-child(1),
        .section-payment-information .section-purchase-information .col.col-1-2 ul li:nth-child(1) {
          padding-bottom: 5px; }
    .section-payment-information .section-payment-address-information .table > thead > tr > th,
    .section-payment-information .section-payment-address-information .table > tbody > tr > td,
    .section-payment-information .section-payment-address-information .table > tfoot > tr > td,
    .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
    .section-payment-information .section-purchase-information .table > thead > tr > th,
    .section-payment-information .section-purchase-information .table > tbody > tr > td,
    .section-payment-information .section-purchase-information .table > tfoot > tr > td,
    .section-payment-information .section-purchase-information .table > tfoot > tr > th {
      border-bottom: 1px solid #f1f1f1;
      border-top: 0; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table > thead > tr > th:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tbody > tr > td:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tfoot > tr > td:not(:last-child),
        .section-payment-information .section-payment-address-information .table > tfoot > tr > th:not(:last-child),
        .section-payment-information .section-purchase-information .table > thead > tr > th:not(:last-child),
        .section-payment-information .section-purchase-information .table > tbody > tr > td:not(:last-child),
        .section-payment-information .section-purchase-information .table > tfoot > tr > td:not(:last-child),
        .section-payment-information .section-purchase-information .table > tfoot > tr > th:not(:last-child) {
          border-color: rgba(241, 241, 241, 0.2); } }
    .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
    .section-payment-information .section-purchase-information .table > tfoot > tr > th {
      text-align: right; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table > tfoot > tr > td,
      .section-payment-information .section-payment-address-information .table > tfoot > tr > th,
      .section-payment-information .section-purchase-information .table > tfoot > tr > td,
      .section-payment-information .section-purchase-information .table > tfoot > tr > th {
        text-align: left;
        width: 100%;
        border-top: 0;
        border-bottom: 0; } }
    .section-payment-information .section-payment-address-information .table .total,
    .section-payment-information .section-purchase-information .table .total {
      text-align: right; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .total,
        .section-payment-information .section-purchase-information .table .total {
          text-align: left; } }
      .section-payment-information .section-payment-address-information .table .total strong,
      .section-payment-information .section-purchase-information .table .total strong {
        background-color: #5cb85c;
        color: #fff;
        padding: 6px 8px;
        border-radius: 14px;
        font-size: 1.2em; }
    .section-payment-information .section-payment-address-information .table .sku,
    .section-payment-information .section-purchase-information .table .sku {
      color: #666666; }
    .section-payment-information .section-payment-address-information .table .quantity,
    .section-payment-information .section-purchase-information .table .quantity {
      text-align: center; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .quantity,
        .section-payment-information .section-purchase-information .table .quantity {
          text-align: left; } }
    .section-payment-information .section-payment-address-information .table a.button,
    .section-payment-information .section-purchase-information .table a.button {
      width: 160px;
      font-size: 12px; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table a.button,
        .section-payment-information .section-purchase-information .table a.button {
          width: 100%; } }
    .section-payment-information .section-payment-address-information .table .button,
    .section-payment-information .section-purchase-information .table .button {
      display: block; }
      @media screen and (max-width: 840px) {
        .section-payment-information .section-payment-address-information .table .button,
        .section-payment-information .section-purchase-information .table .button {
          width: 100%; } }
    .section-payment-information .section-payment-address-information .table #promoCode,
    .section-payment-information .section-purchase-information .table #promoCode {
      display: none; }
      .section-payment-information .section-payment-address-information .table #promoCode input,
      .section-payment-information .section-purchase-information .table #promoCode input {
        text-align: left;
        width: 340px;
        display: inline;
        height: 42px;
        text-indent: 9px;
        background-color: #fff; }
        @media screen and (max-width: 840px) {
          .section-payment-information .section-payment-address-information .table #promoCode input,
          .section-payment-information .section-purchase-information .table #promoCode input {
            margin-top: 10px;
            width: 100%; } }
      .section-payment-information .section-payment-address-information .table #promoCode button,
      .section-payment-information .section-purchase-information .table #promoCode button {
        margin-top: 10px;
        display: inline;
        font-size: 12px;
        background-color: #7e291a; }
        .section-payment-information .section-payment-address-information .table #promoCode button:hover, .section-payment-information .section-payment-address-information .table #promoCode button:focus,
        .section-payment-information .section-purchase-information .table #promoCode button:hover,
        .section-payment-information .section-purchase-information .table #promoCode button:focus {
          background-color: #541b11; }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table thead,
      .section-payment-information .section-purchase-information .table thead {
        display: none; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table td,
      .section-payment-information .section-purchase-information .table td {
        display: block;
        width: 100%; }
        .section-payment-information .section-payment-address-information .table td:before,
        .section-payment-information .section-purchase-information .table td:before {
          content: attr(data-description);
          display: block;
          font-weight: 800; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot,
      .section-payment-information .section-purchase-information .table tfoot {
        padding: 20px 0; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot th, .section-payment-information .section-payment-address-information .table tfoot td,
      .section-payment-information .section-purchase-information .table tfoot th,
      .section-payment-information .section-purchase-information .table tfoot td {
        display: block;
        padding: 12px 8px 4px 8px;
        border-bottom: 0;
        border-top: 0; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table tfoot td,
      .section-payment-information .section-purchase-information .table tfoot td {
        padding: 8px; } }
    @media screen and (max-width: 840px) {
      .section-payment-information .section-payment-address-information .table #totals tr .grand-total,
      .section-payment-information .section-purchase-information .table #totals tr .grand-total {
        margin-bottom: 20px; } }
  .section-payment-information .section-purchase-information {
    margin-top: 20px; }
    .section-payment-information .section-purchase-information .table {
      margin-bottom: 40px; }
    .section-payment-information .section-purchase-information .row-review a {
      text-decoration: underline; }
    .section-payment-information .section-purchase-information .button-continue {
      background-color: #5cb85c; }
      .section-payment-information .section-purchase-information .button-continue:hover {
        background-color: #449d44; }
  .section-payment-information a.button {
    text-align: center; }
    .section-payment-information a.button:hover, .section-payment-information a.button:focus {
      color: #fff; }
  .section-payment-information .row-review {
    margin-top: 20px; }

.section-will-call .section-will-call-form {
  background-color: #f7f7f7;
  border-radius: 0;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1180px; }
  @media screen and (max-width: 840px) {
    .section-will-call .section-will-call-form {
      padding: 10px; } }

.aside-store {
  background-color: #f7f7f7;
  border-radius: 0;
  color: #040404;
  display: block;
  overflow: hidden;
  padding: 20px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1180px;
  float: right;
  width: 25%;
  margin: 0; }
  @media screen and (max-width: 840px) {
    .aside-store {
      padding: 10px; } }
  @media screen and (max-width: 840px) {
    .aside-store {
      display: block;
      width: 100%; } }
  .aside-store > .header {
    padding: 0 0 15px 0; }
  .aside-store .header .title {
    margin-bottom: 20px; }
  .aside-store .header .cart-items {
    float: none; }
  .aside-store .header-aside .title {
    color: #040404; }
  .aside-store .header-aside .meta .expire .cart {
    font-size: 12px; }
  .aside-store .view-cart {
    text-align: center; }
    .aside-store .view-cart .button.cart {
      display: inline-block;
      background-color: #7e291a;
      padding: 11px 20px;
      font-size: 14px; }
      .aside-store .view-cart .button.cart .badge {
        background-color: #fff;
        color: #7e291a;
        margin: -0.2em 0 0 0.5em; }
      .aside-store .view-cart .button.cart:hover {
        background-color: #541b11; }
  .aside-store .cart-items {
    margin: 10px auto 5px;
    text-align: center; }
  .aside-store .title {
    border-right: 0; }
  .aside-store .listing .item {
    padding: 10px 5px;
    border-bottom: 1px solid #f1f1f1; }
    .aside-store .listing .item span, .aside-store .listing .item a {
      transition: 0.5s ease; }
  .aside-store .section-categories .header-aside, .aside-store .section-categories .header-categories {
    background-color: initial;
    border-color: transparent; }
    .aside-store .section-categories .header-aside .title, .aside-store .section-categories .header-categories .title {
      margin: 0;
      font-size: 16px;
      text-align: center; }
  .aside-store .section-categories .detail ul li:nth-child(1) {
    border-top: 1px solid #f1f1f1; }
  .aside-store .section-categories .item.current {
    font-weight: 800; }
  @media screen and (min-width: 840px) {
    .aside-store .section-categories .collapse, .aside-store .section-categories .collapsing {
      display: block;
      height: auto !important; }
    .aside-store .section-categories .btn-accordion:after {
      display: none; } }

.cart-timer {
  text-align: center; }
  .cart-timer .expire {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 0.9em;
    white-space: normal; }
    .cart-timer .expire .cart {
      visibility: hidden;
      color: #fff; }
      .cart-timer .expire .cart-visible {
        visibility: visible; }

.checkout-progress {
  background-color: #f7f7f7;
  text-align: center;
  padding: 10px 0;
  margin: 10px auto 30px;
  display: block;
  border-radius: 0;
  max-width: 1180px; }
  .checkout-progress li {
    color: #040404;
    display: inline;
    padding: 20px 10px; }
    @media screen and (max-width: 840px) {
      .checkout-progress li {
        display: block;
        padding: 10px; } }
    .checkout-progress li i {
      color: #5cb85c;
      top: 3px;
      padding-right: 3px; }
  .checkout-progress .current {
    font-weight: 800; }

.section-product-detail {
  color: #040404; }
  @supports (padding: 0px) {
    .section-product-detail {
      padding-left: max(10px, env(safe-area-inset-left));
      padding-right: max(10px, env(safe-area-inset-right)); } }
  .section-product-detail .wrap {
    display: block;
    overflow: hidden;
    background-color: #f7f7f7;
    border: 0 solid #3C3333;
    border-radius: 0;
    color: #040404;
    padding: 20px; }
    @media screen and (max-width: 840px) {
      .section-product-detail .wrap {
        padding: 10px; }
        @supports (padding: 0px) {
          .section-product-detail .wrap {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (min-width: 841px) {
    .section-product-detail .section-product-description,
    .section-product-detail .section-product-purchase {
      float: left;
      width: 50%;
      padding: 12px; } }
  .section-product-detail .section-product-description .figure {
    background-color: #fff;
    border: 0 solid #3C3333;
    max-width: 400px;
    margin: 10px auto;
    text-align: center; }
    .section-product-detail .section-product-description .figure.active .image-placeholder {
      display: none; }
    .section-product-detail .section-product-description .figure .image {
      max-width: 96%;
      margin: 2% auto;
      padding: 2%;
      vertical-align: middle;
      transition: 0.5s ease; }
    .section-product-detail .section-product-description .figure ul li {
      display: inline; }
      .section-product-detail .section-product-description .figure ul li img {
        transition: 0.5s ease; }
        .section-product-detail .section-product-description .figure ul li img:hover {
          opacity: 0.8; }
  .section-product-detail .section-product-description .product-social {
    display: flex;
    justify-content: center;
    align-items: baseline;
    margin: 2em 0; }
    .section-product-detail .section-product-description .product-social .like {
      margin-top: 0;
      width: 80px; }
    .section-product-detail .section-product-description .product-social .trustpilot-widget {
      width: 180px;
      height: 38px; }
  .section-product-detail .section-product-purchase {
    margin-bottom: 60px; }
    .section-product-detail .section-product-purchase > h1 {
      color: #040404;
      font-size: 22px;
      padding-top: 0;
      margin-top: 0;
      line-height: 1em; }
    .section-product-detail .section-product-purchase .price {
      font-size: 30px;
      margin: 0; }
    .section-product-detail .section-product-purchase p {
      margin: 0.25em 0 0.5em 0;
      line-height: 1.5em; }
    .section-product-detail .section-product-purchase ul li {
      list-style: none;
      margin: 0; }
      .section-product-detail .section-product-purchase ul li.price {
        margin-bottom: 10px; }
      .section-product-detail .section-product-purchase ul li.stock, .section-product-detail .section-product-purchase ul li.sku {
        display: inline-block; }
      .section-product-detail .section-product-purchase ul li.stock {
        background-color: #6C8869;
        color: #fff;
        border-radius: 15px;
        padding: 0 10px;
        font-size: 12px;
        margin-right: 6px;
        line-height: 2; }
        .section-product-detail .section-product-purchase ul li.stock.out {
          background-color: #d9534f; }
    .section-product-detail .section-product-purchase .purchase_form fieldset {
      margin-top: 20px;
      padding-top: 0;
      position: relative;
      transition: all 1ms 100ms; }
      .section-product-detail .section-product-purchase .purchase_form fieldset legend {
        padding: 0;
        border-bottom: 0;
        margin-bottom: 0; }
        .section-product-detail .section-product-purchase .purchase_form fieldset legend span {
          color: #040404;
          display: block;
          padding: 2px 0 10px 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset input {
        color: #040404;
        line-height: 1.0;
        background-color: #fff; }
        .section-product-detail .section-product-purchase .purchase_form fieldset input:focus {
          opacity: 0.6;
          outline: none; }
      .section-product-detail .section-product-purchase .purchase_form fieldset input[type="radio"], .section-product-detail .section-product-purchase .purchase_form fieldset input[type="checkbox"] {
        margin-top: 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select label {
        margin-right: 4px;
        width: auto; }
        @media screen and (max-width: 840px) {
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select label {
            line-height: 26px; } }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.variations .select select {
        border: 0; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment {
        padding-top: 10px; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked {
          display: block;
          padding: 12px 6px;
          border-radius: 5px;
          background-color: #B4D7B8;
          border: 1px solid #6C8869;
          line-height: 1.5; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked label {
            color: #666666;
            padding-left: 30px; }
            .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked label span {
              color: #6C8869;
              display: block; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.payment li.checked input {
            margin: 2px 0 0 -25px;
            width: auto;
            height: auto; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart {
        padding-top: 10px; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity {
          display: inline;
          width: 50px; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity label {
            display: inline;
            margin-right: 5px; }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .quantity .error {
            position: absolute;
            top: 35px;
            color: #d9534f; }
        .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
          float: right;
          padding: 2px 10px;
          width: 140px;
          font-size: 16px;
          background-color: #7e291a;
          transition: 0.5s ease; }
          @media screen and (max-width: 400px) {
            .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart {
              display: block;
              clear: both;
              width: 100%;
              margin: 10px auto; } }
          .section-product-detail .section-product-purchase .purchase_form fieldset ul.add-to-cart .button-add-to-cart:hover {
            background-color: #541b11; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul li {
        line-height: 36px;
        position: relative; }
      .section-product-detail .section-product-purchase .purchase_form fieldset ul + ul {
        margin-top: 10px;
        border-top: 1px solid #f1f1f1; }
    .section-product-detail .section-product-purchase .meta {
      padding: 0 0 20px 0;
      margin-bottom: 20px;
      border-bottom: 1px solid #f1f1f1; }

/* 2-col Product Listing */
@media screen and (max-width: 500px) {
  .main-store-products .header-products .title {
    text-align: center; } }

@media screen and (max-width: 500px) {
  .main-store-products .products .item {
    width: 100%; } }

.main-store-products .products .cost {
  font-weight: 800; }

.main-store-products .products.section-products-featured {
  overflow: hidden; }
  .main-store-products .products.section-products-featured .listing .none {
    display: none; }

.main-store-products .products.section-products {
  overflow: hidden;
  margin-bottom: 20px; }

/* 3-col Product Listing */
.section-products-featured, .section-products {
  display: block;
  clear: both;
  overflow: hidden; }
  .section-products-featured .listing, .section-products .listing {
    display: flex;
    flex-wrap: wrap; }
    .section-products-featured .listing .item, .section-products .listing .item {
      width: 33%;
      padding: 0 20px;
      margin-bottom: 40px; }
      @media screen and (max-width: 500px) {
        .section-products-featured .listing .item, .section-products .listing .item {
          padding: 0 10px;
          width: 50%; } }
      .section-products-featured .listing .item .flag, .section-products .listing .item .flag {
        display: none; }
      .section-products-featured .listing .item .tab, .section-products .listing .item .tab {
        display: none; }
      .section-products-featured .listing .item .product-details, .section-products-featured .listing .item .tab, .section-products .listing .item .product-details, .section-products .listing .item .tab {
        text-align: center; }

.section-products-featured .listing .item {
  width: 50%; }
  @media screen and (max-width: 500px) {
    .section-products-featured .listing .item {
      width: 100%; } }

@media screen and (max-width: 500px) {
  .section-products .item .name {
    font-size: 0.8em; } }

.section-shipping-method {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 0;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-shipping-method {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-shipping-method {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .section-shipping-method .section-shipping-address-container,
  .section-shipping-method .section-shipping-method-container {
    background-color: #f7f7f7;
    border-radius: 0;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-shipping-method .section-shipping-address-container,
      .section-shipping-method .section-shipping-method-container {
        padding: 10px; } }
    .section-shipping-method .section-shipping-address-container .button-save-address,
    .section-shipping-method .section-shipping-address-container .button-save-method,
    .section-shipping-method .section-shipping-method-container .button-save-address,
    .section-shipping-method .section-shipping-method-container .button-save-method {
      background-color: #7e291a; }
      .section-shipping-method .section-shipping-address-container .button-save-address:hover, .section-shipping-method .section-shipping-address-container .button-save-address:focus,
      .section-shipping-method .section-shipping-address-container .button-save-method:hover,
      .section-shipping-method .section-shipping-address-container .button-save-method:focus,
      .section-shipping-method .section-shipping-method-container .button-save-address:hover,
      .section-shipping-method .section-shipping-method-container .button-save-address:focus,
      .section-shipping-method .section-shipping-method-container .button-save-method:hover,
      .section-shipping-method .section-shipping-method-container .button-save-method:focus {
        background-color: #541b11; }
  .section-shipping-method .section-shipping-address-container .fieldset-change-shipping-address .checkbox label {
    margin-left: 20px; }
  .section-shipping-method .section-shipping-address-container .fieldset-change-shipping-address .checkbox input {
    margin: 2px 0 0 -20px; }
  .section-shipping-method .section-shipping-method-container {
    margin-top: 20px; }
  .section-shipping-method .fieldset {
    padding: 0 20px 0 0;
    float: left;
    width: 50%;
    position: relative;
    transition: 0.5s ease;
    margin: 20px 0; }
    @media screen and (max-width: 840px) {
      .section-shipping-method .fieldset {
        width: 100%;
        display: block;
        clear: both;
        padding: 0; }
        .section-shipping-method .fieldset:nth-child(2) {
          margin-top: 20px; } }
    .section-shipping-method .fieldset legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404; }
    .section-shipping-method .fieldset .checkbox input {
      width: auto;
      height: auto;
      margin: 0 5px 10px 0; }
    .section-shipping-method .fieldset .checkbox label {
      padding: 0;
      margin: 0  5px 0 0; }
    .section-shipping-method .fieldset .checkbox select {
      height: 36px;
      color: #040404;
      background-color: #fff;
      -webkit-appearance: none;
         -moz-appearance: none;
              appearance: none;
      background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMzA2cHgiIGhlaWdodD0iMzA2cHgiIHZpZXdCb3g9IjAgMCAzMDYgMzA2IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAzMDYgMzA2OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGc+PGcgaWQ9ImV4cGFuZC1tb3JlIj48cG9seWdvbiBwb2ludHM9IjI3MC4zLDU4LjY1IDE1MywxNzUuOTUgMzUuNyw1OC42NSAwLDk0LjM1IDE1MywyNDcuMzUgMzA2LDk0LjM1ICIvPjwvZz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PGc+PC9nPjxnPjwvZz48Zz48L2c+PC9zdmc+");
      background-position: calc(98.75% - 5px) 50%;
      background-repeat: no-repeat;
      background-size: 10px;
      border-radius: 0;
      line-height: 36px;
      width: calc(100%  - 80px);
      padding: 0;
      border: 0;
      margin-bottom: 10px; }
      .section-shipping-method .fieldset .checkbox select:focus {
        opacity: 0.8;
        outline: none; }
    .section-shipping-method .fieldset .radio + .radio, .section-shipping-method .fieldset .checkbox + .checkbox {
      margin-top: 0; }
  .section-shipping-method #internationalFieldset .checkbox input {
    margin: 0;
    width: 20px;
    height: auto;
    position: relative; }
  .section-shipping-method .row-buttons .button:nth-child(2) {
    margin-left: 10px; }

/* account imports */
.main-account {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 0;
  color: #040404;
  padding: 20px;
  min-height: 600px; }
  @media screen and (max-width: 840px) {
    .main-account {
      padding: 10px; }
      @supports (padding: 0px) {
        .main-account {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  .main-account, .main-account h1, .main-account h2, .main-account h3, .main-account h4, .main-account h5, .main-account h6 {
    color: #040404; }
  .main-account .header-account {
    width: 100%;
    padding: 10px;
    margin-bottom: 20px;
    border-bottom: 1px solid #f1f1f1; }
    .main-account .header-account h1 {
      color: #040404;
      margin-top: 10px; }
  .main-account .aside-nav,
  .main-account .aside-account {
    padding: 10px;
    float: left; }
  .main-account .aside-nav {
    width: 25%; }
    @media screen and (max-width: 840px) {
      .main-account .aside-nav {
        display: block;
        clear: both;
        width: 100%;
        padding: 10px; }
        @supports (padding: 0px) {
          .main-account .aside-nav {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
    @media screen and (max-width: 800px) {
      .main-account .aside-nav {
        margin-bottom: 10px; } }
  .main-account .aside-account {
    width: 75%;
    padding-right: 0; }
    @media screen and (max-width: 840px) {
      .main-account .aside-account {
        display: block;
        clear: both;
        width: 100%;
        padding: 10px; }
        @supports (padding: 0px) {
          .main-account .aside-account {
            padding-left: max(10px, env(safe-area-inset-left));
            padding-right: max(10px, env(safe-area-inset-right)); } } }
    .main-account .aside-account .fieldset-account legend {
      position: relative;
      border: 0;
      width: 100%;
      top: 5px;
      color: #040404; }

.aside-account .table > tbody > tr > td {
  border-top: 1px solid #f1f1f1; }

.aside-account .table > tbody > tr > th {
  border-top: 1px solid #f1f1f1; }

.aside-account .table > thead tr > th {
  border-bottom: 1px solid #f1f1f1; }

.main-account-manage-address .aside-account-manage-address legend {
  position: relative;
  border: 0;
  width: 100%;
  top: 5px;
  color: #040404; }

.main-account-manage-address .aside-account-manage-address .fieldset-billing {
  border-bottom: 1px solid #f1f1f1;
  margin-bottom: 20px;
  padding-bottom: 20px; }
  .main-account-manage-address .aside-account-manage-address .fieldset-billing .input input, .main-account-manage-address .aside-account-manage-address .fieldset-billing .input select, .main-account-manage-address .aside-account-manage-address .fieldset-billing .select input, .main-account-manage-address .aside-account-manage-address .fieldset-billing .select select {
    line-height: 1.0;
    margin-right: 0; }

.main-account-manage-address .aside-account-manage-address .fieldset-shipping .checkbox input {
  margin-top: -8px;
  margin-left: -23px; }

.main-account-manage-address .aside-account-manage-address .row-policy-disclaimer {
  margin-top: 20px; }

.main-account-manage-address .aside-account-manage-address .row-buttons {
  padding-top: 20px;
  border-top: 1px solid #f1f1f1; }

.main-account-dashboard .aside-account-dashboard .table .actions {
  text-align: right; }
  @media screen and (max-width: 840px) {
    .main-account-dashboard .aside-account-dashboard .table .actions {
      text-align: left; } }

@media screen and (max-width: 840px) {
  .main-account-dashboard .aside-account-dashboard .table thead {
    display: none; }
  .main-account-dashboard .aside-account-dashboard tr td, .main-account-dashboard .aside-account-dashboard tr th {
    display: block;
    width: 100%; } }

@media screen and (max-width: 840px) {
  .main-account-managed-linked .aside-account-managed-linked .table thead {
    display: none; }
  .main-account-managed-linked .aside-account-managed-linked tr td, .main-account-managed-linked .aside-account-managed-linked tr th {
    display: block;
    width: 100%; } }

.main-account-managed-linked .aside-account-managed-linked .table tr td {
  vertical-align: middle; }
  .main-account-managed-linked .aside-account-managed-linked .table tr td img {
    margin-right: 10px;
    width: 50px; }
  @media screen and (max-width: 840px) {
    .main-account-managed-linked .aside-account-managed-linked .table tr td:nth-child(1) {
      padding-top: 16px;
      padding-bottom: 16px; }
    .main-account-managed-linked .aside-account-managed-linked .table tr td:nth-child(2) {
      border-top: 0;
      padding-top: 0;
      padding-bottom: 16px; } }

.main-account-manage .aside-account .row-policy-preview {
  border-bottom: 1px solid #f1f1f1;
  margin-bottom: 20px; }
  .main-account-manage .aside-account .row-policy-preview p {
    padding-bottom: 20px; }

.main-account-manage .aside-account .row-policy-disclaimer {
  margin-top: 20px; }

#container .main-account-manage .error, #container .main-account-manage .error a {
  position: static;
  color: #d9534f; }

.main-account-avatar .section-account-manage-avatar .note {
  display: block;
  clear: both;
  color: #040404; }

.main-account-avatar .section-account-manage-avatar p {
  color: #040404; }

.main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input {
  margin-bottom: 20px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .file {
    margin: 10px 0; }
    .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .file img {
      width: 100px;
      height: 100px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input {
    margin-bottom: 10px; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input[type="file"] {
    height: auto;
    line-height: 0;
    text-indent: 0;
    background-color: transparent; }
    .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input input[type="file"]:focus {
      opacity: 0.75;
      outline: none; }
  .main-account-avatar .section-account-manage-avatar .fieldset-manage-avatar .list .input .url {
    color: #f7f7f7;
    padding: 0 5px 0 5px; }

.main-account-avatar .section-account-manage-avatar .row-privacy-policy-disclaimer {
  margin-top: 20px; }

.main-account-notifications .aside-account-notifications legend {
  position: relative;
  border: 0;
  width: 100%;
  top: 5px;
  color: #040404; }

.main-account-notifications .aside-account-notifications .row-buttons-two {
  padding-top: 20px;
  border-top: 1px solid #f1f1f1; }

.main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox {
  margin-bottom: 20px; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox label {
    padding-left: 25px; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox input[type="checkbox"] {
    margin-left: -24px;
    margin-top: 2px;
    width: auto;
    height: auto; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox + .checkbox {
    margin-top: 0; }
  .main-account-notifications .aside-account-notifications .fieldset-subscription-notifications .checkbox .note {
    margin: 2px 0 10px 24px; }

.section-order-summary {
  display: block;
  overflow: hidden;
  background-color: #f7f7f7;
  border: 0 solid #3C3333;
  border-radius: 0;
  color: #040404;
  padding: 20px; }
  @media screen and (max-width: 840px) {
    .section-order-summary {
      padding: 10px; }
      @supports (padding: 0px) {
        .section-order-summary {
          padding-left: max(10px, env(safe-area-inset-left));
          padding-right: max(10px, env(safe-area-inset-right)); } } }
  @media screen and (max-width: 840px) {
    .section-order-summary {
      padding: 20px 20px; }
      .section-order-summary .wrap {
        padding: 0; } }
  .section-order-summary h1, .section-order-summary .h1, .section-order-summary h2, .section-order-summary .h2, .section-order-summary h3, .section-order-summary .h3 {
    margin-top: 10px; }
  .section-order-summary .section-order-information,
  .section-order-summary .section-order-itemization,
  .section-order-summary .section-order-shipments,
  .section-order-summary .section-order-will-call {
    margin-bottom: 20px;
    background-color: #f7f7f7;
    border-radius: 0;
    color: #040404;
    display: block;
    overflow: hidden;
    padding: 20px;
    margin-left: auto;
    margin-right: auto;
    max-width: 1180px; }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information,
      .section-order-summary .section-order-itemization,
      .section-order-summary .section-order-shipments,
      .section-order-summary .section-order-will-call {
        padding: 10px; } }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information .table thead,
      .section-order-summary .section-order-itemization .table thead,
      .section-order-summary .section-order-shipments .table thead,
      .section-order-summary .section-order-will-call .table thead {
        display: none; } }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-information .table tr td, .section-order-summary .section-order-information .table tr th,
      .section-order-summary .section-order-itemization .table tr td,
      .section-order-summary .section-order-itemization .table tr th,
      .section-order-summary .section-order-shipments .table tr td,
      .section-order-summary .section-order-shipments .table tr th,
      .section-order-summary .section-order-will-call .table tr td,
      .section-order-summary .section-order-will-call .table tr th {
        display: block; } }
    .section-order-summary .section-order-information .table > thead > tr > th,
    .section-order-summary .section-order-itemization .table > thead > tr > th,
    .section-order-summary .section-order-shipments .table > thead > tr > th,
    .section-order-summary .section-order-will-call .table > thead > tr > th {
      border-bottom: 0; }
    .section-order-summary .section-order-information .table > tbody > tr > td,
    .section-order-summary .section-order-itemization .table > tbody > tr > td,
    .section-order-summary .section-order-shipments .table > tbody > tr > td,
    .section-order-summary .section-order-will-call .table > tbody > tr > td {
      border-top: 1px solid #f1f1f1;
      border-bottom: 1px solid #f1f1f1; }
      .section-order-summary .section-order-information .table > tbody > tr > td .sku,
      .section-order-summary .section-order-itemization .table > tbody > tr > td .sku,
      .section-order-summary .section-order-shipments .table > tbody > tr > td .sku,
      .section-order-summary .section-order-will-call .table > tbody > tr > td .sku {
        color: #fff; }
    .section-order-summary .section-order-information .table > tfoot > tr > td,
    .section-order-summary .section-order-itemization .table > tfoot > tr > td,
    .section-order-summary .section-order-shipments .table > tfoot > tr > td,
    .section-order-summary .section-order-will-call .table > tfoot > tr > td {
      border-top: 0;
      border-bottom: 0; }
    .section-order-summary .section-order-information .table > tfoot > tr > th,
    .section-order-summary .section-order-itemization .table > tfoot > tr > th,
    .section-order-summary .section-order-shipments .table > tfoot > tr > th,
    .section-order-summary .section-order-will-call .table > tfoot > tr > th {
      border-top: 0;
      border-bottom: 0; }
  .section-order-summary .section-order-information .col {
    float: left; }
    .section-order-summary .section-order-information .col.col-1-3 {
      width: 100%;
      display: block;
      margin-top: 20px; }
      @media screen and (min-width: 841px) {
        .section-order-summary .section-order-information .col.col-1-3 {
          width: 33.33%; } }
    .section-order-summary .section-order-information .col ul li .button {
      margin-top: 10px; }
  .section-order-summary .section-order-itemization .table > tfoot > tr > th {
    text-align: right; }
    @media screen and (max-width: 840px) {
      .section-order-summary .section-order-itemization .table > tfoot > tr > th {
        text-align: left; } }
  .section-order-summary .section-order-shipments .row-shipping-information .order.status {
    float: right;
    padding: 5px 12px;
    margin-right: 0;
    background-color: #1777A2;
    border-radius: 20px;
    margin-top: -5px; }
    @media screen and (min-width: 841px) {
      .section-order-summary .section-order-shipments .row-shipping-information .order.status {
        margin-right: 20px; } }
  .section-order-summary .section-order-shipments .row-shipping-information .col {
    float: left; }
    .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2 {
      width: 100%;
      display: block;
      margin-top: 20px; }
      @media screen and (min-width: 841px) {
        .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2 {
          width: 50%; } }
      .section-order-summary .section-order-shipments .row-shipping-information .col.col-1-2:nth-child(2) strong {
        margin-bottom: 10px;
        display: block; }
  .section-order-summary .button-row .button {
    float: right; }
  .section-order-summary .trustpilot-review {
    margin: 2em auto;
    overflow: scroll;
    text-align: center; }

.main-account-order-list .aside-order-list h2 {
  margin-top: 0; }

.main-account-order-list .aside-order-list .no-orders {
  margin-top: 10px; }

@media screen and (max-width: 840px) {
  .main-account-order-list .aside-order-list .table thead {
    display: none; }
  .main-account-order-list .aside-order-list tr td, .main-account-order-list .aside-order-list tr th {
    display: block;
    width: 100%; } }

.aside-nav ul li {
  display: block;
  padding: 5px; }
  .aside-nav ul li a {
    display: block; }
    .aside-nav ul li a:hover {
      opacity: 0.6; }
    .aside-nav ul li a i {
      padding-right: 5px; }

.aside-nav ul .item.linked .counter {
  position: relative;
  top: -2px;
  left: 5px;
  padding: 6px 7px;
  border-radius: 50%;
  background-color: #e4e4e4;
  color: #fff;
  font-size: 12px; }

.aside-nav ul .item.avatar {
  text-align: center;
  margin-bottom: 20px; }
  @media screen and (max-width: 840px) {
    .aside-nav ul .item.avatar {
      text-align: left; } }
  .aside-nav ul .item.avatar .pic {
    margin-bottom: 20px;
    transition: 0.5s ease; }
    .aside-nav ul .item.avatar .pic img {
      width: 100%;
      max-width: 100%; }
      @media screen and (max-width: 840px) {
        .aside-nav ul .item.avatar .pic img {
          width: 240px; } }
    .aside-nav ul .item.avatar .pic .edit {
      visibility: hidden;
      position: absolute;
      display: block;
      padding: 8px 16px;
      font-size: 12px;
      font-weight: 400;
      background-color: #040404; }
      .aside-nav ul .item.avatar .pic .edit i {
        padding-right: 2px; }
    .aside-nav ul .item.avatar .pic:hover .edit {
      visibility: visible; }
  .aside-nav ul .item.avatar a {
    display: block; }

/**
 * store theme header
 * includes styles for bootstrap navbar
 */
.header-main {
  background-color: transparent;
  border-color: transparent; }
  .header-main .navbar-default, .header-main .navbar {
    margin-top: 20px;
    background-color: transparent;
    border-color: transparent; }
    .header-main .navbar-default .container-fluid, .header-main .navbar .container-fluid {
      padding-left: 0;
      padding-right: 0; }
    .header-main .navbar-default .navbar-nav > li > a, .header-main .navbar .navbar-nav > li > a {
      color: #7e291a;
      text-align: center; }
      .header-main .navbar-default .navbar-nav > li > a:hover, .header-main .navbar-default .navbar-nav > li > a:focus, .header-main .navbar .navbar-nav > li > a:hover, .header-main .navbar .navbar-nav > li > a:focus {
        color: rgba(54, 54, 54, 0.75); }
    .header-main .navbar-default .navbar-toggle, .header-main .navbar .navbar-toggle {
      margin-right: 15px;
      background-color: transparent;
      border-color: transparent; }
      .header-main .navbar-default .navbar-toggle .icon-bar, .header-main .navbar .navbar-toggle .icon-bar {
        background-color: #888888;
        position: relative;
        transition: top 130ms ease 130ms, bottom 130ms ease 130ms, transform 130ms ease; }
      .header-main .navbar-default .navbar-toggle[aria-expanded="true"] .icon-bar, .header-main .navbar .navbar-toggle[aria-expanded="true"] .icon-bar {
        background-color: #888888; }
        .header-main .navbar-default .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(2), .header-main .navbar .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(2) {
          top: 6px;
          transform: rotate(45deg); }
        .header-main .navbar-default .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(3), .header-main .navbar .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(3) {
          background-color: transparent; }
        .header-main .navbar-default .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(4), .header-main .navbar .navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(4) {
          top: -5px;
          transform: rotate(-45deg); }
    .header-main .navbar-default .navbar-collapse, .header-main .navbar .navbar-collapse {
      border-color: transparent; }

/* store theme footer */
.site-footer {
  position: relative;
  padding: 24px 12px;
  background-color: transparent;
  color: #040404; }
  .site-footer .wrap .site-logo {
    display: inline-block;
    vertical-align: middle; }
    @media screen and (max-width: 840px) {
      .site-footer .wrap .site-logo {
        display: block;
        margin: auto;
        text-align: center; } }
    .site-footer .wrap .site-logo img {
      width: 100px;
      max-width: 100%; }
  .site-footer .wrap .list {
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px; }
    @media screen and (max-width: 840px) {
      .site-footer .wrap .list {
        display: block;
        margin: 20px auto;
        text-align: center; } }
    .site-footer .wrap .list a {
      font-size: 14px;
      color: #040404; }
      .site-footer .wrap .list a:hover, .site-footer .wrap .list a:focus {
        color: #e4e4e4; }
    .site-footer .wrap .list span {
      font-size: 14px;
      color: #040404; }
    .site-footer .wrap .list-terms .item-coppa, .site-footer .wrap .list-terms .item-poweredby {
      display: block; }
    .site-footer .wrap .list li {
      display: inline-block;
      padding: 2px 0; }

/* store home styles */
.section-home-products {
  padding: 60px 0 100px 0; }
  .section-home-products .footer-home-products {
    display: block;
    clear: both;
    overflow: hidden;
    text-align: center; }
    .section-home-products .footer-home-products .button-all-products {
      display: block;
      width: 160px;
      margin: 20px auto; }

/* Styles for bootstrap carousel */
/* Full Width Responsive Carousel */
/* Vars */
.section-carousel {
  height: 0;
  margin: 0;
  padding-bottom: 40%;
  background: #333333 !important; }
  .section-carousel .item {
    z-index: 2; }
  .section-carousel .caption {
    display: none; }
  .section-carousel .image {
    display: block;
    padding-bottom: 40%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    .section-carousel .image img {
      display: none; }
  .section-carousel .carousel-control {
    width: 5%;
    z-index: 2; }
  .section-carousel .carousel-indicators li {
    margin-right: 5px; }
    .section-carousel .carousel-indicators li.active {
      background-color: rgba(255, 255, 255, 0.85); }

/*!
 * Bootstrap v3.4.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

body {
  margin: 0; }

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden],
template {
  display: none; }

a {
  background-color: transparent; }

a:active,
a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; }

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled],
html input[disabled] {
  cursor: default; }

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */
@media print {
  *,
  *:before,
  *:after {
    color: #000 !important;
    text-shadow: none !important;
    background: transparent !important;
    box-shadow: none !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: ""; }
  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; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .navbar {
    display: none; }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important; }
  .label {
    border: 1px solid #000; }
  .table {
    border-collapse: collapse !important; }
    .table td,
    .table th {
      background-color: #fff !important; }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #ddd !important; } }

@font-face {
  font-family: "Glyphicons Halflings";
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: "Glyphicons Halflings";
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.glyphicon-asterisk:before {
  content: "\002a"; }

.glyphicon-plus:before {
  content: "\002b"; }

.glyphicon-euro:before,
.glyphicon-eur:before {
  content: "\20ac"; }

.glyphicon-minus:before {
  content: "\2212"; }

.glyphicon-cloud:before {
  content: "\2601"; }

.glyphicon-envelope:before {
  content: "\2709"; }

.glyphicon-pencil:before {
  content: "\270f"; }

.glyphicon-glass:before {
  content: "\e001"; }

.glyphicon-music:before {
  content: "\e002"; }

.glyphicon-search:before {
  content: "\e003"; }

.glyphicon-heart:before {
  content: "\e005"; }

.glyphicon-star:before {
  content: "\e006"; }

.glyphicon-star-empty:before {
  content: "\e007"; }

.glyphicon-user:before {
  content: "\e008"; }

.glyphicon-film:before {
  content: "\e009"; }

.glyphicon-th-large:before {
  content: "\e010"; }

.glyphicon-th:before {
  content: "\e011"; }

.glyphicon-th-list:before {
  content: "\e012"; }

.glyphicon-ok:before {
  content: "\e013"; }

.glyphicon-remove:before {
  content: "\e014"; }

.glyphicon-zoom-in:before {
  content: "\e015"; }

.glyphicon-zoom-out:before {
  content: "\e016"; }

.glyphicon-off:before {
  content: "\e017"; }

.glyphicon-signal:before {
  content: "\e018"; }

.glyphicon-cog:before {
  content: "\e019"; }

.glyphicon-trash:before {
  content: "\e020"; }

.glyphicon-home:before {
  content: "\e021"; }

.glyphicon-file:before {
  content: "\e022"; }

.glyphicon-time:before {
  content: "\e023"; }

.glyphicon-road:before {
  content: "\e024"; }

.glyphicon-download-alt:before {
  content: "\e025"; }

.glyphicon-download:before {
  content: "\e026"; }

.glyphicon-upload:before {
  content: "\e027"; }

.glyphicon-inbox:before {
  content: "\e028"; }

.glyphicon-play-circle:before {
  content: "\e029"; }

.glyphicon-repeat:before {
  content: "\e030"; }

.glyphicon-refresh:before {
  content: "\e031"; }

.glyphicon-list-alt:before {
  content: "\e032"; }

.glyphicon-lock:before {
  content: "\e033"; }

.glyphicon-flag:before {
  content: "\e034"; }

.glyphicon-headphones:before {
  content: "\e035"; }

.glyphicon-volume-off:before {
  content: "\e036"; }

.glyphicon-volume-down:before {
  content: "\e037"; }

.glyphicon-volume-up:before {
  content: "\e038"; }

.glyphicon-qrcode:before {
  content: "\e039"; }

.glyphicon-barcode:before {
  content: "\e040"; }

.glyphicon-tag:before {
  content: "\e041"; }

.glyphicon-tags:before {
  content: "\e042"; }

.glyphicon-book:before {
  content: "\e043"; }

.glyphicon-bookmark:before {
  content: "\e044"; }

.glyphicon-print:before {
  content: "\e045"; }

.glyphicon-camera:before {
  content: "\e046"; }

.glyphicon-font:before {
  content: "\e047"; }

.glyphicon-bold:before {
  content: "\e048"; }

.glyphicon-italic:before {
  content: "\e049"; }

.glyphicon-text-height:before {
  content: "\e050"; }

.glyphicon-text-width:before {
  content: "\e051"; }

.glyphicon-align-left:before {
  content: "\e052"; }

.glyphicon-align-center:before {
  content: "\e053"; }

.glyphicon-align-right:before {
  content: "\e054"; }

.glyphicon-align-justify:before {
  content: "\e055"; }

.glyphicon-list:before {
  content: "\e056"; }

.glyphicon-indent-left:before {
  content: "\e057"; }

.glyphicon-indent-right:before {
  content: "\e058"; }

.glyphicon-facetime-video:before {
  content: "\e059"; }

.glyphicon-picture:before {
  content: "\e060"; }

.glyphicon-map-marker:before {
  content: "\e062"; }

.glyphicon-adjust:before {
  content: "\e063"; }

.glyphicon-tint:before {
  content: "\e064"; }

.glyphicon-edit:before {
  content: "\e065"; }

.glyphicon-share:before {
  content: "\e066"; }

.glyphicon-check:before {
  content: "\e067"; }

.glyphicon-move:before {
  content: "\e068"; }

.glyphicon-step-backward:before {
  content: "\e069"; }

.glyphicon-fast-backward:before {
  content: "\e070"; }

.glyphicon-backward:before {
  content: "\e071"; }

.glyphicon-play:before {
  content: "\e072"; }

.glyphicon-pause:before {
  content: "\e073"; }

.glyphicon-stop:before {
  content: "\e074"; }

.glyphicon-forward:before {
  content: "\e075"; }

.glyphicon-fast-forward:before {
  content: "\e076"; }

.glyphicon-step-forward:before {
  content: "\e077"; }

.glyphicon-eject:before {
  content: "\e078"; }

.glyphicon-chevron-left:before {
  content: "\e079"; }

.glyphicon-chevron-right:before {
  content: "\e080"; }

.glyphicon-plus-sign:before {
  content: "\e081"; }

.glyphicon-minus-sign:before {
  content: "\e082"; }

.glyphicon-remove-sign:before {
  content: "\e083"; }

.glyphicon-ok-sign:before {
  content: "\e084"; }

.glyphicon-question-sign:before {
  content: "\e085"; }

.glyphicon-info-sign:before {
  content: "\e086"; }

.glyphicon-screenshot:before {
  content: "\e087"; }

.glyphicon-remove-circle:before {
  content: "\e088"; }

.glyphicon-ok-circle:before {
  content: "\e089"; }

.glyphicon-ban-circle:before {
  content: "\e090"; }

.glyphicon-arrow-left:before {
  content: "\e091"; }

.glyphicon-arrow-right:before {
  content: "\e092"; }

.glyphicon-arrow-up:before {
  content: "\e093"; }

.glyphicon-arrow-down:before {
  content: "\e094"; }

.glyphicon-share-alt:before {
  content: "\e095"; }

.glyphicon-resize-full:before {
  content: "\e096"; }

.glyphicon-resize-small:before {
  content: "\e097"; }

.glyphicon-exclamation-sign:before {
  content: "\e101"; }

.glyphicon-gift:before {
  content: "\e102"; }

.glyphicon-leaf:before {
  content: "\e103"; }

.glyphicon-fire:before {
  content: "\e104"; }

.glyphicon-eye-open:before {
  content: "\e105"; }

.glyphicon-eye-close:before {
  content: "\e106"; }

.glyphicon-warning-sign:before {
  content: "\e107"; }

.glyphicon-plane:before {
  content: "\e108"; }

.glyphicon-calendar:before {
  content: "\e109"; }

.glyphicon-random:before {
  content: "\e110"; }

.glyphicon-comment:before {
  content: "\e111"; }

.glyphicon-magnet:before {
  content: "\e112"; }

.glyphicon-chevron-up:before {
  content: "\e113"; }

.glyphicon-chevron-down:before {
  content: "\e114"; }

.glyphicon-retweet:before {
  content: "\e115"; }

.glyphicon-shopping-cart:before {
  content: "\e116"; }

.glyphicon-folder-close:before {
  content: "\e117"; }

.glyphicon-folder-open:before {
  content: "\e118"; }

.glyphicon-resize-vertical:before {
  content: "\e119"; }

.glyphicon-resize-horizontal:before {
  content: "\e120"; }

.glyphicon-hdd:before {
  content: "\e121"; }

.glyphicon-bullhorn:before {
  content: "\e122"; }

.glyphicon-bell:before {
  content: "\e123"; }

.glyphicon-certificate:before {
  content: "\e124"; }

.glyphicon-thumbs-up:before {
  content: "\e125"; }

.glyphicon-thumbs-down:before {
  content: "\e126"; }

.glyphicon-hand-right:before {
  content: "\e127"; }

.glyphicon-hand-left:before {
  content: "\e128"; }

.glyphicon-hand-up:before {
  content: "\e129"; }

.glyphicon-hand-down:before {
  content: "\e130"; }

.glyphicon-circle-arrow-right:before {
  content: "\e131"; }

.glyphicon-circle-arrow-left:before {
  content: "\e132"; }

.glyphicon-circle-arrow-up:before {
  content: "\e133"; }

.glyphicon-circle-arrow-down:before {
  content: "\e134"; }

.glyphicon-globe:before {
  content: "\e135"; }

.glyphicon-wrench:before {
  content: "\e136"; }

.glyphicon-tasks:before {
  content: "\e137"; }

.glyphicon-filter:before {
  content: "\e138"; }

.glyphicon-briefcase:before {
  content: "\e139"; }

.glyphicon-fullscreen:before {
  content: "\e140"; }

.glyphicon-dashboard:before {
  content: "\e141"; }

.glyphicon-paperclip:before {
  content: "\e142"; }

.glyphicon-heart-empty:before {
  content: "\e143"; }

.glyphicon-link:before {
  content: "\e144"; }

.glyphicon-phone:before {
  content: "\e145"; }

.glyphicon-pushpin:before {
  content: "\e146"; }

.glyphicon-usd:before {
  content: "\e148"; }

.glyphicon-gbp:before {
  content: "\e149"; }

.glyphicon-sort:before {
  content: "\e150"; }

.glyphicon-sort-by-alphabet:before {
  content: "\e151"; }

.glyphicon-sort-by-alphabet-alt:before {
  content: "\e152"; }

.glyphicon-sort-by-order:before {
  content: "\e153"; }

.glyphicon-sort-by-order-alt:before {
  content: "\e154"; }

.glyphicon-sort-by-attributes:before {
  content: "\e155"; }

.glyphicon-sort-by-attributes-alt:before {
  content: "\e156"; }

.glyphicon-unchecked:before {
  content: "\e157"; }

.glyphicon-expand:before {
  content: "\e158"; }

.glyphicon-collapse-down:before {
  content: "\e159"; }

.glyphicon-collapse-up:before {
  content: "\e160"; }

.glyphicon-log-in:before {
  content: "\e161"; }

.glyphicon-flash:before {
  content: "\e162"; }

.glyphicon-log-out:before {
  content: "\e163"; }

.glyphicon-new-window:before {
  content: "\e164"; }

.glyphicon-record:before {
  content: "\e165"; }

.glyphicon-save:before {
  content: "\e166"; }

.glyphicon-open:before {
  content: "\e167"; }

.glyphicon-saved:before {
  content: "\e168"; }

.glyphicon-import:before {
  content: "\e169"; }

.glyphicon-export:before {
  content: "\e170"; }

.glyphicon-send:before {
  content: "\e171"; }

.glyphicon-floppy-disk:before {
  content: "\e172"; }

.glyphicon-floppy-saved:before {
  content: "\e173"; }

.glyphicon-floppy-remove:before {
  content: "\e174"; }

.glyphicon-floppy-save:before {
  content: "\e175"; }

.glyphicon-floppy-open:before {
  content: "\e176"; }

.glyphicon-credit-card:before {
  content: "\e177"; }

.glyphicon-transfer:before {
  content: "\e178"; }

.glyphicon-cutlery:before {
  content: "\e179"; }

.glyphicon-header:before {
  content: "\e180"; }

.glyphicon-compressed:before {
  content: "\e181"; }

.glyphicon-earphone:before {
  content: "\e182"; }

.glyphicon-phone-alt:before {
  content: "\e183"; }

.glyphicon-tower:before {
  content: "\e184"; }

.glyphicon-stats:before {
  content: "\e185"; }

.glyphicon-sd-video:before {
  content: "\e186"; }

.glyphicon-hd-video:before {
  content: "\e187"; }

.glyphicon-subtitles:before {
  content: "\e188"; }

.glyphicon-sound-stereo:before {
  content: "\e189"; }

.glyphicon-sound-dolby:before {
  content: "\e190"; }

.glyphicon-sound-5-1:before {
  content: "\e191"; }

.glyphicon-sound-6-1:before {
  content: "\e192"; }

.glyphicon-sound-7-1:before {
  content: "\e193"; }

.glyphicon-copyright-mark:before {
  content: "\e194"; }

.glyphicon-registration-mark:before {
  content: "\e195"; }

.glyphicon-cloud-download:before {
  content: "\e197"; }

.glyphicon-cloud-upload:before {
  content: "\e198"; }

.glyphicon-tree-conifer:before {
  content: "\e199"; }

.glyphicon-tree-deciduous:before {
  content: "\e200"; }

.glyphicon-cd:before {
  content: "\e201"; }

.glyphicon-save-file:before {
  content: "\e202"; }

.glyphicon-open-file:before {
  content: "\e203"; }

.glyphicon-level-up:before {
  content: "\e204"; }

.glyphicon-copy:before {
  content: "\e205"; }

.glyphicon-paste:before {
  content: "\e206"; }

.glyphicon-alert:before {
  content: "\e209"; }

.glyphicon-equalizer:before {
  content: "\e210"; }

.glyphicon-king:before {
  content: "\e211"; }

.glyphicon-queen:before {
  content: "\e212"; }

.glyphicon-pawn:before {
  content: "\e213"; }

.glyphicon-bishop:before {
  content: "\e214"; }

.glyphicon-knight:before {
  content: "\e215"; }

.glyphicon-baby-formula:before {
  content: "\e216"; }

.glyphicon-tent:before {
  content: "\26fa"; }

.glyphicon-blackboard:before {
  content: "\e218"; }

.glyphicon-bed:before {
  content: "\e219"; }

.glyphicon-apple:before {
  content: "\f8ff"; }

.glyphicon-erase:before {
  content: "\e221"; }

.glyphicon-hourglass:before {
  content: "\231b"; }

.glyphicon-lamp:before {
  content: "\e223"; }

.glyphicon-duplicate:before {
  content: "\e224"; }

.glyphicon-piggy-bank:before {
  content: "\e225"; }

.glyphicon-scissors:before {
  content: "\e226"; }

.glyphicon-bitcoin:before {
  content: "\e227"; }

.glyphicon-btc:before {
  content: "\e227"; }

.glyphicon-xbt:before {
  content: "\e227"; }

.glyphicon-yen:before {
  content: "\00a5"; }

.glyphicon-jpy:before {
  content: "\00a5"; }

.glyphicon-ruble:before {
  content: "\20bd"; }

.glyphicon-rub:before {
  content: "\20bd"; }

.glyphicon-scale:before {
  content: "\e230"; }

.glyphicon-ice-lolly:before {
  content: "\e231"; }

.glyphicon-ice-lolly-tasted:before {
  content: "\e232"; }

.glyphicon-education:before {
  content: "\e233"; }

.glyphicon-option-horizontal:before {
  content: "\e234"; }

.glyphicon-option-vertical:before {
  content: "\e235"; }

.glyphicon-menu-hamburger:before {
  content: "\e236"; }

.glyphicon-modal-window:before {
  content: "\e237"; }

.glyphicon-oil:before {
  content: "\e238"; }

.glyphicon-grain:before {
  content: "\e239"; }

.glyphicon-sunglasses:before {
  content: "\e240"; }

.glyphicon-text-size:before {
  content: "\e241"; }

.glyphicon-text-color:before {
  content: "\e242"; }

.glyphicon-text-background:before {
  content: "\e243"; }

.glyphicon-object-align-top:before {
  content: "\e244"; }

.glyphicon-object-align-bottom:before {
  content: "\e245"; }

.glyphicon-object-align-horizontal:before {
  content: "\e246"; }

.glyphicon-object-align-left:before {
  content: "\e247"; }

.glyphicon-object-align-vertical:before {
  content: "\e248"; }

.glyphicon-object-align-right:before {
  content: "\e249"; }

.glyphicon-triangle-right:before {
  content: "\e250"; }

.glyphicon-triangle-left:before {
  content: "\e251"; }

.glyphicon-triangle-bottom:before {
  content: "\e252"; }

.glyphicon-triangle-top:before {
  content: "\e253"; }

.glyphicon-console:before {
  content: "\e254"; }

.glyphicon-superscript:before {
  content: "\e255"; }

.glyphicon-subscript:before {
  content: "\e256"; }

.glyphicon-menu-left:before {
  content: "\e257"; }

.glyphicon-menu-right:before {
  content: "\e258"; }

.glyphicon-menu-down:before {
  content: "\e259"; }

.glyphicon-menu-up:before {
  content: "\e260"; }

* {
  box-sizing: border-box; }

*:before,
*:after {
  box-sizing: border-box; }

html {
  font-size: 10px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }

body {
  font-family: "Gotham SSm A", "Gotham SSm B", Verdana, Arial, sans-serif;
  font-size: 14px;
  line-height: 1.42857;
  color: #363636;
  background-color: #fff; }

input,
button,
select,
textarea {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit; }

a {
  color: #363636;
  text-decoration: none; }
  a:hover, a:focus {
    color: #7e291a;
    text-decoration: underline; }
  a:focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }

figure {
  margin: 0; }

img {
  vertical-align: middle; }

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto; }

.img-rounded {
  border-radius: 6px; }

.img-thumbnail {
  padding: 4px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: all 0.2s ease-in-out;
  display: inline-block;
  max-width: 100%;
  height: auto; }

.img-circle {
  border-radius: 50%; }

hr {
  margin-top: 20px;
  margin-bottom: 20px;
  border: 0;
  border-top: 1px solid #eeeeee; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

[role="button"] {
  cursor: pointer; }

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: inherit;
  font-weight: 500;
  line-height: 1.1;
  color: inherit; }
  h1 small,
  h1 .small, h2 small,
  h2 .small, h3 small,
  h3 .small, h4 small,
  h4 .small, h5 small,
  h5 .small, h6 small,
  h6 .small,
  .h1 small,
  .h1 .small, .h2 small,
  .h2 .small, .h3 small,
  .h3 .small, .h4 small,
  .h4 .small, .h5 small,
  .h5 .small, .h6 small,
  .h6 .small {
    font-weight: 400;
    line-height: 1;
    color: #777777; }

h1, .h1,
h2, .h2,
h3, .h3 {
  margin-top: 20px;
  margin-bottom: 10px; }
  h1 small,
  h1 .small, .h1 small,
  .h1 .small,
  h2 small,
  h2 .small, .h2 small,
  .h2 .small,
  h3 small,
  h3 .small, .h3 small,
  .h3 .small {
    font-size: 65%; }

h4, .h4,
h5, .h5,
h6, .h6 {
  margin-top: 10px;
  margin-bottom: 10px; }
  h4 small,
  h4 .small, .h4 small,
  .h4 .small,
  h5 small,
  h5 .small, .h5 small,
  .h5 .small,
  h6 small,
  h6 .small, .h6 small,
  .h6 .small {
    font-size: 75%; }

h1, .h1 {
  font-size: 36px; }

h2, .h2 {
  font-size: 30px; }

h3, .h3 {
  font-size: 24px; }

h4, .h4 {
  font-size: 18px; }

h5, .h5 {
  font-size: 14px; }

h6, .h6 {
  font-size: 12px; }

p {
  margin: 0 0 10px; }

.lead {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4; }
  @media (min-width: 768px) {
    .lead {
      font-size: 21px; } }

small,
.small {
  font-size: 85%; }

mark,
.mark {
  padding: .2em;
  background-color: #fcf8e3; }

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

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

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

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

.text-nowrap {
  white-space: nowrap; }

.text-lowercase {
  text-transform: lowercase; }

.text-uppercase, .initialism {
  text-transform: uppercase; }

.text-capitalize {
  text-transform: capitalize; }

.text-muted {
  color: #777777; }

.text-primary {
  color: #337ab7; }

a.text-primary:hover,
a.text-primary:focus {
  color: #286090; }

.text-success {
  color: #3c763d; }

a.text-success:hover,
a.text-success:focus {
  color: #2b542c; }

.text-info {
  color: #31708f; }

a.text-info:hover,
a.text-info:focus {
  color: #245269; }

.text-warning {
  color: #8a6d3b; }

a.text-warning:hover,
a.text-warning:focus {
  color: #66512c; }

.text-danger {
  color: #a94442; }

a.text-danger:hover,
a.text-danger:focus {
  color: #843534; }

.bg-primary {
  color: #fff; }

.bg-primary {
  background-color: #337ab7; }

a.bg-primary:hover,
a.bg-primary:focus {
  background-color: #286090; }

.bg-success {
  background-color: #dff0d8; }

a.bg-success:hover,
a.bg-success:focus {
  background-color: #c1e2b3; }

.bg-info {
  background-color: #d9edf7; }

a.bg-info:hover,
a.bg-info:focus {
  background-color: #afd9ee; }

.bg-warning {
  background-color: #fcf8e3; }

a.bg-warning:hover,
a.bg-warning:focus {
  background-color: #f7ecb5; }

.bg-danger {
  background-color: #f2dede; }

a.bg-danger:hover,
a.bg-danger:focus {
  background-color: #e4b9b9; }

.page-header {
  padding-bottom: 9px;
  margin: 40px 0 20px;
  border-bottom: 1px solid #eeeeee; }

ul,
ol {
  margin-top: 0;
  margin-bottom: 10px; }
  ul ul,
  ul ol,
  ol ul,
  ol ol {
    margin-bottom: 0; }

.list-unstyled {
  padding-left: 0;
  list-style: none; }

.list-inline {
  padding-left: 0;
  list-style: none;
  margin-left: -5px; }
  .list-inline > li {
    display: inline-block;
    padding-right: 5px;
    padding-left: 5px; }

dl {
  margin-top: 0;
  margin-bottom: 20px; }

dt,
dd {
  line-height: 1.42857; }

dt {
  font-weight: 700; }

dd {
  margin-left: 0; }

.dl-horizontal dd:before, .dl-horizontal dd:after {
  display: table;
  content: " "; }

.dl-horizontal dd:after {
  clear: both; }

@media (min-width: 768px) {
  .dl-horizontal dt {
    float: left;
    width: 160px;
    clear: left;
    text-align: right;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap; }
  .dl-horizontal dd {
    margin-left: 180px; } }

abbr[title],
abbr[data-original-title] {
  cursor: help; }

.initialism {
  font-size: 90%; }

blockquote {
  padding: 10px 20px;
  margin: 0 0 20px;
  font-size: 17.5px;
  border-left: 5px solid #eeeeee; }
  blockquote p:last-child,
  blockquote ul:last-child,
  blockquote ol:last-child {
    margin-bottom: 0; }
  blockquote footer,
  blockquote small,
  blockquote .small {
    display: block;
    font-size: 80%;
    line-height: 1.42857;
    color: #777777; }
    blockquote footer:before,
    blockquote small:before,
    blockquote .small:before {
      content: "\2014 \00A0"; }

.blockquote-reverse,
blockquote.pull-right {
  padding-right: 15px;
  padding-left: 0;
  text-align: right;
  border-right: 5px solid #eeeeee;
  border-left: 0; }
  .blockquote-reverse footer:before,
  .blockquote-reverse small:before,
  .blockquote-reverse .small:before,
  blockquote.pull-right footer:before,
  blockquote.pull-right small:before,
  blockquote.pull-right .small:before {
    content: ""; }
  .blockquote-reverse footer:after,
  .blockquote-reverse small:after,
  .blockquote-reverse .small:after,
  blockquote.pull-right footer:after,
  blockquote.pull-right small:after,
  blockquote.pull-right .small:after {
    content: "\00A0 \2014"; }

address {
  margin-bottom: 20px;
  font-style: normal;
  line-height: 1.42857; }

code,
kbd,
pre,
samp {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace; }

code {
  padding: 2px 4px;
  font-size: 90%;
  color: #c7254e;
  background-color: #f9f2f4;
  border-radius: 4px; }

kbd {
  padding: 2px 4px;
  font-size: 90%;
  color: #fff;
  background-color: #333;
  border-radius: 3px;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.25); }
  kbd kbd {
    padding: 0;
    font-size: 100%;
    font-weight: 700;
    box-shadow: none; }

pre {
  display: block;
  padding: 9.5px;
  margin: 0 0 10px;
  font-size: 13px;
  line-height: 1.42857;
  color: #333333;
  word-break: break-all;
  word-wrap: break-word;
  background-color: #f5f5f5;
  border: 1px solid #ccc;
  border-radius: 4px; }
  pre code {
    padding: 0;
    font-size: inherit;
    color: inherit;
    white-space: pre-wrap;
    background-color: transparent;
    border-radius: 0; }

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll; }

.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  .container:before, .container:after {
    display: table;
    content: " "; }
  .container:after {
    clear: both; }
  @media (min-width: 768px) {
    .container {
      width: 750px; } }
  @media (min-width: 992px) {
    .container {
      width: 970px; } }
  @media (min-width: 1200px) {
    .container {
      width: 1170px; } }

.container-fluid {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto; }
  .container-fluid:before, .container-fluid:after {
    display: table;
    content: " "; }
  .container-fluid:after {
    clear: both; }

.row {
  margin-right: -15px;
  margin-left: -15px; }
  .row:before, .row:after {
    display: table;
    content: " "; }
  .row:after {
    clear: both; }

.row-no-gutters {
  margin-right: 0;
  margin-left: 0; }
  .row-no-gutters [class*="col-"] {
    padding-right: 0;
    padding-left: 0; }

.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px; }

.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
  float: left; }

.col-xs-1 {
  width: 8.33333%; }

.col-xs-2 {
  width: 16.66667%; }

.col-xs-3 {
  width: 25%; }

.col-xs-4 {
  width: 33.33333%; }

.col-xs-5 {
  width: 41.66667%; }

.col-xs-6 {
  width: 50%; }

.col-xs-7 {
  width: 58.33333%; }

.col-xs-8 {
  width: 66.66667%; }

.col-xs-9 {
  width: 75%; }

.col-xs-10 {
  width: 83.33333%; }

.col-xs-11 {
  width: 91.66667%; }

.col-xs-12 {
  width: 100%; }

.col-xs-pull-0 {
  right: auto; }

.col-xs-pull-1 {
  right: 8.33333%; }

.col-xs-pull-2 {
  right: 16.66667%; }

.col-xs-pull-3 {
  right: 25%; }

.col-xs-pull-4 {
  right: 33.33333%; }

.col-xs-pull-5 {
  right: 41.66667%; }

.col-xs-pull-6 {
  right: 50%; }

.col-xs-pull-7 {
  right: 58.33333%; }

.col-xs-pull-8 {
  right: 66.66667%; }

.col-xs-pull-9 {
  right: 75%; }

.col-xs-pull-10 {
  right: 83.33333%; }

.col-xs-pull-11 {
  right: 91.66667%; }

.col-xs-pull-12 {
  right: 100%; }

.col-xs-push-0 {
  left: auto; }

.col-xs-push-1 {
  left: 8.33333%; }

.col-xs-push-2 {
  left: 16.66667%; }

.col-xs-push-3 {
  left: 25%; }

.col-xs-push-4 {
  left: 33.33333%; }

.col-xs-push-5 {
  left: 41.66667%; }

.col-xs-push-6 {
  left: 50%; }

.col-xs-push-7 {
  left: 58.33333%; }

.col-xs-push-8 {
  left: 66.66667%; }

.col-xs-push-9 {
  left: 75%; }

.col-xs-push-10 {
  left: 83.33333%; }

.col-xs-push-11 {
  left: 91.66667%; }

.col-xs-push-12 {
  left: 100%; }

.col-xs-offset-0 {
  margin-left: 0%; }

.col-xs-offset-1 {
  margin-left: 8.33333%; }

.col-xs-offset-2 {
  margin-left: 16.66667%; }

.col-xs-offset-3 {
  margin-left: 25%; }

.col-xs-offset-4 {
  margin-left: 33.33333%; }

.col-xs-offset-5 {
  margin-left: 41.66667%; }

.col-xs-offset-6 {
  margin-left: 50%; }

.col-xs-offset-7 {
  margin-left: 58.33333%; }

.col-xs-offset-8 {
  margin-left: 66.66667%; }

.col-xs-offset-9 {
  margin-left: 75%; }

.col-xs-offset-10 {
  margin-left: 83.33333%; }

.col-xs-offset-11 {
  margin-left: 91.66667%; }

.col-xs-offset-12 {
  margin-left: 100%; }

@media (min-width: 768px) {
  .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 {
    float: left; }
  .col-sm-1 {
    width: 8.33333%; }
  .col-sm-2 {
    width: 16.66667%; }
  .col-sm-3 {
    width: 25%; }
  .col-sm-4 {
    width: 33.33333%; }
  .col-sm-5 {
    width: 41.66667%; }
  .col-sm-6 {
    width: 50%; }
  .col-sm-7 {
    width: 58.33333%; }
  .col-sm-8 {
    width: 66.66667%; }
  .col-sm-9 {
    width: 75%; }
  .col-sm-10 {
    width: 83.33333%; }
  .col-sm-11 {
    width: 91.66667%; }
  .col-sm-12 {
    width: 100%; }
  .col-sm-pull-0 {
    right: auto; }
  .col-sm-pull-1 {
    right: 8.33333%; }
  .col-sm-pull-2 {
    right: 16.66667%; }
  .col-sm-pull-3 {
    right: 25%; }
  .col-sm-pull-4 {
    right: 33.33333%; }
  .col-sm-pull-5 {
    right: 41.66667%; }
  .col-sm-pull-6 {
    right: 50%; }
  .col-sm-pull-7 {
    right: 58.33333%; }
  .col-sm-pull-8 {
    right: 66.66667%; }
  .col-sm-pull-9 {
    right: 75%; }
  .col-sm-pull-10 {
    right: 83.33333%; }
  .col-sm-pull-11 {
    right: 91.66667%; }
  .col-sm-pull-12 {
    right: 100%; }
  .col-sm-push-0 {
    left: auto; }
  .col-sm-push-1 {
    left: 8.33333%; }
  .col-sm-push-2 {
    left: 16.66667%; }
  .col-sm-push-3 {
    left: 25%; }
  .col-sm-push-4 {
    left: 33.33333%; }
  .col-sm-push-5 {
    left: 41.66667%; }
  .col-sm-push-6 {
    left: 50%; }
  .col-sm-push-7 {
    left: 58.33333%; }
  .col-sm-push-8 {
    left: 66.66667%; }
  .col-sm-push-9 {
    left: 75%; }
  .col-sm-push-10 {
    left: 83.33333%; }
  .col-sm-push-11 {
    left: 91.66667%; }
  .col-sm-push-12 {
    left: 100%; }
  .col-sm-offset-0 {
    margin-left: 0%; }
  .col-sm-offset-1 {
    margin-left: 8.33333%; }
  .col-sm-offset-2 {
    margin-left: 16.66667%; }
  .col-sm-offset-3 {
    margin-left: 25%; }
  .col-sm-offset-4 {
    margin-left: 33.33333%; }
  .col-sm-offset-5 {
    margin-left: 41.66667%; }
  .col-sm-offset-6 {
    margin-left: 50%; }
  .col-sm-offset-7 {
    margin-left: 58.33333%; }
  .col-sm-offset-8 {
    margin-left: 66.66667%; }
  .col-sm-offset-9 {
    margin-left: 75%; }
  .col-sm-offset-10 {
    margin-left: 83.33333%; }
  .col-sm-offset-11 {
    margin-left: 91.66667%; }
  .col-sm-offset-12 {
    margin-left: 100%; } }

@media (min-width: 992px) {
  .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 {
    float: left; }
  .col-md-1 {
    width: 8.33333%; }
  .col-md-2 {
    width: 16.66667%; }
  .col-md-3 {
    width: 25%; }
  .col-md-4 {
    width: 33.33333%; }
  .col-md-5 {
    width: 41.66667%; }
  .col-md-6 {
    width: 50%; }
  .col-md-7 {
    width: 58.33333%; }
  .col-md-8 {
    width: 66.66667%; }
  .col-md-9 {
    width: 75%; }
  .col-md-10 {
    width: 83.33333%; }
  .col-md-11 {
    width: 91.66667%; }
  .col-md-12 {
    width: 100%; }
  .col-md-pull-0 {
    right: auto; }
  .col-md-pull-1 {
    right: 8.33333%; }
  .col-md-pull-2 {
    right: 16.66667%; }
  .col-md-pull-3 {
    right: 25%; }
  .col-md-pull-4 {
    right: 33.33333%; }
  .col-md-pull-5 {
    right: 41.66667%; }
  .col-md-pull-6 {
    right: 50%; }
  .col-md-pull-7 {
    right: 58.33333%; }
  .col-md-pull-8 {
    right: 66.66667%; }
  .col-md-pull-9 {
    right: 75%; }
  .col-md-pull-10 {
    right: 83.33333%; }
  .col-md-pull-11 {
    right: 91.66667%; }
  .col-md-pull-12 {
    right: 100%; }
  .col-md-push-0 {
    left: auto; }
  .col-md-push-1 {
    left: 8.33333%; }
  .col-md-push-2 {
    left: 16.66667%; }
  .col-md-push-3 {
    left: 25%; }
  .col-md-push-4 {
    left: 33.33333%; }
  .col-md-push-5 {
    left: 41.66667%; }
  .col-md-push-6 {
    left: 50%; }
  .col-md-push-7 {
    left: 58.33333%; }
  .col-md-push-8 {
    left: 66.66667%; }
  .col-md-push-9 {
    left: 75%; }
  .col-md-push-10 {
    left: 83.33333%; }
  .col-md-push-11 {
    left: 91.66667%; }
  .col-md-push-12 {
    left: 100%; }
  .col-md-offset-0 {
    margin-left: 0%; }
  .col-md-offset-1 {
    margin-left: 8.33333%; }
  .col-md-offset-2 {
    margin-left: 16.66667%; }
  .col-md-offset-3 {
    margin-left: 25%; }
  .col-md-offset-4 {
    margin-left: 33.33333%; }
  .col-md-offset-5 {
    margin-left: 41.66667%; }
  .col-md-offset-6 {
    margin-left: 50%; }
  .col-md-offset-7 {
    margin-left: 58.33333%; }
  .col-md-offset-8 {
    margin-left: 66.66667%; }
  .col-md-offset-9 {
    margin-left: 75%; }
  .col-md-offset-10 {
    margin-left: 83.33333%; }
  .col-md-offset-11 {
    margin-left: 91.66667%; }
  .col-md-offset-12 {
    margin-left: 100%; } }

@media (min-width: 1200px) {
  .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 {
    float: left; }
  .col-lg-1 {
    width: 8.33333%; }
  .col-lg-2 {
    width: 16.66667%; }
  .col-lg-3 {
    width: 25%; }
  .col-lg-4 {
    width: 33.33333%; }
  .col-lg-5 {
    width: 41.66667%; }
  .col-lg-6 {
    width: 50%; }
  .col-lg-7 {
    width: 58.33333%; }
  .col-lg-8 {
    width: 66.66667%; }
  .col-lg-9 {
    width: 75%; }
  .col-lg-10 {
    width: 83.33333%; }
  .col-lg-11 {
    width: 91.66667%; }
  .col-lg-12 {
    width: 100%; }
  .col-lg-pull-0 {
    right: auto; }
  .col-lg-pull-1 {
    right: 8.33333%; }
  .col-lg-pull-2 {
    right: 16.66667%; }
  .col-lg-pull-3 {
    right: 25%; }
  .col-lg-pull-4 {
    right: 33.33333%; }
  .col-lg-pull-5 {
    right: 41.66667%; }
  .col-lg-pull-6 {
    right: 50%; }
  .col-lg-pull-7 {
    right: 58.33333%; }
  .col-lg-pull-8 {
    right: 66.66667%; }
  .col-lg-pull-9 {
    right: 75%; }
  .col-lg-pull-10 {
    right: 83.33333%; }
  .col-lg-pull-11 {
    right: 91.66667%; }
  .col-lg-pull-12 {
    right: 100%; }
  .col-lg-push-0 {
    left: auto; }
  .col-lg-push-1 {
    left: 8.33333%; }
  .col-lg-push-2 {
    left: 16.66667%; }
  .col-lg-push-3 {
    left: 25%; }
  .col-lg-push-4 {
    left: 33.33333%; }
  .col-lg-push-5 {
    left: 41.66667%; }
  .col-lg-push-6 {
    left: 50%; }
  .col-lg-push-7 {
    left: 58.33333%; }
  .col-lg-push-8 {
    left: 66.66667%; }
  .col-lg-push-9 {
    left: 75%; }
  .col-lg-push-10 {
    left: 83.33333%; }
  .col-lg-push-11 {
    left: 91.66667%; }
  .col-lg-push-12 {
    left: 100%; }
  .col-lg-offset-0 {
    margin-left: 0%; }
  .col-lg-offset-1 {
    margin-left: 8.33333%; }
  .col-lg-offset-2 {
    margin-left: 16.66667%; }
  .col-lg-offset-3 {
    margin-left: 25%; }
  .col-lg-offset-4 {
    margin-left: 33.33333%; }
  .col-lg-offset-5 {
    margin-left: 41.66667%; }
  .col-lg-offset-6 {
    margin-left: 50%; }
  .col-lg-offset-7 {
    margin-left: 58.33333%; }
  .col-lg-offset-8 {
    margin-left: 66.66667%; }
  .col-lg-offset-9 {
    margin-left: 75%; }
  .col-lg-offset-10 {
    margin-left: 83.33333%; }
  .col-lg-offset-11 {
    margin-left: 91.66667%; }
  .col-lg-offset-12 {
    margin-left: 100%; } }

table {
  background-color: transparent; }
  table col[class*="col-"] {
    position: static;
    display: table-column;
    float: none; }
  table td[class*="col-"],
  table th[class*="col-"] {
    position: static;
    display: table-cell;
    float: none; }

caption {
  padding-top: 8px;
  padding-bottom: 8px;
  color: #777777;
  text-align: left; }

th {
  text-align: left; }

.table {
  width: 100%;
  max-width: 100%;
  margin-bottom: 20px; }
  .table > thead > tr > th,
  .table > thead > tr > td,
  .table > tbody > tr > th,
  .table > tbody > tr > td,
  .table > tfoot > tr > th,
  .table > tfoot > tr > td {
    padding: 8px;
    line-height: 1.42857;
    vertical-align: top;
    border-top: 1px solid #ddd; }
  .table > thead > tr > th {
    vertical-align: bottom;
    border-bottom: 2px solid #ddd; }
  .table > caption + thead > tr:first-child > th,
  .table > caption + thead > tr:first-child > td,
  .table > colgroup + thead > tr:first-child > th,
  .table > colgroup + thead > tr:first-child > td,
  .table > thead:first-child > tr:first-child > th,
  .table > thead:first-child > tr:first-child > td {
    border-top: 0; }
  .table > tbody + tbody {
    border-top: 2px solid #ddd; }
  .table .table {
    background-color: #fff; }

.table-condensed > thead > tr > th,
.table-condensed > thead > tr > td,
.table-condensed > tbody > tr > th,
.table-condensed > tbody > tr > td,
.table-condensed > tfoot > tr > th,
.table-condensed > tfoot > tr > td {
  padding: 5px; }

.table-bordered {
  border: 1px solid #ddd; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td,
  .table-bordered > tbody > tr > th,
  .table-bordered > tbody > tr > td,
  .table-bordered > tfoot > tr > th,
  .table-bordered > tfoot > tr > td {
    border: 1px solid #ddd; }
  .table-bordered > thead > tr > th,
  .table-bordered > thead > tr > td {
    border-bottom-width: 2px; }

.table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #f9f9f9; }

.table-hover > tbody > tr:hover {
  background-color: #f5f5f5; }

.table > thead > tr > td.active,
.table > thead > tr > th.active,
.table > thead > tr.active > td,
.table > thead > tr.active > th,
.table > tbody > tr > td.active,
.table > tbody > tr > th.active,
.table > tbody > tr.active > td,
.table > tbody > tr.active > th,
.table > tfoot > tr > td.active,
.table > tfoot > tr > th.active,
.table > tfoot > tr.active > td,
.table > tfoot > tr.active > th {
  background-color: #f5f5f5; }

.table-hover > tbody > tr > td.active:hover,
.table-hover > tbody > tr > th.active:hover,
.table-hover > tbody > tr.active:hover > td,
.table-hover > tbody > tr:hover > .active,
.table-hover > tbody > tr.active:hover > th {
  background-color: #e8e8e8; }

.table > thead > tr > td.success,
.table > thead > tr > th.success,
.table > thead > tr.success > td,
.table > thead > tr.success > th,
.table > tbody > tr > td.success,
.table > tbody > tr > th.success,
.table > tbody > tr.success > td,
.table > tbody > tr.success > th,
.table > tfoot > tr > td.success,
.table > tfoot > tr > th.success,
.table > tfoot > tr.success > td,
.table > tfoot > tr.success > th {
  background-color: #dff0d8; }

.table-hover > tbody > tr > td.success:hover,
.table-hover > tbody > tr > th.success:hover,
.table-hover > tbody > tr.success:hover > td,
.table-hover > tbody > tr:hover > .success,
.table-hover > tbody > tr.success:hover > th {
  background-color: #d0e9c6; }

.table > thead > tr > td.info,
.table > thead > tr > th.info,
.table > thead > tr.info > td,
.table > thead > tr.info > th,
.table > tbody > tr > td.info,
.table > tbody > tr > th.info,
.table > tbody > tr.info > td,
.table > tbody > tr.info > th,
.table > tfoot > tr > td.info,
.table > tfoot > tr > th.info,
.table > tfoot > tr.info > td,
.table > tfoot > tr.info > th {
  background-color: #d9edf7; }

.table-hover > tbody > tr > td.info:hover,
.table-hover > tbody > tr > th.info:hover,
.table-hover > tbody > tr.info:hover > td,
.table-hover > tbody > tr:hover > .info,
.table-hover > tbody > tr.info:hover > th {
  background-color: #c4e3f3; }

.table > thead > tr > td.warning,
.table > thead > tr > th.warning,
.table > thead > tr.warning > td,
.table > thead > tr.warning > th,
.table > tbody > tr > td.warning,
.table > tbody > tr > th.warning,
.table > tbody > tr.warning > td,
.table > tbody > tr.warning > th,
.table > tfoot > tr > td.warning,
.table > tfoot > tr > th.warning,
.table > tfoot > tr.warning > td,
.table > tfoot > tr.warning > th {
  background-color: #fcf8e3; }

.table-hover > tbody > tr > td.warning:hover,
.table-hover > tbody > tr > th.warning:hover,
.table-hover > tbody > tr.warning:hover > td,
.table-hover > tbody > tr:hover > .warning,
.table-hover > tbody > tr.warning:hover > th {
  background-color: #faf2cc; }

.table > thead > tr > td.danger,
.table > thead > tr > th.danger,
.table > thead > tr.danger > td,
.table > thead > tr.danger > th,
.table > tbody > tr > td.danger,
.table > tbody > tr > th.danger,
.table > tbody > tr.danger > td,
.table > tbody > tr.danger > th,
.table > tfoot > tr > td.danger,
.table > tfoot > tr > th.danger,
.table > tfoot > tr.danger > td,
.table > tfoot > tr.danger > th {
  background-color: #f2dede; }

.table-hover > tbody > tr > td.danger:hover,
.table-hover > tbody > tr > th.danger:hover,
.table-hover > tbody > tr.danger:hover > td,
.table-hover > tbody > tr:hover > .danger,
.table-hover > tbody > tr.danger:hover > th {
  background-color: #ebcccc; }

.table-responsive {
  min-height: .01%;
  overflow-x: auto; }
  @media screen and (max-width: 767px) {
    .table-responsive {
      width: 100%;
      margin-bottom: 15px;
      overflow-y: hidden;
      -ms-overflow-style: -ms-autohiding-scrollbar;
      border: 1px solid #ddd; }
      .table-responsive > .table {
        margin-bottom: 0; }
        .table-responsive > .table > thead > tr > th,
        .table-responsive > .table > thead > tr > td,
        .table-responsive > .table > tbody > tr > th,
        .table-responsive > .table > tbody > tr > td,
        .table-responsive > .table > tfoot > tr > th,
        .table-responsive > .table > tfoot > tr > td {
          white-space: nowrap; }
      .table-responsive > .table-bordered {
        border: 0; }
        .table-responsive > .table-bordered > thead > tr > th:first-child,
        .table-responsive > .table-bordered > thead > tr > td:first-child,
        .table-responsive > .table-bordered > tbody > tr > th:first-child,
        .table-responsive > .table-bordered > tbody > tr > td:first-child,
        .table-responsive > .table-bordered > tfoot > tr > th:first-child,
        .table-responsive > .table-bordered > tfoot > tr > td:first-child {
          border-left: 0; }
        .table-responsive > .table-bordered > thead > tr > th:last-child,
        .table-responsive > .table-bordered > thead > tr > td:last-child,
        .table-responsive > .table-bordered > tbody > tr > th:last-child,
        .table-responsive > .table-bordered > tbody > tr > td:last-child,
        .table-responsive > .table-bordered > tfoot > tr > th:last-child,
        .table-responsive > .table-bordered > tfoot > tr > td:last-child {
          border-right: 0; }
        .table-responsive > .table-bordered > tbody > tr:last-child > th,
        .table-responsive > .table-bordered > tbody > tr:last-child > td,
        .table-responsive > .table-bordered > tfoot > tr:last-child > th,
        .table-responsive > .table-bordered > tfoot > tr:last-child > td {
          border-bottom: 0; } }

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0; }

legend {
  display: block;
  width: 100%;
  padding: 0;
  margin-bottom: 20px;
  font-size: 21px;
  line-height: inherit;
  color: #333333;
  border: 0;
  border-bottom: 1px solid #e5e5e5; }

label {
  display: inline-block;
  max-width: 100%;
  margin-bottom: 5px;
  font-weight: 700; }

input[type="search"] {
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none; }

input[type="radio"],
input[type="checkbox"] {
  margin: 4px 0 0;
  margin-top: 1px \9;
  line-height: normal; }
  input[type="radio"][disabled], input[type="radio"].disabled,
  fieldset[disabled] input[type="radio"],
  input[type="checkbox"][disabled],
  input[type="checkbox"].disabled,
  fieldset[disabled]
  input[type="checkbox"] {
    cursor: not-allowed; }

input[type="file"] {
  display: block; }

input[type="range"] {
  display: block;
  width: 100%; }

select[multiple],
select[size] {
  height: auto; }

input[type="file"]:focus,
input[type="radio"]:focus,
input[type="checkbox"]:focus {
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px; }

output {
  display: block;
  padding-top: 7px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555; }

.form-control {
  display: block;
  width: 100%;
  height: 34px;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  color: #555555;
  background-color: #fff;
  background-image: none;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s; }
  .form-control:focus {
    border-color: #66afe9;
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6); }
  .form-control::-moz-placeholder {
    color: #999;
    opacity: 1; }
  .form-control:-ms-input-placeholder {
    color: #999; }
  .form-control::-webkit-input-placeholder {
    color: #999; }
  .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .form-control[disabled], .form-control[readonly],
  fieldset[disabled] .form-control {
    background-color: #eeeeee;
    opacity: 1; }
  .form-control[disabled],
  fieldset[disabled] .form-control {
    cursor: not-allowed; }

textarea.form-control {
  height: auto; }

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  input[type="date"].form-control,
  input[type="time"].form-control,
  input[type="datetime-local"].form-control,
  input[type="month"].form-control {
    line-height: 34px; }
  input[type="date"].input-sm, .input-group-sm > input.form-control[type="date"],
  .input-group-sm > input.input-group-addon[type="date"],
  .input-group-sm > .input-group-btn > input.btn[type="date"],
  .input-group-sm input[type="date"],
  input[type="time"].input-sm,
  .input-group-sm > input.form-control[type="time"],
  .input-group-sm > input.input-group-addon[type="time"],
  .input-group-sm > .input-group-btn > input.btn[type="time"],
  .input-group-sm
  input[type="time"],
  input[type="datetime-local"].input-sm,
  .input-group-sm > input.form-control[type="datetime-local"],
  .input-group-sm > input.input-group-addon[type="datetime-local"],
  .input-group-sm > .input-group-btn > input.btn[type="datetime-local"],
  .input-group-sm
  input[type="datetime-local"],
  input[type="month"].input-sm,
  .input-group-sm > input.form-control[type="month"],
  .input-group-sm > input.input-group-addon[type="month"],
  .input-group-sm > .input-group-btn > input.btn[type="month"],
  .input-group-sm
  input[type="month"] {
    line-height: 30px; }
  input[type="date"].input-lg, .input-group-lg > input.form-control[type="date"],
  .input-group-lg > input.input-group-addon[type="date"],
  .input-group-lg > .input-group-btn > input.btn[type="date"],
  .input-group-lg input[type="date"],
  input[type="time"].input-lg,
  .input-group-lg > input.form-control[type="time"],
  .input-group-lg > input.input-group-addon[type="time"],
  .input-group-lg > .input-group-btn > input.btn[type="time"],
  .input-group-lg
  input[type="time"],
  input[type="datetime-local"].input-lg,
  .input-group-lg > input.form-control[type="datetime-local"],
  .input-group-lg > input.input-group-addon[type="datetime-local"],
  .input-group-lg > .input-group-btn > input.btn[type="datetime-local"],
  .input-group-lg
  input[type="datetime-local"],
  input[type="month"].input-lg,
  .input-group-lg > input.form-control[type="month"],
  .input-group-lg > input.input-group-addon[type="month"],
  .input-group-lg > .input-group-btn > input.btn[type="month"],
  .input-group-lg
  input[type="month"] {
    line-height: 46px; } }

.form-group {
  margin-bottom: 15px; }

.radio,
.checkbox {
  position: relative;
  display: block;
  margin-top: 10px;
  margin-bottom: 10px; }
  .radio.disabled label,
  fieldset[disabled] .radio label,
  .checkbox.disabled label,
  fieldset[disabled]
  .checkbox label {
    cursor: not-allowed; }
  .radio label,
  .checkbox label {
    min-height: 20px;
    padding-left: 20px;
    margin-bottom: 0;
    font-weight: 400;
    cursor: pointer; }

.radio input[type="radio"],
.radio-inline input[type="radio"],
.checkbox input[type="checkbox"],
.checkbox-inline input[type="checkbox"] {
  position: absolute;
  margin-top: 4px \9;
  margin-left: -20px; }

.radio + .radio,
.checkbox + .checkbox {
  margin-top: -5px; }

.radio-inline,
.checkbox-inline {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  margin-bottom: 0;
  font-weight: 400;
  vertical-align: middle;
  cursor: pointer; }
  .radio-inline.disabled,
  fieldset[disabled] .radio-inline,
  .checkbox-inline.disabled,
  fieldset[disabled]
  .checkbox-inline {
    cursor: not-allowed; }

.radio-inline + .radio-inline,
.checkbox-inline + .checkbox-inline {
  margin-top: 0;
  margin-left: 10px; }

.form-control-static {
  min-height: 34px;
  padding-top: 7px;
  padding-bottom: 7px;
  margin-bottom: 0; }
  .form-control-static.input-lg, .input-group-lg > .form-control-static.form-control,
  .input-group-lg > .form-control-static.input-group-addon,
  .input-group-lg > .input-group-btn > .form-control-static.btn, .form-control-static.input-sm, .input-group-sm > .form-control-static.form-control,
  .input-group-sm > .form-control-static.input-group-addon,
  .input-group-sm > .input-group-btn > .form-control-static.btn {
    padding-right: 0;
    padding-left: 0; }

.input-sm, .input-group-sm > .form-control,
.input-group-sm > .input-group-addon,
.input-group-sm > .input-group-btn > .btn {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

select.input-sm, .input-group-sm > select.form-control,
.input-group-sm > select.input-group-addon,
.input-group-sm > .input-group-btn > select.btn {
  height: 30px;
  line-height: 30px; }

textarea.input-sm, .input-group-sm > textarea.form-control,
.input-group-sm > textarea.input-group-addon,
.input-group-sm > .input-group-btn > textarea.btn,
select[multiple].input-sm,
.input-group-sm > select.form-control[multiple],
.input-group-sm > select.input-group-addon[multiple],
.input-group-sm > .input-group-btn > select.btn[multiple] {
  height: auto; }

.form-group-sm .form-control {
  height: 30px;
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.form-group-sm select.form-control {
  height: 30px;
  line-height: 30px; }

.form-group-sm textarea.form-control,
.form-group-sm select[multiple].form-control {
  height: auto; }

.form-group-sm .form-control-static {
  height: 30px;
  min-height: 32px;
  padding: 6px 10px;
  font-size: 12px;
  line-height: 1.5; }

.input-lg, .input-group-lg > .form-control,
.input-group-lg > .input-group-addon,
.input-group-lg > .input-group-btn > .btn {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

select.input-lg, .input-group-lg > select.form-control,
.input-group-lg > select.input-group-addon,
.input-group-lg > .input-group-btn > select.btn {
  height: 46px;
  line-height: 46px; }

textarea.input-lg, .input-group-lg > textarea.form-control,
.input-group-lg > textarea.input-group-addon,
.input-group-lg > .input-group-btn > textarea.btn,
select[multiple].input-lg,
.input-group-lg > select.form-control[multiple],
.input-group-lg > select.input-group-addon[multiple],
.input-group-lg > .input-group-btn > select.btn[multiple] {
  height: auto; }

.form-group-lg .form-control {
  height: 46px;
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

.form-group-lg select.form-control {
  height: 46px;
  line-height: 46px; }

.form-group-lg textarea.form-control,
.form-group-lg select[multiple].form-control {
  height: auto; }

.form-group-lg .form-control-static {
  height: 46px;
  min-height: 38px;
  padding: 11px 16px;
  font-size: 18px;
  line-height: 1.33333; }

.has-feedback {
  position: relative; }
  .has-feedback .form-control {
    padding-right: 42.5px; }

.form-control-feedback {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  text-align: center;
  pointer-events: none; }

.input-lg + .form-control-feedback, .input-group-lg > .form-control + .form-control-feedback, .input-group-lg > .input-group-addon + .form-control-feedback, .input-group-lg > .input-group-btn > .btn + .form-control-feedback,
.input-group-lg + .form-control-feedback,
.form-group-lg .form-control + .form-control-feedback {
  width: 46px;
  height: 46px;
  line-height: 46px; }

.input-sm + .form-control-feedback, .input-group-sm > .form-control + .form-control-feedback, .input-group-sm > .input-group-addon + .form-control-feedback, .input-group-sm > .input-group-btn > .btn + .form-control-feedback,
.input-group-sm + .form-control-feedback,
.form-group-sm .form-control + .form-control-feedback {
  width: 30px;
  height: 30px;
  line-height: 30px; }

.has-success .help-block,
.has-success .control-label,
.has-success .radio,
.has-success .checkbox,
.has-success .radio-inline,
.has-success .checkbox-inline,
.has-success.radio label,
.has-success.checkbox label,
.has-success.radio-inline label,
.has-success.checkbox-inline label {
  color: #3c763d; }

.has-success .form-control {
  border-color: #3c763d;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-success .form-control:focus {
    border-color: #2b542c;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #67b168; }

.has-success .input-group-addon {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #3c763d; }

.has-success .form-control-feedback {
  color: #3c763d; }

.has-warning .help-block,
.has-warning .control-label,
.has-warning .radio,
.has-warning .checkbox,
.has-warning .radio-inline,
.has-warning .checkbox-inline,
.has-warning.radio label,
.has-warning.checkbox label,
.has-warning.radio-inline label,
.has-warning.checkbox-inline label {
  color: #8a6d3b; }

.has-warning .form-control {
  border-color: #8a6d3b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-warning .form-control:focus {
    border-color: #66512c;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #c0a16b; }

.has-warning .input-group-addon {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #8a6d3b; }

.has-warning .form-control-feedback {
  color: #8a6d3b; }

.has-error .help-block,
.has-error .control-label,
.has-error .radio,
.has-error .checkbox,
.has-error .radio-inline,
.has-error .checkbox-inline,
.has-error.radio label,
.has-error.checkbox label,
.has-error.radio-inline label,
.has-error.checkbox-inline label {
  color: #a94442; }

.has-error .form-control {
  border-color: #a94442;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); }
  .has-error .form-control:focus {
    border-color: #843534;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; }

.has-error .input-group-addon {
  color: #a94442;
  background-color: #f2dede;
  border-color: #a94442; }

.has-error .form-control-feedback {
  color: #a94442; }

.has-feedback label ~ .form-control-feedback {
  top: 25px; }

.has-feedback label.sr-only ~ .form-control-feedback {
  top: 0; }

.help-block {
  display: block;
  margin-top: 5px;
  margin-bottom: 10px;
  color: #767676; }

@media (min-width: 768px) {
  .form-inline .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle; }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle; }
  .form-inline .form-control-static {
    display: inline-block; }
  .form-inline .input-group {
    display: inline-table;
    vertical-align: middle; }
    .form-inline .input-group .input-group-addon,
    .form-inline .input-group .input-group-btn,
    .form-inline .input-group .form-control {
      width: auto; }
  .form-inline .input-group > .form-control {
    width: 100%; }
  .form-inline .control-label {
    margin-bottom: 0;
    vertical-align: middle; }
  .form-inline .radio,
  .form-inline .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle; }
    .form-inline .radio label,
    .form-inline .checkbox label {
      padding-left: 0; }
  .form-inline .radio input[type="radio"],
  .form-inline .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0; }
  .form-inline .has-feedback .form-control-feedback {
    top: 0; } }

.form-horizontal .radio,
.form-horizontal .checkbox,
.form-horizontal .radio-inline,
.form-horizontal .checkbox-inline {
  padding-top: 7px;
  margin-top: 0;
  margin-bottom: 0; }

.form-horizontal .radio,
.form-horizontal .checkbox {
  min-height: 27px; }

.form-horizontal .form-group {
  margin-right: -15px;
  margin-left: -15px; }
  .form-horizontal .form-group:before, .form-horizontal .form-group:after {
    display: table;
    content: " "; }
  .form-horizontal .form-group:after {
    clear: both; }

@media (min-width: 768px) {
  .form-horizontal .control-label {
    padding-top: 7px;
    margin-bottom: 0;
    text-align: right; } }

.form-horizontal .has-feedback .form-control-feedback {
  right: 15px; }

@media (min-width: 768px) {
  .form-horizontal .form-group-lg .control-label {
    padding-top: 11px;
    font-size: 18px; } }

@media (min-width: 768px) {
  .form-horizontal .form-group-sm .control-label {
    padding-top: 6px;
    font-size: 12px; } }

.btn {
  display: inline-block;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  padding: 6px 12px;
  font-size: 14px;
  line-height: 1.42857;
  border-radius: 4px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none; }
  .btn:focus, .btn.focus, .btn:active:focus, .btn:active.focus, .btn.active:focus, .btn.active.focus {
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px; }
  .btn:hover, .btn:focus, .btn.focus {
    color: #333;
    text-decoration: none; }
  .btn:active, .btn.active {
    background-image: none;
    outline: 0;
    box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn.disabled, .btn[disabled],
  fieldset[disabled] .btn {
    cursor: not-allowed;
    filter: alpha(opacity=65);
    opacity: 0.65;
    box-shadow: none; }

a.btn.disabled,
fieldset[disabled] a.btn {
  pointer-events: none; }

.btn-default {
  color: #333;
  background-color: #fff;
  border-color: #ccc; }
  .btn-default:focus, .btn-default.focus {
    color: #333;
    background-color: #e6e6e6;
    border-color: #8c8c8c; }
  .btn-default:hover {
    color: #333;
    background-color: #e6e6e6;
    border-color: #adadad; }
  .btn-default:active, .btn-default.active,
  .open > .btn-default.dropdown-toggle {
    color: #333;
    background-color: #e6e6e6;
    background-image: none;
    border-color: #adadad; }
    .btn-default:active:hover, .btn-default:active:focus, .btn-default:active.focus, .btn-default.active:hover, .btn-default.active:focus, .btn-default.active.focus,
    .open > .btn-default.dropdown-toggle:hover,
    .open > .btn-default.dropdown-toggle:focus,
    .open > .btn-default.dropdown-toggle.focus {
      color: #333;
      background-color: #d4d4d4;
      border-color: #8c8c8c; }
  .btn-default.disabled:hover, .btn-default.disabled:focus, .btn-default.disabled.focus, .btn-default[disabled]:hover, .btn-default[disabled]:focus, .btn-default[disabled].focus,
  fieldset[disabled] .btn-default:hover,
  fieldset[disabled] .btn-default:focus,
  fieldset[disabled] .btn-default.focus {
    background-color: #fff;
    border-color: #ccc; }
  .btn-default .badge {
    color: #fff;
    background-color: #333; }

.btn-primary {
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4; }
  .btn-primary:focus, .btn-primary.focus {
    color: #fff;
    background-color: #286090;
    border-color: #122b40; }
  .btn-primary:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74; }
  .btn-primary:active, .btn-primary.active,
  .open > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: #286090;
    background-image: none;
    border-color: #204d74; }
    .btn-primary:active:hover, .btn-primary:active:focus, .btn-primary:active.focus, .btn-primary.active:hover, .btn-primary.active:focus, .btn-primary.active.focus,
    .open > .btn-primary.dropdown-toggle:hover,
    .open > .btn-primary.dropdown-toggle:focus,
    .open > .btn-primary.dropdown-toggle.focus {
      color: #fff;
      background-color: #204d74;
      border-color: #122b40; }
  .btn-primary.disabled:hover, .btn-primary.disabled:focus, .btn-primary.disabled.focus, .btn-primary[disabled]:hover, .btn-primary[disabled]:focus, .btn-primary[disabled].focus,
  fieldset[disabled] .btn-primary:hover,
  fieldset[disabled] .btn-primary:focus,
  fieldset[disabled] .btn-primary.focus {
    background-color: #337ab7;
    border-color: #2e6da4; }
  .btn-primary .badge {
    color: #337ab7;
    background-color: #fff; }

.btn-success {
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c; }
  .btn-success:focus, .btn-success.focus {
    color: #fff;
    background-color: #449d44;
    border-color: #255625; }
  .btn-success:hover {
    color: #fff;
    background-color: #449d44;
    border-color: #398439; }
  .btn-success:active, .btn-success.active,
  .open > .btn-success.dropdown-toggle {
    color: #fff;
    background-color: #449d44;
    background-image: none;
    border-color: #398439; }
    .btn-success:active:hover, .btn-success:active:focus, .btn-success:active.focus, .btn-success.active:hover, .btn-success.active:focus, .btn-success.active.focus,
    .open > .btn-success.dropdown-toggle:hover,
    .open > .btn-success.dropdown-toggle:focus,
    .open > .btn-success.dropdown-toggle.focus {
      color: #fff;
      background-color: #398439;
      border-color: #255625; }
  .btn-success.disabled:hover, .btn-success.disabled:focus, .btn-success.disabled.focus, .btn-success[disabled]:hover, .btn-success[disabled]:focus, .btn-success[disabled].focus,
  fieldset[disabled] .btn-success:hover,
  fieldset[disabled] .btn-success:focus,
  fieldset[disabled] .btn-success.focus {
    background-color: #5cb85c;
    border-color: #4cae4c; }
  .btn-success .badge {
    color: #5cb85c;
    background-color: #fff; }

.btn-info {
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da; }
  .btn-info:focus, .btn-info.focus {
    color: #fff;
    background-color: #31b0d5;
    border-color: #1b6d85; }
  .btn-info:hover {
    color: #fff;
    background-color: #31b0d5;
    border-color: #269abc; }
  .btn-info:active, .btn-info.active,
  .open > .btn-info.dropdown-toggle {
    color: #fff;
    background-color: #31b0d5;
    background-image: none;
    border-color: #269abc; }
    .btn-info:active:hover, .btn-info:active:focus, .btn-info:active.focus, .btn-info.active:hover, .btn-info.active:focus, .btn-info.active.focus,
    .open > .btn-info.dropdown-toggle:hover,
    .open > .btn-info.dropdown-toggle:focus,
    .open > .btn-info.dropdown-toggle.focus {
      color: #fff;
      background-color: #269abc;
      border-color: #1b6d85; }
  .btn-info.disabled:hover, .btn-info.disabled:focus, .btn-info.disabled.focus, .btn-info[disabled]:hover, .btn-info[disabled]:focus, .btn-info[disabled].focus,
  fieldset[disabled] .btn-info:hover,
  fieldset[disabled] .btn-info:focus,
  fieldset[disabled] .btn-info.focus {
    background-color: #5bc0de;
    border-color: #46b8da; }
  .btn-info .badge {
    color: #5bc0de;
    background-color: #fff; }

.btn-warning {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236; }
  .btn-warning:focus, .btn-warning.focus {
    color: #fff;
    background-color: #ec971f;
    border-color: #985f0d; }
  .btn-warning:hover {
    color: #fff;
    background-color: #ec971f;
    border-color: #d58512; }
  .btn-warning:active, .btn-warning.active,
  .open > .btn-warning.dropdown-toggle {
    color: #fff;
    background-color: #ec971f;
    background-image: none;
    border-color: #d58512; }
    .btn-warning:active:hover, .btn-warning:active:focus, .btn-warning:active.focus, .btn-warning.active:hover, .btn-warning.active:focus, .btn-warning.active.focus,
    .open > .btn-warning.dropdown-toggle:hover,
    .open > .btn-warning.dropdown-toggle:focus,
    .open > .btn-warning.dropdown-toggle.focus {
      color: #fff;
      background-color: #d58512;
      border-color: #985f0d; }
  .btn-warning.disabled:hover, .btn-warning.disabled:focus, .btn-warning.disabled.focus, .btn-warning[disabled]:hover, .btn-warning[disabled]:focus, .btn-warning[disabled].focus,
  fieldset[disabled] .btn-warning:hover,
  fieldset[disabled] .btn-warning:focus,
  fieldset[disabled] .btn-warning.focus {
    background-color: #f0ad4e;
    border-color: #eea236; }
  .btn-warning .badge {
    color: #f0ad4e;
    background-color: #fff; }

.btn-danger {
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a; }
  .btn-danger:focus, .btn-danger.focus {
    color: #fff;
    background-color: #c9302c;
    border-color: #761c19; }
  .btn-danger:hover {
    color: #fff;
    background-color: #c9302c;
    border-color: #ac2925; }
  .btn-danger:active, .btn-danger.active,
  .open > .btn-danger.dropdown-toggle {
    color: #fff;
    background-color: #c9302c;
    background-image: none;
    border-color: #ac2925; }
    .btn-danger:active:hover, .btn-danger:active:focus, .btn-danger:active.focus, .btn-danger.active:hover, .btn-danger.active:focus, .btn-danger.active.focus,
    .open > .btn-danger.dropdown-toggle:hover,
    .open > .btn-danger.dropdown-toggle:focus,
    .open > .btn-danger.dropdown-toggle.focus {
      color: #fff;
      background-color: #ac2925;
      border-color: #761c19; }
  .btn-danger.disabled:hover, .btn-danger.disabled:focus, .btn-danger.disabled.focus, .btn-danger[disabled]:hover, .btn-danger[disabled]:focus, .btn-danger[disabled].focus,
  fieldset[disabled] .btn-danger:hover,
  fieldset[disabled] .btn-danger:focus,
  fieldset[disabled] .btn-danger.focus {
    background-color: #d9534f;
    border-color: #d43f3a; }
  .btn-danger .badge {
    color: #d9534f;
    background-color: #fff; }

.btn-link {
  font-weight: 400;
  color: #363636;
  border-radius: 0; }
  .btn-link, .btn-link:active, .btn-link.active, .btn-link[disabled],
  fieldset[disabled] .btn-link {
    background-color: transparent;
    box-shadow: none; }
  .btn-link, .btn-link:hover, .btn-link:focus, .btn-link:active {
    border-color: transparent; }
  .btn-link:hover, .btn-link:focus {
    color: #7e291a;
    text-decoration: underline;
    background-color: transparent; }
  .btn-link[disabled]:hover, .btn-link[disabled]:focus,
  fieldset[disabled] .btn-link:hover,
  fieldset[disabled] .btn-link:focus {
    color: #777777;
    text-decoration: none; }

.btn-lg, .btn-group-lg > .btn {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333;
  border-radius: 6px; }

.btn-sm, .btn-group-sm > .btn {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.btn-xs, .btn-group-xs > .btn {
  padding: 1px 5px;
  font-size: 12px;
  line-height: 1.5;
  border-radius: 3px; }

.btn-block {
  display: block;
  width: 100%; }

.btn-block + .btn-block {
  margin-top: 5px; }

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%; }

.fade {
  opacity: 0;
  transition: opacity 0.15s linear; }
  .fade.in {
    opacity: 1; }

.collapse {
  display: none; }
  .collapse.in {
    display: block; }

tr.collapse.in {
  display: table-row; }

tbody.collapse.in {
  display: table-row-group; }

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition-property: height, visibility;
  transition-duration: 0.35s;
  transition-timing-function: ease; }

.caret {
  display: inline-block;
  width: 0;
  height: 0;
  margin-left: 2px;
  vertical-align: middle;
  border-top: 4px dashed;
  border-top: 4px solid \9;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent; }

.dropup,
.dropdown {
  position: relative; }

.dropdown-toggle:focus {
  outline: 0; }

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 160px;
  padding: 5px 0;
  margin: 2px 0 0;
  font-size: 14px;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 4px;
  box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); }
  .dropdown-menu.pull-right {
    right: 0;
    left: auto; }
  .dropdown-menu .divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .dropdown-menu > li > a {
    display: block;
    padding: 3px 20px;
    clear: both;
    font-weight: 400;
    line-height: 1.42857;
    color: #333333;
    white-space: nowrap; }
    .dropdown-menu > li > a:hover, .dropdown-menu > li > a:focus {
      color: #262626;
      text-decoration: none;
      background-color: #f5f5f5; }

.dropdown-menu > .active > a, .dropdown-menu > .active > a:hover, .dropdown-menu > .active > a:focus {
  color: #fff;
  text-decoration: none;
  background-color: #337ab7;
  outline: 0; }

.dropdown-menu > .disabled > a, .dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  color: #777777; }

.dropdown-menu > .disabled > a:hover, .dropdown-menu > .disabled > a:focus {
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
  background-image: none;
  filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); }

.open > .dropdown-menu {
  display: block; }

.open > a {
  outline: 0; }

.dropdown-menu-right {
  right: 0;
  left: auto; }

.dropdown-menu-left {
  right: auto;
  left: 0; }

.dropdown-header {
  display: block;
  padding: 3px 20px;
  font-size: 12px;
  line-height: 1.42857;
  color: #777777;
  white-space: nowrap; }

.dropdown-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 990; }

.pull-right > .dropdown-menu {
  right: 0;
  left: auto; }

.dropup .caret,
.navbar-fixed-bottom .dropdown .caret {
  content: "";
  border-top: 0;
  border-bottom: 4px dashed;
  border-bottom: 4px solid \9; }

.dropup .dropdown-menu,
.navbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px; }

@media (min-width: 768px) {
  .navbar-right .dropdown-menu {
    right: 0;
    left: auto; }
  .navbar-right .dropdown-menu-left {
    left: 0;
    right: auto; } }

.btn-group,
.btn-group-vertical {
  position: relative;
  display: inline-block;
  vertical-align: middle; }
  .btn-group > .btn,
  .btn-group-vertical > .btn {
    position: relative;
    float: left; }
    .btn-group > .btn:hover, .btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
    .btn-group-vertical > .btn:hover,
    .btn-group-vertical > .btn:focus,
    .btn-group-vertical > .btn:active,
    .btn-group-vertical > .btn.active {
      z-index: 2; }

.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
  margin-left: -1px; }

.btn-toolbar {
  margin-left: -5px; }
  .btn-toolbar:before, .btn-toolbar:after {
    display: table;
    content: " "; }
  .btn-toolbar:after {
    clear: both; }
  .btn-toolbar .btn,
  .btn-toolbar .btn-group,
  .btn-toolbar .input-group {
    float: left; }
  .btn-toolbar > .btn,
  .btn-toolbar > .btn-group,
  .btn-toolbar > .input-group {
    margin-left: 5px; }

.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
  border-radius: 0; }

.btn-group > .btn:first-child {
  margin-left: 0; }
  .btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0; }

.btn-group > .btn:last-child:not(:first-child),
.btn-group > .dropdown-toggle:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group > .btn-group {
  float: left; }

.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
  outline: 0; }

.btn-group > .btn + .dropdown-toggle {
  padding-right: 8px;
  padding-left: 8px; }

.btn-group > .btn-lg + .dropdown-toggle, .btn-group-lg.btn-group > .btn + .dropdown-toggle {
  padding-right: 12px;
  padding-left: 12px; }

.btn-group.open .dropdown-toggle {
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); }
  .btn-group.open .dropdown-toggle.btn-link {
    box-shadow: none; }

.btn .caret {
  margin-left: 0; }

.btn-lg .caret, .btn-group-lg > .btn .caret {
  border-width: 5px 5px 0;
  border-bottom-width: 0; }

.dropup .btn-lg .caret, .dropup .btn-group-lg > .btn .caret {
  border-width: 0 5px 5px; }

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group,
.btn-group-vertical > .btn-group > .btn {
  display: block;
  float: none;
  width: 100%;
  max-width: 100%; }

.btn-group-vertical > .btn-group:before, .btn-group-vertical > .btn-group:after {
  display: table;
  content: " "; }

.btn-group-vertical > .btn-group:after {
  clear: both; }

.btn-group-vertical > .btn-group > .btn {
  float: none; }

.btn-group-vertical > .btn + .btn,
.btn-group-vertical > .btn + .btn-group,
.btn-group-vertical > .btn-group + .btn,
.btn-group-vertical > .btn-group + .btn-group {
  margin-top: -1px;
  margin-left: 0; }

.btn-group-vertical > .btn:not(:first-child):not(:last-child) {
  border-radius: 0; }

.btn-group-vertical > .btn:first-child:not(:last-child) {
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn:last-child:not(:first-child) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 4px;
  border-bottom-left-radius: 4px; }

.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn {
  border-radius: 0; }

.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child,
.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.btn-group-justified {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: separate; }
  .btn-group-justified > .btn,
  .btn-group-justified > .btn-group {
    display: table-cell;
    float: none;
    width: 1%; }
  .btn-group-justified > .btn-group .btn {
    width: 100%; }
  .btn-group-justified > .btn-group .dropdown-menu {
    left: auto; }

[data-toggle="buttons"] > .btn input[type="radio"],
[data-toggle="buttons"] > .btn input[type="checkbox"],
[data-toggle="buttons"] > .btn-group > .btn input[type="radio"],
[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none; }

.input-group {
  position: relative;
  display: table;
  border-collapse: separate; }
  .input-group[class*="col-"] {
    float: none;
    padding-right: 0;
    padding-left: 0; }
  .input-group .form-control {
    position: relative;
    z-index: 2;
    float: left;
    width: 100%;
    margin-bottom: 0; }
    .input-group .form-control:focus {
      z-index: 3; }

.input-group-addon,
.input-group-btn,
.input-group .form-control {
  display: table-cell; }
  .input-group-addon:not(:first-child):not(:last-child),
  .input-group-btn:not(:first-child):not(:last-child),
  .input-group .form-control:not(:first-child):not(:last-child) {
    border-radius: 0; }

.input-group-addon,
.input-group-btn {
  width: 1%;
  white-space: nowrap;
  vertical-align: middle; }

.input-group-addon {
  padding: 6px 12px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  color: #555555;
  text-align: center;
  background-color: #eeeeee;
  border: 1px solid #ccc;
  border-radius: 4px; }
  .input-group-addon.input-sm,
  .input-group-sm > .input-group-addon,
  .input-group-sm > .input-group-btn > .input-group-addon.btn {
    padding: 5px 10px;
    font-size: 12px;
    border-radius: 3px; }
  .input-group-addon.input-lg,
  .input-group-lg > .input-group-addon,
  .input-group-lg > .input-group-btn > .input-group-addon.btn {
    padding: 10px 16px;
    font-size: 18px;
    border-radius: 6px; }
  .input-group-addon input[type="radio"],
  .input-group-addon input[type="checkbox"] {
    margin-top: 0; }

.input-group .form-control:first-child,
.input-group-addon:first-child,
.input-group-btn:first-child > .btn,
.input-group-btn:first-child > .btn-group > .btn,
.input-group-btn:first-child > .dropdown-toggle,
.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group-btn:last-child > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0; }

.input-group-addon:first-child {
  border-right: 0; }

.input-group .form-control:last-child,
.input-group-addon:last-child,
.input-group-btn:last-child > .btn,
.input-group-btn:last-child > .btn-group > .btn,
.input-group-btn:last-child > .dropdown-toggle,
.input-group-btn:first-child > .btn:not(:first-child),
.input-group-btn:first-child > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0; }

.input-group-addon:last-child {
  border-left: 0; }

.input-group-btn {
  position: relative;
  font-size: 0;
  white-space: nowrap; }
  .input-group-btn > .btn {
    position: relative; }
    .input-group-btn > .btn + .btn {
      margin-left: -1px; }
    .input-group-btn > .btn:hover, .input-group-btn > .btn:focus, .input-group-btn > .btn:active {
      z-index: 2; }
  .input-group-btn:first-child > .btn,
  .input-group-btn:first-child > .btn-group {
    margin-right: -1px; }
  .input-group-btn:last-child > .btn,
  .input-group-btn:last-child > .btn-group {
    z-index: 2;
    margin-left: -1px; }

.nav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none; }
  .nav:before, .nav:after {
    display: table;
    content: " "; }
  .nav:after {
    clear: both; }
  .nav > li {
    position: relative;
    display: block; }
    .nav > li > a {
      position: relative;
      display: block;
      padding: 10px 15px; }
      .nav > li > a:hover, .nav > li > a:focus {
        text-decoration: none;
        background-color: #eeeeee; }
    .nav > li.disabled > a {
      color: #777777; }
      .nav > li.disabled > a:hover, .nav > li.disabled > a:focus {
        color: #777777;
        text-decoration: none;
        cursor: not-allowed;
        background-color: transparent; }
  .nav .open > a, .nav .open > a:hover, .nav .open > a:focus {
    background-color: #eeeeee;
    border-color: #363636; }
  .nav .nav-divider {
    height: 1px;
    margin: 9px 0;
    overflow: hidden;
    background-color: #e5e5e5; }
  .nav > li > a > img {
    max-width: none; }

.nav-tabs {
  border-bottom: 1px solid #ddd; }
  .nav-tabs > li {
    float: left;
    margin-bottom: -1px; }
    .nav-tabs > li > a {
      margin-right: 2px;
      line-height: 1.42857;
      border: 1px solid transparent;
      border-radius: 4px 4px 0 0; }
      .nav-tabs > li > a:hover {
        border-color: #eeeeee #eeeeee #ddd; }
    .nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
      color: #555555;
      cursor: default;
      background-color: #fff;
      border: 1px solid #ddd;
      border-bottom-color: transparent; }

.nav-pills > li {
  float: left; }
  .nav-pills > li > a {
    border-radius: 4px; }
  .nav-pills > li + li {
    margin-left: 2px; }
  .nav-pills > li.active > a, .nav-pills > li.active > a:hover, .nav-pills > li.active > a:focus {
    color: #fff;
    background-color: #337ab7; }

.nav-stacked > li {
  float: none; }
  .nav-stacked > li + li {
    margin-top: 2px;
    margin-left: 0; }

.nav-justified, .nav-tabs.nav-justified {
  width: 100%; }
  .nav-justified > li, .nav-tabs.nav-justified > li {
    float: none; }
    .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
      margin-bottom: 5px;
      text-align: center; }
  .nav-justified > .dropdown .dropdown-menu {
    top: auto;
    left: auto; }
  @media (min-width: 768px) {
    .nav-justified > li, .nav-tabs.nav-justified > li {
      display: table-cell;
      width: 1%; }
      .nav-justified > li > a, .nav-tabs.nav-justified > li > a {
        margin-bottom: 0; } }

.nav-tabs-justified, .nav-tabs.nav-justified {
  border-bottom: 0; }
  .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
    margin-right: 0;
    border-radius: 4px; }
  .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
  .nav-tabs-justified > .active > a:hover,
  .nav-tabs.nav-justified > .active > a:hover,
  .nav-tabs-justified > .active > a:focus,
  .nav-tabs.nav-justified > .active > a:focus {
    border: 1px solid #ddd; }
  @media (min-width: 768px) {
    .nav-tabs-justified > li > a, .nav-tabs.nav-justified > li > a {
      border-bottom: 1px solid #ddd;
      border-radius: 4px 4px 0 0; }
    .nav-tabs-justified > .active > a, .nav-tabs.nav-justified > .active > a,
    .nav-tabs-justified > .active > a:hover,
    .nav-tabs.nav-justified > .active > a:hover,
    .nav-tabs-justified > .active > a:focus,
    .nav-tabs.nav-justified > .active > a:focus {
      border-bottom-color: #fff; } }

.tab-content > .tab-pane {
  display: none; }

.tab-content > .active {
  display: block; }

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.navbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border: 1px solid transparent; }
  .navbar:before, .navbar:after {
    display: table;
    content: " "; }
  .navbar:after {
    clear: both; }
  @media (min-width: 768px) {
    .navbar {
      border-radius: 4px; } }

.navbar-header:before, .navbar-header:after {
  display: table;
  content: " "; }

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

@media (min-width: 768px) {
  .navbar-header {
    float: left; } }

.navbar-collapse {
  padding-right: 15px;
  padding-left: 15px;
  overflow-x: visible;
  border-top: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
  -webkit-overflow-scrolling: touch; }
  .navbar-collapse:before, .navbar-collapse:after {
    display: table;
    content: " "; }
  .navbar-collapse:after {
    clear: both; }
  .navbar-collapse.in {
    overflow-y: auto; }
  @media (min-width: 768px) {
    .navbar-collapse {
      width: auto;
      border-top: 0;
      box-shadow: none; }
      .navbar-collapse.collapse {
        display: block !important;
        height: auto !important;
        padding-bottom: 0;
        overflow: visible !important; }
      .navbar-collapse.in {
        overflow-y: visible; }
      .navbar-fixed-top .navbar-collapse,
      .navbar-static-top .navbar-collapse,
      .navbar-fixed-bottom .navbar-collapse {
        padding-right: 0;
        padding-left: 0; } }

.navbar-fixed-top,
.navbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030; }
  .navbar-fixed-top .navbar-collapse,
  .navbar-fixed-bottom .navbar-collapse {
    max-height: 340px; }
    @media (max-device-width: 480px) and (orientation: landscape) {
      .navbar-fixed-top .navbar-collapse,
      .navbar-fixed-bottom .navbar-collapse {
        max-height: 200px; } }
  @media (min-width: 768px) {
    .navbar-fixed-top,
    .navbar-fixed-bottom {
      border-radius: 0; } }

.navbar-fixed-top {
  top: 0;
  border-width: 0 0 1px; }

.navbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0; }

.container > .navbar-header,
.container > .navbar-collapse,
.container-fluid > .navbar-header,
.container-fluid > .navbar-collapse {
  margin-right: -15px;
  margin-left: -15px; }
  @media (min-width: 768px) {
    .container > .navbar-header,
    .container > .navbar-collapse,
    .container-fluid > .navbar-header,
    .container-fluid > .navbar-collapse {
      margin-right: 0;
      margin-left: 0; } }

.navbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px; }
  @media (min-width: 768px) {
    .navbar-static-top {
      border-radius: 0; } }

.navbar-brand {
  float: left;
  height: 50px;
  padding: 15px 15px;
  font-size: 18px;
  line-height: 20px; }
  .navbar-brand:hover, .navbar-brand:focus {
    text-decoration: none; }
  .navbar-brand > img {
    display: block; }
  @media (min-width: 768px) {
    .navbar > .container .navbar-brand,
    .navbar > .container-fluid .navbar-brand {
      margin-left: -15px; } }

.navbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin-right: 15px;
  margin-top: 8px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px; }
  .navbar-toggle:focus {
    outline: 0; }
  .navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px; }
  .navbar-toggle .icon-bar + .icon-bar {
    margin-top: 4px; }
  @media (min-width: 768px) {
    .navbar-toggle {
      display: none; } }

.navbar-nav {
  margin: 7.5px -15px; }
  .navbar-nav > li > a {
    padding-top: 10px;
    padding-bottom: 10px;
    line-height: 20px; }
  @media (max-width: 767px) {
    .navbar-nav .open .dropdown-menu {
      position: static;
      float: none;
      width: auto;
      margin-top: 0;
      background-color: transparent;
      border: 0;
      box-shadow: none; }
      .navbar-nav .open .dropdown-menu > li > a,
      .navbar-nav .open .dropdown-menu .dropdown-header {
        padding: 5px 15px 5px 25px; }
      .navbar-nav .open .dropdown-menu > li > a {
        line-height: 20px; }
        .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-nav .open .dropdown-menu > li > a:focus {
          background-image: none; } }
  @media (min-width: 768px) {
    .navbar-nav {
      float: left;
      margin: 0; }
      .navbar-nav > li {
        float: left; }
        .navbar-nav > li > a {
          padding-top: 15px;
          padding-bottom: 15px; } }

.navbar-form {
  padding: 10px 15px;
  margin-right: -15px;
  margin-left: -15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.1);
  margin-top: 8px;
  margin-bottom: 8px; }
  @media (min-width: 768px) {
    .navbar-form .form-group {
      display: inline-block;
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .form-control {
      display: inline-block;
      width: auto;
      vertical-align: middle; }
    .navbar-form .form-control-static {
      display: inline-block; }
    .navbar-form .input-group {
      display: inline-table;
      vertical-align: middle; }
      .navbar-form .input-group .input-group-addon,
      .navbar-form .input-group .input-group-btn,
      .navbar-form .input-group .form-control {
        width: auto; }
    .navbar-form .input-group > .form-control {
      width: 100%; }
    .navbar-form .control-label {
      margin-bottom: 0;
      vertical-align: middle; }
    .navbar-form .radio,
    .navbar-form .checkbox {
      display: inline-block;
      margin-top: 0;
      margin-bottom: 0;
      vertical-align: middle; }
      .navbar-form .radio label,
      .navbar-form .checkbox label {
        padding-left: 0; }
    .navbar-form .radio input[type="radio"],
    .navbar-form .checkbox input[type="checkbox"] {
      position: relative;
      margin-left: 0; }
    .navbar-form .has-feedback .form-control-feedback {
      top: 0; } }
  @media (max-width: 767px) {
    .navbar-form .form-group {
      margin-bottom: 5px; }
      .navbar-form .form-group:last-child {
        margin-bottom: 0; } }
  @media (min-width: 768px) {
    .navbar-form {
      width: auto;
      padding-top: 0;
      padding-bottom: 0;
      margin-right: 0;
      margin-left: 0;
      border: 0;
      box-shadow: none; } }

.navbar-nav > li > .dropdown-menu {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu {
  margin-bottom: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0; }

.navbar-btn {
  margin-top: 8px;
  margin-bottom: 8px; }
  .navbar-btn.btn-sm, .btn-group-sm > .navbar-btn.btn {
    margin-top: 10px;
    margin-bottom: 10px; }
  .navbar-btn.btn-xs, .btn-group-xs > .navbar-btn.btn {
    margin-top: 14px;
    margin-bottom: 14px; }

.navbar-text {
  margin-top: 15px;
  margin-bottom: 15px; }
  @media (min-width: 768px) {
    .navbar-text {
      float: left;
      margin-right: 15px;
      margin-left: 15px; } }

@media (min-width: 768px) {
  .navbar-left {
    float: left !important; }
  .navbar-right {
    float: right !important;
    margin-right: -15px; }
    .navbar-right ~ .navbar-right {
      margin-right: 0; } }

.navbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7; }
  .navbar-default .navbar-brand {
    color: #777; }
    .navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
      color: #5e5e5e;
      background-color: transparent; }
  .navbar-default .navbar-text {
    color: #777; }
  .navbar-default .navbar-nav > li > a {
    color: #777; }
    .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
      color: #333;
      background-color: transparent; }
  .navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
    color: #555;
    background-color: #e7e7e7; }
  .navbar-default .navbar-nav > .disabled > a, .navbar-default .navbar-nav > .disabled > a:hover, .navbar-default .navbar-nav > .disabled > a:focus {
    color: #ccc;
    background-color: transparent; }
  .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
    color: #555;
    background-color: #e7e7e7; }
  @media (max-width: 767px) {
    .navbar-default .navbar-nav .open .dropdown-menu > li > a {
      color: #777; }
      .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #333;
        background-color: transparent; }
    .navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #555;
      background-color: #e7e7e7; }
    .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #ccc;
      background-color: transparent; } }
  .navbar-default .navbar-toggle {
    border-color: #ddd; }
    .navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
      background-color: #ddd; }
    .navbar-default .navbar-toggle .icon-bar {
      background-color: #888; }
  .navbar-default .navbar-collapse,
  .navbar-default .navbar-form {
    border-color: #e7e7e7; }
  .navbar-default .navbar-link {
    color: #777; }
    .navbar-default .navbar-link:hover {
      color: #333; }
  .navbar-default .btn-link {
    color: #777; }
    .navbar-default .btn-link:hover, .navbar-default .btn-link:focus {
      color: #333; }
    .navbar-default .btn-link[disabled]:hover, .navbar-default .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-default .btn-link:hover,
    fieldset[disabled] .navbar-default .btn-link:focus {
      color: #ccc; }

.navbar-inverse {
  background-color: #222;
  border-color: #090909; }
  .navbar-inverse .navbar-brand {
    color: #9d9d9d; }
    .navbar-inverse .navbar-brand:hover, .navbar-inverse .navbar-brand:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-text {
    color: #9d9d9d; }
  .navbar-inverse .navbar-nav > li > a {
    color: #9d9d9d; }
    .navbar-inverse .navbar-nav > li > a:hover, .navbar-inverse .navbar-nav > li > a:focus {
      color: #fff;
      background-color: transparent; }
  .navbar-inverse .navbar-nav > .active > a, .navbar-inverse .navbar-nav > .active > a:hover, .navbar-inverse .navbar-nav > .active > a:focus {
    color: #fff;
    background-color: #090909; }
  .navbar-inverse .navbar-nav > .disabled > a, .navbar-inverse .navbar-nav > .disabled > a:hover, .navbar-inverse .navbar-nav > .disabled > a:focus {
    color: #444;
    background-color: transparent; }
  .navbar-inverse .navbar-nav > .open > a, .navbar-inverse .navbar-nav > .open > a:hover, .navbar-inverse .navbar-nav > .open > a:focus {
    color: #fff;
    background-color: #090909; }
  @media (max-width: 767px) {
    .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header {
      border-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu .divider {
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > li > a {
      color: #9d9d9d; }
      .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus {
        color: #fff;
        background-color: transparent; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus {
      color: #fff;
      background-color: #090909; }
    .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus {
      color: #444;
      background-color: transparent; } }
  .navbar-inverse .navbar-toggle {
    border-color: #333; }
    .navbar-inverse .navbar-toggle:hover, .navbar-inverse .navbar-toggle:focus {
      background-color: #333; }
    .navbar-inverse .navbar-toggle .icon-bar {
      background-color: #fff; }
  .navbar-inverse .navbar-collapse,
  .navbar-inverse .navbar-form {
    border-color: #101010; }
  .navbar-inverse .navbar-link {
    color: #9d9d9d; }
    .navbar-inverse .navbar-link:hover {
      color: #fff; }
  .navbar-inverse .btn-link {
    color: #9d9d9d; }
    .navbar-inverse .btn-link:hover, .navbar-inverse .btn-link:focus {
      color: #fff; }
    .navbar-inverse .btn-link[disabled]:hover, .navbar-inverse .btn-link[disabled]:focus,
    fieldset[disabled] .navbar-inverse .btn-link:hover,
    fieldset[disabled] .navbar-inverse .btn-link:focus {
      color: #444; }

.breadcrumb {
  padding: 8px 15px;
  margin-bottom: 20px;
  list-style: none;
  background-color: #f5f5f5;
  border-radius: 4px; }
  .breadcrumb > li {
    display: inline-block; }
    .breadcrumb > li + li:before {
      padding: 0 5px;
      color: #ccc;
      content: "/ "; }
  .breadcrumb > .active {
    color: #777777; }

.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 20px 0;
  border-radius: 4px; }
  .pagination > li {
    display: inline; }
    .pagination > li > a,
    .pagination > li > span {
      position: relative;
      float: left;
      padding: 6px 12px;
      margin-left: -1px;
      line-height: 1.42857;
      color: #363636;
      text-decoration: none;
      background-color: #fff;
      border: 1px solid #ddd; }
      .pagination > li > a:hover, .pagination > li > a:focus,
      .pagination > li > span:hover,
      .pagination > li > span:focus {
        z-index: 2;
        color: #7e291a;
        background-color: #eeeeee;
        border-color: #ddd; }
    .pagination > li:first-child > a,
    .pagination > li:first-child > span {
      margin-left: 0;
      border-top-left-radius: 4px;
      border-bottom-left-radius: 4px; }
    .pagination > li:last-child > a,
    .pagination > li:last-child > span {
      border-top-right-radius: 4px;
      border-bottom-right-radius: 4px; }
  .pagination > .active > a, .pagination > .active > a:hover, .pagination > .active > a:focus,
  .pagination > .active > span,
  .pagination > .active > span:hover,
  .pagination > .active > span:focus {
    z-index: 3;
    color: #fff;
    cursor: default;
    background-color: #337ab7;
    border-color: #337ab7; }
  .pagination > .disabled > span,
  .pagination > .disabled > span:hover,
  .pagination > .disabled > span:focus,
  .pagination > .disabled > a,
  .pagination > .disabled > a:hover,
  .pagination > .disabled > a:focus {
    color: #777777;
    cursor: not-allowed;
    background-color: #fff;
    border-color: #ddd; }

.pagination-lg > li > a,
.pagination-lg > li > span {
  padding: 10px 16px;
  font-size: 18px;
  line-height: 1.33333; }

.pagination-lg > li:first-child > a,
.pagination-lg > li:first-child > span {
  border-top-left-radius: 6px;
  border-bottom-left-radius: 6px; }

.pagination-lg > li:last-child > a,
.pagination-lg > li:last-child > span {
  border-top-right-radius: 6px;
  border-bottom-right-radius: 6px; }

.pagination-sm > li > a,
.pagination-sm > li > span {
  padding: 5px 10px;
  font-size: 12px;
  line-height: 1.5; }

.pagination-sm > li:first-child > a,
.pagination-sm > li:first-child > span {
  border-top-left-radius: 3px;
  border-bottom-left-radius: 3px; }

.pagination-sm > li:last-child > a,
.pagination-sm > li:last-child > span {
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px; }

.pager {
  padding-left: 0;
  margin: 20px 0;
  text-align: center;
  list-style: none; }
  .pager:before, .pager:after {
    display: table;
    content: " "; }
  .pager:after {
    clear: both; }
  .pager li {
    display: inline; }
    .pager li > a,
    .pager li > span {
      display: inline-block;
      padding: 5px 14px;
      background-color: #fff;
      border: 1px solid #ddd;
      border-radius: 15px; }
    .pager li > a:hover,
    .pager li > a:focus {
      text-decoration: none;
      background-color: #eeeeee; }
  .pager .next > a,
  .pager .next > span {
    float: right; }
  .pager .previous > a,
  .pager .previous > span {
    float: left; }
  .pager .disabled > a,
  .pager .disabled > a:hover,
  .pager .disabled > a:focus,
  .pager .disabled > span {
    color: #777777;
    cursor: not-allowed;
    background-color: #fff; }

.label {
  display: inline;
  padding: .2em .6em .3em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: .25em; }
  .label:empty {
    display: none; }
  .btn .label {
    position: relative;
    top: -1px; }

a.label:hover, a.label:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer; }

.label-default {
  background-color: #777777; }
  .label-default[href]:hover, .label-default[href]:focus {
    background-color: #5e5e5e; }

.label-primary {
  background-color: #337ab7; }
  .label-primary[href]:hover, .label-primary[href]:focus {
    background-color: #286090; }

.label-success {
  background-color: #5cb85c; }
  .label-success[href]:hover, .label-success[href]:focus {
    background-color: #449d44; }

.label-info {
  background-color: #5bc0de; }
  .label-info[href]:hover, .label-info[href]:focus {
    background-color: #31b0d5; }

.label-warning {
  background-color: #f0ad4e; }
  .label-warning[href]:hover, .label-warning[href]:focus {
    background-color: #ec971f; }

.label-danger {
  background-color: #d9534f; }
  .label-danger[href]:hover, .label-danger[href]:focus {
    background-color: #c9302c; }

.badge {
  display: inline-block;
  min-width: 10px;
  padding: 3px 7px;
  font-size: 12px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle;
  background-color: #777777;
  border-radius: 10px; }
  .badge:empty {
    display: none; }
  .btn .badge {
    position: relative;
    top: -1px; }
  .btn-xs .badge, .btn-group-xs > .btn .badge,
  .btn-group-xs > .btn .badge {
    top: 0;
    padding: 1px 5px; }
  .list-group-item.active > .badge,
  .nav-pills > .active > a > .badge {
    color: #363636;
    background-color: #fff; }
  .list-group-item > .badge {
    float: right; }
  .list-group-item > .badge + .badge {
    margin-right: 5px; }
  .nav-pills > li > a > .badge {
    margin-left: 3px; }

a.badge:hover, a.badge:focus {
  color: #fff;
  text-decoration: none;
  cursor: pointer; }

.jumbotron {
  padding-top: 30px;
  padding-bottom: 30px;
  margin-bottom: 30px;
  color: inherit;
  background-color: #eeeeee; }
  .jumbotron h1,
  .jumbotron .h1 {
    color: inherit; }
  .jumbotron p {
    margin-bottom: 15px;
    font-size: 21px;
    font-weight: 200; }
  .jumbotron > hr {
    border-top-color: #d5d5d5; }
  .container .jumbotron,
  .container-fluid .jumbotron {
    padding-right: 15px;
    padding-left: 15px;
    border-radius: 6px; }
  .jumbotron .container {
    max-width: 100%; }
  @media screen and (min-width: 768px) {
    .jumbotron {
      padding-top: 48px;
      padding-bottom: 48px; }
      .container .jumbotron,
      .container-fluid .jumbotron {
        padding-right: 60px;
        padding-left: 60px; }
      .jumbotron h1,
      .jumbotron .h1 {
        font-size: 63px; } }

.thumbnail {
  display: block;
  padding: 4px;
  margin-bottom: 20px;
  line-height: 1.42857;
  background-color: #fff;
  border: 1px solid #ddd;
  border-radius: 4px;
  transition: border 0.2s ease-in-out; }
  .thumbnail > img,
  .thumbnail a > img {
    display: block;
    max-width: 100%;
    height: auto;
    margin-right: auto;
    margin-left: auto; }
  .thumbnail .caption {
    padding: 9px;
    color: #363636; }

a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #363636; }

.alert {
  padding: 15px;
  margin-bottom: 20px;
  border: 1px solid transparent;
  border-radius: 4px; }
  .alert h4 {
    margin-top: 0;
    color: inherit; }
  .alert .alert-link {
    font-weight: bold; }
  .alert > p,
  .alert > ul {
    margin-bottom: 0; }
  .alert > p + p {
    margin-top: 5px; }

.alert-dismissable,
.alert-dismissible {
  padding-right: 35px; }
  .alert-dismissable .close,
  .alert-dismissible .close {
    position: relative;
    top: -2px;
    right: -21px;
    color: inherit; }

.alert-success {
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6; }
  .alert-success hr {
    border-top-color: #c9e2b3; }
  .alert-success .alert-link {
    color: #2b542c; }

.alert-info {
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1; }
  .alert-info hr {
    border-top-color: #a6e1ec; }
  .alert-info .alert-link {
    color: #245269; }

.alert-warning {
  color: #8a6d3b;
  background-color: #fcf8e3;
  border-color: #faebcc; }
  .alert-warning hr {
    border-top-color: #f7e1b5; }
  .alert-warning .alert-link {
    color: #66512c; }

.alert-danger {
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1; }
  .alert-danger hr {
    border-top-color: #e4b9c0; }
  .alert-danger .alert-link {
    color: #843534; }

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

@keyframes progress-bar-stripes {
  from {
    background-position: 40px 0; }
  to {
    background-position: 0 0; } }

.progress {
  height: 20px;
  margin-bottom: 20px;
  overflow: hidden;
  background-color: #f5f5f5;
  border-radius: 4px;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }

.progress-bar {
  float: left;
  width: 0%;
  height: 100%;
  font-size: 12px;
  line-height: 20px;
  color: #fff;
  text-align: center;
  background-color: #337ab7;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  transition: width 0.6s ease; }

.progress-striped .progress-bar,
.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 40px 40px; }

.progress.active .progress-bar,
.progress-bar.active {
  -webkit-animation: progress-bar-stripes 2s linear infinite;
  animation: progress-bar-stripes 2s linear infinite; }

.progress-bar-success {
  background-color: #5cb85c; }
  .progress-striped .progress-bar-success {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-info {
  background-color: #5bc0de; }
  .progress-striped .progress-bar-info {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-warning {
  background-color: #f0ad4e; }
  .progress-striped .progress-bar-warning {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.progress-bar-danger {
  background-color: #d9534f; }
  .progress-striped .progress-bar-danger {
    background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); }

.media {
  margin-top: 15px; }
  .media:first-child {
    margin-top: 0; }

.media,
.media-body {
  overflow: hidden;
  zoom: 1; }

.media-body {
  width: 10000px; }

.media-object {
  display: block; }
  .media-object.img-thumbnail {
    max-width: none; }

.media-right,
.media > .pull-right {
  padding-left: 10px; }

.media-left,
.media > .pull-left {
  padding-right: 10px; }

.media-left,
.media-right,
.media-body {
  display: table-cell;
  vertical-align: top; }

.media-middle {
  vertical-align: middle; }

.media-bottom {
  vertical-align: bottom; }

.media-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.media-list {
  padding-left: 0;
  list-style: none; }

.list-group {
  padding-left: 0;
  margin-bottom: 20px; }

.list-group-item {
  position: relative;
  display: block;
  padding: 10px 15px;
  margin-bottom: -1px;
  background-color: #fff;
  border: 1px solid #ddd; }
  .list-group-item:first-child {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px; }
  .list-group-item:last-child {
    margin-bottom: 0;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px; }
  .list-group-item.disabled, .list-group-item.disabled:hover, .list-group-item.disabled:focus {
    color: #777777;
    cursor: not-allowed;
    background-color: #eeeeee; }
    .list-group-item.disabled .list-group-item-heading, .list-group-item.disabled:hover .list-group-item-heading, .list-group-item.disabled:focus .list-group-item-heading {
      color: inherit; }
    .list-group-item.disabled .list-group-item-text, .list-group-item.disabled:hover .list-group-item-text, .list-group-item.disabled:focus .list-group-item-text {
      color: #777777; }
  .list-group-item.active, .list-group-item.active:hover, .list-group-item.active:focus {
    z-index: 2;
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7; }
    .list-group-item.active .list-group-item-heading,
    .list-group-item.active .list-group-item-heading > small,
    .list-group-item.active .list-group-item-heading > .small, .list-group-item.active:hover .list-group-item-heading,
    .list-group-item.active:hover .list-group-item-heading > small,
    .list-group-item.active:hover .list-group-item-heading > .small, .list-group-item.active:focus .list-group-item-heading,
    .list-group-item.active:focus .list-group-item-heading > small,
    .list-group-item.active:focus .list-group-item-heading > .small {
      color: inherit; }
    .list-group-item.active .list-group-item-text, .list-group-item.active:hover .list-group-item-text, .list-group-item.active:focus .list-group-item-text {
      color: #c7ddef; }

a.list-group-item,
button.list-group-item {
  color: #555; }
  a.list-group-item .list-group-item-heading,
  button.list-group-item .list-group-item-heading {
    color: #333; }
  a.list-group-item:hover, a.list-group-item:focus,
  button.list-group-item:hover,
  button.list-group-item:focus {
    color: #555;
    text-decoration: none;
    background-color: #f5f5f5; }

button.list-group-item {
  width: 100%;
  text-align: left; }

.list-group-item-success {
  color: #3c763d;
  background-color: #dff0d8; }

a.list-group-item-success,
button.list-group-item-success {
  color: #3c763d; }
  a.list-group-item-success .list-group-item-heading,
  button.list-group-item-success .list-group-item-heading {
    color: inherit; }
  a.list-group-item-success:hover, a.list-group-item-success:focus,
  button.list-group-item-success:hover,
  button.list-group-item-success:focus {
    color: #3c763d;
    background-color: #d0e9c6; }
  a.list-group-item-success.active, a.list-group-item-success.active:hover, a.list-group-item-success.active:focus,
  button.list-group-item-success.active,
  button.list-group-item-success.active:hover,
  button.list-group-item-success.active:focus {
    color: #fff;
    background-color: #3c763d;
    border-color: #3c763d; }

.list-group-item-info {
  color: #31708f;
  background-color: #d9edf7; }

a.list-group-item-info,
button.list-group-item-info {
  color: #31708f; }
  a.list-group-item-info .list-group-item-heading,
  button.list-group-item-info .list-group-item-heading {
    color: inherit; }
  a.list-group-item-info:hover, a.list-group-item-info:focus,
  button.list-group-item-info:hover,
  button.list-group-item-info:focus {
    color: #31708f;
    background-color: #c4e3f3; }
  a.list-group-item-info.active, a.list-group-item-info.active:hover, a.list-group-item-info.active:focus,
  button.list-group-item-info.active,
  button.list-group-item-info.active:hover,
  button.list-group-item-info.active:focus {
    color: #fff;
    background-color: #31708f;
    border-color: #31708f; }

.list-group-item-warning {
  color: #8a6d3b;
  background-color: #fcf8e3; }

a.list-group-item-warning,
button.list-group-item-warning {
  color: #8a6d3b; }
  a.list-group-item-warning .list-group-item-heading,
  button.list-group-item-warning .list-group-item-heading {
    color: inherit; }
  a.list-group-item-warning:hover, a.list-group-item-warning:focus,
  button.list-group-item-warning:hover,
  button.list-group-item-warning:focus {
    color: #8a6d3b;
    background-color: #faf2cc; }
  a.list-group-item-warning.active, a.list-group-item-warning.active:hover, a.list-group-item-warning.active:focus,
  button.list-group-item-warning.active,
  button.list-group-item-warning.active:hover,
  button.list-group-item-warning.active:focus {
    color: #fff;
    background-color: #8a6d3b;
    border-color: #8a6d3b; }

.list-group-item-danger {
  color: #a94442;
  background-color: #f2dede; }

a.list-group-item-danger,
button.list-group-item-danger {
  color: #a94442; }
  a.list-group-item-danger .list-group-item-heading,
  button.list-group-item-danger .list-group-item-heading {
    color: inherit; }
  a.list-group-item-danger:hover, a.list-group-item-danger:focus,
  button.list-group-item-danger:hover,
  button.list-group-item-danger:focus {
    color: #a94442;
    background-color: #ebcccc; }
  a.list-group-item-danger.active, a.list-group-item-danger.active:hover, a.list-group-item-danger.active:focus,
  button.list-group-item-danger.active,
  button.list-group-item-danger.active:hover,
  button.list-group-item-danger.active:focus {
    color: #fff;
    background-color: #a94442;
    border-color: #a94442; }

.list-group-item-heading {
  margin-top: 0;
  margin-bottom: 5px; }

.list-group-item-text {
  margin-bottom: 0;
  line-height: 1.3; }

.panel {
  margin-bottom: 20px;
  background-color: #fff;
  border: 1px solid transparent;
  border-radius: 4px;
  box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05); }

.panel-body {
  padding: 15px; }
  .panel-body:before, .panel-body:after {
    display: table;
    content: " "; }
  .panel-body:after {
    clear: both; }

.panel-heading {
  padding: 10px 15px;
  border-bottom: 1px solid transparent;
  border-top-left-radius: 3px;
  border-top-right-radius: 3px; }
  .panel-heading > .dropdown .dropdown-toggle {
    color: inherit; }

.panel-title {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  color: inherit; }
  .panel-title > a,
  .panel-title > small,
  .panel-title > .small,
  .panel-title > small > a,
  .panel-title > .small > a {
    color: inherit; }

.panel-footer {
  padding: 10px 15px;
  background-color: #f5f5f5;
  border-top: 1px solid #ddd;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px; }

.panel > .list-group,
.panel > .panel-collapse > .list-group {
  margin-bottom: 0; }
  .panel > .list-group .list-group-item,
  .panel > .panel-collapse > .list-group .list-group-item {
    border-width: 1px 0;
    border-radius: 0; }
  .panel > .list-group:first-child .list-group-item:first-child,
  .panel > .panel-collapse > .list-group:first-child .list-group-item:first-child {
    border-top: 0;
    border-top-left-radius: 3px;
    border-top-right-radius: 3px; }
  .panel > .list-group:last-child .list-group-item:last-child,
  .panel > .panel-collapse > .list-group:last-child .list-group-item:last-child {
    border-bottom: 0;
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px; }

.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0; }

.panel-heading + .list-group .list-group-item:first-child {
  border-top-width: 0; }

.list-group + .panel-footer {
  border-top-width: 0; }

.panel > .table,
.panel > .table-responsive > .table,
.panel > .panel-collapse > .table {
  margin-bottom: 0; }
  .panel > .table caption,
  .panel > .table-responsive > .table caption,
  .panel > .panel-collapse > .table caption {
    padding-right: 15px;
    padding-left: 15px; }

.panel > .table:first-child,
.panel > .table-responsive:first-child > .table:first-child {
  border-top-left-radius: 3px;
  border-top-right-radius: 3px; }
  .panel > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table:first-child > tbody:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child,
  .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child {
    border-top-left-radius: 3px;
    border-top-right-radius: 3px; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child {
      border-top-left-radius: 3px; }
    .panel > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table:first-child > tbody:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child,
    .panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child {
      border-top-right-radius: 3px; }

.panel > .table:last-child,
.panel > .table-responsive:last-child > .table:last-child {
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px; }
  .panel > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table:last-child > tfoot:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child,
  .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child {
    border-bottom-right-radius: 3px;
    border-bottom-left-radius: 3px; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child {
      border-bottom-left-radius: 3px; }
    .panel > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child,
    .panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child {
      border-bottom-right-radius: 3px; }

.panel > .panel-body + .table,
.panel > .panel-body + .table-responsive,
.panel > .table + .panel-body,
.panel > .table-responsive + .panel-body {
  border-top: 1px solid #ddd; }

.panel > .table > tbody:first-child > tr:first-child th,
.panel > .table > tbody:first-child > tr:first-child td {
  border-top: 0; }

.panel > .table-bordered,
.panel > .table-responsive > .table-bordered {
  border: 0; }
  .panel > .table-bordered > thead > tr > th:first-child,
  .panel > .table-bordered > thead > tr > td:first-child,
  .panel > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-bordered > tfoot > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child {
    border-left: 0; }
  .panel > .table-bordered > thead > tr > th:last-child,
  .panel > .table-bordered > thead > tr > td:last-child,
  .panel > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-bordered > tfoot > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > thead > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tbody > tr > td:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child,
  .panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child {
    border-right: 0; }
  .panel > .table-bordered > thead > tr:first-child > td,
  .panel > .table-bordered > thead > tr:first-child > th,
  .panel > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-bordered > tbody > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > thead > tr:first-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:first-child > th {
    border-bottom: 0; }
  .panel > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-bordered > tfoot > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tbody > tr:last-child > th,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td,
  .panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th {
    border-bottom: 0; }

.panel > .table-responsive {
  margin-bottom: 0;
  border: 0; }

.panel-group {
  margin-bottom: 20px; }
  .panel-group .panel {
    margin-bottom: 0;
    border-radius: 4px; }
    .panel-group .panel + .panel {
      margin-top: 5px; }
  .panel-group .panel-heading {
    border-bottom: 0; }
    .panel-group .panel-heading + .panel-collapse > .panel-body,
    .panel-group .panel-heading + .panel-collapse > .list-group {
      border-top: 1px solid #ddd; }
  .panel-group .panel-footer {
    border-top: 0; }
    .panel-group .panel-footer + .panel-collapse .panel-body {
      border-bottom: 1px solid #ddd; }

.panel-default {
  border-color: #ddd; }
  .panel-default > .panel-heading {
    color: #333333;
    background-color: #f5f5f5;
    border-color: #ddd; }
    .panel-default > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ddd; }
    .panel-default > .panel-heading .badge {
      color: #f5f5f5;
      background-color: #333333; }
  .panel-default > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ddd; }

.panel-primary {
  border-color: #337ab7; }
  .panel-primary > .panel-heading {
    color: #fff;
    background-color: #337ab7;
    border-color: #337ab7; }
    .panel-primary > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #337ab7; }
    .panel-primary > .panel-heading .badge {
      color: #337ab7;
      background-color: #fff; }
  .panel-primary > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #337ab7; }

.panel-success {
  border-color: #d6e9c6; }
  .panel-success > .panel-heading {
    color: #3c763d;
    background-color: #dff0d8;
    border-color: #d6e9c6; }
    .panel-success > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #d6e9c6; }
    .panel-success > .panel-heading .badge {
      color: #dff0d8;
      background-color: #3c763d; }
  .panel-success > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #d6e9c6; }

.panel-info {
  border-color: #bce8f1; }
  .panel-info > .panel-heading {
    color: #31708f;
    background-color: #d9edf7;
    border-color: #bce8f1; }
    .panel-info > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #bce8f1; }
    .panel-info > .panel-heading .badge {
      color: #d9edf7;
      background-color: #31708f; }
  .panel-info > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #bce8f1; }

.panel-warning {
  border-color: #faebcc; }
  .panel-warning > .panel-heading {
    color: #8a6d3b;
    background-color: #fcf8e3;
    border-color: #faebcc; }
    .panel-warning > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #faebcc; }
    .panel-warning > .panel-heading .badge {
      color: #fcf8e3;
      background-color: #8a6d3b; }
  .panel-warning > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #faebcc; }

.panel-danger {
  border-color: #ebccd1; }
  .panel-danger > .panel-heading {
    color: #a94442;
    background-color: #f2dede;
    border-color: #ebccd1; }
    .panel-danger > .panel-heading + .panel-collapse > .panel-body {
      border-top-color: #ebccd1; }
    .panel-danger > .panel-heading .badge {
      color: #f2dede;
      background-color: #a94442; }
  .panel-danger > .panel-footer + .panel-collapse > .panel-body {
    border-bottom-color: #ebccd1; }

.embed-responsive {
  position: relative;
  display: block;
  height: 0;
  padding: 0;
  overflow: hidden; }
  .embed-responsive .embed-responsive-item,
  .embed-responsive iframe,
  .embed-responsive embed,
  .embed-responsive object,
  .embed-responsive video {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 0; }

.embed-responsive-16by9 {
  padding-bottom: 56.25%; }

.embed-responsive-4by3 {
  padding-bottom: 75%; }

.well {
  min-height: 20px;
  padding: 19px;
  margin-bottom: 20px;
  background-color: #f5f5f5;
  border: 1px solid #e3e3e3;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05); }
  .well blockquote {
    border-color: #ddd;
    border-color: rgba(0, 0, 0, 0.15); }

.well-lg {
  padding: 24px;
  border-radius: 6px; }

.well-sm {
  padding: 9px;
  border-radius: 3px; }

.close {
  float: right;
  font-size: 21px;
  font-weight: bold;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  filter: alpha(opacity=20);
  opacity: 0.2; }
  .close:hover, .close:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
    filter: alpha(opacity=50);
    opacity: 0.5; }

button.close {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none; }

.modal-open {
  overflow: hidden; }

.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1050;
  display: none;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  outline: 0; }
  .modal.fade .modal-dialog {
    transform: translate(0, -25%);
    transition: transform 0.3s ease-out; }
  .modal.in .modal-dialog {
    transform: translate(0, 0); }

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto; }

.modal-dialog {
  position: relative;
  width: auto;
  margin: 10px; }

.modal-content {
  position: relative;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #999;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 3px 9px rgba(0, 0, 0, 0.5);
  outline: 0; }

.modal-backdrop {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1040;
  background-color: #000; }
  .modal-backdrop.fade {
    filter: alpha(opacity=0);
    opacity: 0; }
  .modal-backdrop.in {
    filter: alpha(opacity=50);
    opacity: 0.5; }

.modal-header {
  padding: 15px;
  border-bottom: 1px solid #e5e5e5; }
  .modal-header:before, .modal-header:after {
    display: table;
    content: " "; }
  .modal-header:after {
    clear: both; }

.modal-header .close {
  margin-top: -2px; }

.modal-title {
  margin: 0;
  line-height: 1.42857; }

.modal-body {
  position: relative;
  padding: 15px; }

.modal-footer {
  padding: 15px;
  text-align: right;
  border-top: 1px solid #e5e5e5; }
  .modal-footer:before, .modal-footer:after {
    display: table;
    content: " "; }
  .modal-footer:after {
    clear: both; }
  .modal-footer .btn + .btn {
    margin-bottom: 0;
    margin-left: 5px; }
  .modal-footer .btn-group .btn + .btn {
    margin-left: -1px; }
  .modal-footer .btn-block + .btn-block {
    margin-left: 0; }

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll; }

@media (min-width: 768px) {
  .modal-dialog {
    width: 600px;
    margin: 30px auto; }
  .modal-content {
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5); }
  .modal-sm {
    width: 300px; } }

@media (min-width: 992px) {
  .modal-lg {
    width: 900px; } }

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  font-family: "Gotham SSm A", "Gotham SSm B", Verdana, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.42857;
  line-break: auto;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  font-size: 12px;
  filter: alpha(opacity=0);
  opacity: 0; }
  .tooltip.in {
    filter: alpha(opacity=90);
    opacity: 0.9; }
  .tooltip.top {
    padding: 5px 0;
    margin-top: -3px; }
  .tooltip.right {
    padding: 0 5px;
    margin-left: 3px; }
  .tooltip.bottom {
    padding: 5px 0;
    margin-top: 3px; }
  .tooltip.left {
    padding: 0 5px;
    margin-left: -3px; }
  .tooltip.top .tooltip-arrow {
    bottom: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000; }
  .tooltip.top-left .tooltip-arrow {
    right: 5px;
    bottom: 0;
    margin-bottom: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000; }
  .tooltip.top-right .tooltip-arrow {
    bottom: 0;
    left: 5px;
    margin-bottom: -5px;
    border-width: 5px 5px 0;
    border-top-color: #000; }
  .tooltip.right .tooltip-arrow {
    top: 50%;
    left: 0;
    margin-top: -5px;
    border-width: 5px 5px 5px 0;
    border-right-color: #000; }
  .tooltip.left .tooltip-arrow {
    top: 50%;
    right: 0;
    margin-top: -5px;
    border-width: 5px 0 5px 5px;
    border-left-color: #000; }
  .tooltip.bottom .tooltip-arrow {
    top: 0;
    left: 50%;
    margin-left: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000; }
  .tooltip.bottom-left .tooltip-arrow {
    top: 0;
    right: 5px;
    margin-top: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000; }
  .tooltip.bottom-right .tooltip-arrow {
    top: 0;
    left: 5px;
    margin-top: -5px;
    border-width: 0 5px 5px;
    border-bottom-color: #000; }

.tooltip-inner {
  max-width: 200px;
  padding: 3px 8px;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 4px; }

.tooltip-arrow {
  position: absolute;
  width: 0;
  height: 0;
  border-color: transparent;
  border-style: solid; }

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: none;
  max-width: 276px;
  padding: 1px;
  font-family: "Gotham SSm A", "Gotham SSm B", Verdana, Arial, sans-serif;
  font-style: normal;
  font-weight: 400;
  line-height: 1.42857;
  line-break: auto;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  word-spacing: normal;
  word-wrap: normal;
  white-space: normal;
  font-size: 14px;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2); }
  .popover.top {
    margin-top: -10px; }
  .popover.right {
    margin-left: 10px; }
  .popover.bottom {
    margin-top: 10px; }
  .popover.left {
    margin-left: -10px; }
  .popover > .arrow {
    border-width: 11px; }
    .popover > .arrow, .popover > .arrow:after {
      position: absolute;
      display: block;
      width: 0;
      height: 0;
      border-color: transparent;
      border-style: solid; }
    .popover > .arrow:after {
      content: "";
      border-width: 10px; }
  .popover.top > .arrow {
    bottom: -11px;
    left: 50%;
    margin-left: -11px;
    border-top-color: #999999;
    border-top-color: rgba(0, 0, 0, 0.25);
    border-bottom-width: 0; }
    .popover.top > .arrow:after {
      bottom: 1px;
      margin-left: -10px;
      content: " ";
      border-top-color: #fff;
      border-bottom-width: 0; }
  .popover.right > .arrow {
    top: 50%;
    left: -11px;
    margin-top: -11px;
    border-right-color: #999999;
    border-right-color: rgba(0, 0, 0, 0.25);
    border-left-width: 0; }
    .popover.right > .arrow:after {
      bottom: -10px;
      left: 1px;
      content: " ";
      border-right-color: #fff;
      border-left-width: 0; }
  .popover.bottom > .arrow {
    top: -11px;
    left: 50%;
    margin-left: -11px;
    border-top-width: 0;
    border-bottom-color: #999999;
    border-bottom-color: rgba(0, 0, 0, 0.25); }
    .popover.bottom > .arrow:after {
      top: 1px;
      margin-left: -10px;
      content: " ";
      border-top-width: 0;
      border-bottom-color: #fff; }
  .popover.left > .arrow {
    top: 50%;
    right: -11px;
    margin-top: -11px;
    border-right-width: 0;
    border-left-color: #999999;
    border-left-color: rgba(0, 0, 0, 0.25); }
    .popover.left > .arrow:after {
      right: 1px;
      bottom: -10px;
      content: " ";
      border-right-width: 0;
      border-left-color: #fff; }

.popover-title {
  padding: 8px 14px;
  margin: 0;
  font-size: 14px;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-radius: 5px 5px 0 0; }

.popover-content {
  padding: 9px 14px; }

.carousel {
  position: relative; }

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden; }
  .carousel-inner > .item {
    position: relative;
    display: none;
    transition: 0.6s ease-in-out left; }
    .carousel-inner > .item > img,
    .carousel-inner > .item > a > img {
      display: block;
      max-width: 100%;
      height: auto;
      line-height: 1; }
    @media all and (transform-3d), (-webkit-transform-3d) {
      .carousel-inner > .item {
        transition: transform 0.6s ease-in-out;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        perspective: 1000px; }
        .carousel-inner > .item.next, .carousel-inner > .item.active.right {
          transform: translate3d(100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.prev, .carousel-inner > .item.active.left {
          transform: translate3d(-100%, 0, 0);
          left: 0; }
        .carousel-inner > .item.next.left, .carousel-inner > .item.prev.right, .carousel-inner > .item.active {
          transform: translate3d(0, 0, 0);
          left: 0; } }
  .carousel-inner > .active,
  .carousel-inner > .next,
  .carousel-inner > .prev {
    display: block; }
  .carousel-inner > .active {
    left: 0; }
  .carousel-inner > .next,
  .carousel-inner > .prev {
    position: absolute;
    top: 0;
    width: 100%; }
  .carousel-inner > .next {
    left: 100%; }
  .carousel-inner > .prev {
    left: -100%; }
  .carousel-inner > .next.left,
  .carousel-inner > .prev.right {
    left: 0; }
  .carousel-inner > .active.left {
    left: -100%; }
  .carousel-inner > .active.right {
    left: 100%; }

.carousel-control {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 15%;
  font-size: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6);
  background-color: rgba(0, 0, 0, 0);
  filter: alpha(opacity=50);
  opacity: 0.5; }
  .carousel-control.left {
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.0001) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);
    background-repeat: repeat-x; }
  .carousel-control.right {
    right: 0;
    left: auto;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0.0001) 0%, rgba(0, 0, 0, 0.5) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);
    background-repeat: repeat-x; }
  .carousel-control:hover, .carousel-control:focus {
    color: #fff;
    text-decoration: none;
    outline: 0;
    filter: alpha(opacity=90);
    opacity: 0.9; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right {
    position: absolute;
    top: 50%;
    z-index: 5;
    display: inline-block;
    margin-top: -10px; }
  .carousel-control .icon-prev,
  .carousel-control .glyphicon-chevron-left {
    left: 50%;
    margin-left: -10px; }
  .carousel-control .icon-next,
  .carousel-control .glyphicon-chevron-right {
    right: 50%;
    margin-right: -10px; }
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 20px;
    height: 20px;
    font-family: serif;
    line-height: 1; }
  .carousel-control .icon-prev:before {
    content: "\2039"; }
  .carousel-control .icon-next:before {
    content: "\203a"; }

.carousel-indicators {
  position: absolute;
  bottom: 10px;
  left: 50%;
  z-index: 15;
  width: 60%;
  padding-left: 0;
  margin-left: -30%;
  text-align: center;
  list-style: none; }
  .carousel-indicators li {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 1px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #000 \9;
    background-color: rgba(0, 0, 0, 0);
    border: 1px solid #fff;
    border-radius: 10px; }
  .carousel-indicators .active {
    width: 12px;
    height: 12px;
    margin: 0;
    background-color: #fff; }

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.6); }
  .carousel-caption .btn {
    text-shadow: none; }

@media screen and (min-width: 768px) {
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-prev,
  .carousel-control .icon-next {
    width: 30px;
    height: 30px;
    margin-top: -10px;
    font-size: 30px; }
  .carousel-control .glyphicon-chevron-left,
  .carousel-control .icon-prev {
    margin-left: -10px; }
  .carousel-control .glyphicon-chevron-right,
  .carousel-control .icon-next {
    margin-right: -10px; }
  .carousel-caption {
    right: 20%;
    left: 20%;
    padding-bottom: 30px; }
  .carousel-indicators {
    bottom: 20px; } }

.clearfix:before, .clearfix:after {
  display: table;
  content: " "; }

.clearfix:after {
  clear: both; }

.center-block {
  display: block;
  margin-right: auto;
  margin-left: auto; }

.pull-right {
  float: right !important; }

.pull-left {
  float: left !important; }

.hide {
  display: none !important; }

.show {
  display: block !important; }

.invisible {
  visibility: hidden; }

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0; }

.hidden {
  display: none !important; }

.affix {
  position: fixed; }

@-ms-viewport {
  width: device-width; }

.visible-xs {
  display: none !important; }

.visible-sm {
  display: none !important; }

.visible-md {
  display: none !important; }

.visible-lg {
  display: none !important; }

.visible-xs-block,
.visible-xs-inline,
.visible-xs-inline-block,
.visible-sm-block,
.visible-sm-inline,
.visible-sm-inline-block,
.visible-md-block,
.visible-md-inline,
.visible-md-inline-block,
.visible-lg-block,
.visible-lg-inline,
.visible-lg-inline-block {
  display: none !important; }

@media (max-width: 767px) {
  .visible-xs {
    display: block !important; }
  table.visible-xs {
    display: table !important; }
  tr.visible-xs {
    display: table-row !important; }
  th.visible-xs,
  td.visible-xs {
    display: table-cell !important; } }

@media (max-width: 767px) {
  .visible-xs-block {
    display: block !important; } }

@media (max-width: 767px) {
  .visible-xs-inline {
    display: inline !important; } }

@media (max-width: 767px) {
  .visible-xs-inline-block {
    display: inline-block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm {
    display: block !important; }
  table.visible-sm {
    display: table !important; }
  tr.visible-sm {
    display: table-row !important; }
  th.visible-sm,
  td.visible-sm {
    display: table-cell !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-block {
    display: block !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline {
    display: inline !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .visible-sm-inline-block {
    display: inline-block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md {
    display: block !important; }
  table.visible-md {
    display: table !important; }
  tr.visible-md {
    display: table-row !important; }
  th.visible-md,
  td.visible-md {
    display: table-cell !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-block {
    display: block !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline {
    display: inline !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .visible-md-inline-block {
    display: inline-block !important; } }

@media (min-width: 1200px) {
  .visible-lg {
    display: block !important; }
  table.visible-lg {
    display: table !important; }
  tr.visible-lg {
    display: table-row !important; }
  th.visible-lg,
  td.visible-lg {
    display: table-cell !important; } }

@media (min-width: 1200px) {
  .visible-lg-block {
    display: block !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline {
    display: inline !important; } }

@media (min-width: 1200px) {
  .visible-lg-inline-block {
    display: inline-block !important; } }

@media (max-width: 767px) {
  .hidden-xs {
    display: none !important; } }

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important; } }

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important; } }

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important; } }

.visible-print {
  display: none !important; }

@media print {
  .visible-print {
    display: block !important; }
  table.visible-print {
    display: table !important; }
  tr.visible-print {
    display: table-row !important; }
  th.visible-print,
  td.visible-print {
    display: table-cell !important; } }

.visible-print-block {
  display: none !important; }
  @media print {
    .visible-print-block {
      display: block !important; } }

.visible-print-inline {
  display: none !important; }
  @media print {
    .visible-print-inline {
      display: inline !important; } }

.visible-print-inline-block {
  display: none !important; }
  @media print {
    .visible-print-inline-block {
      display: inline-block !important; } }

@media print {
  .hidden-print {
    display: none !important; } }

/* Generated by Font Squirrel (http://www.fontsquirrel.com) on November 11, 2011 */
@font-face {
  font-family: 'Futura';
  src: url("../../../../public/type/futura/futura_medium_bt-webfont.eot");
  src: url("../../../../public/type/futura/futura_medium_bt-webfont.eot?#iefix") format("embedded-opentype"), url("../../../../public/type/futura/futura_medium_bt-webfont.woff") format("woff"), url("../../../../public/type/futura/futura_medium_bt-webfont.ttf") format("truetype"), url("../../../../public/type/futura/futura_medium_bt-webfont.svg#FuturaMedium") format("svg");
  font-weight: normal;
  font-style: normal; }

/* Icons */
@font-face {
  font-family: 'wu-social-icons';
  src: url("../../../../public/type/wu-social-icons/circle/wu-social-icons.ttf?q9hkq3") format("truetype"), url("../../../../public/type/wu-social-icons/circle/wu-social-icons.woff?q9hkq3") format("woff"), url("../../../../public/type/wu-social-icons/circle/wu-social-icons.svg?q9hkq3#wu-social-icons") format("svg");
  font-weight: normal;
  font-style: normal; }

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

.wu-social-giphy:before {
  content: "\e91d"; }

.wu-social-tiktok:before {
  content: "\e91c"; }

.wu-social-linkedin:before {
  content: "\e900"; }

.wu-social-soundcloud:before {
  content: "\e002"; }

.wu-social-spotify:before {
  content: "\e602"; }

.wu-social-twitter:before {
  content: "\e603"; }

.wu-social-googleplus:before {
  content: "\e604"; }

.wu-social-youtube:before {
  content: "\e605"; }

.wu-social-rss:before {
  content: "\e60f"; }

.wu-social-pinterest:before {
  content: "\e610"; }

.wu-social-vimeo:before {
  content: "\e901"; }

.wu-social-apple:before {
  content: "\e902"; }

.wu-social-Vevo:before {
  content: "\e903"; }

.wu-social-messenger:before {
  content: "\e904"; }

.wu-social-instagram:before {
  content: "\e905"; }

.wu-social-mail:before {
  content: "\e906"; }

.wu-social-tumblr:before {
  content: "\e907"; }

.wu-social-snapchat:before {
  content: "\e908"; }

.wu-social-vine:before {
  content: "\e909"; }

.wu-social-myspace:before {
  content: "\e90a"; }

.wu-social-whatsapp:before {
  content: "\e90b"; }

.wu-social-kik:before {
  content: "\e8fc"; }

.wu-social-googleplay:before {
  content: "\e90c"; }

.wu-social-fans:before {
  content: "\e90d"; }

.wu-social-facebook:before {
  content: "\e90e"; }

.wu-social-line:before {
  content: "\e90f"; }

.wu-social-amazon:before {
  content: "\e910"; }

.wu-social-bkstg:before {
  content: "\e911"; }

.wu-social-itunes:before {
  content: "\e912"; }

.wu-social-buy:before {
  content: "\e913"; }

.wu-social-deezer:before {
  content: "\e914"; }

.wu-social-target:before {
  content: "\e915"; }

.wu-social-walmart:before {
  content: "\e916"; }

.wu-social-musically:before {
  content: "\e917"; }

.wu-social-pandora:before {
  content: "\e918"; }

.wu-social-twitch:before {
  content: "\e919"; }

.wu-social-yelp:before {
  content: "\e91a"; }

.wu-social-untapped:before {
  content: "\e91b"; }

/* Master Theme Store Fallback */
/*
 * Responsive/type reset for Origin Theme fallback to Master Theme
 */
@font-face {
  font-family: 'Glyphicons Master Theme';
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot");
  src: url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"), url("../../../../themes/origin/public/fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg"); }

.glyphicon {
  position: relative;
  top: 1px;
  display: inline-block;
  font-family: 'Glyphicons Master Theme';
  font-style: normal;
  font-weight: normal;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.master-theme {
  /* General */
  /* Grid */
  /* Events */
  /* Store */
  /* Header */
  /* Featured Listing */
  /* Regular Listing */
  /* Sidebar */
  /* Categories */
  /* Account Center */
  /* Structure */
  /* Header */
  /* Sidebar */
  /* Avatar */
  /* Tables */
  /* Pagination */ }
  .master-theme p, .master-theme dl, .master-theme ol, .master-theme ul {
    margin: 1em 0;
    padding: 0; }
  .master-theme dd {
    margin: 0;
    padding: 0; }
  .master-theme i, .master-theme em {
    font-style: italic; }
  .master-theme b, .master-theme strong {
    font-weight: 700; }
    .master-theme b a, .master-theme b span, .master-theme strong a, .master-theme strong span {
      font-weight: inherit; }
  .master-theme table {
    margin: 0;
    border-collapse: separate; }
  .master-theme, .master-theme h1, .master-theme h2, .master-theme h3, .master-theme h4, .master-theme h5, .master-theme h6, .master-theme th, .master-theme dt, .master-theme p, .master-theme a, .master-theme span, .master-theme li, .master-theme td, .master-theme dd, .master-theme address, .master-theme input, .master-theme textarea, .master-theme .vcard, .master-theme #dashboard, .master-theme #breadcrumbs, .master-theme legend {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    line-height: inherit;
    -webkit-font-smoothing: antialiased; }
  .master-theme a, .master-theme a:visited {
    color: inherit;
    text-decoration: underline; }
  .master-theme button {
    cursor: pointer; }
  .master-theme {
    font-size: 16px; }
  .master-theme h1, .master-theme h2, .master-theme h3, .master-theme h4, .master-theme h5, .master-theme h6 {
    font-family: inherit;
    font-weight: 700;
    text-rendering: optimizelegibility; }
    .master-theme h1 a, .master-theme h2 a, .master-theme h3 a, .master-theme h4 a, .master-theme h5 a, .master-theme h6 a {
      text-decoration: none; }
  .master-theme h1 {
    font-size: 2em;
    line-height: 1.333em; }
  .master-theme h2 {
    font-size: 1.4em;
    line-height: 1.4em; }
  .master-theme h3 {
    font-size: 1.2em; }
  .master-theme h4 {
    font-size: 1.1em;
    font-weight: 700; }
  .master-theme h5 {
    font-size: 0.846em;
    line-height: 2.09em;
    letter-spacing: 2px; }
  .master-theme h6 {
    font-size: 0.67em; }
  .master-theme *, .master-theme *:before, .master-theme *:after {
    box-sizing: border-box; }
  .master-theme #fancybox-wrap {
    box-sizing: content-box; }
  .master-theme .clearfix:before, .master-theme .clearfix:after {
    content: "";
    display: table; }
  .master-theme .clearfix:after {
    clear: both; }
  .master-theme p.browserupgrade {
    position: absolute;
    top: 0;
    left: 0;
    margin: 0;
    padding: .2em;
    background: #f00;
    color: #fff;
    z-index: 9999999999; }
  .master-theme p.browserupgrade a {
    color: #fff;
    text-decoration: underline; }
  .master-theme p.browserupgrade a:hover {
    color: #fff; }
  .master-theme .event .info, .master-theme .event #unified .title {
    display: none; }
  .master-theme #GC {
    margin: 0 auto;
    max-width: 1200px; }
  .master-theme input, .master-theme textarea {
    border: 1px solid #ccc;
    border-radius: 2px;
    background: #fff;
    box-shadow: none; }
  .master-theme #GC .recaptcha_input_area {
    width: auto !important;
    height: auto !important; }
  .master-theme blockquote {
    border: 0;
    background: rgba(255, 255, 255, 0.2); }
    .master-theme blockquote .author {
      font-weight: 700; }
  .master-theme pre {
    white-space: pre-wrap; }
  .master-theme .section.news .article > .footer .nav.actions > .readmore {
    float: none; }
  .master-theme .section.news .article > .footer .nav.actions {
    height: auto; }
  .master-theme #footer {
    height: auto; }
  .master-theme #breadcrumbs, .master-theme .rss {
    display: none; }
  .master-theme a[href*="/user/"] {
    word-break: break-all; }
  .master-theme .content li {
    list-style-type: disc;
    margin-left: 20px; }
  .master-theme #dashboard .section, .master-theme #page, .master-theme #breadcrumbs, .master-theme #header .section, .master-theme #footer .section, .master-theme.store #main.full, .master-theme #main.full, .master-theme .main.full, .master-theme #aside, .master-theme .aside {
    width: 100%; }
  .master-theme #dashboard .section, .master-theme #container, .master-theme #breadcrumbs, .master-theme #header .section, .master-theme #footer .section, .master-theme #main.full, .master-theme .main.full {
    max-width: 960px; }
  .master-theme #main, .master-theme .main {
    width: 54%;
    max-width: 540px;
    margin: 0 auto; }
  .master-theme #aside, .master-theme .aside {
    width: 38%;
    max-width: 380px;
    margin: 0 auto; }
  .master-theme .events .tickets a, .master-theme .events .tickets span, .master-theme .events .tickets.vip a {
    width: auto;
    height: auto;
    text-indent: 0;
    background: none; }
  .master-theme.store, .master-theme.store #aside .listing .item span, .master-theme.store #aside .listing .item a {
    font-family: inherit; }
  .master-theme.store #container {
    float: none;
    margin: 0 auto 150px auto;
    max-width: 920px;
    width: 100%; }
  .master-theme.store #main {
    float: left;
    margin: 0;
    width: 70%; }
  .master-theme.store #aside {
    float: left;
    margin: 0;
    width: 30%; }
  .master-theme.store #main > .section {
    padding: 0 15px !important; }
  .master-theme.store #main > .header,
  .master-theme.store #main > .section > .header {
    padding: 15px; }
  .master-theme.store #main .featured {
    clear: left;
    margin-bottom: 25px;
    padding: 40px 0 0 0;
    border: 0; }
  .master-theme.store #main .shop .listing .item,
  .master-theme.store #main .featured .listing .item,
  .master-theme.store #main .category.products .listing .item {
    margin: 0 2% 2% 0;
    height: auto !important;
    border: 0; }
  .master-theme.store #main .shop .listing .item > .product,
  .master-theme.store #main .featured .listing .item > .product,
  .master-theme.store #main .category.products .listing .item > .product {
    border: 4px solid #000; }
  .master-theme.store #main .shop .listing .item .figure,
  .master-theme.store #main .featured .listing .item .figure,
  .master-theme.store #main .category.products .listing .item .figure {
    overflow: hidden;
    padding-bottom: 100%;
    min-width: 0;
    max-width: 100%;
    width: 100%;
    height: 0; }
  .master-theme.store #main .listing .item a,
  .master-theme.store #main .listing .item a span,
  .master-theme.store #main .listing .item a span span {
    padding: 0; }
  .master-theme.store #main .shop .listing .item .content,
  .master-theme.store #main .featured .listing .item .content,
  .master-theme.store #main .category.products .listing .item .content,
  .master-theme.store #main .shop .listing .item:hover .content,
  .master-theme.store #main .featured .listing .item:hover .content,
  .master-theme.store #main .category.products .listing .item:hover .content {
    top: auto;
    bottom: 0;
    overflow: visible; }
  .master-theme.store #main .shop .listing .item .product-details,
  .master-theme.store #main .featured .listing .item .product-details,
  .master-theme.store #main .category.products .listing .item .product-details {
    overflow: hidden;
    max-height: 0;
    width: 100%;
    transition: max-height 0.3s ease; }
  .master-theme.store #main .shop .listing .item:hover .product-details,
  .master-theme.store #main .featured .listing .item:hover .product-details,
  .master-theme.store #main .category.products .listing .item:hover .product-details {
    max-height: 100px; }
  .master-theme.store #main .shop .listing .item .product-container,
  .master-theme.store #main .featured .listing .item .product-container,
  .master-theme.store #main .category.products .listing .item .product-container {
    padding: 0;
    width: 100%; }
  .master-theme.store #main .shop .listing .item .product-container > a,
  .master-theme.store #main .featured .listing .item .product-container > a,
  .master-theme.store #main .category.products .listing .item .product-container > a {
    display: block;
    padding: 10px; }
  .master-theme.store .product .figure img,
  .master-theme.store #main .featured .listing .item .figure img {
    min-width: 0; }
  .master-theme.store h1.title {
    margin: 40px 0 20px 0;
    text-align: left;
    font-size: 30px; }
  .master-theme.store #main .featured .listing .item {
    width: 49%; }
  .master-theme.store #main .featured .listing .item.second {
    margin: 0 0 2% 0; }
  .master-theme.store #main > .featured .flag {
    margin: 0; }
  .master-theme.store #main .shop .listing .item,
  .master-theme.store #main .category.products .listing .item {
    width: 32%; }
  .master-theme.store #main .shop .listing .item.third,
  .master-theme.store #main .category.products .listing .item.third {
    margin: 0 0 2% 0; }
  .master-theme.store .button {
    border: 0;
    border-radius: 0; }
  .master-theme.store #aside #GC.store.header {
    margin: 65px 15px 15px 15px; }
  .master-theme.store #aside .listing .item {
    margin: 0 15px;
    padding: 0;
    border: 1px solid #ededed;
    background: #fff; }
  .master-theme.store #aside .listing .item + .item {
    border-top: none; }
  .master-theme.store #aside .listing .item span,
  .master-theme.store #aside .listing .item a {
    display: block;
    padding: 10px;
    font-weight: 400; }
  .master-theme.store #aside .listing .item a:hover {
    background: #fafafa; }
  .master-theme.store #aside .categories > .header {
    display: none; }
  .master-theme .account #container {
    padding-bottom: 150px; }
  .master-theme #GC.GC_account {
    padding: 0; }
  .master-theme #GC.GC_account .GC_panes {
    margin: 0; }
  .master-theme #GC.GC_account .GC_panes > .GC_view {
    float: none;
    overflow: hidden;
    border: none; }
  .master-theme #GC.GC_account #toolbar ul li,
  .master-theme #GC.GC_account #toolbar ul li.selected,
  .master-theme #GC.GC_account #toolbar ul li:hover {
    margin: 0;
    border: none;
    border-left: 1px solid #dcdcdc;
    border-radius: 0; }
  .master-theme #GC.GC_account .GC_panes {
    padding: 0 10px; }
  .master-theme #GC.GC_account > .GC_header {
    border-bottom: 1px solid #dcdcdc; }
  .master-theme #GC.GC_account > .GC_header h1 {
    margin: 0;
    padding: 15px;
    line-height: 1; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li:hover,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.selected {
    margin: 0;
    padding: 4px 0;
    border-radius: 0px; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li:hover,
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.selected {
    background: #fafafa; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email {
    margin: 0;
    padding: 0;
    border-top: none; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email a.pic {
    margin: 0;
    padding: 0;
    width: 200px;
    height: 200px; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email img {
    padding: 0;
    background: none;
    box-shadow: none; }
  .master-theme #GC.GC_account .GC_panes .GC_navigation ul li.email .username {
    margin: 0;
    padding: 10px;
    text-align: left; }
  .master-theme #GC.GC_account table {
    padding: 0; }
  .master-theme #GC.GC_account table td,
  .master-theme #GC.GC_account table th {
    padding: 10px; }
  .master-theme #GC.GC_account table .options {
    width: 10px; }
  .master-theme #GC.GC_account table .avatar {
    overflow: hidden;
    height: 50px; }
  .master-theme #GC.GC_account .pagination {
    display: block;
    margin: 0;
    padding: 15px 0 0 0; }
  .master-theme #GC.GC_account .pagination .title {
    margin: 0;
    text-align: center;
    line-height: 40px; }
  .master-theme #GC.GC_account .pagination .pages {
    margin: -40px 0 0 0; }
  .master-theme #GC.GC_account .pagination .first,
  .master-theme #GC.GC_account .pagination .last {
    display: none; }
  .master-theme #GC.GC_account .pagination a {
    text-decoration: none;
    text-transform: none;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;
    speak: none;
    -webkit-font-smoothing: antialiased; }
  .master-theme #GC.GC_account .pagination .pages > .actions {
    display: block;
    float: left; }
  .master-theme #GC.GC_account .pagination .pages > .forth {
    display: block;
    float: right; }
  .master-theme .markItUpHeader {
    height: 30px; }
  .master-theme #GC .markItUpHeader ul a,
  .master-theme .markItUpHeader ul a {
    width: 20px;
    height: 20px; }
  .master-theme #GC .markItUpHeader ul ul li,
  .master-theme .markItUpHeader ul ul li {
    background: #fff; }
  .master-theme #GC_thread_panel .wrap {
    width: 100%; }
  .master-theme #GC_thread_panel .markItUpHeader {
    box-shadow: none; }
  .master-theme #GC .GC_blogs.GC_modify #title,
  .master-theme #GC_thread_panel #GC_thread_title,
  .master-theme #GC_thread_panel textarea,
  .master-theme .markItUp {
    width: 100%;
    min-width: 100%;
    max-width: 100%; }
  .master-theme.events #main {
    float: none;
    width: 100%; }

@media screen and (max-width: 880px) {
  .master-theme {
    /* Store */
    /* GC Stuff */ }
    .master-theme.store #header,
    .master-theme.store #footer {
      display: block; }
    .master-theme.store #main,
    .master-theme.store #aside {
      float: none;
      width: 100%;
      max-width: 100%; }
    .master-theme #main #GC {
      min-width: 0px; }
    .master-theme #GC.GC_account .GC_panes .GC_navigation,
    .master-theme #GC.GC_account .GC_panes > .GC_view,
    .master-theme #GC #markItUpBody {
      clear: both;
      margin: 0;
      padding: 0;
      width: 100%;
      border: none; }
    .master-theme #recaptcha_image {
      width: 100% !important; }
    .master-theme #recaptcha_response_field {
      width: auto !important; }
    .master-theme #recaptcha_table > tbody td {
      padding: 0 !important;
      width: 100% !important; }
    .master-theme #GC.GC_product {
      background-image: none; }
    .master-theme #GC.GC_product .GC_product_description,
    .master-theme #GC.GC_product .GC_product_purchase,
    .master-theme #GC #markItUpBody #body {
      margin: 10px 1%;
      width: 98%; }
    .master-theme #GC.GC_store table {
      font-size: 8px; }
    .master-theme #GC button {
      margin-bottom: 2px;
      padding: 5px 15px; }
    .master-theme #GC #GC_checkout_progress li {
      display: block;
      padding: 5px 4% 5px 2%;
      text-align: center; }
    .master-theme #GC fieldset ul {
      padding-top: 90px; }
    .master-theme #GC .input label,
    .master-theme #GC .select label,
    .master-theme #GC .captcha label,
    .master-theme #GC .text label {
      float: none;
      text-align: left; }
    .master-theme #GC .GC_address,
    .master-theme #GC .GC_payment {
      float: none;
      width: 93%; }
    .master-theme #GC input[type="text"],
    .master-theme #GC input[type="password"],
    .master-theme #GC input[type="email"],
    .master-theme #GC input[type="tel"],
    .master-theme #GC input[type="date"],
    .master-theme #GC textarea,
    .master-theme .ui-dialog textarea {
      width: 93%; }
    .master-theme #GC .GC_shipping .GC_same_as_billing {
      left: 0; }
    .master-theme #GC .actions li,
    .master-theme #GC .actions .prev {
      display: block;
      float: none;
      margin-bottom: 4px; }
    .master-theme #GC.GC_account #toolbar {
      margin: 0; }
    .master-theme #GC.GC_account #toolbar .nav li a {
      text-indent: -9999px; }
    .master-theme #GC.GC_engine {
      width: 90%; }
    .master-theme #GC.GC_account.GC_mail table .time,
    .master-theme #GC.GC_account .GC_friends #GC_friend_action th:last-child,
    .master-theme #GC.GC_account .GC_friends #GC_friend_action td.time,
    .master-theme #GC.GC_account .GC_links table .url,
    .master-theme #GC.GC_account.GC_comments table .author,
    .master-theme #GC.GC_account.GC_comments table .date,
    .master-theme #GC.GC_account.GC_linked table tr .displayname,
    .master-theme #GC.GC_account .GC_orders .date,
    .master-theme #GC.GC_account .GC_orders .total {
      display: none; }
    .master-theme #GC.GC_product .GC_product_purchase .purchase_form .select {
      margin: 0; }
    .master-theme #GC.GC_cart h1 {
      line-height: 1em; }
    .master-theme #GC.GC_account .GC_panes > .GC_view {
      min-height: 0; }
    .master-theme #GC .actions .prev a {
      margin-right: 0; }
    .master-theme #GC .GC_ticket.GC_countdown {
      width: 100%; }
    .master-theme #GC input.quantity {
      width: 3em; }
    .master-theme #GC #GC_checkout_progress {
      text-align: center; }
    .master-theme #GC th.total, .master-theme #GC td.total, .master-theme #GC tfoot th {
      text-align: left; }
    .master-theme #GC.GC_payment_information .total strong {
      display: inline-block;
      background-color: transparent;
      color: #000; }
    .master-theme #GC.GC_payment_information #PaymentForm-continue button {
      display: block;
      width: 100%;
      padding: 15px; }
    .master-theme #GC tfoot th, .master-theme #GC tfoot td {
      display: block; }
    .master-theme #GC tfoot th {
      padding-bottom: 0; }
    .master-theme #GC tfoot td {
      padding-top: 0; }
    .master-theme #GC.GC_store table {
      font-size: 14px; }
    .master-theme #GC.GC_store thead {
      display: none; }
    .master-theme #GC.GC_store tbody td {
      display: block; }
      .master-theme #GC.GC_store tbody td.item:before {
        content: "Item: "; }
      .master-theme #GC.GC_store tbody td.shipping:before {
        content: "Shipping: "; }
      .master-theme #GC.GC_store tbody td.price:before {
        content: "Price: "; }
      .master-theme #GC.GC_store tbody td.quantity:before {
        content: "Quantity: "; }
      .master-theme #GC.GC_store tbody td.total:before {
        content: "Total: "; }
      .master-theme #GC.GC_store tbody td:before {
        font-weight: bold; } }

@media screen and (max-width: 880px) and (max-width: 600px) {
  .ui-dialog {
    max-width: 320px !important;
    box-shadow: rgba(0, 0, 0, 0.4) 0 0px 20px; } }

/* Fonts */
body {
  font-family: 'Gotham SSm A', 'Gotham SSm B';
  background: #fff;
  max-width: 100%;
  overflow-x: hidden; }

a:hover {
  text-decoration: none; }

*:focus, a:focus {
  text-decoration: none; }

/**
 * General
 * =======
 *
*/
/* Page Transition */
/* Page Fade Transition */
.page {
  position: relative; }
  .page-inner {
    position: relative;
    top: 0;
    transition: opacity 250ms;
    opacity: 1; }
    .page-inner:before, .page-inner:after {
      display: table;
      content: " "; }
    .page-inner:after {
      clear: both; }
    .page-inner.ng-enter {
      opacity: 0; }
    .page-inner.ng-enter-active {
      opacity: 1; }
    .page-inner.ng-leave {
      position: absolute;
      width: 100%;
      top: 0;
      opacity: 1; }
    .page-inner.ng-leave-active {
      opacity: 0; }

/* Grid */
.page {
  min-height: calc(100vh - 150px); }
  .page .wrap {
    max-width: 100%;
    width: 100%;
    margin: 0;
    padding: 0; }

/* Loading Indicator */
#loading-bar .bar {
  background: #363636; }

#loading-bar .peg {
  box-shadow: #363636; }

#loading-bar-spinner {
  display: none; }

/* Paginations */
/* Simple Pagination */
.section-pagination {
  font-size: 1.2em;
  text-align: center; }

.pagination > li a, .pagination > li a:focus, .pagination > li span {
  border: 0;
  outline: 0;
  background-color: transparent; }

.pagination > li a:hover {
  border: 0;
  background-color: transparent; }

.pagination > li:first-child > a, .pagination > li:first-child > span, .pagination > li:last-child > a, .pagination > li:last-child > span {
  border-radius: 0; }

.pagination > .active a, .pagination > .active a:hover, .pagination > .active a:focus {
  border: 0;
  cursor: not-allowed;
  outline: 0;
  background-color: #363636;
  color: #fff; }

.pagination > .disabled > a, .pagination > .disabled > a:hover {
  background-color: transparent; }

/* CMS Page */
.section-cms-page .wrap {
  max-width: 800px; }

.section-cms-page em {
  font-family: "freight-display-pro", serif;
  color: #7e291a;
  font-size: 1.5em;
  line-height: 1.5; }

.section-cms-page-content {
  font-size: 1.2em; }
  .section-cms-page-content a {
    text-decoration: underline; }

/**
 * Header
 * ======
 *
*/
.section-header-navigation .wrap {
  width: 100%;
  overflow: hidden;
  padding-top: 10px;
  padding-bottom: 10px;
  position: relative;
  z-index: 9999; }
  .section-header-navigation .wrap .half {
    text-align: center;
    margin-right: 50px;
    text-transform: uppercase; }
    .section-header-navigation .wrap .half a {
      font-family: "Gotham SSm A", "Gotham SSm B", Verdana, Arial, sans-serif;
      margin: 0 10px;
      font-size: 10px;
      font-weight: 700;
      letter-spacing: 0.1em; }

@media (min-width: 760px) {
  .section-header-navigation .wrap .half {
    text-align: right; }
    .section-header-navigation .wrap .half a {
      margin: 0 15px;
      font-size: 11px; } }

/* Gradient Overlay */
.gradient-overlay {
  position: relative; }
  .gradient-overlay:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    width: 100%;
    height: 160px;
    background: linear-gradient(to top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 80%);
    z-index: 999; }

/**
 * Home
 * ====
 *
*/
/* Slider */
/* Full Width Responsive Carousel */
/* Vars */
.section-carousel {
  height: 0;
  margin: 0;
  padding-bottom: 65%;
  background: #333333 !important; }
  .section-carousel .item {
    z-index: 2; }
  .section-carousel .caption {
    display: none; }
  .section-carousel .image {
    display: block;
    padding-bottom: 65%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center; }
    .section-carousel .image img {
      display: none; }
  .section-carousel .carousel-control {
    width: 5%;
    z-index: 2; }
  .section-carousel .carousel-indicators li {
    margin-right: 5px; }
    .section-carousel .carousel-indicators li.active {
      background-color: rgba(255, 255, 255, 0.85); }

/* Fade animation for default carousel */
.section-carousel .carousel-inner .item {
  transition-property: opacity; }

.section-carousel .carousel-inner .item, .section-carousel .carousel-inner .active.left, .section-carousel .carousel-inner .active.right {
  opacity: 0; }

.section-carousel .carousel-inner .active, .section-carousel .carousel-inner .next.left, .section-carousel .carousel-inner .prev.right {
  opacity: 1; }

.section-carousel .carousel-inner .next, .section-carousel .carousel-inner .prev, .section-carousel .carousel-inner .active.left, .section-carousel .carousel-inner .active.right {
  left: 0;
  transform: translate3d(0, 0, 0); }

.section-carousel .carousel-control {
  z-index: 2; }

.section-home-slider {
  width: 100%; }
  .section-home-slider .wrap {
    margin: 0;
    padding: 0;
    max-width: 100%;
    position: relative;
    z-index: 1; }
    .section-home-slider .wrap .static-caption {
      max-width: 537px;
      width: 50%;
      position: absolute;
      top: calc(50% - 120px);
      left: 10%;
      transform: translateY(-50%);
      z-index: 9; }
      @media (max-widht: 750px) {
        .section-home-slider .wrap .static-caption {
          top: 40%;
          left: 50%;
          transform: translate(-50%, -50%); } }
      .section-home-slider .wrap .static-caption .section-widget-list-home-list {
        text-align: center; }
        .section-home-slider .wrap .static-caption .section-widget-list-home-list .inner {
          background: url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/homepage/box.svg") no-repeat center/100%;
          padding: 35px 0; }
          @media (max-width: 900px) {
            .section-home-slider .wrap .static-caption .section-widget-list-home-list .inner {
              padding: 60px 0; } }
          .section-home-slider .wrap .static-caption .section-widget-list-home-list .inner h1 {
            text-transform: uppercase;
            font-style: italic;
            font-family: "freight-display-pro", serif;
            color: #7e291a;
            margin-top: 10px;
            margin-bottom: 10px;
            font-size: 2.4vw;
            font-weight: 100; }
            @media (max-width: 900px) {
              .section-home-slider .wrap .static-caption .section-widget-list-home-list .inner h1 {
                font-size: 28px;
                margin-top: 0px;
                margin-bottom: 15px; } }
            @media (max-width: 750px) {
              .section-home-slider .wrap .static-caption .section-widget-list-home-list .inner h1 {
                margin: 0; } }
          .section-home-slider .wrap .static-caption .section-widget-list-home-list .inner p {
            font-weight: 100;
            font-size: 1.5vw;
            margin-top: 0px;
            font-family: "Gotham SSm A", "Gotham SSm B", Verdana, Arial, sans-serif;
            color: #040404;
            margin-bottom: 25px; }
            @media (max-width: 900px) {
              .section-home-slider .wrap .static-caption .section-widget-list-home-list .inner p {
                font-size: 20px;
                margin-bottom: 0px; } }
            @media (max-width: 500px) {
              .section-home-slider .wrap .static-caption .section-widget-list-home-list .inner p {
                font-size: 16px; } }

.section-carousel .carousel-control {
  display: none; }

/* Purchase Bar */
.section-purchase-bar {
  line-height: 0; }
  .section-purchase-bar-header {
    display: block;
    font-size: 1.75em;
    text-transform: uppercase;
    text-align: center;
    padding: 1.5em 0; }
    .section-purchase-bar-header .widget-title {
      display: block; }
  .section-purchase-bar .widget-item {
    display: inline-block;
    height: 0;
    overflow: hidden;
    padding-bottom: calc(100% / 3);
    position: relative;
    width: calc(100% / 3); }
    .section-purchase-bar .widget-item img {
      display: none; }
    .section-purchase-bar .widget-item .image {
      background-size: cover;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%; }
  .section-purchase-bar .widget-body {
    background: rgba(4, 4, 4, 0.5);
    cursor: pointer;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: background 250ms ease-in;
    width: 100%;
    z-index: 2; }
    .section-purchase-bar .widget-body a {
      color: #fff;
      display: block;
      font-size: 2.5em;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%); }
    .section-purchase-bar .widget-body:hover {
      background: transparent;
      transition: background 250ms ease-in; }

@media (min-width: 800px) {
  .section-purchase-bar .section-widget-list-purchase-bar:before {
    font-size: 1.75em;
    padding: 2em 0; }
  .section-purchase-bar .widget-item {
    padding-bottom: calc(100% / 5);
    width: calc(100% / 5); } }

/* Video */
/* Featured Video / Widget Video with Overlay */
.section-widget-video .header,
.section-featured-video .header {
  display: none; }

.section-widget-video .video-frame.video-active .inner:before,
.section-featured-video .video-frame.video-active .inner:before {
  height: 0;
  opacity: 0;
  visibility: hidden; }

.section-widget-video .video-frame.video-active .video-poster-image, .section-widget-video .video-frame.video-active .video-title,
.section-featured-video .video-frame.video-active .video-poster-image,
.section-featured-video .video-frame.video-active .video-title {
  opacity: 0;
  visibility: hidden; }

.section-widget-video .video-frame.video-active .video-embed:before,
.section-featured-video .video-frame.video-active .video-embed:before {
  opacity: 0;
  visibility: hidden; }

.section-widget-video .video-frame .inner,
.section-featured-video .video-frame .inner {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  overflow: hidden;
  cursor: pointer; }
  .section-widget-video .video-frame .inner:before, .section-widget-video .video-frame .inner .video-poster-image, .section-widget-video .video-frame .inner .video-title,
  .section-featured-video .video-frame .inner:before,
  .section-featured-video .video-frame .inner .video-poster-image,
  .section-featured-video .video-frame .inner .video-title {
    position: absolute;
    transition: visibility 250ms 0ms, opacity 250ms; }
  .section-widget-video .video-frame .inner:before,
  .section-featured-video .video-frame .inner:before {
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(64, 64, 64, 0.5);
    z-index: 2;
    transition: background 250ms; }
  .section-widget-video .video-frame .inner .video-poster-image,
  .section-featured-video .video-frame .inner .video-poster-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    z-index: 1; }
  .section-widget-video .video-frame .inner .video-title,
  .section-featured-video .video-frame .inner .video-title {
    bottom: 0;
    right: 0;
    margin: 15px;
    color: #fff;
    border-bottom: 1px solid;
    font-size: 1.2em;
    text-transform: uppercase;
    z-index: 3; }

.section-widget-video .video-frame .sound-icon,
.section-featured-video .video-frame .sound-icon {
  position: absolute;
  top: .25em;
  left: .5em;
  font-size: 3em;
  color: #000;
  z-index: 5; }

.section-widget-video .video-frame iframe, .section-widget-video .video-frame video,
.section-featured-video .video-frame iframe,
.section-featured-video .video-frame video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.section-widget-video.widget-loaded .inner:before, .section-widget-video.video-loaded .inner:before,
.section-featured-video.widget-loaded .inner:before,
.section-featured-video.video-loaded .inner:before {
  background: rgba(0, 0, 0, 0.5); }

.section-widget-video.widget-loaded .inner:after, .section-widget-video.video-loaded .inner:after,
.section-featured-video.widget-loaded .inner:after,
.section-featured-video.video-loaded .inner:after {
  opacity: 0;
  visibility: hidden; }

@media only screen and (min-width: 500px) {
  .section-widget-video .inner .video-title {
    margin: 60px; } }

.section-featured-video,
.section-widget-video {
  margin-top: 20px; }
  .section-featured-video .wrap,
  .section-widget-video .wrap {
    max-width: 100%;
    padding: 0 20px; }
  .section-featured-video .inner .video-title,
  .section-widget-video .inner .video-title {
    display: none; }

.viewall {
  text-align: center;
  display: inline-block;
  text-transform: uppercase;
  padding: 20px;
  font-weight: 700;
  font-size: 16px;
  font-family: "Futura", "Gotham SSm A", "Gotham SSm B", Verdana, Arial, sans-serif;
  margin: auto;
  width: calc(50% - 1em); }

/* Featured Promos */
.section-home-feature .widget-title {
  display: none; }

.section-widget-list {
  width: 100%;
  overflow: hidden;
  margin: 0;
  padding: 0;
  display: block; }
  .section-widget-list .wrap {
    width: 100%; }
    .section-widget-list .wrap .inner .widget-body .left, .section-widget-list .wrap .inner .widget-body .middle, .section-widget-list .wrap .inner .widget-body .right {
      float: left;
      width: 50%; }
      .section-widget-list .wrap .inner .widget-body .left img, .section-widget-list .wrap .inner .widget-body .middle img, .section-widget-list .wrap .inner .widget-body .right img {
        width: 100%; }
      .section-widget-list .wrap .inner .widget-body .left a, .section-widget-list .wrap .inner .widget-body .middle a, .section-widget-list .wrap .inner .widget-body .right a {
        position: relative;
        z-index: 99;
        padding: 32% 0; }
        .section-widget-list .wrap .inner .widget-body .left a:before, .section-widget-list .wrap .inner .widget-body .middle a:before, .section-widget-list .wrap .inner .widget-body .right a:before {
          content: '';
          background: rgba(4, 4, 4, 0.1);
          z-index: 5;
          position: absolute;
          left: 0;
          top: 0;
          height: 100%;
          width: 100%;
          transition: all 0.5s ease; }
        .section-widget-list .wrap .inner .widget-body .left a:hover:before, .section-widget-list .wrap .inner .widget-body .middle a:hover:before, .section-widget-list .wrap .inner .widget-body .right a:hover:before {
          background: none; }
    .section-widget-list .wrap .inner .widget-body .bottom {
      display: none;
      clear: both;
      width: 96%;
      position: relative;
      top: 20px;
      margin: auto;
      min-height: 89px; }
      .section-widget-list .wrap .inner .widget-body .bottom img {
        width: 100%; }
      .section-widget-list .wrap .inner .widget-body .bottom a {
        position: relative;
        z-index: 99;
        padding: 9.8% 0; }
        .section-widget-list .wrap .inner .widget-body .bottom a:before {
          content: '';
          background: rgba(4, 4, 4, 0.1);
          z-index: 5;
          position: absolute;
          left: 0;
          top: 0;
          height: 100%;
          width: 100%;
          transition: all 0.5s ease; }
        .section-widget-list .wrap .inner .widget-body .bottom a:hover:before {
          background: none; }

/* Social Media Links */
.section-home-socials .wrap {
  margin-top: 20px; }
  .section-home-socials .wrap ul {
    list-style-type: none;
    width: 100%;
    -webkit-margin-after: 0;
    -webkit-padding-start: 0;
    padding-after: 0;
    padding-start: 0;
    margin: 0;
    padding: 0;
    background: #040404; }
    .section-home-socials .wrap ul li {
      display: inline-block;
      margin-right: -4px;
      width: 16.66%;
      height: 100%;
      padding: 6% 0;
      position: relative; }
      .section-home-socials .wrap ul li:after {
        content: '';
        background: rgba(4, 4, 4, 0.5);
        z-index: 5;
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 100%;
        transition: all 0.5s ease; }
      .section-home-socials .wrap ul li.facebook {
        background: url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/memorial/social/facebook.jpg") no-repeat;
        background-size: 100%; }
        .section-home-socials .wrap ul li.facebook:hover:after {
          background: none; }
      .section-home-socials .wrap ul li.twitter {
        background: url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/memorial/social/twitter.jpg") no-repeat;
        background-size: 100%; }
        .section-home-socials .wrap ul li.twitter:hover:after {
          background: none; }
      .section-home-socials .wrap ul li.youtube {
        background: url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/memorial/social/youtube.jpg") no-repeat;
        background-size: 100%; }
        .section-home-socials .wrap ul li.youtube:hover:after {
          background: none; }
      .section-home-socials .wrap ul li.instagram {
        background: url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/memorial/social/instagram.jpg") no-repeat;
        background-size: 100%; }
        .section-home-socials .wrap ul li.instagram:hover:after {
          background: none; }
      .section-home-socials .wrap ul li.apple {
        background: url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/memorial/social/apple.jpg") no-repeat;
        background-size: 100%; }
        .section-home-socials .wrap ul li.apple:hover:after {
          background: none; }
      .section-home-socials .wrap ul li.spotify {
        background: url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/memorial/social/spotify.jpg") no-repeat;
        background-size: 100%; }
        .section-home-socials .wrap ul li.spotify:hover:after {
          background: none; }
      .section-home-socials .wrap ul li a {
        color: #fff;
        font-size: 2em;
        position: relative;
        z-index: 99;
        top: 100%;
        left: 0;
        right: 0;
        bottom: 0;
        padding: 43%; }

/* CMS Page */
.page-about {
  background: transparent url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/memorial/memorialbg.jpg") center/cover no-repeat; }

.page-memorial {
  background: transparent url("//static.wonderfulunion.net/groundctrl/clients/christina_grimmie/site/memorial/memorial-cms.jpg") center/cover no-repeat; }

.section-cms-page-header {
  display: none; }

.section-cms-page {
  position: relative;
  max-width: 600px;
  margin: 5em auto;
  padding: 2em;
  border: 1px solid #e2d7c2;
  line-height: 1.5;
  font-size: 1em; }
  .section-cms-page:before {
    position: absolute;
    content: "";
    display: block;
    margin: 0.5em;
    width: calc(100% - 2em);
    height: calc(100% - 2em);
    top: 0.5em;
    left: 0.5em;
    background: rgba(226, 215, 194, 0.75);
    z-index: -1; }
  .section-cms-page img {
    display: none; }
  .section-cms-page a {
    letter-spacing: 0.1em;
    text-decoration: none;
    color: #7e291a;
    text-align: center;
    display: block;
    width: 220px;
    margin: auto;
    padding: 8px 5px;
    font-family: "Gotham SSm A", "Gotham SSm B", Verdana, Arial, sans-serif;
    font-weight: 100;
    letter-spacing: .1em;
    font-size: 1.6em;
    font-style: italic;
    background-color: #c4b3aa; }
    .section-cms-page a:hover {
      opacity: 0.75; }

/**
 * Media
 * ====
 *
*/
/* Listing */
/* 3 Col Media Listing */
/* Vars */
/* Listing */
.section-media-list {
  /* Loaded */
  /* Placeholder */ }
  .section-media-list-loaded.ng-hide-remove {
    opacity: 0;
    transition: opacity 500ms; }
  .section-media-list-loaded.ng-hide-remove-active {
    opacity: 1; }
  .section-media-list ul {
    margin: 0;
    padding: 0;
    list-style-type: none; }
  .section-media-list .gallery-list:before, .section-media-list .gallery-list:after, .section-media-list .asset-list:before, .section-media-list .asset-list:after {
    display: table;
    content: " "; }
  .section-media-list .gallery-list:after, .section-media-list .asset-list:after {
    clear: both; }
  .section-media-list .gallery-item, .section-media-list .asset-item {
    position: relative;
    float: left;
    width: 100%;
    height: 0;
    margin: 0 0 18px 0;
    padding-bottom: 78%;
    overflow: hidden; }
    .section-media-list .gallery-item.no-image, .section-media-list .asset-item.no-image {
      background-image: url(none);
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover; }
  .section-media-list .image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: no-repeat top center/cover; }
    .section-media-list .image img {
      display: none; }
  .section-media-list .header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 10px;
    background: rgba(4, 4, 4, 0.75);
    opacity: 0;
    text-align: center;
    transition: opacity 250ms; }
    .section-media-list .header .title {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      margin: 0;
      font-size: 1em;
      text-transform: uppercase; }
      .section-media-list .header .title.no-title:before {
        content: 'View';
        color: #fff; }
      .section-media-list .header .title a {
        color: #fff; }
    .section-media-list .header .meta {
      display: none; }
  .section-media-list-loaded .item:hover .header {
    opacity: 1; }
  .section-media-list-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-media-list-placeholder .item {
    background-color: rgba(0, 0, 0, 0.1); }

.section-media-footer a {
  border-bottom: 1px solid;
  font-size: 0.8em;
  font-weight: 800;
  text-transform: uppercase; }

/* Show hover if touch device */
.touchevents .section-media-list .item .header {
  opacity: 1; }

@media only screen and (min-width: 330px) {
  .section-media-list .gallery-item, .section-media-list .asset-item {
    float: left;
    margin: 0 18px 18px 0;
    width: calc(50% - 9px);
    padding-bottom: 38%; }
    .section-media-list .gallery-item:nth-child(2n+2), .section-media-list .asset-item:nth-child(2n+2) {
      margin-right: 0; } }

@media only screen and (min-width: 768px) {
  .section-media-list .gallery-item, .section-media-list .asset-item {
    width: calc(33.33% - 12px);
    padding-bottom: 25%; }
    .section-media-list .gallery-item:nth-child(2n+2), .section-media-list .asset-item:nth-child(2n+2) {
      margin-right: 18px; }
    .section-media-list .gallery-item:nth-child(3n+3), .section-media-list .asset-item:nth-child(3n+3) {
      margin-right: 0; } }

@media only screen and (min-width: 815px) {
  .section-media-list .header .title {
    font-size: 1.4em; } }

.page-media section, .page-gallery section {
  margin: auto;
  max-width: 1200px; }
  .page-media section.section-widget-video, .page-gallery section.section-widget-video {
    max-width: 100%; }
  .page-media section.gradient-overlay:before, .page-gallery section.gradient-overlay:before {
    content: none; }
  .page-media section.section-header, .page-gallery section.section-header {
    text-transform: uppercase; }
    .page-media section.section-header h1, .page-gallery section.section-header h1 {
      font-size: 2em; }

.page-media .section-footer, .page-gallery .section-footer {
  text-align: right; }
  .page-media .section-footer a.viewall, .page-gallery .section-footer a.viewall {
    display: inline-block;
    padding: 0; }

/* Detail */
/* 1 Col Media Detail */
/* Vars */
/* Detail */
.section-media-asset {
  /* Placeholder */ }
  .section-media-asset-loaded.ng-enter {
    opacity: 0;
    transition: opacity 500ms; }
    .section-media-asset-loaded.ng-enter.ng-enter-active {
      opacity: 1; }
  .section-media-asset-loaded a {
    border-bottom: 1px solid;
    font-size: 0.8em;
    font-weight: 800;
    text-transform: uppercase; }
  .section-media-asset .figure, .section-media-asset .imbed {
    margin-bottom: 40px;
    text-align: center; }
  .section-media-asset .imbed .inner {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    /* 16:9 */ }
  .section-media-asset .imbed iframe, .section-media-asset .imbed video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }
  .section-media-asset .figure img {
    max-width: 100%;
    height: auto; }
  .section-media-asset .header {
    margin: 20px 0;
    text-align: center; }
    .section-media-asset .header .meta {
      display: none; }
  .section-media-asset .content {
    margin: 20px 0;
    text-align: center; }
  .section-media-asset .footer {
    margin-bottom: 40px;
    text-align: center; }
  .section-media-asset .meta-item-socials {
    display: none; }
  .section-media-asset-placeholder.ng-hide {
    position: absolute;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms;
    z-index: -1; }
  .section-media-asset-placeholder .image {
    display: block;
    width: 100%;
    height: 0;
    max-width: 800px;
    padding-bottom: 40%;
    margin: 0 auto;
    background-color: rgba(0, 0, 0, 0.1); }
  .section-media-asset-placeholder .imbed {
    background-color: rgba(0, 0, 0, 0.1); }
  .section-media-asset-placeholder .title, .section-media-asset-placeholder .content .inner {
    max-width: 600px;
    margin: 0 auto;
    background-color: rgba(0, 0, 0, 0.1); }

.page-asset .gradient-overlay:before {
  content: none; }

.page-asset .section-header {
  text-align: center; }

/**
 * Store
 * =====
 *
*/
.store .gradient-overlay:before {
  display: none; }

.store #main #GC {
  margin-top: 65px; }

.store .gallery-carousel .slide img {
  width: 100%;
  max-width: 1180px; }

/**
 * Footer
 * ======
 *
*/
/* Legal/Copyright Stuff */
.wu-footer {
  text-align: center;
  margin: 60px auto;
  font-size: 0.7em;
  width: 80%; }
  .wu-footer p {
    margin-bottom: 5px; }

/**
 * Error
 * =====
 *
*/
/* Animated 404 glitch style */
@-webkit-keyframes flicker {
  0% {
    opacity: 0.01; }
  25% {
    opacity: 0.01; }
  25.01% {
    opacity: 1; }
  26% {
    opacity: 1; }
  26.01% {
    opacity: 0.01; }
  50% {
    opacity: 0.01; }
  50.01% {
    opacity: 1; }
  58% {
    opacity: 1; }
  58.01% {
    opacity: 0.01; }
  70% {
    opacity: 0.01; }
  70.01% {
    opacity: 1; }
  72% {
    opacity: 1; }
  72.01% {
    opacity: 0.01; }
  75% {
    opacity: 0.01; }
  75.01% {
    opacity: 1; }
  80% {
    opacity: 1; }
  80.01% {
    opacity: 0.01; }
  90% {
    opacity: 0.01; }
  90.01% {
    opacity: 1; }
  95% {
    opacity: 1; }
  95.01% {
    opacity: 0.01; }
  100% {
    opacity: 0.01; } }
@keyframes flicker {
  0% {
    opacity: 0.01; }
  25% {
    opacity: 0.01; }
  25.01% {
    opacity: 1; }
  26% {
    opacity: 1; }
  26.01% {
    opacity: 0.01; }
  50% {
    opacity: 0.01; }
  50.01% {
    opacity: 1; }
  58% {
    opacity: 1; }
  58.01% {
    opacity: 0.01; }
  70% {
    opacity: 0.01; }
  70.01% {
    opacity: 1; }
  72% {
    opacity: 1; }
  72.01% {
    opacity: 0.01; }
  75% {
    opacity: 0.01; }
  75.01% {
    opacity: 1; }
  80% {
    opacity: 1; }
  80.01% {
    opacity: 0.01; }
  90% {
    opacity: 0.01; }
  90.01% {
    opacity: 1; }
  95% {
    opacity: 1; }
  95.01% {
    opacity: 0.01; }
  100% {
    opacity: 0.01; } }

/* Detail */
.page-404 .page {
  background: #fff; }

.section-error {
  display: block;
  margin: 0;
  padding: 0;
  text-align: center; }
  .section-error .wrap {
    max-width: 100%;
    padding: 0; }
  .section-error-header {
    display: none; }
  .section-error .figure {
    position: relative;
    padding-bottom: 59%; }
    .section-error .figure .image {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("//static.wonderfulunion.net/groundctrl/clients/wonderful-union/error/error1.png") no-repeat center/contain; }
      .section-error .figure .image:after {
        content: '';
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: url("//static.wonderfulunion.net/groundctrl/clients/wonderful-union/error/error2.jpg") no-repeat center/contain;
        opacity: 0.01;
        -webkit-animation-name: flicker;
                animation-name: flicker;
        -webkit-animation-duration: 6s;
                animation-duration: 6s;
        -webkit-animation-timing-function: linear;
                animation-timing-function: linear;
        -webkit-animation-iteration-count: infinite;
                animation-iteration-count: infinite; }
  .section-error .content {
    max-width: 700px;
    margin: 0 auto;
    padding: 2em 10px 4em; }
  .section-error p {
    margin-bottom: 0;
    color: #ec1c24;
    font-size: 23px;
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; }
  .section-error a {
    color: #000;
    text-decoration: underline;
    text-transform: uppercase;
    font-weight: bold;
    transition: color 250ms; }
    .section-error a:hover {
      color: #808080; }

/**
 * Responsive
 * ==========
 *
*/
@media only screen and (min-width: 1250px) {
  .section-widget-list .wrap .inner .widget-body .left a, .section-widget-list .wrap .inner .widget-body .middle a, .section-widget-list .wrap .inner .widget-body .right a {
    padding: 32.5% 0; }
  .section-widget-list .wrap .inner .widget-body .bottom a {
    padding: 10% 0; } }

@media only screen and (max-width: 1100px) {
  .section-home-slider .wrap .static-caption {
    top: calc(50% - 80px);
    left: 10%; } }

@media only screen and (max-width: 900px) {
  .section-widget-list .wrap .inner .widget-body .left a, .section-widget-list .wrap .inner .widget-body .middle a, .section-widget-list .wrap .inner .widget-body .right a {
    padding: 31% 0; }
  .section-widget-list .wrap .inner .widget-body .bottom a {
    padding: 9% 0; }
  .section-home-slider .wrap .static-caption {
    width: 80%;
    top: calc(50% - 50px);
    left: 50%;
    transform: translate(-56%, -50%); } }

@media only screen and (max-width: 800px) {
  .section-header-navigation .wrap .half {
    margin-right: 20px; }
  .gradient-overlay:before {
    z-index: 1; }
  .section-widget-list {
    margin: 20px 0 0 0;
    width: 100%; }
    .section-widget-list .wrap .inner .widget-body .left, .section-widget-list .wrap .inner .widget-body .middle, .section-widget-list .wrap .inner .widget-body .right {
      float: none;
      width: 100%; }
      .section-widget-list .wrap .inner .widget-body .left a, .section-widget-list .wrap .inner .widget-body .middle a, .section-widget-list .wrap .inner .widget-body .right a {
        padding: 32.3% 0; }
    .section-widget-list .wrap .inner .widget-body .bottom {
      width: 100%;
      padding: 0;
      margin: 0; }
      .section-widget-list .wrap .inner .widget-body .bottom a {
        padding: 9.5% 0; }
  .section-home-socials .wrap {
    margin-top: 20px; }
    .section-home-socials .wrap ul li {
      width: 33.33%;
      padding: 12% 0; }
      .section-home-socials .wrap ul li a {
        top: 40%;
        padding: 45%; } }

@media only screen and (max-width: 600px) {
  .section-home-slider .wrap .static-caption {
    top: 50%; }
  .section-widget-list .wrap .inner .widget-body .bottom a {
    padding: 9% 0; }
  .wu-footer {
    max-width: 100%;
    max-width: 250px; } }

@media only screen and (max-width: 400px) {
  a.viewall {
    font-size: 1em;
    padding: 15px 0 0 0; }
  .section-widget-list .wrap .inner .widget-body .left a, .section-widget-list .wrap .inner .widget-body .right a {
    padding: 31.5% 0; }
  .section-widget-list .wrap .inner .widget-body .bottom a {
    padding: 8% 0; }
  .section-home-socials .wrap ul li {
    padding: 10% 0; }
    .section-home-socials .wrap ul li a {
      top: 35%;
      padding: 40%; } }

/*# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFpbi5jc3MiLCJzb3VyY2VzIjpbIm1haW4uc2NzcyIsInZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zdHlsZXMvYXBwLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvYWNjZXNzaWJpbGl0eS9hY2Nlc3NpYmlsaXR5LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvYW5ndWxhci9hbmd1bGFyLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvb2xkX2Jyb3dzZXJfbWVzc2FnZS9vbGQtYnJvd3Nlci1tZXNzYWdlLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvc3BsYXNoX3BhZ2Uvc3BsYXNoLXBhZ2Uuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy9zdHlsZV9oZWxwZXJzL2hlbHBlcnMuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy9mYWxsYmFjay9tYXN0ZXItZmFsbGJhY2stYmlydGhkYXkuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy9mYWxsYmFjay9tYXN0ZXItZmFsbGJhY2stcmVzZXQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy90aGVtZS1pbXBvcnQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy92YXJpYWJsZXMvdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYXZhdGFyL2F2YXRhci5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL21peGlucy9taXhpbnMuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9nbG9iYWxzL2dsb2JhbHMuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9zdG9yZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL21peGluL2ZsYWdlZC1wcm9kdWN0LWxpc3RpbmctbWl4aW4uc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9taXhpbi9nZW5lcmFsLXByb2R1Y3QtbGlzdGluZy1taXhpbi5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL2dsb2JhbC9zdG9yZS1nbG9iYWwuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9iaWxsaW5nLzItY29sLWJpbGxpbmctbGlzdGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL2NhcnQvY2FydC10YWJsZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL2NhdGVnb3JpZXMvM3gtY2F0ZWdvcmllcy1ncmlkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvY2F0ZWdvcmllcy9jYXRlZ29yaWVzLW5hdi1saXN0LnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvY2F0ZWdvcnkvMy1jb2wtY2F0ZWdvcnktZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL29yZGVyL2V4dHJhLzEtY29sLW9yZGVyLWV4dHJhLWxpc3Rpbmcuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9vcmRlci9wYXltZW50LzEtY29sLW9yZGVyLXBheW1lbnQtdGFibGUuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9vcmRlci93aWxsY2FsbC8xLWNvbC1vcmRlci13aWxsLWNhbGwtbGlzdGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3BhcnRpYWxzL2FzaWRlLzEtY29sLWFzaWRlLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvcGFydGlhbHMvbWV0YS9tZXRhLXJvdy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3BhcnRpYWxzL3Byb2dyZXNzL3Byb2dyZXNzLWluZGljYXRvci1yb3cuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9wcm9kdWN0L2RldGFpbC8yLWNvbC1wcm9kdWN0LWRldGFpbC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL3N0b3JlL3Byb2R1Y3QvbGlzdGluZy8yLWNvbC1wcm9kdWN0LWdyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9zdG9yZS9wcm9kdWN0L2xpc3RpbmcvMy1jb2wtcHJvZHVjdC1ncmlkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3Mvc3RvcmUvc2hpcHBpbmcvMi1jb2wtc2hpcHBpbmctbGlzdGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvYWNjb3VudC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvZ2xvYmFsL2FjY291bnQtZ2xvYmFsLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9hZGRyZXNzLzItY29sLWFkZHJlc3MtZGFzaGJvYXJkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9kYXNoYm9hcmQvMi1jb2wtYWNjb3VudC1kYXNoYm9hcmQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L2xpbmtlZC1hY2NvdW50LzItY29sLWxpbmtlZC1hY2NvdW50LWRhc2hib2FyZC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2FjY291bnQvbWFuYWdlLWFjY291bnQvMi1jb2wtbWFuYWdlLXByb2ZpbGUtZGFzaGJvYXJkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9tYW5hZ2UtYXZhdGFyLzItY29sLWF2YXRhci1kYXNoYm9hcmQuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L25vdGlmaWNhdGlvbnMvMi1jb2wtbWFuYWdlLW5vdGlmaWNhdGlvbnMtZGFzaGJvYXJkLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvYWNjb3VudC9vcmRlcnMvZGV0YWlsL211bHRpLXJvdy1vcmRlci1kZXRhaWwuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L29yZGVycy9saXN0aW5nLzItY29sLW9yZGVyLWxpc3Rpbmcuc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9hY2NvdW50L3BhcnRpYWxzL25hdmlnYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy91bmlvbi9zcmMvc2Nzcy9oZWFkZXIvaGVhZGVyLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvZm9vdGVyL2Zvb3Rlci5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL3VuaW9uL3NyYy9zY3NzL2hvbWUvaG9tZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy93aWRnZXRzL2Z1bGwtd2lkdGgtcmVzcG9uc2l2ZS1jYXJvdXNlbC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9fYm9vdHN0cmFwLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fdmFyaWFibGVzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWl4aW5zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2hpZGUtdGV4dC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19vcGFjaXR5LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2ltYWdlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2xhYmVscy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNldC1maWx0ZXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcmVzaXplLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3Jlc3BvbnNpdmUtdmlzaWJpbGl0eS5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19zaXplLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RhYi1mb2N1cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19yZXNldC10ZXh0LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3RleHQtZW1waGFzaXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGV4dC1vdmVyZmxvdy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL192ZW5kb3ItcHJlZml4ZXMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fYWxlcnRzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2J1dHRvbnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fcGFuZWxzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbGlzdC1ncm91cC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19uYXYtZGl2aWRlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19mb3Jtcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19wcm9ncmVzcy1iYXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fdGFibGUtcm93LnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2JhY2tncm91bmQtdmFyaWFudC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19ib3JkZXItcmFkaXVzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyYWRpZW50cy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jbGVhcmZpeC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvbWl4aW5zL19jZW50ZXItYmxvY2suc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL21peGlucy9fbmF2LXZlcnRpY2FsLWFsaWduLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQtZnJhbWV3b3JrLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9taXhpbnMvX2dyaWQuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19ub3JtYWxpemUuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wcmludC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2dseXBoaWNvbnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19zY2FmZm9sZGluZy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3R5cGUuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jb2RlLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZ3JpZC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RhYmxlcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2Zvcm1zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYnV0dG9ucy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2NvbXBvbmVudC1hbmltYXRpb25zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fZHJvcGRvd25zLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fYnV0dG9uLWdyb3Vwcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2lucHV0LWdyb3Vwcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX25hdnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19uYXZiYXIuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19icmVhZGNydW1icy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3BhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wYWdlci5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2xhYmVscy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2JhZGdlcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX2p1bWJvdHJvbi5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3RodW1ibmFpbHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19hbGVydHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19wcm9ncmVzcy1iYXJzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fbWVkaWEuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19saXN0LWdyb3VwLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcGFuZWxzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcmVzcG9uc2l2ZS1lbWJlZC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3dlbGxzLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fY2xvc2Uuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19tb2RhbHMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL190b29sdGlwLnNjc3MiLCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcC9fcG9wb3ZlcnMuc2NzcyIsIi4uLy4uLy4uLy4uL25vZGVfbW9kdWxlcy9ib290c3RyYXAtc2Fzcy9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL19jYXJvdXNlbC5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3V0aWxpdGllcy5zY3NzIiwiLi4vLi4vLi4vLi4vbm9kZV9tb2R1bGVzL2Jvb3RzdHJhcC1zYXNzL2Fzc2V0cy9zdHlsZXNoZWV0cy9ib290c3RyYXAvX3Jlc3BvbnNpdmUtdXRpbGl0aWVzLnNjc3MiLCIuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS9mdXR1cmEvc3R5bGVzaGVldC5zY3NzIiwiLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvd3Utc29jaWFsLWljb25zL2NpcmNsZS9zdHlsZS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy93aWRnZXRzL3BhZ2UtZmFkZS10cmFuc2l0aW9uLnNjc3MiLCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3dpZGdldHMvc2ltcGxlLXBhZ2luYXRpb24uc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvd2lkZ2V0cy9jYXJvdXNlbC1mYWRlLWFuaW1hdGlvbi5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy91aS92aWRlby1mdWxsd2lkdGgtb3ZlcmxheS5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9tZWRpYS9saXN0aW5nLzMtY29sLW1lZGlhLWxpc3Quc2NzcyIsIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvbWVkaWEvZGV0YWlsLzEtY29sLW1lZGlhLWRldGFpbC5zY3NzIiwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9lcnJvci9hbmltYXRlZC00MDQuc2NzcyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFdvbmRlcmZ1bCBVbmlvblxuICogT3JpZ2luIFRoZW1lXG4qL1xuXG4vKiBPcmlnaW4gRGVwZW5kZW5jaWVzICovXG5AaW1wb3J0IFwiLi92YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3N0eWxlcy9hcHBcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvdW5pb24vc3JjL3Njc3MvdGhlbWUtaW1wb3J0LnNjc3NcIjtcbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi9ub2RlX21vZHVsZXMvYm9vdHN0cmFwLXNhc3MvYXNzZXRzL3N0eWxlc2hlZXRzL2Jvb3RzdHJhcFwiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL2Z1dHVyYS9zdHlsZXNoZWV0LnNjc3NcIjtcblxuLyogSWNvbnMgKi9cbi8vIEBpbXBvcnQgXCIuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS9zc19zb2NpYWxfY2lyY2xlL3N0eWxlc2hlZXQuc2Nzc1wiO1xuQGltcG9ydCBcIi4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL3d1LXNvY2lhbC1pY29ucy9jaXJjbGUvc3R5bGUuc2Nzc1wiO1xuXG4vKiBNYXN0ZXIgVGhlbWUgU3RvcmUgRmFsbGJhY2sgKi9cbkBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvZmFsbGJhY2svbWFzdGVyLWZhbGxiYWNrLXJlc2V0XCI7XG5cblxuLyogRm9udHMgKi9cbmJvZHkge1xuICBmb250LWZhbWlseTogJ0dvdGhhbSBTU20gQScsICdHb3RoYW0gU1NtIEInO1xuICBiYWNrZ3JvdW5kOiAkd2hpdGU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xufVxuYSB7XG4gICY6aG92ZXIge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuKiwgYSB7XG4gICY6Zm9jdXMge1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxufVxuXG4vKipcbiAqIEdlbmVyYWxcbiAqID09PT09PT1cbiAqXG4qL1xuXG4gIC8qIFBhZ2UgVHJhbnNpdGlvbiAqL1xuICBAaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy93aWRnZXRzL3BhZ2UtZmFkZS10cmFuc2l0aW9uXCI7XG5cbiAgLyogR3JpZCAqL1xuICAucGFnZSB7XG4gICAgbWluLWhlaWdodDogY2FsYygxMDB2aCAtIDE1MHB4KTtcblxuICAgIC53cmFwIHtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICAvKiBMb2FkaW5nIEluZGljYXRvciAqL1xuICAjbG9hZGluZy1iYXIge1xuICAgIC5iYXIge1xuICAgICAgYmFja2dyb3VuZDogJGRhcmtHcmF5O1xuICAgIH1cbiAgICAucGVnIHtcbiAgICAgIGJveC1zaGFkb3c6ICRkYXJrR3JheTtcbiAgICB9XG4gIH1cbiAgI2xvYWRpbmctYmFyLXNwaW5uZXIge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvKiBQYWdpbmF0aW9ucyAqL1xuICAkYWN0aXZlLXBhZ2UtYmc6ICRkYXJrR3JheTtcbiAgJGFjdGl2ZS1wYWdlLWNvbG9yOiAkd2hpdGU7XG4gIEBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL3dpZGdldHMvc2ltcGxlLXBhZ2luYXRpb25cIjtcblxuICAvKiBDTVMgUGFnZSAqL1xuICAuc2VjdGlvbi1jbXMtcGFnZSB7XG4gICAgLndyYXAge1xuICAgICAgbWF4LXdpZHRoOiA4MDBweDtcbiAgICB9XG4gICAgZW0ge1xuICAgICAgZm9udC1mYW1pbHk6IFwiZnJlaWdodC1kaXNwbGF5LXByb1wiLCBzZXJpZjtcbiAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgZm9udC1zaXplOiAxLjVlbTtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgfVxuICAgICYtY29udGVudCB7XG4gICAgICBmb250LXNpemU6IDEuMmVtO1xuXG4gICAgICBhIHtcbiAgICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICB9XG4gICAgfVxuICB9XG5cblxuLyoqXG4gKiBIZWFkZXJcbiAqID09PT09PVxuICpcbiovXG5cbiAgLnNlY3Rpb24taGVhZGVyLW5hdmlnYXRpb24ge1xuICAgIC53cmFwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgICAgcGFkZGluZy1ib3R0b206IDEwcHg7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB6LWluZGV4OiA5OTk5O1xuXG4gICAgICAuaGFsZiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1MHB4O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgICAgICAgICBtYXJnaW46IDAgMTBweDtcbiAgICAgICAgICBmb250LXNpemU6IDEwcHg7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgICAgICBsZXR0ZXItc3BhY2luZzogMC4xZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6IDc2MHB4KSB7XG4gICAgLnNlY3Rpb24taGVhZGVyLW5hdmlnYXRpb24ge1xuICAgICAgLndyYXAge1xuICAgICAgICAuaGFsZiB7XG4gICAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgICBhIHtcbiAgICAgICAgICAgIG1hcmdpbjogMCAxNXB4O1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIEdyYWRpZW50IE92ZXJsYXkgKi9cbiAgLmdyYWRpZW50LW92ZXJsYXkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHRvcDogMDtcbiAgICAgIHotaW5kZXg6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTYwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiBsaW5lYXItZ3JhZGllbnQodG8gdG9wLCByZ2JhKDI1NSwyNTUsMjU1LDApIDAlLCByZ2JhKDI1NSwyNTUsMjU1LDAuOCkgODAlKTtcbiAgICAgIHotaW5kZXg6IDk5OTtcbiAgICB9XG4gIH1cblxuXG4vKipcbiAqIEhvbWVcbiAqID09PT1cbiAqXG4qL1xuXG4gIC8qIFNsaWRlciAqL1xuICAkaGVpZ2h0LXBlcmNlbnRhZ2U6IDY1JTtcbiAgQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvd2lkZ2V0cy9mdWxsLXdpZHRoLXJlc3BvbnNpdmUtY2Fyb3VzZWxcIjtcbiAgQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvd2lkZ2V0cy9jYXJvdXNlbC1mYWRlLWFuaW1hdGlvblwiO1xuICAgIC5zZWN0aW9uLWhvbWUtc2xpZGVyIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAud3JhcCB7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHotaW5kZXg6IDE7XG5cbiAgICAgICAgLnN0YXRpYy1jYXB0aW9uIHtcbiAgICAgICAgICBtYXgtd2lkdGg6NTM3cHg7XG4gICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDEyMHB4KTtcbiAgICAgICAgICBsZWZ0OiAxMCU7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGVZKC01MCUpO1xuICAgICAgICAgIHotaW5kZXg6IDk7XG5cbiAgICAgICAgICBAbWVkaWEgKG1heC13aWRodDogNzUwcHgpIHtcbiAgICAgICAgICAgIHRvcDogNDAlO1xuICAgICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIC5zZWN0aW9uLXdpZGdldC1saXN0LWhvbWUtbGlzdCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMud29uZGVyZnVsdW5pb24ubmV0L2dyb3VuZGN0cmwvY2xpZW50cy9jaHJpc3RpbmFfZ3JpbW1pZS9zaXRlL2hvbWVwYWdlL2JveC5zdmcnKSBuby1yZXBlYXQgY2VudGVyLzEwMCU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDM1cHggMDtcblxuICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogOTAwcHgpIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA2MHB4IDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaDEge1xuICAgICAgICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgICAgICAgICAgIGZvbnQtZmFtaWx5OiBcImZyZWlnaHQtZGlzcGxheS1wcm9cIiwgc2VyaWY7XG4gICAgICAgICAgICAgICAgY29sb3I6JHJlZDtcbiAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgICAgICAgICAgICAgZm9udC1zaXplOiAyLjR2dztcbiAgICAgICAgICAgICAgICBmb250LXdlaWdodDogMTAwO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIChtYXgtd2lkdGg6OTAwcHgpe1xuICAgICAgICAgICAgICAgICAgZm9udC1zaXplOjI4cHg7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tdG9wOiAwcHg7XG4gICAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxNXB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDogNzUwcHgpIHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgcCB7XG4gICAgICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDEwMDtcbiAgICAgICAgICAgICAgICBmb250LXNpemU6MS41dnc7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXRvcDowcHg7XG4gICAgICAgICAgICAgICAgZm9udC1mYW1pbHk6ICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgICAgICAgICAgIGNvbG9yOiRibGFjaztcbiAgICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOjI1cHg7XG5cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDo5MDBweCl7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6MjBweDtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbi1ib3R0b206MHB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAbWVkaWEgKG1heC13aWR0aDo1MDBweCl7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6MTZweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24tY2Fyb3VzZWwge1xuICAgICAgLmNhcm91c2VsLWNvbnRyb2wge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuXG4gIC8qIFB1cmNoYXNlIEJhciAqL1xuICAuc2VjdGlvbi1wdXJjaGFzZS1iYXIge1xuICAgIGxpbmUtaGVpZ2h0OiAwO1xuXG4gICAgJi1oZWFkZXIge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBmb250LXNpemU6IDEuNzVlbTtcbiAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBwYWRkaW5nOiAxLjVlbSAwO1xuXG4gICAgICAud2lkZ2V0LXRpdGxlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuICAgIC53aWRnZXQtaXRlbSB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcGFkZGluZy1ib3R0b206IGNhbGMoMTAwJSAvIDMpO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDMpO1xuXG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLmltYWdlIHtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC53aWRnZXQtYm9keSB7XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC41KTtcbiAgICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDI1MG1zIGVhc2UtaW47XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDI7XG5cbiAgICAgIGEge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAyLjVlbTtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgIH1cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgdHJhbnNpdGlvbjogYmFja2dyb3VuZCAyNTBtcyBlYXNlLWluO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiA4MDBweCkge1xuICAgIC5zZWN0aW9uLXB1cmNoYXNlLWJhciB7XG4gICAgICAuc2VjdGlvbi13aWRnZXQtbGlzdC1wdXJjaGFzZS1iYXIge1xuICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgZm9udC1zaXplOiAxLjc1ZW07XG4gICAgICAgICAgcGFkZGluZzogMmVtIDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC53aWRnZXQtaXRlbSB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiBjYWxjKDEwMCUgLyA1KTtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAvIDUpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbiAgLyogVmlkZW8gKi9cbiAgJGZvbnQtY29sb3I6ICR3aGl0ZTtcbiAgQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvdWkvdmlkZW8tZnVsbHdpZHRoLW92ZXJsYXlcIjtcbiAgICAuc2VjdGlvbi1mZWF0dXJlZC12aWRlbyxcbiAgICAuc2VjdGlvbi13aWRnZXQtdmlkZW8ge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgLndyYXAge1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIH1cbiAgICAgIC5pbm5lciB7XG4gICAgICAgIC52aWRlby10aXRsZSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAudmlld2FsbCB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgcGFkZGluZzogMjBweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiA3MDA7XG4gICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICBmb250LWZhbWlseTogJ0Z1dHVyYScsICRmb250LWZhbWlseS1iYXNlO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgd2lkdGg6IGNhbGMoNTAlIC0gMWVtKTtcbiAgICB9XG5cbiAgLyogRmVhdHVyZWQgUHJvbW9zICovXG4gIC5zZWN0aW9uLWhvbWUtZmVhdHVyZSB7XG4gICAgLndpZGdldC10aXRsZSB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi13aWRnZXQtbGlzdCB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgIC53cmFwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAuaW5uZXIge1xuICAgICAgICAud2lkZ2V0LWJvZHkge1xuICAgICAgICAgIC5sZWZ0LCAubWlkZGxlLCAucmlnaHQge1xuICAgICAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGEge1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAzMiUgMDtcblxuICAgICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogcmdiYSgkYmxhY2ssIDAuMSk7XG4gICAgICAgICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgbGVmdDogMDtcbiAgICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIHRyYW5zaXRpb246IGFsbCAwLjVzIGVhc2U7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgJjpob3ZlcjpiZWZvcmUge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmJvdHRvbSB7XG4gICAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgICAgICB3aWR0aDogOTYlO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgdG9wOiAyMHB4O1xuICAgICAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICAgICAgbWluLWhlaWdodDogODlweDtcblxuICAgICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICB6LWluZGV4OiA5OTtcbiAgICAgICAgICAgICAgcGFkZGluZzogOS44JSAwO1xuXG4gICAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiByZ2JhKCRibGFjaywgMC4xKTtcbiAgICAgICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgICAgICBsZWZ0OiAwO1xuICAgICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAmOmhvdmVyOmJlZm9yZSB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qIFNvY2lhbCBNZWRpYSBMaW5rcyAqL1xuICAgIC5zZWN0aW9uLWhvbWUtc29jaWFscyB7XG4gICAgICAud3JhcCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAgICAgdWwge1xuICAgICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAtd2Via2l0LW1hcmdpbi1hZnRlcjogMDtcbiAgICAgICAgICAtd2Via2l0LXBhZGRpbmctc3RhcnQ6IDA7XG4gICAgICAgICAgcGFkZGluZy1hZnRlcjogMDtcbiAgICAgICAgICBwYWRkaW5nLXN0YXJ0OiAwO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJhY2tncm91bmQ6ICRibGFjaztcblxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgICAgIG1hcmdpbi1yaWdodDogLTRweDtcbiAgICAgICAgICAgIHdpZHRoOiAxNi42NiU7XG4gICAgICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgICAgICBwYWRkaW5nOiA2JSAwO1xuICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6IHJnYmEoJGJsYWNrLCAwLjUpO1xuICAgICAgICAgICAgICB6LWluZGV4OiA1O1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbjogYWxsIDAuNXMgZWFzZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuZmFjZWJvb2sge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLndvbmRlcmZ1bHVuaW9uLm5ldC9ncm91bmRjdHJsL2NsaWVudHMvY2hyaXN0aW5hX2dyaW1taWUvc2l0ZS9tZW1vcmlhbC9zb2NpYWwvZmFjZWJvb2suanBnJykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cbiAgICAgICAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi50d2l0dGVyIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL2NocmlzdGluYV9ncmltbWllL3NpdGUvbWVtb3JpYWwvc29jaWFsL3R3aXR0ZXIuanBnJykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cbiAgICAgICAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi55b3V0dWJlIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL2NocmlzdGluYV9ncmltbWllL3NpdGUvbWVtb3JpYWwvc29jaWFsL3lvdXR1YmUuanBnJykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cbiAgICAgICAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5pbnN0YWdyYW0ge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLndvbmRlcmZ1bHVuaW9uLm5ldC9ncm91bmRjdHJsL2NsaWVudHMvY2hyaXN0aW5hX2dyaW1taWUvc2l0ZS9tZW1vcmlhbC9zb2NpYWwvaW5zdGFncmFtLmpwZycpIG5vLXJlcGVhdDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1zaXplOiAxMDAlO1xuXG4gICAgICAgICAgICAgICY6aG92ZXI6YWZ0ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6IG5vbmU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICYuYXBwbGUge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB1cmwoJy8vc3RhdGljLndvbmRlcmZ1bHVuaW9uLm5ldC9ncm91bmRjdHJsL2NsaWVudHMvY2hyaXN0aW5hX2dyaW1taWUvc2l0ZS9tZW1vcmlhbC9zb2NpYWwvYXBwbGUuanBnJykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cbiAgICAgICAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgJi5zcG90aWZ5IHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL2NocmlzdGluYV9ncmltbWllL3NpdGUvbWVtb3JpYWwvc29jaWFsL3Nwb3RpZnkuanBnJykgbm8tcmVwZWF0O1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kLXNpemU6IDEwMCU7XG5cbiAgICAgICAgICAgICAgJjpob3ZlcjphZnRlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMmVtO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAgICAgICB0b3A6IDEwMCU7XG4gICAgICAgICAgICAgIGxlZnQ6IDA7XG4gICAgICAgICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICAgICAgICBib3R0b206IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDQzJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgLyogQ01TIFBhZ2UgKi9cbiAgLnBhZ2UtYWJvdXQge1xuICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50IHVybCgnLy9zdGF0aWMud29uZGVyZnVsdW5pb24ubmV0L2dyb3VuZGN0cmwvY2xpZW50cy9jaHJpc3RpbmFfZ3JpbW1pZS9zaXRlL21lbW9yaWFsL21lbW9yaWFsYmcuanBnJykgY2VudGVyL2NvdmVyIG5vLXJlcGVhdDtcbiAgfVxuICAucGFnZS1tZW1vcmlhbCB7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL2NocmlzdGluYV9ncmltbWllL3NpdGUvbWVtb3JpYWwvbWVtb3JpYWwtY21zLmpwZycpIGNlbnRlci9jb3ZlciBuby1yZXBlYXQ7XG4gIH1cbiAgLnNlY3Rpb24tY21zLXBhZ2UtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5zZWN0aW9uLWNtcy1wYWdlIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgbWF4LXdpZHRoOiA2MDBweDtcbiAgICBtYXJnaW46IDVlbSBhdXRvO1xuICAgIHBhZGRpbmc6IDJlbTtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjZTJkN2MyO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG4gICAgZm9udC1zaXplOiAxZW07XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICBjb250ZW50OiBcIlwiO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBtYXJnaW46IDAuNWVtO1xuICAgICAgd2lkdGg6IGNhbGMoMTAwJSAtIDJlbSk7XG4gICAgICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDJlbSk7XG4gICAgICB0b3A6IDAuNWVtO1xuICAgICAgbGVmdDogMC41ZW07XG4gICAgICBiYWNrZ3JvdW5kOiByZ2JhKCNlMmQ3YzIsIDAuNzUpO1xuICAgICAgei1pbmRleDogLTE7XG4gICAgfVxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGxldHRlci1zcGFjaW5nOiAwLjFlbTtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgIGNvbG9yOiAkcmVkO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMjIwcHg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBwYWRkaW5nOiA4cHggNXB4O1xuICAgICAgZm9udC1mYW1pbHk6JGZvbnQtZmFtaWx5LWJhc2U7XG4gICAgICBmb250LXdlaWdodDogMTAwO1xuICAgICAgbGV0dGVyLXNwYWNpbmc6IC4xZW07XG4gICAgICBmb250LXNpemU6IDEuNmVtO1xuICAgICAgZm9udC1zdHlsZTogaXRhbGljO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2M0YjNhYTtcblxuICAgICAgJjpob3ZlcntcbiAgICAgICAgb3BhY2l0eTowLjc1O1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG5cbi8qKlxuICogTWVkaWFcbiAqID09PT1cbiAqXG4qL1xuXG4gIC8qIExpc3RpbmcgKi9cbiAgJGFzc2V0LWJnLWhvdmVyOiByZ2JhKCRibGFjaywgMC43NSk7XG4gICRhc3NldC10aXRsZS1jb2xvcjogJHdoaXRlO1xuICBAaW1wb3J0IFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy9tZWRpYS9saXN0aW5nLzMtY29sLW1lZGlhLWxpc3Quc2Nzc1wiO1xuICAucGFnZS1tZWRpYSwgLnBhZ2UtZ2FsbGVyeSB7XG4gICAgc2VjdGlvbiB7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBtYXgtd2lkdGg6IDEyMDBweDtcblxuICAgICAgJi5zZWN0aW9uLXdpZGdldC12aWRlbyB7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICAgICYuZ3JhZGllbnQtb3ZlcmxheSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnNlY3Rpb24taGVhZGVyIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICBoMSB7XG4gICAgICAgICAgZm9udC1zaXplOiAyZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24tZm9vdGVyIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuXG4gICAgICBhLnZpZXdhbGwge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgLyogRGV0YWlsICovXG4gIEBpbXBvcnQgXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3NyYy9zdHlsZXMvdGVtcGxhdGVzL21lZGlhL2RldGFpbC8xLWNvbC1tZWRpYS1kZXRhaWwuc2Nzc1wiO1xuICAucGFnZS1hc3NldCB7XG4gICAgLmdyYWRpZW50LW92ZXJsYXkge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuc2VjdGlvbi1oZWFkZXIge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuXG4vKipcbiAqIFN0b3JlXG4gKiA9PT09PVxuICpcbiovXG5cbiAgLnN0b3JlIHtcbiAgICAuZ3JhZGllbnQtb3ZlcmxheSB7XG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgICNtYWluIHtcbiAgICAgICNHQyB7XG4gICAgICAgIG1hcmdpbi10b3A6IDY1cHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5nYWxsZXJ5LWNhcm91c2VsIHtcbiAgICAgIC5zbGlkZSB7XG4gICAgICAgIGltZyB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgbWF4LXdpZHRoOiAxMTgwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuXG4vKipcbiAqIEZvb3RlclxuICogPT09PT09XG4gKlxuKi9cblxuICAvKiBMZWdhbC9Db3B5cmlnaHQgU3R1ZmYgKi9cbiAgLnd1LWZvb3RlciB7XG4gICAgdGV4dC1hbGlnbjpjZW50ZXI7XG4gICAgbWFyZ2luOiA2MHB4IGF1dG87XG4gICAgZm9udC1zaXplOiAwLjdlbTtcbiAgICB3aWR0aDogODAlO1xuICAgIC8vIG1heC13aWR0aDogMzAwcHg7XG5cbiAgICBwIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDVweDtcbiAgICB9XG4gIH1cblxuXG4vKipcbiAqIEVycm9yXG4gKiA9PT09PVxuICpcbiovXG5cbiAgQGltcG9ydCBcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vc3JjL3N0eWxlcy90ZW1wbGF0ZXMvZXJyb3IvYW5pbWF0ZWQtNDA0XCI7XG5cblxuLyoqXG4gKiBSZXNwb25zaXZlXG4gKiA9PT09PT09PT09XG4gKlxuKi9cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAxMjUwcHgpIHtcbiAgICAuc2VjdGlvbi13aWRnZXQtbGlzdCB7XG4gICAgICAud3JhcCB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgLndpZGdldC1ib2R5IHtcbiAgICAgICAgICAgIC5sZWZ0LCAubWlkZGxlLCAucmlnaHQge1xuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMi41JSAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm90dG9tIHtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMTAlIDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiAxMTAwcHgpIHtcbiAgICAuc2VjdGlvbi1ob21lLXNsaWRlciB7XG4gICAgICAud3JhcCB7XG4gICAgICAgIC5zdGF0aWMtY2FwdGlvbiB7XG4gICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDgwcHgpO1xuICAgICAgICAgIGxlZnQ6IDEwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDkwMHB4KSB7XG4gICAgLnNlY3Rpb24td2lkZ2V0LWxpc3Qge1xuICAgICAgLndyYXAge1xuICAgICAgICAuaW5uZXIge1xuICAgICAgICAgIC53aWRnZXQtYm9keSB7XG4gICAgICAgICAgICAubGVmdCwgLm1pZGRsZSwgLnJpZ2h0IHtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogMzElIDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5ib3R0b20ge1xuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA5JSAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5zZWN0aW9uLWhvbWUtc2xpZGVyIHtcbiAgICAgIC53cmFwIHtcbiAgICAgICAgLnN0YXRpYy1jYXB0aW9uIHtcbiAgICAgICAgICB3aWR0aDo4MCU7XG4gICAgICAgICAgdG9wOiBjYWxjKDUwJSAtIDUwcHgpO1xuICAgICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTYlLCAtNTAlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1heC13aWR0aCA6IDgwMHB4KSB7XG4gICAgLnNlY3Rpb24taGVhZGVyLW5hdmlnYXRpb24ge1xuICAgICAgLndyYXAge1xuICAgICAgICAuaGFsZiB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5ncmFkaWVudC1vdmVybGF5IHtcbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgei1pbmRleDogMTtcbiAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24td2lkZ2V0LWxpc3Qge1xuICAgICAgbWFyZ2luOiAyMHB4IDAgMCAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgIC53cmFwIHtcbiAgICAgICAgLmlubmVyIHtcbiAgICAgICAgICAud2lkZ2V0LWJvZHkge1xuICAgICAgICAgICAgLmxlZnQsIC5taWRkbGUsIC5yaWdodCB7XG4gICAgICAgICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMi4zJSAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm90dG9tIHtcbiAgICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA5LjUlIDA7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnNlY3Rpb24taG9tZS1zb2NpYWxzIHtcbiAgICAgIC53cmFwIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgd2lkdGg6IDMzLjMzJTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDEyJSAwO1xuXG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgdG9wOiA0MCU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDQ1JTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtYXgtd2lkdGggOiA2MDBweCkge1xuICAgIC5zZWN0aW9uLWhvbWUtc2xpZGVyIHtcbiAgICAgIC53cmFwIHtcbiAgICAgICAgLnN0YXRpYy1jYXB0aW9uIHtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2VjdGlvbi13aWRnZXQtbGlzdCB7XG4gICAgICAud3JhcCB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgLndpZGdldC1ib2R5IHtcbiAgICAgICAgICAgIC5ib3R0b20ge1xuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiA5JSAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC53dS1mb290ZXIge1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAyNTBweDtcbiAgICB9XG4gIH1cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoIDogNDAwcHgpIHtcbiAgICBhLnZpZXdhbGwge1xuICAgICAgZm9udC1zaXplOiAxZW07XG4gICAgICBwYWRkaW5nOiAxNXB4IDAgMCAwO1xuICAgIH1cbiAgICAuc2VjdGlvbi13aWRnZXQtbGlzdCB7XG4gICAgICAud3JhcCB7XG4gICAgICAgIC5pbm5lciB7XG4gICAgICAgICAgLndpZGdldC1ib2R5IHtcbiAgICAgICAgICAgIC5sZWZ0LCAucmlnaHQge1xuICAgICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAzMS41JSAwO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuYm90dG9tIHtcbiAgICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgICAgcGFkZGluZzogOCUgMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuc2VjdGlvbi1ob21lLXNvY2lhbHMge1xuICAgICAgLndyYXAge1xuICAgICAgICB1bCB7XG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgcGFkZGluZzogMTAlIDA7XG4gICAgICAgICAgICBhIHtcbiAgICAgICAgICAgICAgdG9wOiAzNSU7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDQwJTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiIsIi8qXG4qIERlZmF1bHQgQm9vdHN0cmFwIFZhcnNcbiogcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS90d2JzL2Jvb3RzdHJhcC1zYXNzL21hc3Rlci9hc3NldHMvc3R5bGVzaGVldHMvYm9vdHN0cmFwL192YXJpYWJsZXMuc2Nzc1xuKi9cblxuLyogVHlwZSAqL1xuJGljb24tZm9udC1wYXRoOiAnLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwLyc7XG4kZm9udC1mYW1pbHktYmFzZTogJ0dvdGhhbSBTU20gQScsICdHb3RoYW0gU1NtIEInLCBWZXJkYW5hLCBBcmlhbCwgc2Fucy1zZXJpZjtcblxuLyogQ29sb3IgKi9cbiRibGFjazogIzAwMDtcbiR3aGl0ZTogI2ZmZjtcbiRkYXJrR3JheTogIzM2MzYzNjtcbiRyZWQ6ICM3ZTI5MWE7XG4kbGlnaHRlckdyZXk6ICNmMWYxZjE7XG5cbi8qIFN0b3JlIGFuZCBBY2NvdW50IFZhcidzICovXG4kd2lkdGg6IDExODBweDtcbiR0aGVtZTogJ2xpZ2h0JztcbiR0YWJsZUJvcmRlckNvbG9yOiAkbGlnaHRlckdyZXk7XG4kYmFja2dyb3VuZENvbG9yOiB0cmFuc3BhcmVudDtcbiRib3JkZXJDb2xvcjogJGxpZ2h0ZXJHcmV5O1xuJHN0b3JlQXNpZGVCb3JkZXJDb2xvcjogdHJhbnNwYXJlbnQ7XG4kbGlua0NvbG9yOiAkcmVkO1xuJGxpbmtDb2xvckhvdmVyOiByZ2JhKCRkYXJrR3JheSwgLjc1KTtcbiRwcmltYXJ5OiAkcmVkO1xuJGFjY291bnRNb2JpbGVQYWRkaW5nOiAwO1xuJGhhc1dyYXA6IGZhbHNlO1xuJGJvcmRlclJhZGl1czogMDtcbiRzdG9yZUhhc0ZsYWdnZWRMaXN0aW5nOiAndHJ1ZSc7XG5cbiR0ZXh0LWNvbG9yOiAkZGFya0dyYXk7XG4kbGluay1jb2xvcjogJGRhcmtHcmF5O1xuJGxpbmstaG92ZXItY29sb3I6ICRyZWQ7XG5cbi8qIEhlbHBlcnMgICovXG4gIC5uby1wYWdpbmF0aW9uIHtcbiAgICAuc2VjdGlvbi1wYWdpbmF0aW9uIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gIC5yb3cubm8tZ3V0dGVycyB7XG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG4gIC5yb3cubm8tZ3V0dGVycyA+IFtjbGFzc149XCJjb2wtXCJdLFxuICAucm93Lm5vLWd1dHRlcnMgPiBbY2xhc3MqPVwiIGNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBtYXgtaGVpZ2h0OiA5MHZoO1xuICAgIG92ZXJmbG93LXg6IHNjcm9sbDtcbiAgfVxuICBAbWl4aW4gY2xlYXJmaXgoKSB7XG4gICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogJyc7XG4gICAgICBkaXNwbGF5OiB0YWJsZTtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgIH1cbiAgfVxuICAuY2xlYXJmaXgge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gIH1cbiAgQG1peGluIHRleHQtdHJ1bmNhdGUoKSB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LW92ZXJmbG93OiBlbGxpcHNpcztcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB9XG5cbiAgJGJ1dHRvbi1jb2xvcjogJHdoaXRlO1xuICAkYnV0dG9uLWJvcmRlcjogIzU1NTtcbiAgJGJ1dHRvbi1iYWNrZ3JvdW5kOiAjNTU1O1xuICAkYnV0dG9uLWhvdmVyLWNvbG9yOiAkYmxhY2s7XG4gICRidXR0b24taG92ZXItYm9yZGVyOiAjODg4O1xuICAkYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ6ICM4ODg7XG4gIEBtaXhpbiBidXR0b24oKSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIHBhZGRpbmc6IDEycHggMjZweDtcbiAgICBtYXJnaW46IDIwcHggMCA0MHB4O1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdDtcbiAgICBjb2xvcjogJGJ1dHRvbi1jb2xvcjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJGJ1dHRvbi1ib3JkZXI7XG4gICAgdHJhbnNpdGlvbjogY29sb3IgMjUwbXMsIGJhY2tncm91bmQgMjUwbXMsIGJvcmRlciAyNTBtcztcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRidXR0b24taG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kOiAkYnV0dG9uLWhvdmVyLWJhY2tncm91bmQ7XG4gICAgICBib3JkZXItY29sb3I6ICRidXR0b24taG92ZXItYm9yZGVyO1xuICAgIH1cbiAgfVxuIiwiLyohIFxuICogYW5ndWxhci1sb2FkaW5nLWJhciB2MC45LjBcbiAqIGh0dHBzOi8vY2hpZWZmYW5jeXBhbnRzLmdpdGh1Yi5pby9hbmd1bGFyLWxvYWRpbmctYmFyXG4gKiBDb3B5cmlnaHQgKGMpIDIwMTYgV2VzIENydXZlclxuICogTGljZW5zZTogTUlUXG4gKi9cblxuLyogTWFrZSBjbGlja3MgcGFzcy10aHJvdWdoICovXG4jbG9hZGluZy1iYXIsXG4jbG9hZGluZy1iYXItc3Bpbm5lciB7XG4gIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LXBvaW50ZXItZXZlbnRzOiBub25lO1xuICAtd2Via2l0LXRyYW5zaXRpb246IDM1MG1zIGxpbmVhciBhbGw7XG4gIC1tb3otdHJhbnNpdGlvbjogMzUwbXMgbGluZWFyIGFsbDtcbiAgLW8tdHJhbnNpdGlvbjogMzUwbXMgbGluZWFyIGFsbDtcbiAgdHJhbnNpdGlvbjogMzUwbXMgbGluZWFyIGFsbDtcbn1cblxuI2xvYWRpbmctYmFyLm5nLWVudGVyLFxuI2xvYWRpbmctYmFyLm5nLWxlYXZlLm5nLWxlYXZlLWFjdGl2ZSxcbiNsb2FkaW5nLWJhci1zcGlubmVyLm5nLWVudGVyLFxuI2xvYWRpbmctYmFyLXNwaW5uZXIubmctbGVhdmUubmctbGVhdmUtYWN0aXZlIHtcbiAgb3BhY2l0eTogMDtcbn1cblxuI2xvYWRpbmctYmFyLm5nLWVudGVyLm5nLWVudGVyLWFjdGl2ZSxcbiNsb2FkaW5nLWJhci5uZy1sZWF2ZSxcbiNsb2FkaW5nLWJhci1zcGlubmVyLm5nLWVudGVyLm5nLWVudGVyLWFjdGl2ZSxcbiNsb2FkaW5nLWJhci1zcGlubmVyLm5nLWxlYXZlIHtcbiAgb3BhY2l0eTogMTtcbn1cblxuI2xvYWRpbmctYmFyIC5iYXIge1xuICAtd2Via2l0LXRyYW5zaXRpb246IHdpZHRoIDM1MG1zO1xuICAtbW96LXRyYW5zaXRpb246IHdpZHRoIDM1MG1zO1xuICAtby10cmFuc2l0aW9uOiB3aWR0aCAzNTBtcztcbiAgdHJhbnNpdGlvbjogd2lkdGggMzUwbXM7XG5cbiAgYmFja2dyb3VuZDogIzI5ZDtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwMjtcbiAgdG9wOiAwO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAycHg7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAxcHg7XG4gIGJvcmRlci10b3AtcmlnaHQtcmFkaXVzOiAxcHg7XG59XG5cbi8qIEZhbmN5IGJsdXIgZWZmZWN0ICovXG4jbG9hZGluZy1iYXIgLnBlZyB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDcwcHg7XG4gIHJpZ2h0OiAwO1xuICB0b3A6IDA7XG4gIGhlaWdodDogMnB4O1xuICBvcGFjaXR5OiAuNDU7XG4gIC1tb3otYm94LXNoYWRvdzogIzI5ZCAxcHggMCA2cHggMXB4O1xuICAtbXMtYm94LXNoYWRvdzogIzI5ZCAxcHggMCA2cHggMXB4O1xuICAtd2Via2l0LWJveC1zaGFkb3c6ICMyOWQgMXB4IDAgNnB4IDFweDtcbiAgYm94LXNoYWRvdzogIzI5ZCAxcHggMCA2cHggMXB4O1xuICAtbW96LWJvcmRlci1yYWRpdXM6IDEwMCU7XG4gIC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTAwJTtcbiAgYm9yZGVyLXJhZGl1czogMTAwJTtcbn1cblxuI2xvYWRpbmctYmFyLXNwaW5uZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGZpeGVkO1xuICB6LWluZGV4OiAxMDAwMjtcbiAgdG9wOiAxMHB4O1xuICBsZWZ0OiAxMHB4O1xufVxuXG4jbG9hZGluZy1iYXItc3Bpbm5lciAuc3Bpbm5lci1pY29uIHtcbiAgd2lkdGg6IDE0cHg7XG4gIGhlaWdodDogMTRweDtcblxuICBib3JkZXI6ICBzb2xpZCAycHggdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci10b3AtY29sb3I6ICAjMjlkO1xuICBib3JkZXItbGVmdC1jb2xvcjogIzI5ZDtcbiAgYm9yZGVyLXJhZGl1czogNTAlO1xuXG4gIC13ZWJraXQtYW5pbWF0aW9uOiBsb2FkaW5nLWJhci1zcGlubmVyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgLW1vei1hbmltYXRpb246ICAgIGxvYWRpbmctYmFyLXNwaW5uZXIgNDAwbXMgbGluZWFyIGluZmluaXRlO1xuICAtbXMtYW5pbWF0aW9uOiAgICAgbG9hZGluZy1iYXItc3Bpbm5lciA0MDBtcyBsaW5lYXIgaW5maW5pdGU7XG4gIC1vLWFuaW1hdGlvbjogICAgICBsb2FkaW5nLWJhci1zcGlubmVyIDQwMG1zIGxpbmVhciBpbmZpbml0ZTtcbiAgYW5pbWF0aW9uOiAgICAgICAgIGxvYWRpbmctYmFyLXNwaW5uZXIgNDAwbXMgbGluZWFyIGluZmluaXRlO1xufVxuXG5ALXdlYmtpdC1rZXlmcmFtZXMgbG9hZGluZy1iYXItc3Bpbm5lciB7XG4gIDAlICAgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cbkAtbW96LWtleWZyYW1lcyBsb2FkaW5nLWJhci1zcGlubmVyIHtcbiAgMCUgICB7IC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7ICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7IH1cbiAgMTAwJSB7IC1tb3otdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuQC1vLWtleWZyYW1lcyBsb2FkaW5nLWJhci1zcGlubmVyIHtcbiAgMCUgICB7IC1vLXRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpOyB9XG4gIDEwMCUgeyAtby10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpOyB9XG59XG5ALW1zLWtleWZyYW1lcyBsb2FkaW5nLWJhci1zcGlubmVyIHtcbiAgMCUgICB7IC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgLW1zLXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7IH1cbn1cbkBrZXlmcmFtZXMgbG9hZGluZy1iYXItc3Bpbm5lciB7XG4gIDAlICAgeyB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTsgfVxuICAxMDAlIHsgdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTsgfVxufVxuXG5AaW1wb3J0ICcuLi9zcmMvc3R5bGVzL2FjY2Vzc2liaWxpdHkvYWNjZXNzaWJpbGl0eS5zY3NzJztcbkBpbXBvcnQgJy4uL3NyYy9zdHlsZXMvYW5ndWxhci9hbmd1bGFyLnNjc3MnO1xuQGltcG9ydCAnLi4vc3JjL3N0eWxlcy9vbGRfYnJvd3Nlcl9tZXNzYWdlL29sZC1icm93c2VyLW1lc3NhZ2Uuc2Nzcyc7XG5AaW1wb3J0ICcuLi9zcmMvc3R5bGVzL3NwbGFzaF9wYWdlL3NwbGFzaC1wYWdlLnNjc3MnO1xuQGltcG9ydCAnLi4vc3JjL3N0eWxlcy9zdHlsZV9oZWxwZXJzL2hlbHBlcnMuc2Nzcyc7XG5AaW1wb3J0ICcuLi9zcmMvc3R5bGVzL2ZhbGxiYWNrL21hc3Rlci1mYWxsYmFjay1iaXJ0aGRheS5zY3NzJztcbkBpbXBvcnQgJy4uL3NyYy9zdHlsZXMvZmFsbGJhY2svbWFzdGVyLWZhbGxiYWNrLXJlc2V0LnNjc3MnO1xuIiwiLyogQWNjZXNzaWJpbGl0eSAqL1xuI3BhZ2Uge1xuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59IiwiLyogQW5ndWxhciAqL1xuLm5nLWNsb2FrIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cbltuZy1jbGlja10sIFtkYXRhLW5nLWNsaWNrXSwgW3VpLXNyZWZdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuLnBhZ2UtaW5uZXIge1xuICBvdmVyZmxvdzogaGlkZGVuO1xufSIsIi8qIE9sZCBCcm93c2VyIE1lc3NhZ2UgKi9cbnAuYnJvd3NlcnVwZ3JhZGUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgbGVmdDogMDtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAuMmVtO1xuICBiYWNrZ3JvdW5kOiAjZjAwO1xuICBjb2xvcjogI2ZmZjtcbiAgei1pbmRleDogOTk5OTk5OTk5OTtcbn1cbnAuYnJvd3NlcnVwZ3JhZGUgYSB7XG4gIGNvbG9yOiAjZmZmO1xuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbn1cbnAuYnJvd3NlcnVwZ3JhZGUgYTpob3ZlciB7XG4gIGNvbG9yOiAjZmZmO1xufSIsIi8qIFNwbGFzaCBQYWdlICovXG4ucGFnZS1zcGxhc2gge1xuICBoZWFkZXIsIGZvb3RlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufSIsIi8qIEhlbHBlcnMgKi9cbi5zaG93IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG4uaGlkZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHZpc2liaWxpdHk6IGhpZGRlbjtcbn1cbi5pbnZpc2libGUge1xuICB2aXNpYmlsaXR5OiBoaWRkZW47XG59XG4ubW9kYWwtc2Nyb2xsIHtcbiAgbWF4LWhlaWdodDogNDAwcHg7XG4gIG92ZXJmbG93LXk6IHNjcm9sbDtcbn1cbi5wcmUtbm8tc3R5bGUge1xuICBwYWRkaW5nOiAwO1xuICBtYXJnaW46IDA7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgY29sb3I6IGluaGVyaXQ7XG4gIGJhY2tncm91bmQtY29sb3I6IGluaGVyaXQ7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLXJhZGl1czogMDtcbn1cbi5maXQtdmlkZW8ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG5cbiAgaWZyYW1lIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6IDA7XG4gICAgLy8gT3ZlcnJpZGUgaW5saW5lIHN0eWxlc1xuICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgaGVpZ2h0OiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cbn0iLCIvKiBNYXN0ZXIgRmFsbGJhY2sgRml4ZXMgKi9cbiNHQyB7XG4gICYuR0NfYmlydGhkYXkge1xuICAgIHNlbGVjdCB7XG4gICAgICBhcHBlYXJhbmNlOiBtZW51bGlzdC1idXR0b247XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgfVxuICB9XG59IiwiLypcbiAqIFJlc3BvbnNpdmUvdHlwZSByZXNldCBmb3IgT3JpZ2luIFRoZW1lIGZhbGxiYWNrIHRvIE1hc3RlciBUaGVtZVxuICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgTWFzdGVyIFRoZW1lJztcbiAgc3JjOiB1cmwoXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3B1YmxpYy9mb250cy9ib290c3RyYXAvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci5lb3RcIik7XG4gIHNyYzogdXJsKFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIuZW90PyNpZWZpeFwiKSBmb3JtYXQoXCJlbWJlZGRlZC1vcGVudHlwZVwiKSwgdXJsKFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIud29mZjJcIikgZm9ybWF0KFwid29mZjJcIiksIHVybChcIi4uLy4uLy4uLy4uL3RoZW1lcy9vcmlnaW4vcHVibGljL2ZvbnRzL2Jvb3RzdHJhcC9nbHlwaGljb25zLWhhbGZsaW5ncy1yZWd1bGFyLndvZmZcIikgZm9ybWF0KFwid29mZlwiKSwgdXJsKFwiLi4vLi4vLi4vLi4vdGhlbWVzL29yaWdpbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwL2dseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXIudHRmXCIpIGZvcm1hdChcInRydWV0eXBlXCIpLCB1cmwoXCIuLi8uLi8uLi8uLi90aGVtZXMvb3JpZ2luL3B1YmxpYy9mb250cy9ib290c3RyYXAvZ2x5cGhpY29ucy1oYWxmbGluZ3MtcmVndWxhci5zdmcjZ2x5cGhpY29uc19oYWxmbGluZ3NyZWd1bGFyXCIpIGZvcm1hdChcInN2Z1wiKTsgfVxuXG4uZ2x5cGhpY29uIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0b3A6IDFweDtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgTWFzdGVyIFRoZW1lJztcbiAgZm9udC1zdHlsZTogbm9ybWFsO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBsaW5lLWhlaWdodDogMTtcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi5tYXN0ZXItdGhlbWUge1xuICBwLCBkbCwgb2wsIHVsIHsgbWFyZ2luOiAxZW0gMDsgcGFkZGluZzogMDsgfVxuICBkZCB7IG1hcmdpbjogMDsgcGFkZGluZzogMDsgfVxuICBpLCBlbSB7IGZvbnQtc3R5bGU6IGl0YWxpYzsgfVxuICBiLCBzdHJvbmcge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGEsIHNwYW4geyBmb250LXdlaWdodDogaW5oZXJpdDsgfVxuICB9XG4gIHRhYmxlIHsgbWFyZ2luOiAwOyBib3JkZXItY29sbGFwc2U6IHNlcGFyYXRlOyB9XG4gICYsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHRoLCBkdCwgcCwgYSwgc3BhbiwgbGksIHRkLCBkZCwgYWRkcmVzcywgaW5wdXQsIHRleHRhcmVhLCAudmNhcmQsICNkYXNoYm9hcmQsICNicmVhZGNydW1icywgbGVnZW5kIHtcbiAgICAgIGNvbG9yOiBpbmhlcml0O1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXNpemU6IGluaGVyaXQ7XG4gICAgICBmb250LXdlaWdodDogaW5oZXJpdDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgICAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIH1cbiAgYSwgYTp2aXNpdGVkIHsgY29sb3I6IGluaGVyaXQ7IHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lOyB9XG4gIGJ1dHRvbiB7IGN1cnNvcjogcG9pbnRlcjsgfVxuICAmIHsgZm9udC1zaXplOiAxNnB4OyB9XG4gIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gICAgICBmb250LXdlaWdodDogNzAwO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplbGVnaWJpbGl0eTtcbiAgICAgIGEgeyB0ZXh0LWRlY29yYXRpb246IG5vbmU7IH1cbiAgfVxuICBoMSB7IGZvbnQtc2l6ZTogMmVtOyBsaW5lLWhlaWdodDogMS4zMzNlbTsgfVxuICBoMiB7IGZvbnQtc2l6ZTogMS40ZW07IGxpbmUtaGVpZ2h0OiAxLjRlbTsgfVxuICBoMyB7IGZvbnQtc2l6ZTogMS4yZW07IH1cbiAgaDQgeyBmb250LXNpemU6IDEuMWVtOyBmb250LXdlaWdodDogNzAwOyB9XG4gIGg1IHsgZm9udC1zaXplOiAwLjg0NmVtOyBsaW5lLWhlaWdodDogMi4wOWVtOyBsZXR0ZXItc3BhY2luZzogMnB4OyB9XG4gIGg2IHsgZm9udC1zaXplOiAwLjY3ZW07IH1cbiAgKiwgKjpiZWZvcmUsICo6YWZ0ZXIgeyBib3gtc2l6aW5nOiBib3JkZXItYm94OyB9ICNmYW5jeWJveC13cmFwIHsgYm94LXNpemluZzogY29udGVudC1ib3g7IH1cbiAgLmNsZWFyZml4IHtcbiAgICAgICY6YmVmb3JlLCAmOmFmdGVyIHsgY29udGVudDogXCJcIjsgZGlzcGxheTogdGFibGU7IH1cbiAgICAgICY6YWZ0ZXIgeyBjbGVhcjogYm90aDsgfVxuICB9XG4gIHAuYnJvd3NlcnVwZ3JhZGUge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogLjJlbTtcbiAgICBiYWNrZ3JvdW5kOiAjZjAwO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIHotaW5kZXg6IDk5OTk5OTk5OTk7XG4gIH1cbiAgcC5icm93c2VydXBncmFkZSBhIHtcbiAgICBjb2xvcjogI2ZmZjtcbiAgICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTtcbiAgfVxuICBwLmJyb3dzZXJ1cGdyYWRlIGE6aG92ZXIge1xuICAgIGNvbG9yOiAjZmZmO1xuICB9XG4gIC8qIEdlbmVyYWwgKi9cbiAgLmV2ZW50IHtcbiAgICAuaW5mbywgI3VuaWZpZWQgLnRpdGxlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICB9XG4gICNHQyB7IG1hcmdpbjogMCBhdXRvOyBtYXgtd2lkdGg6IDEyMDBweDsgfVxuICBpbnB1dCwgdGV4dGFyZWEgeyBib3JkZXI6IDFweCBzb2xpZCAjY2NjOyBib3JkZXItcmFkaXVzOiAycHg7IGJhY2tncm91bmQ6ICNmZmY7IGJveC1zaGFkb3c6IG5vbmU7IH1cbiAgI0dDIC5yZWNhcHRjaGFfaW5wdXRfYXJlYSB7IHdpZHRoOiBhdXRvICFpbXBvcnRhbnQ7IGhlaWdodDogYXV0byAhaW1wb3J0YW50OyB9XG4gIGJsb2NrcXVvdGUgeyBib3JkZXI6IDA7IGJhY2tncm91bmQ6IHJnYmEoMjU1LDI1NSwyNTUsMC4yKTsgLmF1dGhvciB7IGZvbnQtd2VpZ2h0OiA3MDA7IH19XG4gIHByZSB7IHdoaXRlLXNwYWNlOiBwcmUtd3JhcDsgfVxuICAuc2VjdGlvbi5uZXdzIC5hcnRpY2xlID4gLmZvb3RlciAubmF2LmFjdGlvbnMgPiAucmVhZG1vcmUgeyBmbG9hdDogbm9uZTsgfVxuICAuc2VjdGlvbi5uZXdzIC5hcnRpY2xlID4gLmZvb3RlciAubmF2LmFjdGlvbnMgeyBoZWlnaHQ6IGF1dG87IH1cbiAgI2Zvb3RlciB7IGhlaWdodDogYXV0bzsgfVxuICAjYnJlYWRjcnVtYnMsIC5yc3MgeyBkaXNwbGF5OiBub25lOyB9XG4gIGFbaHJlZio9XCIvdXNlci9cIl0geyB3b3JkLWJyZWFrOiBicmVhay1hbGw7IH1cbiAgLmNvbnRlbnQgbGkgeyBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IG1hcmdpbi1sZWZ0OiAyMHB4OyB9XG4gIC8qIEdyaWQgKi9cbiAgI2Rhc2hib2FyZCAuc2VjdGlvbiwgI3BhZ2UsICNicmVhZGNydW1icywgI2hlYWRlciAuc2VjdGlvbiwgI2Zvb3RlciAuc2VjdGlvbiwgJi5zdG9yZSAjbWFpbi5mdWxsLCAjbWFpbi5mdWxsLCAubWFpbi5mdWxsLCAjYXNpZGUsIC5hc2lkZSB7IHdpZHRoOiAxMDAlOyB9XG4gICNkYXNoYm9hcmQgLnNlY3Rpb24sICNjb250YWluZXIsICNicmVhZGNydW1icywgI2hlYWRlciAuc2VjdGlvbiwgI2Zvb3RlciAuc2VjdGlvbiwgI21haW4uZnVsbCwgLm1haW4uZnVsbCB7IG1heC13aWR0aDogOTYwcHg7IH1cbiAgI21haW4sIC5tYWluIHsgd2lkdGg6IDU0JTsgbWF4LXdpZHRoOiA1NDBweDsgbWFyZ2luOiAwIGF1dG87IH1cbiAgI2FzaWRlLCAuYXNpZGUgeyB3aWR0aDogMzglOyBtYXgtd2lkdGg6IDM4MHB4OyBtYXJnaW46IDAgYXV0bzsgfVxuICAvKiBFdmVudHMgKi9cbiAgLmV2ZW50cyAudGlja2V0cyBhLCAuZXZlbnRzIC50aWNrZXRzIHNwYW4sIC5ldmVudHMgLnRpY2tldHMudmlwIGEge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIGhlaWdodDogYXV0bztcbiAgICB0ZXh0LWluZGVudDogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICB9XG4gIC8qIFN0b3JlICovXG4gICYuc3RvcmUsICYuc3RvcmUgI2FzaWRlIC5saXN0aW5nIC5pdGVtIHNwYW4sICYuc3RvcmUgI2FzaWRlIC5saXN0aW5nIC5pdGVtIGEgeyBmb250LWZhbWlseTogaW5oZXJpdDsgfVxuICAmLnN0b3JlICNjb250YWluZXIge1xuICAgIGZsb2F0OiBub25lO1xuICAgIG1hcmdpbjogMCBhdXRvIDE1MHB4IGF1dG87XG4gICAgbWF4LXdpZHRoOiA5MjBweDtcbiAgICB3aWR0aDogMTAwJTtcbiAgfVxuICAmLnN0b3JlICNtYWluIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG4gICAgd2lkdGg6IDcwJTtcbiAgfVxuICAmLnN0b3JlICNhc2lkZSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIHdpZHRoOiAzMCU7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiA+IC5zZWN0aW9uIHtcbiAgICBwYWRkaW5nOiAwIDE1cHggIWltcG9ydGFudDtcbiAgfVxuICAmLnN0b3JlICNtYWluID4gLmhlYWRlcixcbiAgJi5zdG9yZSAjbWFpbiA+IC5zZWN0aW9uID4gLmhlYWRlciB7XG4gICAgcGFkZGluZzogMTVweDtcbiAgfVxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCB7XG4gICAgY2xlYXI6IGxlZnQ7XG4gICAgbWFyZ2luLWJvdHRvbTogMjVweDtcbiAgICBwYWRkaW5nOiA0MHB4IDAgMCAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxuICAmLnN0b3JlICNtYWluIC5zaG9wIC5saXN0aW5nIC5pdGVtLFxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbSxcbiAgJi5zdG9yZSAjbWFpbiAuY2F0ZWdvcnkucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW0ge1xuICAgIG1hcmdpbjogMCAyJSAyJSAwO1xuICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuICAmLnN0b3JlICNtYWluIC5zaG9wIC5saXN0aW5nIC5pdGVtID4gLnByb2R1Y3QsXG4gICYuc3RvcmUgI21haW4gLmZlYXR1cmVkIC5saXN0aW5nIC5pdGVtID4gLnByb2R1Y3QsXG4gICYuc3RvcmUgI21haW4gLmNhdGVnb3J5LnByb2R1Y3RzIC5saXN0aW5nIC5pdGVtID4gLnByb2R1Y3Qge1xuICAgIGJvcmRlcjogNHB4IHNvbGlkICMwMDA7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbSAuZmlndXJlLFxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbSAuZmlndXJlLFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbSAuZmlndXJlIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgIG1pbi13aWR0aDogMDtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiAwO1xuICB9XG4gICYuc3RvcmUgI21haW4gLmxpc3RpbmcgLml0ZW0gYSxcbiAgJi5zdG9yZSAjbWFpbiAubGlzdGluZyAuaXRlbSBhIHNwYW4sXG4gICYuc3RvcmUgI21haW4gLmxpc3RpbmcgLml0ZW0gYSBzcGFuIHNwYW4ge1xuICAgIHBhZGRpbmc6IDA7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbSAuY29udGVudCxcbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW0gLmNvbnRlbnQsXG4gICYuc3RvcmUgI21haW4gLmNhdGVnb3J5LnByb2R1Y3RzIC5saXN0aW5nIC5pdGVtIC5jb250ZW50LFxuICAmLnN0b3JlICNtYWluIC5zaG9wIC5saXN0aW5nIC5pdGVtOmhvdmVyIC5jb250ZW50LFxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbTpob3ZlciAuY29udGVudCxcbiAgJi5zdG9yZSAjbWFpbiAuY2F0ZWdvcnkucHJvZHVjdHMgLmxpc3RpbmcgLml0ZW06aG92ZXIgLmNvbnRlbnQge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDA7XG4gICAgb3ZlcmZsb3c6IHZpc2libGU7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbSAucHJvZHVjdC1kZXRhaWxzLFxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbSAucHJvZHVjdC1kZXRhaWxzLFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbSAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgdHJhbnNpdGlvbjogbWF4LWhlaWdodCAwLjNzIGVhc2U7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbTpob3ZlciAucHJvZHVjdC1kZXRhaWxzLFxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbTpob3ZlciAucHJvZHVjdC1kZXRhaWxzLFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbTpob3ZlciAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICBtYXgtaGVpZ2h0OiAxMDBweDtcbiAgfVxuICAmLnN0b3JlICNtYWluIC5zaG9wIC5saXN0aW5nIC5pdGVtIC5wcm9kdWN0LWNvbnRhaW5lcixcbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW0gLnByb2R1Y3QtY29udGFpbmVyLFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbSAucHJvZHVjdC1jb250YWluZXIge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbiAgJi5zdG9yZSAjbWFpbiAuc2hvcCAubGlzdGluZyAuaXRlbSAucHJvZHVjdC1jb250YWluZXIgPiBhLFxuICAmLnN0b3JlICNtYWluIC5mZWF0dXJlZCAubGlzdGluZyAuaXRlbSAucHJvZHVjdC1jb250YWluZXIgPiBhLFxuICAmLnN0b3JlICNtYWluIC5jYXRlZ29yeS5wcm9kdWN0cyAubGlzdGluZyAuaXRlbSAucHJvZHVjdC1jb250YWluZXIgPiBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG4gICYuc3RvcmUgLnByb2R1Y3QgLmZpZ3VyZSBpbWcsXG4gICYuc3RvcmUgI21haW4gLmZlYXR1cmVkIC5saXN0aW5nIC5pdGVtIC5maWd1cmUgaW1nIHtcbiAgICBtaW4td2lkdGg6IDA7XG4gIH1cbiAgLyogSGVhZGVyICovXG4gICYuc3RvcmUgaDEudGl0bGUge1xuICAgIG1hcmdpbjogNDBweCAwIDIwcHggMDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIGZvbnQtc2l6ZTogMzBweDtcbiAgfVxuICAvKiBGZWF0dXJlZCBMaXN0aW5nICovXG4gICYuc3RvcmUgI21haW4gLmZlYXR1cmVkIC5saXN0aW5nIC5pdGVtIHt3aWR0aDogNDklO31cbiAgJi5zdG9yZSAjbWFpbiAuZmVhdHVyZWQgLmxpc3RpbmcgLml0ZW0uc2Vjb25kIHttYXJnaW46IDAgMCAyJSAwO31cbiAgJi5zdG9yZSAjbWFpbiA+IC5mZWF0dXJlZCAuZmxhZyB7bWFyZ2luOiAwO31cbiAgLyogUmVndWxhciBMaXN0aW5nICovXG4gICYuc3RvcmUgI21haW4gLnNob3AgLmxpc3RpbmcgLml0ZW0sXG4gICYuc3RvcmUgI21haW4gLmNhdGVnb3J5LnByb2R1Y3RzIC5saXN0aW5nIC5pdGVtIHtcbiAgICB3aWR0aDogMzIlO1xuICB9XG4gICYuc3RvcmUgI21haW4gLnNob3AgLmxpc3RpbmcgLml0ZW0udGhpcmQsXG4gICYuc3RvcmUgI21haW4gLmNhdGVnb3J5LnByb2R1Y3RzIC5saXN0aW5nIC5pdGVtLnRoaXJkIHtcbiAgICBtYXJnaW46IDAgMCAyJSAwO1xuICB9XG4gICYuc3RvcmUgLmJ1dHRvbiB7XG4gICAgYm9yZGVyOiAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbiAgLyogU2lkZWJhciAqL1xuICAmLnN0b3JlICNhc2lkZSAjR0Muc3RvcmUuaGVhZGVyIHttYXJnaW46IDY1cHggMTVweCAxNXB4IDE1cHg7fVxuICAvKiBDYXRlZ29yaWVzICovXG4gICYuc3RvcmUgI2FzaWRlIC5saXN0aW5nIC5pdGVtIHtcbiAgICBtYXJnaW46IDAgMTVweDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICNlZGVkZWQ7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxuICAmLnN0b3JlICNhc2lkZSAubGlzdGluZyAuaXRlbSArIC5pdGVtIHtib3JkZXItdG9wOiBub25lO31cbiAgJi5zdG9yZSAjYXNpZGUgLmxpc3RpbmcgLml0ZW0gc3BhbixcbiAgJi5zdG9yZSAjYXNpZGUgLmxpc3RpbmcgLml0ZW0gYSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMTBweDtcbiAgICBmb250LXdlaWdodDogNDAwO1xuICB9XG4gICYuc3RvcmUgI2FzaWRlIC5saXN0aW5nIC5pdGVtIGE6aG92ZXIge2JhY2tncm91bmQ6ICNmYWZhZmE7fVxuICAmLnN0b3JlICNhc2lkZSAuY2F0ZWdvcmllcyA+IC5oZWFkZXIge2Rpc3BsYXk6IG5vbmU7fVxuICAvKiBBY2NvdW50IENlbnRlciAqL1xuICAvKiBTdHJ1Y3R1cmUgKi9cbiAgLmFjY291bnQgI2NvbnRhaW5lciB7cGFkZGluZy1ib3R0b206IDE1MHB4O31cbiAgI0dDLkdDX2FjY291bnQge3BhZGRpbmc6IDA7fVxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMge21hcmdpbjogMDt9XG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyA+IC5HQ192aWV3IHtcbiAgICBmbG9hdDogbm9uZTtcbiAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgfVxuICAjR0MuR0NfYWNjb3VudCAjdG9vbGJhciB1bCBsaSxcbiAgI0dDLkdDX2FjY291bnQgI3Rvb2xiYXIgdWwgbGkuc2VsZWN0ZWQsXG4gICNHQy5HQ19hY2NvdW50ICN0b29sYmFyIHVsIGxpOmhvdmVyIHtcbiAgICBtYXJnaW46IDA7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIGJvcmRlci1sZWZ0OiAxcHggc29saWQgI2RjZGNkYztcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyB7cGFkZGluZzogMCAxMHB4O31cbiAgLyogSGVhZGVyICovXG4gICNHQy5HQ19hY2NvdW50ID4gLkdDX2hlYWRlciB7Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICNkY2RjZGM7fVxuICAjR0MuR0NfYWNjb3VudCA+IC5HQ19oZWFkZXIgaDEge1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAxNXB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG4gIC8qIFNpZGViYXIgKi9cbiAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzIC5HQ19uYXZpZ2F0aW9uIHVsIGxpLFxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgLkdDX25hdmlnYXRpb24gdWwgbGk6aG92ZXIsXG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyAuR0NfbmF2aWdhdGlvbiB1bCBsaS5zZWxlY3RlZCB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDRweCAwO1xuICAgIGJvcmRlci1yYWRpdXM6IDBweDtcbiAgfVxuICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgLkdDX25hdmlnYXRpb24gdWwgbGk6aG92ZXIsXG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyAuR0NfbmF2aWdhdGlvbiB1bCBsaS5zZWxlY3RlZCB7XG4gICAgYmFja2dyb3VuZDogI2ZhZmFmYTtcbiAgfVxuICAvKiBBdmF0YXIgKi9cbiAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzIC5HQ19uYXZpZ2F0aW9uIHVsIGxpLmVtYWlsIHtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBib3JkZXItdG9wOiBub25lO1xuICB9XG4gICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyAuR0NfbmF2aWdhdGlvbiB1bCBsaS5lbWFpbCBhLnBpYyB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDA7XG4gICAgd2lkdGg6IDIwMHB4O1xuICAgIGhlaWdodDogMjAwcHg7XG4gIH1cbiAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzIC5HQ19uYXZpZ2F0aW9uIHVsIGxpLmVtYWlsIGltZyB7XG4gICAgcGFkZGluZzogMDtcbiAgICBiYWNrZ3JvdW5kOiBub25lO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gIH1cbiAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzIC5HQ19uYXZpZ2F0aW9uIHVsIGxpLmVtYWlsIC51c2VybmFtZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgfVxuICAvKiBUYWJsZXMgKi9cbiAgI0dDLkdDX2FjY291bnQgdGFibGUge3BhZGRpbmc6IDA7fVxuICAjR0MuR0NfYWNjb3VudCB0YWJsZSB0ZCxcbiAgI0dDLkdDX2FjY291bnQgdGFibGUgdGgge1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gIH1cbiAgI0dDLkdDX2FjY291bnQgdGFibGUgLm9wdGlvbnMge3dpZHRoOiAxMHB4O31cbiAgI0dDLkdDX2FjY291bnQgdGFibGUgLmF2YXRhciB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBoZWlnaHQ6IDUwcHg7XG4gIH1cbiAgLyogUGFnaW5hdGlvbiAqL1xuICAjR0MuR0NfYWNjb3VudCAucGFnaW5hdGlvbiB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDE1cHggMCAwIDA7XG4gIH1cbiAgI0dDLkdDX2FjY291bnQgLnBhZ2luYXRpb24gLnRpdGxlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIGxpbmUtaGVpZ2h0OiA0MHB4O1xuICB9XG4gICNHQy5HQ19hY2NvdW50IC5wYWdpbmF0aW9uIC5wYWdlcyB7bWFyZ2luOiAtNDBweCAwIDAgMDt9XG4gICNHQy5HQ19hY2NvdW50IC5wYWdpbmF0aW9uIC5maXJzdCxcbiAgI0dDLkdDX2FjY291bnQgLnBhZ2luYXRpb24gLmxhc3Qge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgI0dDLkdDX2FjY291bnQgLnBhZ2luYXRpb24gYSB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICAgIGZvbnQtd2VpZ2h0OiBub3JtYWw7XG4gICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgIGZvbnQtdmFyaWFudDogbm9ybWFsO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHNwZWFrOiBub25lO1xuICAgIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICB9XG4gICNHQy5HQ19hY2NvdW50IC5wYWdpbmF0aW9uIC5wYWdlcyA+IC5hY3Rpb25zIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgfVxuICAjR0MuR0NfYWNjb3VudCAucGFnaW5hdGlvbiAucGFnZXMgPiAuZm9ydGgge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiByaWdodDtcbiAgfVxuICAubWFya0l0VXBIZWFkZXIge2hlaWdodDogMzBweDt9XG4gICNHQyAubWFya0l0VXBIZWFkZXIgdWwgYSxcbiAgLm1hcmtJdFVwSGVhZGVyIHVsIGEge1xuICAgIHdpZHRoOiAyMHB4O1xuICAgIGhlaWdodDogMjBweDtcbiAgfVxuICAjR0MgLm1hcmtJdFVwSGVhZGVyIHVsIHVsIGxpLFxuICAubWFya0l0VXBIZWFkZXIgdWwgdWwgbGkge1xuICAgIGJhY2tncm91bmQ6ICNmZmY7XG4gIH1cbiAgI0dDX3RocmVhZF9wYW5lbCAud3JhcCB7IHdpZHRoOiAxMDAlOyB9XG4gICNHQ190aHJlYWRfcGFuZWwgLm1hcmtJdFVwSGVhZGVyIHsgYm94LXNoYWRvdzogbm9uZTsgfVxuICAjR0MgLkdDX2Jsb2dzLkdDX21vZGlmeSAjdGl0bGUsXG4gICNHQ190aHJlYWRfcGFuZWwgI0dDX3RocmVhZF90aXRsZSxcbiAgI0dDX3RocmVhZF9wYW5lbCB0ZXh0YXJlYSxcbiAgLm1hcmtJdFVwIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICB9XG4gICYuZXZlbnRzIHtcbiAgICAjbWFpbiB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgfVxufVxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODgwcHgpIHtcbiAgLm1hc3Rlci10aGVtZSB7XG4gICAgLyogU3RvcmUgKi9cbiAgICAmLnN0b3JlICNoZWFkZXIsXG4gICAgJi5zdG9yZSAjZm9vdGVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgICAmLnN0b3JlICNtYWluLFxuICAgICYuc3RvcmUgI2FzaWRlIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgfVxuICAgIC8qIEdDIFN0dWZmICovXG4gICAgJiAjbWFpbiAjR0Mge21pbi13aWR0aDogMHB4O31cbiAgICAjR0MuR0NfYWNjb3VudCAuR0NfcGFuZXMgLkdDX25hdmlnYXRpb24sXG4gICAgI0dDLkdDX2FjY291bnQgLkdDX3BhbmVzID4gLkdDX3ZpZXcsXG4gICAgI0dDICNtYXJrSXRVcEJvZHkge1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBib3JkZXI6IG5vbmU7XG4gICAgfVxuICAgICNyZWNhcHRjaGFfaW1hZ2Uge1xuICAgICAgd2lkdGg6IDEwMCUgIWltcG9ydGFudDtcbiAgICB9XG4gICAgI3JlY2FwdGNoYV9yZXNwb25zZV9maWVsZCB7d2lkdGg6IGF1dG8gIWltcG9ydGFudDt9XG4gICAgI3JlY2FwdGNoYV90YWJsZSA+IHRib2R5IHRkIHtcbiAgICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICAgIHdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gICAgfVxuICAgICNHQy5HQ19wcm9kdWN0IHtiYWNrZ3JvdW5kLWltYWdlOiBub25lO31cbiAgICAjR0MuR0NfcHJvZHVjdCAuR0NfcHJvZHVjdF9kZXNjcmlwdGlvbixcbiAgICAjR0MuR0NfcHJvZHVjdCAuR0NfcHJvZHVjdF9wdXJjaGFzZSxcbiAgICAjR0MgI21hcmtJdFVwQm9keSAjYm9keSB7XG4gICAgICBtYXJnaW46IDEwcHggMSU7XG4gICAgICB3aWR0aDogOTglO1xuICAgIH1cbiAgICAjR0MuR0Nfc3RvcmUgdGFibGUge2ZvbnQtc2l6ZTogOHB4O31cbiAgICAjR0MgYnV0dG9uIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDJweDtcbiAgICAgIHBhZGRpbmc6IDVweCAxNXB4O1xuICAgIH1cbiAgICAjR0MgI0dDX2NoZWNrb3V0X3Byb2dyZXNzIGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogNXB4IDQlIDVweCAyJTtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgI0dDIGZpZWxkc2V0IHVsIHtwYWRkaW5nLXRvcDogOTBweDt9XG4gICAgI0dDIC5pbnB1dCBsYWJlbCxcbiAgICAjR0MgLnNlbGVjdCBsYWJlbCxcbiAgICAjR0MgLmNhcHRjaGEgbGFiZWwsXG4gICAgI0dDIC50ZXh0IGxhYmVsIHtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgI0dDIC5HQ19hZGRyZXNzLFxuICAgICNHQyAuR0NfcGF5bWVudCB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIHdpZHRoOiA5MyU7XG4gICAgfVxuICAgICNHQyBpbnB1dFt0eXBlPVwidGV4dFwiXSxcbiAgICAjR0MgaW5wdXRbdHlwZT1cInBhc3N3b3JkXCJdLFxuICAgICNHQyBpbnB1dFt0eXBlPVwiZW1haWxcIl0sXG4gICAgI0dDIGlucHV0W3R5cGU9XCJ0ZWxcIl0sXG4gICAgI0dDIGlucHV0W3R5cGU9XCJkYXRlXCJdLFxuICAgICNHQyB0ZXh0YXJlYSxcbiAgICAudWktZGlhbG9nIHRleHRhcmVhIHtcbiAgICAgIHdpZHRoOiA5MyU7XG4gICAgfVxuICAgICNHQyAuR0Nfc2hpcHBpbmcgLkdDX3NhbWVfYXNfYmlsbGluZyB7bGVmdDogMDt9XG4gICAgI0dDIC5hY3Rpb25zIGxpLFxuICAgICNHQyAuYWN0aW9ucyAucHJldiB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgbWFyZ2luLWJvdHRvbTogNHB4O1xuICAgIH1cbiAgICAjR0MuR0NfYWNjb3VudCAjdG9vbGJhciB7IG1hcmdpbjogMDt9XG4gICAgI0dDLkdDX2FjY291bnQgI3Rvb2xiYXIgLm5hdiBsaSBhIHt0ZXh0LWluZGVudDogLTk5OTlweDsgfVxuICAgICNHQy5HQ19lbmdpbmUge3dpZHRoOiA5MCU7fVxuICAgICNHQy5HQ19hY2NvdW50LkdDX21haWwgdGFibGUgLnRpbWUsXG4gICAgI0dDLkdDX2FjY291bnQgLkdDX2ZyaWVuZHMgI0dDX2ZyaWVuZF9hY3Rpb24gdGg6bGFzdC1jaGlsZCxcbiAgICAjR0MuR0NfYWNjb3VudCAuR0NfZnJpZW5kcyAjR0NfZnJpZW5kX2FjdGlvbiB0ZC50aW1lLFxuICAgICNHQy5HQ19hY2NvdW50IC5HQ19saW5rcyB0YWJsZSAudXJsLFxuICAgICNHQy5HQ19hY2NvdW50LkdDX2NvbW1lbnRzIHRhYmxlIC5hdXRob3IsXG4gICAgI0dDLkdDX2FjY291bnQuR0NfY29tbWVudHMgdGFibGUgLmRhdGUsXG4gICAgI0dDLkdDX2FjY291bnQuR0NfbGlua2VkIHRhYmxlIHRyIC5kaXNwbGF5bmFtZSxcbiAgICAjR0MuR0NfYWNjb3VudCAuR0Nfb3JkZXJzIC5kYXRlLFxuICAgICNHQy5HQ19hY2NvdW50IC5HQ19vcmRlcnMgLnRvdGFsIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuICAgICNHQy5HQ19wcm9kdWN0IC5HQ19wcm9kdWN0X3B1cmNoYXNlIC5wdXJjaGFzZV9mb3JtIC5zZWxlY3Qge21hcmdpbjogMDt9XG4gICAgI0dDLkdDX2NhcnQgaDEge2xpbmUtaGVpZ2h0OiAxZW07fVxuICAgICNHQy5HQ19hY2NvdW50IC5HQ19wYW5lcyA+IC5HQ192aWV3IHttaW4taGVpZ2h0OiAwO31cblxuICAgICNHQyAuYWN0aW9ucyAucHJldiBhIHtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gICAgI0dDIC5HQ190aWNrZXQuR0NfY291bnRkb3duIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cbiAgICAjR0MgaW5wdXQucXVhbnRpdHkge1xuICAgICAgd2lkdGg6IDNlbTtcbiAgICB9XG4gICAgI0dDICNHQ19jaGVja291dF9wcm9ncmVzcyB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgICNHQyB0aC50b3RhbCwgI0dDIHRkLnRvdGFsLCAjR0MgdGZvb3QgdGgge1xuICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB9XG4gICAgI0dDLkdDX3BheW1lbnRfaW5mb3JtYXRpb24gLnRvdGFsIHN0cm9uZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIGNvbG9yOiAjMDAwO1xuICAgIH1cbiAgICAjR0MuR0NfcGF5bWVudF9pbmZvcm1hdGlvbiAjUGF5bWVudEZvcm0tY29udGludWUgYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBwYWRkaW5nOiAxNXB4O1xuICAgIH1cbiAgICAjR0MgdGZvb3Qge1xuICAgICAgdGgsIHRkIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgICB0aCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgICAgfVxuICAgICAgdGQge1xuICAgICAgICBwYWRkaW5nLXRvcDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgI0dDLkdDX3N0b3JlIHtcbiAgICAgIHRhYmxlIHtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuICAgICAgfVxuICAgICAgdGhlYWQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgdGJvZHkge1xuICAgICAgICB0ZCB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAmLml0ZW0ge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIkl0ZW06IFwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnNoaXBwaW5nIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJTaGlwcGluZzogXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICYucHJpY2Uge1xuICAgICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgICBjb250ZW50OiBcIlByaWNlOiBcIjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgJi5xdWFudGl0eSB7XG4gICAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICAgIGNvbnRlbnQ6IFwiUXVhbnRpdHk6IFwiO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnRvdGFsIHtcbiAgICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgICAgY29udGVudDogXCJUb3RhbDogXCI7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA2MDBweCkge1xuICAgIC51aS1kaWFsb2cge1xuICAgICAgbWF4LXdpZHRoOiAzMjBweCAhaW1wb3J0YW50O1xuICAgICAgYm94LXNoYWRvdzogcmdiYSgwLCAwLCAwLCAwLjQpIDAgMHB4IDIwcHg7XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIGltcG9ydCB0aGlzIGludG8gY2xpZW50IGRpcmVjdG9yeSBhbmQgcmVkZWZpbmVcbiAqIHNhc3MgdmFyaWFibGVzIGZvciBjdXN0b21pemF0aW9uXG4gKiBmaW5kIHZhcmlhYmxlcyBpbnNpZGUgQGltcG9ydCAnLi92YXJpYWJsZXMvdmFyaWFibGVzLnNjc3MnO1xuICovXG5cbkBpbXBvcnQgJy4vdmFyaWFibGVzL3ZhcmlhYmxlcy5zY3NzJztcblxuLyogbW9kdWxlcyAqL1xuQGltcG9ydCAnLi9hdmF0YXIvYXZhdGFyLnNjc3MnO1xuQGltcG9ydCAnLi9taXhpbnMvbWl4aW5zLnNjc3MnO1xuQGltcG9ydCAnLi9nbG9iYWxzL2dsb2JhbHMuc2Nzcyc7XG5AaW1wb3J0ICcuL3N0b3JlL3N0b3JlLnNjc3MnO1xuQGltcG9ydCAnLi9hY2NvdW50L2FjY291bnQuc2Nzcyc7XG5AaW1wb3J0ICcuL2hlYWRlci9oZWFkZXIuc2Nzcyc7XG5AaW1wb3J0ICcuL2Zvb3Rlci9mb290ZXIuc2Nzcyc7XG5AaW1wb3J0ICcuL2hvbWUvaG9tZS5zY3NzJztcblxuLyogU3R5bGVzIGZvciBib290c3RyYXAgY2Fyb3VzZWwgKi9cbkBpbXBvcnQgJy4uLy4uLy4uL29yaWdpbi9zcmMvc3R5bGVzL3RlbXBsYXRlcy93aWRnZXRzL2Z1bGwtd2lkdGgtcmVzcG9uc2l2ZS1jYXJvdXNlbC5zY3NzJztcbiIsIi8qIFR5cGUgKi9cbiRpY29uLWZvbnQtcGF0aDogJy4uLy4uLy4uL3RoZW1lcy91bmlvbi9wdWJsaWMvZm9udHMvYm9vdHN0cmFwLycgIWRlZmF1bHQ7XG5cbi8qIGNhcm91c2VsICovXG4kYmctY29sb3I6ICMzMzMzMzMgIWltcG9ydGFudDtcbi8qIGNvbW1vbiB2YXJpYWJsZXMgZm9yIHRoZSBzdG9yZSAmJiBhY2NvdW50IHRlbXBsYXRlcyAqL1xuXG4kaGFzV3JhcDogdHJ1ZSAhZGVmYXVsdDtcblxuLyogY29sb3JzICovXG4kYmFja2dyb3VuZENvbG9yOiBoc2xhKDAsIDAlLCAxMDAlLCAuMDcpICFkZWZhdWx0O1xuJGNoZWNrb3V0QmFja2dyb3VuZENvbG9yOiAkYmFja2dyb3VuZENvbG9yICFkZWZhdWx0O1xuJGJsYWNrOiAjMDQwNDA0O1xuJGJsdWU6ICMxNzc3QTIgIWRlZmF1bHQ7XG4kZGFya0dyZWVuOiAjNWNiODVjICFkZWZhdWx0O1xuJGRhcmtHcmV5OiAjNjY2NjY2ICFkZWZhdWx0O1xuJG1pZEdyZXk6ICNBQUFBQUEgIWRlZmF1bHQ7XG4kZXJyb3JSZWQ6ICNkOTUzNGYgIWRlZmF1bHQ7XG4kZ3JlZW46ICM2Qzg4NjkgIWRlZmF1bHQ7XG4kZ3JleTogI2U0ZTRlNCAhZGVmYXVsdDtcbiRsaWdodEdyZXk6ICNmN2Y3ZjcgIWRlZmF1bHQ7XG4kbGlnaHRHcmVlbjogI0I0RDdCOCAhZGVmYXVsdDtcbiRsaWdodEJsYWNrOiAjNDQ0NDQ0ICFkZWZhdWx0O1xuJGxpZ2h0ZXJCbGFjazogIzNDMzMzMyAhZGVmYXVsdDtcbiRsaW5rQ29sb3I6ICRibGFjayAhZGVmYXVsdDtcbiRsaW5rQ29sb3JIb3ZlcjogJGRhcmtHcmV5ICFkZWZhdWx0O1xuJHRhYmxlQm9yZGVyQ29sb3I6ICRncmV5ICFkZWZhdWx0O1xuJHByaW1hcnk6ICNGQTRDMDYgIWRlZmF1bHQ7XG4kaG92ZXJQcmltYXJ5OiBkYXJrZW4oJHByaW1hcnksIDEwKSAhZGVmYXVsdDtcbiRyZWQ6ICNkOTUzNGYgIWRlZmF1bHQ7XG4kd2hpdGU6ICNmZmYgIWRlZmF1bHQ7XG4kaWNvbkJhckNvbG9yOiAjODg4ODg4ICFkZWZhdWx0O1xuJGljb25CYXJDb2xvckV4cGFuZGVkOiAjODg4ODg4ICFkZWZhdWx0O1xuXG4vKiBib3JkZXJzICovXG4kYm9yZGVyUmFkaXVzOiA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyQ29sb3I6ICRsaWdodGVyQmxhY2sgIWRlZmF1bHQ7XG4kYm9yZGVyOiAwIHNvbGlkICRsaWdodGVyQmxhY2sgIWRlZmF1bHQ7XG5cbi8qIGZvbnQgKi9cbiRmb250V2VpZ2h0OiBub3JtYWwgIWRlZmF1bHQ7XG4kZm9udFdlaWdodDMwMDogMzAwICFkZWZhdWx0O1xuJGZvbnRXZWlnaHQ0MDA6IDQwMCAhZGVmYXVsdDtcbiRmb250RmFtaWx5OiBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnRTaXplOiAxNnB4ICFkZWZhdWx0O1xuJGNvdW50ZXJMaW5lSGVpZ2h0OiAyNHB4ICFkZWZhdWx0O1xuXG4vKiBsaW5lIGhlaWdodCAqL1xuJExhYmVsTGluZUhlaWdodDogMThweCAhZGVmYXVsdDtcbiRmb3JtSW5wdXRMaW5lSGVpZ2h0OiAzNnB4ICFkZWZhdWx0O1xuXG4vKiBmb3JtIGVsZW1lbnRzICovXG4kZm9ybUVsZW1lbnRGb2N1c09wYWNpdHk6IDAuOCAhZGVmYXVsdDtcblxuLyogYW5pbWF0aW9ucyAqL1xuJGVhc2U6IDAuNXMgZWFzZSAhZGVmYXVsdDtcblxuLyogbGF5b3V0ICYmIGJyZWFrcG9pbnRzICovXG4kd2lkdGg6IDExNDBweCAhZGVmYXVsdDtcbiRtb2JpbGVCcmVha3BvaW50OiA4NDBweCAhZGVmYXVsdDtcbiRzbWFsbE1vYmlsZUJyZWFrcG9pbnQ6IDUwMHB4ICFkZWZhdWx0O1xuXG4kbW9iaWxlTmF2QnJlYWtwb2ludDogJG1vYmlsZUJyZWFrcG9pbnQgIWRlZmF1bHQ7XG5cbi8qIGhlYWRlciAvIG1haW4gbmF2ICovXG4kaGVhZGVyQmFja2dyb3VuZENvbG9yOiAkYmFja2dyb3VuZENvbG9yICFkZWZhdWx0O1xuJGhlYWRlckJvcmRlckNvbG9yOiAkYmFja2dyb3VuZENvbG9yICFkZWZhdWx0O1xuJGhlYWRlckxpbmtDb2xvcjogJGxpbmtDb2xvciAhZGVmYXVsdDtcbiRoZWFkZXJMaW5rQ29sb3JIb3ZlcjogJGxpbmtDb2xvckhvdmVyICFkZWZhdWx0O1xuXG4vKiBhY2NvdW50ICovXG4kYWNjb3VudE1vYmlsZVBhZGRpbmc6IDIwcHggIWRlZmF1bHQ7XG4kY291bnRlckJnQ29sb3I6ICRncmV5ICFkZWZhdWx0O1xuJGNvdW50ZXJDb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG4vKiBzdG9yZSBsaXN0aW5nIHR5cGVzICovXG4kc3RvcmVIYXNGbGFnZ2VkTGlzdGluZzogJ3RydWUnICFkZWZhdWx0O1xuXG4vKiBzdG9yZSBhc2lkZSAqL1xuJHN0b3JlQXNpZGVCYWNrZ3JvdW5kQ29sb3I6ICRiYWNrZ3JvdW5kQ29sb3IgIWRlZmF1bHQ7XG4kc3RvcmVBc2lkZUJvcmRlckNvbG9yOiAkYm9yZGVyQ29sb3IgIWRlZmF1bHQ7XG4vLyAkc3RvcmVBc2lkZUhhc0NhdGVnb3JpZXNIZWFkZXI6IGZhbHNlICFkZWZhdWx0O1xuXG4vKiBmb290ZXIgKi9cbiRmb290ZXJDb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuJGZvb3RlckxpbmtDb2xvcjogJGJsYWNrICFkZWZhdWx0O1xuJGZvb3RlckJhY2tncm91bmRDb2xvcjogJGJhY2tncm91bmRDb2xvciAhZGVmYXVsdDtcbiRmb290ZXJMaW5rQ29sb3JIb3ZlcjogJGdyZXkgIWRlZmF1bHQ7XG4iLCIvKiBBdmF0YXIgcm9sbG92ZXJzICovXG4kYXZhdGFyUm9sbG92ZXJCYWNrZ3JvdW5kQ29sb3I6ICNFRUVFRUUgIWRlZmF1bHQ7XG4kYXZhdGFyUm9sbG92ZXJDb2xvcjogIzIyMjIyMiAhZGVmYXVsdDtcbiRhdmF0YXJSb2xsb3ZlckJvcmRlclJhZGl1czogNXB4ICFkZWZhdWx0O1xuXG4uYXZhdGFyX3dyYXBwZXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgLW1vei10cmFuc2l0aW9uOiBub25lO1xuICB0cmFuc2l0aW9uOiBub25lO1xufVxuXG4uYXZhdGFyX3JvbGxvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAxMTAwO1xuICBwYWRkaW5nOiA2cHg7XG4gIGNvbG9yOiAkYXZhdGFyUm9sbG92ZXJDb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGF2YXRhclJvbGxvdmVyQm9yZGVyUmFkaXVzO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYXZhdGFyUm9sbG92ZXJCYWNrZ3JvdW5kQ29sb3I7XG4gIG9wYWNpdHk6IDAuOTtcblxuICBpbWcge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiAxMDBweDtcbiAgICBoZWlnaHQ6IDEwMHB4O1xuICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICB9XG4gIC5yb2xsb3Zlcl9jb250ZW50IHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogMjAwcHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gICAgLm5hbWUge1xuICAgICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICAgIGZvbnQtc2l6ZTogMThweDtcbiAgICB9XG4gICAgLm1vcmUge1xuICAgICAgZHQsIGRkIHtcbiAgICAgICAgd2lkdGg6IDQ5cHg7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB9XG4gICAgICAuc3RhdCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBjb21tb24gdmFyaWFibGVzIGZvciB0aGUgc3RvcmUgJiYgYWNjb3VudCB0ZW1wbGF0ZXMgKi9cblxuQG1peGluIGNvbnRhaW5lciB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRHcmV5O1xuICBib3JkZXI6ICRib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXJSYWRpdXM7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIHBhZGRpbmc6IDIwcHg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuXG4gICAgQHN1cHBvcnRzKHBhZGRpbmc6IG1heCgwcHgpKSB7XG4gICAgICBwYWRkaW5nLWxlZnQ6IG0je2F9eCgxMHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LWxlZnQpKTtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IG0je2F9eCgxMHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSk7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBzdWJDb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbGlnaHRHcmV5O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICBjb2xvcjogJGJsYWNrO1xuICBkaXNwbGF5OiBibG9jaztcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogMjBweDtcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWF4LXdpZHRoOiAkd2lkdGg7XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICB9XG59XG5cbkBtaXhpbiB1bmlvbkJ1dHRvbiB7XG4gIHBhZGRpbmc6IDEycHggMjRweDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtHcmV5O1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXJSYWRpdXM7XG4gIGNvbG9yOiAkd2hpdGU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgZm9udC1zaXplOiBpbml0aWFsO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtdHJhbnNmb3JtOiBjYXBpdGFsaXplO1xuICB0cmFuc2l0aW9uOiAkZWFzZTtcblxuICAmOmhvdmVyLCAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiBsaWdodGVuKCRkYXJrR3JleSwgMTApO1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgYm94LXNoYWRvdzogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gcHJpbWFyeUJ1dHRvbiB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmltYXJ5O1xuXG4gICY6aG92ZXIsICY6Zm9jdXMge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRob3ZlclByaW1hcnk7XG4gIH1cbn1cblxuQG1peGluIGZvcm1JbnB1dCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmbG9hdDogbGVmdDtcbiAgbWFyZ2luLWJvdHRvbTogMThweDtcbiAgYm9yZGVyOiAwO1xuICBwYWRkaW5nOiAwO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAzNnB4O1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xuICBsaW5lLWhlaWdodDogJGZvcm1JbnB1dExpbmVIZWlnaHQ7XG4gIHRleHQtaW5kZW50OiA5cHg7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAmOmZvY3VzIHtcbiAgICBvcGFjaXR5OiAkZm9ybUVsZW1lbnRGb2N1c09wYWNpdHk7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5AbWl4aW4gZm9ybVNlbGVjdCB7XG4gIGhlaWdodDogMzZweDtcbiAgY29sb3I6ICRibGFjaztcbiAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICY6Zm9jdXMge1xuICAgIG9wYWNpdHk6ICRmb3JtRWxlbWVudEZvY3VzT3BhY2l0eTtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG59XG5cbkBtaXhpbiBzZWxlY3RCYWNrZ3JvdW5kIHtcbiAgYXBwZWFyYW5jZTogbm9uZTtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKFwiZGF0YTppbWFnZS9zdmcreG1sO2Jhc2U2NCxQRDk0Yld3Z2RtVnljMmx2YmowaU1TNHdJaUJsYm1OdlpHbHVaejBpYVhOdkxUZzROVGt0TVNJL1Bqd2hSRTlEVkZsUVJTQnpkbWNnVUZWQ1RFbERJQ0l0THk5WE0wTXZMMFJVUkNCVFZrY2dNUzR4THk5RlRpSWdJbWgwZEhBNkx5OTNkM2N1ZHpNdWIzSm5MMGR5WVhCb2FXTnpMMU5XUnk4eExqRXZSRlJFTDNOMlp6RXhMbVIwWkNJK1BITjJaeUIyWlhKemFXOXVQU0l4TGpFaUlHbGtQU0pEWVhCaFh6RWlJSGh0Ykc1elBTSm9kSFJ3T2k4dmQzZDNMbmN6TG05eVp5OHlNREF3TDNOMlp5SWdlRzFzYm5NNmVHeHBibXM5SW1oMGRIQTZMeTkzZDNjdWR6TXViM0puTHpFNU9Ua3ZlR3hwYm1zaUlIZzlJakJ3ZUNJZ2VUMGlNSEI0SWlCM2FXUjBhRDBpTXpBMmNIZ2lJR2hsYVdkb2REMGlNekEyY0hnaUlIWnBaWGRDYjNnOUlqQWdNQ0F6TURZZ016QTJJaUJ6ZEhsc1pUMGlaVzVoWW14bExXSmhZMnRuY205MWJtUTZibVYzSURBZ01DQXpNRFlnTXpBMk95SWdlRzFzT25Od1lXTmxQU0p3Y21WelpYSjJaU0krUEdjK1BHY2dhV1E5SW1WNGNHRnVaQzF0YjNKbElqNDhjRzlzZVdkdmJpQndiMmx1ZEhNOUlqSTNNQzR6TERVNExqWTFJREUxTXl3eE56VXVPVFVnTXpVdU55dzFPQzQyTlNBd0xEazBMak0xSURFMU15d3lORGN1TXpVZ016QTJMRGswTGpNMUlDSXZQand2Wno0OEwyYytQR2MrUEM5blBqeG5Qand2Wno0OFp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BHYytQQzluUGp4blBqd3ZaejQ4Wno0OEwyYytQR2MrUEM5blBqeG5Qand2Wno0OFp6NDhMMmMrUEdjK1BDOW5QanhuUGp3dlp6NDhaejQ4TDJjK1BDOXpkbWMrXCIpO1xuICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjYWxjKDk4Ljc1JSAtIDVweCkgNTAlO1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICBiYWNrZ3JvdW5kLXNpemU6IDEwcHg7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXJSYWRpdXM7XG59XG5cbkBtaXhpbiBmb3JtTGFiZWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZmxvYXQ6IGxlZnQ7XG4gIG1hcmdpbi1ib3R0b206IDhweDtcbiAgcGFkZGluZzogMDtcbiAgd2lkdGg6IDEwMCU7XG4gIGxpbmUtaGVpZ2h0OiAkTGFiZWxMaW5lSGVpZ2h0O1xuICBmb250LXdlaWdodDogbm9ybWFsO1xufVxuXG5AbWl4aW4gZXJyb3Ige1xuICBjb2xvcjogJGVycm9yUmVkO1xufVxuXG5AbWl4aW4gbGVnZW5kIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBib3JkZXI6IDA7XG4gIHdpZHRoOiAxMDAlO1xuICB0b3A6IDVweDtcbiAgY29sb3I6ICRibGFjaztcbn1cblxuQG1peGluIG1vYmlsZURpc3BsYXlCbG9jayB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgcGFkZGluZzogMTBweDtcblxuICAgIEBzdXBwb3J0cyhwYWRkaW5nOiBtYXgoMHB4KSkge1xuICAgICAgcGFkZGluZy1sZWZ0OiBtI3thfXgoMTBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1sZWZ0KSk7XG4gICAgICBwYWRkaW5nLXJpZ2h0OiBtI3thfXgoMTBweCwgZW52KHNhZmUtYXJlYS1pbnNldC1yaWdodCkpO1xuICAgIH1cbiAgfVxufVxuXG5AbWl4aW4gbW9iaWxlVGFibGUge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgIC50YWJsZSB7XG4gICAgICB0aGVhZCB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIHRyIHtcbiAgICAgIHRkLCB0aCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIHdyYXAge1xuICAud3JhcCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBjbGVhcjogYm90aDtcbiAgICBtYXJnaW46IGF1dG87XG4gICAgcGFkZGluZzogMCAxMnB4O1xuICAgIG1heC13aWR0aDogJHdpZHRoO1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHdpZHRoKSB7XG4gICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgfVxuICB9XG59XG5cbkBtaXhpbiBub0JvcmRlciB7XG4gIGJvcmRlcjogMCAhaW1wb3J0YW50O1xufVxuLm5vLWJvcmRlciB7XG4gIEBpbmNsdWRlIG5vQm9yZGVyO1xufVxuXG5AbWl4aW4gY2xlYXJmaXgoKSB7XG4gICY6YmVmb3JlLCAmOmFmdGVyIHtcbiAgICBjb250ZW50OiAnJztcbiAgICBkaXNwbGF5OiB0YWJsZTsgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuLmNsZWFyZml4IHtcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cbiIsImJvZHkge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZENvbG9yO1xuICBmb250LWZhbWlseTogJGZvbnRGYW1pbHk7XG4gIGZvbnQtc2l6ZTogJGZvbnRTaXplO1xuICBmb250LXdlaWdodDogJGZvbnRXZWlnaHQ7XG5cbiAgJi5hY2NvdW50LCAmLnN0b3JlIHtcbiAgICAjcGFnZSB7XG4gICAgICBAaW5jbHVkZSB3cmFwO1xuXG4gICAgICBhIHtcbiAgICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG4gICAgICAgIGNvbG9yOiAkbGlua0NvbG9yO1xuXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICBjb2xvcjogJGxpbmtDb2xvckhvdmVyO1xuICAgICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgICAgIG91dGxpbmU6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnJvdyB7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICB9XG4gIH1cbiAgJi5hY2NvdW50IHtcbiAgICAjY29udGFpbmVyIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgcGFkZGluZzogMCAxMnB4O1xuICAgICAgbWF4LXdpZHRoOiAkd2lkdGg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgJGFjY291bnRNb2JpbGVQYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnN0b3JlIHtcbiAgICAuc2VjdGlvbi1jYXJ0LFxuICAgIC5zZWN0aW9uLW9yZGVyLWJpbGxpbmcsXG4gICAgLnNlY3Rpb24tc2hpcHBpbmctbWV0aG9kLFxuICAgIC5zZWN0aW9uLXBheW1lbnQtaW5mb3JtYXRpb24sXG4gICAgLnNlY3Rpb24tb3JkZXItc3VtbWFyeSB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY2hlY2tvdXRCYWNrZ3JvdW5kQ29sb3I7XG5cbiAgICAgICYsIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYge1xuICAgICAgICBjb2xvcjogJGJsYWNrO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLm1lZGlhIHtcbiAgICBvdmVyZmxvdzogYXV0bztcbiAgfVxuICAmLnByaXZhY3kge1xuICAgIC5zZWN0aW9uLnByaXZhY3kge1xuICAgICAgbWF4LXdpZHRoOiAkd2lkdGg7XG4gICAgICBtYXJnaW46IGF1dG87XG4gICAgICBwYWRkaW5nOiAxMnB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBwYWRkaW5nOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG5AaWYgKCRoYXNXcmFwID09IHRydWUpIHtcbiAgQGluY2x1ZGUgd3JhcDtcbn1cblxudWwge1xuICAtd2Via2l0LW1hcmdpbi1iZWZvcmU6IDA7XG4gIC13ZWJraXQtbWFyZ2luLWFmdGVyOiAwO1xuICAtd2Via2l0LW1hcmdpbi1zdGFydDogMDtcbiAgLXdlYmtpdC1tYXJnaW4tZW5kOiAwO1xuICAtd2Via2l0LXBhZGRpbmctc3RhcnQ6IDA7XG4gIHBhZGRpbmc6IDA7XG5cbiAgbGkge1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIH1cbn1cblxub2wge1xuICAtd2Via2l0LW1hcmdpbi1iZWZvcmU6IDA7XG4gIC13ZWJraXQtbWFyZ2luLWFmdGVyOiAwO1xuICAtd2Via2l0LW1hcmdpbi1zdGFydDogMDtcbiAgLXdlYmtpdC1tYXJnaW4tZW5kOiAwO1xuICAtd2Via2l0LXBhZGRpbmctc3RhcnQ6IDA7XG59XG5cbmgxLCBoMiwgaDMge1xuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICBsaW5lLWhlaWdodDogMS40O1xuICB9XG59XG5cbi8qIEZvcm0gZWxlbWVudHMgKi9cbmlucHV0IHtcbiAgYm9yZGVyOiAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICBwYWRkaW5nOiA1cHg7XG4gIGhlaWdodDogMzZweDtcbiAgY29sb3I6ICRibGFjaztcblxuICAmOmZvY3VzIHtcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5idXR0b24ge1xuICAmOmZvY3VzIHtcbiAgICBvcGFjaXR5OiAwLjg7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5hIHtcbiAgJjpmb2N1cyB7XG4gICAgb3V0bGluZTogbm9uZTtcbiAgfVxufVxuXG5zZWxlY3Qge1xuICBjb2xvcjogJGJsYWNrO1xuICB0ZXh0LWluZGVudDogNXB4O1xufVxuXG4uaW5wdXQsIC5zZWxlY3Qge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICB3aWR0aDogMTAwJTtcbiAgY29sb3I6ICRibGFjaztcblxuICBsYWJlbCB7XG4gICAgQGluY2x1ZGUgZm9ybUxhYmVsO1xuICB9XG4gIGlucHV0IHtcbiAgICBAaW5jbHVkZSBmb3JtSW5wdXQ7XG4gIH1cbiAgc2VsZWN0IHtcbiAgICBAaW5jbHVkZSBmb3JtSW5wdXQ7XG4gICAgQGluY2x1ZGUgZm9ybVNlbGVjdDtcbiAgICBAaW5jbHVkZSBzZWxlY3RCYWNrZ3JvdW5kO1xuICB9XG4gIC5lcnJvciB7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHJpZ2h0OiA1cHg7XG4gICAgdG9wOiAtMnB4O1xuICAgIGZvbnQtc2l6ZTogMTRweDtcblxuICAgIEBpbmNsdWRlIGVycm9yO1xuICB9XG4gICYuaW5wdXQtbWVzc2FnZSB7XG4gICAgLmVycm9yIHtcbiAgICAgIG1hcmdpbi10b3A6IDlweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLyogcm93ICovXG4ucm93IHtcbiAgbWFyZ2luLWxlZnQ6IDA7XG4gIG1hcmdpbi1yaWdodDogMDtcblxuICAmOmJlZm9yZSB7XG4gICAgY29udGVudDogbm9uZTtcbiAgfVxufVxuXG4ucm93LWJ1dHRvbnMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIGZsb2F0OiBsZWZ0O1xuICBtYXJnaW46IDIwcHggMDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gIC5idXR0b24ge1xuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICB3aWR0aDogMTAwJSAhaW1wb3J0YW50O1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBjbGVhcjogYm90aDtcbiAgICAgIG1hcmdpbjo1cHggMDtcbiAgICB9XG4gICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgbWFyZ2luOiAxMHB4IDAgIWltcG9ydGFudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5yb3ctYnV0dG9ucy10d28ge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmctdG9wOiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8qIGJ1dHRvbnMgKi9cbi5idXR0b24sIGEuYnV0dG9uIHtcbiAgQGluY2x1ZGUgdW5pb25CdXR0b247XG5cbiAgLyogUGlzcyBQb29yIFBsYW5uaW5nIFByb21vdGVzIFBvb3IgUGVyZm9ybWFuY2UgICovXG4gIGJvZHkuYWNjb3VudCAjcGFnZSAmLFxuICBib2R5LnN0b3JlICNwYWdlICYge1xuICAgIGNvbG9yOiAkd2hpdGU7XG4gIH1cbn1cblxuLmJ1dHRvbi1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgcHJpbWFyeUJ1dHRvbjtcbn1cblxuYnV0dG9uW2Rpc2FibGVkPVwiZGlzYWJsZWRcIl0sXG5hW2Rpc2FibGVkPVwiZGlzYWJsZWRcIl0ge1xuICBjdXJzb3I6IG5vdC1hbGxvd2VkICFpbXBvcnRhbnQ7XG4gIG9wYWNpdHk6IDAuNTtcbn1cblxuLmJ0bi1hY2NvcmRpb24ge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHBhZGRpbmctYm90dG9tOiAxZW07XG5cbiAgJjphZnRlciB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDA7XG4gICAgaGVpZ2h0OiAwO1xuICAgIG1hcmdpbi1sZWZ0OiAwLjVlbTtcbiAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIGJvcmRlci13aWR0aDogMC41ZW0gMC4yNWVtIDAgMC4yNWVtO1xuICAgIGJvcmRlci1jb2xvcjogJGxpbmtDb2xvciB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgfVxuICAmW2FyaWEtZXhwYW5kZWQ9XCJ0cnVlXCJdIHtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHRyYW5zZm9ybTogcm90YXRlKDE4MGRlZyk7XG4gICAgfVxuICB9XG59XG5cbiNmYW5jeWJveC1jb250ZW50IHtcbiAgcCB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICBidXR0b24ge1xuICAgIHBhZGRpbmc6IDEwcHggMTRweDtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRncmV5O1xuICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcbiAgICBAaW5jbHVkZSB1bmlvbkJ1dHRvbjtcblxuICAgICY6aG92ZXIge1xuICAgICAgb3BhY2l0eTogMC43NTtcbiAgICB9XG4gIH1cbn1cbiIsIlxuLyogc3RvcmUgaW1wb3J0cyAqL1xuQGltcG9ydCBcIi4vbWl4aW4vZmxhZ2VkLXByb2R1Y3QtbGlzdGluZy1taXhpbi5zY3NzXCI7XG5AaW1wb3J0IFwiLi9taXhpbi9nZW5lcmFsLXByb2R1Y3QtbGlzdGluZy1taXhpbi5zY3NzXCI7XG5AaW1wb3J0IFwiLi9nbG9iYWwvc3RvcmUtZ2xvYmFsLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2JpbGxpbmcvMi1jb2wtYmlsbGluZy1saXN0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2NhcnQvY2FydC10YWJsZS5zY3NzXCI7XG5AaW1wb3J0IFwiLi9jYXRlZ29yaWVzLzN4LWNhdGVnb3JpZXMtZ3JpZC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9jYXRlZ29yaWVzL2NhdGVnb3JpZXMtbmF2LWxpc3Quc2Nzc1wiO1xuQGltcG9ydCBcIi4vY2F0ZWdvcnkvMy1jb2wtY2F0ZWdvcnktZ3JpZC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9vcmRlci9leHRyYS8xLWNvbC1vcmRlci1leHRyYS1saXN0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCIuL29yZGVyL3BheW1lbnQvMS1jb2wtb3JkZXItcGF5bWVudC10YWJsZS5zY3NzXCI7XG5AaW1wb3J0IFwiLi9vcmRlci93aWxsY2FsbC8xLWNvbC1vcmRlci13aWxsLWNhbGwtbGlzdGluZy5zY3NzXCI7XG5AaW1wb3J0IFwiLi9wYXJ0aWFscy9hc2lkZS8xLWNvbC1hc2lkZS5zY3NzXCI7XG5AaW1wb3J0IFwiLi9wYXJ0aWFscy9tZXRhL21ldGEtcm93LnNjc3NcIjtcbkBpbXBvcnQgXCIuL3BhcnRpYWxzL3Byb2dyZXNzL3Byb2dyZXNzLWluZGljYXRvci1yb3cuc2Nzc1wiO1xuQGltcG9ydCBcIi4vcHJvZHVjdC9kZXRhaWwvMi1jb2wtcHJvZHVjdC1kZXRhaWwuc2Nzc1wiO1xuQGltcG9ydCBcIi4vcHJvZHVjdC9saXN0aW5nLzItY29sLXByb2R1Y3QtZ3JpZC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9wcm9kdWN0L2xpc3RpbmcvMy1jb2wtcHJvZHVjdC1ncmlkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3NoaXBwaW5nLzItY29sLXNoaXBwaW5nLWxpc3Rpbmcuc2Nzc1wiO1xuIiwiLyogbWl4aW4gZm9yIGZsYWdlZCBsaXN0aW5nIGZvciBwcm9kdWN0cyBhbmQgY2F0ZWdvcmllcyAqL1xuXG5AbWl4aW4gZmxhZ2dlZFByb2R1Y3RMaXN0aW5nICgkd2lkdGgpIHtcbiAgLml0ZW0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgbWFyZ2luOiAwIDElIDElIDA7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogMDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21hbGxNb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIG1hcmdpbjogMCAwIDE1cHggMDtcbiAgICB9XG4gICAgPiAucHJvZHVjdCB7XG4gICAgICBib3JkZXI6IDRweCBzb2xpZCAkYmxhY2s7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB9XG4gICAgLmZpZ3VyZSB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAxMDAlO1xuICAgICAgbWluLXdpZHRoOiAwO1xuICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogcmdiYSgkYmxhY2ssIDAuOSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDEwMCU7XG4gICAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIGltZyB7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICAgIHRyYW5zaXRpb246ICRlYXNlO1xuICAgICAgfVxuICAgIH1cbiAgICAuY29udGVudCB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgbWFyZ2luOiAwO1xuICAgICAgcGFkZGluZzogMDtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGJvdHRvbTogMDtcbiAgICAgIGxlZnQ6IDA7XG5cbiAgICAgIGEge1xuICAgICAgICBwYWRkaW5nOiAxMnB4IDEwcHggMTBweCAxMHB4O1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG4gICAgICB9XG4gICAgICAudGFiIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBib3R0b206IDEwMCU7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBvdmVyZmxvdzogaGlkZGVuO1xuXG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiLlwiO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgICBsaW5lLWhlaWdodDogMDtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLmRvd24ge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiA0MHB4O1xuICAgICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgICBmbG9hdDogbGVmdDtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgICAgY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodEdyZXk7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMDtcbiAgICAgICAgICBmb250LXNpemU6IDI0cHg7XG5cbiAgICAgICAgICBpIHtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5jb3N0IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBoZWlnaHQ6IDQwcHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGJsYWNrO1xuICAgICAgICAgIGZsb2F0OiByaWdodDtcbiAgICAgICAgICBjb2xvcjogI2ZmZjtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICAgICA+IHNwYW4ge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMi41O1xuICAgICAgICAgICAgcGFkZGluZzogMCAxNHB4IDAgMTRweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiAzMDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICAucHJvZHVjdC1kZXRhaWxzIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIG1heC1oZWlnaHQ6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG1heC1oZWlnaHQgMC44cyBlYXNlO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgICAgICAgICBmb250LXdlaWdodDogNjAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgICAgICB9XG4gICAgICAgIC5wcm9kdWN0IHtcbiAgICAgICAgICAmLmNvc3Qge1xuICAgICAgICAgICAgZGlzcGxheTogbm9uZVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmOmhvdmVyIC5jb250ZW50IC5wcm9kdWN0LWRldGFpbHMge1xuICAgICAgbWF4LWhlaWdodDogMjAwcHg7XG4gICAgfVxuICAgICY6aG92ZXIgaW1nIHtcbiAgICAgIHRyYW5zZm9ybTogc2NhbGUoMS4yNSk7XG4gICAgfVxuICAgIC5mZWF0dXJlZC5wcm9kdWN0cyAubGlzdGluZyAuaXRlbSB7XG4gICAgICB3aWR0aDogNDklO1xuXG4gICAgICAmLnNlY29uZCB7XG4gICAgICAgIG1hcmdpbjogMCAwIDIlO1xuICAgICAgfVxuICAgICAgLmNvbnRlbnQgLnRhYiB7XG4gICAgICAgIGhlaWdodDogNDBweDtcblxuICAgICAgICAuZG93biB7XG4gICAgICAgICAgd2lkdGg6IDQ1cHg7XG4gICAgICAgICAgaGVpZ2h0OiA0MHB4O1xuICAgICAgICAgIGNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgY29udGVudDogJ1xcZTI2MCc7XG4gICAgICAgICAgICBmb250LWZhbWlseTogJ0dseXBoaWNvbnMgSGFsZmxpbmdzJztcbiAgICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgICAgICAgICB0b3A6IDNweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMjRweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLmNvc3Qge1xuICAgICAgICAgIHBhZGRpbmctdG9wOiAxMXB4O1xuXG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDE1cHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gLmZsYWcge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IDcwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogNzBweDtcbiAgICAgIHotaW5kZXg6IDEwMTtcbiAgICAgIHRleHQtaW5kZW50OiAtOTk5OWVtO1xuICAgICAgYm9yZGVyOiBub25lO1xuICAgICAgYmFja2dyb3VuZDogdXJsKCcvdGhlbWVzL29yaWdpbi9pbWcvZmxhZ3MucG5nJykgMCAwIG5vLXJlcGVhdCB0cmFuc3BhcmVudDtcbiAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG5cbiAgICAgICYuZmVhdHVyZWQge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMTU2cHggMDtcbiAgICAgIH1cbiAgICAgICYuYnVuZGxlIHtcbiAgICAgICAgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwO1xuICAgICAgfVxuICAgICAgJi5uZXcge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtNzhweCAwcHg7XG4gICAgICB9XG4gICAgICAmLnNhbGUge1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiAtMjMycHggMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3RzIC5saXN0aW5nIC5pdGVtLnRoaXJkIHtcbiAgICAgIG1hcmdpbjogMCAwIDIlO1xuICAgIH1cbiAgICAucHJvZHVjdHMuc2hvcCB7XG4gICAgICAubGlzdGluZyB7XG4gICAgICAgIC5pdGVtIHtcbiAgICAgICAgICAuY29udGVudCB7XG4gICAgICAgICAgICAudGFiIHtcbiAgICAgICAgICAgICAgLmRvd24ge1xuICAgICAgICAgICAgICAgIHdpZHRoOiAzMXB4O1xuXG4gICAgICAgICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICAgICAgICBmb250LXNpemU6IDEzcHg7XG4gICAgICAgICAgICAgICAgICB0b3A6IDRweDtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLm5vbmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCArIDEpIHtcbiAgICAuY29tcGFjdCB7XG4gICAgICAuaXRlbSB7XG4gICAgICAgIC5jb250ZW50IHtcbiAgICAgICAgICAudGFiIHtcbiAgICAgICAgICAgIGhlaWdodDogMzBweDtcblxuICAgICAgICAgICAgLmRvd24ge1xuICAgICAgICAgICAgICBoZWlnaHQ6IDMwcHg7XG4gICAgICAgICAgICAgIHdpZHRoOiAzMHB4O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgICAgICBmb250LXNpemU6IDE0cHg7XG5cbiAgICAgICAgICAgICAgaSB7XG4gICAgICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgID4gLmNvc3Qge1xuICAgICAgICAgICAgICBsaW5lLWhlaWdodDogMi40O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgPiAuY29zdCA+IHNwYW4ge1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwIDE0cHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgc3BhbiB7XG4gICAgICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKipcbiAqIGdlbmVyYWwgbGlzdGluZyBmb3IgcHJvZHVjdHMgYW5kIGNhdGVnb3JpZXNcbiAqL1xuQG1peGluIGdlbmVyYWxQcm9kdWN0TGlzdGluZyAoJHdpZHRoKSB7XG4gIC5pdGVtIHtcbiAgICB3aWR0aDogJHdpZHRoO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgIC5maWd1cmUge1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMTAwJTtcbiAgICAgIG1pbi13aWR0aDogMDtcbiAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIGEge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG1heC13aWR0aDogMTAwJTtcbiAgICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBtYXJnaW46IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuXG4gICAgICAucHJvZHVjdC1jb250YWluZXIge1xuICAgICAgICAucHJvZHVjdCB7XG4gICAgICAgICAgbWFyZ2luLXRvcDogNXB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBzdG9yZSBlbGVtZW50cyAqL1xuLm1haW4tc3RvcmUtcHJvZHVjdHMsXG4ubWFpbi1jYXRlZ29yeS1wcm9kdWN0cyB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBAaW5jbHVkZSBtb2JpbGVEaXNwbGF5QmxvY2s7XG4gIHdpZHRoOiA3NSU7XG4gIGZsb2F0OiBsZWZ0O1xuICBwYWRkaW5nLXJpZ2h0OiAxNXB4O1xuXG4gIGltZyB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cbn1cblxuLmFzaWRlLXN0b3JlIHtcbiAgQGluY2x1ZGUgbW9iaWxlRGlzcGxheUJsb2NrO1xuICBjb2xvcjogJGJsYWNrO1xuICB3aWR0aDogMjUlO1xuICBmbG9hdDogcmlnaHQ7XG4gIHBhZGRpbmctbGVmdDogMTVweDtcbn1cblxuYXNpZGUjd3UtYWxlcnQtYmFubmVyIHtcbiAgZm9udC1mYW1pbHk6IEFyaWFsLCBIZWx2ZXRpY2EsIHNhbnMtc2VyaWY7XG4gIGZvbnQtc2l6ZTogMTZweDtcbiAgd2lkdGg6IDEwMHZ3O1xuICBtaW4taGVpZ2h0OiA1MHB4O1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICNkYjAwMDA7XG4gIG9wYWNpdHk6IDAuOTtcbiAgY29sb3I6ICNmZmY7XG4gIHotaW5kZXg6IDEyMzQ7XG4gIGRpc3BsYXk6IGZsZXg7XG4gIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIGp1c3RpZnktY29udGVudDogY2VudGVyO1xuXG4gIC5tZXNzYWdlLXRleHQge1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICBmbGV4LWJhc2lzOiA1MCU7XG5cbiAgICAubW9yZS1pbmZvIHtcbiAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcblxuICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAjZmZmO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2xvc2Uge1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgICBvcGFjaXR5OiAxO1xuICAgIGNvbG9yOiAjZmZmO1xuICAgIGhlaWdodDogMjBweDtcbiAgICB3aWR0aDogMjBweDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgcmlnaHQ6IDEwcHg7XG4gICAgdG9wOiAxMHB4O1xuICB9XG59IiwiLnNlY3Rpb24tb3JkZXItYmlsbGluZyB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcblxuICAuc2VjdGlvbi1iaWxsaW5nLXByb2ZpbGUsXG4gIC5zZWN0aW9uLWJpbGxpbmctaW5mb3JtYXRpb24ge1xuICAgIEBpbmNsdWRlIHN1YkNvbnRhaW5lcjtcblxuICAgIGgxLCBoMiwgaDMge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmO1xuICAgICAgYm9yZGVyLXJhZGl1czogNHB4O1xuICAgICAgZm9udDogMzAwIDE2cHggXCJIZWx2ZXRpY2EgTmV1ZVwiLCBIZWx2ZXRpY2EsIEFyaWFsLCBzYW5zLXNlcmlmO1xuICAgIH1cbiAgICAucm93LXBheW1lbnQtbWV0aG9kIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICAgIC5maWVsZHNldCB7XG4gICAgICBwYWRkaW5nOiAwIDIwcHggMCAwO1xuICAgICAgZmxvYXQ6IGxlZnQ7XG4gICAgICB3aWR0aDogNTAlO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgIH1cbiAgICAgIGxlZ2VuZCB7XG4gICAgICAgIEBpbmNsdWRlIGxlZ2VuZDtcbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uIHtcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICAgIC5idXR0b24tY29udGludWUsXG4gICAgLmJ1dHRvbi1zYXZlIHtcbiAgICAgIEBpbmNsdWRlIHByaW1hcnlCdXR0b247XG4gICAgfVxuXG4gIH1cbiAgLnNlY3Rpb24tYmlsbGluZy1wcm9maWxlIHtcbiAgICBib3JkZXItYm90dG9tLWxlZnQtcmFkaXVzOiAwO1xuICAgIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICB9XG4gIC5zZWN0aW9uLWJpbGxpbmctaW5mb3JtYXRpb24ge1xuICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6IDA7XG4gICAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gIH1cbiAgLlN0cmlwZUVsZW1lbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIG1hcmdpbi1ib3R0b206IDE4cHg7XG4gICAgYm9yZGVyOiAwO1xuICAgIHBhZGRpbmc6IDhweCAxMHB4O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMzZweDtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgIHRleHQtaW5kZW50OiA5cHg7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICBib3JkZXItcmFkaXVzOiA0cHg7XG4gIH1cbn1cbiIsIi5jYXJ0LWluZm8ge1xuICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG4gIGNvbG9yOiAkYmxhY2s7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBwYWRkaW5nOiAwO1xuXG4gIC5jYXJ0LWl0ZW1zIHtcbiAgICBmbG9hdDogcmlnaHQ7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICB9XG59XG5cbi5zZWN0aW9uLWNhcnQge1xuICBAaW5jbHVkZSBjb250YWluZXI7XG5cbiAgaDEge1xuICAgIGZvbnQtc2l6ZTogMjhweDtcbiAgICBtYXJnaW46IDIwcHggMCA0MHB4IDA7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1jYXJ0LWluZm9ybWF0aW9uIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAucmV2aWV3IHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGVCb3JkZXJDb2xvcjtcbiAgICAgIHBhZGRpbmc6IDEwcHggMTJweDtcbiAgICB9XG4gIH1cbiAgLnRhYmxlIHtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICAgIHBhZGRpbmc6IDEwcHg7XG5cbiAgICB0aGVhZCB7XG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAudG90YWwge1xuICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICB9XG4gICAgfVxuICAgIHRoLnF1YW50aXR5LCB0ZC5xdWFudGl0eSB7XG4gICAgICB3aWR0aDogMTAwcHg7XG4gICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGgge1xuICAgICAgcGFkZGluZzogMTJweDtcbiAgICB9XG4gICAgdGQge1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udFdlaWdodDMwMDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBjb250ZW50OiBhdHRyKGRhdGEtZGVzY3JpcHRpb24pO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYudGQtYnVuZGxlLWV4dHJhIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuYnV0dG9uLXF1YW50aXR5IHtcbiAgICAgICAgaGVpZ2h0OiAzMnB4O1xuICAgICAgICB3aWR0aDogMzFweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtHcmV5O1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICBsaW5lLWhlaWdodDogMS4wO1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiBib2xkO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRsaWdodEJsYWNrO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLml0ZW0ge1xuICAgICAgICBhIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgY29sb3I6ICRncmV5O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAuc2t1IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBjb2xvcjogJGRhcmtHcmV5O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnF1YW50aXR5IHtcbiAgICAgICAgaW5wdXQge1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICBoZWlnaHQ6IDMycHg7XG4gICAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgICAgdG9wOiAycHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiA0cHg7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkd2hpdGU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdGZvb3Qge1xuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZzogMjBweCAwO1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIH1cbiAgICAgIHRoLCB0ZCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgcGFkZGluZzogOHB4IDEycHggNHB4IDEycHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRkIHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBwYWRkaW5nOiAycHggMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAudGFibGUgPiB0aGVhZCA+IHRyID4gdGgsXG4gIC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgIGJvcmRlci10b3A6IDA7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgJjpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR0YWJsZUJvcmRlckNvbG9yLCAuMik7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC50YWJsZSA+IHRmb290ID4gdHIgPiB0ZCxcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIHdpZHRoOiAxMDBweDtcblxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgfVxuICB9XG4gIC5yb3ctYnV0dG9ucy1hY3Rpb25zIHtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG5cbiAgICBhLCBidXR0b24ge1xuICAgICAgQGluY2x1ZGUgdW5pb25CdXR0b247XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbWlkR3JleTtcbiAgICAgIH1cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgIH1cbiAgICB9XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1pbi13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIC5idXR0b24tZ3JvdXAge1xuICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAuYnV0dG9uLWNvbnRpbnVlIHtcbiAgICAgICAgcGFkZGluZzogMTJweDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICRkYXJrR3JleTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uLXVwZGF0ZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDIwcHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLmJ1dHRvbi1jaGVja291dCB7XG4gICAgICBAaW5jbHVkZSBwcmltYXJ5QnV0dG9uO1xuICAgIH1cbiAgfVxufVxuIiwiLnNlY3Rpb24tc3RvcmUtY2F0ZWdvcmllcyB7XG4gIEBpbmNsdWRlIGdlbmVyYWxQcm9kdWN0TGlzdGluZygkd2lkdGg6IDMzJSk7XG5cbiAgLmhlYWRlci1zdG9yZS1jYXRlZ29yaWVzIHtcbiAgICBoMi50aXRsZSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA2MHB4O1xuICAgIH1cbiAgfVxuICAuaXRlbSB7XG4gICAgaGVpZ2h0OiAxMDAlO1xuICAgIG1pbi1oZWlnaHQ6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgfVxuICAuaXRlbSB7XG4gICAgLmNvbnRlbnQge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICBhIHtcbiAgICAgICAgcGFkZGluZzogNnB4IDEwcHggMTBweCAxMHB4O1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGNvbG9yOiByZ2JhKCRibGFjaywgMC41KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuaGVhZGVyLWNhdGVnb3JpZXMsIC5oZWFkZXItc3RvcmUtY2F0ZWdvcmllcyB7XG4gICAgLnRpdGxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgfVxuICB9XG4gIC5kZXRhaWwtc3RvcmUtY2F0ZWdvcmllcyB7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW46IDIwcHggYXV0byAxMDBweCBhdXRvO1xuXG4gICAgLmxpc3Rpbmcge1xuICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgIGZsZXgtd3JhcDogd3JhcDtcbiAgICB9XG4gIH1cbiAgLmRldGFpbHMge1xuICAgICYuZXhjZXJwdCB7XG4gICAgICAubmFtZSB7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdG9wOiA1cHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBzdG9yZSBjYXRlZ29yeSBuYXYgbGlzdCAqL1xuLm5hdi1jYXRlZ29yaWVzIHtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gIC53cmFwIHtcbiAgICBwYWRkaW5nLWJvdHRvbTogMTJweDtcbiAgICBwYWRkaW5nLXRvcDogMTJweDtcblxuICAgIC5saXN0aW5nIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLWNhdGVnb3J5LXByb2R1Y3RzIHtcbiAgLmhlYWRlci1jYXRlZ29yeSB7XG4gICAgaDEudGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNjBweDtcbiAgICB9XG4gIH1cbiAgLmxpc3Rpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8vIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcbiAgfVxuICAuZGV0YWlsIHtcbiAgICBAaW5jbHVkZSBnZW5lcmFsUHJvZHVjdExpc3RpbmcoJHdpZHRoOiAzMyUpO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luOiAwIDAgMTAwcHggMDtcblxuICAgIC5pdGVtIHtcbiAgICAgIHBhZGRpbmc6IDAgMjBweDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgcGFkZGluZzogMCAxMHB4O1xuICAgICAgICB3aWR0aDogNTAlO1xuXG4gICAgICAgIC5uYW1lIHtcbiAgICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5kZXRhaWxzIHtcbiAgICAgIC50YWIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLnByb2R1Y3QtZGV0YWlscyB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNhc2gge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICB9XG4gIH1cbn1cbiIsIi5zZWN0aW9uLW9yZGVyLWV4dHJhIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgcGFkZGluZzogMjBweDtcbiAgfVxuICAuc2VjdGlvbi1hZGRpdGlvbmFsLWluZm9ybWF0aW9uIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAuZmllbGRzZXQge1xuICAgICAgbGVnZW5kIHtcbiAgICAgICAgQGluY2x1ZGUgbGVnZW5kO1xuXG4gICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICB9XG4gICAgfVxuICAgIC5yb3ctYnV0dG9ucyB7XG4gICAgICAuYnV0dG9uLXNoaXBwaW5nLWJhY2sge1xuICAgICAgICBwYWRkaW5nOiAxNHB4IDI0cHg7XG5cbiAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJ1dHRvbi1zdWJtaXQtYWRkaXRpb25hbC1pbmZvIHtcbiAgICAgICAgQGluY2x1ZGUgcHJpbWFyeUJ1dHRvbjtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1wYXltZW50LWluZm9ybWF0aW9uIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIC5oZWFkZXItb3JkZXItc3VtbWFyeSB7XG4gICAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuICAgIG1hcmdpbi1ib3R0b206IDMwcHg7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgcGFkZGluZzogMCAyMHB4O1xuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1wYXltZW50LWFkZHJlc3MtaW5mb3JtYXRpb24sXG4gIC5zZWN0aW9uLXB1cmNoYXNlLWluZm9ybWF0aW9uIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAuY29sIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAmLmNvbC0xLTIge1xuICAgICAgICB3aWR0aDogNTAlO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgY2xlYXI6IGJvdGg7XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB1bCB7XG4gICAgICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG4gICAgICAgICAgfVxuICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDEpIHtcbiAgICAgICAgICAgICAgcGFkZGluZy1ib3R0b206IDVweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlID4gdGhlYWQgPiB0ciA+IHRoLFxuICAgIC50YWJsZSA+IHRib2R5ID4gdHIgPiB0ZCxcbiAgICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGQsXG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAkdGFibGVCb3JkZXJDb2xvcjtcbiAgICAgIGJvcmRlci10b3A6IDA7XG5cbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICY6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiByZ2JhKCR0YWJsZUJvcmRlckNvbG9yLCAuMik7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgICAgIHRleHQtYWxpZ246IHJpZ2h0O1xuICAgIH1cbiAgICAudGFibGUgPiB0Zm9vdCA+IHRyID4gdGQsXG4gICAgLnRhYmxlID4gdGZvb3QgPiB0ciA+IHRoIHtcbiAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgICAudGFibGUge1xuICAgICAgLnRvdGFsIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIHN0cm9uZyB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGRhcmtHcmVlbjtcbiAgICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgICAgIHBhZGRpbmc6IDZweCA4cHg7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTRweDtcbiAgICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAuc2t1IHtcbiAgICAgICAgY29sb3I6ICRkYXJrR3JleTtcbiAgICAgIH1cbiAgICAgIC5xdWFudGl0eSB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIHRleHQtYWxpZ246IGxlZnQ7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGEuYnV0dG9uIHtcbiAgICAgICAgd2lkdGg6IDE2MHB4O1xuICAgICAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmJ1dHRvbiB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICNwcm9tb0NvZGUge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuXG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICAgIHdpZHRoOiAzNDBweDtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgaGVpZ2h0OiA0MnB4O1xuICAgICAgICAgIHRleHQtaW5kZW50OiA5cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuXG4gICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICAgICAgICBmb250LXNpemU6IDEycHg7XG5cbiAgICAgICAgICBAaW5jbHVkZSBwcmltYXJ5QnV0dG9uO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICB0aGVhZCB7XG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgdGQge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgICAgY29udGVudDogYXR0cihkYXRhLWRlc2NyaXB0aW9uKTtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRmb290IHtcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgICAgIH1cbiAgICAgICAgdGgsIHRkIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDhweCA0cHggOHB4O1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRkIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgcGFkZGluZzogOHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgI3RvdGFscyB7XG4gICAgICAgIHRyIHtcbiAgICAgICAgICAuZ3JhbmQtdG90YWwge1xuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tcHVyY2hhc2UtaW5mb3JtYXRpb24ge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG5cbiAgICAudGFibGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICB9XG4gICAgLnJvdy1yZXZpZXcge1xuICAgICAgYSB7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cbiAgICAuYnV0dG9uLWNvbnRpbnVlIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRkYXJrR3JlZW47XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGRhcmtHcmVlbiwgMTApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICBhIHtcbiAgICAmLmJ1dHRvbiB7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJHdoaXRlO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAucm93LXJldmlldyB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxufVxuIiwiLnNlY3Rpb24td2lsbC1jYWxsIHtcbiAgLnNlY3Rpb24td2lsbC1jYWxsLWZvcm0ge1xuICAgIEBpbmNsdWRlIHN1YkNvbnRhaW5lcjtcbiAgfVxufVxuIiwiLmFzaWRlLXN0b3JlIHtcbiAgQGluY2x1ZGUgc3ViQ29udGFpbmVyO1xuICBmbG9hdDogcmlnaHQ7XG4gIHdpZHRoOiAyNSU7XG4gIG1hcmdpbjogMDtcblxuICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG4gID4gLmhlYWRlciB7XG4gICAgcGFkZGluZzogMCAwIDE1cHggMDtcbiAgfVxuICAuaGVhZGVyIHtcbiAgICAudGl0bGUge1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICB9XG4gICAgLmNhcnQtaXRlbXMge1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfVxuICAgICYtYXNpZGUge1xuICAgICAgLnRpdGxlIHtcbiAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIH1cbiAgICAgIC5tZXRhIHtcbiAgICAgICAgLmV4cGlyZSB7XG4gICAgICAgICAgLmNhcnQge1xuICAgICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAudmlldy1jYXJ0IHtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuYnV0dG9uIHtcbiAgICAgICYuY2FydCB7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHByaW1hcnk7XG4gICAgICAgIHBhZGRpbmc6IDExcHggMjBweDtcbiAgICAgICAgZm9udC1zaXplOiAxNHB4O1xuXG4gICAgICAgIC5iYWRnZSB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogI2ZmZjtcbiAgICAgICAgICBjb2xvcjogJHByaW1hcnk7XG4gICAgICAgICAgbWFyZ2luOiAtMC4yZW0gMCAwIDAuNWVtO1xuICAgICAgICB9XG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICBkYXJrZW4oJHByaW1hcnksIDEwKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuY2FydC1pdGVtcyB7XG4gICAgbWFyZ2luOiAxMHB4IGF1dG8gNXB4O1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAudGl0bGUge1xuICAgIGJvcmRlci1yaWdodDogMDtcbiAgfVxuICAubGlzdGluZyB7XG4gICAgLml0ZW0ge1xuICAgICAgcGFkZGluZzogMTBweCA1cHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG5cbiAgICAgIHNwYW4sIGEge1xuICAgICAgICB0cmFuc2l0aW9uOiAwLjVzIGVhc2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLWNhdGVnb3JpZXMge1xuICAgIC5oZWFkZXItYXNpZGUsIC5oZWFkZXItY2F0ZWdvcmllcyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBpbml0aWFsO1xuICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDE2cHg7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmRldGFpbCB7XG4gICAgICB1bCB7XG4gICAgICAgIGxpIHtcbiAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pdGVtIHtcbiAgICAgICYuY3VycmVudCB7XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICB9XG4gICAgfVxuICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAuY29sbGFwc2UsIC5jb2xsYXBzaW5nIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgLmJ0bi1hY2NvcmRpb24ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuY2FydC10aW1lciB7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcblxuICAuZXhwaXJlIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICBmb250LXNpemU6IDAuOWVtO1xuICAgIHdoaXRlLXNwYWNlOiBub3JtYWw7XG5cbiAgICAuY2FydCB7XG4gICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICBjb2xvcjogJHdoaXRlO1xuXG4gICAgICAmLXZpc2libGUge1xuICAgICAgICB2aXNpYmlsaXR5OiB2aXNpYmxlO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLmNoZWNrb3V0LXByb2dyZXNzIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JleTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwYWRkaW5nOiAxMHB4IDA7XG4gIG1hcmdpbjogMTBweCBhdXRvIDMwcHg7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyUmFkaXVzO1xuICBtYXgtd2lkdGg6ICR3aWR0aDtcblxuICBsaSB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgcGFkZGluZzogMjBweCAxMHB4O1xuXG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgcGFkZGluZzogMTBweDtcbiAgICB9XG4gICAgaSB7XG4gICAgICBjb2xvcjogJGRhcmtHcmVlbjtcbiAgICAgIHRvcDogM3B4O1xuICAgICAgcGFkZGluZy1yaWdodDogM3B4O1xuICAgIH1cbiAgfVxuICAuY3VycmVudCB7XG4gICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgfVxufVxuIiwiLnNlY3Rpb24tcHJvZHVjdC1kZXRhaWwge1xuICBjb2xvcjogJGJsYWNrO1xuXG4gIEBzdXBwb3J0cyhwYWRkaW5nOiBtYXgoMHB4KSkge1xuICAgIHBhZGRpbmctbGVmdDogbSN7YX14KDEwcHgsIGVudihzYWZlLWFyZWEtaW5zZXQtbGVmdCkpO1xuICAgIHBhZGRpbmctcmlnaHQ6IG0je2F9eCgxMHB4LCBlbnYoc2FmZS1hcmVhLWluc2V0LXJpZ2h0KSk7XG4gIH1cbiAgLndyYXAge1xuICAgIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgfVxuICAuc2VjdGlvbi1wcm9kdWN0LWRlc2NyaXB0aW9uLFxuICAuc2VjdGlvbi1wcm9kdWN0LXB1cmNoYXNlIHtcbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCArIDEpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIHBhZGRpbmc6IDEycHg7XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLXByb2R1Y3QtZGVzY3JpcHRpb24ge1xuICAgIC5maWd1cmUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHdoaXRlO1xuICAgICAgYm9yZGVyOiAkYm9yZGVyO1xuICAgICAgbWF4LXdpZHRoOiA0MDBweDtcbiAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAmLmFjdGl2ZSB7XG4gICAgICAgIC5pbWFnZS1wbGFjZWhvbGRlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmltYWdlIHtcbiAgICAgICAgbWF4LXdpZHRoOiA5NiU7XG4gICAgICAgIG1hcmdpbjogMiUgYXV0bztcbiAgICAgICAgcGFkZGluZzogMiU7XG4gICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcblxuICAgICAgfVxuICAgICAgdWwge1xuICAgICAgICBsaSB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuXG4gICAgICAgICAgaW1nIHtcbiAgICAgICAgICAgIHRyYW5zaXRpb246IDAuNXMgZWFzZTtcblxuICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgIG9wYWNpdHk6IDAuODtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLnByb2R1Y3Qtc29jaWFsIHtcbiAgICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICAgIGFsaWduLWl0ZW1zOiBiYXNlbGluZTtcbiAgICAgIG1hcmdpbjogMmVtIDA7XG5cbiAgICAgIC5saWtlIHtcbiAgICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgICAgd2lkdGg6IDgwcHg7XG4gICAgICB9XG4gICAgICAudHJ1c3RwaWxvdC13aWRnZXQge1xuICAgICAgICB3aWR0aDogMTgwcHg7XG4gICAgICAgIGhlaWdodDogMzhweDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tcHJvZHVjdC1wdXJjaGFzZSB7XG4gICAgbWFyZ2luLWJvdHRvbTogNjBweDtcblxuICAgID4gaDEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIGZvbnQtc2l6ZTogMjJweDtcbiAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxZW07XG4gICAgfVxuICAgIC5wcmljZSB7XG4gICAgICBmb250LXNpemU6IDMwcHg7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfVxuICAgIHAge1xuICAgICAgbWFyZ2luOiAwLjI1ZW0gMCAwLjVlbSAwO1xuICAgICAgbGluZS1oZWlnaHQ6IDEuNWVtO1xuICAgIH1cbiAgICB1bCB7XG4gICAgICBsaSB7XG4gICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICAmLnByaWNlIHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICB9XG4gICAgICAgICYuc3RvY2ssXG4gICAgICAgICYuc2t1IHtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIH1cbiAgICAgICAgJi5zdG9jayB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGdyZWVuO1xuICAgICAgICAgIGNvbG9yOiAkd2hpdGU7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogMTVweDtcbiAgICAgICAgICBwYWRkaW5nOiAwIDEwcHg7XG4gICAgICAgICAgZm9udC1zaXplOiAxMnB4O1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogNnB4O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyO1xuXG4gICAgICAgICAgJi5vdXQge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGVycm9yUmVkO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucHVyY2hhc2VfZm9ybSB7XG4gICAgICBmaWVsZHNldCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgICAgIHBhZGRpbmctdG9wOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIHRyYW5zaXRpb246IGFsbCAxbXMgMTAwbXM7XG5cbiAgICAgICAgbGVnZW5kIHtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICAgICAgIHNwYW4ge1xuICAgICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgcGFkZGluZzogMnB4IDAgMTBweCAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBpbnB1dCB7XG4gICAgICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgICAgICBsaW5lLWhlaWdodDogMS4wO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcblxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgb3BhY2l0eTogMC42O1xuICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdLCBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgdWwge1xuICAgICAgICAgICYudmFyaWF0aW9ucyB7XG4gICAgICAgICAgICAuc2VsZWN0IHtcbiAgICAgICAgICAgICAgbGFiZWwge1xuICAgICAgICAgICAgICAgIG1hcmdpbi1yaWdodDogNHB4O1xuICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAyNnB4O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBzZWxlY3Qge1xuICAgICAgICAgICAgICAgIGJvcmRlcjogMDtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLnBheW1lbnQge1xuICAgICAgICAgICAgcGFkZGluZy10b3A6IDEwcHg7XG5cbiAgICAgICAgICAgIGxpIHtcbiAgICAgICAgICAgICAgJi5jaGVja2VkIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4IDZweDtcbiAgICAgICAgICAgICAgICBib3JkZXItcmFkaXVzOiA1cHg7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGxpZ2h0R3JlZW47XG4gICAgICAgICAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJGdyZWVuO1xuICAgICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAxLjU7XG5cbiAgICAgICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgICAgICBjb2xvcjogJGRhcmtHcmV5O1xuICAgICAgICAgICAgICAgICAgcGFkZGluZy1sZWZ0OiAzMHB4O1xuXG4gICAgICAgICAgICAgICAgICBzcGFuIHtcbiAgICAgICAgICAgICAgICAgICAgY29sb3I6ICRncmVlbjtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlucHV0IHtcbiAgICAgICAgICAgICAgICAgIG1hcmdpbjogMnB4IDAgMCAtMjVweDtcbiAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICAmLmFkZC10by1jYXJ0IHtcbiAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuXG4gICAgICAgICAgICAucXVhbnRpdHkge1xuICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgIHdpZHRoOiA1MHB4O1xuXG4gICAgICAgICAgICAgIGxhYmVsIHtcbiAgICAgICAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgLmVycm9yIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICAgICAgdG9wOiAzNXB4O1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkZXJyb3JSZWQ7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC5idXR0b24tYWRkLXRvLWNhcnQge1xuICAgICAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgICAgIHBhZGRpbmc6IDJweCAxMHB4O1xuICAgICAgICAgICAgICB3aWR0aDogMTQwcHg7XG4gICAgICAgICAgICAgIGZvbnQtc2l6ZTogMTZweDtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogICRwcmltYXJ5O1xuICAgICAgICAgICAgICB0cmFuc2l0aW9uOiAkZWFzZTtcblxuICAgICAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiA0MDBweCkge1xuICAgICAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgICAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgICAgICAgIG1hcmdpbjogMTBweCBhdXRvO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICBkYXJrZW4oJHByaW1hcnksIDEwKTtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgICBsaSB7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB9XG4gICAgICAgICAgKyB1bCB7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm1ldGEge1xuICAgICAgcGFkZGluZzogMCAwIDIwcHggMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLyogMi1jb2wgUHJvZHVjdCBMaXN0aW5nICovXG4ubWFpbi1zdG9yZS1wcm9kdWN0cyB7XG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRzbWFsbE1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgLmhlYWRlci1wcm9kdWN0cyB7XG4gICAgLnRpdGxlIHtcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5wcm9kdWN0cyB7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgLml0ZW0ge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvc3Qge1xuICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICB9XG4gICAgJi5zZWN0aW9uLXByb2R1Y3RzLWZlYXR1cmVkIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgICAgIC5saXN0aW5nIHtcbiAgICAgICAgLm5vbmUge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5zZWN0aW9uLXByb2R1Y3RzIHtcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuICAgIH1cbiAgfVxufVxuIiwiLyogMy1jb2wgUHJvZHVjdCBMaXN0aW5nICovXG4uc2VjdGlvbi1wcm9kdWN0cy1mZWF0dXJlZCwgLnNlY3Rpb24tcHJvZHVjdHMge1xuICBkaXNwbGF5OiBibG9jaztcbiAgY2xlYXI6IGJvdGg7XG4gIG92ZXJmbG93OiBoaWRkZW47XG5cbiAgLmxpc3Rpbmcge1xuICAgIGRpc3BsYXk6IGZsZXg7XG4gICAgZmxleC13cmFwOiB3cmFwO1xuICAgIC8vIGp1c3RpZnktY29udGVudDogc3BhY2UtYmV0d2VlbjtcblxuICAgIC5pdGVtIHtcbiAgICAgIHdpZHRoOiAzMyU7XG4gICAgICBwYWRkaW5nOiAwIDIwcHg7XG4gICAgICBtYXJnaW4tYm90dG9tOiA0MHB4O1xuXG4gICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkc21hbGxNb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgIHBhZGRpbmc6IDAgMTBweDtcbiAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgIH1cbiAgICAgIC5mbGFnIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICAgIC50YWIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgICAgLnByb2R1Y3QtZGV0YWlscywgLnRhYiB7XG4gICAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLnNlY3Rpb24tcHJvZHVjdHMtZmVhdHVyZWQge1xuICAubGlzdGluZyB7XG4gICAgLml0ZW0ge1xuICAgICAgd2lkdGg6IDUwJTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNtYWxsTW9iaWxlQnJlYWtwb2ludCkge1xuICAuc2VjdGlvbi1wcm9kdWN0cyB7XG4gICAgLml0ZW0ge1xuICAgICAgLm5hbWUge1xuICAgICAgICBmb250LXNpemU6IDAuOGVtO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLnNlY3Rpb24tc2hpcHBpbmctbWV0aG9kIHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIC5zZWN0aW9uLXNoaXBwaW5nLWFkZHJlc3MtY29udGFpbmVyLFxuICAuc2VjdGlvbi1zaGlwcGluZy1tZXRob2QtY29udGFpbmVyIHtcbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAuYnV0dG9uLXNhdmUtYWRkcmVzcyxcbiAgICAuYnV0dG9uLXNhdmUtbWV0aG9kIHtcbiAgICAgIEBpbmNsdWRlIHByaW1hcnlCdXR0b247XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLXNoaXBwaW5nLWFkZHJlc3MtY29udGFpbmVyIHtcbiAgICAuZmllbGRzZXQtY2hhbmdlLXNoaXBwaW5nLWFkZHJlc3Mge1xuICAgICAgLmNoZWNrYm94IHtcbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAyMHB4O1xuICAgICAgICB9XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBtYXJnaW46IDJweCAwIDAgLTIwcHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tc2hpcHBpbmctbWV0aG9kLWNvbnRhaW5lciB7XG4gICAgbWFyZ2luLXRvcDogMjBweDtcbiAgfVxuICAuZmllbGRzZXQge1xuICAgIHBhZGRpbmc6IDAgMjBweCAwIDA7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgd2lkdGg6IDUwJTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdHJhbnNpdGlvbjogJGVhc2U7XG4gICAgbWFyZ2luOiAyMHB4IDA7XG5cbiAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGNsZWFyOiBib3RoO1xuICAgICAgcGFkZGluZzogMDtcblxuICAgICAgJjpudGgtY2hpbGQoMikge1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICBsZWdlbmQge1xuICAgICAgQGluY2x1ZGUgbGVnZW5kO1xuICAgIH1cbiAgICAuY2hlY2tib3gge1xuICAgICAgaW5wdXQge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICBtYXJnaW46IDAgNXB4IDEwcHggMDtcbiAgICAgIH1cbiAgICAgIGxhYmVsIHtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgbWFyZ2luOiAwICA1cHggMCAwO1xuICAgICAgfVxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybVNlbGVjdDtcbiAgICAgICAgQGluY2x1ZGUgc2VsZWN0QmFja2dyb3VuZDtcblxuICAgICAgICBsaW5lLWhlaWdodDogMzZweDtcbiAgICAgICAgd2lkdGg6IGNhbGMoMTAwJSAgLSA4MHB4KTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucmFkaW8gKyAucmFkaW8sIC5jaGVja2JveCArIC5jaGVja2JveCB7XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgIH1cbiAgfVxuICAjaW50ZXJuYXRpb25hbEZpZWxkc2V0IHtcbiAgICAuY2hlY2tib3gge1xuICAgICAgaW5wdXQge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHdpZHRoOiAyMHB4O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnJvdy1idXR0b25zIHtcbiAgICAuYnV0dG9uIHtcbiAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IDEwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvKiBhY2NvdW50IGltcG9ydHMgKi9cblxuQGltcG9ydCBcIi4vZ2xvYmFsL2FjY291bnQtZ2xvYmFsLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2FkZHJlc3MvMi1jb2wtYWRkcmVzcy1kYXNoYm9hcmQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vZGFzaGJvYXJkLzItY29sLWFjY291bnQtZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL2xpbmtlZC1hY2NvdW50LzItY29sLWxpbmtlZC1hY2NvdW50LWRhc2hib2FyZC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9tYW5hZ2UtYWNjb3VudC8yLWNvbC1tYW5hZ2UtcHJvZmlsZS1kYXNoYm9hcmQuc2Nzc1wiO1xuQGltcG9ydCBcIi4vbWFuYWdlLWF2YXRhci8yLWNvbC1hdmF0YXItZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL25vdGlmaWNhdGlvbnMvMi1jb2wtbWFuYWdlLW5vdGlmaWNhdGlvbnMtZGFzaGJvYXJkLnNjc3NcIjtcbkBpbXBvcnQgXCIuL29yZGVycy9kZXRhaWwvbXVsdGktcm93LW9yZGVyLWRldGFpbC5zY3NzXCI7XG5AaW1wb3J0IFwiLi9vcmRlcnMvbGlzdGluZy8yLWNvbC1vcmRlci1saXN0aW5nLnNjc3NcIjtcbkBpbXBvcnQgXCIuL3BhcnRpYWxzL25hdmlnYXRpb24uc2Nzc1wiO1xuIiwiLm1haW4tYWNjb3VudCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lcjtcbiAgbWluLWhlaWdodDogNjAwcHg7XG5cbiAgJiwgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgY29sb3I6ICRibGFjaztcbiAgfVxuICAuaGVhZGVyLWFjY291bnQge1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgbWFyZ2luLWJvdHRvbTogMjBweDtcbiAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuXG4gICAgaDEge1xuICAgICAgY29sb3I6ICRibGFjaztcbiAgICAgIG1hcmdpbi10b3A6IDEwcHg7XG4gICAgfVxuICB9XG4gIC5hc2lkZS1uYXYsXG4gIC5hc2lkZS1hY2NvdW50IHtcbiAgICBwYWRkaW5nOiAxMHB4O1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gIC5hc2lkZS1uYXYge1xuICAgIHdpZHRoOiAyNSU7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGVEaXNwbGF5QmxvY2s7XG4gICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogODAwcHgpIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG4gICAgfVxuICB9XG4gIC5hc2lkZS1hY2NvdW50IHtcbiAgICB3aWR0aDogNzUlO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG5cbiAgICBAaW5jbHVkZSBtb2JpbGVEaXNwbGF5QmxvY2s7XG5cbiAgICAuZmllbGRzZXQtYWNjb3VudCB7XG4gICAgICBsZWdlbmQge1xuICAgICAgICBAaW5jbHVkZSBsZWdlbmQ7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi5hc2lkZS1hY2NvdW50IHtcbiAgLnRhYmxlIHtcbiAgICA+IHRib2R5IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRkIHtcbiAgICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQge1xuICAgICAgdHIge1xuICAgICAgICA+IHRoIHtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHRhYmxlQm9yZGVyQ29sb3I7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLWFjY291bnQtbWFuYWdlLWFkZHJlc3Mge1xuICAuYXNpZGUtYWNjb3VudC1tYW5hZ2UtYWRkcmVzcyB7XG4gICAgbGVnZW5kIHtcbiAgICAgIEBpbmNsdWRlIGxlZ2VuZDtcbiAgICB9XG4gICAgLmZpZWxkc2V0LWJpbGxpbmcge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRib3JkZXJDb2xvcjtcbiAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogMjBweDtcblxuICAgICAgLmlucHV0LCAuc2VsZWN0IHtcbiAgICAgICAgaW5wdXQsIHNlbGVjdCB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuMDtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpZWxkc2V0LXNoaXBwaW5nIHtcbiAgICAgIC5jaGVja2JveCB7XG4gICAgICAgIGlucHV0IHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtOHB4O1xuICAgICAgICAgIG1hcmdpbi1sZWZ0OiAtMjNweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucm93LXBvbGljeS1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICAgIC5yb3ctYnV0dG9ucyB7XG4gICAgICBwYWRkaW5nLXRvcDogMjBweDtcbiAgICAgIGJvcmRlci10b3A6IDFweCBzb2xpZCAkYm9yZGVyQ29sb3I7XG4gICAgfVxuICB9XG59XG4iLCIubWFpbi1hY2NvdW50LWRhc2hib2FyZCB7XG4gIC5hc2lkZS1hY2NvdW50LWRhc2hib2FyZCB7XG4gICAgLnRhYmxlIHtcbiAgICAgIC5hY3Rpb25zIHtcbiAgICAgICAgdGV4dC1hbGlnbjogcmlnaHQ7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpbmNsdWRlIG1vYmlsZVRhYmxlO1xuICB9XG59XG4iLCIubWFpbi1hY2NvdW50LW1hbmFnZWQtbGlua2VkIHtcbiAgLmFzaWRlLWFjY291bnQtbWFuYWdlZC1saW5rZWQge1xuICAgIEBpbmNsdWRlIG1vYmlsZVRhYmxlO1xuXG4gICAgLnRhYmxlIHtcbiAgICAgIHRyIHtcbiAgICAgICAgdGQge1xuICAgICAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxMHB4O1xuICAgICAgICAgICAgd2lkdGg6IDUwcHg7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAmOm50aC1jaGlsZCgxKSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctdG9wOiAxNnB4O1xuICAgICAgICAgICAgICBwYWRkaW5nLWJvdHRvbTogMTZweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgICAgICAgcGFkZGluZy10b3A6IDA7XG4gICAgICAgICAgICAgIHBhZGRpbmctYm90dG9tOiAxNnB4O1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1tYW5hZ2Uge1xuICAuYXNpZGUtYWNjb3VudCB7XG4gICAgLnJvdy1wb2xpY3ktcHJldmlldyB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgcCB7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAyMHB4O1xuICAgICAgfVxuICAgIH1cbiAgICAucm93LXBvbGljeS1kaXNjbGFpbWVyIHtcbiAgICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgfVxuICB9XG4gICNjb250YWluZXIgJiB7XG4gICAgLmVycm9yIHtcbiAgICAgICYsICYgYSB7XG4gICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG4gICAgICAgIGNvbG9yOiAjZDk1MzRmO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1hdmF0YXIge1xuICAuc2VjdGlvbi1hY2NvdW50LW1hbmFnZS1hdmF0YXIge1xuICAgIC5ub3RlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBjb2xvcjogJGJsYWNrO1xuICAgIH1cbiAgICBwIHtcbiAgICAgIGNvbG9yOiAkYmxhY2s7XG4gICAgfVxuICAgIC5maWVsZHNldC1tYW5hZ2UtYXZhdGFyIHtcbiAgICAgIC5saXN0IHtcbiAgICAgICAgLmlucHV0IHtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAyMHB4O1xuXG4gICAgICAgICAgLmZpbGUge1xuICAgICAgICAgICAgbWFyZ2luOiAxMHB4IDA7XG5cbiAgICAgICAgICAgIGltZyB7XG4gICAgICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICAgICAgaGVpZ2h0OiAxMDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgaW5wdXQge1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgICAgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgbGluZS1oZWlnaHQ6IDA7XG4gICAgICAgICAgICB0ZXh0LWluZGVudDogMDtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuXG4gICAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgICAgb3BhY2l0eTogMC43NTtcbiAgICAgICAgICAgICAgb3V0bGluZTogbm9uZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLnVybCB7XG4gICAgICAgICAgICBjb2xvcjogJGxpZ2h0R3JleTtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgNXB4IDAgNXB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAucm93LXByaXZhY3ktcG9saWN5LWRpc2NsYWltZXIge1xuICAgICAgbWFyZ2luLXRvcDogMjBweDtcbiAgICB9XG4gIH1cbn1cbiIsIi5tYWluLWFjY291bnQtbm90aWZpY2F0aW9ucyB7XG4gIC5hc2lkZS1hY2NvdW50LW5vdGlmaWNhdGlvbnMge1xuICAgIGxlZ2VuZCB7XG4gICAgICBAaW5jbHVkZSBsZWdlbmQ7XG4gICAgfVxuICAgIC5yb3ctYnV0dG9ucy10d28ge1xuICAgICAgcGFkZGluZy10b3A6IDIwcHg7XG4gICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJGJvcmRlckNvbG9yO1xuICAgIH1cbiAgICAuZmllbGRzZXQtc3Vic2NyaXB0aW9uLW5vdGlmaWNhdGlvbnMge1xuICAgICAgLmNoZWNrYm94IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMjBweDtcblxuICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgcGFkZGluZy1sZWZ0OiAyNXB4O1xuICAgICAgICB9XG4gICAgICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSB7XG4gICAgICAgICAgbWFyZ2luLWxlZnQ6IC0yNHB4O1xuICAgICAgICAgIG1hcmdpbi10b3A6IDJweDtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIH1cbiAgICAgICAgKyAuY2hlY2tib3gge1xuICAgICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICAgIH1cbiAgICAgICAgLm5vdGUge1xuICAgICAgICAgIG1hcmdpbjogMnB4IDAgMTBweCAyNHB4O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIuc2VjdGlvbi1vcmRlci1zdW1tYXJ5IHtcbiAgQGluY2x1ZGUgY29udGFpbmVyO1xuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgcGFkZGluZzogMjBweCAyMHB4O1xuXG4gICAgLndyYXAge1xuICAgICAgcGFkZGluZzogMDtcbiAgICB9XG4gIH1cblxuICBoMSwgLmgxLCBoMiwgLmgyLCBoMywgLmgzIHtcbiAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICB9XG4gIC5zZWN0aW9uLW9yZGVyLWluZm9ybWF0aW9uLFxuICAuc2VjdGlvbi1vcmRlci1pdGVtaXphdGlvbixcbiAgLnNlY3Rpb24tb3JkZXItc2hpcG1lbnRzLFxuICAuc2VjdGlvbi1vcmRlci13aWxsLWNhbGwge1xuICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICBAaW5jbHVkZSBzdWJDb250YWluZXI7XG5cbiAgICAudGFibGUge1xuICAgICAgdGhlYWQge1xuICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRyIHtcbiAgICAgICAgdGQsIHRoIHtcbiAgICAgICAgICBAbWVkaWEgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbW9iaWxlQnJlYWtwb2ludCkge1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgICA+IHRoZWFkIHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgPiB0Ym9keSB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGQge1xuICAgICAgICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuICAgICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICR0YWJsZUJvcmRlckNvbG9yO1xuXG4gICAgICAgICAgICAuc2t1IHtcbiAgICAgICAgICAgICAgY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgID4gdGZvb3Qge1xuICAgICAgICA+IHRyIHtcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgICA+IHRoIHtcbiAgICAgICAgICAgIGJvcmRlci10b3A6IDA7XG4gICAgICAgICAgICBib3JkZXItYm90dG9tOiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICAuc2VjdGlvbi1vcmRlci1pbmZvcm1hdGlvbiB7XG4gICAgLmNvbCB7XG4gICAgICBmbG9hdDogbGVmdDtcblxuICAgICAgJi5jb2wtMS0zIHtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tdG9wOiAyMHB4O1xuXG4gICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgIHdpZHRoOiAzMy4zMyU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHVsIHtcbiAgICAgICAgbGkge1xuICAgICAgICAgIC5idXR0b24ge1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogMTBweDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tb3JkZXItaXRlbWl6YXRpb24ge1xuICAgIC50YWJsZSB7XG4gICAgICA+IHRmb290IHtcbiAgICAgICAgPiB0ciB7XG4gICAgICAgICAgPiB0aCB7XG4gICAgICAgICAgICB0ZXh0LWFsaWduOiByaWdodDtcblxuICAgICAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICAgICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLnNlY3Rpb24tb3JkZXItc2hpcG1lbnRzIHtcbiAgICAucm93LXNoaXBwaW5nLWluZm9ybWF0aW9uIHtcbiAgICAgIC5vcmRlciB7XG4gICAgICAgICYuc3RhdHVzIHtcbiAgICAgICAgICBmbG9hdDogcmlnaHQ7XG4gICAgICAgICAgcGFkZGluZzogNXB4IDEycHg7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRibHVlO1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDIwcHg7XG4gICAgICAgICAgbWFyZ2luLXRvcDogLTVweDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgICAgbWFyZ2luLXJpZ2h0OiAyMHB4O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLmNvbCB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgICAgICYuY29sLTEtMiB7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgbWFyZ2luLXRvcDogMjBweDtcblxuICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRtb2JpbGVCcmVha3BvaW50ICsgMSkge1xuICAgICAgICAgICAgd2lkdGg6IDUwJTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmOm50aC1jaGlsZCgyKSB7XG4gICAgICAgICAgICBzdHJvbmcge1xuICAgICAgICAgICAgICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICAgICAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmJ1dHRvbi1yb3cge1xuXG4gICAgLmJ1dHRvbiB7XG4gICAgICBmbG9hdDogcmlnaHQ7XG4gICAgfVxuICB9XG4gIC50cnVzdHBpbG90LXJldmlldyB7XG4gICAgbWFyZ2luOiAyZW0gYXV0bztcbiAgICBvdmVyZmxvdzogc2Nyb2xsO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxufVxuIiwiLm1haW4tYWNjb3VudC1vcmRlci1saXN0IHtcblxuICAuYXNpZGUtb3JkZXItbGlzdCB7XG4gICAgaDIge1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICB9XG4gICAgLm5vLW9yZGVycyB7XG4gICAgICBtYXJnaW4tdG9wOiAxMHB4O1xuICAgIH1cbiAgICBAaW5jbHVkZSBtb2JpbGVUYWJsZTtcbiAgfVxufVxuIiwiLmFzaWRlLW5hdiB7XG4gIHVsIHtcbiAgICBsaSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6IDVweDtcblxuICAgICAgYSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDAuNjtcbiAgICAgICAgfVxuICAgICAgICBpIHtcbiAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLml0ZW0ge1xuICAgICAgJi5saW5rZWQge1xuICAgICAgICAuY291bnRlciB7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgIHRvcDogLTJweDtcbiAgICAgICAgICBsZWZ0OiA1cHg7XG4gICAgICAgICAgcGFkZGluZzogNnB4IDdweDtcbiAgICAgICAgICBib3JkZXItcmFkaXVzOiA1MCU7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvdW50ZXJCZ0NvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkY291bnRlckNvbG9yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5hdmF0YXIge1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG5cbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICAgICAgICB9XG4gICAgICAgIC5waWMge1xuICAgICAgICAgIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gICAgICAgICAgdHJhbnNpdGlvbjogJGVhc2U7XG5cbiAgICAgICAgICBpbWcge1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgICAgICAgICAgIEBtZWRpYSBzY3JlZW4gYW5kIChtYXgtd2lkdGg6ICRtb2JpbGVCcmVha3BvaW50KSB7XG4gICAgICAgICAgICAgIHdpZHRoOiAyNDBweDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgICAgLmVkaXQge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBwYWRkaW5nOiA4cHggMTZweDtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmxhY2s7XG5cbiAgICAgICAgICAgIGkge1xuICAgICAgICAgICAgICBwYWRkaW5nLXJpZ2h0OiAycHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICAgICY6aG92ZXIgLmVkaXQge1xuICAgICAgICAgICAgdmlzaWJpbGl0eTogdmlzaWJsZTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8qKlxuICogc3RvcmUgdGhlbWUgaGVhZGVyXG4gKiBpbmNsdWRlcyBzdHlsZXMgZm9yIGJvb3RzdHJhcCBuYXZiYXJcbiAqL1xuXG4uaGVhZGVyLW1haW4ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyQmFja2dyb3VuZENvbG9yO1xuICBib3JkZXItY29sb3I6ICRoZWFkZXJCb3JkZXJDb2xvcjtcblxuICAubmF2YmFyLWRlZmF1bHQsIC5uYXZiYXIge1xuICAgIG1hcmdpbi10b3A6IDIwcHg7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRlckJhY2tncm91bmRDb2xvcjtcbiAgICBib3JkZXItY29sb3I6ICRoZWFkZXJCb3JkZXJDb2xvcjtcblxuICAgIC5jb250YWluZXItZmx1aWQge1xuICAgICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgICAgcGFkZGluZy1yaWdodDogMDtcbiAgICB9XG4gICAgLm5hdmJhci1uYXYge1xuICAgICAgPiBsaSB7XG4gICAgICAgID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRoZWFkZXJMaW5rQ29sb3I7XG4gICAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuXG4gICAgICAgICAgJjpob3ZlciwgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJGhlYWRlckxpbmtDb2xvckhvdmVyO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDE1cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaGVhZGVyQmFja2dyb3VuZENvbG9yO1xuICAgICAgYm9yZGVyLWNvbG9yOiAkaGVhZGVyQm9yZGVyQ29sb3I7XG5cbiAgICAgIC5pY29uLWJhciB7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uQmFyQ29sb3I7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgdHJhbnNpdGlvbjogdG9wIDEzMG1zIGVhc2UgMTMwbXMsIGJvdHRvbSAxMzBtcyBlYXNlIDEzMG1zLCB0cmFuc2Zvcm0gMTMwbXMgZWFzZTtcbiAgICAgIH1cbiAgICAgICZbYXJpYS1leHBhbmRlZD1cInRydWVcIl0ge1xuICAgICAgICAuaWNvbi1iYXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRpY29uQmFyQ29sb3JFeHBhbmRlZDtcblxuICAgICAgICAgICY6bnRoLWNoaWxkKDIpIHtcbiAgICAgICAgICAgIHRvcDogNnB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoNDVkZWcpO1xuICAgICAgICAgIH1cbiAgICAgICAgICAmOm50aC1jaGlsZCgzKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICB9XG4gICAgICAgICAgJjpudGgtY2hpbGQoNCkge1xuICAgICAgICAgICAgdG9wOiAtNXB4O1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoLTQ1ZGVnKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgICBib3JkZXItY29sb3I6ICRoZWFkZXJCb3JkZXJDb2xvcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8qIHN0b3JlIHRoZW1lIGZvb3RlciAqL1xuLnNpdGUtZm9vdGVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBwYWRkaW5nOiAyNHB4IDEycHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRmb290ZXJCYWNrZ3JvdW5kQ29sb3I7XG4gIGNvbG9yOiAkZm9vdGVyQ29sb3I7XG5cbiAgLndyYXAge1xuICAgIC5zaXRlLWxvZ28ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgfVxuICAgICAgaW1nIHtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgICB9XG4gICAgfVxuICAgIC5saXN0IHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgICBtYXJnaW4tbGVmdDogMjBweDtcblxuICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJG1vYmlsZUJyZWFrcG9pbnQpIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgICB9XG4gICAgICBhIHtcbiAgICAgICAgZm9udC1zaXplOiAkZm9udFNpemUgLSAycHg7XG4gICAgICAgIGNvbG9yOiAkZm9vdGVyTGlua0NvbG9yO1xuXG4gICAgICAgICY6aG92ZXIsICY6Zm9jdXMge1xuICAgICAgICAgIGNvbG9yOiAkZm9vdGVyTGlua0NvbG9ySG92ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHNwYW4ge1xuICAgICAgICBmb250LXNpemU6ICRmb250U2l6ZSAtIDJweDtcbiAgICAgICAgY29sb3I6ICRmb290ZXJDb2xvcjtcbiAgICAgIH1cbiAgICAgICYtdGVybXMge1xuICAgICAgICAuaXRlbS1jb3BwYSwgLml0ZW0tcG93ZXJlZGJ5IHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgbGkge1xuICAgICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDJweCAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLyogc3RvcmUgaG9tZSBzdHlsZXMgKi9cblxuLnNlY3Rpb24taG9tZS1wcm9kdWN0cyB7XG4gIHBhZGRpbmc6IDYwcHggMCAxMDBweCAwO1xuXG4gIC5mb290ZXItaG9tZS1wcm9kdWN0cyB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgY2xlYXI6IGJvdGg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAuYnV0dG9uLWFsbC1wcm9kdWN0cyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHdpZHRoOiAxNjBweDtcbiAgICAgIG1hcmdpbjogMjBweCBhdXRvO1xuICAgIH1cbiAgfVxufVxuIiwiLyogRnVsbCBXaWR0aCBSZXNwb25zaXZlIENhcm91c2VsICovXG5cbiAgLyogVmFycyAqL1xuICAkaGVpZ2h0LXBlcmNlbnRhZ2U6IDQwJSAhZGVmYXVsdDtcbiAgJGJnLWNvbG9yOiAjMDAwICFkZWZhdWx0O1xuXG4gICRsb2FkaW5nLWljb246IG51bGwgIWRlZmF1bHQ7XG5cbiAgLnNlY3Rpb24tY2Fyb3VzZWwge1xuICAgIGhlaWdodDogMDtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZy1ib3R0b206ICRoZWlnaHQtcGVyY2VudGFnZTtcbiAgICBiYWNrZ3JvdW5kOiAkYmctY29sb3I7XG5cbiAgICAuaXRlbSB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgIH1cbiAgICAuY2FwdGlvbiB7XG4gICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cbiAgICAuaW1hZ2Uge1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogJGhlaWdodC1wZXJjZW50YWdlO1xuICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG5cbiAgICAgIGltZyB7XG4gICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICB9XG4gICAgfVxuICAgIC5jYXJvdXNlbC1jb250cm9sIHtcbiAgICAgIHdpZHRoOiA1JTtcbiAgICAgIHotaW5kZXg6IDI7XG4gICAgfVxuICAgIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICAgIGxpIHtcbiAgICAgICAgbWFyZ2luLXJpZ2h0OiA1cHg7XG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDI1NSwgMjU1LCAyNTUsIDAuODUpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAkbG9hZGluZy1pY29uIHtcbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB3aWR0aDogMTAwcHg7XG4gICAgICAgIGhlaWdodDogMTAwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6IHVybCgkbG9hZGluZy1pY29uKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlKC01MCUsIC01MCUpO1xuICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDI1MG1zIDBtcywgb3BhY2l0eSAyNTBtcztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiIsIi8qIVxuICogQm9vdHN0cmFwIHYzLjQuMSAoaHR0cHM6Ly9nZXRib290c3RyYXAuY29tLylcbiAqIENvcHlyaWdodCAyMDExLTIwMTkgVHdpdHRlciwgSW5jLlxuICogTGljZW5zZWQgdW5kZXIgTUlUIChodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvYmxvYi9tYXN0ZXIvTElDRU5TRSlcbiAqL1xuXG4vLyBDb3JlIHZhcmlhYmxlcyBhbmQgbWl4aW5zXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3ZhcmlhYmxlc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9taXhpbnNcIjtcblxuLy8gUmVzZXQgYW5kIGRlcGVuZGVuY2llc1xuQGltcG9ydCBcImJvb3RzdHJhcC9ub3JtYWxpemVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcHJpbnRcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZ2x5cGhpY29uc1wiO1xuXG4vLyBDb3JlIENTU1xuQGltcG9ydCBcImJvb3RzdHJhcC9zY2FmZm9sZGluZ1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90eXBlXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NvZGVcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZ3JpZFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC90YWJsZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvZm9ybXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYnV0dG9uc1wiO1xuXG4vLyBDb21wb25lbnRzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL2NvbXBvbmVudC1hbmltYXRpb25zXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2Ryb3Bkb3duc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9idXR0b24tZ3JvdXBzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2lucHV0LWdyb3Vwc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9uYXZzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL25hdmJhclwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9icmVhZGNydW1ic1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYWdpbmF0aW9uXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3BhZ2VyXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL2xhYmVsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9iYWRnZXNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvanVtYm90cm9uXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3RodW1ibmFpbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvYWxlcnRzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Byb2dyZXNzLWJhcnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbWVkaWFcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9wYW5lbHNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcmVzcG9uc2l2ZS1lbWJlZFwiO1xuQGltcG9ydCBcImJvb3RzdHJhcC93ZWxsc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9jbG9zZVwiO1xuXG4vLyBDb21wb25lbnRzIHcvIEphdmFTY3JpcHRcbkBpbXBvcnQgXCJib290c3RyYXAvbW9kYWxzXCI7XG5AaW1wb3J0IFwiYm9vdHN0cmFwL3Rvb2x0aXBcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvcG9wb3ZlcnNcIjtcbkBpbXBvcnQgXCJib290c3RyYXAvY2Fyb3VzZWxcIjtcblxuLy8gVXRpbGl0eSBjbGFzc2VzXG5AaW1wb3J0IFwiYm9vdHN0cmFwL3V0aWxpdGllc1wiO1xuQGltcG9ydCBcImJvb3RzdHJhcC9yZXNwb25zaXZlLXV0aWxpdGllc1wiO1xuIiwiJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlcjogZmFsc2UgIWRlZmF1bHQ7XG4vL1xuLy8gVmFyaWFibGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vPT0gQ29sb3JzXG4vL1xuLy8jIyBHcmF5IGFuZCBicmFuZCBjb2xvcnMgZm9yIHVzZSBhY3Jvc3MgQm9vdHN0cmFwLlxuXG4kZ3JheS1iYXNlOiAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiRncmF5LWRhcmtlcjogICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDEzLjUlKSAhZGVmYXVsdDsgLy8gIzIyMlxuJGdyYXktZGFyazogICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgMjAlKSAhZGVmYXVsdDsgICAvLyAjMzMzXG4kZ3JheTogICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1iYXNlLCAzMy41JSkgIWRlZmF1bHQ7IC8vICM1NTVcbiRncmF5LWxpZ2h0OiAgICAgICAgICAgICBsaWdodGVuKCRncmF5LWJhc2UsIDQ2LjclKSAhZGVmYXVsdDsgLy8gIzc3N1xuJGdyYXktbGlnaHRlcjogICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktYmFzZSwgOTMuNSUpICFkZWZhdWx0OyAvLyAjZWVlXG5cbiRicmFuZC1wcmltYXJ5OiAgICAgICAgIGRhcmtlbigjNDI4YmNhLCA2LjUlKSAhZGVmYXVsdDsgLy8gIzMzN2FiN1xuJGJyYW5kLXN1Y2Nlc3M6ICAgICAgICAgIzVjYjg1YyAhZGVmYXVsdDtcbiRicmFuZC1pbmZvOiAgICAgICAgICAgICM1YmMwZGUgIWRlZmF1bHQ7XG4kYnJhbmQtd2FybmluZzogICAgICAgICAjZjBhZDRlICFkZWZhdWx0O1xuJGJyYW5kLWRhbmdlcjogICAgICAgICAgI2Q5NTM0ZiAhZGVmYXVsdDtcblxuXG4vLz09IFNjYWZmb2xkaW5nXG4vL1xuLy8jIyBTZXR0aW5ncyBmb3Igc29tZSBvZiB0aGUgbW9zdCBnbG9iYWwgc3R5bGVzLlxuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIGA8Ym9keT5gLlxuJGJvZHktYmc6ICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogR2xvYmFsIHRleHQgY29sb3Igb24gYDxib2R5PmAuXG4kdGV4dC1jb2xvcjogICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuXG4vLyoqIEdsb2JhbCB0ZXh0dWFsIGxpbmsgY29sb3IuXG4kbGluay1jb2xvcjogICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogTGluayBob3ZlciBjb2xvciBzZXQgdmlhIGBkYXJrZW4oKWAgZnVuY3Rpb24uXG4kbGluay1ob3Zlci1jb2xvcjogICAgICBkYXJrZW4oJGxpbmstY29sb3IsIDE1JSkgIWRlZmF1bHQ7XG4vLyoqIExpbmsgaG92ZXIgZGVjb3JhdGlvbi5cbiRsaW5rLWhvdmVyLWRlY29yYXRpb246IHVuZGVybGluZSAhZGVmYXVsdDtcblxuXG4vLz09IFR5cG9ncmFwaHlcbi8vXG4vLyMjIEZvbnQsIGxpbmUtaGVpZ2h0LCBhbmQgY29sb3IgZm9yIGJvZHkgdGV4dCwgaGVhZGluZ3MsIGFuZCBtb3JlLlxuXG4kZm9udC1mYW1pbHktc2Fucy1zZXJpZjogIFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBBcmlhbCwgc2Fucy1zZXJpZiAhZGVmYXVsdDtcbiRmb250LWZhbWlseS1zZXJpZjogICAgICAgR2VvcmdpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmICFkZWZhdWx0O1xuLy8qKiBEZWZhdWx0IG1vbm9zcGFjZSBmb250cyBmb3IgYDxjb2RlPmAsIGA8a2JkPmAsIGFuZCBgPHByZT5gLlxuJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogICBNZW5sbywgTW9uYWNvLCBDb25zb2xhcywgXCJDb3VyaWVyIE5ld1wiLCBtb25vc3BhY2UgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktYmFzZTogICAgICAgICRmb250LWZhbWlseS1zYW5zLXNlcmlmICFkZWZhdWx0O1xuXG4kZm9udC1zaXplLWJhc2U6ICAgICAgICAgIDE0cHggIWRlZmF1bHQ7XG4kZm9udC1zaXplLWxhcmdlOiAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMjUpKSAhZGVmYXVsdDsgLy8gfjE4cHhcbiRmb250LXNpemUtc21hbGw6ICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogLjg1KSkgIWRlZmF1bHQ7IC8vIH4xMnB4XG5cbiRmb250LXNpemUtaDE6ICAgICAgICAgICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqIDIuNikpICFkZWZhdWx0OyAvLyB+MzZweFxuJGZvbnQtc2l6ZS1oMjogICAgICAgICAgICBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMi4xNSkpICFkZWZhdWx0OyAvLyB+MzBweFxuJGZvbnQtc2l6ZS1oMzogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjcpKSAhZGVmYXVsdDsgLy8gfjI0cHhcbiRmb250LXNpemUtaDQ6ICAgICAgICAgICAgY2VpbCgoJGZvbnQtc2l6ZS1iYXNlICogMS4yNSkpICFkZWZhdWx0OyAvLyB+MThweFxuJGZvbnQtc2l6ZS1oNTogICAgICAgICAgICAkZm9udC1zaXplLWJhc2UgIWRlZmF1bHQ7XG4kZm9udC1zaXplLWg2OiAgICAgICAgICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIC44NSkpICFkZWZhdWx0OyAvLyB+MTJweFxuXG4vLyoqIFVuaXQtbGVzcyBgbGluZS1oZWlnaHRgIGZvciB1c2UgaW4gY29tcG9uZW50cyBsaWtlIGJ1dHRvbnMuXG4kbGluZS1oZWlnaHQtYmFzZTogICAgICAgIDEuNDI4NTcxNDI5ICFkZWZhdWx0OyAvLyAyMC8xNFxuLy8qKiBDb21wdXRlZCBcImxpbmUtaGVpZ2h0XCIgKGBmb250LXNpemVgICogYGxpbmUtaGVpZ2h0YCkgZm9yIHVzZSB3aXRoIGBtYXJnaW5gLCBgcGFkZGluZ2AsIGV0Yy5cbiRsaW5lLWhlaWdodC1jb21wdXRlZDogICAgZmxvb3IoKCRmb250LXNpemUtYmFzZSAqICRsaW5lLWhlaWdodC1iYXNlKSkgIWRlZmF1bHQ7IC8vIH4yMHB4XG5cbi8vKiogQnkgZGVmYXVsdCwgdGhpcyBpbmhlcml0cyBmcm9tIHRoZSBgPGJvZHk+YC5cbiRoZWFkaW5ncy1mb250LWZhbWlseTogICAgaW5oZXJpdCAhZGVmYXVsdDtcbiRoZWFkaW5ncy1mb250LXdlaWdodDogICAgNTAwICFkZWZhdWx0O1xuJGhlYWRpbmdzLWxpbmUtaGVpZ2h0OiAgICAxLjEgIWRlZmF1bHQ7XG4kaGVhZGluZ3MtY29sb3I6ICAgICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG5cblxuLy89PSBJY29ub2dyYXBoeVxuLy9cbi8vIyMgU3BlY2lmeSBjdXN0b20gbG9jYXRpb24gYW5kIGZpbGVuYW1lIG9mIHRoZSBpbmNsdWRlZCBHbHlwaGljb25zIGljb24gZm9udC4gVXNlZnVsIGZvciB0aG9zZSBpbmNsdWRpbmcgQm9vdHN0cmFwIHZpYSBCb3dlci5cblxuLy8qKiBMb2FkIGZvbnRzIGZyb20gdGhpcyBkaXJlY3RvcnkuXG5cbi8vIFtjb252ZXJ0ZXJdIElmICRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIgaWYgdXNlZCwgcHJvdmlkZSBwYXRoIHJlbGF0aXZlIHRvIHRoZSBhc3NldHMgbG9hZCBwYXRoLlxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBiZWNhdXNlIHNvbWUgYXNzZXQgaGVscGVycywgc3VjaCBhcyBTcHJvY2tldHMsIGRvIG5vdCB3b3JrIHdpdGggZmlsZS1yZWxhdGl2ZSBwYXRocy5cbiRpY29uLWZvbnQtcGF0aDogaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgXCJib290c3RyYXAvXCIsIFwiLi4vZm9udHMvYm9vdHN0cmFwL1wiKSAhZGVmYXVsdDtcblxuLy8qKiBGaWxlIG5hbWUgZm9yIGFsbCBmb250IGZpbGVzLlxuJGljb24tZm9udC1uYW1lOiAgICAgICAgICBcImdseXBoaWNvbnMtaGFsZmxpbmdzLXJlZ3VsYXJcIiAhZGVmYXVsdDtcbi8vKiogRWxlbWVudCBJRCB3aXRoaW4gU1ZHIGljb24gZmlsZS5cbiRpY29uLWZvbnQtc3ZnLWlkOiAgICAgICAgXCJnbHlwaGljb25zX2hhbGZsaW5nc3JlZ3VsYXJcIiAhZGVmYXVsdDtcblxuXG4vLz09IENvbXBvbmVudHNcbi8vXG4vLyMjIERlZmluZSBjb21tb24gcGFkZGluZyBhbmQgYm9yZGVyIHJhZGl1cyBzaXplcyBhbmQgbW9yZS4gVmFsdWVzIGJhc2VkIG9uIDE0cHggdGV4dCBhbmQgMS40MjggbGluZS1oZWlnaHQgKH4yMHB4IHRvIHN0YXJ0KS5cblxuJHBhZGRpbmctYmFzZS12ZXJ0aWNhbDogICAgIDZweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWJhc2UtaG9yaXpvbnRhbDogICAxMnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1sYXJnZS12ZXJ0aWNhbDogICAgMTBweCAhZGVmYXVsdDtcbiRwYWRkaW5nLWxhcmdlLWhvcml6b250YWw6ICAxNnB4ICFkZWZhdWx0O1xuXG4kcGFkZGluZy1zbWFsbC12ZXJ0aWNhbDogICAgNXB4ICFkZWZhdWx0O1xuJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDogIDEwcHggIWRlZmF1bHQ7XG5cbiRwYWRkaW5nLXhzLXZlcnRpY2FsOiAgICAgICAxcHggIWRlZmF1bHQ7XG4kcGFkZGluZy14cy1ob3Jpem9udGFsOiAgICAgNXB4ICFkZWZhdWx0O1xuXG4kbGluZS1oZWlnaHQtbGFyZ2U6ICAgICAgICAgMS4zMzMzMzMzICFkZWZhdWx0OyAvLyBleHRyYSBkZWNpbWFscyBmb3IgV2luIDguMSBDaHJvbWVcbiRsaW5lLWhlaWdodC1zbWFsbDogICAgICAgICAxLjUgIWRlZmF1bHQ7XG5cbiRib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICA0cHggIWRlZmF1bHQ7XG4kYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgNnB4ICFkZWZhdWx0O1xuJGJvcmRlci1yYWRpdXMtc21hbGw6ICAgICAgIDNweCAhZGVmYXVsdDtcblxuLy8qKiBHbG9iYWwgY29sb3IgZm9yIGFjdGl2ZSBpdGVtcyAoZS5nLiwgbmF2cyBvciBkcm9wZG93bnMpLlxuJGNvbXBvbmVudC1hY3RpdmUtY29sb3I6ICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIEdsb2JhbCBiYWNrZ3JvdW5kIGNvbG9yIGZvciBhY3RpdmUgaXRlbXMgKGUuZy4sIG5hdnMgb3IgZHJvcGRvd25zKS5cbiRjb21wb25lbnQtYWN0aXZlLWJnOiAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcblxuLy8qKiBXaWR0aCBvZiB0aGUgYGJvcmRlcmAgZm9yIGdlbmVyYXRpbmcgY2FyZXRzIHRoYXQgaW5kaWNhdGUgZHJvcGRvd25zLlxuJGNhcmV0LXdpZHRoLWJhc2U6ICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogQ2FyZXRzIGluY3JlYXNlIHNsaWdodGx5IGluIHNpemUgZm9yIGxhcmdlciBjb21wb25lbnRzLlxuJGNhcmV0LXdpZHRoLWxhcmdlOiAgICAgICAgIDVweCAhZGVmYXVsdDtcblxuXG4vLz09IFRhYmxlc1xuLy9cbi8vIyMgQ3VzdG9taXplcyB0aGUgYC50YWJsZWAgY29tcG9uZW50IHdpdGggYmFzaWMgdmFsdWVzLCBlYWNoIHVzZWQgYWNyb3NzIGFsbCB0YWJsZSB2YXJpYXRpb25zLlxuXG4vLyoqIFBhZGRpbmcgZm9yIGA8dGg+YHMgYW5kIGA8dGQ+YHMuXG4kdGFibGUtY2VsbC1wYWRkaW5nOiAgICAgICAgICAgIDhweCAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBmb3IgY2VsbHMgaW4gYC50YWJsZS1jb25kZW5zZWRgLlxuJHRhYmxlLWNvbmRlbnNlZC1jZWxsLXBhZGRpbmc6ICA1cHggIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBiYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGFsbCB0YWJsZXMuXG4kdGFibGUtYmc6ICAgICAgICAgICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIHVzZWQgZm9yIGAudGFibGUtc3RyaXBlZGAuXG4kdGFibGUtYmctYWNjZW50OiAgICAgICAgICAgICAgICNmOWY5ZjkgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3IgdXNlZCBmb3IgYC50YWJsZS1ob3ZlcmAuXG4kdGFibGUtYmctaG92ZXI6ICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kdGFibGUtYmctYWN0aXZlOiAgICAgICAgICAgICAgICR0YWJsZS1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRhYmxlIGFuZCBjZWxsIGJvcmRlcnMuXG4kdGFibGUtYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cblxuLy89PSBCdXR0b25zXG4vL1xuLy8jIyBGb3IgZWFjaCBvZiBCb290c3RyYXAncyBidXR0b25zLCBkZWZpbmUgdGV4dCwgYmFja2dyb3VuZCBhbmQgYm9yZGVyIGNvbG9yLlxuXG4kYnRuLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgICAgICBub3JtYWwgIWRlZmF1bHQ7XG5cbiRidG4tZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG4kYnRuLWRlZmF1bHQtYmc6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kZWZhdWx0LWJvcmRlcjogICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcblxuJGJ0bi1wcmltYXJ5LWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4tcHJpbWFyeS1iZzogICAgICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuJGJ0bi1wcmltYXJ5LWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4tcHJpbWFyeS1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLXN1Y2Nlc3MtY29sb3I6ICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1zdWNjZXNzLWJnOiAgICAgICAgICAgICAgICAgJGJyYW5kLXN1Y2Nlc3MgIWRlZmF1bHQ7XG4kYnRuLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgICBkYXJrZW4oJGJ0bi1zdWNjZXNzLWJnLCA1JSkgIWRlZmF1bHQ7XG5cbiRidG4taW5mby1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kYnRuLWluZm8tYmc6ICAgICAgICAgICAgICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcbiRidG4taW5mby1ib3JkZXI6ICAgICAgICAgICAgICAgIGRhcmtlbigkYnRuLWluZm8tYmcsIDUlKSAhZGVmYXVsdDtcblxuJGJ0bi13YXJuaW5nLWNvbG9yOiAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRidG4td2FybmluZy1iZzogICAgICAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuJGJ0bi13YXJuaW5nLWJvcmRlcjogICAgICAgICAgICAgZGFya2VuKCRidG4td2FybmluZy1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWRhbmdlci1jb2xvcjogICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGJ0bi1kYW5nZXItYmc6ICAgICAgICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcbiRidG4tZGFuZ2VyLWJvcmRlcjogICAgICAgICAgICAgIGRhcmtlbigkYnRuLWRhbmdlci1iZywgNSUpICFkZWZhdWx0O1xuXG4kYnRuLWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcblxuLy8gQWxsb3dzIGZvciBjdXN0b21pemluZyBidXR0b24gcmFkaXVzIGluZGVwZW5kZW50bHkgZnJvbSBnbG9iYWwgYm9yZGVyIHJhZGl1c1xuJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2U6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAgICRib3JkZXItcmFkaXVzLWxhcmdlICFkZWZhdWx0O1xuJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICAgJGJvcmRlci1yYWRpdXMtc21hbGwgIWRlZmF1bHQ7XG5cblxuLy89PSBGb3Jtc1xuLy9cbi8vIyNcblxuLy8qKiBgPGlucHV0PmAgYmFja2dyb3VuZCBjb2xvclxuJGlucHV0LWJnOiAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYDxpbnB1dCBkaXNhYmxlZD5gIGJhY2tncm91bmQgY29sb3JcbiRpbnB1dC1iZy1kaXNhYmxlZDogICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbi8vKiogVGV4dCBjb2xvciBmb3IgYDxpbnB1dD5gc1xuJGlucHV0LWNvbG9yOiAgICAgICAgICAgICAgICAgICAgJGdyYXkgIWRlZmF1bHQ7XG4vLyoqIGA8aW5wdXQ+YCBib3JkZXIgY29sb3JcbiRpbnB1dC1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICNjY2MgIWRlZmF1bHQ7XG5cbi8vIFRPRE86IFJlbmFtZSBgJGlucHV0LWJvcmRlci1yYWRpdXNgIHRvIGAkaW5wdXQtYm9yZGVyLXJhZGl1cy1iYXNlYCBpbiB2NFxuLy8qKiBEZWZhdWx0IGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4vLyBUaGlzIGhhcyBubyBlZmZlY3Qgb24gYDxzZWxlY3Q+YHMgaW4gc29tZSBicm93c2VycywgZHVlIHRvIHRoZSBsaW1pdGVkIHN0eWxhYmlsaXR5IG9mIGA8c2VsZWN0PmBzIGluIENTUy5cbiRpbnB1dC1ib3JkZXItcmFkaXVzOiAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4vLyoqIExhcmdlIGAuZm9ybS1jb250cm9sYCBib3JkZXIgcmFkaXVzXG4kaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZTogICAgICAkYm9yZGVyLXJhZGl1cy1sYXJnZSAhZGVmYXVsdDtcbi8vKiogU21hbGwgYC5mb3JtLWNvbnRyb2xgIGJvcmRlciByYWRpdXNcbiRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsOiAgICAgICRib3JkZXItcmFkaXVzLXNtYWxsICFkZWZhdWx0O1xuXG4vLyoqIEJvcmRlciBjb2xvciBmb3IgaW5wdXRzIG9uIGZvY3VzXG4kaW5wdXQtYm9yZGVyLWZvY3VzOiAgICAgICAgICAgICAjNjZhZmU5ICFkZWZhdWx0O1xuXG4vLyoqIFBsYWNlaG9sZGVyIHRleHQgY29sb3JcbiRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcjogICAgICAgICM5OTkgIWRlZmF1bHQ7XG5cbi8vKiogRGVmYXVsdCBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWJhc2U6ICAgICAgICAgICAgICAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKiAyKSArIDIpICFkZWZhdWx0O1xuLy8qKiBMYXJnZSBgLmZvcm0tY29udHJvbGAgaGVpZ2h0XG4kaW5wdXQtaGVpZ2h0LWxhcmdlOiAgICAgICAgICAgICAoY2VpbCgkZm9udC1zaXplLWxhcmdlICogJGxpbmUtaGVpZ2h0LWxhcmdlKSArICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG4vLyoqIFNtYWxsIGAuZm9ybS1jb250cm9sYCBoZWlnaHRcbiRpbnB1dC1oZWlnaHQtc21hbGw6ICAgICAgICAgICAgIChmbG9vcigkZm9udC1zaXplLXNtYWxsICogJGxpbmUtaGVpZ2h0LXNtYWxsKSArICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAqIDIpICsgMikgIWRlZmF1bHQ7XG5cbi8vKiogYC5mb3JtLWdyb3VwYCBtYXJnaW5cbiRmb3JtLWdyb3VwLW1hcmdpbi1ib3R0b206ICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbiRsZWdlbmQtY29sb3I6ICAgICAgICAgICAgICAgICAgICRncmF5LWRhcmsgIWRlZmF1bHQ7XG4kbGVnZW5kLWJvcmRlci1jb2xvcjogICAgICAgICAgICAjZTVlNWU1ICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYmc6ICAgICAgICAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBCb3JkZXIgY29sb3IgZm9yIHRleHR1YWwgaW5wdXQgYWRkb25zXG4kaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yOiAkaW5wdXQtYm9yZGVyICFkZWZhdWx0O1xuXG4vLyoqIERpc2FibGVkIGN1cnNvciBmb3IgZm9ybSBjb250cm9scyBhbmQgYnV0dG9ucy5cbiRjdXJzb3ItZGlzYWJsZWQ6ICAgICAgICAgICAgICAgIG5vdC1hbGxvd2VkICFkZWZhdWx0O1xuXG5cbi8vPT0gRHJvcGRvd25zXG4vL1xuLy8jIyBEcm9wZG93biBtZW51IGNvbnRhaW5lciBhbmQgY29udGVudHMuXG5cbi8vKiogQmFja2dyb3VuZCBmb3IgdGhlIGRyb3Bkb3duIG1lbnUuXG4kZHJvcGRvd24tYmc6ICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgLlxuJGRyb3Bkb3duLWJvcmRlcjogICAgICAgICAgICAgICAgcmdiYSgwLCAwLCAwLCAuMTUpICFkZWZhdWx0O1xuLy8qKiBEcm9wZG93biBtZW51IGBib3JkZXItY29sb3JgICoqZm9yIElFOCoqLlxuJGRyb3Bkb3duLWZhbGxiYWNrLWJvcmRlcjogICAgICAgI2NjYyAhZGVmYXVsdDtcbi8vKiogRGl2aWRlciBjb2xvciBmb3IgYmV0d2VlbiBkcm9wZG93biBpdGVtcy5cbiRkcm9wZG93bi1kaXZpZGVyLWJnOiAgICAgICAgICAgICNlNWU1ZTUgIWRlZmF1bHQ7XG5cbi8vKiogRHJvcGRvd24gbGluayB0ZXh0IGNvbG9yLlxuJGRyb3Bkb3duLWxpbmstY29sb3I6ICAgICAgICAgICAgJGdyYXktZGFyayAhZGVmYXVsdDtcbi8vKiogSG92ZXIgY29sb3IgZm9yIGRyb3Bkb3duIGxpbmtzLlxuJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I6ICAgICAgZGFya2VuKCRncmF5LWRhcmssIDUlKSAhZGVmYXVsdDtcbi8vKiogSG92ZXIgYmFja2dyb3VuZCBmb3IgZHJvcGRvd24gbGlua3MuXG4kZHJvcGRvd24tbGluay1ob3Zlci1iZzogICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4vLyoqIEFjdGl2ZSBkcm9wZG93biBtZW51IGl0ZW0gdGV4dCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjogICAgICRjb21wb25lbnQtYWN0aXZlLWNvbG9yICFkZWZhdWx0O1xuLy8qKiBBY3RpdmUgZHJvcGRvd24gbWVudSBpdGVtIGJhY2tncm91bmQgY29sb3IuXG4kZHJvcGRvd24tbGluay1hY3RpdmUtYmc6ICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1iZyAhZGVmYXVsdDtcblxuLy8qKiBEaXNhYmxlZCBkcm9wZG93biBtZW51IGl0ZW0gYmFja2dyb3VuZCBjb2xvci5cbiRkcm9wZG93bi1saW5rLWRpc2FibGVkLWNvbG9yOiAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3IgZm9yIGhlYWRlcnMgd2l0aGluIGRyb3Bkb3duIG1lbnVzLlxuJGRyb3Bkb3duLWhlYWRlci1jb2xvcjogICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vKiogRGVwcmVjYXRlZCBgJGRyb3Bkb3duLWNhcmV0LWNvbG9yYCBhcyBvZiB2My4xLjBcbiRkcm9wZG93bi1jYXJldC1jb2xvcjogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG5cblxuLy8tLSBaLWluZGV4IG1hc3RlciBsaXN0XG4vL1xuLy8gV2FybmluZzogQXZvaWQgY3VzdG9taXppbmcgdGhlc2UgdmFsdWVzLiBUaGV5J3JlIHVzZWQgZm9yIGEgYmlyZCdzIGV5ZSB2aWV3XG4vLyBvZiBjb21wb25lbnRzIGRlcGVuZGVudCBvbiB0aGUgei1heGlzIGFuZCBhcmUgZGVzaWduZWQgdG8gYWxsIHdvcmsgdG9nZXRoZXIuXG4vL1xuLy8gTm90ZTogVGhlc2UgdmFyaWFibGVzIGFyZSBub3QgZ2VuZXJhdGVkIGludG8gdGhlIEN1c3RvbWl6ZXIuXG5cbiR6aW5kZXgtbmF2YmFyOiAgICAgICAgICAgIDEwMDAgIWRlZmF1bHQ7XG4kemluZGV4LWRyb3Bkb3duOiAgICAgICAgICAxMDAwICFkZWZhdWx0O1xuJHppbmRleC1wb3BvdmVyOiAgICAgICAgICAgMTA2MCAhZGVmYXVsdDtcbiR6aW5kZXgtdG9vbHRpcDogICAgICAgICAgIDEwNzAgIWRlZmF1bHQ7XG4kemluZGV4LW5hdmJhci1maXhlZDogICAgICAxMDMwICFkZWZhdWx0O1xuJHppbmRleC1tb2RhbC1iYWNrZ3JvdW5kOiAgMTA0MCAhZGVmYXVsdDtcbiR6aW5kZXgtbW9kYWw6ICAgICAgICAgICAgIDEwNTAgIWRlZmF1bHQ7XG5cblxuLy89PSBNZWRpYSBxdWVyaWVzIGJyZWFrcG9pbnRzXG4vL1xuLy8jIyBEZWZpbmUgdGhlIGJyZWFrcG9pbnRzIGF0IHdoaWNoIHlvdXIgbGF5b3V0IHdpbGwgY2hhbmdlLCBhZGFwdGluZyB0byBkaWZmZXJlbnQgc2NyZWVuIHNpemVzLlxuXG4vLyBFeHRyYSBzbWFsbCBzY3JlZW4gLyBwaG9uZVxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXhzYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4teHM6ICAgICAgICAgICAgICAgICAgNDgwcHggIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4teHMtbWluYCBhcyBvZiB2My4yLjBcbiRzY3JlZW4teHMtbWluOiAgICAgICAgICAgICAgJHNjcmVlbi14cyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1waG9uZWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXBob25lOiAgICAgICAgICAgICAgICRzY3JlZW4teHMtbWluICFkZWZhdWx0O1xuXG4vLyBTbWFsbCBzY3JlZW4gLyB0YWJsZXRcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1zbWAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXNtOiAgICAgICAgICAgICAgICAgIDc2OHB4ICFkZWZhdWx0O1xuJHNjcmVlbi1zbS1taW46ICAgICAgICAgICAgICAkc2NyZWVuLXNtICFkZWZhdWx0O1xuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLXRhYmxldGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLXRhYmxldDogICAgICAgICAgICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuXG4vLyBNZWRpdW0gc2NyZWVuIC8gZGVza3RvcFxuLy8qKiBEZXByZWNhdGVkIGAkc2NyZWVuLW1kYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbWQ6ICAgICAgICAgICAgICAgICAgOTkycHggIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1pbjogICAgICAgICAgICAgICRzY3JlZW4tbWQgIWRlZmF1bHQ7XG4vLyoqIERlcHJlY2F0ZWQgYCRzY3JlZW4tZGVza3RvcGAgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWRlc2t0b3A6ICAgICAgICAgICAgICRzY3JlZW4tbWQtbWluICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3Bcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZ2AgYXMgb2YgdjMuMC4xXG4kc2NyZWVuLWxnOiAgICAgICAgICAgICAgICAgIDEyMDBweCAhZGVmYXVsdDtcbiRzY3JlZW4tbGctbWluOiAgICAgICAgICAgICAgJHNjcmVlbi1sZyAhZGVmYXVsdDtcbi8vKiogRGVwcmVjYXRlZCBgJHNjcmVlbi1sZy1kZXNrdG9wYCBhcyBvZiB2My4wLjFcbiRzY3JlZW4tbGctZGVza3RvcDogICAgICAgICAgJHNjcmVlbi1sZy1taW4gIWRlZmF1bHQ7XG5cbi8vIFNvIG1lZGlhIHF1ZXJpZXMgZG9uJ3Qgb3ZlcmxhcCB3aGVuIHJlcXVpcmVkLCBwcm92aWRlIGEgbWF4aW11bVxuJHNjcmVlbi14cy1tYXg6ICAgICAgICAgICAgICAoJHNjcmVlbi1zbS1taW4gLSAxKSAhZGVmYXVsdDtcbiRzY3JlZW4tc20tbWF4OiAgICAgICAgICAgICAgKCRzY3JlZW4tbWQtbWluIC0gMSkgIWRlZmF1bHQ7XG4kc2NyZWVuLW1kLW1heDogICAgICAgICAgICAgICgkc2NyZWVuLWxnLW1pbiAtIDEpICFkZWZhdWx0O1xuXG5cbi8vPT0gR3JpZCBzeXN0ZW1cbi8vXG4vLyMjIERlZmluZSB5b3VyIGN1c3RvbSByZXNwb25zaXZlIGdyaWQuXG5cbi8vKiogTnVtYmVyIG9mIGNvbHVtbnMgaW4gdGhlIGdyaWQuXG4kZ3JpZC1jb2x1bW5zOiAgICAgICAgICAgICAgMTIgIWRlZmF1bHQ7XG4vLyoqIFBhZGRpbmcgYmV0d2VlbiBjb2x1bW5zLiBHZXRzIGRpdmlkZWQgaW4gaGFsZiBmb3IgdGhlIGxlZnQgYW5kIHJpZ2h0LlxuJGdyaWQtZ3V0dGVyLXdpZHRoOiAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4vLyBOYXZiYXIgY29sbGFwc2Vcbi8vKiogUG9pbnQgYXQgd2hpY2ggdGhlIG5hdmJhciBiZWNvbWVzIHVuY29sbGFwc2VkLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludDogICAgICRzY3JlZW4tc20tbWluICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCB0aGUgbmF2YmFyIGJlZ2lucyBjb2xsYXBzaW5nLlxuJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXg6ICgkZ3JpZC1mbG9hdC1icmVha3BvaW50IC0gMSkgIWRlZmF1bHQ7XG5cblxuLy89PSBDb250YWluZXIgc2l6ZXNcbi8vXG4vLyMjIERlZmluZSB0aGUgbWF4aW11bSB3aWR0aCBvZiBgLmNvbnRhaW5lcmAgZm9yIGRpZmZlcmVudCBzY3JlZW4gc2l6ZXMuXG5cbi8vIFNtYWxsIHNjcmVlbiAvIHRhYmxldFxuJGNvbnRhaW5lci10YWJsZXQ6ICAgICAgICAgICAgICg3MjBweCArICRncmlkLWd1dHRlci13aWR0aCkgIWRlZmF1bHQ7XG4vLyoqIEZvciBgJHNjcmVlbi1zbS1taW5gIGFuZCB1cC5cbiRjb250YWluZXItc206ICAgICAgICAgICAgICAgICAkY29udGFpbmVyLXRhYmxldCAhZGVmYXVsdDtcblxuLy8gTWVkaXVtIHNjcmVlbiAvIGRlc2t0b3BcbiRjb250YWluZXItZGVza3RvcDogICAgICAgICAgICAoOTQwcHggKyAkZ3JpZC1ndXR0ZXItd2lkdGgpICFkZWZhdWx0O1xuLy8qKiBGb3IgYCRzY3JlZW4tbWQtbWluYCBhbmQgdXAuXG4kY29udGFpbmVyLW1kOiAgICAgICAgICAgICAgICAgJGNvbnRhaW5lci1kZXNrdG9wICFkZWZhdWx0O1xuXG4vLyBMYXJnZSBzY3JlZW4gLyB3aWRlIGRlc2t0b3BcbiRjb250YWluZXItbGFyZ2UtZGVza3RvcDogICAgICAoMTE0MHB4ICsgJGdyaWQtZ3V0dGVyLXdpZHRoKSAhZGVmYXVsdDtcbi8vKiogRm9yIGAkc2NyZWVuLWxnLW1pbmAgYW5kIHVwLlxuJGNvbnRhaW5lci1sZzogICAgICAgICAgICAgICAgICRjb250YWluZXItbGFyZ2UtZGVza3RvcCAhZGVmYXVsdDtcblxuXG4vLz09IE5hdmJhclxuLy9cbi8vIyNcblxuLy8gQmFzaWNzIG9mIGEgbmF2YmFyXG4kbmF2YmFyLWhlaWdodDogICAgICAgICAgICAgICAgICAgIDUwcHggIWRlZmF1bHQ7XG4kbmF2YmFyLW1hcmdpbi1ib3R0b206ICAgICAgICAgICAgICRsaW5lLWhlaWdodC1jb21wdXRlZCAhZGVmYXVsdDtcbiRuYXZiYXItYm9yZGVyLXJhZGl1czogICAgICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsOiAgICAgICAgZmxvb3IoKCRncmlkLWd1dHRlci13aWR0aCAvIDIpKSAhZGVmYXVsdDtcbiRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDogICAgICAgICAgKCgkbmF2YmFyLWhlaWdodCAtICRsaW5lLWhlaWdodC1jb21wdXRlZCkgLyAyKSAhZGVmYXVsdDtcbiRuYXZiYXItY29sbGFwc2UtbWF4LWhlaWdodDogICAgICAgMzQwcHggIWRlZmF1bHQ7XG5cbiRuYXZiYXItZGVmYXVsdC1jb2xvcjogICAgICAgICAgICAgIzc3NyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1iZzogICAgICAgICAgICAgICAgI2Y4ZjhmOCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItZGVmYXVsdC1iZywgNi41JSkgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBsaW5rc1xuJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I6ICAgICAgICAgICAgICAgICM3NzcgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRuYXZiYXItZGVmYXVsdC1saW5rLWFjdGl2ZS1jb2xvcjogICAgICAgICAjNTU1ICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnOiAgICAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYmcsIDYuNSUpICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I6ICAgICAgICNjY2MgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1iZzogICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICRuYXZiYXItZGVmYXVsdC1saW5rLWNvbG9yICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yOiAgICAgICAgIGRhcmtlbigkbmF2YmFyLWRlZmF1bHQtYnJhbmQtY29sb3IsIDEwJSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtYnJhbmQtaG92ZXItYmc6ICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIE5hdmJhciB0b2dnbGVcbiRuYXZiYXItZGVmYXVsdC10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZzogICAgICAgICM4ODggIWRlZmF1bHQ7XG4kbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWJvcmRlci1jb2xvcjogICAgICAgI2RkZCAhZGVmYXVsdDtcblxuXG4vLz09PSBJbnZlcnRlZCBuYXZiYXJcbi8vIFJlc2V0IGludmVydGVkIG5hdmJhciBiYXNpY3NcbiRuYXZiYXItaW52ZXJzZS1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgbGlnaHRlbigkZ3JheS1saWdodCwgMTUlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1iZzogICAgICAgICAgICAgICAgICAgICAgICAgIzIyMiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcblxuLy8gSW52ZXJ0ZWQgbmF2YmFyIGxpbmtzXG4kbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjogICAgICAgICAgICAgICAgIGxpZ2h0ZW4oJGdyYXktbGlnaHQsIDE1JSkgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgIHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZzogICAgICAgICAgICAgZGFya2VuKCRuYXZiYXItaW52ZXJzZS1iZywgMTAlKSAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yOiAgICAgICAgIzQ0NCAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWJnOiAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciBicmFuZCBsYWJlbFxuJG5hdmJhci1pbnZlcnNlLWJyYW5kLWNvbG9yOiAgICAgICAgICAgICAgICAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvciAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1jb2xvcjogICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS1icmFuZC1ob3Zlci1iZzogICAgICAgICAgICAgdHJhbnNwYXJlbnQgIWRlZmF1bHQ7XG5cbi8vIEludmVydGVkIG5hdmJhciB0b2dnbGVcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaG92ZXItYmc6ICAgICAgICAgICAgIzMzMyAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc6ICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRuYXZiYXItaW52ZXJzZS10b2dnbGUtYm9yZGVyLWNvbG9yOiAgICAgICAgIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IE5hdnNcbi8vXG4vLyMjXG5cbi8vPT09IFNoYXJlZCBuYXYgc3R5bGVzXG4kbmF2LWxpbmstcGFkZGluZzogICAgICAgICAgICAgICAgICAgICAgICAgIDEwcHggMTVweCAhZGVmYXVsdDtcbiRuYXYtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcblxuJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRuYXYtZGlzYWJsZWQtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG5cbi8vPT0gVGFic1xuJG5hdi10YWJzLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG5cbiRuYXYtdGFicy1hY3RpdmUtbGluay1ob3Zlci1iZzogICAgICAgICAgICAgJGJvZHktYmcgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I6ICAgICAgICAgICRncmF5ICFkZWZhdWx0O1xuJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJvcmRlci1jb2xvcjogICAjZGRkICFkZWZhdWx0O1xuXG4kbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yOiAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjogICAgICRib2R5LWJnICFkZWZhdWx0O1xuXG4vLz09IFBpbGxzXG4kbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kbmF2LXBpbGxzLWFjdGl2ZS1saW5rLWhvdmVyLWJnOiAgICAgICAgICAgICRjb21wb25lbnQtYWN0aXZlLWJnICFkZWZhdWx0O1xuJG5hdi1waWxscy1hY3RpdmUtbGluay1ob3Zlci1jb2xvcjogICAgICAgICAkY29tcG9uZW50LWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuXG4vLz09IFBhZ2luYXRpb25cbi8vXG4vLyMjXG5cbiRwYWdpbmF0aW9uLWNvbG9yOiAgICAgICAgICAgICAgICAgICAgICRsaW5rLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tYmc6ICAgICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWhvdmVyLWNvbG9yOiAgICAgICAgICAgICAgICRsaW5rLWhvdmVyLWNvbG9yICFkZWZhdWx0O1xuJHBhZ2luYXRpb24taG92ZXItYmc6ICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjogICAgICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG5cbiRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjogICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWFjdGl2ZS1ib3JkZXI6ICAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1jb2xvcjogICAgICAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWRpc2FibGVkLWJnOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1kaXNhYmxlZC1ib3JkZXI6ICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuXG5cbi8vPT0gUGFnZXJcbi8vXG4vLyMjXG5cbiRwYWdlci1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWJnICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlcjogICAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tYm9yZGVyICFkZWZhdWx0O1xuJHBhZ2VyLWJvcmRlci1yYWRpdXM6ICAgICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcblxuJHBhZ2VyLWhvdmVyLWJnOiAgICAgICAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24taG92ZXItYmcgIWRlZmF1bHQ7XG5cbiRwYWdlci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1iZyAhZGVmYXVsdDtcbiRwYWdlci1hY3RpdmUtY29sb3I6ICAgICAgICAgICAgICAgICAgICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvciAhZGVmYXVsdDtcblxuJHBhZ2VyLWRpc2FibGVkLWNvbG9yOiAgICAgICAgICAgICAgICAgJHBhZ2luYXRpb24tZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cblxuLy89PSBKdW1ib3Ryb25cbi8vXG4vLyMjXG5cbiRqdW1ib3Ryb24tcGFkZGluZzogICAgICAgICAgICAgIDMwcHggIWRlZmF1bHQ7XG4kanVtYm90cm9uLWNvbG9yOiAgICAgICAgICAgICAgICBpbmhlcml0ICFkZWZhdWx0O1xuJGp1bWJvdHJvbi1iZzogICAgICAgICAgICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1jb2xvcjogICAgICAgIGluaGVyaXQgIWRlZmF1bHQ7XG4kanVtYm90cm9uLWZvbnQtc2l6ZTogICAgICAgICAgICBjZWlsKCgkZm9udC1zaXplLWJhc2UgKiAxLjUpKSAhZGVmYXVsdDtcbiRqdW1ib3Ryb24taGVhZGluZy1mb250LXNpemU6ICAgIGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDQuNSkpICFkZWZhdWx0O1xuXG5cbi8vPT0gRm9ybSBzdGF0ZXMgYW5kIGFsZXJ0c1xuLy9cbi8vIyMgRGVmaW5lIGNvbG9ycyBmb3IgZm9ybSBmZWVkYmFjayBzdGF0ZXMgYW5kLCBieSBkZWZhdWx0LCBhbGVydHMuXG5cbiRzdGF0ZS1zdWNjZXNzLXRleHQ6ICAgICAgICAgICAgICMzYzc2M2QgIWRlZmF1bHQ7XG4kc3RhdGUtc3VjY2Vzcy1iZzogICAgICAgICAgICAgICAjZGZmMGQ4ICFkZWZhdWx0O1xuJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLXN1Y2Nlc3MtYmcsIC0xMCksIDUlKSAhZGVmYXVsdDtcblxuJHN0YXRlLWluZm8tdGV4dDogICAgICAgICAgICAgICAgIzMxNzA4ZiAhZGVmYXVsdDtcbiRzdGF0ZS1pbmZvLWJnOiAgICAgICAgICAgICAgICAgICNkOWVkZjcgIWRlZmF1bHQ7XG4kc3RhdGUtaW5mby1ib3JkZXI6ICAgICAgICAgICAgICBkYXJrZW4oYWRqdXN0LWh1ZSgkc3RhdGUtaW5mby1iZywgLTEwKSwgNyUpICFkZWZhdWx0O1xuXG4kc3RhdGUtd2FybmluZy10ZXh0OiAgICAgICAgICAgICAjOGE2ZDNiICFkZWZhdWx0O1xuJHN0YXRlLXdhcm5pbmctYmc6ICAgICAgICAgICAgICAgI2ZjZjhlMyAhZGVmYXVsdDtcbiRzdGF0ZS13YXJuaW5nLWJvcmRlcjogICAgICAgICAgIGRhcmtlbihhZGp1c3QtaHVlKCRzdGF0ZS13YXJuaW5nLWJnLCAtMTApLCA1JSkgIWRlZmF1bHQ7XG5cbiRzdGF0ZS1kYW5nZXItdGV4dDogICAgICAgICAgICAgICNhOTQ0NDIgIWRlZmF1bHQ7XG4kc3RhdGUtZGFuZ2VyLWJnOiAgICAgICAgICAgICAgICAjZjJkZWRlICFkZWZhdWx0O1xuJHN0YXRlLWRhbmdlci1ib3JkZXI6ICAgICAgICAgICAgZGFya2VuKGFkanVzdC1odWUoJHN0YXRlLWRhbmdlci1iZywgLTEwKSwgNSUpICFkZWZhdWx0O1xuXG5cbi8vPT0gVG9vbHRpcHNcbi8vXG4vLyMjXG5cbi8vKiogVG9vbHRpcCBtYXggd2lkdGhcbiR0b29sdGlwLW1heC13aWR0aDogICAgICAgICAgIDIwMHB4ICFkZWZhdWx0O1xuLy8qKiBUb29sdGlwIHRleHQgY29sb3JcbiR0b29sdGlwLWNvbG9yOiAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFRvb2x0aXAgYmFja2dyb3VuZCBjb2xvclxuJHRvb2x0aXAtYmc6ICAgICAgICAgICAgICAgICAgIzAwMCAhZGVmYXVsdDtcbiR0b29sdGlwLW9wYWNpdHk6ICAgICAgICAgICAgIC45ICFkZWZhdWx0O1xuXG4vLyoqIFRvb2x0aXAgYXJyb3cgd2lkdGhcbiR0b29sdGlwLWFycm93LXdpZHRoOiAgICAgICAgIDVweCAhZGVmYXVsdDtcbi8vKiogVG9vbHRpcCBhcnJvdyBjb2xvclxuJHRvb2x0aXAtYXJyb3ctY29sb3I6ICAgICAgICAgJHRvb2x0aXAtYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBQb3BvdmVyc1xuLy9cbi8vIyNcblxuLy8qKiBQb3BvdmVyIGJvZHkgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItYmc6ICAgICAgICAgICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIG1heGltdW0gd2lkdGhcbiRwb3BvdmVyLW1heC13aWR0aDogICAgICAgICAgICAgICAgICAgMjc2cHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYm9yZGVyIGNvbG9yXG4kcG9wb3Zlci1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjIpICFkZWZhdWx0O1xuLy8qKiBQb3BvdmVyIGZhbGxiYWNrIGJvcmRlciBjb2xvclxuJHBvcG92ZXItZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAjY2NjICFkZWZhdWx0O1xuXG4vLyoqIFBvcG92ZXIgdGl0bGUgYmFja2dyb3VuZCBjb2xvclxuJHBvcG92ZXItdGl0bGUtYmc6ICAgICAgICAgICAgICAgICAgICBkYXJrZW4oJHBvcG92ZXItYmcsIDMlKSAhZGVmYXVsdDtcblxuLy8qKiBQb3BvdmVyIGFycm93IHdpZHRoXG4kcG9wb3Zlci1hcnJvdy13aWR0aDogICAgICAgICAgICAgICAgIDEwcHggIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgYXJyb3cgY29sb3JcbiRwb3BvdmVyLWFycm93LWNvbG9yOiAgICAgICAgICAgICAgICAgJHBvcG92ZXItYmcgIWRlZmF1bHQ7XG5cbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyB3aWR0aFxuJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg6ICAgICAgICAgICAoJHBvcG92ZXItYXJyb3ctd2lkdGggKyAxKSAhZGVmYXVsdDtcbi8vKiogUG9wb3ZlciBvdXRlciBhcnJvdyBjb2xvclxuJHBvcG92ZXItYXJyb3ctb3V0ZXItY29sb3I6ICAgICAgICAgICBmYWRlX2luKCRwb3BvdmVyLWJvcmRlci1jb2xvciwgMC4wNSkgIWRlZmF1bHQ7XG4vLyoqIFBvcG92ZXIgb3V0ZXIgYXJyb3cgZmFsbGJhY2sgY29sb3JcbiRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOiAgZGFya2VuKCRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvciwgMjAlKSAhZGVmYXVsdDtcblxuXG4vLz09IExhYmVsc1xuLy9cbi8vIyNcblxuLy8qKiBEZWZhdWx0IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1kZWZhdWx0LWJnOiAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBQcmltYXJ5IGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1wcmltYXJ5LWJnOiAgICAgICAgICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuLy8qKiBTdWNjZXNzIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1zdWNjZXNzLWJnOiAgICAgICAgICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBJbmZvIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC1pbmZvLWJnOiAgICAgICAgICAgICAgICRicmFuZC1pbmZvICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIGxhYmVsIGJhY2tncm91bmQgY29sb3JcbiRsYWJlbC13YXJuaW5nLWJnOiAgICAgICAgICAgICRicmFuZC13YXJuaW5nICFkZWZhdWx0O1xuLy8qKiBEYW5nZXIgbGFiZWwgYmFja2dyb3VuZCBjb2xvclxuJGxhYmVsLWRhbmdlci1iZzogICAgICAgICAgICAgJGJyYW5kLWRhbmdlciAhZGVmYXVsdDtcblxuLy8qKiBEZWZhdWx0IGxhYmVsIHRleHQgY29sb3JcbiRsYWJlbC1jb2xvcjogICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIERlZmF1bHQgdGV4dCBjb2xvciBvZiBhIGxpbmtlZCBsYWJlbFxuJGxhYmVsLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuXG4vLz09IE1vZGFsc1xuLy9cbi8vIyNcblxuLy8qKiBQYWRkaW5nIGFwcGxpZWQgdG8gdGhlIG1vZGFsIGJvZHlcbiRtb2RhbC1pbm5lci1wYWRkaW5nOiAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG5cbi8vKiogUGFkZGluZyBhcHBsaWVkIHRvIHRoZSBtb2RhbCB0aXRsZVxuJG1vZGFsLXRpdGxlLXBhZGRpbmc6ICAgICAgICAgMTVweCAhZGVmYXVsdDtcbi8vKiogTW9kYWwgdGl0bGUgbGluZS1oZWlnaHRcbiRtb2RhbC10aXRsZS1saW5lLWhlaWdodDogICAgICRsaW5lLWhlaWdodC1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgbW9kYWwgY29udGVudCBhcmVhXG4kbW9kYWwtY29udGVudC1iZzogICAgICAgICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGNvbnRlbnQgYm9yZGVyIGNvbG9yXG4kbW9kYWwtY29udGVudC1ib3JkZXItY29sb3I6ICAgICAgICAgICAgICAgICAgIHJnYmEoMCwgMCwgMCwgLjIpICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBjb250ZW50IGJvcmRlciBjb2xvciAqKmZvciBJRTgqKlxuJG1vZGFsLWNvbnRlbnQtZmFsbGJhY2stYm9yZGVyLWNvbG9yOiAgICAgICAgICAjOTk5ICFkZWZhdWx0O1xuXG4vLyoqIE1vZGFsIGJhY2tkcm9wIGJhY2tncm91bmQgY29sb3JcbiRtb2RhbC1iYWNrZHJvcC1iZzogICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4vLyoqIE1vZGFsIGJhY2tkcm9wIG9wYWNpdHlcbiRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5OiAgICAgIC41ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvcjogICAjZTVlNWU1ICFkZWZhdWx0O1xuLy8qKiBNb2RhbCBmb290ZXIgYm9yZGVyIGNvbG9yXG4kbW9kYWwtZm9vdGVyLWJvcmRlci1jb2xvcjogICAkbW9kYWwtaGVhZGVyLWJvcmRlci1jb2xvciAhZGVmYXVsdDtcblxuJG1vZGFsLWxnOiAgICAgICAgICAgICAgICAgICAgOTAwcHggIWRlZmF1bHQ7XG4kbW9kYWwtbWQ6ICAgICAgICAgICAgICAgICAgICA2MDBweCAhZGVmYXVsdDtcbiRtb2RhbC1zbTogICAgICAgICAgICAgICAgICAgIDMwMHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gQWxlcnRzXG4vL1xuLy8jIyBEZWZpbmUgYWxlcnQgY29sb3JzLCBib3JkZXIgcmFkaXVzLCBhbmQgcGFkZGluZy5cblxuJGFsZXJ0LXBhZGRpbmc6ICAgICAgICAgICAgICAgMTVweCAhZGVmYXVsdDtcbiRhbGVydC1ib3JkZXItcmFkaXVzOiAgICAgICAgICRib3JkZXItcmFkaXVzLWJhc2UgIWRlZmF1bHQ7XG4kYWxlcnQtbGluay1mb250LXdlaWdodDogICAgICBib2xkICFkZWZhdWx0O1xuXG4kYWxlcnQtc3VjY2Vzcy1iZzogICAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy1iZyAhZGVmYXVsdDtcbiRhbGVydC1zdWNjZXNzLXRleHQ6ICAgICAgICAgICRzdGF0ZS1zdWNjZXNzLXRleHQgIWRlZmF1bHQ7XG4kYWxlcnQtc3VjY2Vzcy1ib3JkZXI6ICAgICAgICAkc3RhdGUtc3VjY2Vzcy1ib3JkZXIgIWRlZmF1bHQ7XG5cbiRhbGVydC1pbmZvLWJnOiAgICAgICAgICAgICAgICRzdGF0ZS1pbmZvLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWluZm8tdGV4dDogICAgICAgICAgICAgJHN0YXRlLWluZm8tdGV4dCAhZGVmYXVsdDtcbiRhbGVydC1pbmZvLWJvcmRlcjogICAgICAgICAgICRzdGF0ZS1pbmZvLWJvcmRlciAhZGVmYXVsdDtcblxuJGFsZXJ0LXdhcm5pbmctYmc6ICAgICAgICAgICAgJHN0YXRlLXdhcm5pbmctYmcgIWRlZmF1bHQ7XG4kYWxlcnQtd2FybmluZy10ZXh0OiAgICAgICAgICAkc3RhdGUtd2FybmluZy10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LXdhcm5pbmctYm9yZGVyOiAgICAgICAgJHN0YXRlLXdhcm5pbmctYm9yZGVyICFkZWZhdWx0O1xuXG4kYWxlcnQtZGFuZ2VyLWJnOiAgICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLWJnICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci10ZXh0OiAgICAgICAgICAgJHN0YXRlLWRhbmdlci10ZXh0ICFkZWZhdWx0O1xuJGFsZXJ0LWRhbmdlci1ib3JkZXI6ICAgICAgICAgJHN0YXRlLWRhbmdlci1ib3JkZXIgIWRlZmF1bHQ7XG5cblxuLy89PSBQcm9ncmVzcyBiYXJzXG4vL1xuLy8jI1xuXG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgdGhlIHdob2xlIHByb2dyZXNzIGNvbXBvbmVudFxuJHByb2dyZXNzLWJnOiAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbi8vKiogUHJvZ3Jlc3MgYmFyIHRleHQgY29sb3JcbiRwcm9ncmVzcy1iYXItY29sb3I6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4vLyoqIFZhcmlhYmxlIGZvciBzZXR0aW5nIHJvdW5kZWQgY29ybmVycyBvbiBwcm9ncmVzcyBiYXIuXG4kcHJvZ3Jlc3MtYm9yZGVyLXJhZGl1czogICAgICAkYm9yZGVyLXJhZGl1cy1iYXNlICFkZWZhdWx0O1xuXG4vLyoqIERlZmF1bHQgcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWJnOiAgICAgICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbi8vKiogU3VjY2VzcyBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZzogICAgICRicmFuZC1zdWNjZXNzICFkZWZhdWx0O1xuLy8qKiBXYXJuaW5nIHByb2dyZXNzIGJhciBjb2xvclxuJHByb2dyZXNzLWJhci13YXJuaW5nLWJnOiAgICAgJGJyYW5kLXdhcm5pbmcgIWRlZmF1bHQ7XG4vLyoqIERhbmdlciBwcm9ncmVzcyBiYXIgY29sb3JcbiRwcm9ncmVzcy1iYXItZGFuZ2VyLWJnOiAgICAgICRicmFuZC1kYW5nZXIgIWRlZmF1bHQ7XG4vLyoqIEluZm8gcHJvZ3Jlc3MgYmFyIGNvbG9yXG4kcHJvZ3Jlc3MtYmFyLWluZm8tYmc6ICAgICAgICAkYnJhbmQtaW5mbyAhZGVmYXVsdDtcblxuXG4vLz09IExpc3QgZ3JvdXBcbi8vXG4vLyMjXG5cbi8vKiogQmFja2dyb3VuZCBjb2xvciBvbiBgLmxpc3QtZ3JvdXAtaXRlbWBcbiRsaXN0LWdyb3VwLWJnOiAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbi8vKiogYC5saXN0LWdyb3VwLWl0ZW1gIGJvcmRlciBjb2xvclxuJGxpc3QtZ3JvdXAtYm9yZGVyOiAgICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBMaXN0IGdyb3VwIGJvcmRlciByYWRpdXNcbiRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXM6ICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCYWNrZ3JvdW5kIGNvbG9yIG9mIHNpbmdsZSBsaXN0IGl0ZW1zIG9uIGhvdmVyXG4kbGlzdC1ncm91cC1ob3Zlci1iZzogICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1jb2xvcjogICAgICAgJGNvbXBvbmVudC1hY3RpdmUtY29sb3IgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgYWN0aXZlIGxpc3QgaXRlbXNcbiRsaXN0LWdyb3VwLWFjdGl2ZS1iZzogICAgICAgICAgJGNvbXBvbmVudC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIEJvcmRlciBjb2xvciBvZiBhY3RpdmUgbGlzdCBlbGVtZW50c1xuJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjogICAgICAkbGlzdC1ncm91cC1hY3RpdmUtYmcgIWRlZmF1bHQ7XG4vLyoqIFRleHQgY29sb3IgZm9yIGNvbnRlbnQgd2l0aGluIGFjdGl2ZSBsaXN0IGl0ZW1zXG4kbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjogIGxpZ2h0ZW4oJGxpc3QtZ3JvdXAtYWN0aXZlLWJnLCA0MCUpICFkZWZhdWx0O1xuXG4vLyoqIFRleHQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3I6ICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJhY2tncm91bmQgY29sb3Igb2YgZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc6ICAgICAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogVGV4dCBjb2xvciBmb3IgY29udGVudCB3aXRoaW4gZGlzYWJsZWQgbGlzdCBpdGVtc1xuJGxpc3QtZ3JvdXAtZGlzYWJsZWQtdGV4dC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtY29sb3IgIWRlZmF1bHQ7XG5cbiRsaXN0LWdyb3VwLWxpbmstY29sb3I6ICAgICAgICAgIzU1NSAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaG92ZXItY29sb3I6ICAgJGxpc3QtZ3JvdXAtbGluay1jb2xvciAhZGVmYXVsdDtcbiRsaXN0LWdyb3VwLWxpbmstaGVhZGluZy1jb2xvcjogIzMzMyAhZGVmYXVsdDtcblxuXG4vLz09IFBhbmVsc1xuLy9cbi8vIyNcblxuJHBhbmVsLWJnOiAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRwYW5lbC1ib2R5LXBhZGRpbmc6ICAgICAgICAgIDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtaGVhZGluZy1wYWRkaW5nOiAgICAgICAxMHB4IDE1cHggIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLXBhZGRpbmc6ICAgICAgICAkcGFuZWwtaGVhZGluZy1wYWRkaW5nICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1yYWRpdXM6ICAgICAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBCb3JkZXIgY29sb3IgZm9yIGVsZW1lbnRzIHdpdGhpbiBwYW5lbHNcbiRwYW5lbC1pbm5lci1ib3JkZXI6ICAgICAgICAgICNkZGQgIWRlZmF1bHQ7XG4kcGFuZWwtZm9vdGVyLWJnOiAgICAgICAgICAgICAjZjVmNWY1ICFkZWZhdWx0O1xuXG4kcGFuZWwtZGVmYXVsdC10ZXh0OiAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHBhbmVsLWRlZmF1bHQtYm9yZGVyOiAgICAgICAgI2RkZCAhZGVmYXVsdDtcbiRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmc6ICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG5cbiRwYW5lbC1wcmltYXJ5LXRleHQ6ICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kcGFuZWwtcHJpbWFyeS1ib3JkZXI6ICAgICAgICAkYnJhbmQtcHJpbWFyeSAhZGVmYXVsdDtcbiRwYW5lbC1wcmltYXJ5LWhlYWRpbmctYmc6ICAgICRicmFuZC1wcmltYXJ5ICFkZWZhdWx0O1xuXG4kcGFuZWwtc3VjY2Vzcy10ZXh0OiAgICAgICAgICAkc3RhdGUtc3VjY2Vzcy10ZXh0ICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyOiAgICAgICAgJHN0YXRlLXN1Y2Nlc3MtYm9yZGVyICFkZWZhdWx0O1xuJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZzogICAgJHN0YXRlLXN1Y2Nlc3MtYmcgIWRlZmF1bHQ7XG5cbiRwYW5lbC1pbmZvLXRleHQ6ICAgICAgICAgICAgICRzdGF0ZS1pbmZvLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1ib3JkZXI6ICAgICAgICAgICAkc3RhdGUtaW5mby1ib3JkZXIgIWRlZmF1bHQ7XG4kcGFuZWwtaW5mby1oZWFkaW5nLWJnOiAgICAgICAkc3RhdGUtaW5mby1iZyAhZGVmYXVsdDtcblxuJHBhbmVsLXdhcm5pbmctdGV4dDogICAgICAgICAgJHN0YXRlLXdhcm5pbmctdGV4dCAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWJvcmRlcjogICAgICAgICRzdGF0ZS13YXJuaW5nLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC13YXJuaW5nLWhlYWRpbmctYmc6ICAgICRzdGF0ZS13YXJuaW5nLWJnICFkZWZhdWx0O1xuXG4kcGFuZWwtZGFuZ2VyLXRleHQ6ICAgICAgICAgICAkc3RhdGUtZGFuZ2VyLXRleHQgIWRlZmF1bHQ7XG4kcGFuZWwtZGFuZ2VyLWJvcmRlcjogICAgICAgICAkc3RhdGUtZGFuZ2VyLWJvcmRlciAhZGVmYXVsdDtcbiRwYW5lbC1kYW5nZXItaGVhZGluZy1iZzogICAgICRzdGF0ZS1kYW5nZXItYmcgIWRlZmF1bHQ7XG5cblxuLy89PSBUaHVtYm5haWxzXG4vL1xuLy8jI1xuXG4vLyoqIFBhZGRpbmcgYXJvdW5kIHRoZSB0aHVtYm5haWwgaW1hZ2VcbiR0aHVtYm5haWwtcGFkZGluZzogICAgICAgICAgIDRweCAhZGVmYXVsdDtcbi8vKiogVGh1bWJuYWlsIGJhY2tncm91bmQgY29sb3JcbiR0aHVtYm5haWwtYmc6ICAgICAgICAgICAgICAgICRib2R5LWJnICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIGNvbG9yXG4kdGh1bWJuYWlsLWJvcmRlcjogICAgICAgICAgICAjZGRkICFkZWZhdWx0O1xuLy8qKiBUaHVtYm5haWwgYm9yZGVyIHJhZGl1c1xuJHRodW1ibmFpbC1ib3JkZXItcmFkaXVzOiAgICAgJGJvcmRlci1yYWRpdXMtYmFzZSAhZGVmYXVsdDtcblxuLy8qKiBDdXN0b20gdGV4dCBjb2xvciBmb3IgdGh1bWJuYWlsIGNhcHRpb25zXG4kdGh1bWJuYWlsLWNhcHRpb24tY29sb3I6ICAgICAkdGV4dC1jb2xvciAhZGVmYXVsdDtcbi8vKiogUGFkZGluZyBhcm91bmQgdGhlIHRodW1ibmFpbCBjYXB0aW9uXG4kdGh1bWJuYWlsLWNhcHRpb24tcGFkZGluZzogICA5cHggIWRlZmF1bHQ7XG5cblxuLy89PSBXZWxsc1xuLy9cbi8vIyNcblxuJHdlbGwtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y1ZjVmNSAhZGVmYXVsdDtcbiR3ZWxsLWJvcmRlcjogICAgICAgICAgICAgICAgIGRhcmtlbigkd2VsbC1iZywgNyUpICFkZWZhdWx0O1xuXG5cbi8vPT0gQmFkZ2VzXG4vL1xuLy8jI1xuXG4kYmFkZ2UtY29sb3I6ICAgICAgICAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuLy8qKiBMaW5rZWQgYmFkZ2UgdGV4dCBjb2xvciBvbiBob3ZlclxuJGJhZGdlLWxpbmstaG92ZXItY29sb3I6ICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRiYWRnZS1iZzogICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuXG4vLyoqIEJhZGdlIHRleHQgY29sb3IgaW4gYWN0aXZlIG5hdiBsaW5rXG4kYmFkZ2UtYWN0aXZlLWNvbG9yOiAgICAgICAgICAkbGluay1jb2xvciAhZGVmYXVsdDtcbi8vKiogQmFkZ2UgYmFja2dyb3VuZCBjb2xvciBpbiBhY3RpdmUgbmF2IGxpbmtcbiRiYWRnZS1hY3RpdmUtYmc6ICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cbiRiYWRnZS1mb250LXdlaWdodDogICAgICAgICAgIGJvbGQgIWRlZmF1bHQ7XG4kYmFkZ2UtbGluZS1oZWlnaHQ6ICAgICAgICAgICAxICFkZWZhdWx0O1xuJGJhZGdlLWJvcmRlci1yYWRpdXM6ICAgICAgICAgMTBweCAhZGVmYXVsdDtcblxuXG4vLz09IEJyZWFkY3J1bWJzXG4vL1xuLy8jI1xuXG4kYnJlYWRjcnVtYi1wYWRkaW5nLXZlcnRpY2FsOiAgIDhweCAhZGVmYXVsdDtcbiRicmVhZGNydW1iLXBhZGRpbmctaG9yaXpvbnRhbDogMTVweCAhZGVmYXVsdDtcbi8vKiogQnJlYWRjcnVtYiBiYWNrZ3JvdW5kIGNvbG9yXG4kYnJlYWRjcnVtYi1iZzogICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4vLyoqIEJyZWFkY3J1bWIgdGV4dCBjb2xvclxuJGJyZWFkY3J1bWItY29sb3I6ICAgICAgICAgICAgICAjY2NjICFkZWZhdWx0O1xuLy8qKiBUZXh0IGNvbG9yIG9mIGN1cnJlbnQgcGFnZSBpbiB0aGUgYnJlYWRjcnVtYlxuJGJyZWFkY3J1bWItYWN0aXZlLWNvbG9yOiAgICAgICAkZ3JheS1saWdodCAhZGVmYXVsdDtcbi8vKiogVGV4dHVhbCBzZXBhcmF0b3IgZm9yIGJldHdlZW4gYnJlYWRjcnVtYiBlbGVtZW50c1xuJGJyZWFkY3J1bWItc2VwYXJhdG9yOiAgICAgICAgICBcIi9cIiAhZGVmYXVsdDtcblxuXG4vLz09IENhcm91c2VsXG4vL1xuLy8jI1xuXG4kY2Fyb3VzZWwtdGV4dC1zaGFkb3c6ICAgICAgICAgICAgICAgICAgICAgICAgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgLjYpICFkZWZhdWx0O1xuXG4kY2Fyb3VzZWwtY29udHJvbC1jb2xvcjogICAgICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRjYXJvdXNlbC1jb250cm9sLXdpZHRoOiAgICAgICAgICAgICAgICAgICAgICAxNSUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1vcGFjaXR5OiAgICAgICAgICAgICAgICAgICAgLjUgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU6ICAgICAgICAgICAgICAgICAgMjBweCAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc6ICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG4kY2Fyb3VzZWwtaW5kaWNhdG9yLWJvcmRlci1jb2xvcjogICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcblxuJGNhcm91c2VsLWNhcHRpb24tY29sb3I6ICAgICAgICAgICAgICAgICAgICAgICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDbG9zZVxuLy9cbi8vIyNcblxuJGNsb3NlLWZvbnQtd2VpZ2h0OiAgICAgICAgICAgYm9sZCAhZGVmYXVsdDtcbiRjbG9zZS1jb2xvcjogICAgICAgICAgICAgICAgICMwMDAgIWRlZmF1bHQ7XG4kY2xvc2UtdGV4dC1zaGFkb3c6ICAgICAgICAgICAwIDFweCAwICNmZmYgIWRlZmF1bHQ7XG5cblxuLy89PSBDb2RlXG4vL1xuLy8jI1xuXG4kY29kZS1jb2xvcjogICAgICAgICAgICAgICAgICAjYzcyNTRlICFkZWZhdWx0O1xuJGNvZGUtYmc6ICAgICAgICAgICAgICAgICAgICAgI2Y5ZjJmNCAhZGVmYXVsdDtcblxuJGtiZC1jb2xvcjogICAgICAgICAgICAgICAgICAgI2ZmZiAhZGVmYXVsdDtcbiRrYmQtYmc6ICAgICAgICAgICAgICAgICAgICAgICMzMzMgIWRlZmF1bHQ7XG5cbiRwcmUtYmc6ICAgICAgICAgICAgICAgICAgICAgICNmNWY1ZjUgIWRlZmF1bHQ7XG4kcHJlLWNvbG9yOiAgICAgICAgICAgICAgICAgICAkZ3JheS1kYXJrICFkZWZhdWx0O1xuJHByZS1ib3JkZXItY29sb3I6ICAgICAgICAgICAgI2NjYyAhZGVmYXVsdDtcbiRwcmUtc2Nyb2xsYWJsZS1tYXgtaGVpZ2h0OiAgIDM0MHB4ICFkZWZhdWx0O1xuXG5cbi8vPT0gVHlwZVxuLy9cbi8vIyNcblxuLy8qKiBIb3Jpem9udGFsIG9mZnNldCBmb3IgZm9ybXMgYW5kIGxpc3RzLlxuJGNvbXBvbmVudC1vZmZzZXQtaG9yaXpvbnRhbDogMTgwcHggIWRlZmF1bHQ7XG4vLyoqIFRleHQgbXV0ZWQgY29sb3JcbiR0ZXh0LW11dGVkOiAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBBYmJyZXZpYXRpb25zIGFuZCBhY3JvbnltcyBib3JkZXIgY29sb3JcbiRhYmJyLWJvcmRlci1jb2xvcjogICAgICAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBIZWFkaW5ncyBzbWFsbCBjb2xvclxuJGhlYWRpbmdzLXNtYWxsLWNvbG9yOiAgICAgICAgJGdyYXktbGlnaHQgIWRlZmF1bHQ7XG4vLyoqIEJsb2NrcXVvdGUgc21hbGwgY29sb3JcbiRibG9ja3F1b3RlLXNtYWxsLWNvbG9yOiAgICAgICRncmF5LWxpZ2h0ICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGZvbnQgc2l6ZVxuJGJsb2NrcXVvdGUtZm9udC1zaXplOiAgICAgICAgKCRmb250LXNpemUtYmFzZSAqIDEuMjUpICFkZWZhdWx0O1xuLy8qKiBCbG9ja3F1b3RlIGJvcmRlciBjb2xvclxuJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yOiAgICAgJGdyYXktbGlnaHRlciAhZGVmYXVsdDtcbi8vKiogUGFnZSBoZWFkZXIgYm9yZGVyIGNvbG9yXG4kcGFnZS1oZWFkZXItYm9yZGVyLWNvbG9yOiAgICAkZ3JheS1saWdodGVyICFkZWZhdWx0O1xuLy8qKiBXaWR0aCBvZiBob3Jpem9udGFsIGRlc2NyaXB0aW9uIGxpc3QgdGl0bGVzXG4kZGwtaG9yaXpvbnRhbC1vZmZzZXQ6ICAgICAgICAkY29tcG9uZW50LW9mZnNldC1ob3Jpem9udGFsICFkZWZhdWx0O1xuLy8qKiBQb2ludCBhdCB3aGljaCAuZGwtaG9yaXpvbnRhbCBiZWNvbWVzIGhvcml6b250YWxcbiRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQ6ICAgICRncmlkLWZsb2F0LWJyZWFrcG9pbnQgIWRlZmF1bHQ7XG4vLyoqIEhvcml6b250YWwgbGluZSBjb2xvci5cbiRoci1ib3JkZXI6ICAgICAgICAgICAgICAgICAgICRncmF5LWxpZ2h0ZXIgIWRlZmF1bHQ7XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIFV0aWxpdGllc1xuQGltcG9ydCBcIm1peGlucy9oaWRlLXRleHRcIjtcbkBpbXBvcnQgXCJtaXhpbnMvb3BhY2l0eVwiO1xuQGltcG9ydCBcIm1peGlucy9pbWFnZVwiO1xuQGltcG9ydCBcIm1peGlucy9sYWJlbHNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtZmlsdGVyXCI7XG5AaW1wb3J0IFwibWl4aW5zL3Jlc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy9yZXNwb25zaXZlLXZpc2liaWxpdHlcIjtcbkBpbXBvcnQgXCJtaXhpbnMvc2l6ZVwiO1xuQGltcG9ydCBcIm1peGlucy90YWItZm9jdXNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcmVzZXQtdGV4dFwiO1xuQGltcG9ydCBcIm1peGlucy90ZXh0LWVtcGhhc2lzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3RleHQtb3ZlcmZsb3dcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdmVuZG9yLXByZWZpeGVzXCI7XG5cbi8vIENvbXBvbmVudHNcbkBpbXBvcnQgXCJtaXhpbnMvYWxlcnRzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2J1dHRvbnNcIjtcbkBpbXBvcnQgXCJtaXhpbnMvcGFuZWxzXCI7XG5AaW1wb3J0IFwibWl4aW5zL3BhZ2luYXRpb25cIjtcbkBpbXBvcnQgXCJtaXhpbnMvbGlzdC1ncm91cFwiO1xuQGltcG9ydCBcIm1peGlucy9uYXYtZGl2aWRlclwiO1xuQGltcG9ydCBcIm1peGlucy9mb3Jtc1wiO1xuQGltcG9ydCBcIm1peGlucy9wcm9ncmVzcy1iYXJcIjtcbkBpbXBvcnQgXCJtaXhpbnMvdGFibGUtcm93XCI7XG5cbi8vIFNraW5zXG5AaW1wb3J0IFwibWl4aW5zL2JhY2tncm91bmQtdmFyaWFudFwiO1xuQGltcG9ydCBcIm1peGlucy9ib3JkZXItcmFkaXVzXCI7XG5AaW1wb3J0IFwibWl4aW5zL2dyYWRpZW50c1wiO1xuXG4vLyBMYXlvdXRcbkBpbXBvcnQgXCJtaXhpbnMvY2xlYXJmaXhcIjtcbkBpbXBvcnQgXCJtaXhpbnMvY2VudGVyLWJsb2NrXCI7XG5AaW1wb3J0IFwibWl4aW5zL25hdi12ZXJ0aWNhbC1hbGlnblwiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkLWZyYW1ld29ya1wiO1xuQGltcG9ydCBcIm1peGlucy9ncmlkXCI7XG4iLCIvLyBDU1MgaW1hZ2UgcmVwbGFjZW1lbnRcbi8vXG4vLyBIZWFkcyB1cCEgdjMgbGF1bmNoZWQgd2l0aCBvbmx5IGAuaGlkZS10ZXh0KClgLCBidXQgcGVyIG91ciBwYXR0ZXJuIGZvclxuLy8gbWl4aW5zIGJlaW5nIHJldXNlZCBhcyBjbGFzc2VzIHdpdGggdGhlIHNhbWUgbmFtZSwgdGhpcyBkb2Vzbid0IGhvbGQgdXAuIEFzXG4vLyBvZiB2My4wLjEgd2UgaGF2ZSBhZGRlZCBgLnRleHQtaGlkZSgpYCBhbmQgZGVwcmVjYXRlZCBgLmhpZGUtdGV4dCgpYC5cbi8vXG4vLyBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2NvbW1pdC9hYTAzOTZlYWU3NTdcblxuLy8gRGVwcmVjYXRlZCBhcyBvZiB2My4wLjEgKGhhcyBiZWVuIHJlbW92ZWQgaW4gdjQpXG5AbWl4aW4gaGlkZS10ZXh0KCkge1xuICBmb250OiAwLzAgYTtcbiAgY29sb3I6IHRyYW5zcGFyZW50O1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIGJvcmRlcjogMDtcbn1cblxuLy8gTmV3IG1peGluIHRvIHVzZSBhcyBvZiB2My4wLjFcbkBtaXhpbiB0ZXh0LWhpZGUoKSB7XG4gIEBpbmNsdWRlIGhpZGUtdGV4dDtcbn1cbiIsIi8vIE9wYWNpdHlcblxuQG1peGluIG9wYWNpdHkoJG9wYWNpdHkpIHtcbiAgJG9wYWNpdHktaWU6ICgkb3BhY2l0eSAqIDEwMCk7ICAvLyBJRTggZmlsdGVyXG4gIGZpbHRlcjogYWxwaGEob3BhY2l0eT0kb3BhY2l0eS1pZSk7XG4gIG9wYWNpdHk6ICRvcGFjaXR5O1xufVxuIiwiLy8gUmVzcG9uc2l2ZSBpbWFnZVxuLy9cbi8vIEtlZXAgaW1hZ2VzIGZyb20gc2NhbGluZyBiZXlvbmQgdGhlIHdpZHRoIG9mIHRoZWlyIHBhcmVudHMuXG5AbWl4aW4gaW1nLXJlc3BvbnNpdmUoJGRpc3BsYXk6IGJsb2NrKSB7XG4gIGRpc3BsYXk6ICRkaXNwbGF5O1xuICBtYXgtd2lkdGg6IDEwMCU7IC8vIFBhcnQgMTogU2V0IGEgbWF4aW11bSByZWxhdGl2ZSB0byB0aGUgcGFyZW50XG4gIGhlaWdodDogYXV0bzsgLy8gUGFydCAyOiBTY2FsZSB0aGUgaGVpZ2h0IGFjY29yZGluZyB0byB0aGUgd2lkdGgsIG90aGVyd2lzZSB5b3UgZ2V0IHN0cmV0Y2hpbmdcbn1cblxuXG4vLyBSZXRpbmEgaW1hZ2Vcbi8vXG4vLyBTaG9ydCByZXRpbmEgbWl4aW4gZm9yIHNldHRpbmcgYmFja2dyb3VuZC1pbWFnZSBhbmQgLXNpemUuIE5vdGUgdGhhdCB0aGVcbi8vIHNwZWxsaW5nIG9mIGBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW9gIGlzIGludGVudGlvbmFsLlxuQG1peGluIGltZy1yZXRpbmEoJGZpbGUtMXgsICRmaWxlLTJ4LCAkd2lkdGgtMXgsICRoZWlnaHQtMXgpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtaW1hZ2UtcGF0aChcIiN7JGZpbGUtMXh9XCIpLCBcIiN7JGZpbGUtMXh9XCIpKTtcblxuICBAbWVkaWFcbiAgb25seSBzY3JlZW4gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCBtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCAtby1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyLzEpLFxuICBvbmx5IHNjcmVlbiBhbmQgKCBtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKSxcbiAgb25seSBzY3JlZW4gYW5kICggbWluLXJlc29sdXRpb246IDE5MmRwaSksXG4gIG9ubHkgc2NyZWVuIGFuZCAoIG1pbi1yZXNvbHV0aW9uOiAyZHBweCkge1xuICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWltYWdlLXBhdGgoXCIjeyRmaWxlLTJ4fVwiKSwgXCIjeyRmaWxlLTJ4fVwiKSk7XG4gICAgYmFja2dyb3VuZC1zaXplOiAkd2lkdGgtMXggJGhlaWdodC0xeDtcbiAgfVxufVxuIiwiLy8gTGFiZWxzXG5cbkBtaXhpbiBsYWJlbC12YXJpYW50KCRjb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG5cbiAgJltocmVmXSB7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkY29sb3IsIDEwJSk7XG4gICAgfVxuICB9XG59XG4iLCIvLyBSZXNldCBmaWx0ZXJzIGZvciBJRVxuLy9cbi8vIFdoZW4geW91IG5lZWQgdG8gcmVtb3ZlIGEgZ3JhZGllbnQgYmFja2dyb3VuZCwgZG8gbm90IGZvcmdldCB0byB1c2UgdGhpcyB0byByZXNldFxuLy8gdGhlIElFIGZpbHRlciBmb3IgSUU5IGFuZCBiZWxvdy5cblxuQG1peGluIHJlc2V0LWZpbHRlcigpIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoZW5hYmxlZCA9IGZhbHNlKTtcbn1cbiIsIi8vIFJlc2l6ZSBhbnl0aGluZ1xuXG5AbWl4aW4gcmVzaXphYmxlKCRkaXJlY3Rpb24pIHtcbiAgb3ZlcmZsb3c6IGF1dG87IC8vIFBlciBDU1MzIFVJLCBgcmVzaXplYCBvbmx5IGFwcGxpZXMgd2hlbiBgb3ZlcmZsb3dgIGlzbid0IGB2aXNpYmxlYFxuICByZXNpemU6ICRkaXJlY3Rpb247IC8vIE9wdGlvbnM6IGhvcml6b250YWwsIHZlcnRpY2FsLCBib3RoXG59XG4iLCIvLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiByZXNwb25zaXZlLXZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG4gIHRhYmxlI3skcGFyZW50fSAgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRyI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICB0aCN7JHBhcmVudH0sXG4gIHRkI3skcGFyZW50fSAgICAgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJHBhcmVudCkge1xuICAjeyRwYXJlbnR9IHtcbiAgICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbiIsIi8vIFNpemluZyBzaG9ydGN1dHNcblxuQG1peGluIHNpemUoJHdpZHRoLCAkaGVpZ2h0KSB7XG4gIHdpZHRoOiAkd2lkdGg7XG4gIGhlaWdodDogJGhlaWdodDtcbn1cblxuQG1peGluIHNxdWFyZSgkc2l6ZSkge1xuICBAaW5jbHVkZSBzaXplKCRzaXplLCAkc2l6ZSk7XG59XG4iLCIvLyBXZWJLaXQtc3R5bGUgZm9jdXNcblxuQG1peGluIHRhYi1mb2N1cygpIHtcbiAgLy8gV2ViS2l0LXNwZWNpZmljLiBPdGhlciBicm93c2VycyB3aWxsIGtlZXAgdGhlaXIgZGVmYXVsdCBvdXRsaW5lIHN0eWxlLlxuICAvLyAoSW5pdGlhbGx5IHRyaWVkIHRvIGFsc28gZm9yY2UgZGVmYXVsdCB2aWEgYG91dGxpbmU6IGluaXRpYWxgLFxuICAvLyBidXQgdGhhdCBzZWVtcyB0byBlcnJvbmVvdXNseSByZW1vdmUgdGhlIG91dGxpbmUgaW4gRmlyZWZveCBhbHRvZ2V0aGVyLilcbiAgb3V0bGluZTogNXB4IGF1dG8gLXdlYmtpdC1mb2N1cy1yaW5nLWNvbG9yO1xuICBvdXRsaW5lLW9mZnNldDogLTJweDtcbn1cbiIsIkBtaXhpbiByZXNldC10ZXh0KCkge1xuICBmb250LWZhbWlseTogJGZvbnQtZmFtaWx5LWJhc2U7XG4gIC8vIFdlIGRlbGliZXJhdGVseSBkbyBOT1QgcmVzZXQgZm9udC1zaXplLlxuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGZvbnQtd2VpZ2h0OiA0MDA7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgbGluZS1icmVhazogYXV0bztcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRmFsbGJhY2sgZm9yIHdoZXJlIGBzdGFydGAgaXMgbm90IHN1cHBvcnRlZFxuICB0ZXh0LWFsaWduOiBzdGFydDtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB0ZXh0LXNoYWRvdzogbm9uZTtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4gIGxldHRlci1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgd29yZC1zcGFjaW5nOiBub3JtYWw7XG4gIHdvcmQtd3JhcDogbm9ybWFsO1xuICB3aGl0ZS1zcGFjZTogbm9ybWFsO1xufVxuIiwiLy8gVHlwb2dyYXBoeVxuXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJHBhcmVudCwgJGNvbG9yKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gIH1cbiAgYSN7JHBhcmVudH06aG92ZXIsXG4gIGEjeyRwYXJlbnR9OmZvY3VzIHtcbiAgICBjb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gVGV4dCBvdmVyZmxvd1xuLy8gUmVxdWlyZXMgaW5saW5lLWJsb2NrIG9yIGJsb2NrIGZvciBwcm9wZXIgc3R5bGluZ1xuXG5AbWl4aW4gdGV4dC1vdmVyZmxvdygpIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgdGV4dC1vdmVyZmxvdzogZWxsaXBzaXM7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG59XG4iLCIvLyBWZW5kb3IgUHJlZml4ZXNcbi8vXG4vLyBBbGwgdmVuZG9yIG1peGlucyBhcmUgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgZHVlIHRvIHRoZSBpbnRyb2R1Y3Rpb24gb2Zcbi8vIEF1dG9wcmVmaXhlciBpbiBvdXIgR3J1bnRmaWxlLiBUaGV5IGhhdmUgYmVlbiByZW1vdmVkIGluIHY0LlxuXG4vLyAtIEFuaW1hdGlvbnNcbi8vIC0gQmFja2ZhY2UgdmlzaWJpbGl0eVxuLy8gLSBCb3ggc2hhZG93XG4vLyAtIEJveCBzaXppbmdcbi8vIC0gQ29udGVudCBjb2x1bW5zXG4vLyAtIEh5cGhlbnNcbi8vIC0gUGxhY2Vob2xkZXIgdGV4dFxuLy8gLSBUcmFuc2Zvcm1hdGlvbnNcbi8vIC0gVHJhbnNpdGlvbnNcbi8vIC0gVXNlciBTZWxlY3RcblxuXG4vLyBBbmltYXRpb25zXG5AbWl4aW4gYW5pbWF0aW9uKCRhbmltYXRpb24pIHtcbiAgLXdlYmtpdC1hbmltYXRpb246ICRhbmltYXRpb247XG4gICAgICAgLW8tYW5pbWF0aW9uOiAkYW5pbWF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbjogJGFuaW1hdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tbmFtZSgkbmFtZSkge1xuICAtd2Via2l0LWFuaW1hdGlvbi1uYW1lOiAkbmFtZTtcbiAgICAgICAgICBhbmltYXRpb24tbmFtZTogJG5hbWU7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWR1cmF0aW9uKCRkdXJhdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xuICAgICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogJGR1cmF0aW9uO1xufVxuQG1peGluIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246ICR0aW1pbmctZnVuY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogJHRpbWluZy1mdW5jdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZGVsYXkoJGRlbGF5KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG4gICAgICAgICAgYW5pbWF0aW9uLWRlbGF5OiAkZGVsYXk7XG59XG5AbWl4aW4gYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudCgkaXRlcmF0aW9uLWNvdW50KSB7XG4gIC13ZWJraXQtYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogJGl0ZXJhdGlvbi1jb3VudDtcbiAgICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiAkaXRlcmF0aW9uLWNvdW50O1xufVxuQG1peGluIGFuaW1hdGlvbi1kaXJlY3Rpb24oJGRpcmVjdGlvbikge1xuICAtd2Via2l0LWFuaW1hdGlvbi1kaXJlY3Rpb246ICRkaXJlY3Rpb247XG4gICAgICAgICAgYW5pbWF0aW9uLWRpcmVjdGlvbjogJGRpcmVjdGlvbjtcbn1cbkBtaXhpbiBhbmltYXRpb24tZmlsbC1tb2RlKCRmaWxsLW1vZGUpIHtcbiAgLXdlYmtpdC1hbmltYXRpb24tZmlsbC1tb2RlOiAkZmlsbC1tb2RlO1xuICAgICAgICAgIGFuaW1hdGlvbi1maWxsLW1vZGU6ICRmaWxsLW1vZGU7XG59XG5cbi8vIEJhY2tmYWNlIHZpc2liaWxpdHlcbi8vIFByZXZlbnQgYnJvd3NlcnMgZnJvbSBmbGlja2VyaW5nIHdoZW4gdXNpbmcgQ1NTIDNEIHRyYW5zZm9ybXMuXG4vLyBEZWZhdWx0IHZhbHVlIGlzIGB2aXNpYmxlYCwgYnV0IGNhbiBiZSBjaGFuZ2VkIHRvIGBoaWRkZW5gXG5cbkBtaXhpbiBiYWNrZmFjZS12aXNpYmlsaXR5KCR2aXNpYmlsaXR5KSB7XG4gIC13ZWJraXQtYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgIC1tb3otYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG4gICAgICAgICAgYmFja2ZhY2UtdmlzaWJpbGl0eTogJHZpc2liaWxpdHk7XG59XG5cbi8vIERyb3Agc2hhZG93c1xuLy9cbi8vIE5vdGU6IERlcHJlY2F0ZWQgYC5ib3gtc2hhZG93KClgIGFzIG9mIHYzLjEuMCBzaW5jZSBhbGwgb2YgQm9vdHN0cmFwJ3Ncbi8vIHN1cHBvcnRlZCBicm93c2VycyB0aGF0IGhhdmUgYm94IHNoYWRvdyBjYXBhYmlsaXRpZXMgbm93IHN1cHBvcnQgaXQuXG5cbkBtaXhpbiBib3gtc2hhZG93KCRzaGFkb3cuLi4pIHtcbiAgLXdlYmtpdC1ib3gtc2hhZG93OiAkc2hhZG93OyAvLyBpT1MgPDQuMyAmIEFuZHJvaWQgPDQuMVxuICAgICAgICAgIGJveC1zaGFkb3c6ICRzaGFkb3c7XG59XG5cbi8vIEJveCBzaXppbmdcbkBtaXhpbiBib3gtc2l6aW5nKCRib3htb2RlbCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICRib3htb2RlbDtcbiAgICAgLW1vei1ib3gtc2l6aW5nOiAkYm94bW9kZWw7XG4gICAgICAgICAgYm94LXNpemluZzogJGJveG1vZGVsO1xufVxuXG4vLyBDU1MzIENvbnRlbnQgQ29sdW1uc1xuQG1peGluIGNvbnRlbnQtY29sdW1ucygkY29sdW1uLWNvdW50LCAkY29sdW1uLWdhcDogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIC13ZWJraXQtY29sdW1uLWNvdW50OiAkY29sdW1uLWNvdW50O1xuICAgICAtbW96LWNvbHVtbi1jb3VudDogJGNvbHVtbi1jb3VudDtcbiAgICAgICAgICBjb2x1bW4tY291bnQ6ICRjb2x1bW4tY291bnQ7XG4gIC13ZWJraXQtY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgIC1tb3otY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG4gICAgICAgICAgY29sdW1uLWdhcDogJGNvbHVtbi1nYXA7XG59XG5cbi8vIE9wdGlvbmFsIGh5cGhlbmF0aW9uXG5AbWl4aW4gaHlwaGVucygkbW9kZTogYXV0bykge1xuICAtd2Via2l0LWh5cGhlbnM6ICRtb2RlO1xuICAgICAtbW96LWh5cGhlbnM6ICRtb2RlO1xuICAgICAgLW1zLWh5cGhlbnM6ICRtb2RlOyAvLyBJRTEwK1xuICAgICAgIC1vLWh5cGhlbnM6ICRtb2RlO1xuICAgICAgICAgIGh5cGhlbnM6ICRtb2RlO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG59XG5cbi8vIFBsYWNlaG9sZGVyIHRleHRcbkBtaXhpbiBwbGFjZWhvbGRlcigkY29sb3I6ICRpbnB1dC1jb2xvci1wbGFjZWhvbGRlcikge1xuICAvLyBGaXJlZm94XG4gICY6Oi1tb3otcGxhY2Vob2xkZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgb3BhY2l0eTogMTsgLy8gT3ZlcnJpZGUgRmlyZWZveCdzIHVudXN1YWwgZGVmYXVsdCBvcGFjaXR5OyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL3B1bGwvMTE1MjZcbiAgfVxuICAmOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7IGNvbG9yOiAkY29sb3I7IH0gLy8gSW50ZXJuZXQgRXhwbG9yZXIgMTArXG4gICY6Oi13ZWJraXQtaW5wdXQtcGxhY2Vob2xkZXIgIHsgY29sb3I6ICRjb2xvcjsgfSAvLyBTYWZhcmkgYW5kIENocm9tZVxufVxuXG4vLyBUcmFuc2Zvcm1hdGlvbnNcbkBtaXhpbiBzY2FsZSgkcmF0aW8uLi4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiBzY2FsZSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGUoJHJhdGlvKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHNjYWxlKCRyYXRpbyk7XG59XG5cbkBtaXhpbiBzY2FsZVgoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWCgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVYKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVgoJHJhdGlvKTtcbn1cbkBtaXhpbiBzY2FsZVkoJHJhdGlvKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlWSgkcmF0aW8pOyAvLyBJRTkgb25seVxuICAgICAgIC1vLXRyYW5zZm9ybTogc2NhbGVZKCRyYXRpbyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBzY2FsZVkoJHJhdGlvKTtcbn1cbkBtaXhpbiBza2V3KCR4LCAkeSkge1xuICAtd2Via2l0LXRyYW5zZm9ybTogc2tld1goJHgpIHNrZXdZKCR5KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7IC8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzQ4ODU7IElFOStcbiAgICAgICAtby10cmFuc2Zvcm06IHNrZXdYKCR4KSBza2V3WSgkeSk7XG4gICAgICAgICAgdHJhbnNmb3JtOiBza2V3WCgkeCkgc2tld1koJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZSgkeCwgJHkpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlKCR4LCAkeSk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGUoJHgsICR5KTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgkeCwgJHkpO1xufVxuQG1peGluIHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR4LCAkeSwgJHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHgsICR5LCAkeik7XG59XG5AbWl4aW4gcm90YXRlKCRkZWdyZWVzKSB7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTsgLy8gSUU5IG9ubHlcbiAgICAgICAtby10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVgoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWCgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVYKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVgoJGRlZ3JlZXMpO1xufVxuQG1peGluIHJvdGF0ZVkoJGRlZ3JlZXMpIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xuICAgICAgLW1zLXRyYW5zZm9ybTogcm90YXRlWSgkZGVncmVlcyk7IC8vIElFOSBvbmx5XG4gICAgICAgLW8tdHJhbnNmb3JtOiByb3RhdGVZKCRkZWdyZWVzKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZVkoJGRlZ3JlZXMpO1xufVxuQG1peGluIHBlcnNwZWN0aXZlKCRwZXJzcGVjdGl2ZSkge1xuICAtd2Via2l0LXBlcnNwZWN0aXZlOiAkcGVyc3BlY3RpdmU7XG4gICAgIC1tb3otcGVyc3BlY3RpdmU6ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZTogJHBlcnNwZWN0aXZlO1xufVxuQG1peGluIHBlcnNwZWN0aXZlLW9yaWdpbigkcGVyc3BlY3RpdmUpIHtcbiAgLXdlYmtpdC1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgLW1vei1wZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbiAgICAgICAgICBwZXJzcGVjdGl2ZS1vcmlnaW46ICRwZXJzcGVjdGl2ZTtcbn1cbkBtaXhpbiB0cmFuc2Zvcm0tb3JpZ2luKCRvcmlnaW4pIHtcbiAgLXdlYmtpdC10cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xuICAgICAtbW96LXRyYW5zZm9ybS1vcmlnaW46ICRvcmlnaW47XG4gICAgICAtbXMtdHJhbnNmb3JtLW9yaWdpbjogJG9yaWdpbjsgLy8gSUU5IG9ubHlcbiAgICAgICAgICB0cmFuc2Zvcm0tb3JpZ2luOiAkb3JpZ2luO1xufVxuXG5cbi8vIFRyYW5zaXRpb25zXG5cbkBtaXhpbiB0cmFuc2l0aW9uKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbjogJHRyYW5zaXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi1wcm9wZXJ0eSgkdHJhbnNpdGlvbi1wcm9wZXJ0eS4uLikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xuICAgICAgICAgIHRyYW5zaXRpb24tcHJvcGVydHk6ICR0cmFuc2l0aW9uLXByb3BlcnR5O1xufVxuQG1peGluIHRyYW5zaXRpb24tZGVsYXkoJHRyYW5zaXRpb24tZGVsYXkpIHtcbiAgLXdlYmtpdC10cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbiAgICAgICAgICB0cmFuc2l0aW9uLWRlbGF5OiAkdHJhbnNpdGlvbi1kZWxheTtcbn1cbkBtaXhpbiB0cmFuc2l0aW9uLWR1cmF0aW9uKCR0cmFuc2l0aW9uLWR1cmF0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG4gICAgICAgICAgdHJhbnNpdGlvbi1kdXJhdGlvbjogJHRyYW5zaXRpb24tZHVyYXRpb247XG59XG5AbWl4aW4gdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oJHRpbWluZy1mdW5jdGlvbikge1xuICAtd2Via2l0LXRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb24tdGltaW5nLWZ1bmN0aW9uOiAkdGltaW5nLWZ1bmN0aW9uO1xufVxuQG1peGluIHRyYW5zaXRpb24tdHJhbnNmb3JtKCR0cmFuc2l0aW9uLi4uKSB7XG4gIC13ZWJraXQtdHJhbnNpdGlvbjogLXdlYmtpdC10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgIC1tb3otdHJhbnNpdGlvbjogLW1vei10cmFuc2Zvcm0gJHRyYW5zaXRpb247XG4gICAgICAgLW8tdHJhbnNpdGlvbjogLW8tdHJhbnNmb3JtICR0cmFuc2l0aW9uO1xuICAgICAgICAgIHRyYW5zaXRpb246IHRyYW5zZm9ybSAkdHJhbnNpdGlvbjtcbn1cblxuXG4vLyBVc2VyIHNlbGVjdFxuLy8gRm9yIHNlbGVjdGluZyB0ZXh0IG9uIHRoZSBwYWdlXG5cbkBtaXhpbiB1c2VyLXNlbGVjdCgkc2VsZWN0KSB7XG4gIC13ZWJraXQtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgIC1tb3otdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG4gICAgICAtbXMtdXNlci1zZWxlY3Q6ICRzZWxlY3Q7IC8vIElFMTArXG4gICAgICAgICAgdXNlci1zZWxlY3Q6ICRzZWxlY3Q7XG59XG4iLCIvLyBBbGVydHNcblxuQG1peGluIGFsZXJ0LXZhcmlhbnQoJGJhY2tncm91bmQsICRib3JkZXIsICR0ZXh0LWNvbG9yKSB7XG4gIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICBociB7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogZGFya2VuKCRib3JkZXIsIDUlKTtcbiAgfVxuXG4gIC5hbGVydC1saW5rIHtcbiAgICBjb2xvcjogZGFya2VuKCR0ZXh0LWNvbG9yLCAxMCUpO1xuICB9XG59XG4iLCIvLyBCdXR0b24gdmFyaWFudHNcbi8vXG4vLyBFYXNpbHkgcHVtcCBvdXQgZGVmYXVsdCBzdHlsZXMsIGFzIHdlbGwgYXMgOmhvdmVyLCA6Zm9jdXMsIDphY3RpdmUsXG4vLyBhbmQgZGlzYWJsZWQgb3B0aW9ucyBmb3IgYWxsIGJ1dHRvbnNcblxuQG1peGluIGJ1dHRvbi12YXJpYW50KCRjb2xvciwgJGJhY2tncm91bmQsICRib3JkZXIpIHtcbiAgY29sb3I6ICRjb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmOmZvY3VzLFxuICAmLmZvY3VzIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkYm9yZGVyLCAyNSUpO1xuICB9XG4gICY6aG92ZXIge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxMCUpO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG4gIH1cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlLFxuICAub3BlbiA+ICYuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogJGNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgMTAlKTtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXIsIDEyJSk7XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBjb2xvcjogJGNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRiYWNrZ3JvdW5kLCAxNyUpO1xuICAgICAgYm9yZGVyLWNvbG9yOiBkYXJrZW4oJGJvcmRlciwgMjUlKTtcbiAgICB9XG4gIH1cbiAgJi5kaXNhYmxlZCxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJi5mb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cblxuICAuYmFkZ2Uge1xuICAgIGNvbG9yOiAkYmFja2dyb3VuZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG4gIH1cbn1cblxuLy8gQnV0dG9uIHNpemVzXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmctdmVydGljYWwsICRwYWRkaW5nLWhvcml6b250YWwsICRmb250LXNpemUsICRsaW5lLWhlaWdodCwgJGJvcmRlci1yYWRpdXMpIHtcbiAgcGFkZGluZzogJHBhZGRpbmctdmVydGljYWwgJHBhZGRpbmctaG9yaXpvbnRhbDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cztcbn1cbiIsIi8vIFBhbmVsc1xuXG5AbWl4aW4gcGFuZWwtdmFyaWFudCgkYm9yZGVyLCAkaGVhZGluZy10ZXh0LWNvbG9yLCAkaGVhZGluZy1iZy1jb2xvciwgJGhlYWRpbmctYm9yZGVyKSB7XG4gIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcblxuICAmID4gLnBhbmVsLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkaGVhZGluZy10ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGhlYWRpbmctYm9yZGVyO1xuXG4gICAgKyAucGFuZWwtY29sbGFwc2UgPiAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkYm9yZGVyO1xuICAgIH1cbiAgICAuYmFkZ2Uge1xuICAgICAgY29sb3I6ICRoZWFkaW5nLWJnLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGhlYWRpbmctdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbiAgJiA+IC5wYW5lbC1mb290ZXIge1xuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLnBhbmVsLWJvZHkge1xuICAgICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJGJvcmRlcjtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIFBhZ2luYXRpb25cblxuQG1peGluIHBhZ2luYXRpb24tc2l6ZSgkcGFkZGluZy12ZXJ0aWNhbCwgJHBhZGRpbmctaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZSwgJGxpbmUtaGVpZ2h0LCAkYm9yZGVyLXJhZGl1cykge1xuICA+IGxpIHtcbiAgICA+IGEsXG4gICAgPiBzcGFuIHtcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLXZlcnRpY2FsICRwYWRkaW5nLWhvcml6b250YWw7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIH1cbiAgICAmOmZpcnN0LWNoaWxkIHtcbiAgICAgID4gYSxcbiAgICAgID4gc3BhbiB7XG4gICAgICAgIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygkYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuICAgICY6bGFzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKCRib3JkZXItcmFkaXVzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIExpc3QgR3JvdXBzXG5cbkBtaXhpbiBsaXN0LWdyb3VwLWl0ZW0tdmFyaWFudCgkc3RhdGUsICRiYWNrZ3JvdW5kLCAkY29sb3IpIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbS0jeyRzdGF0ZX0ge1xuICAgIGNvbG9yOiAkY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJhY2tncm91bmQ7XG5cbiAgICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYSYsIGJ1dHRvbiYgdG8gYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LCBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfVxuICB9XG5cbiAgYS5saXN0LWdyb3VwLWl0ZW0tI3skc3RhdGV9LFxuICBidXR0b24ubGlzdC1ncm91cC1pdGVtLSN7JHN0YXRlfSB7XG4gICAgY29sb3I6ICRjb2xvcjtcblxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjb2xvcjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6IGRhcmtlbigkYmFja2dyb3VuZCwgNSUpO1xuICAgIH1cbiAgICAmLmFjdGl2ZSxcbiAgICAmLmFjdGl2ZTpob3ZlcixcbiAgICAmLmFjdGl2ZTpmb2N1cyB7XG4gICAgICBjb2xvcjogI2ZmZjtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gSG9yaXpvbnRhbCBkaXZpZGVyc1xuLy9cbi8vIERpdmlkZXJzIChiYXNpY2FsbHkgYW4gaHIpIHdpdGhpbiBkcm9wZG93bnMgYW5kIG5hdiBsaXN0c1xuXG5AbWl4aW4gbmF2LWRpdmlkZXIoJGNvbG9yOiAjZTVlNWU1KSB7XG4gIGhlaWdodDogMXB4O1xuICBtYXJnaW46ICgoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMikgLSAxKSAwO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3I7XG59XG4iLCIvLyBGb3JtIHZhbGlkYXRpb24gc3RhdGVzXG4vL1xuLy8gVXNlZCBpbiBmb3Jtcy5sZXNzIHRvIGdlbmVyYXRlIHRoZSBmb3JtIHZhbGlkYXRpb24gQ1NTIGZvciB3YXJuaW5ncywgZXJyb3JzLFxuLy8gYW5kIHN1Y2Nlc3Nlcy5cblxuQG1peGluIGZvcm0tY29udHJvbC12YWxpZGF0aW9uKCR0ZXh0LWNvbG9yOiAjNTU1LCAkYm9yZGVyLWNvbG9yOiAjY2NjLCAkYmFja2dyb3VuZC1jb2xvcjogI2Y1ZjVmNSkge1xuICAvLyBDb2xvciB0aGUgbGFiZWwgYW5kIGhlbHAgdGV4dFxuICAuaGVscC1ibG9jayxcbiAgLmNvbnRyb2wtbGFiZWwsXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lLFxuICAmLnJhZGlvIGxhYmVsLFxuICAmLmNoZWNrYm94IGxhYmVsLFxuICAmLnJhZGlvLWlubGluZSBsYWJlbCxcbiAgJi5jaGVja2JveC1pbmxpbmUgbGFiZWwgIHtcbiAgICBjb2xvcjogJHRleHQtY29sb3I7XG4gIH1cbiAgLy8gU2V0IHRoZSBib3JkZXIgYW5kIGJveCBzaGFkb3cgb24gc3BlY2lmaWMgaW5wdXRzIHRvIG1hdGNoXG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KGluc2V0IDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNzUpKTsgLy8gUmVkZWNsYXJlIHNvIHRyYW5zaXRpb25zIHdvcmtcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJvcmRlci1jb2xvcjogZGFya2VuKCRib3JkZXItY29sb3IsIDEwJSk7XG4gICAgICAkc2hhZG93OiBpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDZweCBsaWdodGVuKCRib3JkZXItY29sb3IsIDIwJSk7XG4gICAgICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuICAgIH1cbiAgfVxuICAvLyBTZXQgdmFsaWRhdGlvbiBzdGF0ZXMgYWxzbyBmb3IgYWRkb25zXG4gIC5pbnB1dC1ncm91cC1hZGRvbiB7XG4gICAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBPcHRpb25hbCBmZWVkYmFjayBpY29uXG4gIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICAgIGNvbG9yOiAkdGV4dC1jb2xvcjtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmb2N1cyBzdGF0ZVxuLy9cbi8vIEdlbmVyYXRlIGEgY3VzdG9taXplZCBmb2N1cyBzdGF0ZSBhbmQgZm9yIGFueSBpbnB1dCB3aXRoIHRoZSBzcGVjaWZpZWQgY29sb3IsXG4vLyB3aGljaCBkZWZhdWx0cyB0byB0aGUgYCRpbnB1dC1ib3JkZXItZm9jdXNgIHZhcmlhYmxlLlxuLy9cbi8vIFdlIGhpZ2hseSBlbmNvdXJhZ2UgeW91IHRvIG5vdCBjdXN0b21pemUgdGhlIGRlZmF1bHQgdmFsdWUsIGJ1dCBpbnN0ZWFkIHVzZVxuLy8gdGhpcyB0byB0d2VhayBjb2xvcnMgb24gYW4gYXMtbmVlZGVkIGJhc2lzLiBUaGlzIGFlc3RoZXRpYyBjaGFuZ2UgaXMgYmFzZWQgb25cbi8vIFdlYktpdCdzIGRlZmF1bHQgc3R5bGVzLCBidXQgYXBwbGljYWJsZSB0byBhIHdpZGVyIHJhbmdlIG9mIGJyb3dzZXJzLiBJdHNcbi8vIHVzYWJpbGl0eSBhbmQgYWNjZXNzaWJpbGl0eSBzaG91bGQgYmUgdGFrZW4gaW50byBhY2NvdW50IHdpdGggYW55IGNoYW5nZS5cbi8vXG4vLyBFeGFtcGxlIHVzYWdlOiBjaGFuZ2UgdGhlIGRlZmF1bHQgYmx1ZSBib3JkZXIgYW5kIHNoYWRvdyB0byB3aGl0ZSBmb3IgYmV0dGVyXG4vLyBjb250cmFzdCBhZ2FpbnN0IGEgZGFyayBncmF5IGJhY2tncm91bmQuXG5AbWl4aW4gZm9ybS1jb250cm9sLWZvY3VzKCRjb2xvcjogJGlucHV0LWJvcmRlci1mb2N1cykge1xuICAkY29sb3ItcmdiYTogcmdiYShyZWQoJGNvbG9yKSwgZ3JlZW4oJGNvbG9yKSwgYmx1ZSgkY29sb3IpLCAuNik7XG4gICY6Zm9jdXMge1xuICAgIGJvcmRlci1jb2xvcjogJGNvbG9yO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSwgMCAwIDhweCAkY29sb3ItcmdiYSk7XG4gIH1cbn1cblxuLy8gRm9ybSBjb250cm9sIHNpemluZ1xuLy9cbi8vIFJlbGF0aXZlIHRleHQgc2l6ZSwgcGFkZGluZywgYW5kIGJvcmRlci1yYWRpaSBjaGFuZ2VzIGZvciBmb3JtIGNvbnRyb2xzLiBGb3Jcbi8vIGhvcml6b250YWwgc2l6aW5nLCB3cmFwIGNvbnRyb2xzIGluIHRoZSBwcmVkZWZpbmVkIGdyaWQgY2xhc3Nlcy4gYDxzZWxlY3Q+YFxuLy8gZWxlbWVudCBnZXRzIHNwZWNpYWwgbG92ZSBiZWNhdXNlIGl0J3Mgc3BlY2lhbCwgYW5kIHRoYXQncyBhIGZhY3QhXG4vLyBbY29udmVydGVyXSAkcGFyZW50IGhhY2tcbkBtaXhpbiBpbnB1dC1zaXplKCRwYXJlbnQsICRpbnB1dC1oZWlnaHQsICRwYWRkaW5nLXZlcnRpY2FsLCAkcGFkZGluZy1ob3Jpem9udGFsLCAkZm9udC1zaXplLCAkbGluZS1oZWlnaHQsICRib3JkZXItcmFkaXVzKSB7XG4gICN7JHBhcmVudH0ge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy12ZXJ0aWNhbCAkcGFkZGluZy1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0O1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICB9XG5cbiAgc2VsZWN0I3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICAgIGxpbmUtaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0O1xuICB9XG5cbiAgdGV4dGFyZWEjeyRwYXJlbnR9LFxuICBzZWxlY3RbbXVsdGlwbGVdI3skcGFyZW50fSB7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICB9XG59XG4iLCIvLyBQcm9ncmVzcyBiYXJzXG5cbkBtaXhpbiBwcm9ncmVzcy1iYXItdmFyaWFudCgkY29sb3IpIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuXG4gIC8vIERlcHJlY2F0ZWQgcGFyZW50IGNsYXNzIHJlcXVpcmVtZW50IGFzIG9mIHYzLjIuMFxuICAucHJvZ3Jlc3Mtc3RyaXBlZCAmIHtcbiAgICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICB9XG59XG4iLCIvLyBUYWJsZXNcblxuQG1peGluIHRhYmxlLXJvdy12YXJpYW50KCRzdGF0ZSwgJGJhY2tncm91bmQpIHtcbiAgLy8gRXhhY3Qgc2VsZWN0b3JzIGJlbG93IHJlcXVpcmVkIHRvIG92ZXJyaWRlIGAudGFibGUtc3RyaXBlZGAgYW5kIHByZXZlbnRcbiAgLy8gaW5oZXJpdGFuY2UgdG8gbmVzdGVkIHRhYmxlcy5cbiAgLnRhYmxlID4gdGhlYWQgPiB0cixcbiAgLnRhYmxlID4gdGJvZHkgPiB0cixcbiAgLnRhYmxlID4gdGZvb3QgPiB0ciB7XG4gICAgPiB0ZC4jeyRzdGF0ZX0sXG4gICAgPiB0aC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX0gPiB0ZCxcbiAgICAmLiN7JHN0YXRlfSA+IHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWNrZ3JvdW5kO1xuICAgIH1cbiAgfVxuXG4gIC8vIEhvdmVyIHN0YXRlcyBmb3IgYC50YWJsZS1ob3ZlcmBcbiAgLy8gTm90ZTogdGhpcyBpcyBub3QgYXZhaWxhYmxlIGZvciBjZWxscyBvciByb3dzIHdpdGhpbiBgdGhlYWRgIG9yIGB0Zm9vdGAuXG4gIC50YWJsZS1ob3ZlciA+IHRib2R5ID4gdHIge1xuICAgID4gdGQuI3skc3RhdGV9OmhvdmVyLFxuICAgID4gdGguI3skc3RhdGV9OmhvdmVyLFxuICAgICYuI3skc3RhdGV9OmhvdmVyID4gdGQsXG4gICAgJjpob3ZlciA+IC4jeyRzdGF0ZX0sXG4gICAgJi4jeyRzdGF0ZX06aG92ZXIgPiB0aCB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiBkYXJrZW4oJGJhY2tncm91bmQsIDUlKTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIENvbnRleHR1YWwgYmFja2dyb3VuZHNcblxuLy8gW2NvbnZlcnRlcl0gJHBhcmVudCBoYWNrXG5AbWl4aW4gYmctdmFyaWFudCgkcGFyZW50LCAkY29sb3IpIHtcbiAgI3skcGFyZW50fSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNvbG9yO1xuICB9XG4gIGEjeyRwYXJlbnR9OmhvdmVyLFxuICBhI3skcGFyZW50fTpmb2N1cyB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogZGFya2VuKCRjb2xvciwgMTAlKTtcbiAgfVxufVxuIiwiLy8gU2luZ2xlIHNpZGUgYm9yZGVyLXJhZGl1c1xuXG5AbWl4aW4gYm9yZGVyLXRvcC1yYWRpdXMoJHJhZGl1cykge1xuICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAkcmFkaXVzO1xuICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbn1cbkBtaXhpbiBib3JkZXItcmlnaHQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tcmlnaHQtcmFkaXVzOiAkcmFkaXVzO1xufVxuQG1peGluIGJvcmRlci1ib3R0b20tcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICRyYWRpdXM7XG4gIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG59XG5AbWl4aW4gYm9yZGVyLWxlZnQtcmFkaXVzKCRyYWRpdXMpIHtcbiAgYm9yZGVyLXRvcC1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbn1cbiIsIlxuXG4vLyBIb3Jpem9udGFsIGdyYWRpZW50LCBmcm9tIGxlZnQgdG8gcmlnaHRcbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC1ob3Jpem9udGFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJHN0YXJ0LXBlcmNlbnQ6IDAlLCAkZW5kLXBlcmNlbnQ6IDEwMCUpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFNhZmFyaSA1LjEtNiwgQ2hyb21lIDEwK1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQobGVmdCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIE9wZXJhIDEyXG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCh0byByaWdodCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7IC8vIFN0YW5kYXJkLCBJRTEwLCBGaXJlZm94IDE2KywgT3BlcmEgMTIuMTArLCBTYWZhcmkgNyssIENocm9tZSAyNitcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuZ3JhZGllbnQoc3RhcnRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRzdGFydC1jb2xvcil9JywgZW5kQ29sb3JzdHI9JyN7aWUtaGV4LXN0cigkZW5kLWNvbG9yKX0nLCBHcmFkaWVudFR5cGU9MSk7IC8vIElFOSBhbmQgZG93blxuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5cbi8vIFZlcnRpY2FsIGdyYWRpZW50LCBmcm9tIHRvcCB0byBib3R0b21cbi8vXG4vLyBDcmVhdGVzIHR3byBjb2xvciBzdG9wcywgc3RhcnQgYW5kIGVuZCwgYnkgc3BlY2lmeWluZyBhIGNvbG9yIGFuZCBwb3NpdGlvbiBmb3IgZWFjaCBjb2xvciBzdG9wLlxuLy8gQ29sb3Igc3RvcHMgYXJlIG5vdCBhdmFpbGFibGUgaW4gSUU5IGFuZCBiZWxvdy5cbkBtaXhpbiBncmFkaWVudC12ZXJ0aWNhbCgkc3RhcnQtY29sb3I6ICM1NTUsICRlbmQtY29sb3I6ICMzMzMsICRzdGFydC1wZXJjZW50OiAwJSwgJGVuZC1wZXJjZW50OiAxMDAlKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBTYWZhcmkgNS4xLTYsIENocm9tZSAxMCtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KHRvcCwgJHN0YXJ0LWNvbG9yICRzdGFydC1wZXJjZW50LCAkZW5kLWNvbG9yICRlbmQtcGVyY2VudCk7ICAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gYm90dG9tLCAkc3RhcnQtY29sb3IgJHN0YXJ0LXBlcmNlbnQsICRlbmQtY29sb3IgJGVuZC1wZXJjZW50KTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duXG4gIGJhY2tncm91bmQtcmVwZWF0OiByZXBlYXQteDtcbn1cblxuQG1peGluIGdyYWRpZW50LWRpcmVjdGlvbmFsKCRzdGFydC1jb2xvcjogIzU1NSwgJGVuZC1jb2xvcjogIzMzMywgJGRlZzogNDVkZWcpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU2FmYXJpIDUuMS02LCBDaHJvbWUgMTArXG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudCgkZGVnLCAkc3RhcnQtY29sb3IsICRlbmQtY29sb3IpOyAvLyBPcGVyYSAxMlxuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQoJGRlZywgJHN0YXJ0LWNvbG9yLCAkZW5kLWNvbG9yKTsgLy8gU3RhbmRhcmQsIElFMTAsIEZpcmVmb3ggMTYrLCBPcGVyYSAxMi4xMCssIFNhZmFyaSA3KywgQ2hyb21lIDI2K1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogcmVwZWF0LXg7XG59XG5AbWl4aW4gZ3JhZGllbnQtaG9yaXpvbnRhbC10aHJlZS1jb2xvcnMoJHN0YXJ0LWNvbG9yOiAjMDBiM2VlLCAkbWlkLWNvbG9yOiAjN2E0M2I2LCAkY29sb3Itc3RvcDogNTAlLCAkZW5kLWNvbG9yOiAjYzMzMjVmKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KGxlZnQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC1vLWxpbmVhci1ncmFkaWVudChsZWZ0LCAkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBsaW5lYXItZ3JhZGllbnQodG8gcmlnaHQsICRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGZpbHRlcjogcHJvZ2lkOkRYSW1hZ2VUcmFuc2Zvcm0uTWljcm9zb2Z0LmdyYWRpZW50KHN0YXJ0Q29sb3JzdHI9JyN7aWUtaGV4LXN0cigkc3RhcnQtY29sb3IpfScsIGVuZENvbG9yc3RyPScje2llLWhleC1zdHIoJGVuZC1jb2xvcil9JywgR3JhZGllbnRUeXBlPTEpOyAvLyBJRTkgYW5kIGRvd24sIGdldHMgbm8gY29sb3Itc3RvcCBhdCBhbGwgZm9yIHByb3BlciBmYWxsYmFja1xuICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xufVxuQG1peGluIGdyYWRpZW50LXZlcnRpY2FsLXRocmVlLWNvbG9ycygkc3RhcnQtY29sb3I6ICMwMGIzZWUsICRtaWQtY29sb3I6ICM3YTQzYjYsICRjb2xvci1zdG9wOiA1MCUsICRlbmQtY29sb3I6ICNjMzMyNWYpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1saW5lYXItZ3JhZGllbnQoJHN0YXJ0LWNvbG9yLCAkbWlkLWNvbG9yICRjb2xvci1zdG9wLCAkZW5kLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1pbWFnZTogLW8tbGluZWFyLWdyYWRpZW50KCRzdGFydC1jb2xvciwgJG1pZC1jb2xvciAkY29sb3Itc3RvcCwgJGVuZC1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkc3RhcnQtY29sb3IsICRtaWQtY29sb3IgJGNvbG9yLXN0b3AsICRlbmQtY29sb3IpO1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5ncmFkaWVudChzdGFydENvbG9yc3RyPScje2llLWhleC1zdHIoJHN0YXJ0LWNvbG9yKX0nLCBlbmRDb2xvcnN0cj0nI3tpZS1oZXgtc3RyKCRlbmQtY29sb3IpfScsIEdyYWRpZW50VHlwZT0wKTsgLy8gSUU5IGFuZCBkb3duLCBnZXRzIG5vIGNvbG9yLXN0b3AgYXQgYWxsIGZvciBwcm9wZXIgZmFsbGJhY2tcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1yYWRpYWwoJGlubmVyLWNvbG9yOiAjNTU1LCAkb3V0ZXItY29sb3I6ICMzMzMpIHtcbiAgYmFja2dyb3VuZC1pbWFnZTogLXdlYmtpdC1yYWRpYWwtZ3JhZGllbnQoY2lyY2xlLCAkaW5uZXItY29sb3IsICRvdXRlci1jb2xvcik7XG4gIGJhY2tncm91bmQtaW1hZ2U6IHJhZGlhbC1ncmFkaWVudChjaXJjbGUsICRpbm5lci1jb2xvciwgJG91dGVyLWNvbG9yKTtcbiAgYmFja2dyb3VuZC1yZXBlYXQ6IG5vLXJlcGVhdDtcbn1cbkBtaXhpbiBncmFkaWVudC1zdHJpcGVkKCRjb2xvcjogcmdiYSgyNTUsIDI1NSwgMjU1LCAuMTUpLCAkYW5nbGU6IDQ1ZGVnKSB7XG4gIGJhY2tncm91bmQtaW1hZ2U6IC13ZWJraXQtbGluZWFyLWdyYWRpZW50KCRhbmdsZSwgJGNvbG9yIDI1JSwgdHJhbnNwYXJlbnQgMjUlLCB0cmFuc3BhcmVudCA1MCUsICRjb2xvciA1MCUsICRjb2xvciA3NSUsIHRyYW5zcGFyZW50IDc1JSwgdHJhbnNwYXJlbnQpO1xuICBiYWNrZ3JvdW5kLWltYWdlOiAtby1saW5lYXItZ3JhZGllbnQoJGFuZ2xlLCAkY29sb3IgMjUlLCB0cmFuc3BhcmVudCAyNSUsIHRyYW5zcGFyZW50IDUwJSwgJGNvbG9yIDUwJSwgJGNvbG9yIDc1JSwgdHJhbnNwYXJlbnQgNzUlLCB0cmFuc3BhcmVudCk7XG4gIGJhY2tncm91bmQtaW1hZ2U6IGxpbmVhci1ncmFkaWVudCgkYW5nbGUsICRjb2xvciAyNSUsIHRyYW5zcGFyZW50IDI1JSwgdHJhbnNwYXJlbnQgNTAlLCAkY29sb3IgNTAlLCAkY29sb3IgNzUlLCB0cmFuc3BhcmVudCA3NSUsIHRyYW5zcGFyZW50KTtcbn1cbiIsIi8vIENsZWFyZml4XG4vL1xuLy8gRm9yIG1vZGVybiBicm93c2Vyc1xuLy8gMS4gVGhlIHNwYWNlIGNvbnRlbnQgaXMgb25lIHdheSB0byBhdm9pZCBhbiBPcGVyYSBidWcgd2hlbiB0aGVcbi8vICAgIGNvbnRlbnRlZGl0YWJsZSBhdHRyaWJ1dGUgaXMgaW5jbHVkZWQgYW55d2hlcmUgZWxzZSBpbiB0aGUgZG9jdW1lbnQuXG4vLyAgICBPdGhlcndpc2UgaXQgY2F1c2VzIHNwYWNlIHRvIGFwcGVhciBhdCB0aGUgdG9wIGFuZCBib3R0b20gb2YgZWxlbWVudHNcbi8vICAgIHRoYXQgYXJlIGNsZWFyZml4ZWQuXG4vLyAyLiBUaGUgdXNlIG9mIGB0YWJsZWAgcmF0aGVyIHRoYW4gYGJsb2NrYCBpcyBvbmx5IG5lY2Vzc2FyeSBpZiB1c2luZ1xuLy8gICAgYDpiZWZvcmVgIHRvIGNvbnRhaW4gdGhlIHRvcC1tYXJnaW5zIG9mIGNoaWxkIGVsZW1lbnRzLlxuLy9cbi8vIFNvdXJjZTogaHR0cDovL25pY29sYXNnYWxsYWdoZXIuY29tL21pY3JvLWNsZWFyZml4LWhhY2svXG5cbkBtaXhpbiBjbGVhcmZpeCgpIHtcbiAgJjpiZWZvcmUsXG4gICY6YWZ0ZXIge1xuICAgIGRpc3BsYXk6IHRhYmxlOyAvLyAyXG4gICAgY29udGVudDogXCIgXCI7IC8vIDFcbiAgfVxuICAmOmFmdGVyIHtcbiAgICBjbGVhcjogYm90aDtcbiAgfVxufVxuIiwiLy8gQ2VudGVyLWFsaWduIGEgYmxvY2sgbGV2ZWwgZWxlbWVudFxuXG5AbWl4aW4gY2VudGVyLWJsb2NrKCkge1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICBtYXJnaW4tbGVmdDogYXV0bztcbn1cbiIsIi8vIE5hdmJhciB2ZXJ0aWNhbCBhbGlnblxuLy9cbi8vIFZlcnRpY2FsbHkgY2VudGVyIGVsZW1lbnRzIGluIHRoZSBuYXZiYXIuXG4vLyBFeGFtcGxlOiBhbiBlbGVtZW50IGhhcyBhIGhlaWdodCBvZiAzMHB4LCBzbyB3cml0ZSBvdXQgYC5uYXZiYXItdmVydGljYWwtYWxpZ24oMzBweCk7YCB0byBjYWxjdWxhdGUgdGhlIGFwcHJvcHJpYXRlIHRvcCBtYXJnaW4uXG5cbkBtaXhpbiBuYXZiYXItdmVydGljYWwtYWxpZ24oJGVsZW1lbnQtaGVpZ2h0KSB7XG4gIG1hcmdpbi10b3A6ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG4gIG1hcmdpbi1ib3R0b206ICgoJG5hdmJhci1oZWlnaHQgLSAkZWxlbWVudC1oZWlnaHQpIC8gMik7XG59XG4iLCIvLyBGcmFtZXdvcmsgZ3JpZCBnZW5lcmF0aW9uXG4vL1xuLy8gVXNlZCBvbmx5IGJ5IEJvb3RzdHJhcCB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBudW1iZXIgb2YgZ3JpZCBjbGFzc2VzIGdpdmVuXG4vLyBhbnkgdmFsdWUgb2YgYCRncmlkLWNvbHVtbnNgLlxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIG1ha2UtZ3JpZC1jb2x1bW5zKCRpOiAxLCAkbGlzdDogXCIuY29sLXhzLSN7JGl9LCAuY29sLXNtLSN7JGl9LCAuY29sLW1kLSN7JGl9LCAuY29sLWxnLSN7JGl9XCIpIHtcbiAgQGZvciAkaSBmcm9tICgxICsgMSkgdGhyb3VnaCAkZ3JpZC1jb2x1bW5zIHtcbiAgICAkbGlzdDogXCIjeyRsaXN0fSwgLmNvbC14cy0jeyRpfSwgLmNvbC1zbS0jeyRpfSwgLmNvbC1tZC0jeyRpfSwgLmNvbC1sZy0jeyRpfVwiO1xuICB9XG4gICN7JGxpc3R9IHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgLy8gUHJldmVudCBjb2x1bW5zIGZyb20gY29sbGFwc2luZyB3aGVuIGVtcHR5XG4gICAgbWluLWhlaWdodDogMXB4O1xuICAgIC8vIElubmVyIGd1dHRlciB2aWEgcGFkZGluZ1xuICAgIHBhZGRpbmctcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gICAgcGFkZGluZy1sZWZ0OiBjZWlsKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cbn1cblxuXG4vLyBbY29udmVydGVyXSBUaGlzIGlzIGRlZmluZWQgcmVjdXJzaXZlbHkgaW4gTEVTUywgYnV0IFNhc3Mgc3VwcG9ydHMgcmVhbCBsb29wc1xuQG1peGluIGZsb2F0LWdyaWQtY29sdW1ucygkY2xhc3MsICRpOiAxLCAkbGlzdDogXCIuY29sLSN7JGNsYXNzfS0jeyRpfVwiKSB7XG4gIEBmb3IgJGkgZnJvbSAoMSArIDEpIHRocm91Z2ggJGdyaWQtY29sdW1ucyB7XG4gICAgJGxpc3Q6IFwiI3skbGlzdH0sIC5jb2wtI3skY2xhc3N9LSN7JGl9XCI7XG4gIH1cbiAgI3skbGlzdH0ge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG59XG5cblxuQG1peGluIGNhbGMtZ3JpZC1jb2x1bW4oJGluZGV4LCAkY2xhc3MsICR0eXBlKSB7XG4gIEBpZiAoJHR5cGUgPT0gd2lkdGgpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LSN7JGluZGV4fSB7XG4gICAgICB3aWR0aDogcGVyY2VudGFnZSgoJGluZGV4IC8gJGdyaWQtY29sdW1ucykpO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IHB1c2gpIGFuZCAoJGluZGV4ID4gMCkge1xuICAgIC5jb2wtI3skY2xhc3N9LXB1c2gtI3skaW5kZXh9IHtcbiAgICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdXNoKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVzaC0wIHtcbiAgICAgIGxlZnQ6IGF1dG87XG4gICAgfVxuICB9XG4gIEBpZiAoJHR5cGUgPT0gcHVsbCkgYW5kICgkaW5kZXggPiAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0jeyRpbmRleH0ge1xuICAgICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbiAgQGlmICgkdHlwZSA9PSBwdWxsKSBhbmQgKCRpbmRleCA9PSAwKSB7XG4gICAgLmNvbC0jeyRjbGFzc30tcHVsbC0wIHtcbiAgICAgIHJpZ2h0OiBhdXRvO1xuICAgIH1cbiAgfVxuICBAaWYgKCR0eXBlID09IG9mZnNldCkge1xuICAgIC5jb2wtI3skY2xhc3N9LW9mZnNldC0jeyRpbmRleH0ge1xuICAgICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRpbmRleCAvICRncmlkLWNvbHVtbnMpKTtcbiAgICB9XG4gIH1cbn1cblxuLy8gW2NvbnZlcnRlcl0gVGhpcyBpcyBkZWZpbmVkIHJlY3Vyc2l2ZWx5IGluIExFU1MsIGJ1dCBTYXNzIHN1cHBvcnRzIHJlYWwgbG9vcHNcbkBtaXhpbiBsb29wLWdyaWQtY29sdW1ucygkY29sdW1ucywgJGNsYXNzLCAkdHlwZSkge1xuICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICRjb2x1bW5zIHtcbiAgICBAaW5jbHVkZSBjYWxjLWdyaWQtY29sdW1uKCRpLCAkY2xhc3MsICR0eXBlKTtcbiAgfVxufVxuXG5cbi8vIENyZWF0ZSBncmlkIGZvciBzcGVjaWZpYyBjbGFzc1xuQG1peGluIG1ha2UtZ3JpZCgkY2xhc3MpIHtcbiAgQGluY2x1ZGUgZmxvYXQtZ3JpZC1jb2x1bW5zKCRjbGFzcyk7XG4gIEBpbmNsdWRlIGxvb3AtZ3JpZC1jb2x1bW5zKCRncmlkLWNvbHVtbnMsICRjbGFzcywgd2lkdGgpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1bGwpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIHB1c2gpO1xuICBAaW5jbHVkZSBsb29wLWdyaWQtY29sdW1ucygkZ3JpZC1jb2x1bW5zLCAkY2xhc3MsIG9mZnNldCk7XG59XG4iLCIvLyBHcmlkIHN5c3RlbVxuLy9cbi8vIEdlbmVyYXRlIHNlbWFudGljIGdyaWQgY29sdW1ucyB3aXRoIHRoZXNlIG1peGlucy5cblxuLy8gQ2VudGVyZWQgY29udGFpbmVyIGVsZW1lbnRcbkBtaXhpbiBjb250YWluZXItZml4ZWQoJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBhZGRpbmctcmlnaHQ6IGNlaWwoKCRndXR0ZXIgLyAyKSk7XG4gIHBhZGRpbmctbGVmdDogZmxvb3IoKCRndXR0ZXIgLyAyKSk7XG4gIG1hcmdpbi1yaWdodDogYXV0bztcbiAgbWFyZ2luLWxlZnQ6IGF1dG87XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuXG4vLyBDcmVhdGVzIGEgd3JhcHBlciBmb3IgYSBzZXJpZXMgb2YgY29sdW1uc1xuQG1peGluIG1ha2Utcm93KCRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBtYXJnaW4tcmlnaHQ6IGZsb29yKCgkZ3V0dGVyIC8gLTIpKTtcbiAgbWFyZ2luLWxlZnQ6IGNlaWwoKCRndXR0ZXIgLyAtMikpO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gR2VuZXJhdGUgdGhlIGV4dHJhIHNtYWxsIGNvbHVtbnNcbkBtaXhpbiBtYWtlLXhzLWNvbHVtbigkY29sdW1ucywgJGd1dHRlcjogJGdyaWQtZ3V0dGVyLXdpZHRoKSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgbWluLWhlaWdodDogMXB4O1xuICBwYWRkaW5nLXJpZ2h0OiAoJGd1dHRlciAvIDIpO1xuICBwYWRkaW5nLWxlZnQ6ICgkZ3V0dGVyIC8gMik7XG59XG5AbWl4aW4gbWFrZS14cy1jb2x1bW4tb2Zmc2V0KCRjb2x1bW5zKSB7XG4gIG1hcmdpbi1sZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbn1cbkBtaXhpbiBtYWtlLXhzLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuQG1peGluIG1ha2UteHMtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xufVxuXG4vLyBHZW5lcmF0ZSB0aGUgc21hbGwgY29sdW1uc1xuQG1peGluIG1ha2Utc20tY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLXNtLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1zbS1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2Utc20tY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBtZWRpdW0gY29sdW1uc1xuQG1peGluIG1ha2UtbWQtY29sdW1uKCRjb2x1bW5zLCAkZ3V0dGVyOiAkZ3JpZC1ndXR0ZXItd2lkdGgpIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBtaW4taGVpZ2h0OiAxcHg7XG4gIHBhZGRpbmctcmlnaHQ6ICgkZ3V0dGVyIC8gMik7XG4gIHBhZGRpbmctbGVmdDogKCRndXR0ZXIgLyAyKTtcblxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICB3aWR0aDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLW1kLWNvbHVtbi1vZmZzZXQoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgbWFyZ2luLWxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1tZC1jb2x1bW4tcHVzaCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgICBsZWZ0OiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbWQtY29sdW1uLXB1bGwoJGNvbHVtbnMpIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgcmlnaHQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5cbi8vIEdlbmVyYXRlIHRoZSBsYXJnZSBjb2x1bW5zXG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4oJGNvbHVtbnMsICRndXR0ZXI6ICRncmlkLWd1dHRlci13aWR0aCkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6IDFweDtcbiAgcGFkZGluZy1yaWdodDogKCRndXR0ZXIgLyAyKTtcbiAgcGFkZGluZy1sZWZ0OiAoJGd1dHRlciAvIDIpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIHdpZHRoOiBwZXJjZW50YWdlKCgkY29sdW1ucyAvICRncmlkLWNvbHVtbnMpKTtcbiAgfVxufVxuQG1peGluIG1ha2UtbGctY29sdW1uLW9mZnNldCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBtYXJnaW4tbGVmdDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbkBtaXhpbiBtYWtlLWxnLWNvbHVtbi1wdXNoKCRjb2x1bW5zKSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGxlZnQ6IHBlcmNlbnRhZ2UoKCRjb2x1bW5zIC8gJGdyaWQtY29sdW1ucykpO1xuICB9XG59XG5AbWl4aW4gbWFrZS1sZy1jb2x1bW4tcHVsbCgkY29sdW1ucykge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICByaWdodDogcGVyY2VudGFnZSgoJGNvbHVtbnMgLyAkZ3JpZC1jb2x1bW5zKSk7XG4gIH1cbn1cbiIsIi8qISBub3JtYWxpemUuY3NzIHYzLjAuMyB8IE1JVCBMaWNlbnNlIHwgZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MgKi9cblxuLy9cbi8vIDEuIFNldCBkZWZhdWx0IGZvbnQgZmFtaWx5IHRvIHNhbnMtc2VyaWYuXG4vLyAyLiBQcmV2ZW50IGlPUyBhbmQgSUUgdGV4dCBzaXplIGFkanVzdCBhZnRlciBkZXZpY2Ugb3JpZW50YXRpb24gY2hhbmdlLFxuLy8gICAgd2l0aG91dCBkaXNhYmxpbmcgdXNlciB6b29tLlxuLy9cblxuaHRtbCB7XG4gIGZvbnQtZmFtaWx5OiBzYW5zLXNlcmlmOyAvLyAxXG4gIC1tcy10ZXh0LXNpemUtYWRqdXN0OiAxMDAlOyAvLyAyXG4gIC13ZWJraXQtdGV4dC1zaXplLWFkanVzdDogMTAwJTsgLy8gMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGRlZmF1bHQgbWFyZ2luLlxuLy9cblxuYm9keSB7XG4gIG1hcmdpbjogMDtcbn1cblxuLy8gSFRNTDUgZGlzcGxheSBkZWZpbml0aW9uc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIENvcnJlY3QgYGJsb2NrYCBkaXNwbGF5IG5vdCBkZWZpbmVkIGZvciBhbnkgSFRNTDUgZWxlbWVudCBpbiBJRSA4LzkuXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYGRldGFpbHNgIG9yIGBzdW1tYXJ5YCBpbiBJRSAxMC8xMVxuLy8gYW5kIEZpcmVmb3guXG4vLyBDb3JyZWN0IGBibG9ja2AgZGlzcGxheSBub3QgZGVmaW5lZCBmb3IgYG1haW5gIGluIElFIDExLlxuLy9cblxuYXJ0aWNsZSxcbmFzaWRlLFxuZGV0YWlscyxcbmZpZ2NhcHRpb24sXG5maWd1cmUsXG5mb290ZXIsXG5oZWFkZXIsXG5oZ3JvdXAsXG5tYWluLFxubWVudSxcbm5hdixcbnNlY3Rpb24sXG5zdW1tYXJ5IHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vXG4vLyAxLiBDb3JyZWN0IGBpbmxpbmUtYmxvY2tgIGRpc3BsYXkgbm90IGRlZmluZWQgaW4gSUUgOC85LlxuLy8gMi4gTm9ybWFsaXplIHZlcnRpY2FsIGFsaWdubWVudCBvZiBgcHJvZ3Jlc3NgIGluIENocm9tZSwgRmlyZWZveCwgYW5kIE9wZXJhLlxuLy9cblxuYXVkaW8sXG5jYW52YXMsXG5wcm9ncmVzcyxcbnZpZGVvIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrOyAvLyAxXG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTsgLy8gMlxufVxuXG4vL1xuLy8gUHJldmVudCBtb2Rlcm4gYnJvd3NlcnMgZnJvbSBkaXNwbGF5aW5nIGBhdWRpb2Agd2l0aG91dCBjb250cm9scy5cbi8vIFJlbW92ZSBleGNlc3MgaGVpZ2h0IGluIGlPUyA1IGRldmljZXMuXG4vL1xuXG5hdWRpbzpub3QoW2NvbnRyb2xzXSkge1xuICBkaXNwbGF5OiBub25lO1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGBbaGlkZGVuXWAgc3R5bGluZyBub3QgcHJlc2VudCBpbiBJRSA4LzkvMTAuXG4vLyBIaWRlIHRoZSBgdGVtcGxhdGVgIGVsZW1lbnQgaW4gSUUgOC85LzEwLzExLCBTYWZhcmksIGFuZCBGaXJlZm94IDwgMjIuXG4vL1xuXG5baGlkZGVuXSxcbnRlbXBsYXRlIHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLy8gTGlua3Ncbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgdGhlIGdyYXkgYmFja2dyb3VuZCBjb2xvciBmcm9tIGFjdGl2ZSBsaW5rcyBpbiBJRSAxMC5cbi8vXG5cbmEge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLy9cbi8vIEltcHJvdmUgcmVhZGFiaWxpdHkgb2YgZm9jdXNlZCBlbGVtZW50cyB3aGVuIHRoZXkgYXJlIGFsc28gaW4gYW5cbi8vIGFjdGl2ZS9ob3ZlciBzdGF0ZS5cbi8vXG5cbmE6YWN0aXZlLFxuYTpob3ZlciB7XG4gIG91dGxpbmU6IDA7XG59XG5cbi8vIFRleHQtbGV2ZWwgc2VtYW50aWNzXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG4vL1xuLy8gMS4gUmVtb3ZlIHRoZSBib3R0b20gYm9yZGVyIGluIENocm9tZSA1Ny0gYW5kIEZpcmVmb3ggMzktLlxuLy8gMi4gQWRkIHRoZSBjb3JyZWN0IHRleHQgZGVjb3JhdGlvbiBpbiBDaHJvbWUsIEVkZ2UsIElFLCBPcGVyYSwgYW5kIFNhZmFyaS5cbi8vXG5cbmFiYnJbdGl0bGVdIHtcbiAgYm9yZGVyLWJvdHRvbTogbm9uZTsgLy8gMVxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZTsgLy8gMlxuICB0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZSBkb3R0ZWQ7IC8vIDJcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGUgc2V0IHRvIGBib2xkZXJgIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmIsXG5zdHJvbmcge1xuICBmb250LXdlaWdodDogYm9sZDtcbn1cblxuLy9cbi8vIEFkZHJlc3Mgc3R5bGluZyBub3QgcHJlc2VudCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vXG5cbmRmbiB7XG4gIGZvbnQtc3R5bGU6IGl0YWxpYztcbn1cblxuLy9cbi8vIEFkZHJlc3MgdmFyaWFibGUgYGgxYCBmb250LXNpemUgYW5kIG1hcmdpbiB3aXRoaW4gYHNlY3Rpb25gIGFuZCBgYXJ0aWNsZWBcbi8vIGNvbnRleHRzIGluIEZpcmVmb3ggNCssIFNhZmFyaSwgYW5kIENocm9tZS5cbi8vXG5cbmgxIHtcbiAgZm9udC1zaXplOiAyZW07XG4gIG1hcmdpbjogMC42N2VtIDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIHN0eWxpbmcgbm90IHByZXNlbnQgaW4gSUUgOC85LlxuLy9cblxubWFyayB7XG4gIGJhY2tncm91bmQ6ICNmZjA7XG4gIGNvbG9yOiAjMDAwO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBpbmNvbnNpc3RlbnQgYW5kIHZhcmlhYmxlIGZvbnQgc2l6ZSBpbiBhbGwgYnJvd3NlcnMuXG4vL1xuXG5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogODAlO1xufVxuXG4vL1xuLy8gUHJldmVudCBgc3ViYCBhbmQgYHN1cGAgYWZmZWN0aW5nIGBsaW5lLWhlaWdodGAgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuc3ViLFxuc3VwIHtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbn1cblxuc3VwIHtcbiAgdG9wOiAtMC41ZW07XG59XG5cbnN1YiB7XG4gIGJvdHRvbTogLTAuMjVlbTtcbn1cblxuLy8gRW1iZWRkZWQgY29udGVudFxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIFJlbW92ZSBib3JkZXIgd2hlbiBpbnNpZGUgYGFgIGVsZW1lbnQgaW4gSUUgOC85LzEwLlxuLy9cblxuaW1nIHtcbiAgYm9yZGVyOiAwO1xufVxuXG4vL1xuLy8gQ29ycmVjdCBvdmVyZmxvdyBub3QgaGlkZGVuIGluIElFIDkvMTAvMTEuXG4vL1xuXG5zdmc6bm90KDpyb290KSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG59XG5cbi8vIEdyb3VwaW5nIGNvbnRlbnRcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBBZGRyZXNzIG1hcmdpbiBub3QgcHJlc2VudCBpbiBJRSA4LzkgYW5kIFNhZmFyaS5cbi8vXG5cbmZpZ3VyZSB7XG4gIG1hcmdpbjogMWVtIDQwcHg7XG59XG5cbi8vXG4vLyBBZGRyZXNzIGRpZmZlcmVuY2VzIGJldHdlZW4gRmlyZWZveCBhbmQgb3RoZXIgYnJvd3NlcnMuXG4vL1xuXG5ociB7XG4gIGJveC1zaXppbmc6IGNvbnRlbnQtYm94O1xuICBoZWlnaHQ6IDA7XG59XG5cbi8vXG4vLyBDb250YWluIG92ZXJmbG93IGluIGFsbCBicm93c2Vycy5cbi8vXG5cbnByZSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gQWRkcmVzcyBvZGQgYGVtYC11bml0IGZvbnQgc2l6ZSByZW5kZXJpbmcgaW4gYWxsIGJyb3dzZXJzLlxuLy9cblxuY29kZSxcbmtiZCxcbnByZSxcbnNhbXAge1xuICBmb250LWZhbWlseTogbW9ub3NwYWNlLCBtb25vc3BhY2U7XG4gIGZvbnQtc2l6ZTogMWVtO1xufVxuXG4vLyBGb3Jtc1xuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cblxuLy9cbi8vIEtub3duIGxpbWl0YXRpb246IGJ5IGRlZmF1bHQsIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFggYWxsb3cgdmVyeSBsaW1pdGVkXG4vLyBzdHlsaW5nIG9mIGBzZWxlY3RgLCB1bmxlc3MgYSBgYm9yZGVyYCBwcm9wZXJ0eSBpcyBzZXQuXG4vL1xuXG4vL1xuLy8gMS4gQ29ycmVjdCBjb2xvciBub3QgYmVpbmcgaW5oZXJpdGVkLlxuLy8gICAgS25vd24gaXNzdWU6IGFmZmVjdHMgY29sb3Igb2YgZGlzYWJsZWQgZWxlbWVudHMuXG4vLyAyLiBDb3JyZWN0IGZvbnQgcHJvcGVydGllcyBub3QgYmVpbmcgaW5oZXJpdGVkLlxuLy8gMy4gQWRkcmVzcyBtYXJnaW5zIHNldCBkaWZmZXJlbnRseSBpbiBGaXJlZm94IDQrLCBTYWZhcmksIGFuZCBDaHJvbWUuXG4vL1xuXG5idXR0b24sXG5pbnB1dCxcbm9wdGdyb3VwLFxuc2VsZWN0LFxudGV4dGFyZWEge1xuICBjb2xvcjogaW5oZXJpdDsgLy8gMVxuICBmb250OiBpbmhlcml0OyAvLyAyXG4gIG1hcmdpbjogMDsgLy8gM1xufVxuXG4vL1xuLy8gQWRkcmVzcyBgb3ZlcmZsb3dgIHNldCB0byBgaGlkZGVuYCBpbiBJRSA4LzkvMTAvMTEuXG4vL1xuXG5idXR0b24ge1xuICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLy9cbi8vIEFkZHJlc3MgaW5jb25zaXN0ZW50IGB0ZXh0LXRyYW5zZm9ybWAgaW5oZXJpdGFuY2UgZm9yIGBidXR0b25gIGFuZCBgc2VsZWN0YC5cbi8vIEFsbCBvdGhlciBmb3JtIGNvbnRyb2wgZWxlbWVudHMgZG8gbm90IGluaGVyaXQgYHRleHQtdHJhbnNmb3JtYCB2YWx1ZXMuXG4vLyBDb3JyZWN0IGBidXR0b25gIHN0eWxlIGluaGVyaXRhbmNlIGluIEZpcmVmb3gsIElFIDgvOS8xMC8xMSwgYW5kIE9wZXJhLlxuLy8gQ29ycmVjdCBgc2VsZWN0YCBzdHlsZSBpbmhlcml0YW5jZSBpbiBGaXJlZm94LlxuLy9cblxuYnV0dG9uLFxuc2VsZWN0IHtcbiAgdGV4dC10cmFuc2Zvcm06IG5vbmU7XG59XG5cbi8vXG4vLyAxLiBBdm9pZCB0aGUgV2ViS2l0IGJ1ZyBpbiBBbmRyb2lkIDQuMC4qIHdoZXJlICgyKSBkZXN0cm95cyBuYXRpdmUgYGF1ZGlvYFxuLy8gICAgYW5kIGB2aWRlb2AgY29udHJvbHMuXG4vLyAyLiBDb3JyZWN0IGluYWJpbGl0eSB0byBzdHlsZSBjbGlja2FibGUgYGlucHV0YCB0eXBlcyBpbiBpT1MuXG4vLyAzLiBJbXByb3ZlIHVzYWJpbGl0eSBhbmQgY29uc2lzdGVuY3kgb2YgY3Vyc29yIHN0eWxlIGJldHdlZW4gaW1hZ2UtdHlwZVxuLy8gICAgYGlucHV0YCBhbmQgb3RoZXJzLlxuLy9cblxuYnV0dG9uLFxuaHRtbCBpbnB1dFt0eXBlPVwiYnV0dG9uXCJdLCAvLyAxXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwic3VibWl0XCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBidXR0b247IC8vIDJcbiAgY3Vyc29yOiBwb2ludGVyOyAvLyAzXG59XG5cbi8vXG4vLyBSZS1zZXQgZGVmYXVsdCBjdXJzb3IgZm9yIGRpc2FibGVkIGVsZW1lbnRzLlxuLy9cblxuYnV0dG9uW2Rpc2FibGVkXSxcbmh0bWwgaW5wdXRbZGlzYWJsZWRdIHtcbiAgY3Vyc29yOiBkZWZhdWx0O1xufVxuXG4vL1xuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIGJvcmRlciBpbiBGaXJlZm94IDQrLlxuLy9cblxuYnV0dG9uOjotbW96LWZvY3VzLWlubmVyLFxuaW5wdXQ6Oi1tb3otZm9jdXMtaW5uZXIge1xuICBib3JkZXI6IDA7XG4gIHBhZGRpbmc6IDA7XG59XG5cbi8vXG4vLyBBZGRyZXNzIEZpcmVmb3ggNCsgc2V0dGluZyBgbGluZS1oZWlnaHRgIG9uIGBpbnB1dGAgdXNpbmcgYCFpbXBvcnRhbnRgIGluXG4vLyB0aGUgVUEgc3R5bGVzaGVldC5cbi8vXG5cbmlucHV0IHtcbiAgbGluZS1oZWlnaHQ6IG5vcm1hbDtcbn1cblxuLy9cbi8vIEl0J3MgcmVjb21tZW5kZWQgdGhhdCB5b3UgZG9uJ3QgYXR0ZW1wdCB0byBzdHlsZSB0aGVzZSBlbGVtZW50cy5cbi8vIEZpcmVmb3gncyBpbXBsZW1lbnRhdGlvbiBkb2Vzbid0IHJlc3BlY3QgYm94LXNpemluZywgcGFkZGluZywgb3Igd2lkdGguXG4vL1xuLy8gMS4gQWRkcmVzcyBib3ggc2l6aW5nIHNldCB0byBgY29udGVudC1ib3hgIGluIElFIDgvOS8xMC5cbi8vIDIuIFJlbW92ZSBleGNlc3MgcGFkZGluZyBpbiBJRSA4LzkvMTAuXG4vL1xuXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0sXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0ge1xuICBib3gtc2l6aW5nOiBib3JkZXItYm94OyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbn1cblxuLy9cbi8vIEZpeCB0aGUgY3Vyc29yIHN0eWxlIGZvciBDaHJvbWUncyBpbmNyZW1lbnQvZGVjcmVtZW50IGJ1dHRvbnMuIEZvciBjZXJ0YWluXG4vLyBgZm9udC1zaXplYCB2YWx1ZXMgb2YgdGhlIGBpbnB1dGAsIGl0IGNhdXNlcyB0aGUgY3Vyc29yIHN0eWxlIG9mIHRoZVxuLy8gZGVjcmVtZW50IGJ1dHRvbiB0byBjaGFuZ2UgZnJvbSBgZGVmYXVsdGAgdG8gYHRleHRgLlxuLy9cblxuaW5wdXRbdHlwZT1cIm51bWJlclwiXTo6LXdlYmtpdC1pbm5lci1zcGluLWJ1dHRvbixcbmlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICBoZWlnaHQ6IGF1dG87XG59XG5cbi8vXG4vLyAxLiBBZGRyZXNzIGBhcHBlYXJhbmNlYCBzZXQgdG8gYHNlYXJjaGZpZWxkYCBpbiBTYWZhcmkgYW5kIENocm9tZS5cbi8vIDIuIEFkZHJlc3MgYGJveC1zaXppbmdgIHNldCB0byBgYm9yZGVyLWJveGAgaW4gU2FmYXJpIGFuZCBDaHJvbWUuXG4vL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdIHtcbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiB0ZXh0ZmllbGQ7IC8vIDFcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7IC8vMlxufVxuXG4vL1xuLy8gUmVtb3ZlIGlubmVyIHBhZGRpbmcgYW5kIHNlYXJjaCBjYW5jZWwgYnV0dG9uIGluIFNhZmFyaSBhbmQgQ2hyb21lIG9uIE9TIFguXG4vLyBTYWZhcmkgKGJ1dCBub3QgQ2hyb21lKSBjbGlwcyB0aGUgY2FuY2VsIGJ1dHRvbiB3aGVuIHRoZSBzZWFyY2ggaW5wdXQgaGFzXG4vLyBwYWRkaW5nIChhbmQgYHRleHRmaWVsZGAgYXBwZWFyYW5jZSkuXG4vL1xuXG5pbnB1dFt0eXBlPVwic2VhcmNoXCJdOjotd2Via2l0LXNlYXJjaC1jYW5jZWwtYnV0dG9uLFxuaW5wdXRbdHlwZT1cInNlYXJjaFwiXTo6LXdlYmtpdC1zZWFyY2gtZGVjb3JhdGlvbiB7XG4gIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbn1cblxuLy9cbi8vIERlZmluZSBjb25zaXN0ZW50IGJvcmRlciwgbWFyZ2luLCBhbmQgcGFkZGluZy5cbi8vXG5cbmZpZWxkc2V0IHtcbiAgYm9yZGVyOiAxcHggc29saWQgI2MwYzBjMDtcbiAgbWFyZ2luOiAwIDJweDtcbiAgcGFkZGluZzogMC4zNWVtIDAuNjI1ZW0gMC43NWVtO1xufVxuXG4vL1xuLy8gMS4gQ29ycmVjdCBgY29sb3JgIG5vdCBiZWluZyBpbmhlcml0ZWQgaW4gSUUgOC85LzEwLzExLlxuLy8gMi4gUmVtb3ZlIHBhZGRpbmcgc28gcGVvcGxlIGFyZW4ndCBjYXVnaHQgb3V0IGlmIHRoZXkgemVybyBvdXQgZmllbGRzZXRzLlxuLy9cblxubGVnZW5kIHtcbiAgYm9yZGVyOiAwOyAvLyAxXG4gIHBhZGRpbmc6IDA7IC8vIDJcbn1cblxuLy9cbi8vIFJlbW92ZSBkZWZhdWx0IHZlcnRpY2FsIHNjcm9sbGJhciBpbiBJRSA4LzkvMTAvMTEuXG4vL1xuXG50ZXh0YXJlYSB7XG4gIG92ZXJmbG93OiBhdXRvO1xufVxuXG4vL1xuLy8gRG9uJ3QgaW5oZXJpdCB0aGUgYGZvbnQtd2VpZ2h0YCAoYXBwbGllZCBieSBhIHJ1bGUgYWJvdmUpLlxuLy8gTk9URTogdGhlIGRlZmF1bHQgY2Fubm90IHNhZmVseSBiZSBjaGFuZ2VkIGluIENocm9tZSBhbmQgU2FmYXJpIG9uIE9TIFguXG4vL1xuXG5vcHRncm91cCB7XG4gIGZvbnQtd2VpZ2h0OiBib2xkO1xufVxuXG4vLyBUYWJsZXNcbi8vID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG5cbi8vXG4vLyBSZW1vdmUgbW9zdCBzcGFjaW5nIGJldHdlZW4gdGFibGUgY2VsbHMuXG4vL1xuXG50YWJsZSB7XG4gIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2U7XG4gIGJvcmRlci1zcGFjaW5nOiAwO1xufVxuXG50ZCxcbnRoIHtcbiAgcGFkZGluZzogMDtcbn1cbiIsIi8qISBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2Jsb2IvbWFzdGVyL3NyYy9jc3MvbWFpbi5jc3MgKi9cblxuLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbi8vIFByaW50IHN0eWxlcy5cbi8vIElubGluZWQgdG8gYXZvaWQgdGhlIGFkZGl0aW9uYWwgSFRUUCByZXF1ZXN0OiBoNWJwLmNvbS9yXG4vLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PVxuXG5AbWVkaWEgcHJpbnQge1xuICAqLFxuICAqOmJlZm9yZSxcbiAgKjphZnRlciB7XG4gICAgY29sb3I6ICMwMDAgIWltcG9ydGFudDsgLy8gQmxhY2sgcHJpbnRzIGZhc3RlcjogaDVicC5jb20vc1xuICAgIHRleHQtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gIH1cblxuICBhLFxuICBhOnZpc2l0ZWQge1xuICAgIHRleHQtZGVjb3JhdGlvbjogdW5kZXJsaW5lO1xuICB9XG5cbiAgYVtocmVmXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7XG4gIH1cblxuICBhYmJyW3RpdGxlXTphZnRlciB7XG4gICAgY29udGVudDogXCIgKFwiIGF0dHIodGl0bGUpIFwiKVwiO1xuICB9XG5cbiAgLy8gRG9uJ3Qgc2hvdyBsaW5rcyB0aGF0IGFyZSBmcmFnbWVudCBpZGVudGlmaWVycyxcbiAgLy8gb3IgdXNlIHRoZSBgamF2YXNjcmlwdDpgIHBzZXVkbyBwcm90b2NvbFxuICBhW2hyZWZePVwiI1wiXTphZnRlcixcbiAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICB9XG5cbiAgcHJlLFxuICBibG9ja3F1b3RlIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAjOTk5O1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIHRoZWFkIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXA7IC8vIGg1YnAuY29tL3RcbiAgfVxuXG4gIHRyLFxuICBpbWcge1xuICAgIHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDtcbiAgfVxuXG4gIGltZyB7XG4gICAgbWF4LXdpZHRoOiAxMDAlICFpbXBvcnRhbnQ7XG4gIH1cblxuICBwLFxuICBoMixcbiAgaDMge1xuICAgIG9ycGhhbnM6IDM7XG4gICAgd2lkb3dzOiAzO1xuICB9XG5cbiAgaDIsXG4gIGgzIHtcbiAgICBwYWdlLWJyZWFrLWFmdGVyOiBhdm9pZDtcbiAgfVxuXG4gIC8vIEJvb3RzdHJhcCBzcGVjaWZpYyBjaGFuZ2VzIHN0YXJ0XG5cbiAgLy8gQm9vdHN0cmFwIGNvbXBvbmVudHNcbiAgLm5hdmJhciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAuYnRuLFxuICAuZHJvcHVwID4gLmJ0biB7XG4gICAgPiAuY2FyZXQge1xuICAgICAgYm9yZGVyLXRvcC1jb2xvcjogIzAwMCAhaW1wb3J0YW50O1xuICAgIH1cbiAgfVxuICAubGFiZWwge1xuICAgIGJvcmRlcjogMXB4IHNvbGlkICMwMDA7XG4gIH1cblxuICAudGFibGUge1xuICAgIGJvcmRlci1jb2xsYXBzZTogY29sbGFwc2UgIWltcG9ydGFudDtcblxuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICNmZmYgIWltcG9ydGFudDtcbiAgICB9XG4gIH1cbiAgLnRhYmxlLWJvcmRlcmVkIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAjZGRkICFpbXBvcnRhbnQ7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gR2x5cGhpY29ucyBmb3IgQm9vdHN0cmFwXG4vL1xuLy8gU2luY2UgaWNvbnMgYXJlIGZvbnRzLCB0aGV5IGNhbiBiZSBwbGFjZWQgYW55d2hlcmUgdGV4dCBpcyBwbGFjZWQgYW5kIGFyZVxuLy8gdGh1cyBhdXRvbWF0aWNhbGx5IHNpemVkIHRvIG1hdGNoIHRoZSBzdXJyb3VuZGluZyBjaGlsZC4gVG8gdXNlLCBjcmVhdGUgYW5cbi8vIGlubGluZSBlbGVtZW50IHdpdGggdGhlIGFwcHJvcHJpYXRlIGNsYXNzZXMsIGxpa2Ugc286XG4vL1xuLy8gPGEgaHJlZj1cIiNcIj48c3BhbiBjbGFzcz1cImdseXBoaWNvbiBnbHlwaGljb24tc3RhclwiPjwvc3Bhbj4gU3RhcjwvYT5cblxuQGF0LXJvb3Qge1xuICAvLyBJbXBvcnQgdGhlIGZvbnRzXG4gIEBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiBcIkdseXBoaWNvbnMgSGFsZmxpbmdzXCI7XG4gICAgc3JjOiB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uZW90XCIpLCBcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5lb3RcIikpO1xuICAgIHNyYzogdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXhcIiksIFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LmVvdD8jaWVmaXhcIikpIGZvcm1hdChcImVtYmVkZGVkLW9wZW50eXBlXCIpLFxuICAgICAgICAgdXJsKGlmKCRib290c3RyYXAtc2Fzcy1hc3NldC1oZWxwZXIsIHR3YnMtZm9udC1wYXRoKFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LndvZmYyXCIpLCBcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS53b2ZmMlwiKSkgZm9ybWF0KFwid29mZjJcIiksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZlwiKSwgXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0ud29mZlwiKSkgZm9ybWF0KFwid29mZlwiKSxcbiAgICAgICAgIHVybChpZigkYm9vdHN0cmFwLXNhc3MtYXNzZXQtaGVscGVyLCB0d2JzLWZvbnQtcGF0aChcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS50dGZcIiksIFwiI3skaWNvbi1mb250LXBhdGh9I3skaWNvbi1mb250LW5hbWV9LnR0ZlwiKSkgZm9ybWF0KFwidHJ1ZXR5cGVcIiksXG4gICAgICAgICB1cmwoaWYoJGJvb3RzdHJhcC1zYXNzLWFzc2V0LWhlbHBlciwgdHdicy1mb250LXBhdGgoXCIjeyRpY29uLWZvbnQtcGF0aH0jeyRpY29uLWZvbnQtbmFtZX0uc3ZnIyN7JGljb24tZm9udC1zdmctaWR9XCIpLCBcIiN7JGljb24tZm9udC1wYXRofSN7JGljb24tZm9udC1uYW1lfS5zdmcjI3skaWNvbi1mb250LXN2Zy1pZH1cIikpIGZvcm1hdChcInN2Z1wiKTtcbiAgfVxufVxuXG4vLyBDYXRjaGFsbCBiYXNlY2xhc3Ncbi5nbHlwaGljb24ge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRvcDogMXB4O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtZmFtaWx5OiBcIkdseXBoaWNvbnMgSGFsZmxpbmdzXCI7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xufVxuXG4vLyBJbmRpdmlkdWFsIGljb25zXG4uZ2x5cGhpY29uLWFzdGVyaXNrICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMDJhXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMDAyYlwiOyB9IH1cbi5nbHlwaGljb24tZXVybyxcbi5nbHlwaGljb24tZXVyICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYWNcIjsgfSB9XG4uZ2x5cGhpY29uLW1pbnVzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMjEyXCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjYwMVwiOyB9IH1cbi5nbHlwaGljb24tZW52ZWxvcGUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDI3MDlcIjsgfSB9XG4uZ2x5cGhpY29uLXBlbmNpbCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyNzBmXCI7IH0gfVxuLmdseXBoaWNvbi1nbGFzcyAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwMVwiOyB9IH1cbi5nbHlwaGljb24tbXVzaWMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDJcIjsgfSB9XG4uZ2x5cGhpY29uLXNlYXJjaCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDAzXCI7IH0gfVxuLmdseXBoaWNvbi1oZWFydCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwNVwiOyB9IH1cbi5nbHlwaGljb24tc3RhciAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0YXItZW1wdHkgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDA3XCI7IH0gfVxuLmdseXBoaWNvbi11c2VyICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAwOFwiOyB9IH1cbi5nbHlwaGljb24tZmlsbSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXRoLWxhcmdlICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEwXCI7IH0gfVxuLmdseXBoaWNvbi10aCAgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxMVwiOyB9IH1cbi5nbHlwaGljb24tdGgtbGlzdCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTJcIjsgfSB9XG4uZ2x5cGhpY29uLW9rICAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDEzXCI7IH0gfVxuLmdseXBoaWNvbi1yZW1vdmUgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxNFwiOyB9IH1cbi5nbHlwaGljb24tem9vbS1pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXpvb20tb3V0ICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE2XCI7IH0gfVxuLmdseXBoaWNvbi1vZmYgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAxN1wiOyB9IH1cbi5nbHlwaGljb24tc2lnbmFsICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvZyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDE5XCI7IH0gfVxuLmdseXBoaWNvbi10cmFzaCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyMFwiOyB9IH1cbi5nbHlwaGljb24taG9tZSAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZpbGUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDIyXCI7IH0gfVxuLmdseXBoaWNvbi10aW1lICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyM1wiOyB9IH1cbi5nbHlwaGljb24tcm9hZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjRcIjsgfSB9XG4uZ2x5cGhpY29uLWRvd25sb2FkLWFsdCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI1XCI7IH0gfVxuLmdseXBoaWNvbi1kb3dubG9hZCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyNlwiOyB9IH1cbi5nbHlwaGljb24tdXBsb2FkICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWluYm94ICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDI4XCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5LWNpcmNsZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAyOVwiOyB9IH1cbi5nbHlwaGljb24tcmVwZWF0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzBcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZnJlc2ggICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDMxXCI7IH0gfVxuLmdseXBoaWNvbi1saXN0LWFsdCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzMlwiOyB9IH1cbi5nbHlwaGljb24tbG9jayAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYWcgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM0XCI7IH0gfVxuLmdseXBoaWNvbi1oZWFkcGhvbmVzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzNVwiOyB9IH1cbi5nbHlwaGljb24tdm9sdW1lLW9mZiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXZvbHVtZS1kb3duICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDM3XCI7IH0gfVxuLmdseXBoaWNvbi12b2x1bWUtdXAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTAzOFwiOyB9IH1cbi5nbHlwaGljb24tcXJjb2RlICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWJhcmNvZGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQwXCI7IH0gfVxuLmdseXBoaWNvbi10YWcgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0MVwiOyB9IH1cbi5nbHlwaGljb24tdGFncyAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWJvb2sgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQzXCI7IH0gfVxuLmdseXBoaWNvbi1ib29rbWFyayAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0NFwiOyB9IH1cbi5nbHlwaGljb24tcHJpbnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDVcIjsgfSB9XG4uZ2x5cGhpY29uLWNhbWVyYSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ2XCI7IH0gfVxuLmdseXBoaWNvbi1mb250ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA0N1wiOyB9IH1cbi5nbHlwaGljb24tYm9sZCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNDhcIjsgfSB9XG4uZ2x5cGhpY29uLWl0YWxpYyAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDQ5XCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWhlaWdodCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC13aWR0aCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWxlZnQgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDUyXCI7IH0gfVxuLmdseXBoaWNvbi1hbGlnbi1jZW50ZXIgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1M1wiOyB9IH1cbi5nbHlwaGljb24tYWxpZ24tcmlnaHQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTRcIjsgfSB9XG4uZ2x5cGhpY29uLWFsaWduLWp1c3RpZnkgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU1XCI7IH0gfVxuLmdseXBoaWNvbi1saXN0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1NlwiOyB9IH1cbi5nbHlwaGljb24taW5kZW50LWxlZnQgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNTdcIjsgfSB9XG4uZ2x5cGhpY29uLWluZGVudC1yaWdodCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDU4XCI7IH0gfVxuLmdseXBoaWNvbi1mYWNldGltZS12aWRlbyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA1OVwiOyB9IH1cbi5nbHlwaGljb24tcGljdHVyZSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjBcIjsgfSB9XG4uZ2x5cGhpY29uLW1hcC1tYXJrZXIgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDYyXCI7IH0gfVxuLmdseXBoaWNvbi1hZGp1c3QgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2M1wiOyB9IH1cbi5nbHlwaGljb24tdGludCAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjRcIjsgfSB9XG4uZ2x5cGhpY29uLWVkaXQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY1XCI7IH0gfVxuLmdseXBoaWNvbi1zaGFyZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2NlwiOyB9IH1cbi5nbHlwaGljb24tY2hlY2sgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNjdcIjsgfSB9XG4uZ2x5cGhpY29uLW1vdmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDY4XCI7IH0gfVxuLmdseXBoaWNvbi1zdGVwLWJhY2t3YXJkICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA2OVwiOyB9IH1cbi5nbHlwaGljb24tZmFzdC1iYWNrd2FyZCAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzBcIjsgfSB9XG4uZ2x5cGhpY29uLWJhY2t3YXJkICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDcxXCI7IH0gfVxuLmdseXBoaWNvbi1wbGF5ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3MlwiOyB9IH1cbi5nbHlwaGljb24tcGF1c2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzNcIjsgfSB9XG4uZ2x5cGhpY29uLXN0b3AgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc0XCI7IH0gfVxuLmdseXBoaWNvbi1mb3J3YXJkICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3NVwiOyB9IH1cbi5nbHlwaGljb24tZmFzdC1mb3J3YXJkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzZcIjsgfSB9XG4uZ2x5cGhpY29uLXN0ZXAtZm9yd2FyZCAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDc3XCI7IH0gfVxuLmdseXBoaWNvbi1lamVjdCAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA3OFwiOyB9IH1cbi5nbHlwaGljb24tY2hldnJvbi1sZWZ0ICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwNzlcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgwXCI7IH0gfVxuLmdseXBoaWNvbi1wbHVzLXNpZ24gICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4MVwiOyB9IH1cbi5nbHlwaGljb24tbWludXMtc2lnbiAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODJcIjsgfSB9XG4uZ2x5cGhpY29uLXJlbW92ZS1zaWduICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDgzXCI7IH0gfVxuLmdseXBoaWNvbi1vay1zaWduICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4NFwiOyB9IH1cbi5nbHlwaGljb24tcXVlc3Rpb24tc2lnbiAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODVcIjsgfSB9XG4uZ2x5cGhpY29uLWluZm8tc2lnbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg2XCI7IH0gfVxuLmdseXBoaWNvbi1zY3JlZW5zaG90ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA4N1wiOyB9IH1cbi5nbHlwaGljb24tcmVtb3ZlLWNpcmNsZSAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwODhcIjsgfSB9XG4uZ2x5cGhpY29uLW9rLWNpcmNsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDg5XCI7IH0gfVxuLmdseXBoaWNvbi1iYW4tY2lyY2xlICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5MFwiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctbGVmdCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTFcIjsgfSB9XG4uZ2x5cGhpY29uLWFycm93LXJpZ2h0ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDkyXCI7IH0gfVxuLmdseXBoaWNvbi1hcnJvdy11cCAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5M1wiOyB9IH1cbi5nbHlwaGljb24tYXJyb3ctZG93biAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTRcIjsgfSB9XG4uZ2x5cGhpY29uLXNoYXJlLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMDk1XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtZnVsbCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTA5NlwiOyB9IH1cbi5nbHlwaGljb24tcmVzaXplLXNtYWxsICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUwOTdcIjsgfSB9XG4uZ2x5cGhpY29uLWV4Y2xhbWF0aW9uLXNpZ24gICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTAxXCI7IH0gfVxuLmdseXBoaWNvbi1naWZ0ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwMlwiOyB9IH1cbi5nbHlwaGljb24tbGVhZiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDNcIjsgfSB9XG4uZ2x5cGhpY29uLWZpcmUgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA0XCI7IH0gfVxuLmdseXBoaWNvbi1leWUtb3BlbiAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwNVwiOyB9IH1cbi5nbHlwaGljb24tZXllLWNsb3NlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDZcIjsgfSB9XG4uZ2x5cGhpY29uLXdhcm5pbmctc2lnbiAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTA3XCI7IH0gfVxuLmdseXBoaWNvbi1wbGFuZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEwOFwiOyB9IH1cbi5nbHlwaGljb24tY2FsZW5kYXIgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMDlcIjsgfSB9XG4uZ2x5cGhpY29uLXJhbmRvbSAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEwXCI7IH0gfVxuLmdseXBoaWNvbi1jb21tZW50ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExMVwiOyB9IH1cbi5nbHlwaGljb24tbWFnbmV0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTJcIjsgfSB9XG4uZ2x5cGhpY29uLWNoZXZyb24tdXAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTEzXCI7IH0gfVxuLmdseXBoaWNvbi1jaGV2cm9uLWRvd24gICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExNFwiOyB9IH1cbi5nbHlwaGljb24tcmV0d2VldCAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMTVcIjsgfSB9XG4uZ2x5cGhpY29uLXNob3BwaW5nLWNhcnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE2XCI7IH0gfVxuLmdseXBoaWNvbi1mb2xkZXItY2xvc2UgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTExN1wiOyB9IH1cbi5nbHlwaGljb24tZm9sZGVyLW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMThcIjsgfSB9XG4uZ2x5cGhpY29uLXJlc2l6ZS12ZXJ0aWNhbCAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTE5XCI7IH0gfVxuLmdseXBoaWNvbi1yZXNpemUtaG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyMFwiOyB9IH1cbi5nbHlwaGljb24taGRkICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWJ1bGxob3JuICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTIyXCI7IH0gfVxuLmdseXBoaWNvbi1iZWxsICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyM1wiOyB9IH1cbi5nbHlwaGljb24tY2VydGlmaWNhdGUgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjRcIjsgfSB9XG4uZ2x5cGhpY29uLXRodW1icy11cCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI1XCI7IH0gfVxuLmdseXBoaWNvbi10aHVtYnMtZG93biAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyNlwiOyB9IH1cbi5nbHlwaGljb24taGFuZC1yaWdodCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWhhbmQtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTI4XCI7IH0gfVxuLmdseXBoaWNvbi1oYW5kLXVwICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEyOVwiOyB9IH1cbi5nbHlwaGljb24taGFuZC1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzBcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1yaWdodCAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTMxXCI7IH0gfVxuLmdseXBoaWNvbi1jaXJjbGUtYXJyb3ctbGVmdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzMlwiOyB9IH1cbi5nbHlwaGljb24tY2lyY2xlLWFycm93LXVwICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzNcIjsgfSB9XG4uZ2x5cGhpY29uLWNpcmNsZS1hcnJvdy1kb3duICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM0XCI7IH0gfVxuLmdseXBoaWNvbi1nbG9iZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzNVwiOyB9IH1cbi5nbHlwaGljb24td3JlbmNoICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzZcIjsgfSB9XG4uZ2x5cGhpY29uLXRhc2tzICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTM3XCI7IH0gfVxuLmdseXBoaWNvbi1maWx0ZXIgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTEzOFwiOyB9IH1cbi5nbHlwaGljb24tYnJpZWZjYXNlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxMzlcIjsgfSB9XG4uZ2x5cGhpY29uLWZ1bGxzY3JlZW4gICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQwXCI7IH0gfVxuLmdseXBoaWNvbi1kYXNoYm9hcmQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0MVwiOyB9IH1cbi5nbHlwaGljb24tcGFwZXJjbGlwICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDJcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYXJ0LWVtcHR5ICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQzXCI7IH0gfVxuLmdseXBoaWNvbi1saW5rICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0NFwiOyB9IH1cbi5nbHlwaGljb24tcGhvbmUgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDVcIjsgfSB9XG4uZ2x5cGhpY29uLXB1c2hwaW4gICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTQ2XCI7IH0gfVxuLmdseXBoaWNvbi11c2QgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE0OFwiOyB9IH1cbi5nbHlwaGljb24tZ2JwICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNDlcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUwXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LWFscGhhYmV0ICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1MVwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hbHBoYWJldC1hbHQgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTJcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktb3JkZXIgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTUzXCI7IH0gfVxuLmdseXBoaWNvbi1zb3J0LWJ5LW9yZGVyLWFsdCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1NFwiOyB9IH1cbi5nbHlwaGljb24tc29ydC1ieS1hdHRyaWJ1dGVzICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNTVcIjsgfSB9XG4uZ2x5cGhpY29uLXNvcnQtYnktYXR0cmlidXRlcy1hbHQgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU2XCI7IH0gfVxuLmdseXBoaWNvbi11bmNoZWNrZWQgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE1N1wiOyB9IH1cbi5nbHlwaGljb24tZXhwYW5kICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNThcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbGxhcHNlLWRvd24gICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTU5XCI7IH0gfVxuLmdseXBoaWNvbi1jb2xsYXBzZS11cCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2MFwiOyB9IH1cbi5nbHlwaGljb24tbG9nLWluICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjFcIjsgfSB9XG4uZ2x5cGhpY29uLWZsYXNoICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTYyXCI7IH0gfVxuLmdseXBoaWNvbi1sb2ctb3V0ICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2M1wiOyB9IH1cbi5nbHlwaGljb24tbmV3LXdpbmRvdyAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjRcIjsgfSB9XG4uZ2x5cGhpY29uLXJlY29yZCAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY1XCI7IH0gfVxuLmdseXBoaWNvbi1zYXZlICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2NlwiOyB9IH1cbi5nbHlwaGljb24tb3BlbiAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNjdcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmVkICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTY4XCI7IH0gfVxuLmdseXBoaWNvbi1pbXBvcnQgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE2OVwiOyB9IH1cbi5nbHlwaGljb24tZXhwb3J0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzBcIjsgfSB9XG4uZ2x5cGhpY29uLXNlbmQgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTcxXCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktZGlzayAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3MlwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LXNhdmVkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzNcIjsgfSB9XG4uZ2x5cGhpY29uLWZsb3BweS1yZW1vdmUgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc0XCI7IH0gfVxuLmdseXBoaWNvbi1mbG9wcHktc2F2ZSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3NVwiOyB9IH1cbi5nbHlwaGljb24tZmxvcHB5LW9wZW4gICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzZcIjsgfSB9XG4uZ2x5cGhpY29uLWNyZWRpdC1jYXJkICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTc3XCI7IH0gfVxuLmdseXBoaWNvbi10cmFuc2ZlciAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE3OFwiOyB9IH1cbi5nbHlwaGljb24tY3V0bGVyeSAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxNzlcIjsgfSB9XG4uZ2x5cGhpY29uLWhlYWRlciAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgwXCI7IH0gfVxuLmdseXBoaWNvbi1jb21wcmVzc2VkICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4MVwiOyB9IH1cbi5nbHlwaGljb24tZWFycGhvbmUgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODJcIjsgfSB9XG4uZ2x5cGhpY29uLXBob25lLWFsdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTgzXCI7IH0gfVxuLmdseXBoaWNvbi10b3dlciAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4NFwiOyB9IH1cbi5nbHlwaGljb24tc3RhdHMgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODVcIjsgfSB9XG4uZ2x5cGhpY29uLXNkLXZpZGVvICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg2XCI7IH0gfVxuLmdseXBoaWNvbi1oZC12aWRlbyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE4N1wiOyB9IH1cbi5nbHlwaGljb24tc3VidGl0bGVzICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxODhcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLXN0ZXJlbyAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTg5XCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC1kb2xieSAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5MFwiOyB9IH1cbi5nbHlwaGljb24tc291bmQtNS0xICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTFcIjsgfSB9XG4uZ2x5cGhpY29uLXNvdW5kLTYtMSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTkyXCI7IH0gfVxuLmdseXBoaWNvbi1zb3VuZC03LTEgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5M1wiOyB9IH1cbi5nbHlwaGljb24tY29weXJpZ2h0LW1hcmsgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOTRcIjsgfSB9XG4uZ2x5cGhpY29uLXJlZ2lzdHJhdGlvbi1tYXJrICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk1XCI7IH0gfVxuLmdseXBoaWNvbi1jbG91ZC1kb3dubG9hZCAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTE5N1wiOyB9IH1cbi5nbHlwaGljb24tY2xvdWQtdXBsb2FkICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUxOThcIjsgfSB9XG4uZ2x5cGhpY29uLXRyZWUtY29uaWZlciAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMTk5XCI7IH0gfVxuLmdseXBoaWNvbi10cmVlLWRlY2lkdW91cyAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwMFwiOyB9IH1cbi5nbHlwaGljb24tY2QgICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDFcIjsgfSB9XG4uZ2x5cGhpY29uLXNhdmUtZmlsZSAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjAyXCI7IH0gfVxuLmdseXBoaWNvbi1vcGVuLWZpbGUgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwM1wiOyB9IH1cbi5nbHlwaGljb24tbGV2ZWwtdXAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDRcIjsgfSB9XG4uZ2x5cGhpY29uLWNvcHkgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjA1XCI7IH0gfVxuLmdseXBoaWNvbi1wYXN0ZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIwNlwiOyB9IH1cbi8vIFRoZSBmb2xsb3dpbmcgMiBHbHlwaGljb25zIGFyZSBvbWl0dGVkIGZvciB0aGUgdGltZSBiZWluZyBiZWNhdXNlXG4vLyB0aGV5IGN1cnJlbnRseSB1c2UgVW5pY29kZSBjb2RlcG9pbnRzIHRoYXQgYXJlIG91dHNpZGUgdGhlXG4vLyBCYXNpYyBNdWx0aWxpbmd1YWwgUGxhbmUgKEJNUCkuIE9sZGVyIGJ1Z2d5IHZlcnNpb25zIG9mIFdlYktpdCBjYW4ndCBoYW5kbGVcbi8vIG5vbi1CTVAgY29kZXBvaW50cyBpbiBDU1Mgc3RyaW5nIGVzY2FwZXMsIGFuZCB0aHVzIGNhbid0IGRpc3BsYXkgdGhlc2UgdHdvIGljb25zLlxuLy8gTm90YWJseSwgdGhlIGJ1ZyBhZmZlY3RzIHNvbWUgb2xkZXIgdmVyc2lvbnMgb2YgdGhlIEFuZHJvaWQgQnJvd3Nlci5cbi8vIE1vcmUgaW5mbzogaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMDEwNlxuLy8gLmdseXBoaWNvbi1kb29yICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMWY2YWFcIjsgfSB9XG4vLyAuZ2x5cGhpY29uLWtleSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwxZjUxMVwiOyB9IH1cbi5nbHlwaGljb24tYWxlcnQgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMDlcIjsgfSB9XG4uZ2x5cGhpY29uLWVxdWFsaXplciAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEwXCI7IH0gfVxuLmdseXBoaWNvbi1raW5nICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxMVwiOyB9IH1cbi5nbHlwaGljb24tcXVlZW4gICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTJcIjsgfSB9XG4uZ2x5cGhpY29uLXBhd24gICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjEzXCI7IH0gfVxuLmdseXBoaWNvbi1iaXNob3AgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIxNFwiOyB9IH1cbi5nbHlwaGljb24ta25pZ2h0ICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMTVcIjsgfSB9XG4uZ2x5cGhpY29uLWJhYnktZm9ybXVsYSAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE2XCI7IH0gfVxuLmdseXBoaWNvbi10ZW50ICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjZmYVwiOyB9IH1cbi5nbHlwaGljb24tYmxhY2tib2FyZCAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMThcIjsgfSB9XG4uZ2x5cGhpY29uLWJlZCAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjE5XCI7IH0gfVxuLmdseXBoaWNvbi1hcHBsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZjhmZlwiOyB9IH1cbi5nbHlwaGljb24tZXJhc2UgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjFcIjsgfSB9XG4uZ2x5cGhpY29uLWhvdXJnbGFzcyAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwyMzFiXCI7IH0gfVxuLmdseXBoaWNvbi1sYW1wICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyM1wiOyB9IH1cbi5nbHlwaGljb24tZHVwbGljYXRlICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjRcIjsgfSB9XG4uZ2x5cGhpY29uLXBpZ2d5LWJhbmsgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI1XCI7IH0gfVxuLmdseXBoaWNvbi1zY2lzc29ycyAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyNlwiOyB9IH1cbi5nbHlwaGljb24tYml0Y29pbiAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMjdcIjsgfSB9XG4uZ2x5cGhpY29uLWJ0YyAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjI3XCI7IH0gfVxuLmdseXBoaWNvbi14YnQgICAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIyN1wiOyB9IH1cbi5nbHlwaGljb24teWVuICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDAwYTVcIjsgfSB9XG4uZ2x5cGhpY29uLWpweSAgICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFwwMGE1XCI7IH0gfVxuLmdseXBoaWNvbi1ydWJsZSAgICAgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcMjBiZFwiOyB9IH1cbi5nbHlwaGljb24tcnViICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXDIwYmRcIjsgfSB9XG4uZ2x5cGhpY29uLXNjYWxlICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMwXCI7IH0gfVxuLmdseXBoaWNvbi1pY2UtbG9sbHkgICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzMVwiOyB9IH1cbi5nbHlwaGljb24taWNlLWxvbGx5LXRhc3RlZCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzJcIjsgfSB9XG4uZ2x5cGhpY29uLWVkdWNhdGlvbiAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjMzXCI7IH0gfVxuLmdseXBoaWNvbi1vcHRpb24taG9yaXpvbnRhbCAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzNFwiOyB9IH1cbi5nbHlwaGljb24tb3B0aW9uLXZlcnRpY2FsICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzVcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtaGFtYnVyZ2VyICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM2XCI7IH0gfVxuLmdseXBoaWNvbi1tb2RhbC13aW5kb3cgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTIzN1wiOyB9IH1cbi5nbHlwaGljb24tb2lsICAgICAgICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyMzhcIjsgfSB9XG4uZ2x5cGhpY29uLWdyYWluICAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjM5XCI7IH0gfVxuLmdseXBoaWNvbi1zdW5nbGFzc2VzICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0MFwiOyB9IH1cbi5nbHlwaGljb24tdGV4dC1zaXplICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDFcIjsgfSB9XG4uZ2x5cGhpY29uLXRleHQtY29sb3IgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQyXCI7IH0gfVxuLmdseXBoaWNvbi10ZXh0LWJhY2tncm91bmQgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0M1wiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLXRvcCAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDRcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi1ib3R0b20gICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ1XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24taG9yaXpvbnRhbHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0NlwiOyB9IH1cbi5nbHlwaGljb24tb2JqZWN0LWFsaWduLWxlZnQgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNDdcIjsgfSB9XG4uZ2x5cGhpY29uLW9iamVjdC1hbGlnbi12ZXJ0aWNhbCAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjQ4XCI7IH0gfVxuLmdseXBoaWNvbi1vYmplY3QtYWxpZ24tcmlnaHQgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI0OVwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtcmlnaHQgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTBcIjsgfSB9XG4uZ2x5cGhpY29uLXRyaWFuZ2xlLWxlZnQgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjUxXCI7IH0gfVxuLmdseXBoaWNvbi10cmlhbmdsZS1ib3R0b20gICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1MlwiOyB9IH1cbi5nbHlwaGljb24tdHJpYW5nbGUtdG9wICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTNcIjsgfSB9XG4uZ2x5cGhpY29uLWNvbnNvbGUgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU0XCI7IH0gfVxuLmdseXBoaWNvbi1zdXBlcnNjcmlwdCAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1NVwiOyB9IH1cbi5nbHlwaGljb24tc3Vic2NyaXB0ICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTZcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtbGVmdCAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjU3XCI7IH0gfVxuLmdseXBoaWNvbi1tZW51LXJpZ2h0ICAgICAgICAgICAgIHsgJjpiZWZvcmUgeyBjb250ZW50OiBcIlxcZTI1OFwiOyB9IH1cbi5nbHlwaGljb24tbWVudS1kb3duICAgICAgICAgICAgICB7ICY6YmVmb3JlIHsgY29udGVudDogXCJcXGUyNTlcIjsgfSB9XG4uZ2x5cGhpY29uLW1lbnUtdXAgICAgICAgICAgICAgICAgeyAmOmJlZm9yZSB7IGNvbnRlbnQ6IFwiXFxlMjYwXCI7IH0gfVxuIiwiLy9cbi8vIFNjYWZmb2xkaW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFJlc2V0IHRoZSBib3gtc2l6aW5nXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgcmVzZXQgbWF5IGNhdXNlIGNvbmZsaWN0cyB3aXRoIHNvbWUgdGhpcmQtcGFydHkgd2lkZ2V0cy5cbi8vIEZvciByZWNvbW1lbmRhdGlvbnMgb24gcmVzb2x2aW5nIHN1Y2ggY29uZmxpY3RzLCBzZWVcbi8vIGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9kb2NzLzMuNC9nZXR0aW5nLXN0YXJ0ZWQvI3RoaXJkLWJveC1zaXppbmdcbioge1xuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xufVxuKjpiZWZvcmUsXG4qOmFmdGVyIHtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbn1cblxuXG4vLyBCb2R5IHJlc2V0XG5cbmh0bWwge1xuICBmb250LXNpemU6IDEwcHg7XG4gIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbn1cblxuYm9keSB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktYmFzZTtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgY29sb3I6ICR0ZXh0LWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbn1cblxuLy8gUmVzZXQgZm9udHMgZm9yIHJlbGV2YW50IGVsZW1lbnRzXG5pbnB1dCxcbmJ1dHRvbixcbnNlbGVjdCxcbnRleHRhcmVhIHtcbiAgZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4gIGZvbnQtc2l6ZTogaW5oZXJpdDtcbiAgbGluZS1oZWlnaHQ6IGluaGVyaXQ7XG59XG5cblxuLy8gTGlua3NcblxuYSB7XG4gIGNvbG9yOiAkbGluay1jb2xvcjtcbiAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gIH1cblxuICAmOmZvY3VzIHtcbiAgICBAaW5jbHVkZSB0YWItZm9jdXM7XG4gIH1cbn1cblxuXG4vLyBGaWd1cmVzXG4vL1xuLy8gV2UgcmVzZXQgdGhpcyBoZXJlIGJlY2F1c2UgcHJldmlvdXNseSBOb3JtYWxpemUgaGFkIG5vIGBmaWd1cmVgIG1hcmdpbnMuIFRoaXNcbi8vIGVuc3VyZXMgd2UgZG9uJ3QgYnJlYWsgYW55b25lJ3MgdXNlIG9mIHRoZSBlbGVtZW50LlxuXG5maWd1cmUge1xuICBtYXJnaW46IDA7XG59XG5cblxuLy8gSW1hZ2VzXG5cbmltZyB7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG59XG5cbi8vIFJlc3BvbnNpdmUgaW1hZ2VzIChlbnN1cmUgaW1hZ2VzIGRvbid0IHNjYWxlIGJleW9uZCB0aGVpciBwYXJlbnRzKVxuLmltZy1yZXNwb25zaXZlIHtcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG59XG5cbi8vIFJvdW5kZWQgY29ybmVyc1xuLmltZy1yb3VuZGVkIHtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG59XG5cbi8vIEltYWdlIHRodW1ibmFpbHNcbi8vXG4vLyBIZWFkcyB1cCEgVGhpcyBpcyBtaXhpbi1lZCBpbnRvIHRodW1ibmFpbHMubGVzcyBmb3IgYC50aHVtYm5haWxgLlxuLmltZy10aHVtYm5haWwge1xuICBwYWRkaW5nOiAkdGh1bWJuYWlsLXBhZGRpbmc7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihhbGwgLjJzIGVhc2UtaW4tb3V0KTtcblxuICAvLyBLZWVwIHRoZW0gYXQgbW9zdCAxMDAlIHdpZGVcbiAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmUoaW5saW5lLWJsb2NrKTtcbn1cblxuLy8gUGVyZmVjdCBjaXJjbGVcbi5pbWctY2lyY2xlIHtcbiAgYm9yZGVyLXJhZGl1czogNTAlOyAvLyBzZXQgcmFkaXVzIGluIHBlcmNlbnRzXG59XG5cblxuLy8gSG9yaXpvbnRhbCBydWxlc1xuXG5ociB7XG4gIG1hcmdpbi10b3A6ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBib3JkZXI6IDA7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkaHItYm9yZGVyO1xufVxuXG5cbi8vIE9ubHkgZGlzcGxheSBjb250ZW50IHRvIHNjcmVlbiByZWFkZXJzXG4vL1xuLy8gU2VlOiBodHRwczovL2ExMXlwcm9qZWN0LmNvbS9wb3N0cy9ob3ctdG8taGlkZS1jb250ZW50XG5cbi5zci1vbmx5IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMXB4O1xuICBoZWlnaHQ6IDFweDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAtMXB4O1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBjbGlwOiByZWN0KDAsIDAsIDAsIDApO1xuICBib3JkZXI6IDA7XG59XG5cbi8vIFVzZSBpbiBjb25qdW5jdGlvbiB3aXRoIC5zci1vbmx5IHRvIG9ubHkgZGlzcGxheSBjb250ZW50IHdoZW4gaXQncyBmb2N1c2VkLlxuLy8gVXNlZnVsIGZvciBcIlNraXAgdG8gbWFpbiBjb250ZW50XCIgbGlua3M7IHNlZSBodHRwczovL3d3dy53My5vcmcvVFIvMjAxMy9OT1RFLVdDQUcyMC1URUNIUy0yMDEzMDkwNS9HMVxuLy8gQ3JlZGl0OiBIVE1MNSBCb2lsZXJwbGF0ZVxuXG4uc3Itb25seS1mb2N1c2FibGUge1xuICAmOmFjdGl2ZSxcbiAgJjpmb2N1cyB7XG4gICAgcG9zaXRpb246IHN0YXRpYztcbiAgICB3aWR0aDogYXV0bztcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgbWFyZ2luOiAwO1xuICAgIG92ZXJmbG93OiB2aXNpYmxlO1xuICAgIGNsaXA6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBpT1MgXCJjbGlja2FibGUgZWxlbWVudHNcIiBmaXggZm9yIHJvbGU9XCJidXR0b25cIlxuLy9cbi8vIEZpeGVzIFwiY2xpY2thYmlsaXR5XCIgaXNzdWUgKGFuZCBtb3JlIGdlbmVyYWxseSwgdGhlIGZpcmluZyBvZiBldmVudHMgc3VjaCBhcyBmb2N1cyBhcyB3ZWxsKVxuLy8gZm9yIHRyYWRpdGlvbmFsbHkgbm9uLWZvY3VzYWJsZSBlbGVtZW50cyB3aXRoIHJvbGU9XCJidXR0b25cIlxuLy8gc2VlIGh0dHBzOi8vZGV2ZWxvcGVyLm1vemlsbGEub3JnL2VuLVVTL2RvY3MvV2ViL0V2ZW50cy9jbGljayNTYWZhcmlfTW9iaWxlXG5cbltyb2xlPVwiYnV0dG9uXCJdIHtcbiAgY3Vyc29yOiBwb2ludGVyO1xufVxuIiwiLy9cbi8vIFR5cG9ncmFwaHlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gSGVhZGluZ3Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuaDEsIGgyLCBoMywgaDQsIGg1LCBoNixcbi5oMSwgLmgyLCAuaDMsIC5oNCwgLmg1LCAuaDYge1xuICBmb250LWZhbWlseTogJGhlYWRpbmdzLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGhlYWRpbmdzLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGhlYWRpbmdzLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGhlYWRpbmdzLWNvbG9yO1xuXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6IDE7XG4gICAgY29sb3I6ICRoZWFkaW5ncy1zbWFsbC1jb2xvcjtcbiAgfVxufVxuXG5oMSwgLmgxLFxuaDIsIC5oMixcbmgzLCAuaDMge1xuICBtYXJnaW4tdG9wOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbi1ib3R0b206ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKTtcblxuICBzbWFsbCxcbiAgLnNtYWxsIHtcbiAgICBmb250LXNpemU6IDY1JTtcbiAgfVxufVxuaDQsIC5oNCxcbmg1LCAuaDUsXG5oNiwgLmg2IHtcbiAgbWFyZ2luLXRvcDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG5cbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZm9udC1zaXplOiA3NSU7XG4gIH1cbn1cblxuaDEsIC5oMSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMTsgfVxuaDIsIC5oMiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMjsgfVxuaDMsIC5oMyB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oMzsgfVxuaDQsIC5oNCB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNDsgfVxuaDUsIC5oNSB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNTsgfVxuaDYsIC5oNiB7IGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1oNjsgfVxuXG5cbi8vIEJvZHkgdGV4dFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5wIHtcbiAgbWFyZ2luOiAwIDAgKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xufVxuXG4ubGVhZCB7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiBmbG9vcigoJGZvbnQtc2l6ZS1iYXNlICogMS4xNSkpO1xuICBmb250LXdlaWdodDogMzAwO1xuICBsaW5lLWhlaWdodDogMS40O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIH1cbn1cblxuXG4vLyBFbXBoYXNpcyAmIG1pc2Ncbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gRXg6ICgxMnB4IHNtYWxsIGZvbnQgLyAxNHB4IGJhc2UgZm9udCkgKiAxMDAlID0gYWJvdXQgODUlXG5zbWFsbCxcbi5zbWFsbCB7XG4gIGZvbnQtc2l6ZTogZmxvb3IoKDEwMCUgKiAkZm9udC1zaXplLXNtYWxsIC8gJGZvbnQtc2l6ZS1iYXNlKSk7XG59XG5cbm1hcmssXG4ubWFyayB7XG4gIHBhZGRpbmc6IC4yZW07XG4gIGJhY2tncm91bmQtY29sb3I6ICRzdGF0ZS13YXJuaW5nLWJnO1xufVxuXG4vLyBBbGlnbm1lbnRcbi50ZXh0LWxlZnQgICAgICAgICAgIHsgdGV4dC1hbGlnbjogbGVmdDsgfVxuLnRleHQtcmlnaHQgICAgICAgICAgeyB0ZXh0LWFsaWduOiByaWdodDsgfVxuLnRleHQtY2VudGVyICAgICAgICAgeyB0ZXh0LWFsaWduOiBjZW50ZXI7IH1cbi50ZXh0LWp1c3RpZnkgICAgICAgIHsgdGV4dC1hbGlnbjoganVzdGlmeTsgfVxuLnRleHQtbm93cmFwICAgICAgICAgeyB3aGl0ZS1zcGFjZTogbm93cmFwOyB9XG5cbi8vIFRyYW5zZm9ybWF0aW9uXG4udGV4dC1sb3dlcmNhc2UgICAgICB7IHRleHQtdHJhbnNmb3JtOiBsb3dlcmNhc2U7IH1cbi50ZXh0LXVwcGVyY2FzZSAgICAgIHsgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTsgfVxuLnRleHQtY2FwaXRhbGl6ZSAgICAgeyB0ZXh0LXRyYW5zZm9ybTogY2FwaXRhbGl6ZTsgfVxuXG4vLyBDb250ZXh0dWFsIGNvbG9yc1xuLnRleHQtbXV0ZWQge1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG59XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtcHJpbWFyeScsICRicmFuZC1wcmltYXJ5KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtdGV4dCk7XG5cbkBpbmNsdWRlIHRleHQtZW1waGFzaXMtdmFyaWFudCgnLnRleHQtaW5mbycsICRzdGF0ZS1pbmZvLXRleHQpO1xuXG5AaW5jbHVkZSB0ZXh0LWVtcGhhc2lzLXZhcmlhbnQoJy50ZXh0LXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy10ZXh0KTtcblxuQGluY2x1ZGUgdGV4dC1lbXBoYXNpcy12YXJpYW50KCcudGV4dC1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG4vLyBDb250ZXh0dWFsIGJhY2tncm91bmRzXG4vLyBGb3Igbm93IHdlJ2xsIGxlYXZlIHRoZXNlIGFsb25nc2lkZSB0aGUgdGV4dCBjbGFzc2VzIHVudGlsIHY0IHdoZW4gd2UgY2FuXG4vLyBzYWZlbHkgc2hpZnQgdGhpbmdzIGFyb3VuZCAocGVyIFNlbVZlciBydWxlcykuXG4uYmctcHJpbWFyeSB7XG4gIC8vIEdpdmVuIHRoZSBjb250cmFzdCBoZXJlLCB0aGlzIGlzIHRoZSBvbmx5IGNsYXNzIHRvIGhhdmUgaXRzIGNvbG9yIGludmVydGVkXG4gIC8vIGF1dG9tYXRpY2FsbHkuXG4gIGNvbG9yOiAjZmZmO1xufVxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXByaW1hcnknLCAkYnJhbmQtcHJpbWFyeSk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1zdWNjZXNzJywgJHN0YXRlLXN1Y2Nlc3MtYmcpO1xuXG5AaW5jbHVkZSBiZy12YXJpYW50KCcuYmctaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcblxuQGluY2x1ZGUgYmctdmFyaWFudCgnLmJnLXdhcm5pbmcnLCAkc3RhdGUtd2FybmluZy1iZyk7XG5cbkBpbmNsdWRlIGJnLXZhcmlhbnQoJy5iZy1kYW5nZXInLCAkc3RhdGUtZGFuZ2VyLWJnKTtcblxuXG4vLyBQYWdlIGhlYWRlclxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ucGFnZS1oZWFkZXIge1xuICBwYWRkaW5nLWJvdHRvbTogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAtIDEpO1xuICBtYXJnaW46ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKiAyKSAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRwYWdlLWhlYWRlci1ib3JkZXItY29sb3I7XG59XG5cblxuLy8gTGlzdHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gVW5vcmRlcmVkIGFuZCBPcmRlcmVkIGxpc3RzXG51bCxcbm9sIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogKCRsaW5lLWhlaWdodC1jb21wdXRlZCAvIDIpO1xuICB1bCxcbiAgb2wge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbn1cblxuLy8gTGlzdCBvcHRpb25zXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAubGlzdC11bnN0eWxlZGAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuQG1peGluIGxpc3QtdW5zdHlsZWQge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBsaXN0LXVuc3R5bGVkYCBmb3IgbGlic2FzcyBjb21wYXRpYmlsaXR5XG4ubGlzdC11bnN0eWxlZCB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG59XG5cblxuLy8gSW5saW5lIHR1cm5zIGxpc3QgaXRlbXMgaW50byBpbmxpbmUtYmxvY2tcbi5saXN0LWlubGluZSB7XG4gIEBpbmNsdWRlIGxpc3QtdW5zdHlsZWQ7XG4gIG1hcmdpbi1sZWZ0OiAtNXB4O1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBwYWRkaW5nLXJpZ2h0OiA1cHg7XG4gICAgcGFkZGluZy1sZWZ0OiA1cHg7XG4gIH1cbn1cblxuLy8gRGVzY3JpcHRpb24gTGlzdHNcbmRsIHtcbiAgbWFyZ2luLXRvcDogMDsgLy8gUmVtb3ZlIGJyb3dzZXIgZGVmYXVsdFxuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG59XG5kdCxcbmRkIHtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xufVxuZHQge1xuICBmb250LXdlaWdodDogNzAwO1xufVxuZGQge1xuICBtYXJnaW4tbGVmdDogMDsgLy8gVW5kbyBicm93c2VyIGRlZmF1bHRcbn1cblxuLy8gSG9yaXpvbnRhbCBkZXNjcmlwdGlvbiBsaXN0c1xuLy9cbi8vIERlZmF1bHRzIHRvIGJlaW5nIHN0YWNrZWQgd2l0aG91dCBhbnkgb2YgdGhlIGJlbG93IHN0eWxlcyBhcHBsaWVkLCB1bnRpbCB0aGVcbi8vIGdyaWQgYnJlYWtwb2ludCBpcyByZWFjaGVkIChkZWZhdWx0IG9mIH43NjhweCkuXG5cbi5kbC1ob3Jpem9udGFsIHtcbiAgZGQge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBDbGVhciB0aGUgZmxvYXRlZCBgZHRgIGlmIGFuIGVtcHR5IGBkZGAgaXMgcHJlc2VudFxuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRkbC1ob3Jpem9udGFsLWJyZWFrcG9pbnQpIHtcbiAgICBkdCB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICAgIHdpZHRoOiAoJGRsLWhvcml6b250YWwtb2Zmc2V0IC0gMjApO1xuICAgICAgY2xlYXI6IGxlZnQ7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICAgIEBpbmNsdWRlIHRleHQtb3ZlcmZsb3c7XG4gICAgfVxuICAgIGRkIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAkZGwtaG9yaXpvbnRhbC1vZmZzZXQ7XG4gICAgfVxuICB9XG59XG5cblxuLy8gTWlzY1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBBYmJyZXZpYXRpb25zIGFuZCBhY3Jvbnltc1xuLy8gQWRkIGRhdGEtKiBhdHRyaWJ1dGUgdG8gaGVscCBvdXQgb3VyIHRvb2x0aXAgcGx1Z2luLCBwZXIgaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy81MjU3XG5hYmJyW3RpdGxlXSxcbmFiYnJbZGF0YS1vcmlnaW5hbC10aXRsZV0ge1xuICBjdXJzb3I6IGhlbHA7XG59XG5cbi5pbml0aWFsaXNtIHtcbiAgZm9udC1zaXplOiA5MCU7XG4gIEBleHRlbmQgLnRleHQtdXBwZXJjYXNlO1xufVxuXG4vLyBCbG9ja3F1b3Rlc1xuYmxvY2txdW90ZSB7XG4gIHBhZGRpbmc6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLyAyKSAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG1hcmdpbjogMCAwICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1mb250LXNpemU7XG4gIGJvcmRlci1sZWZ0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuXG4gIHAsXG4gIHVsLFxuICBvbCB7XG4gICAgJjpsYXN0LWNoaWxkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICB9XG5cbiAgLy8gTm90ZTogRGVwcmVjYXRlZCBzbWFsbCBhbmQgLnNtYWxsIGFzIG9mIHYzLjEuMFxuICAvLyBDb250ZXh0OiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjYwXG4gIGZvb3RlcixcbiAgc21hbGwsXG4gIC5zbWFsbCB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgZm9udC1zaXplOiA4MCU7IC8vIGJhY2sgdG8gZGVmYXVsdCBmb250LXNpemVcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgY29sb3I6ICRibG9ja3F1b3RlLXNtYWxsLWNvbG9yO1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXDIwMTQgXFwwMEEwXCI7IC8vIGVtIGRhc2gsIG5ic3BcbiAgICB9XG4gIH1cbn1cblxuLy8gT3Bwb3NpdGUgYWxpZ25tZW50IG9mIGJsb2NrcXVvdGVcbi8vXG4vLyBIZWFkcyB1cDogYGJsb2NrcXVvdGUucHVsbC1yaWdodGAgaGFzIGJlZW4gZGVwcmVjYXRlZCBhcyBvZiB2My4xLjAuXG4uYmxvY2txdW90ZS1yZXZlcnNlLFxuYmxvY2txdW90ZS5wdWxsLXJpZ2h0IHtcbiAgcGFkZGluZy1yaWdodDogMTVweDtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICB0ZXh0LWFsaWduOiByaWdodDtcbiAgYm9yZGVyLXJpZ2h0OiA1cHggc29saWQgJGJsb2NrcXVvdGUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItbGVmdDogMDtcblxuICAvLyBBY2NvdW50IGZvciBjaXRhdGlvblxuICBmb290ZXIsXG4gIHNtYWxsLFxuICAuc21hbGwge1xuICAgICY6YmVmb3JlIHsgY29udGVudDogXCJcIjsgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcXDAwQTAgXFwyMDE0XCI7IC8vIG5ic3AsIGVtIGRhc2hcbiAgICB9XG4gIH1cbn1cblxuLy8gQWRkcmVzc2VzXG5hZGRyZXNzIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbn1cbiIsIi8vXG4vLyBDb2RlIChpbmxpbmUgYW5kIGJsb2NrKVxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBJbmxpbmUgYW5kIGJsb2NrIGNvZGUgc3R5bGVzXG5jb2RlLFxua2JkLFxucHJlLFxuc2FtcCB7XG4gIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xufVxuXG4vLyBJbmxpbmUgY29kZVxuY29kZSB7XG4gIHBhZGRpbmc6IDJweCA0cHg7XG4gIGZvbnQtc2l6ZTogOTAlO1xuICBjb2xvcjogJGNvZGUtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRjb2RlLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBVc2VyIGlucHV0IHR5cGljYWxseSBlbnRlcmVkIHZpYSBrZXlib2FyZFxua2JkIHtcbiAgcGFkZGluZzogMnB4IDRweDtcbiAgZm9udC1zaXplOiA5MCU7XG4gIGNvbG9yOiAka2JkLWNvbG9yO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAka2JkLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAuMjUpO1xuXG4gIGtiZCB7XG4gICAgcGFkZGluZzogMDtcbiAgICBmb250LXNpemU6IDEwMCU7XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICB9XG59XG5cbi8vIEJsb2NrcyBvZiBjb2RlXG5wcmUge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogKCgkbGluZS1oZWlnaHQtY29tcHV0ZWQgLSAxKSAvIDIpO1xuICBtYXJnaW46IDAgMCAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkIC8gMik7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAtIDEpOyAvLyAxNHB4IHRvIDEzcHhcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJHByZS1jb2xvcjtcbiAgd29yZC1icmVhazogYnJlYWstYWxsO1xuICB3b3JkLXdyYXA6IGJyZWFrLXdvcmQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcmUtYmc7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwcmUtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gIC8vIEFjY291bnQgZm9yIHNvbWUgY29kZSBvdXRwdXRzIHRoYXQgcGxhY2UgY29kZSB0YWdzIGluIHByZSB0YWdzXG4gIGNvZGUge1xuICAgIHBhZGRpbmc6IDA7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIHdoaXRlLXNwYWNlOiBwcmUtd3JhcDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cbi8vIEVuYWJsZSBzY3JvbGxhYmxlIGJsb2NrcyBvZiBjb2RlXG4ucHJlLXNjcm9sbGFibGUge1xuICBtYXgtaGVpZ2h0OiAkcHJlLXNjcm9sbGFibGUtbWF4LWhlaWdodDtcbiAgb3ZlcmZsb3cteTogc2Nyb2xsO1xufVxuIiwiLy9cbi8vIEdyaWQgc3lzdGVtXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIENvbnRhaW5lciB3aWR0aHNcbi8vXG4vLyBTZXQgdGhlIGNvbnRhaW5lciB3aWR0aCwgYW5kIG92ZXJyaWRlIGl0IGZvciBmaXhlZCBuYXZiYXJzIGluIG1lZGlhIHF1ZXJpZXMuXG5cbi5jb250YWluZXIge1xuICBAaW5jbHVkZSBjb250YWluZXItZml4ZWQ7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItc207XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbWQ7XG4gIH1cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gICAgd2lkdGg6ICRjb250YWluZXItbGc7XG4gIH1cbn1cblxuXG4vLyBGbHVpZCBjb250YWluZXJcbi8vXG4vLyBVdGlsaXplcyB0aGUgbWl4aW4gbWVhbnQgZm9yIGZpeGVkIHdpZHRoIGNvbnRhaW5lcnMsIGJ1dCB3aXRob3V0IGFueSBkZWZpbmVkXG4vLyB3aWR0aCBmb3IgZmx1aWQsIGZ1bGwgd2lkdGggbGF5b3V0cy5cblxuLmNvbnRhaW5lci1mbHVpZCB7XG4gIEBpbmNsdWRlIGNvbnRhaW5lci1maXhlZDtcbn1cblxuXG4vLyBSb3dcbi8vXG4vLyBSb3dzIGNvbnRhaW4gYW5kIGNsZWFyIHRoZSBmbG9hdHMgb2YgeW91ciBjb2x1bW5zLlxuXG4ucm93IHtcbiAgQGluY2x1ZGUgbWFrZS1yb3c7XG59XG5cbi5yb3ctbm8tZ3V0dGVycyB7XG4gIG1hcmdpbi1yaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG59XG5cblxuLy8gQ29sdW1uc1xuLy9cbi8vIENvbW1vbiBzdHlsZXMgZm9yIHNtYWxsIGFuZCBsYXJnZSBncmlkIGNvbHVtbnNcblxuQGluY2x1ZGUgbWFrZS1ncmlkLWNvbHVtbnM7XG5cblxuLy8gRXh0cmEgc21hbGwgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciBleHRyYSBzbWFsbCBkZXZpY2VzIGxpa2Vcbi8vIHNtYXJ0cGhvbmVzLlxuXG5AaW5jbHVkZSBtYWtlLWdyaWQoeHMpO1xuXG5cbi8vIFNtYWxsIGdyaWRcbi8vXG4vLyBDb2x1bW5zLCBvZmZzZXRzLCBwdXNoZXMsIGFuZCBwdWxscyBmb3IgdGhlIHNtYWxsIGRldmljZSByYW5nZSwgZnJvbSBwaG9uZXNcbi8vIHRvIHRhYmxldHMuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQoc20pO1xufVxuXG5cbi8vIE1lZGl1bSBncmlkXG4vL1xuLy8gQ29sdW1ucywgb2Zmc2V0cywgcHVzaGVzLCBhbmQgcHVsbHMgZm9yIHRoZSBkZXNrdG9wIGRldmljZSByYW5nZS5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSB7XG4gIEBpbmNsdWRlIG1ha2UtZ3JpZChtZCk7XG59XG5cblxuLy8gTGFyZ2UgZ3JpZFxuLy9cbi8vIENvbHVtbnMsIG9mZnNldHMsIHB1c2hlcywgYW5kIHB1bGxzIGZvciB0aGUgbGFyZ2UgZGVza3RvcCBkZXZpY2UgcmFuZ2UuXG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSBtYWtlLWdyaWQobGcpO1xufVxuIiwiLy9cbi8vIFRhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG50YWJsZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0YWJsZS1iZztcblxuICAvLyBUYWJsZSBjZWxsIHNpemluZ1xuICAvL1xuICAvLyBSZXNldCBkZWZhdWx0IHRhYmxlIGJlaGF2aW9yXG5cbiAgY29sW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICAgIGRpc3BsYXk6IHRhYmxlLWNvbHVtbjtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIHRkLFxuICB0aCB7XG4gICAgJltjbGFzcyo9XCJjb2wtXCJdIHtcbiAgICAgIHBvc2l0aW9uOiBzdGF0aWM7IC8vIFByZXZlbnQgYm9yZGVyIGhpZGluZyBpbiBGaXJlZm94IGFuZCBJRTktMTEgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNjIzKVxuICAgICAgZGlzcGxheTogdGFibGUtY2VsbDtcbiAgICAgIGZsb2F0OiBub25lO1xuICAgIH1cbiAgfVxufVxuXG5jYXB0aW9uIHtcbiAgcGFkZGluZy10b3A6ICR0YWJsZS1jZWxsLXBhZGRpbmc7XG4gIHBhZGRpbmctYm90dG9tOiAkdGFibGUtY2VsbC1wYWRkaW5nO1xuICBjb2xvcjogJHRleHQtbXV0ZWQ7XG4gIHRleHQtYWxpZ246IGxlZnQ7XG59XG5cbnRoIHtcbiAgdGV4dC1hbGlnbjogbGVmdDtcbn1cblxuXG4vLyBCYXNlbGluZSBzdHlsZXNcblxuLnRhYmxlIHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1heC13aWR0aDogMTAwJTtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICAvLyBDZWxsc1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgcGFkZGluZzogJHRhYmxlLWNlbGwtcGFkZGluZztcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgICAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgICAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQm90dG9tIGFsaWduIGZvciBjb2x1bW4gaGVhZGluZ3NcbiAgPiB0aGVhZCA+IHRyID4gdGgge1xuICAgIHZlcnRpY2FsLWFsaWduOiBib3R0b207XG4gICAgYm9yZGVyLWJvdHRvbTogMnB4IHNvbGlkICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIH1cbiAgLy8gUmVtb3ZlIHRvcCBib3JkZXIgZnJvbSB0aGVhZCBieSBkZWZhdWx0XG4gID4gY2FwdGlvbiArIHRoZWFkLFxuICA+IGNvbGdyb3VwICsgdGhlYWQsXG4gID4gdGhlYWQ6Zmlyc3QtY2hpbGQge1xuICAgID4gdHI6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBib3JkZXItdG9wOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAvLyBBY2NvdW50IGZvciBtdWx0aXBsZSB0Ym9keSBpbnN0YW5jZXNcbiAgPiB0Ym9keSArIHRib2R5IHtcbiAgICBib3JkZXItdG9wOiAycHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuXG4gIC8vIE5lc3RpbmdcbiAgLnRhYmxlIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYm9keS1iZztcbiAgfVxufVxuXG5cbi8vIENvbmRlbnNlZCB0YWJsZSB3LyBoYWxmIHBhZGRpbmdcblxuLnRhYmxlLWNvbmRlbnNlZCB7XG4gID4gdGhlYWQsXG4gID4gdGJvZHksXG4gID4gdGZvb3Qge1xuICAgID4gdHIge1xuICAgICAgPiB0aCxcbiAgICAgID4gdGQge1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtY29uZGVuc2VkLWNlbGwtcGFkZGluZztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCb3JkZXJlZCB2ZXJzaW9uXG4vL1xuLy8gQWRkIGJvcmRlcnMgYWxsIGFyb3VuZCB0aGUgdGFibGUgYW5kIGJldHdlZW4gYWxsIHRoZSBjb2x1bW5zLlxuXG4udGFibGUtYm9yZGVyZWQge1xuICBib3JkZXI6IDFweCBzb2xpZCAkdGFibGUtYm9yZGVyLWNvbG9yO1xuICA+IHRoZWFkLFxuICA+IHRib2R5LFxuICA+IHRmb290IHtcbiAgICA+IHRyIHtcbiAgICAgID4gdGgsXG4gICAgICA+IHRkIHtcbiAgICAgICAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgPiB0aGVhZCA+IHRyIHtcbiAgICA+IHRoLFxuICAgID4gdGQge1xuICAgICAgYm9yZGVyLWJvdHRvbS13aWR0aDogMnB4O1xuICAgIH1cbiAgfVxufVxuXG5cbi8vIFplYnJhLXN0cmlwaW5nXG4vL1xuLy8gRGVmYXVsdCB6ZWJyYS1zdHJpcGUgc3R5bGVzIChhbHRlcm5hdGluZyBncmF5IGFuZCB0cmFuc3BhcmVudCBiYWNrZ3JvdW5kcylcblxuLnRhYmxlLXN0cmlwZWQge1xuICA+IHRib2R5ID4gdHI6bnRoLW9mLXR5cGUob2RkKSB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYmxlLWJnLWFjY2VudDtcbiAgfVxufVxuXG5cbi8vIEhvdmVyIGVmZmVjdFxuLy9cbi8vIFBsYWNlZCBoZXJlIHNpbmNlIGl0IGhhcyB0byBjb21lIGFmdGVyIHRoZSBwb3RlbnRpYWwgemVicmEgc3RyaXBpbmdcblxuLnRhYmxlLWhvdmVyIHtcbiAgPiB0Ym9keSA+IHRyOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFibGUtYmctaG92ZXI7XG4gIH1cbn1cblxuXG4vLyBUYWJsZSBiYWNrZ3JvdW5kc1xuLy9cbi8vIEV4YWN0IHNlbGVjdG9ycyBiZWxvdyByZXF1aXJlZCB0byBvdmVycmlkZSBgLnRhYmxlLXN0cmlwZWRgIGFuZCBwcmV2ZW50XG4vLyBpbmhlcml0YW5jZSB0byBuZXN0ZWQgdGFibGVzLlxuXG4vLyBHZW5lcmF0ZSB0aGUgY29udGV4dHVhbCB2YXJpYW50c1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2FjdGl2ZScsICR0YWJsZS1iZy1hY3RpdmUpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ3N1Y2Nlc3MnLCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG5AaW5jbHVkZSB0YWJsZS1yb3ctdmFyaWFudCgnaW5mbycsICRzdGF0ZS1pbmZvLWJnKTtcbkBpbmNsdWRlIHRhYmxlLXJvdy12YXJpYW50KCd3YXJuaW5nJywgJHN0YXRlLXdhcm5pbmctYmcpO1xuQGluY2x1ZGUgdGFibGUtcm93LXZhcmlhbnQoJ2RhbmdlcicsICRzdGF0ZS1kYW5nZXItYmcpO1xuXG5cbi8vIFJlc3BvbnNpdmUgdGFibGVzXG4vL1xuLy8gV3JhcCB5b3VyIHRhYmxlcyBpbiBgLnRhYmxlLXJlc3BvbnNpdmVgIGFuZCB3ZSdsbCBtYWtlIHRoZW0gbW9iaWxlIGZyaWVuZGx5XG4vLyBieSBlbmFibGluZyBob3Jpem9udGFsIHNjcm9sbGluZy4gT25seSBhcHBsaWVzIDw3NjhweC4gRXZlcnl0aGluZyBhYm92ZSB0aGF0XG4vLyB3aWxsIGRpc3BsYXkgbm9ybWFsbHkuXG5cbi50YWJsZS1yZXNwb25zaXZlIHtcbiAgbWluLWhlaWdodDogLjAxJTsgLy8gV29ya2Fyb3VuZCBmb3IgSUU5IGJ1ZyAoc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTQ4MzcpXG4gIG92ZXJmbG93LXg6IGF1dG87XG5cbiAgQG1lZGlhIHNjcmVlbiBhbmQgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXJnaW4tYm90dG9tOiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICogLjc1KTtcbiAgICBvdmVyZmxvdy15OiBoaWRkZW47XG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gICAgYm9yZGVyOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcblxuICAgIC8vIFRpZ2h0ZW4gdXAgc3BhY2luZ1xuICAgID4gLnRhYmxlIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAgIC8vIEVuc3VyZSB0aGUgY29udGVudCBkb2Vzbid0IHdyYXBcbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGgsXG4gICAgICAgICAgPiB0ZCB7XG4gICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIFNwZWNpYWwgb3ZlcnJpZGVzIGZvciB0aGUgYm9yZGVyZWQgdGFibGVzXG4gICAgPiAudGFibGUtYm9yZGVyZWQge1xuICAgICAgYm9yZGVyOiAwO1xuXG4gICAgICAvLyBOdWtlIHRoZSBhcHByb3ByaWF0ZSBib3JkZXJzIHNvIHRoYXQgdGhlIHBhcmVudCBjYW4gaGFuZGxlIHRoZW1cbiAgICAgID4gdGhlYWQsXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHIge1xuICAgICAgICAgID4gdGg6Zmlyc3QtY2hpbGQsXG4gICAgICAgICAgPiB0ZDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgICB9XG4gICAgICAgICAgPiB0aDpsYXN0LWNoaWxkLFxuICAgICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgICBib3JkZXItcmlnaHQ6IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIE9ubHkgbnVrZSB0aGUgbGFzdCByb3cncyBib3R0b20tYm9yZGVyIGluIGB0Ym9keWAgYW5kIGB0Zm9vdGAgc2luY2VcbiAgICAgIC8vIGNoYW5jZXMgYXJlIHRoZXJlIHdpbGwgYmUgb25seSBvbmUgYHRyYCBpbiBhIGB0aGVhZGAgYW5kIHRoYXQgd291bGRcbiAgICAgIC8vIHJlbW92ZSB0aGUgYm9yZGVyIGFsdG9nZXRoZXIuXG4gICAgICA+IHRib2R5LFxuICAgICAgPiB0Zm9vdCB7XG4gICAgICAgID4gdHI6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgPiB0aCxcbiAgICAgICAgICA+IHRkIHtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b206IDA7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBGb3Jtc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBOb3JtYWxpemUgbm9uLWNvbnRyb2xzXG4vL1xuLy8gUmVzdHlsZSBhbmQgYmFzZWxpbmUgbm9uLWNvbnRyb2wgZm9ybSBlbGVtZW50cy5cblxuZmllbGRzZXQge1xuICAvLyBDaHJvbWUgYW5kIEZpcmVmb3ggc2V0IGEgYG1pbi13aWR0aDogbWluLWNvbnRlbnQ7YCBvbiBmaWVsZHNldHMsXG4gIC8vIHNvIHdlIHJlc2V0IHRoYXQgdG8gZW5zdXJlIGl0IGJlaGF2ZXMgbW9yZSBsaWtlIGEgc3RhbmRhcmQgYmxvY2sgZWxlbWVudC5cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTIzNTkuXG4gIG1pbi13aWR0aDogMDtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luOiAwO1xuICBib3JkZXI6IDA7XG59XG5cbmxlZ2VuZCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgcGFkZGluZzogMDtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBmb250LXNpemU6ICgkZm9udC1zaXplLWJhc2UgKiAxLjUpO1xuICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgY29sb3I6ICRsZWdlbmQtY29sb3I7XG4gIGJvcmRlcjogMDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRsZWdlbmQtYm9yZGVyLWNvbG9yO1xufVxuXG5sYWJlbCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWF4LXdpZHRoOiAxMDAlOyAvLyBGb3JjZSBJRTggdG8gd3JhcCBsb25nIGNvbnRlbnQgKHNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzEzMTQxKVxuICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG59XG5cblxuLy8gTm9ybWFsaXplIGZvcm0gY29udHJvbHNcbi8vXG4vLyBXaGlsZSBtb3N0IG9mIG91ciBmb3JtIHN0eWxlcyByZXF1aXJlIGV4dHJhIGNsYXNzZXMsIHNvbWUgYmFzaWMgbm9ybWFsaXphdGlvblxuLy8gaXMgcmVxdWlyZWQgdG8gZW5zdXJlIG9wdGltdW0gZGlzcGxheSB3aXRoIG9yIHdpdGhvdXQgdGhvc2UgY2xhc3NlcyB0byBiZXR0ZXJcbi8vIGFkZHJlc3MgYnJvd3NlciBpbmNvbnNpc3RlbmNpZXMuXG5cbmlucHV0W3R5cGU9XCJzZWFyY2hcIl0ge1xuICAvLyBPdmVycmlkZSBjb250ZW50LWJveCBpbiBOb3JtYWxpemUgKCogaXNuJ3Qgc3BlY2lmaWMgZW5vdWdoKVxuICBAaW5jbHVkZSBib3gtc2l6aW5nKGJvcmRlci1ib3gpO1xuXG4gIC8vIFNlYXJjaCBpbnB1dHMgaW4gaU9TXG4gIC8vXG4gIC8vIFRoaXMgb3ZlcnJpZGVzIHRoZSBleHRyYSByb3VuZGVkIGNvcm5lcnMgb24gc2VhcmNoIGlucHV0cyBpbiBpT1Mgc28gdGhhdCBvdXJcbiAgLy8gYC5mb3JtLWNvbnRyb2xgIGNsYXNzIGNhbiBwcm9wZXJseSBzdHlsZSB0aGVtLiBOb3RlIHRoYXQgdGhpcyBjYW5ub3Qgc2ltcGx5XG4gIC8vIGJlIGFkZGVkIHRvIGAuZm9ybS1jb250cm9sYCBhcyBpdCdzIG5vdCBzcGVjaWZpYyBlbm91Z2guIEZvciBkZXRhaWxzLCBzZWVcbiAgLy8gaHR0cHM6Ly9naXRodWIuY29tL3R3YnMvYm9vdHN0cmFwL2lzc3Vlcy8xMTU4Ni5cbiAgLXdlYmtpdC1hcHBlYXJhbmNlOiBub25lO1xuICBhcHBlYXJhbmNlOiBub25lO1xufVxuXG4vLyBQb3NpdGlvbiByYWRpb3MgYW5kIGNoZWNrYm94ZXMgYmV0dGVyXG5pbnB1dFt0eXBlPVwicmFkaW9cIl0sXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBtYXJnaW46IDRweCAwIDA7XG4gIG1hcmdpbi10b3A6IDFweCBcXDk7IC8vIElFOC05XG4gIGxpbmUtaGVpZ2h0OiBub3JtYWw7XG5cbiAgLy8gQXBwbHkgc2FtZSBkaXNhYmxlZCBjdXJzb3IgdHdlYWsgYXMgZm9yIGlucHV0c1xuICAvLyBTb21lIHNwZWNpYWwgY2FyZSBpcyBuZWVkZWQgYmVjYXVzZSA8bGFiZWw+cyBkb24ndCBpbmhlcml0IHRoZWlyIHBhcmVudCdzIGBjdXJzb3JgLlxuICAvL1xuICAvLyBOb3RlOiBOZWl0aGVyIHJhZGlvcyBub3IgY2hlY2tib3hlcyBjYW4gYmUgcmVhZG9ubHkuXG4gICZbZGlzYWJsZWRdLFxuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG59XG5cbmlucHV0W3R5cGU9XCJmaWxlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbi8vIE1ha2UgcmFuZ2UgaW5wdXRzIGJlaGF2ZSBsaWtlIHRleHR1YWwgZm9ybSBjb250cm9sc1xuaW5wdXRbdHlwZT1cInJhbmdlXCJdIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG4vLyBNYWtlIG11bHRpcGxlIHNlbGVjdCBlbGVtZW50cyBoZWlnaHQgbm90IGZpeGVkXG5zZWxlY3RbbXVsdGlwbGVdLFxuc2VsZWN0W3NpemVdIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG4vLyBGb2N1cyBmb3IgZmlsZSwgcmFkaW8sIGFuZCBjaGVja2JveFxuaW5wdXRbdHlwZT1cImZpbGVcIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwicmFkaW9cIl06Zm9jdXMsXG5pbnB1dFt0eXBlPVwiY2hlY2tib3hcIl06Zm9jdXMge1xuICBAaW5jbHVkZSB0YWItZm9jdXM7XG59XG5cbi8vIEFkanVzdCBvdXRwdXQgZWxlbWVudFxub3V0cHV0IHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIHBhZGRpbmctdG9wOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGlucHV0LWNvbG9yO1xufVxuXG5cbi8vIENvbW1vbiBmb3JtIGNvbnRyb2xzXG4vL1xuLy8gU2hhcmVkIHNpemUgYW5kIHR5cGUgcmVzZXRzIGZvciBmb3JtIGNvbnRyb2xzLiBBcHBseSBgLmZvcm0tY29udHJvbGAgdG8gYW55XG4vLyBvZiB0aGUgZm9sbG93aW5nIGZvcm0gY29udHJvbHM6XG4vL1xuLy8gc2VsZWN0XG4vLyB0ZXh0YXJlYVxuLy8gaW5wdXRbdHlwZT1cInRleHRcIl1cbi8vIGlucHV0W3R5cGU9XCJwYXNzd29yZFwiXVxuLy8gaW5wdXRbdHlwZT1cImRhdGV0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIl1cbi8vIGlucHV0W3R5cGU9XCJkYXRlXCJdXG4vLyBpbnB1dFt0eXBlPVwibW9udGhcIl1cbi8vIGlucHV0W3R5cGU9XCJ0aW1lXCJdXG4vLyBpbnB1dFt0eXBlPVwid2Vla1wiXVxuLy8gaW5wdXRbdHlwZT1cIm51bWJlclwiXVxuLy8gaW5wdXRbdHlwZT1cImVtYWlsXCJdXG4vLyBpbnB1dFt0eXBlPVwidXJsXCJdXG4vLyBpbnB1dFt0eXBlPVwic2VhcmNoXCJdXG4vLyBpbnB1dFt0eXBlPVwidGVsXCJdXG4vLyBpbnB1dFt0eXBlPVwiY29sb3JcIl1cblxuLmZvcm0tY29udHJvbCB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogMTAwJTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWJhc2U7IC8vIE1ha2UgaW5wdXRzIGF0IGxlYXN0IHRoZSBoZWlnaHQgb2YgdGhlaXIgYnV0dG9uIGNvdW50ZXJwYXJ0IChiYXNlIGxpbmUtaGVpZ2h0ICsgcGFkZGluZyArIGJvcmRlcilcbiAgcGFkZGluZzogJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCAkcGFkZGluZy1iYXNlLWhvcml6b250YWw7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1iYXNlO1xuICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1iZztcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1czsgLy8gTm90ZTogVGhpcyBoYXMgbm8gZWZmZWN0IG9uIDxzZWxlY3Q+cyBpbiBzb21lIGJyb3dzZXJzLCBkdWUgdG8gdGhlIGxpbWl0ZWQgc3R5bGFiaWxpdHkgb2YgPHNlbGVjdD5zIGluIENTUy5cbiAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDFweCAxcHggcmdiYSgwLCAwLCAwLCAuMDc1KSk7XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24oYm9yZGVyLWNvbG9yIGVhc2UtaW4tb3V0IC4xNXMsIGJveC1zaGFkb3cgZWFzZS1pbi1vdXQgLjE1cyk7XG5cbiAgLy8gQ3VzdG9taXplIHRoZSBgOmZvY3VzYCBzdGF0ZSB0byBpbWl0YXRlIG5hdGl2ZSBXZWJLaXQgc3R5bGVzLlxuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtZm9jdXM7XG5cbiAgLy8gUGxhY2Vob2xkZXJcbiAgQGluY2x1ZGUgcGxhY2Vob2xkZXI7XG5cbiAgLy8gVW5zdHlsZSB0aGUgY2FyZXQgb24gYDxzZWxlY3Q+YHMgaW4gSUUxMCsuXG4gICY6Oi1tcy1leHBhbmQge1xuICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlcjogMDtcbiAgfVxuXG4gIC8vIERpc2FibGVkIGFuZCByZWFkLW9ubHkgaW5wdXRzXG4gIC8vXG4gIC8vIEhUTUw1IHNheXMgdGhhdCBjb250cm9scyB1bmRlciBhIGZpZWxkc2V0ID4gbGVnZW5kOmZpcnN0LWNoaWxkIHdvbid0IGJlXG4gIC8vIGRpc2FibGVkIGlmIHRoZSBmaWVsZHNldCBpcyBkaXNhYmxlZC4gRHVlIHRvIGltcGxlbWVudGF0aW9uIGRpZmZpY3VsdHksIHdlXG4gIC8vIGRvbid0IGhvbm9yIHRoYXQgZWRnZSBjYXNlOyB3ZSBzdHlsZSB0aGVtIGFzIGRpc2FibGVkIGFueXdheS5cbiAgJltkaXNhYmxlZF0sXG4gICZbcmVhZG9ubHldLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWRpc2FibGVkO1xuICAgIG9wYWNpdHk6IDE7IC8vIGlPUyBmaXggZm9yIHVucmVhZGFibGUgZGlzYWJsZWQgY29udGVudDsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTE2NTVcbiAgfVxuXG4gICZbZGlzYWJsZWRdLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRleHRhcmVhJiB0byB0ZXh0YXJlYS5mb3JtLWNvbnRyb2xcbn1cblxuLy8gUmVzZXQgaGVpZ2h0IGZvciBgdGV4dGFyZWFgc1xudGV4dGFyZWEuZm9ybS1jb250cm9sIHtcbiAgaGVpZ2h0OiBhdXRvO1xufVxuXG5cbi8vIFNwZWNpYWwgc3R5bGVzIGZvciBpT1MgdGVtcG9yYWwgaW5wdXRzXG4vL1xuLy8gSW4gTW9iaWxlIFNhZmFyaSwgc2V0dGluZyBgZGlzcGxheTogYmxvY2tgIG9uIHRlbXBvcmFsIGlucHV0cyBjYXVzZXMgdGhlXG4vLyB0ZXh0IHdpdGhpbiB0aGUgaW5wdXQgdG8gYmVjb21lIHZlcnRpY2FsbHkgbWlzYWxpZ25lZC4gQXMgYSB3b3JrYXJvdW5kLCB3ZVxuLy8gc2V0IGEgcGl4ZWwgbGluZS1oZWlnaHQgdGhhdCBtYXRjaGVzIHRoZSBnaXZlbiBoZWlnaHQgb2YgdGhlIGlucHV0LCBidXQgb25seVxuLy8gZm9yIFNhZmFyaS4gU2VlIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk4NDhcbi8vXG4vLyBOb3RlIHRoYXQgYXMgb2YgOS4zLCBpT1MgZG9lc24ndCBzdXBwb3J0IGB3ZWVrYC5cblxuQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzogMCkge1xuICBpbnB1dFt0eXBlPVwiZGF0ZVwiXSxcbiAgaW5wdXRbdHlwZT1cInRpbWVcIl0sXG4gIGlucHV0W3R5cGU9XCJkYXRldGltZS1sb2NhbFwiXSxcbiAgaW5wdXRbdHlwZT1cIm1vbnRoXCJdIHtcbiAgICAmLmZvcm0tY29udHJvbCB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1iYXNlO1xuICAgIH1cblxuICAgICYuaW5wdXQtc20sXG4gICAgLmlucHV0LWdyb3VwLXNtICYge1xuICAgICAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtc21hbGw7XG4gICAgfVxuXG4gICAgJi5pbnB1dC1sZyxcbiAgICAuaW5wdXQtZ3JvdXAtbGcgJiB7XG4gICAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBGb3JtIGdyb3Vwc1xuLy9cbi8vIERlc2lnbmVkIHRvIGhlbHAgd2l0aCB0aGUgb3JnYW5pemF0aW9uIGFuZCBzcGFjaW5nIG9mIHZlcnRpY2FsIGZvcm1zLiBGb3Jcbi8vIGhvcml6b250YWwgZm9ybXMsIHVzZSB0aGUgcHJlZGVmaW5lZCBncmlkIGNsYXNzZXMuXG5cbi5mb3JtLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGZvcm0tZ3JvdXAtbWFyZ2luLWJvdHRvbTtcbn1cblxuXG4vLyBDaGVja2JveGVzIGFuZCByYWRpb3Ncbi8vXG4vLyBJbmRlbnQgdGhlIGxhYmVscyB0byBwb3NpdGlvbiByYWRpb3MvY2hlY2tib3hlcyBhcyBoYW5naW5nIGNvbnRyb2xzLlxuXG4ucmFkaW8sXG4uY2hlY2tib3gge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tdG9wOiAxMHB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuXG4gIC8vIFRoZXNlIGFyZSB1c2VkIG9uIGVsZW1lbnRzIHdpdGggPGxhYmVsPiBkZXNjZW5kYW50c1xuICAmLmRpc2FibGVkLFxuICBmaWVsZHNldFtkaXNhYmxlZF0gJiB7XG4gICAgbGFiZWwge1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgIH1cbiAgfVxuXG4gIGxhYmVsIHtcbiAgICBtaW4taGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7IC8vIEVuc3VyZSB0aGUgaW5wdXQgZG9lc24ndCBqdW1wIHdoZW4gdGhlcmUgaXMgbm8gdGV4dFxuICAgIHBhZGRpbmctbGVmdDogMjBweDtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICB9XG59XG4ucmFkaW8gaW5wdXRbdHlwZT1cInJhZGlvXCJdLFxuLnJhZGlvLWlubGluZSBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4uY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuLmNoZWNrYm94LWlubGluZSBpbnB1dFt0eXBlPVwiY2hlY2tib3hcIl0ge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIG1hcmdpbi10b3A6IDRweCBcXDk7XG4gIG1hcmdpbi1sZWZ0OiAtMjBweDtcbn1cblxuLnJhZGlvICsgLnJhZGlvLFxuLmNoZWNrYm94ICsgLmNoZWNrYm94IHtcbiAgbWFyZ2luLXRvcDogLTVweDsgLy8gTW92ZSB1cCBzaWJsaW5nIHJhZGlvcyBvciBjaGVja2JveGVzIGZvciB0aWdodGVyIHNwYWNpbmdcbn1cblxuLy8gUmFkaW9zIGFuZCBjaGVja2JveGVzIG9uIHNhbWUgbGluZVxuLnJhZGlvLWlubGluZSxcbi5jaGVja2JveC1pbmxpbmUge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAyMHB4O1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXdlaWdodDogNDAwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICBjdXJzb3I6IHBvaW50ZXI7XG5cbiAgLy8gVGhlc2UgYXJlIHVzZWQgZGlyZWN0bHkgb24gPGxhYmVsPnNcbiAgJi5kaXNhYmxlZCxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgfVxufVxuLnJhZGlvLWlubGluZSArIC5yYWRpby1pbmxpbmUsXG4uY2hlY2tib3gtaW5saW5lICsgLmNoZWNrYm94LWlubGluZSB7XG4gIG1hcmdpbi10b3A6IDA7XG4gIG1hcmdpbi1sZWZ0OiAxMHB4OyAvLyBzcGFjZSBvdXQgY29uc2VjdXRpdmUgaW5saW5lIGNvbnRyb2xzXG59XG5cblxuLy8gU3RhdGljIGZvcm0gY29udHJvbCB0ZXh0XG4vL1xuLy8gQXBwbHkgY2xhc3MgdG8gYSBgcGAgZWxlbWVudCB0byBtYWtlIGFueSBzdHJpbmcgb2YgdGV4dCBhbGlnbiB3aXRoIGxhYmVscyBpblxuLy8gYSBob3Jpem9udGFsIGZvcm0gbGF5b3V0LlxuXG4uZm9ybS1jb250cm9sLXN0YXRpYyB7XG4gIG1pbi1oZWlnaHQ6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyAkZm9udC1zaXplLWJhc2UpO1xuICAvLyBTaXplIGl0IGFwcHJvcHJpYXRlbHkgbmV4dCB0byByZWFsIGZvcm0gY29udHJvbHNcbiAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSk7XG4gIHBhZGRpbmctYm90dG9tOiAoJHBhZGRpbmctYmFzZS12ZXJ0aWNhbCArIDEpO1xuICAvLyBSZW1vdmUgZGVmYXVsdCBtYXJnaW4gZnJvbSBgcGBcbiAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAmLmlucHV0LWxnLFxuICAmLmlucHV0LXNtIHtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBzaXppbmdcbi8vXG4vLyBCdWlsZCBvbiBgLmZvcm0tY29udHJvbGAgd2l0aCBtb2RpZmllciBjbGFzc2VzIHRvIGRlY3JlYXNlIG9yIGluY3JlYXNlIHRoZVxuLy8gaGVpZ2h0IGFuZCBmb250LXNpemUgb2YgZm9ybSBjb250cm9scy5cbi8vXG4vLyBUaGUgYC5mb3JtLWdyb3VwLSogZm9ybS1jb250cm9sYCB2YXJpYXRpb25zIGFyZSBzYWRseSBkdXBsaWNhdGVkIHRvIGF2b2lkIHRoZVxuLy8gaXNzdWUgZG9jdW1lbnRlZCBpbiBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzE1MDc0LlxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtc20nLCAkaW5wdXQtaGVpZ2h0LXNtYWxsLCAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1zbWFsbCwgJGxpbmUtaGVpZ2h0LXNtYWxsLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG4uZm9ybS1ncm91cC1zbSB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LXNtYWxsO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLXNtYWxsO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1zbWFsbCk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1zbWFsbDtcbiAgfVxufVxuXG5AaW5jbHVkZSBpbnB1dC1zaXplKCcuaW5wdXQtbGcnLCAkaW5wdXQtaGVpZ2h0LWxhcmdlLCAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbCwgJGZvbnQtc2l6ZS1sYXJnZSwgJGxpbmUtaGVpZ2h0LWxhcmdlLCAkaW5wdXQtYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG4uZm9ybS1ncm91cC1sZyB7XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBwYWRkaW5nOiAkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsO1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWxhcmdlO1xuICAgIGJvcmRlci1yYWRpdXM6ICRpbnB1dC1ib3JkZXItcmFkaXVzLWxhcmdlO1xuICB9XG4gIHNlbGVjdC5mb3JtLWNvbnRyb2wge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgfVxuICB0ZXh0YXJlYS5mb3JtLWNvbnRyb2wsXG4gIHNlbGVjdFttdWx0aXBsZV0uZm9ybS1jb250cm9sIHtcbiAgICBoZWlnaHQ6IGF1dG87XG4gIH1cbiAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgIGhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgICBtaW4taGVpZ2h0OiAoJGxpbmUtaGVpZ2h0LWNvbXB1dGVkICsgJGZvbnQtc2l6ZS1sYXJnZSk7XG4gICAgcGFkZGluZzogKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsICsgMSkgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1sYXJnZTtcbiAgfVxufVxuXG5cbi8vIEZvcm0gY29udHJvbCBmZWVkYmFjayBzdGF0ZXNcbi8vXG4vLyBBcHBseSBjb250ZXh0dWFsIGFuZCBzZW1hbnRpYyBzdGF0ZXMgdG8gaW5kaXZpZHVhbCBmb3JtIGNvbnRyb2xzLlxuXG4uaGFzLWZlZWRiYWNrIHtcbiAgLy8gRW5hYmxlIGFic29sdXRlIHBvc2l0aW9uaW5nXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAvLyBFbnN1cmUgaWNvbnMgZG9uJ3Qgb3ZlcmxhcCB0ZXh0XG4gIC5mb3JtLWNvbnRyb2wge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkaW5wdXQtaGVpZ2h0LWJhc2UgKiAxLjI1KTtcbiAgfVxufVxuLy8gRmVlZGJhY2sgaWNvbiAocmVxdWlyZXMgLmdseXBoaWNvbiBjbGFzc2VzKVxuLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgei1pbmRleDogMjsgLy8gRW5zdXJlIGljb24gaXMgYWJvdmUgaW5wdXQgZ3JvdXBzXG4gIGRpc3BsYXk6IGJsb2NrO1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1iYXNlO1xuICBoZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgbGluZS1oZWlnaHQ6ICRpbnB1dC1oZWlnaHQtYmFzZTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBwb2ludGVyLWV2ZW50czogbm9uZTtcbn1cbi5pbnB1dC1sZyArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtbGcgKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtbGcgLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1sYXJnZTtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LWxhcmdlO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1sYXJnZTtcbn1cbi5pbnB1dC1zbSArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2ssXG4uaW5wdXQtZ3JvdXAtc20gKyAuZm9ybS1jb250cm9sLWZlZWRiYWNrLFxuLmZvcm0tZ3JvdXAtc20gLmZvcm0tY29udHJvbCArIC5mb3JtLWNvbnRyb2wtZmVlZGJhY2sge1xuICB3aWR0aDogJGlucHV0LWhlaWdodC1zbWFsbDtcbiAgaGVpZ2h0OiAkaW5wdXQtaGVpZ2h0LXNtYWxsO1xuICBsaW5lLWhlaWdodDogJGlucHV0LWhlaWdodC1zbWFsbDtcbn1cblxuLy8gRmVlZGJhY2sgc3RhdGVzXG4uaGFzLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy10ZXh0LCAkc3RhdGUtc3VjY2Vzcy1iZyk7XG59XG4uaGFzLXdhcm5pbmcge1xuICBAaW5jbHVkZSBmb3JtLWNvbnRyb2wtdmFsaWRhdGlvbigkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy10ZXh0LCAkc3RhdGUtd2FybmluZy1iZyk7XG59XG4uaGFzLWVycm9yIHtcbiAgQGluY2x1ZGUgZm9ybS1jb250cm9sLXZhbGlkYXRpb24oJHN0YXRlLWRhbmdlci10ZXh0LCAkc3RhdGUtZGFuZ2VyLXRleHQsICRzdGF0ZS1kYW5nZXItYmcpO1xufVxuXG4vLyBSZXBvc2l0aW9uIGZlZWRiYWNrIGljb24gaWYgaW5wdXQgaGFzIHZpc2libGUgbGFiZWwgYWJvdmVcbi5oYXMtZmVlZGJhY2sgbGFiZWwge1xuXG4gICYgfiAuZm9ybS1jb250cm9sLWZlZWRiYWNrIHtcbiAgICB0b3A6ICgkbGluZS1oZWlnaHQtY29tcHV0ZWQgKyA1KTsgLy8gSGVpZ2h0IG9mIHRoZSBgbGFiZWxgIGFuZCBpdHMgbWFyZ2luXG4gIH1cbiAgJi5zci1vbmx5IH4gLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgdG9wOiAwO1xuICB9XG59XG5cblxuLy8gSGVscCB0ZXh0XG4vL1xuLy8gQXBwbHkgdG8gYW55IGVsZW1lbnQgeW91IHdpc2ggdG8gY3JlYXRlIGxpZ2h0IHRleHQgZm9yIHBsYWNlbWVudCBpbW1lZGlhdGVseVxuLy8gYmVsb3cgYSBmb3JtIGNvbnRyb2wuIFVzZSBmb3IgZ2VuZXJhbCBoZWxwLCBmb3JtYXR0aW5nLCBvciBpbnN0cnVjdGlvbmFsIHRleHQuXG5cbi5oZWxwLWJsb2NrIHtcbiAgZGlzcGxheTogYmxvY2s7IC8vIGFjY291bnQgZm9yIGFueSBlbGVtZW50IHVzaW5nIGhlbHAtYmxvY2tcbiAgbWFyZ2luLXRvcDogNXB4O1xuICBtYXJnaW4tYm90dG9tOiAxMHB4O1xuICBjb2xvcjogbGlnaHRlbigkdGV4dC1jb2xvciwgMjUlKTsgLy8gbGlnaHRlbiB0aGUgdGV4dCBzb21lIGZvciBjb250cmFzdFxufVxuXG5cbi8vIElubGluZSBmb3Jtc1xuLy9cbi8vIE1ha2UgZm9ybXMgYXBwZWFyIGlubGluZSgtYmxvY2spIGJ5IGFkZGluZyB0aGUgYC5mb3JtLWlubGluZWAgY2xhc3MuIElubGluZVxuLy8gZm9ybXMgYmVnaW4gc3RhY2tlZCBvbiBleHRyYSBzbWFsbCAobW9iaWxlKSBkZXZpY2VzIGFuZCB0aGVuIGdvIGlubGluZSB3aGVuXG4vLyB2aWV3cG9ydHMgcmVhY2ggPDc2OHB4LlxuLy9cbi8vIFJlcXVpcmVzIHdyYXBwaW5nIGlucHV0cyBhbmQgbGFiZWxzIHdpdGggYC5mb3JtLWdyb3VwYCBmb3IgcHJvcGVyIGRpc3BsYXkgb2Zcbi8vIGRlZmF1bHQgSFRNTCBmb3JtIGNvbnRyb2xzIGFuZCBvdXIgY3VzdG9tIGZvcm0gY29udHJvbHMgKGUuZy4sIGlucHV0IGdyb3VwcykuXG4vL1xuLy8gSGVhZHMgdXAhIFRoaXMgaXMgbWl4aW4tZWQgaW50byBgLm5hdmJhci1mb3JtYCBpbiBuYXZiYXJzLmxlc3MuXG5cbi8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBmcm9tIGAuZm9ybS1pbmxpbmVgIGZvciBsaWJzYXNzIGNvbXBhdGliaWxpdHlcbkBtaXhpbiBmb3JtLWlubGluZSB7XG5cbiAgLy8gS2ljayBpbiB0aGUgaW5saW5lXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuICAgIC8vIElubGluZS1ibG9jayBhbGwgdGhlIHRoaW5ncyBmb3IgXCJpbmxpbmVcIlxuICAgIC5mb3JtLWdyb3VwIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIEluIG5hdmJhci1mb3JtLCBhbGxvdyBmb2xrcyB0byAqbm90KiB1c2UgYC5mb3JtLWdyb3VwYFxuICAgIC5mb3JtLWNvbnRyb2wge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgd2lkdGg6IGF1dG87IC8vIFByZXZlbnQgbGFiZWxzIGZyb20gc3RhY2tpbmcgYWJvdmUgaW5wdXRzIGluIGAuZm9ybS1ncm91cGBcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdGF0aWMgY29udHJvbHMgYmVoYXZlIGxpa2UgcmVndWxhciBvbmVzXG4gICAgLmZvcm0tY29udHJvbC1zdGF0aWMge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgIH1cblxuICAgIC5pbnB1dC1ncm91cCB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtdGFibGU7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICAuaW5wdXQtZ3JvdXAtYWRkb24sXG4gICAgICAuaW5wdXQtZ3JvdXAtYnRuLFxuICAgICAgLmZvcm0tY29udHJvbCB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIElucHV0IGdyb3VwcyBuZWVkIHRoYXQgMTAwJSB3aWR0aCB0aG91Z2hcbiAgICAuaW5wdXQtZ3JvdXAgPiAuZm9ybS1jb250cm9sIHtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgIH1cblxuICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vIFJlbW92ZSBkZWZhdWx0IG1hcmdpbiBvbiByYWRpb3MvY2hlY2tib3hlcyB0aGF0IHdlcmUgdXNlZCBmb3Igc3RhY2tpbmcsIGFuZFxuICAgIC8vIHRoZW4gdW5kbyB0aGUgZmxvYXRpbmcgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzIHRvIG1hdGNoLlxuICAgIC5yYWRpbyxcbiAgICAuY2hlY2tib3gge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgbWFyZ2luLXRvcDogMDtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXG4gICAgICBsYWJlbCB7XG4gICAgICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICAgIH1cbiAgICB9XG4gICAgLnJhZGlvIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICAuY2hlY2tib3ggaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgIH1cblxuICAgIC8vIFJlLW92ZXJyaWRlIHRoZSBmZWVkYmFjayBpY29uLlxuICAgIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgICB0b3A6IDA7XG4gICAgfVxuICB9XG59XG4vLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYXMgYEBtaXhpbiBmb3JtLWlubGluZWAgZm9yIGxpYnNhc3MgY29tcGF0aWJpbGl0eVxuLmZvcm0taW5saW5lIHtcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG59XG5cblxuXG4vLyBIb3Jpem9udGFsIGZvcm1zXG4vL1xuLy8gSG9yaXpvbnRhbCBmb3JtcyBhcmUgYnVpbHQgb24gZ3JpZCBjbGFzc2VzIGFuZCBhbGxvdyB5b3UgdG8gY3JlYXRlIGZvcm1zIHdpdGhcbi8vIGxhYmVscyBvbiB0aGUgbGVmdCBhbmQgaW5wdXRzIG9uIHRoZSByaWdodC5cblxuLmZvcm0taG9yaXpvbnRhbCB7XG5cbiAgLy8gQ29uc2lzdGVudCB2ZXJ0aWNhbCBhbGlnbm1lbnQgb2YgcmFkaW9zIGFuZCBjaGVja2JveGVzXG4gIC8vXG4gIC8vIExhYmVscyBhbHNvIGdldCBzb21lIHJlc2V0IHN0eWxlcywgYnV0IHRoYXQgaXMgc2NvcGVkIHRvIGEgbWVkaWEgcXVlcnkgYmVsb3cuXG4gIC5yYWRpbyxcbiAgLmNoZWNrYm94LFxuICAucmFkaW8taW5saW5lLFxuICAuY2hlY2tib3gtaW5saW5lIHtcbiAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gIH1cbiAgLy8gQWNjb3VudCBmb3IgcGFkZGluZyB3ZSdyZSBhZGRpbmcgdG8gZW5zdXJlIHRoZSBhbGlnbm1lbnQgYW5kIG9mIGhlbHAgdGV4dFxuICAvLyBhbmQgb3RoZXIgY29udGVudCBiZWxvdyBpdGVtc1xuICAucmFkaW8sXG4gIC5jaGVja2JveCB7XG4gICAgbWluLWhlaWdodDogKCRsaW5lLWhlaWdodC1jb21wdXRlZCArICgkcGFkZGluZy1iYXNlLXZlcnRpY2FsICsgMSkpO1xuICB9XG5cbiAgLy8gTWFrZSBmb3JtIGdyb3VwcyBiZWhhdmUgbGlrZSByb3dzXG4gIC5mb3JtLWdyb3VwIHtcbiAgICBAaW5jbHVkZSBtYWtlLXJvdztcbiAgfVxuXG4gIC8vIFJlc2V0IHNwYWNpbmcgYW5kIHJpZ2h0IGFsaWduIGxhYmVscywgYnV0IHNjb3BlIHRvIG1lZGlhIHF1ZXJpZXMgc28gdGhhdFxuICAvLyBsYWJlbHMgb24gbmFycm93IHZpZXdwb3J0cyBzdGFjayB0aGUgc2FtZSBhcyBhIGRlZmF1bHQgZm9ybSBleGFtcGxlLlxuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAuY29udHJvbC1sYWJlbCB7XG4gICAgICBwYWRkaW5nLXRvcDogKCRwYWRkaW5nLWJhc2UtdmVydGljYWwgKyAxKTsgLy8gRGVmYXVsdCBwYWRkaW5nIHBsdXMgYSBib3JkZXJcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgICB9XG4gIH1cblxuICAvLyBWYWxpZGF0aW9uIHN0YXRlc1xuICAvL1xuICAvLyBSZXBvc2l0aW9uIHRoZSBpY29uIGJlY2F1c2UgaXQncyBub3cgd2l0aGluIGEgZ3JpZCBjb2x1bW4gYW5kIGNvbHVtbnMgaGF2ZVxuICAvLyBgcG9zaXRpb246IHJlbGF0aXZlO2Agb24gdGhlbS4gQWxzbyBhY2NvdW50cyBmb3IgdGhlIGdyaWQgZ3V0dGVyIHBhZGRpbmcuXG4gIC5oYXMtZmVlZGJhY2sgLmZvcm0tY29udHJvbC1mZWVkYmFjayB7XG4gICAgcmlnaHQ6IGZsb29yKCgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKSk7XG4gIH1cblxuICAvLyBGb3JtIGdyb3VwIHNpemVzXG4gIC8vXG4gIC8vIFF1aWNrIHV0aWxpdHkgY2xhc3MgZm9yIGFwcGx5aW5nIGAuaW5wdXQtbGdgIGFuZCBgLmlucHV0LXNtYCBzdHlsZXMgdG8gdGhlXG4gIC8vIGlucHV0cyBhbmQgbGFiZWxzIHdpdGhpbiBhIGAuZm9ybS1ncm91cGAuXG4gIC5mb3JtLWdyb3VwLWxnIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1sYXJnZS12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5mb3JtLWdyb3VwLXNtIHtcbiAgICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgICAgIC5jb250cm9sLWxhYmVsIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICgkcGFkZGluZy1zbWFsbC12ZXJ0aWNhbCArIDEpO1xuICAgICAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gQnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIHN0eWxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0biB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgbWFyZ2luLWJvdHRvbTogMDsgLy8gRm9yIGlucHV0LmJ0blxuICBmb250LXdlaWdodDogJGJ0bi1mb250LXdlaWdodDtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICB0b3VjaC1hY3Rpb246IG1hbmlwdWxhdGlvbjtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZXNldCB1bnVzdWFsIEZpcmVmb3gtb24tQW5kcm9pZCBkZWZhdWx0IHN0eWxlOyBzZWUgaHR0cHM6Ly9naXRodWIuY29tL25lY29sYXMvbm9ybWFsaXplLmNzcy9pc3N1ZXMvMjE0XG4gIGJvcmRlcjogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZy1iYXNlLXZlcnRpY2FsLCAkcGFkZGluZy1iYXNlLWhvcml6b250YWwsICRmb250LXNpemUtYmFzZSwgJGxpbmUtaGVpZ2h0LWJhc2UsICRidG4tYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgQGluY2x1ZGUgdXNlci1zZWxlY3Qobm9uZSk7XG5cbiAgJixcbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICAmOmZvY3VzLFxuICAgICYuZm9jdXMge1xuICAgICAgQGluY2x1ZGUgdGFiLWZvY3VzO1xuICAgIH1cbiAgfVxuXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICYuZm9jdXMge1xuICAgIGNvbG9yOiAkYnRuLWRlZmF1bHQtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgJjphY3RpdmUsXG4gICYuYWN0aXZlIHtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhpbnNldCAwIDNweCA1cHggcmdiYSgwLCAwLCAwLCAuMTI1KSk7XG4gIH1cblxuICAmLmRpc2FibGVkLFxuICAmW2Rpc2FibGVkXSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBAaW5jbHVkZSBvcGFjaXR5KC42NSk7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxuXG4gIC8vIFtjb252ZXJ0ZXJdIGV4dHJhY3RlZCBhJiB0byBhLmJ0blxufVxuXG5hLmJ0biB7XG4gICYuZGlzYWJsZWQsXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBwb2ludGVyLWV2ZW50czogbm9uZTsgLy8gRnV0dXJlLXByb29mIGRpc2FibGluZyBvZiBjbGlja3Mgb24gYDxhPmAgZWxlbWVudHNcbiAgfVxufVxuXG5cbi8vIEFsdGVybmF0ZSBidXR0b25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYnRuLWRlZmF1bHQge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWRlZmF1bHQtY29sb3IsICRidG4tZGVmYXVsdC1iZywgJGJ0bi1kZWZhdWx0LWJvcmRlcik7XG59XG4uYnRuLXByaW1hcnkge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXByaW1hcnktY29sb3IsICRidG4tcHJpbWFyeS1iZywgJGJ0bi1wcmltYXJ5LWJvcmRlcik7XG59XG4vLyBTdWNjZXNzIGFwcGVhcnMgYXMgZ3JlZW5cbi5idG4tc3VjY2VzcyB7XG4gIEBpbmNsdWRlIGJ1dHRvbi12YXJpYW50KCRidG4tc3VjY2Vzcy1jb2xvciwgJGJ0bi1zdWNjZXNzLWJnLCAkYnRuLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi8vIEluZm8gYXBwZWFycyBhcyBibHVlLWdyZWVuXG4uYnRuLWluZm8ge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLWluZm8tY29sb3IsICRidG4taW5mby1iZywgJGJ0bi1pbmZvLWJvcmRlcik7XG59XG4vLyBXYXJuaW5nIGFwcGVhcnMgYXMgb3JhbmdlXG4uYnRuLXdhcm5pbmcge1xuICBAaW5jbHVkZSBidXR0b24tdmFyaWFudCgkYnRuLXdhcm5pbmctY29sb3IsICRidG4td2FybmluZy1iZywgJGJ0bi13YXJuaW5nLWJvcmRlcik7XG59XG4vLyBEYW5nZXIgYW5kIGVycm9yIGFwcGVhciBhcyByZWRcbi5idG4tZGFuZ2VyIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXZhcmlhbnQoJGJ0bi1kYW5nZXItY29sb3IsICRidG4tZGFuZ2VyLWJnLCAkYnRuLWRhbmdlci1ib3JkZXIpO1xufVxuXG5cbi8vIExpbmsgYnV0dG9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIGEgYnV0dG9uIGxvb2sgYW5kIGJlaGF2ZSBsaWtlIGEgbGlua1xuLmJ0bi1saW5rIHtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgY29sb3I6ICRsaW5rLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAwO1xuXG4gICYsXG4gICY6YWN0aXZlLFxuICAmLmFjdGl2ZSxcbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KG5vbmUpO1xuICB9XG4gICYsXG4gICY6aG92ZXIsXG4gICY6Zm9jdXMsXG4gICY6YWN0aXZlIHtcbiAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICB9XG4gICY6aG92ZXIsXG4gICY6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246ICRsaW5rLWhvdmVyLWRlY29yYXRpb247XG4gICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gIH1cbiAgJltkaXNhYmxlZF0sXG4gIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgY29sb3I6ICRidG4tbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBCdXR0b24gU2l6ZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tbGcge1xuICAvLyBsaW5lLWhlaWdodDogZW5zdXJlIGV2ZW4tbnVtYmVyZWQgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIGxhcmdlIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLWxhcmdlLXZlcnRpY2FsLCAkcGFkZGluZy1sYXJnZS1ob3Jpem9udGFsLCAkZm9udC1zaXplLWxhcmdlLCAkbGluZS1oZWlnaHQtbGFyZ2UsICRidG4tYm9yZGVyLXJhZGl1cy1sYXJnZSk7XG59XG4uYnRuLXNtIHtcbiAgLy8gbGluZS1oZWlnaHQ6IGVuc3VyZSBwcm9wZXIgaGVpZ2h0IG9mIGJ1dHRvbiBuZXh0IHRvIHNtYWxsIGlucHV0XG4gIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nLXNtYWxsLXZlcnRpY2FsLCAkcGFkZGluZy1zbWFsbC1ob3Jpem9udGFsLCAkZm9udC1zaXplLXNtYWxsLCAkbGluZS1oZWlnaHQtc21hbGwsICRidG4tYm9yZGVyLXJhZGl1cy1zbWFsbCk7XG59XG4uYnRuLXhzIHtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcteHMtdmVydGljYWwsICRwYWRkaW5nLXhzLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJ0bi1ib3JkZXItcmFkaXVzLXNtYWxsKTtcbn1cblxuXG4vLyBCbG9jayBidXR0b25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5idG4tYmxvY2sge1xuICBkaXNwbGF5OiBibG9jaztcbiAgd2lkdGg6IDEwMCU7XG59XG5cbi8vIFZlcnRpY2FsbHkgc3BhY2Ugb3V0IG11bHRpcGxlIGJsb2NrIGJ1dHRvbnNcbi5idG4tYmxvY2sgKyAuYnRuLWJsb2NrIHtcbiAgbWFyZ2luLXRvcDogNXB4O1xufVxuXG4vLyBTcGVjaWZpY2l0eSBvdmVycmlkZXNcbmlucHV0W3R5cGU9XCJzdWJtaXRcIl0sXG5pbnB1dFt0eXBlPVwicmVzZXRcIl0sXG5pbnB1dFt0eXBlPVwiYnV0dG9uXCJdIHtcbiAgJi5idG4tYmxvY2sge1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG4iLCIvL1xuLy8gQ29tcG9uZW50IGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhlYWRzIHVwIVxuLy9cbi8vIFdlIGRvbid0IHVzZSB0aGUgYC5vcGFjaXR5KClgIG1peGluIGhlcmUgc2luY2UgaXQgY2F1c2VzIGEgYnVnIHdpdGggdGV4dFxuLy8gZmllbGRzIGluIElFNy04LiBTb3VyY2U6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzM1NTIuXG5cbi5mYWRlIHtcbiAgb3BhY2l0eTogMDtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihvcGFjaXR5IC4xNXMgbGluZWFyKTtcblxuICAmLmluIHtcbiAgICBvcGFjaXR5OiAxO1xuICB9XG59XG5cbi5jb2xsYXBzZSB7XG4gIGRpc3BsYXk6IG5vbmU7XG5cbiAgJi5pbiAgICAgIHsgZGlzcGxheTogYmxvY2s7IH1cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIHRyJi5pbiB0byB0ci5jb2xsYXBzZS5pblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgdGJvZHkmLmluIHRvIHRib2R5LmNvbGxhcHNlLmluXG59XG5cbnRyLmNvbGxhcHNlLmluICAgIHsgZGlzcGxheTogdGFibGUtcm93OyB9XG5cbnRib2R5LmNvbGxhcHNlLmluIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwOyB9XG5cbi5jb2xsYXBzaW5nIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBoZWlnaHQ6IDA7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIEBpbmNsdWRlIHRyYW5zaXRpb24tcHJvcGVydHkoaGVpZ2h0LCB2aXNpYmlsaXR5KTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi1kdXJhdGlvbiguMzVzKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbi10aW1pbmctZnVuY3Rpb24oZWFzZSk7XG59XG4iLCIvL1xuLy8gRHJvcGRvd24gbWVudXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRHJvcGRvd24gYXJyb3cvY2FyZXRcbi5jYXJldCB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgd2lkdGg6IDA7XG4gIGhlaWdodDogMDtcbiAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbiAgYm9yZGVyLXRvcDogJGNhcmV0LXdpZHRoLWJhc2UgZGFzaGVkO1xuICBib3JkZXItdG9wOiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICBib3JkZXItcmlnaHQ6ICRjYXJldC13aWR0aC1iYXNlIHNvbGlkIHRyYW5zcGFyZW50O1xuICBib3JkZXItbGVmdDogJGNhcmV0LXdpZHRoLWJhc2Ugc29saWQgdHJhbnNwYXJlbnQ7XG59XG5cbi8vIFRoZSBkcm9wZG93biB3cmFwcGVyIChkaXYpXG4uZHJvcHVwLFxuLmRyb3Bkb3duIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xufVxuXG4vLyBQcmV2ZW50IHRoZSBmb2N1cyBvbiB0aGUgZHJvcGRvd24gdG9nZ2xlIHdoZW4gY2xvc2luZyBkcm9wZG93bnNcbi5kcm9wZG93bi10b2dnbGU6Zm9jdXMge1xuICBvdXRsaW5lOiAwO1xufVxuXG4vLyBUaGUgZHJvcGRvd24gbWVudSAodWwpXG4uZHJvcGRvd24tbWVudSB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAxMDAlO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAkemluZGV4LWRyb3Bkb3duO1xuICBkaXNwbGF5OiBub25lOyAvLyBub25lIGJ5IGRlZmF1bHQsIGJ1dCBibG9jayBvbiBcIm9wZW5cIiBvZiB0aGUgbWVudVxuICBmbG9hdDogbGVmdDtcbiAgbWluLXdpZHRoOiAxNjBweDtcbiAgcGFkZGluZzogNXB4IDA7XG4gIG1hcmdpbjogMnB4IDAgMDsgLy8gb3ZlcnJpZGUgZGVmYXVsdCB1bFxuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgdGV4dC1hbGlnbjogbGVmdDsgLy8gRW5zdXJlcyBwcm9wZXIgYWxpZ25tZW50IGlmIHBhcmVudCBoYXMgaXQgY2hhbmdlZCAoZS5nLiwgbW9kYWwgZm9vdGVyKVxuICBsaXN0LXN0eWxlOiBub25lO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRkcm9wZG93bi1mYWxsYmFjay1ib3JkZXI7IC8vIElFOCBmYWxsYmFja1xuICBib3JkZXI6IDFweCBzb2xpZCAkZHJvcGRvd24tYm9yZGVyO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNnB4IDEycHggcmdiYSgwLCAwLCAwLCAuMTc1KSk7XG5cbiAgLy8gQWxpZ25zIHRoZSBkcm9wZG93biBtZW51IHRvIHJpZ2h0XG4gIC8vXG4gIC8vIERlcHJlY2F0ZWQgYXMgb2YgMy4xLjAgaW4gZmF2b3Igb2YgYC5kcm9wZG93bi1tZW51LVtkaXJdYFxuICAmLnB1bGwtcmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cblxuICAvLyBEaXZpZGVycyAoYmFzaWNhbGx5IGFuIGhyKSB3aXRoaW4gdGhlIGRyb3Bkb3duXG4gIC5kaXZpZGVyIHtcbiAgICBAaW5jbHVkZSBuYXYtZGl2aWRlcigkZHJvcGRvd24tZGl2aWRlci1iZyk7XG4gIH1cblxuICAvLyBMaW5rcyB3aXRoaW4gdGhlIGRyb3Bkb3duIG1lbnVcbiAgPiBsaSA+IGEge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHBhZGRpbmc6IDNweCAyMHB4O1xuICAgIGNsZWFyOiBib3RoO1xuICAgIGZvbnQtd2VpZ2h0OiA0MDA7XG4gICAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICAgIGNvbG9yOiAkZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICB3aGl0ZS1zcGFjZTogbm93cmFwOyAvLyBwcmV2ZW50IGxpbmtzIGZyb20gcmFuZG9tbHkgYnJlYWtpbmcgb250byBuZXcgbGluZXNcblxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstaG92ZXItY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkZHJvcGRvd24tbGluay1ob3Zlci1iZztcbiAgICB9XG4gIH1cbn1cblxuLy8gQWN0aXZlIHN0YXRlXG4uZHJvcGRvd24tbWVudSA+IC5hY3RpdmUgPiBhIHtcbiAgJixcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRkcm9wZG93bi1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGRyb3Bkb3duLWxpbmstYWN0aXZlLWJnO1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gRGlzYWJsZWQgc3RhdGVcbi8vXG4vLyBHcmF5IG91dCB0ZXh0IGFuZCBlbnN1cmUgdGhlIGhvdmVyL2ZvY3VzIHN0YXRlIHJlbWFpbnMgZ3JheVxuXG4uZHJvcGRvd24tbWVudSA+IC5kaXNhYmxlZCA+IGEge1xuICAmLFxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGRyb3Bkb3duLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gIH1cblxuICAvLyBOdWtlIGhvdmVyL2ZvY3VzIGVmZmVjdHNcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogJGN1cnNvci1kaXNhYmxlZDtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICBiYWNrZ3JvdW5kLWltYWdlOiBub25lOyAvLyBSZW1vdmUgQ1NTIGdyYWRpZW50XG4gICAgQGluY2x1ZGUgcmVzZXQtZmlsdGVyO1xuICB9XG59XG5cbi8vIE9wZW4gc3RhdGUgZm9yIHRoZSBkcm9wZG93blxuLm9wZW4ge1xuICAvLyBTaG93IHRoZSBtZW51XG4gID4gLmRyb3Bkb3duLW1lbnUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgLy8gUmVtb3ZlIHRoZSBvdXRsaW5lIHdoZW4gOmZvY3VzIGlzIHRyaWdnZXJlZFxuICA+IGEge1xuICAgIG91dGxpbmU6IDA7XG4gIH1cbn1cblxuLy8gTWVudSBwb3NpdGlvbmluZ1xuLy9cbi8vIEFkZCBleHRyYSBjbGFzcyB0byBgLmRyb3Bkb3duLW1lbnVgIHRvIGZsaXAgdGhlIGFsaWdubWVudCBvZiB0aGUgZHJvcGRvd25cbi8vIG1lbnUgd2l0aCB0aGUgcGFyZW50LlxuLmRyb3Bkb3duLW1lbnUtcmlnaHQge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bzsgLy8gUmVzZXQgdGhlIGRlZmF1bHQgZnJvbSBgLmRyb3Bkb3duLW1lbnVgXG59XG4vLyBXaXRoIHYzLCB3ZSBlbmFibGVkIGF1dG8tZmxpcHBpbmcgaWYgeW91IGhhdmUgYSBkcm9wZG93biB3aXRoaW4gYSByaWdodFxuLy8gYWxpZ25lZCBuYXYgY29tcG9uZW50LiBUbyBlbmFibGUgdGhlIHVuZG9pbmcgb2YgdGhhdCwgd2UgcHJvdmlkZSBhbiBvdmVycmlkZVxuLy8gdG8gcmVzdG9yZSB0aGUgZGVmYXVsdCBkcm9wZG93biBtZW51IGFsaWdubWVudC5cbi8vXG4vLyBUaGlzIGlzIG9ubHkgZm9yIGxlZnQtYWxpZ25pbmcgYSBkcm9wZG93biBtZW51IHdpdGhpbiBhIGAubmF2YmFyLXJpZ2h0YCBvclxuLy8gYC5wdWxsLXJpZ2h0YCBuYXYgY29tcG9uZW50LlxuLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gIHJpZ2h0OiBhdXRvO1xuICBsZWZ0OiAwO1xufVxuXG4vLyBEcm9wZG93biBzZWN0aW9uIGhlYWRlcnNcbi5kcm9wZG93bi1oZWFkZXIge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogM3B4IDIwcHg7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcbiAgbGluZS1oZWlnaHQ6ICRsaW5lLWhlaWdodC1iYXNlO1xuICBjb2xvcjogJGRyb3Bkb3duLWhlYWRlci1jb2xvcjtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDsgLy8gYXMgd2l0aCA+IGxpID4gYVxufVxuXG4vLyBCYWNrZHJvcCB0byBjYXRjaCBib2R5IGNsaWNrcyBvbiBtb2JpbGUsIGV0Yy5cbi5kcm9wZG93bi1iYWNrZHJvcCB7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgdG9wOiAwO1xuICByaWdodDogMDtcbiAgYm90dG9tOiAwO1xuICBsZWZ0OiAwO1xuICB6LWluZGV4OiAoJHppbmRleC1kcm9wZG93biAtIDEwKTtcbn1cblxuLy8gUmlnaHQgYWxpZ25lZCBkcm9wZG93bnNcbi5wdWxsLXJpZ2h0ID4gLmRyb3Bkb3duLW1lbnUge1xuICByaWdodDogMDtcbiAgbGVmdDogYXV0bztcbn1cblxuLy8gQWxsb3cgZm9yIGRyb3Bkb3ducyB0byBnbyBib3R0b20gdXAgKGFrYSwgZHJvcHVwLW1lbnUpXG4vL1xuLy8gSnVzdCBhZGQgLmRyb3B1cCBhZnRlciB0aGUgc3RhbmRhcmQgLmRyb3Bkb3duIGNsYXNzIGFuZCB5b3UncmUgc2V0LCBicm8uXG4vLyBUT0RPOiBhYnN0cmFjdCB0aGlzIHNvIHRoYXQgdGhlIG5hdmJhciBmaXhlZCBzdHlsZXMgYXJlIG5vdCBwbGFjZWQgaGVyZT9cblxuLmRyb3B1cCxcbi5uYXZiYXItZml4ZWQtYm90dG9tIC5kcm9wZG93biB7XG4gIC8vIFJldmVyc2UgdGhlIGNhcmV0XG4gIC5jYXJldCB7XG4gICAgY29udGVudDogXCJcIjtcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJvcmRlci1ib3R0b206ICRjYXJldC13aWR0aC1iYXNlIGRhc2hlZDtcbiAgICBib3JkZXItYm90dG9tOiAkY2FyZXQtd2lkdGgtYmFzZSBzb2xpZCBcXDk7IC8vIElFOFxuICB9XG4gIC8vIERpZmZlcmVudCBwb3NpdGlvbmluZyBmb3IgYm90dG9tIHVwIG1lbnVcbiAgLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBib3R0b206IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMnB4O1xuICB9XG59XG5cblxuLy8gQ29tcG9uZW50IGFsaWdubWVudFxuLy9cbi8vIFJlaXRlcmF0ZSBwZXIgbmF2YmFyLmxlc3MgYW5kIHRoZSBtb2RpZmllZCBjb21wb25lbnQgYWxpZ25tZW50IHRoZXJlLlxuXG5AbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAubmF2YmFyLXJpZ2h0IHtcbiAgICAuZHJvcGRvd24tbWVudSB7XG4gICAgICByaWdodDogMDsgbGVmdDogYXV0bztcbiAgICB9XG4gICAgLy8gTmVjZXNzYXJ5IGZvciBvdmVycmlkZXMgb2YgdGhlIGRlZmF1bHQgcmlnaHQgYWxpZ25lZCBtZW51LlxuICAgIC8vIFdpbGwgcmVtb3ZlIGNvbWUgdjQgaW4gYWxsIGxpa2VsaWhvb2QuXG4gICAgLmRyb3Bkb3duLW1lbnUtbGVmdCB7XG4gICAgICBsZWZ0OiAwOyByaWdodDogYXV0bztcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBCdXR0b24gZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBNYWtlIHRoZSBkaXYgYmVoYXZlIGxpa2UgYSBidXR0b25cbi5idG4tZ3JvdXAsXG4uYnRuLWdyb3VwLXZlcnRpY2FsIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIG1hdGNoIC5idG4gYWxpZ25tZW50IGdpdmVuIGZvbnQtc2l6ZSBoYWNrIGFib3ZlXG4gID4gLmJ0biB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIGZsb2F0OiBsZWZ0O1xuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUsXG4gICAgJi5hY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cbn1cblxuLy8gUHJldmVudCBkb3VibGUgYm9yZGVycyB3aGVuIGJ1dHRvbnMgYXJlIG5leHQgdG8gZWFjaCBvdGhlclxuLmJ0bi1ncm91cCB7XG4gIC5idG4gKyAuYnRuLFxuICAuYnRuICsgLmJ0bi1ncm91cCxcbiAgLmJ0bi1ncm91cCArIC5idG4sXG4gIC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxufVxuXG4vLyBPcHRpb25hbDogR3JvdXAgbXVsdGlwbGUgYnV0dG9uIGdyb3VwcyB0b2dldGhlciBmb3IgYSB0b29sYmFyXG4uYnRuLXRvb2xiYXIge1xuICBtYXJnaW4tbGVmdDogLTVweDsgLy8gT2Zmc2V0IHRoZSBmaXJzdCBjaGlsZCdzIG1hcmdpblxuICBAaW5jbHVkZSBjbGVhcmZpeDtcblxuICAuYnRuLFxuICAuYnRuLWdyb3VwLFxuICAuaW5wdXQtZ3JvdXAge1xuICAgIGZsb2F0OiBsZWZ0O1xuICB9XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5pbnB1dC1ncm91cCB7XG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxufVxuXG4uYnRuLWdyb3VwID4gLmJ0bjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG5cbi8vIFNldCBjb3JuZXJzIGluZGl2aWR1YWwgYmVjYXVzZSBzb21ldGltZXMgYSBzaW5nbGUgYnV0dG9uIGNhbiBiZSBpbiBhIC5idG4tZ3JvdXAgYW5kIHdlIG5lZWQgOmZpcnN0LWNoaWxkIGFuZCA6bGFzdC1jaGlsZCB0byBib3RoIG1hdGNoXG4uYnRuLWdyb3VwID4gLmJ0bjpmaXJzdC1jaGlsZCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xuICAmOm5vdCg6bGFzdC1jaGlsZCk6bm90KC5kcm9wZG93bi10b2dnbGUpIHtcbiAgICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xuICB9XG59XG4vLyBOZWVkIC5kcm9wZG93bi10b2dnbGUgc2luY2UgOmxhc3QtY2hpbGQgZG9lc24ndCBhcHBseSwgZ2l2ZW4gdGhhdCBhIC5kcm9wZG93bi1tZW51IGlzIHVzZWQgaW1tZWRpYXRlbHkgYWZ0ZXIgaXRcbi5idG4tZ3JvdXAgPiAuYnRuOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCksXG4uYnRuLWdyb3VwID4gLmRyb3Bkb3duLXRvZ2dsZTpub3QoOmZpcnN0LWNoaWxkKSB7XG4gIEBpbmNsdWRlIGJvcmRlci1sZWZ0LXJhZGl1cygwKTtcbn1cblxuLy8gQ3VzdG9tIGVkaXRzIGZvciBpbmNsdWRpbmcgYnRuLWdyb3VwcyB3aXRoaW4gYnRuLWdyb3VwcyAodXNlZnVsIGZvciBpbmNsdWRpbmcgZHJvcGRvd24gYnV0dG9ucyB3aXRoaW4gYSBidG4tZ3JvdXApXG4uYnRuLWdyb3VwID4gLmJ0bi1ncm91cCB7XG4gIGZsb2F0OiBsZWZ0O1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBib3JkZXItcmFkaXVzOiAwO1xufVxuLmJ0bi1ncm91cCA+IC5idG4tZ3JvdXA6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gID4gLmJ0bjpsYXN0LWNoaWxkLFxuICA+IC5kcm9wZG93bi10b2dnbGUge1xuICAgIEBpbmNsdWRlIGJvcmRlci1yaWdodC1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuXG4vLyBPbiBhY3RpdmUgYW5kIG9wZW4sIGRvbid0IHNob3cgb3V0bGluZVxuLmJ0bi1ncm91cCAuZHJvcGRvd24tdG9nZ2xlOmFjdGl2ZSxcbi5idG4tZ3JvdXAub3BlbiAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgb3V0bGluZTogMDtcbn1cblxuXG4vLyBTaXppbmdcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBidXR0b24gc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyIG1hbmlwdWxhdGlvbi5cblxuLmJ0bi1ncm91cC14cyA+IC5idG4geyBAZXh0ZW5kIC5idG4teHM7IH1cbi5idG4tZ3JvdXAtc20gPiAuYnRuIHsgQGV4dGVuZCAuYnRuLXNtOyB9XG4uYnRuLWdyb3VwLWxnID4gLmJ0biB7IEBleHRlbmQgLmJ0bi1sZzsgfVxuXG5cbi8vIFNwbGl0IGJ1dHRvbiBkcm9wZG93bnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgbGluZSBiZXR3ZWVuIGJ1dHRvbnMgc29tZSBkZXB0aFxuLmJ0bi1ncm91cCA+IC5idG4gKyAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgcGFkZGluZy1yaWdodDogOHB4O1xuICBwYWRkaW5nLWxlZnQ6IDhweDtcbn1cbi5idG4tZ3JvdXAgPiAuYnRuLWxnICsgLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIHBhZGRpbmctcmlnaHQ6IDEycHg7XG4gIHBhZGRpbmctbGVmdDogMTJweDtcbn1cblxuLy8gVGhlIGNsaWNrYWJsZSBidXR0b24gZm9yIHRvZ2dsaW5nIHRoZSBtZW51XG4vLyBSZW1vdmUgdGhlIGdyYWRpZW50IGFuZCBzZXQgdGhlIHNhbWUgaW5zZXQgc2hhZG93IGFzIHRoZSA6YWN0aXZlIHN0YXRlXG4uYnRuLWdyb3VwLm9wZW4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAzcHggNXB4IHJnYmEoMCwgMCwgMCwgLjEyNSkpO1xuXG4gIC8vIFNob3cgbm8gc2hhZG93IGZvciBgLmJ0bi1saW5rYCBzaW5jZSBpdCBoYXMgbm8gb3RoZXIgYnV0dG9uIHN0eWxlcy5cbiAgJi5idG4tbGluayB7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIFJlcG9zaXRpb24gdGhlIGNhcmV0XG4uYnRuIC5jYXJldCB7XG4gIG1hcmdpbi1sZWZ0OiAwO1xufVxuLy8gQ2FyZXRzIGluIG90aGVyIGJ1dHRvbiBzaXplc1xuLmJ0bi1sZyAuY2FyZXQge1xuICBib3JkZXItd2lkdGg6ICRjYXJldC13aWR0aC1sYXJnZSAkY2FyZXQtd2lkdGgtbGFyZ2UgMDtcbiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMDtcbn1cbi8vIFVwc2lkZSBkb3duIGNhcmV0cyBmb3IgLmRyb3B1cFxuLmRyb3B1cCAuYnRuLWxnIC5jYXJldCB7XG4gIGJvcmRlci13aWR0aDogMCAkY2FyZXQtd2lkdGgtbGFyZ2UgJGNhcmV0LXdpZHRoLWxhcmdlO1xufVxuXG5cbi8vIFZlcnRpY2FsIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC12ZXJ0aWNhbCB7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbm9uZTtcbiAgICB3aWR0aDogMTAwJTtcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhciBmbG9hdHMgc28gZHJvcGRvd24gbWVudXMgY2FuIGJlIHByb3Blcmx5IHBsYWNlZFxuICA+IC5idG4tZ3JvdXAge1xuICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgID4gLmJ0biB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICB9XG4gIH1cblxuICA+IC5idG4gKyAuYnRuLFxuICA+IC5idG4gKyAuYnRuLWdyb3VwLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLFxuICA+IC5idG4tZ3JvdXAgKyAuYnRuLWdyb3VwIHtcbiAgICBtYXJnaW4tdG9wOiAtMXB4O1xuICAgIG1hcmdpbi1sZWZ0OiAwO1xuICB9XG59XG5cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuIHtcbiAgJjpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG4gICY6Zmlyc3QtY2hpbGQ6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgIEBpbmNsdWRlIGJvcmRlci1ib3R0b20tcmFkaXVzKDApO1xuICB9XG4gICY6bGFzdC1jaGlsZDpub3QoOmZpcnN0LWNoaWxkKSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoJGJ0bi1ib3JkZXItcmFkaXVzLWJhc2UpO1xuICB9XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpub3QoOmZpcnN0LWNoaWxkKTpub3QoOmxhc3QtY2hpbGQpID4gLmJ0biB7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG59XG4uYnRuLWdyb3VwLXZlcnRpY2FsID4gLmJ0bi1ncm91cDpmaXJzdC1jaGlsZDpub3QoOmxhc3QtY2hpbGQpIHtcbiAgPiAuYnRuOmxhc3QtY2hpbGQsXG4gID4gLmRyb3Bkb3duLXRvZ2dsZSB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoMCk7XG4gIH1cbn1cbi5idG4tZ3JvdXAtdmVydGljYWwgPiAuYnRuLWdyb3VwOmxhc3QtY2hpbGQ6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuOmZpcnN0LWNoaWxkIHtcbiAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG59XG5cblxuLy8gSnVzdGlmaWVkIGJ1dHRvbiBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmJ0bi1ncm91cC1qdXN0aWZpZWQge1xuICBkaXNwbGF5OiB0YWJsZTtcbiAgd2lkdGg6IDEwMCU7XG4gIHRhYmxlLWxheW91dDogZml4ZWQ7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7XG4gID4gLmJ0bixcbiAgPiAuYnRuLWdyb3VwIHtcbiAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgIGZsb2F0OiBub25lO1xuICAgIHdpZHRoOiAxJTtcbiAgfVxuICA+IC5idG4tZ3JvdXAgLmJ0biB7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5idG4tZ3JvdXAgLmRyb3Bkb3duLW1lbnUge1xuICAgIGxlZnQ6IGF1dG87XG4gIH1cbn1cblxuXG4vLyBDaGVja2JveCBhbmQgcmFkaW8gb3B0aW9uc1xuLy9cbi8vIEluIG9yZGVyIHRvIHN1cHBvcnQgdGhlIGJyb3dzZXIncyBmb3JtIHZhbGlkYXRpb24gZmVlZGJhY2ssIHBvd2VyZWQgYnkgdGhlXG4vLyBgcmVxdWlyZWRgIGF0dHJpYnV0ZSwgd2UgaGF2ZSB0byBcImhpZGVcIiB0aGUgaW5wdXRzIHZpYSBgY2xpcGAuIFdlIGNhbm5vdCB1c2Vcbi8vIGBkaXNwbGF5OiBub25lO2Agb3IgYHZpc2liaWxpdHk6IGhpZGRlbjtgIGFzIHRoYXQgYWxzbyBoaWRlcyB0aGUgcG9wb3Zlci5cbi8vIFNpbXBseSB2aXN1YWxseSBoaWRpbmcgdGhlIGlucHV0cyB2aWEgYG9wYWNpdHlgIHdvdWxkIGxlYXZlIHRoZW0gY2xpY2thYmxlIGluXG4vLyBjZXJ0YWluIGNhc2VzIHdoaWNoIGlzIHByZXZlbnRlZCBieSB1c2luZyBgY2xpcGAgYW5kIGBwb2ludGVyLWV2ZW50c2AuXG4vLyBUaGlzIHdheSwgd2UgZW5zdXJlIGEgRE9NIGVsZW1lbnQgaXMgdmlzaWJsZSB0byBwb3NpdGlvbiB0aGUgcG9wb3ZlciBmcm9tLlxuLy9cbi8vIFNlZSBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvcHVsbC8xMjc5NCBhbmRcbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzE0NTU5IGZvciBtb3JlIGluZm9ybWF0aW9uLlxuXG5bZGF0YS10b2dnbGU9XCJidXR0b25zXCJdIHtcbiAgPiAuYnRuLFxuICA+IC5idG4tZ3JvdXAgPiAuYnRuIHtcbiAgICBpbnB1dFt0eXBlPVwicmFkaW9cIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIGNsaXA6IHJlY3QoMCwgMCwgMCwgMCk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBJbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEJhc2Ugc3R5bGVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7IC8vIEZvciBkcm9wZG93bnNcbiAgZGlzcGxheTogdGFibGU7XG4gIGJvcmRlci1jb2xsYXBzZTogc2VwYXJhdGU7IC8vIHByZXZlbnQgaW5wdXQgZ3JvdXBzIGZyb20gaW5oZXJpdGluZyBib3JkZXIgc3R5bGVzIGZyb20gdGFibGUgY2VsbHMgd2hlbiBwbGFjZWQgd2l0aGluIGEgdGFibGVcblxuICAvLyBVbmRvIHBhZGRpbmcgYW5kIGZsb2F0IG9mIGdyaWQgY2xhc3Nlc1xuICAmW2NsYXNzKj1cImNvbC1cIl0ge1xuICAgIGZsb2F0OiBub25lO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICB9XG5cbiAgLmZvcm0tY29udHJvbCB7XG4gICAgLy8gRW5zdXJlIHRoYXQgdGhlIGlucHV0IGlzIGFsd2F5cyBhYm92ZSB0aGUgKmFwcGVuZGVkKiBhZGRvbiBidXR0b24gZm9yXG4gICAgLy8gcHJvcGVyIGJvcmRlciBjb2xvcnMuXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHotaW5kZXg6IDI7XG5cbiAgICAvLyBJRTkgZnViYXJzIHRoZSBwbGFjZWhvbGRlciBhdHRyaWJ1dGUgaW4gdGV4dCBpbnB1dHMgYW5kIHRoZSBhcnJvd3Mgb25cbiAgICAvLyBzZWxlY3QgZWxlbWVudHMgaW4gaW5wdXQgZ3JvdXBzLiBUbyBmaXggaXQsIHdlIGZsb2F0IHRoZSBpbnB1dC4gRGV0YWlsczpcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vdHdicy9ib290c3RyYXAvaXNzdWVzLzExNTYxI2lzc3VlY29tbWVudC0yODkzNjg1NVxuICAgIGZsb2F0OiBsZWZ0O1xuXG4gICAgd2lkdGg6IDEwMCU7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgICY6Zm9jdXMge1xuICAgICAgei1pbmRleDogMztcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nIG9wdGlvbnNcbi8vXG4vLyBSZW1peCB0aGUgZGVmYXVsdCBmb3JtIGNvbnRyb2wgc2l6aW5nIGNsYXNzZXMgaW50byBuZXcgb25lcyBmb3IgZWFzaWVyXG4vLyBtYW5pcHVsYXRpb24uXG5cbi5pbnB1dC1ncm91cC1sZyA+IC5mb3JtLWNvbnRyb2wsXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtbGcgPiAuaW5wdXQtZ3JvdXAtYnRuID4gLmJ0biB7XG4gIEBleHRlbmQgLmlucHV0LWxnO1xufVxuLmlucHV0LWdyb3VwLXNtID4gLmZvcm0tY29udHJvbCxcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1zbSA+IC5pbnB1dC1ncm91cC1idG4gPiAuYnRuIHtcbiAgQGV4dGVuZCAuaW5wdXQtc207XG59XG5cblxuLy8gRGlzcGxheSBhcyB0YWJsZS1jZWxsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4uaW5wdXQtZ3JvdXAtYWRkb24sXG4uaW5wdXQtZ3JvdXAtYnRuLFxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2wge1xuICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuXG4gICY6bm90KDpmaXJzdC1jaGlsZCk6bm90KDpsYXN0LWNoaWxkKSB7XG4gICAgYm9yZGVyLXJhZGl1czogMDtcbiAgfVxufVxuLy8gQWRkb24gYW5kIGFkZG9uIHdyYXBwZXIgZm9yIGJ1dHRvbnNcbi5pbnB1dC1ncm91cC1hZGRvbixcbi5pbnB1dC1ncm91cC1idG4ge1xuICB3aWR0aDogMSU7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7IC8vIE1hdGNoIHRoZSBpbnB1dHNcbn1cblxuLy8gVGV4dCBpbnB1dCBncm91cHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi5pbnB1dC1ncm91cC1hZGRvbiB7XG4gIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgZm9udC13ZWlnaHQ6IDQwMDtcbiAgbGluZS1oZWlnaHQ6IDE7XG4gIGNvbG9yOiAkaW5wdXQtY29sb3I7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWdyb3VwLWFkZG9uLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkaW5wdXQtZ3JvdXAtYWRkb24tYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkaW5wdXQtYm9yZGVyLXJhZGl1cztcblxuICAvLyBTaXppbmdcbiAgJi5pbnB1dC1zbSB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctc21hbGwtdmVydGljYWwgJHBhZGRpbmctc21hbGwtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtc21hbGw7XG4gIH1cbiAgJi5pbnB1dC1sZyB7XG4gICAgcGFkZGluZzogJHBhZGRpbmctbGFyZ2UtdmVydGljYWwgJHBhZGRpbmctbGFyZ2UtaG9yaXpvbnRhbDtcbiAgICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gICAgYm9yZGVyLXJhZGl1czogJGlucHV0LWJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIH1cblxuICAvLyBOdWtlIGRlZmF1bHQgbWFyZ2lucyBmcm9tIGNoZWNrYm94ZXMgYW5kIHJhZGlvcyB0byB2ZXJ0aWNhbGx5IGNlbnRlciB3aXRoaW4uXG4gIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdIHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICB9XG59XG5cbi8vIFJlc2V0IHJvdW5kZWQgY29ybmVyc1xuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYWRkb246Zmlyc3QtY2hpbGQsXG4uaW5wdXQtZ3JvdXAtYnRuOmZpcnN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuLWdyb3VwID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuZHJvcGRvd24tdG9nZ2xlLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bjpub3QoOmxhc3QtY2hpbGQpOm5vdCguZHJvcGRvd24tdG9nZ2xlKSxcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpsYXN0LWNoaWxkKSA+IC5idG4ge1xuICBAaW5jbHVkZSBib3JkZXItcmlnaHQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmZpcnN0LWNoaWxkIHtcbiAgYm9yZGVyLXJpZ2h0OiAwO1xufVxuLmlucHV0LWdyb3VwIC5mb3JtLWNvbnRyb2w6bGFzdC1jaGlsZCxcbi5pbnB1dC1ncm91cC1hZGRvbjpsYXN0LWNoaWxkLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmJ0bixcbi5pbnB1dC1ncm91cC1idG46bGFzdC1jaGlsZCA+IC5idG4tZ3JvdXAgPiAuYnRuLFxuLmlucHV0LWdyb3VwLWJ0bjpsYXN0LWNoaWxkID4gLmRyb3Bkb3duLXRvZ2dsZSxcbi5pbnB1dC1ncm91cC1idG46Zmlyc3QtY2hpbGQgPiAuYnRuOm5vdCg6Zmlyc3QtY2hpbGQpLFxuLmlucHV0LWdyb3VwLWJ0bjpmaXJzdC1jaGlsZCA+IC5idG4tZ3JvdXA6bm90KDpmaXJzdC1jaGlsZCkgPiAuYnRuIHtcbiAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKDApO1xufVxuLmlucHV0LWdyb3VwLWFkZG9uOmxhc3QtY2hpbGQge1xuICBib3JkZXItbGVmdDogMDtcbn1cblxuLy8gQnV0dG9uIGlucHV0IGdyb3Vwc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuLmlucHV0LWdyb3VwLWJ0biB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gSmFua2lseSBwcmV2ZW50IGlucHV0IGJ1dHRvbiBncm91cHMgZnJvbSB3cmFwcGluZyB3aXRoIGB3aGl0ZS1zcGFjZWAgYW5kXG4gIC8vIGBmb250LXNpemVgIGluIGNvbWJpbmF0aW9uIHdpdGggYGlubGluZS1ibG9ja2Agb24gYnV0dG9ucy5cbiAgZm9udC1zaXplOiAwO1xuICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuXG4gIC8vIE5lZ2F0aXZlIG1hcmdpbiBmb3Igc3BhY2luZywgcG9zaXRpb24gZm9yIGJyaW5naW5nIGhvdmVyZWQvZm9jdXNlZC9hY3RpdmVkXG4gIC8vIGVsZW1lbnQgYWJvdmUgdGhlIHNpYmxpbmdzLlxuICA+IC5idG4ge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICArIC5idG4ge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICAgIC8vIEJyaW5nIHRoZSBcImFjdGl2ZVwiIGJ1dHRvbiB0byB0aGUgZnJvbnRcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMsXG4gICAgJjphY3RpdmUge1xuICAgICAgei1pbmRleDogMjtcbiAgICB9XG4gIH1cblxuICAvLyBOZWdhdGl2ZSBtYXJnaW4gdG8gb25seSBoYXZlIGEgMXB4IGJvcmRlciBiZXR3ZWVuIHRoZSB0d29cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IC0xcHg7XG4gICAgfVxuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgPiAuYnRuLFxuICAgID4gLmJ0bi1ncm91cCB7XG4gICAgICB6LWluZGV4OiAyO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgfVxuICB9XG59XG4iLCIvL1xuLy8gTmF2c1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2IHtcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHVsL29sXG4gIG1hcmdpbi1ib3R0b206IDA7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gID4gbGkge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBkaXNwbGF5OiBibG9jaztcblxuICAgID4gYSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIHBhZGRpbmc6ICRuYXYtbGluay1wYWRkaW5nO1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBEaXNhYmxlZCBzdGF0ZSBzZXRzIHRleHQgdG8gZ3JheSBhbmQgbnVrZXMgaG92ZXIvdGFiIGVmZmVjdHNcbiAgICAmLmRpc2FibGVkID4gYSB7XG4gICAgICBjb2xvcjogJG5hdi1kaXNhYmxlZC1saW5rLWNvbG9yO1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LWRpc2FibGVkLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBPcGVuIGRyb3Bkb3duc1xuICAub3BlbiA+IGEge1xuICAgICYsXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtbGluay1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJGxpbmstY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLy8gTmF2IGRpdmlkZXJzIChkZXByZWNhdGVkIHdpdGggdjMuMC4xKVxuICAvL1xuICAvLyBUaGlzIHNob3VsZCBoYXZlIGJlZW4gcmVtb3ZlZCBpbiB2MyB3aXRoIHRoZSBkcm9wcGluZyBvZiBgLm5hdi1saXN0YCwgYnV0XG4gIC8vIHdlIG1pc3NlZCBpdC4gV2UgZG9uJ3QgY3VycmVudGx5IHN1cHBvcnQgdGhpcyBhbnl3aGVyZSwgYnV0IGluIHRoZSBpbnRlcmVzdFxuICAvLyBvZiBtYWludGFpbmluZyBiYWNrd2FyZCBjb21wYXRpYmlsaXR5IGluIGNhc2UgeW91IHVzZSBpdCwgaXQncyBkZXByZWNhdGVkLlxuICAubmF2LWRpdmlkZXIge1xuICAgIEBpbmNsdWRlIG5hdi1kaXZpZGVyO1xuICB9XG5cbiAgLy8gUHJldmVudCBJRTggZnJvbSBtaXNwbGFjaW5nIGltZ3NcbiAgLy9cbiAgLy8gU2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9oNWJwL2h0bWw1LWJvaWxlcnBsYXRlL2lzc3Vlcy85ODQjaXNzdWVjb21tZW50LTM5ODU5ODlcbiAgPiBsaSA+IGEgPiBpbWcge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG5cbi8vIFRhYnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gR2l2ZSB0aGUgdGFicyBzb21ldGhpbmcgdG8gc2l0IG9uXG4ubmF2LXRhYnMge1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG5hdi10YWJzLWJvcmRlci1jb2xvcjtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgLy8gTWFrZSB0aGUgbGlzdC1pdGVtcyBvdmVybGF5IHRoZSBib3R0b20gYm9yZGVyXG4gICAgbWFyZ2luLWJvdHRvbTogLTFweDtcblxuICAgIC8vIEFjdHVhbCB0YWJzIChhcyBsaW5rcylcbiAgICA+IGEge1xuICAgICAgbWFyZ2luLXJpZ2h0OiAycHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2UgJGJvcmRlci1yYWRpdXMtYmFzZSAwIDA7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkbmF2LXRhYnMtbGluay1ob3Zlci1ib3JkZXItY29sb3IgJG5hdi10YWJzLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yICRuYXYtdGFicy1ib3JkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gQWN0aXZlIHN0YXRlLCBhbmQgaXRzIDpob3ZlciB0byBvdmVycmlkZSBub3JtYWwgOmhvdmVyXG4gICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdi10YWJzLWFjdGl2ZS1saW5rLWhvdmVyLWJnO1xuICAgICAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtYWN0aXZlLWxpbmstaG92ZXItYm9yZGVyLWNvbG9yO1xuICAgICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gcHVsbGluZyB0aGlzIGluIG1haW5seSBmb3IgbGVzcyBzaG9ydGhhbmRcbiAgJi5uYXYtanVzdGlmaWVkIHtcbiAgICBAZXh0ZW5kIC5uYXYtanVzdGlmaWVkO1xuICAgIEBleHRlbmQgLm5hdi10YWJzLWp1c3RpZmllZDtcbiAgfVxufVxuXG5cbi8vIFBpbGxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ubmF2LXBpbGxzIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG5cbiAgICAvLyBMaW5rcyByZW5kZXJlZCBhcyBwaWxsc1xuICAgID4gYSB7XG4gICAgICBib3JkZXItcmFkaXVzOiAkbmF2LXBpbGxzLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuICAgICsgbGkge1xuICAgICAgbWFyZ2luLWxlZnQ6IDJweDtcbiAgICB9XG5cbiAgICAvLyBBY3RpdmUgc3RhdGVcbiAgICAmLmFjdGl2ZSA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXYtcGlsbHMtYWN0aXZlLWxpbmstaG92ZXItYmc7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cblxuLy8gU3RhY2tlZCBwaWxsc1xuLm5hdi1zdGFja2VkIHtcbiAgPiBsaSB7XG4gICAgZmxvYXQ6IG5vbmU7XG4gICAgKyBsaSB7XG4gICAgICBtYXJnaW4tdG9wOiAycHg7XG4gICAgICBtYXJnaW4tbGVmdDogMDsgLy8gbm8gbmVlZCBmb3IgdGhpcyBnYXAgYmV0d2VlbiBuYXYgaXRlbXNcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXYgdmFyaWF0aW9uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gSnVzdGlmaWVkIG5hdiBsaW5rc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4ubmF2LWp1c3RpZmllZCB7XG4gIHdpZHRoOiAxMDAlO1xuXG4gID4gbGkge1xuICAgIGZsb2F0OiBub25lO1xuICAgID4gYSB7XG4gICAgICBtYXJnaW4tYm90dG9tOiA1cHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICB9XG5cbiAgPiAuZHJvcGRvd24gLmRyb3Bkb3duLW1lbnUge1xuICAgIHRvcDogYXV0bztcbiAgICBsZWZ0OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSB7XG4gICAgICBkaXNwbGF5OiB0YWJsZS1jZWxsO1xuICAgICAgd2lkdGg6IDElO1xuICAgICAgPiBhIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gTW92ZSBib3JkZXJzIHRvIGFuY2hvcnMgaW5zdGVhZCBvZiBib3R0b20gb2YgbGlzdFxuLy9cbi8vIE1peGluIGZvciBhZGRpbmcgb24gdG9wIHRoZSBzaGFyZWQgYC5uYXYtanVzdGlmaWVkYCBzdHlsZXMgZm9yIG91ciB0YWJzXG4ubmF2LXRhYnMtanVzdGlmaWVkIHtcbiAgYm9yZGVyLWJvdHRvbTogMDtcblxuICA+IGxpID4gYSB7XG4gICAgLy8gT3ZlcnJpZGUgbWFyZ2luIGZyb20gLm5hdi10YWJzXG4gICAgbWFyZ2luLXJpZ2h0OiAwO1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBhOmhvdmVyLFxuICA+IC5hY3RpdmUgPiBhOmZvY3VzIHtcbiAgICBib3JkZXI6IDFweCBzb2xpZCAkbmF2LXRhYnMtanVzdGlmaWVkLWxpbmstYm9yZGVyLWNvbG9yO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgPiBsaSA+IGEge1xuICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRuYXYtdGFicy1qdXN0aWZpZWQtbGluay1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlICRib3JkZXItcmFkaXVzLWJhc2UgMCAwO1xuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhLFxuICAgID4gLmFjdGl2ZSA+IGE6aG92ZXIsXG4gICAgPiAuYWN0aXZlID4gYTpmb2N1cyB7XG4gICAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkbmF2LXRhYnMtanVzdGlmaWVkLWFjdGl2ZS1saW5rLWJvcmRlci1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBUYWJiYWJsZSB0YWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIEhpZGUgdGFiYmFibGUgcGFuZXMgdG8gc3RhcnQsIHNob3cgdGhlbSB3aGVuIGAuYWN0aXZlYFxuLnRhYi1jb250ZW50IHtcbiAgPiAudGFiLXBhbmUge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cbiAgPiAuYWN0aXZlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBTcGVjaWZpYyBkcm9wZG93bnNcbi5uYXYtdGFicyAuZHJvcGRvd24tbWVudSB7XG4gIC8vIG1ha2UgZHJvcGRvd24gYm9yZGVyIG92ZXJsYXAgdGFiIGJvcmRlclxuICBtYXJnaW4tdG9wOiAtMXB4O1xuICAvLyBSZW1vdmUgdGhlIHRvcCByb3VuZGVkIGNvcm5lcnMgaGVyZSBzaW5jZSB0aGVyZSBpcyBhIGhhcmQgZWRnZSBhYm92ZSB0aGUgbWVudVxuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbiIsIi8vXG4vLyBOYXZiYXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFdyYXBwZXIgYW5kIGJhc2UgY2xhc3Ncbi8vXG4vLyBQcm92aWRlIGEgc3RhdGljIG5hdmJhciBmcm9tIHdoaWNoIHdlIGV4cGFuZCB0byBjcmVhdGUgZnVsbC13aWR0aCwgZml4ZWQsIGFuZFxuLy8gb3RoZXIgbmF2YmFyIHZhcmlhdGlvbnMuXG5cbi5uYXZiYXIge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIG1pbi1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0OyAvLyBFbnN1cmUgYSBuYXZiYXIgYWx3YXlzIHNob3dzIChlLmcuLCB3aXRob3V0IGEgLm5hdmJhci1icmFuZCBpbiBjb2xsYXBzZWQgbW9kZSlcbiAgbWFyZ2luLWJvdHRvbTogJG5hdmJhci1tYXJnaW4tYm90dG9tO1xuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcblxuICAvLyBQcmV2ZW50IGZsb2F0cyBmcm9tIGJyZWFraW5nIHRoZSBuYXZiYXJcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAkbmF2YmFyLWJvcmRlci1yYWRpdXM7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgaGVhZGluZ1xuLy9cbi8vIEdyb3VwcyBgLm5hdmJhci1icmFuZGAgYW5kIGAubmF2YmFyLXRvZ2dsZWAgaW50byBhIHNpbmdsZSBjb21wb25lbnQgZm9yIGVhc3lcbi8vIHN0eWxpbmcgb2YgcmVzcG9uc2l2ZSBhc3BlY3RzLlxuXG4ubmF2YmFyLWhlYWRlciB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgY29sbGFwc2UgKGJvZHkpXG4vL1xuLy8gR3JvdXAgeW91ciBuYXZiYXIgY29udGVudCBpbnRvIHRoaXMgZm9yIGVhc3kgY29sbGFwc2luZyBhbmQgZXhwYW5kaW5nIGFjcm9zc1xuLy8gdmFyaW91cyBkZXZpY2Ugc2l6ZXMuIEJ5IGRlZmF1bHQsIHRoaXMgY29udGVudCBpcyBjb2xsYXBzZWQgd2hlbiA8NzY4cHgsIGJ1dFxuLy8gd2lsbCBleHBhbmQgcGFzdCB0aGF0IGZvciBhIGhvcml6b250YWwgZGlzcGxheS5cbi8vXG4vLyBUbyBzdGFydCAob24gbW9iaWxlIGRldmljZXMpIHRoZSBuYXZiYXIgbGlua3MsIGZvcm1zLCBhbmQgYnV0dG9ucyBhcmUgc3RhY2tlZFxuLy8gdmVydGljYWxseSBhbmQgaW5jbHVkZSBhIGBtYXgtaGVpZ2h0YCB0byBvdmVyZmxvdyBpbiBjYXNlIHlvdSBoYXZlIHRvbyBtdWNoXG4vLyBjb250ZW50IGZvciB0aGUgdXNlcidzIHZpZXdwb3J0LlxuXG4ubmF2YmFyLWNvbGxhcHNlIHtcbiAgcGFkZGluZy1yaWdodDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIHBhZGRpbmctbGVmdDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIG92ZXJmbG93LXg6IHZpc2libGU7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm94LXNoYWRvdzogaW5zZXQgMCAxcHggMCByZ2JhKDI1NSwgMjU1LCAyNTUsIC4xKTtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcblxuICAmLmluIHtcbiAgICBvdmVyZmxvdy15OiBhdXRvO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICB3aWR0aDogYXV0bztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG5cbiAgICAmLmNvbGxhcHNlIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gICAgICBoZWlnaHQ6IGF1dG8gIWltcG9ydGFudDtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAwOyAvLyBPdmVycmlkZSBkZWZhdWx0IHNldHRpbmdcbiAgICAgIG92ZXJmbG93OiB2aXNpYmxlICFpbXBvcnRhbnQ7XG4gICAgfVxuXG4gICAgJi5pbiB7XG4gICAgICBvdmVyZmxvdy15OiB2aXNpYmxlO1xuICAgIH1cblxuICAgIC8vIFVuZG8gdGhlIGNvbGxhcHNlIHNpZGUgcGFkZGluZyBmb3IgbmF2YmFycyB3aXRoIGNvbnRhaW5lcnMgdG8gZW5zdXJlXG4gICAgLy8gYWxpZ25tZW50IG9mIHJpZ2h0LWFsaWduZWQgY29udGVudHMuXG4gICAgLm5hdmJhci1maXhlZC10b3AgJixcbiAgICAubmF2YmFyLXN0YXRpYy10b3AgJixcbiAgICAubmF2YmFyLWZpeGVkLWJvdHRvbSAmIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gICAgICBwYWRkaW5nLWxlZnQ6IDA7XG4gICAgfVxuICB9XG59XG5cbi5uYXZiYXItZml4ZWQtdG9wLFxuLm5hdmJhci1maXhlZC1ib3R0b20ge1xuICAubmF2YmFyLWNvbGxhcHNlIHtcbiAgICBtYXgtaGVpZ2h0OiAkbmF2YmFyLWNvbGxhcHNlLW1heC1oZWlnaHQ7XG5cbiAgICBAbWVkaWEgKG1heC1kZXZpY2Utd2lkdGg6ICRzY3JlZW4teHMtbWluKSBhbmQgKG9yaWVudGF0aW9uOiBsYW5kc2NhcGUpIHtcbiAgICAgIG1heC1oZWlnaHQ6IDIwMHB4O1xuICAgIH1cbiAgfVxuXG4gIC8vIEZpeCB0aGUgdG9wL2JvdHRvbSBuYXZiYXJzIHdoZW4gc2NyZWVuIHJlYWwgZXN0YXRlIHN1cHBvcnRzIGl0XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyLWZpeGVkO1xuXG4gIC8vIFVuZG8gdGhlIHJvdW5kZWQgY29ybmVyc1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gIH1cbn1cblxuLm5hdmJhci1maXhlZC10b3Age1xuICB0b3A6IDA7XG4gIGJvcmRlci13aWR0aDogMCAwIDFweDtcbn1cbi5uYXZiYXItZml4ZWQtYm90dG9tIHtcbiAgYm90dG9tOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwOyAvLyBvdmVycmlkZSAubmF2YmFyIGRlZmF1bHRzXG4gIGJvcmRlci13aWR0aDogMXB4IDAgMDtcbn1cblxuXG4vLyBCb3RoIG5hdmJhciBoZWFkZXIgYW5kIGNvbGxhcHNlXG4vL1xuLy8gV2hlbiBhIGNvbnRhaW5lciBpcyBwcmVzZW50LCBjaGFuZ2UgdGhlIGJlaGF2aW9yIG9mIHRoZSBoZWFkZXIgYW5kIGNvbGxhcHNlLlxuXG4uY29udGFpbmVyLFxuLmNvbnRhaW5lci1mbHVpZCB7XG4gID4gLm5hdmJhci1oZWFkZXIsXG4gID4gLm5hdmJhci1jb2xsYXBzZSB7XG4gICAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gICAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICB9XG4gIH1cbn1cblxuXG4vL1xuLy8gTmF2YmFyIGFsaWdubWVudCBvcHRpb25zXG4vL1xuLy8gRGlzcGxheSB0aGUgbmF2YmFyIGFjcm9zcyB0aGUgZW50aXJldHkgb2YgdGhlIHBhZ2Ugb3IgZml4ZWQgaXQgdG8gdGhlIHRvcCBvclxuLy8gYm90dG9tIG9mIHRoZSBwYWdlLlxuXG4vLyBTdGF0aWMgdG9wICh1bmZpeGVkLCBidXQgMTAwJSB3aWRlKSBuYXZiYXJcbi5uYXZiYXItc3RhdGljLXRvcCB7XG4gIHotaW5kZXg6ICR6aW5kZXgtbmF2YmFyO1xuICBib3JkZXItd2lkdGg6IDAgMCAxcHg7XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBib3JkZXItcmFkaXVzOiAwO1xuICB9XG59XG5cblxuLy8gQnJhbmQvcHJvamVjdCBuYW1lXG5cbi5uYXZiYXItYnJhbmQge1xuICBmbG9hdDogbGVmdDtcbiAgaGVpZ2h0OiAkbmF2YmFyLWhlaWdodDtcbiAgcGFkZGluZzogJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsICRuYXZiYXItcGFkZGluZy1ob3Jpem9udGFsO1xuICBmb250LXNpemU6ICRmb250LXNpemUtbGFyZ2U7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICB9XG5cbiAgPiBpbWcge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICAubmF2YmFyID4gLmNvbnRhaW5lciAmLFxuICAgIC5uYXZiYXIgPiAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgdG9nZ2xlXG4vL1xuLy8gQ3VzdG9tIGJ1dHRvbiBmb3IgdG9nZ2xpbmcgdGhlIGAubmF2YmFyLWNvbGxhcHNlYCwgcG93ZXJlZCBieSB0aGUgY29sbGFwc2Vcbi8vIEphdmFTY3JpcHQgcGx1Z2luLlxuXG4ubmF2YmFyLXRvZ2dsZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZmxvYXQ6IHJpZ2h0O1xuICBwYWRkaW5nOiA5cHggMTBweDtcbiAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKDM0cHgpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgYmFja2dyb3VuZC1pbWFnZTogbm9uZTsgLy8gUmVzZXQgdW51c3VhbCBGaXJlZm94LW9uLUFuZHJvaWQgZGVmYXVsdCBzdHlsZTsgc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9uZWNvbGFzL25vcm1hbGl6ZS5jc3MvaXNzdWVzLzIxNFxuICBib3JkZXI6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtYmFzZTtcblxuICAvLyBXZSByZW1vdmUgdGhlIGBvdXRsaW5lYCBoZXJlLCBidXQgbGF0ZXIgY29tcGVuc2F0ZSBieSBhdHRhY2hpbmcgYDpob3ZlcmBcbiAgLy8gc3R5bGVzIHRvIGA6Zm9jdXNgLlxuICAmOmZvY3VzIHtcbiAgICBvdXRsaW5lOiAwO1xuICB9XG5cbiAgLy8gQmFyc1xuICAuaWNvbi1iYXIge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIHdpZHRoOiAyMnB4O1xuICAgIGhlaWdodDogMnB4O1xuICAgIGJvcmRlci1yYWRpdXM6IDFweDtcbiAgfVxuICAuaWNvbi1iYXIgKyAuaWNvbi1iYXIge1xuICAgIG1hcmdpbi10b3A6IDRweDtcbiAgfVxuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxufVxuXG5cbi8vIE5hdmJhciBuYXYgbGlua3Ncbi8vXG4vLyBCdWlsZHMgb24gdG9wIG9mIHRoZSBgLm5hdmAgY29tcG9uZW50cyB3aXRoIGl0cyBvd24gbW9kaWZpZXIgY2xhc3MgdG8gbWFrZVxuLy8gdGhlIG5hdiB0aGUgZnVsbCBoZWlnaHQgb2YgdGhlIGhvcml6b250YWwgbmF2IChhYm92ZSA3NjhweCkuXG5cbi5uYXZiYXItbmF2IHtcbiAgbWFyZ2luOiAoJG5hdmJhci1wYWRkaW5nLXZlcnRpY2FsIC8gMikgKC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbCk7XG5cbiAgPiBsaSA+IGEge1xuICAgIHBhZGRpbmctdG9wOiAxMHB4O1xuICAgIHBhZGRpbmctYm90dG9tOiAxMHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIH1cblxuICBAbWVkaWEgKG1heC13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludC1tYXgpIHtcbiAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgcG9zaXRpb246IHN0YXRpYztcbiAgICAgIGZsb2F0OiBub25lO1xuICAgICAgd2lkdGg6IGF1dG87XG4gICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXI6IDA7XG4gICAgICBib3gtc2hhZG93OiBub25lO1xuICAgICAgPiBsaSA+IGEsXG4gICAgICAuZHJvcGRvd24taGVhZGVyIHtcbiAgICAgICAgcGFkZGluZzogNXB4IDE1cHggNXB4IDI1cHg7XG4gICAgICB9XG4gICAgICA+IGxpID4gYSB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gICAgICAgICY6aG92ZXIsXG4gICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBVbmNvbGxhcHNlIHRoZSBuYXZcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgICBmbG9hdDogbGVmdDtcbiAgICBtYXJnaW46IDA7XG5cbiAgICA+IGxpIHtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgPiBhIHtcbiAgICAgICAgcGFkZGluZy10b3A6ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206ICRuYXZiYXItcGFkZGluZy12ZXJ0aWNhbDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuXG4vLyBOYXZiYXIgZm9ybVxuLy9cbi8vIEV4dGVuc2lvbiBvZiB0aGUgYC5mb3JtLWlubGluZWAgd2l0aCBzb21lIGV4dHJhIGZsYXZvciBmb3Igb3B0aW11bSBkaXNwbGF5IGluXG4vLyBvdXIgbmF2YmFycy5cblxuLm5hdmJhci1mb3JtIHtcbiAgcGFkZGluZzogMTBweCAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgbWFyZ2luLXJpZ2h0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1sZWZ0OiAtJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCB0cmFuc3BhcmVudDtcbiAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHRyYW5zcGFyZW50O1xuICAkc2hhZG93OiBpbnNldCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpLCAwIDFweCAwIHJnYmEoMjU1LCAyNTUsIDI1NSwgLjEpO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KCRzaGFkb3cpO1xuXG4gIC8vIE1peGluIGJlaGF2aW9yIGZvciBvcHRpbXVtIGRpc3BsYXlcbiAgQGluY2x1ZGUgZm9ybS1pbmxpbmU7XG5cbiAgLmZvcm0tZ3JvdXAge1xuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNXB4O1xuXG4gICAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIFZlcnRpY2FsbHkgY2VudGVyIGluIGV4cGFuZGVkLCBob3Jpem9udGFsIG5hdmJhclxuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAvLyBVbmRvIDEwMCUgd2lkdGggZm9yIHB1bGwgY2xhc3Nlc1xuICBAbWVkaWEgKG1pbi13aWR0aDogJGdyaWQtZmxvYXQtYnJlYWtwb2ludCkge1xuICAgIHdpZHRoOiBhdXRvO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICBtYXJnaW4tbGVmdDogMDtcbiAgICBib3JkZXI6IDA7XG4gICAgQGluY2x1ZGUgYm94LXNoYWRvdyhub25lKTtcbiAgfVxufVxuXG5cbi8vIERyb3Bkb3duIG1lbnVzXG5cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXRzXG4ubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygwKTtcbn1cbi8vIE1lbnUgcG9zaXRpb24gYW5kIG1lbnUgY2FyZXQgc3VwcG9ydCBmb3IgZHJvcHVwcyB2aWEgZXh0cmEgZHJvcHVwIGNsYXNzXG4ubmF2YmFyLWZpeGVkLWJvdHRvbSAubmF2YmFyLW5hdiA+IGxpID4gLmRyb3Bkb3duLW1lbnUge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygkbmF2YmFyLWJvcmRlci1yYWRpdXMpO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygwKTtcbn1cblxuXG4vLyBCdXR0b25zIGluIG5hdmJhcnNcbi8vXG4vLyBWZXJ0aWNhbGx5IGNlbnRlciBhIGJ1dHRvbiB3aXRoaW4gYSBuYXZiYXIgKHdoZW4gKm5vdCogaW4gYSBmb3JtKS5cblxuLm5hdmJhci1idG4ge1xuICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oJGlucHV0LWhlaWdodC1iYXNlKTtcblxuICAmLmJ0bi1zbSB7XG4gICAgQGluY2x1ZGUgbmF2YmFyLXZlcnRpY2FsLWFsaWduKCRpbnB1dC1oZWlnaHQtc21hbGwpO1xuICB9XG4gICYuYnRuLXhzIHtcbiAgICBAaW5jbHVkZSBuYXZiYXItdmVydGljYWwtYWxpZ24oMjIpO1xuICB9XG59XG5cblxuLy8gVGV4dCBpbiBuYXZiYXJzXG4vL1xuLy8gQWRkIGEgY2xhc3MgdG8gbWFrZSBhbnkgZWxlbWVudCBwcm9wZXJseSBhbGlnbiBpdHNlbGYgdmVydGljYWxseSB3aXRoaW4gdGhlIG5hdmJhcnMuXG5cbi5uYXZiYXItdGV4dCB7XG4gIEBpbmNsdWRlIG5hdmJhci12ZXJ0aWNhbC1hbGlnbigkbGluZS1oZWlnaHQtY29tcHV0ZWQpO1xuXG4gIEBtZWRpYSAobWluLXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50KSB7XG4gICAgZmxvYXQ6IGxlZnQ7XG4gICAgbWFyZ2luLXJpZ2h0OiAkbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcbiAgICBtYXJnaW4tbGVmdDogJG5hdmJhci1wYWRkaW5nLWhvcml6b250YWw7XG4gIH1cbn1cblxuXG4vLyBDb21wb25lbnQgYWxpZ25tZW50XG4vL1xuLy8gUmVwdXJwb3NlIHRoZSBwdWxsIHV0aWxpdGllcyBhcyB0aGVpciBvd24gbmF2YmFyIHV0aWxpdGllcyB0byBhdm9pZCBzcGVjaWZpY2l0eVxuLy8gaXNzdWVzIHdpdGggcGFyZW50cyBhbmQgY2hhaW5pbmcuIE9ubHkgZG8gdGhpcyB3aGVuIHRoZSBuYXZiYXIgaXMgdW5jb2xsYXBzZWRcbi8vIHRob3VnaCBzbyB0aGF0IG5hdmJhciBjb250ZW50cyBwcm9wZXJseSBzdGFjayBhbmQgYWxpZ24gaW4gbW9iaWxlLlxuLy9cbi8vIERlY2xhcmVkIGFmdGVyIHRoZSBuYXZiYXIgY29tcG9uZW50cyB0byBlbnN1cmUgbW9yZSBzcGVjaWZpY2l0eSBvbiB0aGUgbWFyZ2lucy5cblxuQG1lZGlhIChtaW4td2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQpIHtcbiAgLm5hdmJhci1sZWZ0IHtcbiAgICBmbG9hdDogbGVmdCAhaW1wb3J0YW50O1xuICB9XG4gIC5uYXZiYXItcmlnaHQge1xuICAgIGZsb2F0OiByaWdodCAhaW1wb3J0YW50O1xuICBtYXJnaW4tcmlnaHQ6IC0kbmF2YmFyLXBhZGRpbmctaG9yaXpvbnRhbDtcblxuICAgIH4gLm5hdmJhci1yaWdodCB7XG4gICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgfVxuICB9XG59XG5cblxuLy8gQWx0ZXJuYXRlIG5hdmJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIERlZmF1bHQgbmF2YmFyXG4ubmF2YmFyLWRlZmF1bHQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtYmc7XG4gIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcblxuICAubmF2YmFyLWJyYW5kIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWNvbG9yO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJyYW5kLWhvdmVyLWJnO1xuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdGV4dCB7XG4gICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1jb2xvcjtcbiAgfVxuXG4gIC5uYXZiYXItbmF2IHtcbiAgICA+IGxpID4gYSB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuICAgID4gLmRpc2FibGVkID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIERyb3Bkb3duIG1lbnUgaXRlbXNcbiAgICAvLyBSZW1vdmUgYmFja2dyb3VuZCBjb2xvciBmcm9tIG9wZW4gZHJvcGRvd25cbiAgICA+IC5vcGVuID4gYSB7XG4gICAgICAmLFxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1hY3RpdmUtYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgQG1lZGlhIChtYXgtd2lkdGg6ICRncmlkLWZsb2F0LWJyZWFrcG9pbnQtbWF4KSB7XG4gICAgICAvLyBEcm9wZG93bnMgZ2V0IGN1c3RvbSBkaXNwbGF5IHdoZW4gY29sbGFwc2VkXG4gICAgICAub3BlbiAuZHJvcGRvd24tbWVudSB7XG4gICAgICAgID4gbGkgPiBhIHtcbiAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWhvdmVyLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWNvbG9yO1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstYWN0aXZlLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICA+IC5kaXNhYmxlZCA+IGEge1xuICAgICAgICAgICYsXG4gICAgICAgICAgJjpob3ZlcixcbiAgICAgICAgICAmOmZvY3VzIHtcbiAgICAgICAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItZGVmYXVsdC1saW5rLWRpc2FibGVkLWJnO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC5uYXZiYXItdG9nZ2xlIHtcbiAgICBib3JkZXItY29sb3I6ICRuYXZiYXItZGVmYXVsdC10b2dnbGUtYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtdG9nZ2xlLWhvdmVyLWJnO1xuICAgIH1cbiAgICAuaWNvbi1iYXIge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1kZWZhdWx0LXRvZ2dsZS1pY29uLWJhci1iZztcbiAgICB9XG4gIH1cblxuICAubmF2YmFyLWNvbGxhcHNlLFxuICAubmF2YmFyLWZvcm0ge1xuICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1kZWZhdWx0LWJvcmRlcjtcbiAgfVxuXG5cbiAgLy8gTGlua3MgaW4gbmF2YmFyc1xuICAvL1xuICAvLyBBZGQgYSBjbGFzcyB0byBlbnN1cmUgbGlua3Mgb3V0c2lkZSB0aGUgbmF2YmFyIG5hdiBhcmUgY29sb3JlZCBjb3JyZWN0bHkuXG5cbiAgLm5hdmJhci1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlciB7XG4gICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICB9XG5cbiAgLmJ0bi1saW5rIHtcbiAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWRlZmF1bHQtbGluay1ob3Zlci1jb2xvcjtcbiAgICB9XG4gICAgJltkaXNhYmxlZF0sXG4gICAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1kZWZhdWx0LWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbi8vIEludmVyc2UgbmF2YmFyXG5cbi5uYXZiYXItaW52ZXJzZSB7XG4gIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1iZztcbiAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYm9yZGVyO1xuXG4gIC5uYXZiYXItYnJhbmQge1xuICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtY29sb3I7XG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItY29sb3I7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtYnJhbmQtaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci10ZXh0IHtcbiAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWNvbG9yO1xuICB9XG5cbiAgLm5hdmJhci1uYXYge1xuICAgID4gbGkgPiBhIHtcbiAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1jb2xvcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWJnO1xuICAgICAgfVxuICAgIH1cbiAgICA+IC5hY3RpdmUgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1hY3RpdmUtY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICYsXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtYmc7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gRHJvcGRvd25zXG4gICAgPiAub3BlbiA+IGEge1xuICAgICAgJixcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstYWN0aXZlLWJnO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAobWF4LXdpZHRoOiAkZ3JpZC1mbG9hdC1icmVha3BvaW50LW1heCkge1xuICAgICAgLy8gRHJvcGRvd25zIGdldCBjdXN0b20gZGlzcGxheVxuICAgICAgLm9wZW4gLmRyb3Bkb3duLW1lbnUge1xuICAgICAgICA+IC5kcm9wZG93bi1oZWFkZXIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICAuZGl2aWRlciB7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLWJvcmRlcjtcbiAgICAgICAgfVxuICAgICAgICA+IGxpID4gYSB7XG4gICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1ob3Zlci1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuYWN0aXZlID4gYSB7XG4gICAgICAgICAgJixcbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1jb2xvcjtcbiAgICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWFjdGl2ZS1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgPiAuZGlzYWJsZWQgPiBhIHtcbiAgICAgICAgICAmLFxuICAgICAgICAgICY6aG92ZXIsXG4gICAgICAgICAgJjpmb2N1cyB7XG4gICAgICAgICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstZGlzYWJsZWQtY29sb3I7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtbGluay1kaXNhYmxlZC1iZztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvLyBEYXJrZW4gdGhlIHJlc3BvbnNpdmUgbmF2IHRvZ2dsZVxuICAubmF2YmFyLXRvZ2dsZSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkbmF2YmFyLWludmVyc2UtdG9nZ2xlLWJvcmRlci1jb2xvcjtcbiAgICAmOmhvdmVyLFxuICAgICY6Zm9jdXMge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG5hdmJhci1pbnZlcnNlLXRvZ2dsZS1ob3Zlci1iZztcbiAgICB9XG4gICAgLmljb24tYmFyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRuYXZiYXItaW52ZXJzZS10b2dnbGUtaWNvbi1iYXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5hdmJhci1jb2xsYXBzZSxcbiAgLm5hdmJhci1mb3JtIHtcbiAgICBib3JkZXItY29sb3I6IGRhcmtlbigkbmF2YmFyLWludmVyc2UtYmcsIDclKTtcbiAgfVxuXG4gIC5uYXZiYXItbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWhvdmVyLWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC5idG4tbGluayB7XG4gICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICBjb2xvcjogJG5hdmJhci1pbnZlcnNlLWxpbmstaG92ZXItY29sb3I7XG4gICAgfVxuICAgICZbZGlzYWJsZWRdLFxuICAgIGZpZWxkc2V0W2Rpc2FibGVkXSAmIHtcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRuYXZiYXItaW52ZXJzZS1saW5rLWRpc2FibGVkLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIEJyZWFkY3J1bWJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5icmVhZGNydW1iIHtcbiAgcGFkZGluZzogJGJyZWFkY3J1bWItcGFkZGluZy12ZXJ0aWNhbCAkYnJlYWRjcnVtYi1wYWRkaW5nLWhvcml6b250YWw7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGJyZWFkY3J1bWItYmc7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXG4gICAgKyBsaTpiZWZvcmUge1xuICAgICAgcGFkZGluZzogMCA1cHg7XG4gICAgICBjb2xvcjogJGJyZWFkY3J1bWItY29sb3I7XG4gICAgICAvLyBbY29udmVydGVyXSBXb3JrYXJvdW5kIGZvciBodHRwczovL2dpdGh1Yi5jb20vc2Fzcy9saWJzYXNzL2lzc3Vlcy8xMTE1XG4gICAgICAkbmJzcDogXCJcXDAwYTBcIjtcbiAgICAgIGNvbnRlbnQ6IFwiI3skYnJlYWRjcnVtYi1zZXBhcmF0b3J9I3skbmJzcH1cIjsgLy8gVW5pY29kZSBzcGFjZSBhZGRlZCBzaW5jZSBpbmxpbmUtYmxvY2sgbWVhbnMgbm9uLWNvbGxhcHNpbmcgd2hpdGUtc3BhY2VcbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUge1xuICAgIGNvbG9yOiAkYnJlYWRjcnVtYi1hY3RpdmUtY29sb3I7XG4gIH1cbn1cbiIsIi8vXG4vLyBQYWdpbmF0aW9uIChtdWx0aXBsZSBwYWdlcylcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4ucGFnaW5hdGlvbiB7XG4gIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xuXG4gID4gbGkge1xuICAgIGRpc3BsYXk6IGlubGluZTsgLy8gUmVtb3ZlIGxpc3Qtc3R5bGUgYW5kIGJsb2NrLWxldmVsIGRlZmF1bHRzXG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBmbG9hdDogbGVmdDsgLy8gQ29sbGFwc2Ugd2hpdGUtc3BhY2VcbiAgICAgIHBhZGRpbmc6ICRwYWRkaW5nLWJhc2UtdmVydGljYWwgJHBhZGRpbmctYmFzZS1ob3Jpem9udGFsO1xuICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICBsaW5lLWhlaWdodDogJGxpbmUtaGVpZ2h0LWJhc2U7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tY29sb3I7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnaW5hdGlvbi1iZztcbiAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRwYWdpbmF0aW9uLWJvcmRlcjtcblxuICAgICAgJjpob3ZlcixcbiAgICAgICY6Zm9jdXMge1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICBjb2xvcjogJHBhZ2luYXRpb24taG92ZXItY29sb3I7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJnO1xuICAgICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWhvdmVyLWJvcmRlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICA+IGEsXG4gICAgICA+IHNwYW4ge1xuICAgICAgICBtYXJnaW4tbGVmdDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWxlZnQtcmFkaXVzKCRib3JkZXItcmFkaXVzLWJhc2UpO1xuICAgICAgfVxuICAgIH1cbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgPiBhLFxuICAgICAgPiBzcGFuIHtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXJpZ2h0LXJhZGl1cygkYm9yZGVyLXJhZGl1cy1iYXNlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICA+IC5hY3RpdmUgPiBhLFxuICA+IC5hY3RpdmUgPiBzcGFuIHtcbiAgICAmLFxuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7XG4gICAgICB6LWluZGV4OiAzO1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1jb2xvcjtcbiAgICAgIGN1cnNvcjogZGVmYXVsdDtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICRwYWdpbmF0aW9uLWFjdGl2ZS1iZztcbiAgICAgIGJvcmRlci1jb2xvcjogJHBhZ2luYXRpb24tYWN0aXZlLWJvcmRlcjtcbiAgICB9XG4gIH1cblxuICA+IC5kaXNhYmxlZCB7XG4gICAgPiBzcGFuLFxuICAgID4gc3Bhbjpob3ZlcixcbiAgICA+IHNwYW46Zm9jdXMsXG4gICAgPiBhLFxuICAgID4gYTpob3ZlcixcbiAgICA+IGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWNvbG9yO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2luYXRpb24tZGlzYWJsZWQtYmc7XG4gICAgICBib3JkZXItY29sb3I6ICRwYWdpbmF0aW9uLWRpc2FibGVkLWJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuLy8gU2l6aW5nXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBMYXJnZVxuLnBhZ2luYXRpb24tbGcge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctbGFyZ2UtdmVydGljYWwsICRwYWRkaW5nLWxhcmdlLWhvcml6b250YWwsICRmb250LXNpemUtbGFyZ2UsICRsaW5lLWhlaWdodC1sYXJnZSwgJGJvcmRlci1yYWRpdXMtbGFyZ2UpO1xufVxuXG4vLyBTbWFsbFxuLnBhZ2luYXRpb24tc20ge1xuICBAaW5jbHVkZSBwYWdpbmF0aW9uLXNpemUoJHBhZGRpbmctc21hbGwtdmVydGljYWwsICRwYWRkaW5nLXNtYWxsLWhvcml6b250YWwsICRmb250LXNpemUtc21hbGwsICRsaW5lLWhlaWdodC1zbWFsbCwgJGJvcmRlci1yYWRpdXMtc21hbGwpO1xufVxuIiwiLy9cbi8vIFBhZ2VyIHBhZ2luYXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLnBhZ2VyIHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW46ICRsaW5lLWhlaWdodC1jb21wdXRlZCAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xuICBsaSB7XG4gICAgZGlzcGxheTogaW5saW5lO1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgcGFkZGluZzogNXB4IDE0cHg7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItYmc7XG4gICAgICBib3JkZXI6IDFweCBzb2xpZCAkcGFnZXItYm9yZGVyO1xuICAgICAgYm9yZGVyLXJhZGl1czogJHBhZ2VyLWJvcmRlci1yYWRpdXM7XG4gICAgfVxuXG4gICAgPiBhOmhvdmVyLFxuICAgID4gYTpmb2N1cyB7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGFnZXItaG92ZXItYmc7XG4gICAgfVxuICB9XG5cbiAgLm5leHQge1xuICAgID4gYSxcbiAgICA+IHNwYW4ge1xuICAgICAgZmxvYXQ6IHJpZ2h0O1xuICAgIH1cbiAgfVxuXG4gIC5wcmV2aW91cyB7XG4gICAgPiBhLFxuICAgID4gc3BhbiB7XG4gICAgICBmbG9hdDogbGVmdDtcbiAgICB9XG4gIH1cblxuICAuZGlzYWJsZWQge1xuICAgID4gYSxcbiAgICA+IGE6aG92ZXIsXG4gICAgPiBhOmZvY3VzLFxuICAgID4gc3BhbiB7XG4gICAgICBjb2xvcjogJHBhZ2VyLWRpc2FibGVkLWNvbG9yO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkO1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBhZ2VyLWJnO1xuICAgIH1cbiAgfVxufVxuIiwiLy9cbi8vIExhYmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmxhYmVsIHtcbiAgZGlzcGxheTogaW5saW5lO1xuICBwYWRkaW5nOiAuMmVtIC42ZW0gLjNlbTtcbiAgZm9udC1zaXplOiA3NSU7XG4gIGZvbnQtd2VpZ2h0OiA3MDA7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGxhYmVsLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBiYXNlbGluZTtcbiAgYm9yZGVyLXJhZGl1czogLjI1ZW07XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEubGFiZWxcblxuICAvLyBFbXB0eSBsYWJlbHMgY29sbGFwc2UgYXV0b21hdGljYWxseSAobm90IGF2YWlsYWJsZSBpbiBJRTgpXG4gICY6ZW1wdHkge1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gIH1cblxuICAvLyBRdWljayBmaXggZm9yIGxhYmVscyBpbiBidXR0b25zXG4gIC5idG4gJiB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTFweDtcbiAgfVxufVxuXG4vLyBBZGQgaG92ZXIgZWZmZWN0cywgYnV0IG9ubHkgZm9yIGxpbmtzXG5hLmxhYmVsIHtcbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgY29sb3I6ICRsYWJlbC1saW5rLWhvdmVyLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gIH1cbn1cblxuLy8gQ29sb3JzXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnMgKGxpbmtlZCBsYWJlbHMgZ2V0IGRhcmtlciBvbiA6aG92ZXIpXG5cbi5sYWJlbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtZGVmYXVsdC1iZyk7XG59XG5cbi5sYWJlbC1wcmltYXJ5IHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtcHJpbWFyeS1iZyk7XG59XG5cbi5sYWJlbC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtc3VjY2Vzcy1iZyk7XG59XG5cbi5sYWJlbC1pbmZvIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtaW5mby1iZyk7XG59XG5cbi5sYWJlbC13YXJuaW5nIHtcbiAgQGluY2x1ZGUgbGFiZWwtdmFyaWFudCgkbGFiZWwtd2FybmluZy1iZyk7XG59XG5cbi5sYWJlbC1kYW5nZXIge1xuICBAaW5jbHVkZSBsYWJlbC12YXJpYW50KCRsYWJlbC1kYW5nZXItYmcpO1xufVxuIiwiLy9cbi8vIEJhZGdlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4uYmFkZ2Uge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIG1pbi13aWR0aDogMTBweDtcbiAgcGFkZGluZzogM3B4IDdweDtcbiAgZm9udC1zaXplOiAkZm9udC1zaXplLXNtYWxsO1xuICBmb250LXdlaWdodDogJGJhZGdlLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogJGJhZGdlLWxpbmUtaGVpZ2h0O1xuICBjb2xvcjogJGJhZGdlLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1iZztcbiAgYm9yZGVyLXJhZGl1czogJGJhZGdlLWJvcmRlci1yYWRpdXM7XG5cbiAgLy8gRW1wdHkgYmFkZ2VzIGNvbGxhcHNlIGF1dG9tYXRpY2FsbHkgKG5vdCBhdmFpbGFibGUgaW4gSUU4KVxuICAmOmVtcHR5IHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG5cbiAgLy8gUXVpY2sgZml4IGZvciBiYWRnZXMgaW4gYnV0dG9uc1xuICAuYnRuICYge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IC0xcHg7XG4gIH1cblxuICAuYnRuLXhzICYsXG4gIC5idG4tZ3JvdXAteHMgPiAuYnRuICYge1xuICAgIHRvcDogMDtcbiAgICBwYWRkaW5nOiAxcHggNXB4O1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmIHRvIGEuYmFkZ2VcblxuICAvLyBBY2NvdW50IGZvciBiYWRnZXMgaW4gbmF2c1xuICAubGlzdC1ncm91cC1pdGVtLmFjdGl2ZSA+ICYsXG4gIC5uYXYtcGlsbHMgPiAuYWN0aXZlID4gYSA+ICYge1xuICAgIGNvbG9yOiAkYmFkZ2UtYWN0aXZlLWNvbG9yO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRiYWRnZS1hY3RpdmUtYmc7XG4gIH1cblxuICAubGlzdC1ncm91cC1pdGVtID4gJiB7XG4gICAgZmxvYXQ6IHJpZ2h0O1xuICB9XG5cbiAgLmxpc3QtZ3JvdXAtaXRlbSA+ICYgKyAmIHtcbiAgICBtYXJnaW4tcmlnaHQ6IDVweDtcbiAgfVxuXG4gIC5uYXYtcGlsbHMgPiBsaSA+IGEgPiAmIHtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICB9XG59XG5cbi8vIEhvdmVyIHN0YXRlLCBidXQgb25seSBmb3IgbGlua3NcbmEuYmFkZ2Uge1xuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGJhZGdlLWxpbmstaG92ZXItY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIGN1cnNvcjogcG9pbnRlcjtcbiAgfVxufVxuIiwiLy9cbi8vIEp1bWJvdHJvblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uanVtYm90cm9uIHtcbiAgcGFkZGluZy10b3A6ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgcGFkZGluZy1ib3R0b206ICRqdW1ib3Ryb24tcGFkZGluZztcbiAgbWFyZ2luLWJvdHRvbTogJGp1bWJvdHJvbi1wYWRkaW5nO1xuICBjb2xvcjogJGp1bWJvdHJvbi1jb2xvcjtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGp1bWJvdHJvbi1iZztcblxuICBoMSxcbiAgLmgxIHtcbiAgICBjb2xvcjogJGp1bWJvdHJvbi1oZWFkaW5nLWNvbG9yO1xuICB9XG5cbiAgcCB7XG4gICAgbWFyZ2luLWJvdHRvbTogKCRqdW1ib3Ryb24tcGFkZGluZyAvIDIpO1xuICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1mb250LXNpemU7XG4gICAgZm9udC13ZWlnaHQ6IDIwMDtcbiAgfVxuXG4gID4gaHIge1xuICAgIGJvcmRlci10b3AtY29sb3I6IGRhcmtlbigkanVtYm90cm9uLWJnLCAxMCUpO1xuICB9XG5cbiAgLmNvbnRhaW5lciAmLFxuICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgIHBhZGRpbmctcmlnaHQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgICBwYWRkaW5nLWxlZnQ6ICgkZ3JpZC1ndXR0ZXItd2lkdGggLyAyKTtcbiAgICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTsgLy8gT25seSByb3VuZCBjb3JuZXJzIGF0IGhpZ2hlciByZXNvbHV0aW9ucyBpZiBjb250YWluZWQgaW4gYSBjb250YWluZXJcbiAgfVxuXG4gIC5jb250YWluZXIge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgfVxuXG4gIEBtZWRpYSBzY3JlZW4gYW5kIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSB7XG4gICAgcGFkZGluZy10b3A6ICgkanVtYm90cm9uLXBhZGRpbmcgKiAxLjYpO1xuICAgIHBhZGRpbmctYm90dG9tOiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMS42KTtcblxuICAgIC5jb250YWluZXIgJixcbiAgICAuY29udGFpbmVyLWZsdWlkICYge1xuICAgICAgcGFkZGluZy1yaWdodDogKCRqdW1ib3Ryb24tcGFkZGluZyAqIDIpO1xuICAgICAgcGFkZGluZy1sZWZ0OiAoJGp1bWJvdHJvbi1wYWRkaW5nICogMik7XG4gICAgfVxuXG4gICAgaDEsXG4gICAgLmgxIHtcbiAgICAgIGZvbnQtc2l6ZTogJGp1bWJvdHJvbi1oZWFkaW5nLWZvbnQtc2l6ZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vXG4vLyBUaHVtYm5haWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIE1peGluIGFuZCBhZGp1c3QgdGhlIHJlZ3VsYXIgaW1hZ2UgY2xhc3Ncbi50aHVtYm5haWwge1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogJHRodW1ibmFpbC1wYWRkaW5nO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHRodW1ibmFpbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgJHRodW1ibmFpbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICR0aHVtYm5haWwtYm9yZGVyLXJhZGl1cztcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbihib3JkZXIgLjJzIGVhc2UtaW4tb3V0KTtcblxuICA+IGltZyxcbiAgYSA+IGltZyB7XG4gICAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG4gICAgbWFyZ2luLXJpZ2h0OiBhdXRvO1xuICAgIG1hcmdpbi1sZWZ0OiBhdXRvO1xuICB9XG5cbiAgLy8gW2NvbnZlcnRlcl0gZXh0cmFjdGVkIGEmOmhvdmVyLCBhJjpmb2N1cywgYSYuYWN0aXZlIHRvIGEudGh1bWJuYWlsOmhvdmVyLCBhLnRodW1ibmFpbDpmb2N1cywgYS50aHVtYm5haWwuYWN0aXZlXG5cbiAgLy8gSW1hZ2UgY2FwdGlvbnNcbiAgLmNhcHRpb24ge1xuICAgIHBhZGRpbmc6ICR0aHVtYm5haWwtY2FwdGlvbi1wYWRkaW5nO1xuICAgIGNvbG9yOiAkdGh1bWJuYWlsLWNhcHRpb24tY29sb3I7XG4gIH1cbn1cblxuLy8gQWRkIGEgaG92ZXIgc3RhdGUgZm9yIGxpbmtlZCB2ZXJzaW9ucyBvbmx5XG5hLnRodW1ibmFpbDpob3ZlcixcbmEudGh1bWJuYWlsOmZvY3VzLFxuYS50aHVtYm5haWwuYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiAkbGluay1jb2xvcjtcbn1cbiIsIi8vXG4vLyBBbGVydHNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFzZSBzdHlsZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLmFsZXJ0IHtcbiAgcGFkZGluZzogJGFsZXJ0LXBhZGRpbmc7XG4gIG1hcmdpbi1ib3R0b206ICRsaW5lLWhlaWdodC1jb21wdXRlZDtcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRhbGVydC1ib3JkZXItcmFkaXVzO1xuXG4gIC8vIEhlYWRpbmdzIGZvciBsYXJnZXIgYWxlcnRzXG4gIGg0IHtcbiAgICBtYXJnaW4tdG9wOiAwO1xuICAgIGNvbG9yOiBpbmhlcml0OyAvLyBTcGVjaWZpZWQgZm9yIHRoZSBoNCB0byBwcmV2ZW50IGNvbmZsaWN0cyBvZiBjaGFuZ2luZyAkaGVhZGluZ3MtY29sb3JcbiAgfVxuXG4gIC8vIFByb3ZpZGUgY2xhc3MgZm9yIGxpbmtzIHRoYXQgbWF0Y2ggYWxlcnRzXG4gIC5hbGVydC1saW5rIHtcbiAgICBmb250LXdlaWdodDogJGFsZXJ0LWxpbmstZm9udC13ZWlnaHQ7XG4gIH1cblxuICAvLyBJbXByb3ZlIGFsaWdubWVudCBhbmQgc3BhY2luZyBvZiBpbm5lciBjb250ZW50XG4gID4gcCxcbiAgPiB1bCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgfVxuXG4gID4gcCArIHAge1xuICAgIG1hcmdpbi10b3A6IDVweDtcbiAgfVxufVxuXG4vLyBEaXNtaXNzaWJsZSBhbGVydHNcbi8vXG4vLyBFeHBhbmQgdGhlIHJpZ2h0IHBhZGRpbmcgYW5kIGFjY291bnQgZm9yIHRoZSBjbG9zZSBidXR0b24ncyBwb3NpdGlvbmluZy5cblxuLy8gVGhlIG1pc3NwZWxsZWQgLmFsZXJ0LWRpc21pc3NhYmxlIHdhcyBkZXByZWNhdGVkIGluIDMuMi4wLlxuLmFsZXJ0LWRpc21pc3NhYmxlLFxuLmFsZXJ0LWRpc21pc3NpYmxlIHtcbiAgcGFkZGluZy1yaWdodDogKCRhbGVydC1wYWRkaW5nICsgMjApO1xuXG4gIC8vIEFkanVzdCBjbG9zZSBsaW5rIHBvc2l0aW9uXG4gIC5jbG9zZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogLTJweDtcbiAgICByaWdodDogLTIxcHg7XG4gICAgY29sb3I6IGluaGVyaXQ7XG4gIH1cbn1cblxuLy8gQWx0ZXJuYXRlIHN0eWxlc1xuLy9cbi8vIEdlbmVyYXRlIGNvbnRleHR1YWwgbW9kaWZpZXIgY2xhc3NlcyBmb3IgY29sb3JpemluZyB0aGUgYWxlcnQuXG5cbi5hbGVydC1zdWNjZXNzIHtcbiAgQGluY2x1ZGUgYWxlcnQtdmFyaWFudCgkYWxlcnQtc3VjY2Vzcy1iZywgJGFsZXJ0LXN1Y2Nlc3MtYm9yZGVyLCAkYWxlcnQtc3VjY2Vzcy10ZXh0KTtcbn1cblxuLmFsZXJ0LWluZm8ge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1pbmZvLWJnLCAkYWxlcnQtaW5mby1ib3JkZXIsICRhbGVydC1pbmZvLXRleHQpO1xufVxuXG4uYWxlcnQtd2FybmluZyB7XG4gIEBpbmNsdWRlIGFsZXJ0LXZhcmlhbnQoJGFsZXJ0LXdhcm5pbmctYmcsICRhbGVydC13YXJuaW5nLWJvcmRlciwgJGFsZXJ0LXdhcm5pbmctdGV4dCk7XG59XG5cbi5hbGVydC1kYW5nZXIge1xuICBAaW5jbHVkZSBhbGVydC12YXJpYW50KCRhbGVydC1kYW5nZXItYmcsICRhbGVydC1kYW5nZXItYm9yZGVyLCAkYWxlcnQtZGFuZ2VyLXRleHQpO1xufVxuIiwiLy9cbi8vIFByb2dyZXNzIGJhcnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gQmFyIGFuaW1hdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLy8gV2ViS2l0XG5ALXdlYmtpdC1rZXlmcmFtZXMgcHJvZ3Jlc3MtYmFyLXN0cmlwZXMge1xuICBmcm9tICB7IGJhY2tncm91bmQtcG9zaXRpb246IDQwcHggMDsgfVxuICB0byAgICB7IGJhY2tncm91bmQtcG9zaXRpb246IDAgMDsgfVxufVxuXG4vLyBTcGVjIGFuZCBJRTEwK1xuQGtleWZyYW1lcyBwcm9ncmVzcy1iYXItc3RyaXBlcyB7XG4gIGZyb20gIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogNDBweCAwOyB9XG4gIHRvICAgIHsgYmFja2dyb3VuZC1wb3NpdGlvbjogMCAwOyB9XG59XG5cblxuLy8gQmFyIGl0c2VsZlxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyBPdXRlciBjb250YWluZXJcbi5wcm9ncmVzcyB7XG4gIGhlaWdodDogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iZztcbiAgYm9yZGVyLXJhZGl1czogJHByb2dyZXNzLWJvcmRlci1yYWRpdXM7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMnB4IHJnYmEoMCwgMCwgMCwgLjEpKTtcbn1cblxuLy8gQmFyIG9mIHByb2dyZXNzXG4ucHJvZ3Jlc3MtYmFyIHtcbiAgZmxvYXQ6IGxlZnQ7XG4gIHdpZHRoOiAwJTtcbiAgaGVpZ2h0OiAxMDAlO1xuICBmb250LXNpemU6ICRmb250LXNpemUtc21hbGw7XG4gIGxpbmUtaGVpZ2h0OiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwcm9ncmVzcy1iYXItYmc7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAtMXB4IDAgcmdiYSgwLCAwLCAwLCAuMTUpKTtcbiAgQGluY2x1ZGUgdHJhbnNpdGlvbih3aWR0aCAuNnMgZWFzZSk7XG59XG5cbi8vIFN0cmlwZWQgYmFyc1xuLy9cbi8vIGAucHJvZ3Jlc3Mtc3RyaXBlZCAucHJvZ3Jlc3MtYmFyYCBpcyBkZXByZWNhdGVkIGFzIG9mIHYzLjIuMCBpbiBmYXZvciBvZiB0aGVcbi8vIGAucHJvZ3Jlc3MtYmFyLXN0cmlwZWRgIGNsYXNzLCB3aGljaCB5b3UganVzdCBhZGQgdG8gYW4gZXhpc3Rpbmdcbi8vIGAucHJvZ3Jlc3MtYmFyYC5cbi5wcm9ncmVzcy1zdHJpcGVkIC5wcm9ncmVzcy1iYXIsXG4ucHJvZ3Jlc3MtYmFyLXN0cmlwZWQge1xuICBAaW5jbHVkZSBncmFkaWVudC1zdHJpcGVkO1xuICBiYWNrZ3JvdW5kLXNpemU6IDQwcHggNDBweDtcbn1cblxuLy8gQ2FsbCBhbmltYXRpb24gZm9yIHRoZSBhY3RpdmUgb25lXG4vL1xuLy8gYC5wcm9ncmVzcy5hY3RpdmUgLnByb2dyZXNzLWJhcmAgaXMgZGVwcmVjYXRlZCBhcyBvZiB2My4yLjAgaW4gZmF2b3Igb2YgdGhlXG4vLyBgLnByb2dyZXNzLWJhci5hY3RpdmVgIGFwcHJvYWNoLlxuLnByb2dyZXNzLmFjdGl2ZSAucHJvZ3Jlc3MtYmFyLFxuLnByb2dyZXNzLWJhci5hY3RpdmUge1xuICBAaW5jbHVkZSBhbmltYXRpb24ocHJvZ3Jlc3MtYmFyLXN0cmlwZXMgMnMgbGluZWFyIGluZmluaXRlKTtcbn1cblxuXG4vLyBWYXJpYXRpb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5wcm9ncmVzcy1iYXItc3VjY2VzcyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItc3VjY2Vzcy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItaW5mbyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItaW5mby1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItd2FybmluZyB7XG4gIEBpbmNsdWRlIHByb2dyZXNzLWJhci12YXJpYW50KCRwcm9ncmVzcy1iYXItd2FybmluZy1iZyk7XG59XG5cbi5wcm9ncmVzcy1iYXItZGFuZ2VyIHtcbiAgQGluY2x1ZGUgcHJvZ3Jlc3MtYmFyLXZhcmlhbnQoJHByb2dyZXNzLWJhci1kYW5nZXItYmcpO1xufVxuIiwiLm1lZGlhIHtcbiAgLy8gUHJvcGVyIHNwYWNpbmcgYmV0d2VlbiBpbnN0YW5jZXMgb2YgLm1lZGlhXG4gIG1hcmdpbi10b3A6IDE1cHg7XG5cbiAgJjpmaXJzdC1jaGlsZCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgfVxufVxuXG4ubWVkaWEsXG4ubWVkaWEtYm9keSB7XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHpvb206IDE7XG59XG5cbi5tZWRpYS1ib2R5IHtcbiAgd2lkdGg6IDEwMDAwcHg7XG59XG5cbi5tZWRpYS1vYmplY3Qge1xuICBkaXNwbGF5OiBibG9jaztcblxuICAvLyBGaXggY29sbGFwc2UgaW4gd2Via2l0IGZyb20gbWF4LXdpZHRoOiAxMDAlIGFuZCBkaXNwbGF5OiB0YWJsZS1jZWxsLlxuICAmLmltZy10aHVtYm5haWwge1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgfVxufVxuXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEgPiAucHVsbC1yaWdodCB7XG4gIHBhZGRpbmctbGVmdDogMTBweDtcbn1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEgPiAucHVsbC1sZWZ0IHtcbiAgcGFkZGluZy1yaWdodDogMTBweDtcbn1cblxuLm1lZGlhLWxlZnQsXG4ubWVkaWEtcmlnaHQsXG4ubWVkaWEtYm9keSB7XG4gIGRpc3BsYXk6IHRhYmxlLWNlbGw7XG4gIHZlcnRpY2FsLWFsaWduOiB0b3A7XG59XG5cbi5tZWRpYS1taWRkbGUge1xuICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xufVxuXG4ubWVkaWEtYm90dG9tIHtcbiAgdmVydGljYWwtYWxpZ246IGJvdHRvbTtcbn1cblxuLy8gUmVzZXQgbWFyZ2lucyBvbiBoZWFkaW5ncyBmb3IgdGlnaHRlciBkZWZhdWx0IHNwYWNpbmdcbi5tZWRpYS1oZWFkaW5nIHtcbiAgbWFyZ2luLXRvcDogMDtcbiAgbWFyZ2luLWJvdHRvbTogNXB4O1xufVxuXG4vLyBNZWRpYSBsaXN0IHZhcmlhdGlvblxuLy9cbi8vIFVuZG8gZGVmYXVsdCB1bC9vbCBzdHlsZXNcbi5tZWRpYS1saXN0IHtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBsaXN0LXN0eWxlOiBub25lO1xufVxuIiwiLy9cbi8vIExpc3QgZ3JvdXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi8vXG4vLyBFYXNpbHkgdXNhYmxlIG9uIDx1bD4sIDxvbD4sIG9yIDxkaXY+LlxuXG4ubGlzdC1ncm91cCB7XG4gIC8vIE5vIG5lZWQgdG8gc2V0IGxpc3Qtc3R5bGU6IG5vbmU7IHNpbmNlIC5saXN0LWdyb3VwLWl0ZW0gaXMgYmxvY2sgbGV2ZWxcbiAgcGFkZGluZy1sZWZ0OiAwOyAvLyByZXNldCBwYWRkaW5nIGJlY2F1c2UgdWwgYW5kIG9sXG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG59XG5cblxuLy8gSW5kaXZpZHVhbCBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIG9uIGBsaWBzIG9yIGBkaXZgcyB3aXRoaW4gdGhlIGAubGlzdC1ncm91cGAgcGFyZW50LlxuXG4ubGlzdC1ncm91cC1pdGVtIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcGFkZGluZzogMTBweCAxNXB4O1xuICAvLyBQbGFjZSB0aGUgYm9yZGVyIG9uIHRoZSBsaXN0IGl0ZW1zIGFuZCBuZWdhdGl2ZSBtYXJnaW4gdXAgZm9yIGJldHRlciBzdHlsaW5nXG4gIG1hcmdpbi1ib3R0b206IC0xcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICRsaXN0LWdyb3VwLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkbGlzdC1ncm91cC1ib3JkZXI7XG5cbiAgLy8gUm91bmQgdGhlIGZpcnN0IGFuZCBsYXN0IGl0ZW1zXG4gICY6Zmlyc3QtY2hpbGQge1xuICAgIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCRsaXN0LWdyb3VwLWJvcmRlci1yYWRpdXMpO1xuICB9XG4gICY6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygkbGlzdC1ncm91cC1ib3JkZXItcmFkaXVzKTtcbiAgfVxuXG4gIC8vIERpc2FibGVkIHN0YXRlXG4gICYuZGlzYWJsZWQsXG4gICYuZGlzYWJsZWQ6aG92ZXIsXG4gICYuZGlzYWJsZWQ6Zm9jdXMge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC1jb2xvcjtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQ7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtZGlzYWJsZWQtYmc7XG5cbiAgICAvLyBGb3JjZSBjb2xvciB0byBpbmhlcml0IGZvciBjdXN0b20gY29udGVudFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1kaXNhYmxlZC10ZXh0LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gIC8vIEFjdGl2ZSBjbGFzcyBvbiBpdGVtIGl0c2VsZiwgbm90IHBhcmVudFxuICAmLmFjdGl2ZSxcbiAgJi5hY3RpdmU6aG92ZXIsXG4gICYuYWN0aXZlOmZvY3VzIHtcbiAgICB6LWluZGV4OiAyOyAvLyBQbGFjZSBhY3RpdmUgaXRlbXMgYWJvdmUgdGhlaXIgc2libGluZ3MgZm9yIHByb3BlciBib3JkZXIgc3R5bGluZ1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtY29sb3I7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJnO1xuICAgIGJvcmRlci1jb2xvcjogJGxpc3QtZ3JvdXAtYWN0aXZlLWJvcmRlcjtcblxuICAgIC8vIEZvcmNlIGNvbG9yIHRvIGluaGVyaXQgZm9yIGN1c3RvbSBjb250ZW50XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS1oZWFkaW5nLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IHNtYWxsLFxuICAgIC5saXN0LWdyb3VwLWl0ZW0taGVhZGluZyA+IC5zbWFsbCB7XG4gICAgICBjb2xvcjogaW5oZXJpdDtcbiAgICB9XG4gICAgLmxpc3QtZ3JvdXAtaXRlbS10ZXh0IHtcbiAgICAgIGNvbG9yOiAkbGlzdC1ncm91cC1hY3RpdmUtdGV4dC1jb2xvcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBJbnRlcmFjdGl2ZSBsaXN0IGl0ZW1zXG4vL1xuLy8gVXNlIGFuY2hvciBvciBidXR0b24gZWxlbWVudHMgaW5zdGVhZCBvZiBgbGlgcyBvciBgZGl2YHMgdG8gY3JlYXRlIGludGVyYWN0aXZlIGl0ZW1zLlxuLy8gSW5jbHVkZXMgYW4gZXh0cmEgYC5hY3RpdmVgIG1vZGlmaWVyIGNsYXNzIGZvciBzaG93aW5nIHNlbGVjdGVkIGl0ZW1zLlxuXG5hLmxpc3QtZ3JvdXAtaXRlbSxcbmJ1dHRvbi5saXN0LWdyb3VwLWl0ZW0ge1xuICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1jb2xvcjtcblxuICAubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICAgIGNvbG9yOiAkbGlzdC1ncm91cC1saW5rLWhlYWRpbmctY29sb3I7XG4gIH1cblxuICAvLyBIb3ZlciBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGxpc3QtZ3JvdXAtbGluay1ob3Zlci1jb2xvcjtcbiAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGxpc3QtZ3JvdXAtaG92ZXItYmc7XG4gIH1cbn1cblxuYnV0dG9uLmxpc3QtZ3JvdXAtaXRlbSB7XG4gIHdpZHRoOiAxMDAlO1xuICB0ZXh0LWFsaWduOiBsZWZ0O1xufVxuXG5cbi8vIENvbnRleHR1YWwgdmFyaWFudHNcbi8vXG4vLyBBZGQgbW9kaWZpZXIgY2xhc3NlcyB0byBjaGFuZ2UgdGV4dCBhbmQgYmFja2dyb3VuZCBjb2xvciBvbiBpbmRpdmlkdWFsIGl0ZW1zLlxuLy8gT3JnYW5pemF0aW9uYWxseSwgdGhpcyBtdXN0IGNvbWUgYWZ0ZXIgdGhlIGA6aG92ZXJgIHN0YXRlcy5cblxuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoc3VjY2VzcywgJHN0YXRlLXN1Y2Nlc3MtYmcsICRzdGF0ZS1zdWNjZXNzLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoaW5mbywgJHN0YXRlLWluZm8tYmcsICRzdGF0ZS1pbmZvLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQod2FybmluZywgJHN0YXRlLXdhcm5pbmctYmcsICRzdGF0ZS13YXJuaW5nLXRleHQpO1xuQGluY2x1ZGUgbGlzdC1ncm91cC1pdGVtLXZhcmlhbnQoZGFuZ2VyLCAkc3RhdGUtZGFuZ2VyLWJnLCAkc3RhdGUtZGFuZ2VyLXRleHQpO1xuXG5cbi8vIEN1c3RvbSBjb250ZW50IG9wdGlvbnNcbi8vXG4vLyBFeHRyYSBjbGFzc2VzIGZvciBjcmVhdGluZyB3ZWxsLWZvcm1hdHRlZCBjb250ZW50IHdpdGhpbiBgLmxpc3QtZ3JvdXAtaXRlbWBzLlxuXG4ubGlzdC1ncm91cC1pdGVtLWhlYWRpbmcge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiA1cHg7XG59XG4ubGlzdC1ncm91cC1pdGVtLXRleHQge1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBsaW5lLWhlaWdodDogMS4zO1xufVxuIiwiLy9cbi8vIFBhbmVsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ucGFuZWwge1xuICBtYXJnaW4tYm90dG9tOiAkbGluZS1oZWlnaHQtY29tcHV0ZWQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1iZztcbiAgYm9yZGVyOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIGJvcmRlci1yYWRpdXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzO1xuICBAaW5jbHVkZSBib3gtc2hhZG93KDAgMXB4IDFweCByZ2JhKDAsIDAsIDAsIC4wNSkpO1xufVxuXG4vLyBQYW5lbCBjb250ZW50c1xuLnBhbmVsLWJvZHkge1xuICBwYWRkaW5nOiAkcGFuZWwtYm9keS1wYWRkaW5nO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbn1cblxuLy8gT3B0aW9uYWwgaGVhZGluZ1xuLnBhbmVsLWhlYWRpbmcge1xuICBwYWRkaW5nOiAkcGFuZWwtaGVhZGluZy1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgdHJhbnNwYXJlbnQ7XG4gIEBpbmNsdWRlIGJvcmRlci10b3AtcmFkaXVzKCgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpKTtcblxuICA+IC5kcm9wZG93biAuZHJvcGRvd24tdG9nZ2xlIHtcbiAgICBjb2xvcjogaW5oZXJpdDtcbiAgfVxufVxuXG4vLyBXaXRoaW4gaGVhZGluZywgc3RyaXAgYW55IGBoKmAgdGFnIG9mIGl0cyBkZWZhdWx0IG1hcmdpbnMgZm9yIHNwYWNpbmcuXG4ucGFuZWwtdGl0bGUge1xuICBtYXJnaW4tdG9wOiAwO1xuICBtYXJnaW4tYm90dG9tOiAwO1xuICBmb250LXNpemU6IGNlaWwoKCRmb250LXNpemUtYmFzZSAqIDEuMTI1KSk7XG4gIGNvbG9yOiBpbmhlcml0O1xuXG4gID4gYSxcbiAgPiBzbWFsbCxcbiAgPiAuc21hbGwsXG4gID4gc21hbGwgPiBhLFxuICA+IC5zbWFsbCA+IGEge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG59XG5cbi8vIE9wdGlvbmFsIGZvb3RlciAoc3RheXMgZ3JheSBpbiBldmVyeSBtb2RpZmllciBjbGFzcylcbi5wYW5lbC1mb290ZXIge1xuICBwYWRkaW5nOiAkcGFuZWwtZm9vdGVyLXBhZGRpbmc7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwYW5lbC1mb290ZXItYmc7XG4gIGJvcmRlci10b3A6IDFweCBzb2xpZCAkcGFuZWwtaW5uZXItYm9yZGVyO1xuICBAaW5jbHVkZSBib3JkZXItYm90dG9tLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG59XG5cblxuLy8gTGlzdCBncm91cHMgaW4gcGFuZWxzXG4vL1xuLy8gQnkgZGVmYXVsdCwgc3BhY2Ugb3V0IGxpc3QgZ3JvdXAgY29udGVudCBmcm9tIHBhbmVsIGhlYWRpbmdzIHRvIGFjY291bnQgZm9yXG4vLyBhbnkga2luZCBvZiBjdXN0b20gY29udGVudCBiZXR3ZWVuIHRoZSB0d28uXG5cbi5wYW5lbCB7XG4gID4gLmxpc3QtZ3JvdXAsXG4gID4gLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICAubGlzdC1ncm91cC1pdGVtIHtcbiAgICAgIGJvcmRlci13aWR0aDogMXB4IDA7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gICAgJjpmaXJzdC1jaGlsZCB7XG4gICAgICAubGlzdC1ncm91cC1pdGVtOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLXRvcDogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFkZCBib3JkZXIgYm90dG9tIHJhZGl1cyBmb3IgbGFzdCBvbmVcbiAgICAmOmxhc3QtY2hpbGQge1xuICAgICAgLmxpc3QtZ3JvdXAtaXRlbTpsYXN0LWNoaWxkIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC5wYW5lbC1oZWFkaW5nICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgIC5saXN0LWdyb3VwLWl0ZW06Zmlyc3QtY2hpbGQge1xuICAgICAgQGluY2x1ZGUgYm9yZGVyLXRvcC1yYWRpdXMoMCk7XG4gICAgfVxuICB9XG59XG4vLyBDb2xsYXBzZSBzcGFjZSBiZXR3ZWVuIHdoZW4gdGhlcmUncyBubyBhZGRpdGlvbmFsIGNvbnRlbnQuXG4ucGFuZWwtaGVhZGluZyArIC5saXN0LWdyb3VwIHtcbiAgLmxpc3QtZ3JvdXAtaXRlbTpmaXJzdC1jaGlsZCB7XG4gICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgfVxufVxuLmxpc3QtZ3JvdXAgKyAucGFuZWwtZm9vdGVyIHtcbiAgYm9yZGVyLXRvcC13aWR0aDogMDtcbn1cblxuLy8gVGFibGVzIGluIHBhbmVsc1xuLy9cbi8vIFBsYWNlIGEgbm9uLWJvcmRlcmVkIGAudGFibGVgIHdpdGhpbiBhIHBhbmVsIChub3Qgd2l0aGluIGEgYC5wYW5lbC1ib2R5YCkgYW5kXG4vLyB3YXRjaCBpdCBnbyBmdWxsIHdpZHRoLlxuXG4ucGFuZWwge1xuICA+IC50YWJsZSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZSxcbiAgPiAucGFuZWwtY29sbGFwc2UgPiAudGFibGUge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG5cbiAgICBjYXB0aW9uIHtcbiAgICAgIHBhZGRpbmctcmlnaHQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgICBwYWRkaW5nLWxlZnQ6ICRwYW5lbC1ib2R5LXBhZGRpbmc7XG4gICAgfVxuICB9XG4gIC8vIEFkZCBib3JkZXIgdG9wIHJhZGl1cyBmb3IgZmlyc3Qgb25lXG4gID4gLnRhYmxlOmZpcnN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmZpcnN0LWNoaWxkID4gLnRhYmxlOmZpcnN0LWNoaWxkIHtcbiAgICBAaW5jbHVkZSBib3JkZXItdG9wLXJhZGl1cygoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKSk7XG5cbiAgICA+IHRoZWFkOmZpcnN0LWNoaWxkLFxuICAgID4gdGJvZHk6Zmlyc3QtY2hpbGQge1xuICAgICAgPiB0cjpmaXJzdC1jaGlsZCB7XG4gICAgICAgIGJvcmRlci10b3AtbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG5cbiAgICAgICAgdGQ6Zmlyc3QtY2hpbGQsXG4gICAgICAgIHRoOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFkaXVzOiAoJHBhbmVsLWJvcmRlci1yYWRpdXMgLSAxKTtcbiAgICAgICAgfVxuICAgICAgICB0ZDpsYXN0LWNoaWxkLFxuICAgICAgICB0aDpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItdG9wLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLy8gQWRkIGJvcmRlciBib3R0b20gcmFkaXVzIGZvciBsYXN0IG9uZVxuICA+IC50YWJsZTpsYXN0LWNoaWxkLFxuICA+IC50YWJsZS1yZXNwb25zaXZlOmxhc3QtY2hpbGQgPiAudGFibGU6bGFzdC1jaGlsZCB7XG4gICAgQGluY2x1ZGUgYm9yZGVyLWJvdHRvbS1yYWRpdXMoKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSkpO1xuXG4gICAgPiB0Ym9keTpsYXN0LWNoaWxkLFxuICAgID4gdGZvb3Q6bGFzdC1jaGlsZCB7XG4gICAgICA+IHRyOmxhc3QtY2hpbGQge1xuICAgICAgICBib3JkZXItYm90dG9tLXJpZ2h0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIGJvcmRlci1ib3R0b20tbGVmdC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuXG4gICAgICAgIHRkOmZpcnN0LWNoaWxkLFxuICAgICAgICB0aDpmaXJzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1sZWZ0LXJhZGl1czogKCRwYW5lbC1ib3JkZXItcmFkaXVzIC0gMSk7XG4gICAgICAgIH1cbiAgICAgICAgdGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgdGg6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1yaWdodC1yYWRpdXM6ICgkcGFuZWwtYm9yZGVyLXJhZGl1cyAtIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUsXG4gID4gLnBhbmVsLWJvZHkgKyAudGFibGUtcmVzcG9uc2l2ZSxcbiAgPiAudGFibGUgKyAucGFuZWwtYm9keSxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSArIC5wYW5lbC1ib2R5IHtcbiAgICBib3JkZXItdG9wOiAxcHggc29saWQgJHRhYmxlLWJvcmRlci1jb2xvcjtcbiAgfVxuICA+IC50YWJsZSA+IHRib2R5OmZpcnN0LWNoaWxkID4gdHI6Zmlyc3QtY2hpbGQgdGgsXG4gID4gLnRhYmxlID4gdGJvZHk6Zmlyc3QtY2hpbGQgPiB0cjpmaXJzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgfVxuICA+IC50YWJsZS1ib3JkZXJlZCxcbiAgPiAudGFibGUtcmVzcG9uc2l2ZSA+IC50YWJsZS1ib3JkZXJlZCB7XG4gICAgYm9yZGVyOiAwO1xuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSxcbiAgICA+IHRmb290IHtcbiAgICAgID4gdHIge1xuICAgICAgICA+IHRoOmZpcnN0LWNoaWxkLFxuICAgICAgICA+IHRkOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBib3JkZXItbGVmdDogMDtcbiAgICAgICAgfVxuICAgICAgICA+IHRoOmxhc3QtY2hpbGQsXG4gICAgICAgID4gdGQ6bGFzdC1jaGlsZCB7XG4gICAgICAgICAgYm9yZGVyLXJpZ2h0OiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgID4gdGhlYWQsXG4gICAgPiB0Ym9keSB7XG4gICAgICA+IHRyOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICA+IHRib2R5LFxuICAgID4gdGZvb3Qge1xuICAgICAgPiB0cjpsYXN0LWNoaWxkIHtcbiAgICAgICAgPiB0ZCxcbiAgICAgICAgPiB0aCB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuICA+IC50YWJsZS1yZXNwb25zaXZlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgIGJvcmRlcjogMDtcbiAgfVxufVxuXG5cbi8vIENvbGxhcHNpYmxlIHBhbmVscyAoYWthLCBhY2NvcmRpb24pXG4vL1xuLy8gV3JhcCBhIHNlcmllcyBvZiBwYW5lbHMgaW4gYC5wYW5lbC1ncm91cGAgdG8gdHVybiB0aGVtIGludG8gYW4gYWNjb3JkaW9uIHdpdGhcbi8vIHRoZSBoZWxwIG9mIG91ciBjb2xsYXBzZSBKYXZhU2NyaXB0IHBsdWdpbi5cblxuLnBhbmVsLWdyb3VwIHtcbiAgbWFyZ2luLWJvdHRvbTogJGxpbmUtaGVpZ2h0LWNvbXB1dGVkO1xuXG4gIC8vIFRpZ2h0ZW4gdXAgbWFyZ2luIHNvIGl0J3Mgb25seSBiZXR3ZWVuIHBhbmVsc1xuICAucGFuZWwge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgYm9yZGVyLXJhZGl1czogJHBhbmVsLWJvcmRlci1yYWRpdXM7XG5cbiAgICArIC5wYW5lbCB7XG4gICAgICBtYXJnaW4tdG9wOiA1cHg7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWhlYWRpbmcge1xuICAgIGJvcmRlci1ib3R0b206IDA7XG5cbiAgICArIC5wYW5lbC1jb2xsYXBzZSA+IC5wYW5lbC1ib2R5LFxuICAgICsgLnBhbmVsLWNvbGxhcHNlID4gLmxpc3QtZ3JvdXAge1xuICAgICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkICRwYW5lbC1pbm5lci1ib3JkZXI7XG4gICAgfVxuICB9XG5cbiAgLnBhbmVsLWZvb3RlciB7XG4gICAgYm9yZGVyLXRvcDogMDtcbiAgICArIC5wYW5lbC1jb2xsYXBzZSAucGFuZWwtYm9keSB7XG4gICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJHBhbmVsLWlubmVyLWJvcmRlcjtcbiAgICB9XG4gIH1cbn1cblxuXG4vLyBDb250ZXh0dWFsIHZhcmlhdGlvbnNcbi5wYW5lbC1kZWZhdWx0IHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtZGVmYXVsdC1ib3JkZXIsICRwYW5lbC1kZWZhdWx0LXRleHQsICRwYW5lbC1kZWZhdWx0LWhlYWRpbmctYmcsICRwYW5lbC1kZWZhdWx0LWJvcmRlcik7XG59XG4ucGFuZWwtcHJpbWFyeSB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXByaW1hcnktYm9yZGVyLCAkcGFuZWwtcHJpbWFyeS10ZXh0LCAkcGFuZWwtcHJpbWFyeS1oZWFkaW5nLWJnLCAkcGFuZWwtcHJpbWFyeS1ib3JkZXIpO1xufVxuLnBhbmVsLXN1Y2Nlc3Mge1xuICBAaW5jbHVkZSBwYW5lbC12YXJpYW50KCRwYW5lbC1zdWNjZXNzLWJvcmRlciwgJHBhbmVsLXN1Y2Nlc3MtdGV4dCwgJHBhbmVsLXN1Y2Nlc3MtaGVhZGluZy1iZywgJHBhbmVsLXN1Y2Nlc3MtYm9yZGVyKTtcbn1cbi5wYW5lbC1pbmZvIHtcbiAgQGluY2x1ZGUgcGFuZWwtdmFyaWFudCgkcGFuZWwtaW5mby1ib3JkZXIsICRwYW5lbC1pbmZvLXRleHQsICRwYW5lbC1pbmZvLWhlYWRpbmctYmcsICRwYW5lbC1pbmZvLWJvcmRlcik7XG59XG4ucGFuZWwtd2FybmluZyB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLXdhcm5pbmctYm9yZGVyLCAkcGFuZWwtd2FybmluZy10ZXh0LCAkcGFuZWwtd2FybmluZy1oZWFkaW5nLWJnLCAkcGFuZWwtd2FybmluZy1ib3JkZXIpO1xufVxuLnBhbmVsLWRhbmdlciB7XG4gIEBpbmNsdWRlIHBhbmVsLXZhcmlhbnQoJHBhbmVsLWRhbmdlci1ib3JkZXIsICRwYW5lbC1kYW5nZXItdGV4dCwgJHBhbmVsLWRhbmdlci1oZWFkaW5nLWJnLCAkcGFuZWwtZGFuZ2VyLWJvcmRlcik7XG59XG4iLCIvLyBFbWJlZHMgcmVzcG9uc2l2ZVxuLy9cbi8vIENyZWRpdDogTmljb2xhcyBHYWxsYWdoZXIgYW5kIFNVSVQgQ1NTLlxuXG4uZW1iZWQtcmVzcG9uc2l2ZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMDtcbiAgcGFkZGluZzogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAuZW1iZWQtcmVzcG9uc2l2ZS1pdGVtLFxuICBpZnJhbWUsXG4gIGVtYmVkLFxuICBvYmplY3QsXG4gIHZpZGVvIHtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBib3JkZXI6IDA7XG4gIH1cbn1cblxuLy8gTW9kaWZpZXIgY2xhc3MgZm9yIDE2OjkgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS0xNmJ5OSB7XG4gIHBhZGRpbmctYm90dG9tOiA1Ni4yNSU7XG59XG5cbi8vIE1vZGlmaWVyIGNsYXNzIGZvciA0OjMgYXNwZWN0IHJhdGlvXG4uZW1iZWQtcmVzcG9uc2l2ZS00YnkzIHtcbiAgcGFkZGluZy1ib3R0b206IDc1JTtcbn1cbiIsIi8vXG4vLyBXZWxsc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4vLyBCYXNlIGNsYXNzXG4ud2VsbCB7XG4gIG1pbi1oZWlnaHQ6IDIwcHg7XG4gIHBhZGRpbmc6IDE5cHg7XG4gIG1hcmdpbi1ib3R0b206IDIwcHg7XG4gIGJhY2tncm91bmQtY29sb3I6ICR3ZWxsLWJnO1xuICBib3JkZXI6IDFweCBzb2xpZCAkd2VsbC1ib3JkZXI7XG4gIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzLWJhc2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coaW5zZXQgMCAxcHggMXB4IHJnYmEoMCwgMCwgMCwgLjA1KSk7XG4gIGJsb2NrcXVvdGUge1xuICAgIGJvcmRlci1jb2xvcjogI2RkZDtcbiAgICBib3JkZXItY29sb3I6IHJnYmEoMCwgMCwgMCwgLjE1KTtcbiAgfVxufVxuXG4vLyBTaXplc1xuLndlbGwtbGcge1xuICBwYWRkaW5nOiAyNHB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbn1cbi53ZWxsLXNtIHtcbiAgcGFkZGluZzogOXB4O1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1zbWFsbDtcbn1cbiIsIi8vXG4vLyBDbG9zZSBpY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuXG4uY2xvc2Uge1xuICBmbG9hdDogcmlnaHQ7XG4gIGZvbnQtc2l6ZTogKCRmb250LXNpemUtYmFzZSAqIDEuNSk7XG4gIGZvbnQtd2VpZ2h0OiAkY2xvc2UtZm9udC13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAxO1xuICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICB0ZXh0LXNoYWRvdzogJGNsb3NlLXRleHQtc2hhZG93O1xuICBAaW5jbHVkZSBvcGFjaXR5KC4yKTtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNsb3NlLWNvbG9yO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguNSk7XG4gIH1cblxuICAvLyBbY29udmVydGVyXSBleHRyYWN0ZWQgYnV0dG9uJiB0byBidXR0b24uY2xvc2Vcbn1cblxuLy8gQWRkaXRpb25hbCBwcm9wZXJ0aWVzIGZvciBidXR0b24gdmVyc2lvblxuLy8gaU9TIHJlcXVpcmVzIHRoZSBidXR0b24gZWxlbWVudCBpbnN0ZWFkIG9mIGFuIGFuY2hvciB0YWcuXG4vLyBJZiB5b3Ugd2FudCB0aGUgYW5jaG9yIHZlcnNpb24sIGl0IHJlcXVpcmVzIGBocmVmPVwiI1wiYC5cbi8vIFNlZSBodHRwczovL2RldmVsb3Blci5tb3ppbGxhLm9yZy9lbi1VUy9kb2NzL1dlYi9FdmVudHMvY2xpY2sjU2FmYXJpX01vYmlsZVxuYnV0dG9uLmNsb3NlIHtcbiAgcGFkZGluZzogMDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgYm9yZGVyOiAwO1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gIGFwcGVhcmFuY2U6IG5vbmU7XG59XG4iLCIvL1xuLy8gTW9kYWxzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4vLyAubW9kYWwtb3BlbiAgICAgIC0gYm9keSBjbGFzcyBmb3Iga2lsbGluZyB0aGUgc2Nyb2xsXG4vLyAubW9kYWwgICAgICAgICAgIC0gY29udGFpbmVyIHRvIHNjcm9sbCB3aXRoaW5cbi8vIC5tb2RhbC1kaWFsb2cgICAgLSBwb3NpdGlvbmluZyBzaGVsbCBmb3IgdGhlIGFjdHVhbCBtb2RhbFxuLy8gLm1vZGFsLWNvbnRlbnQgICAtIGFjdHVhbCBtb2RhbCB3LyBiZyBhbmQgY29ybmVycyBhbmQgc2hpdFxuXG4vLyBLaWxsIHRoZSBzY3JvbGwgb24gdGhlIGJvZHlcbi5tb2RhbC1vcGVuIHtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbn1cblxuLy8gQ29udGFpbmVyIHRoYXQgdGhlIG1vZGFsIHNjcm9sbHMgd2l0aGluXG4ubW9kYWwge1xuICBwb3NpdGlvbjogZml4ZWQ7XG4gIHRvcDogMDtcbiAgcmlnaHQ6IDA7XG4gIGJvdHRvbTogMDtcbiAgbGVmdDogMDtcbiAgei1pbmRleDogJHppbmRleC1tb2RhbDtcbiAgZGlzcGxheTogbm9uZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgLXdlYmtpdC1vdmVyZmxvdy1zY3JvbGxpbmc6IHRvdWNoO1xuXG4gIC8vIFByZXZlbnQgQ2hyb21lIG9uIFdpbmRvd3MgZnJvbSBhZGRpbmcgYSBmb2N1cyBvdXRsaW5lLiBGb3IgZGV0YWlscywgc2VlXG4gIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9wdWxsLzEwOTUxLlxuICBvdXRsaW5lOiAwO1xuXG4gIC8vIFdoZW4gZmFkaW5nIGluIHRoZSBtb2RhbCwgYW5pbWF0ZSBpdCB0byBzbGlkZSBkb3duXG4gICYuZmFkZSAubW9kYWwtZGlhbG9nIHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUoMCwgLTI1JSk7XG4gICAgQGluY2x1ZGUgdHJhbnNpdGlvbi10cmFuc2Zvcm0oMC4zcyBlYXNlLW91dCk7XG4gIH1cbiAgJi5pbiAubW9kYWwtZGlhbG9nIHsgQGluY2x1ZGUgdHJhbnNsYXRlKDAsIDApOyB9XG59XG4ubW9kYWwtb3BlbiAubW9kYWwge1xuICBvdmVyZmxvdy14OiBoaWRkZW47XG4gIG92ZXJmbG93LXk6IGF1dG87XG59XG5cbi8vIFNoZWxsIGRpdiB0byBwb3NpdGlvbiB0aGUgbW9kYWwgd2l0aCBib3R0b20gcGFkZGluZ1xuLm1vZGFsLWRpYWxvZyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgd2lkdGg6IGF1dG87XG4gIG1hcmdpbjogMTBweDtcbn1cblxuLy8gQWN0dWFsIG1vZGFsXG4ubW9kYWwtY29udGVudCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWNvbnRlbnQtYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRtb2RhbC1jb250ZW50LWZhbGxiYWNrLWJvcmRlci1jb2xvcjsgLy9vbGQgYnJvd3NlcnMgZmFsbGJhY2sgKGllOCBldGMpXG4gIGJvcmRlcjogMXB4IHNvbGlkICRtb2RhbC1jb250ZW50LWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyLXJhZGl1czogJGJvcmRlci1yYWRpdXMtbGFyZ2U7XG4gIEBpbmNsdWRlIGJveC1zaGFkb3coMCAzcHggOXB4IHJnYmEoMCwgMCwgMCwgLjUpKTtcbiAgLy8gUmVtb3ZlIGZvY3VzIG91dGxpbmUgZnJvbSBvcGVuZWQgbW9kYWxcbiAgb3V0bGluZTogMDtcbn1cblxuLy8gTW9kYWwgYmFja2dyb3VuZFxuLm1vZGFsLWJhY2tkcm9wIHtcbiAgcG9zaXRpb246IGZpeGVkO1xuICB0b3A6IDA7XG4gIHJpZ2h0OiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtbW9kYWwtYmFja2dyb3VuZDtcbiAgYmFja2dyb3VuZC1jb2xvcjogJG1vZGFsLWJhY2tkcm9wLWJnO1xuICAvLyBGYWRlIGZvciBiYWNrZHJvcFxuICAmLmZhZGUgeyBAaW5jbHVkZSBvcGFjaXR5KDApOyB9XG4gICYuaW4geyBAaW5jbHVkZSBvcGFjaXR5KCRtb2RhbC1iYWNrZHJvcC1vcGFjaXR5KTsgfVxufVxuXG4vLyBNb2RhbCBoZWFkZXJcbi8vIFRvcCBzZWN0aW9uIG9mIHRoZSBtb2RhbCB3LyB0aXRsZSBhbmQgZGlzbWlzc1xuLm1vZGFsLWhlYWRlciB7XG4gIHBhZGRpbmc6ICRtb2RhbC10aXRsZS1wYWRkaW5nO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgJG1vZGFsLWhlYWRlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuLy8gQ2xvc2UgaWNvblxuLm1vZGFsLWhlYWRlciAuY2xvc2Uge1xuICBtYXJnaW4tdG9wOiAtMnB4O1xufVxuXG4vLyBUaXRsZSB0ZXh0IHdpdGhpbiBoZWFkZXJcbi5tb2RhbC10aXRsZSB7XG4gIG1hcmdpbjogMDtcbiAgbGluZS1oZWlnaHQ6ICRtb2RhbC10aXRsZS1saW5lLWhlaWdodDtcbn1cblxuLy8gTW9kYWwgYm9keVxuLy8gV2hlcmUgYWxsIG1vZGFsIGNvbnRlbnQgcmVzaWRlcyAoc2libGluZyBvZiAubW9kYWwtaGVhZGVyIGFuZCAubW9kYWwtZm9vdGVyKVxuLm1vZGFsLWJvZHkge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xufVxuXG4vLyBGb290ZXIgKGZvciBhY3Rpb25zKVxuLm1vZGFsLWZvb3RlciB7XG4gIHBhZGRpbmc6ICRtb2RhbC1pbm5lci1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiByaWdodDsgLy8gcmlnaHQgYWxpZ24gYnV0dG9uc1xuICBib3JkZXItdG9wOiAxcHggc29saWQgJG1vZGFsLWZvb3Rlci1ib3JkZXItY29sb3I7XG4gIEBpbmNsdWRlIGNsZWFyZml4OyAvLyBjbGVhciBpdCBpbiBjYXNlIGZvbGtzIHVzZSAucHVsbC0qIGNsYXNzZXMgb24gYnV0dG9uc1xuXG4gIC8vIFByb3Blcmx5IHNwYWNlIG91dCBidXR0b25zXG4gIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwOyAvLyBhY2NvdW50IGZvciBpbnB1dFt0eXBlPVwic3VibWl0XCJdIHdoaWNoIGdldHMgdGhlIGJvdHRvbSBtYXJnaW4gbGlrZSBhbGwgb3RoZXIgaW5wdXRzXG4gICAgbWFyZ2luLWxlZnQ6IDVweDtcbiAgfVxuICAvLyBidXQgb3ZlcnJpZGUgdGhhdCBmb3IgYnV0dG9uIGdyb3Vwc1xuICAuYnRuLWdyb3VwIC5idG4gKyAuYnRuIHtcbiAgICBtYXJnaW4tbGVmdDogLTFweDtcbiAgfVxuICAvLyBhbmQgb3ZlcnJpZGUgaXQgZm9yIGJsb2NrIGJ1dHRvbnMgYXMgd2VsbFxuICAuYnRuLWJsb2NrICsgLmJ0bi1ibG9jayB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gIH1cbn1cblxuLy8gTWVhc3VyZSBzY3JvbGxiYXIgd2lkdGggZm9yIHBhZGRpbmcgYm9keSBkdXJpbmcgbW9kYWwgc2hvdy9oaWRlXG4ubW9kYWwtc2Nyb2xsYmFyLW1lYXN1cmUge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogLTk5OTlweDtcbiAgd2lkdGg6IDUwcHg7XG4gIGhlaWdodDogNTBweDtcbiAgb3ZlcmZsb3c6IHNjcm9sbDtcbn1cblxuLy8gU2NhbGUgdXAgdGhlIG1vZGFsXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIHtcbiAgLy8gQXV0b21hdGljYWxseSBzZXQgbW9kYWwncyB3aWR0aCBmb3IgbGFyZ2VyIHZpZXdwb3J0c1xuICAubW9kYWwtZGlhbG9nIHtcbiAgICB3aWR0aDogJG1vZGFsLW1kO1xuICAgIG1hcmdpbjogMzBweCBhdXRvO1xuICB9XG4gIC5tb2RhbC1jb250ZW50IHtcbiAgICBAaW5jbHVkZSBib3gtc2hhZG93KDAgNXB4IDE1cHggcmdiYSgwLCAwLCAwLCAuNSkpO1xuICB9XG5cbiAgLy8gTW9kYWwgc2l6ZXNcbiAgLm1vZGFsLXNtIHsgd2lkdGg6ICRtb2RhbC1zbTsgfVxufVxuXG5AbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIHtcbiAgLm1vZGFsLWxnIHsgd2lkdGg6ICRtb2RhbC1sZzsgfVxufVxuIiwiLy9cbi8vIFRvb2x0aXBzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIEJhc2UgY2xhc3Ncbi50b29sdGlwIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB6LWluZGV4OiAkemluZGV4LXRvb2x0aXA7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICAvLyBPdXIgcGFyZW50IGVsZW1lbnQgY2FuIGJlIGFyYml0cmFyeSBzaW5jZSB0b29sdGlwcyBhcmUgYnkgZGVmYXVsdCBpbnNlcnRlZCBhcyBhIHNpYmxpbmcgb2YgdGhlaXIgdGFyZ2V0IGVsZW1lbnQuXG4gIC8vIFNvIHJlc2V0IG91ciBmb250IGFuZCB0ZXh0IHByb3BlcnRpZXMgdG8gYXZvaWQgaW5oZXJpdGluZyB3ZWlyZCB2YWx1ZXMuXG4gIEBpbmNsdWRlIHJlc2V0LXRleHQ7XG4gIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZS1zbWFsbDtcblxuICBAaW5jbHVkZSBvcGFjaXR5KDApO1xuXG4gICYuaW4geyBAaW5jbHVkZSBvcGFjaXR5KCR0b29sdGlwLW9wYWNpdHkpOyB9XG4gICYudG9wIHtcbiAgICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIG1hcmdpbi10b3A6IC0zcHg7XG4gIH1cbiAgJi5yaWdodCB7XG4gICAgcGFkZGluZzogMCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBtYXJnaW4tbGVmdDogM3B4O1xuICB9XG4gICYuYm90dG9tIHtcbiAgICBwYWRkaW5nOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIG1hcmdpbi10b3A6IDNweDtcbiAgfVxuICAmLmxlZnQge1xuICAgIHBhZGRpbmc6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWxlZnQ6IC0zcHg7XG4gIH1cblxuICAvLyBOb3RlOiBEZXByZWNhdGVkIC50b3AtbGVmdCwgLnRvcC1yaWdodCwgLmJvdHRvbS1sZWZ0LCBhbmQgLmJvdHRvbS1yaWdodCBhcyBvZiB2My4zLjFcbiAgJi50b3AgLnRvb2x0aXAtYXJyb3cge1xuICAgIGJvdHRvbTogMDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXRvcC1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbiAgJi50b3AtbGVmdCAudG9vbHRpcC1hcnJvdyB7XG4gICAgcmlnaHQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvdHRvbTogMDtcbiAgICBtYXJnaW4tYm90dG9tOiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aCAwO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYudG9wLXJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICBib3R0b206IDA7XG4gICAgbGVmdDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLWJvdHRvbTogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGggMDtcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLnJpZ2h0IC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDUwJTtcbiAgICBsZWZ0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoIDA7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIHJpZ2h0OiAwO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6ICR0b29sdGlwLWFycm93LXdpZHRoIDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYuYm90dG9tIC50b29sdGlwLWFycm93IHtcbiAgICB0b3A6IDA7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLXdpZHRoOiAwICR0b29sdGlwLWFycm93LXdpZHRoICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICR0b29sdGlwLWFycm93LWNvbG9yO1xuICB9XG4gICYuYm90dG9tLWxlZnQgLnRvb2x0aXAtYXJyb3cge1xuICAgIHRvcDogMDtcbiAgICByaWdodDogJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgbWFyZ2luLXRvcDogLSR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIGJvcmRlci13aWR0aDogMCAkdG9vbHRpcC1hcnJvdy13aWR0aCAkdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkdG9vbHRpcC1hcnJvdy1jb2xvcjtcbiAgfVxuICAmLmJvdHRvbS1yaWdodCAudG9vbHRpcC1hcnJvdyB7XG4gICAgdG9wOiAwO1xuICAgIGxlZnQ6ICR0b29sdGlwLWFycm93LXdpZHRoO1xuICAgIG1hcmdpbi10b3A6IC0kdG9vbHRpcC1hcnJvdy13aWR0aDtcbiAgICBib3JkZXItd2lkdGg6IDAgJHRvb2x0aXAtYXJyb3ctd2lkdGggJHRvb2x0aXAtYXJyb3ctd2lkdGg7XG4gICAgYm9yZGVyLWJvdHRvbS1jb2xvcjogJHRvb2x0aXAtYXJyb3ctY29sb3I7XG4gIH1cbn1cblxuLy8gV3JhcHBlciBmb3IgdGhlIHRvb2x0aXAgY29udGVudFxuLnRvb2x0aXAtaW5uZXIge1xuICBtYXgtd2lkdGg6ICR0b29sdGlwLW1heC13aWR0aDtcbiAgcGFkZGluZzogM3B4IDhweDtcbiAgY29sb3I6ICR0b29sdGlwLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIGJhY2tncm91bmQtY29sb3I6ICR0b29sdGlwLWJnO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1iYXNlO1xufVxuXG4vLyBBcnJvd3Ncbi50b29sdGlwLWFycm93IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB3aWR0aDogMDtcbiAgaGVpZ2h0OiAwO1xuICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICBib3JkZXItc3R5bGU6IHNvbGlkO1xufVxuIiwiLy9cbi8vIFBvcG92ZXJzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi5wb3BvdmVyIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIGxlZnQ6IDA7XG4gIHotaW5kZXg6ICR6aW5kZXgtcG9wb3ZlcjtcbiAgZGlzcGxheTogbm9uZTtcbiAgbWF4LXdpZHRoOiAkcG9wb3Zlci1tYXgtd2lkdGg7XG4gIHBhZGRpbmc6IDFweDtcbiAgLy8gT3VyIHBhcmVudCBlbGVtZW50IGNhbiBiZSBhcmJpdHJhcnkgc2luY2UgcG9wb3ZlcnMgYXJlIGJ5IGRlZmF1bHQgaW5zZXJ0ZWQgYXMgYSBzaWJsaW5nIG9mIHRoZWlyIHRhcmdldCBlbGVtZW50LlxuICAvLyBTbyByZXNldCBvdXIgZm9udCBhbmQgdGV4dCBwcm9wZXJ0aWVzIHRvIGF2b2lkIGluaGVyaXRpbmcgd2VpcmQgdmFsdWVzLlxuICBAaW5jbHVkZSByZXNldC10ZXh0O1xuICBmb250LXNpemU6ICRmb250LXNpemUtYmFzZTtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHBvcG92ZXItYmc7XG4gIGJhY2tncm91bmQtY2xpcDogcGFkZGluZy1ib3g7XG4gIGJvcmRlcjogMXB4IHNvbGlkICRwb3BvdmVyLWZhbGxiYWNrLWJvcmRlci1jb2xvcjtcbiAgYm9yZGVyOiAxcHggc29saWQgJHBvcG92ZXItYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAkYm9yZGVyLXJhZGl1cy1sYXJnZTtcbiAgQGluY2x1ZGUgYm94LXNoYWRvdygwIDVweCAxMHB4IHJnYmEoMCwgMCwgMCwgLjIpKTtcblxuICAvLyBPZmZzZXQgdGhlIHBvcG92ZXIgdG8gYWNjb3VudCBmb3IgdGhlIHBvcG92ZXIgYXJyb3dcbiAgJi50b3AgeyBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cbiAgJi5yaWdodCB7IG1hcmdpbi1sZWZ0OiAkcG9wb3Zlci1hcnJvdy13aWR0aDsgfVxuICAmLmJvdHRvbSB7IG1hcmdpbi10b3A6ICRwb3BvdmVyLWFycm93LXdpZHRoOyB9XG4gICYubGVmdCB7IG1hcmdpbi1sZWZ0OiAtJHBvcG92ZXItYXJyb3ctd2lkdGg7IH1cblxuICAvLyBBcnJvd3NcbiAgLy8gLmFycm93IGlzIG91dGVyLCAuYXJyb3c6YWZ0ZXIgaXMgaW5uZXJcbiAgPiAuYXJyb3cge1xuICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG5cbiAgICAmLFxuICAgICY6YWZ0ZXIge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB3aWR0aDogMDtcbiAgICAgIGhlaWdodDogMDtcbiAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgIH1cblxuICAgICY6YWZ0ZXIge1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGJvcmRlci13aWR0aDogJHBvcG92ZXItYXJyb3ctd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgJi50b3AgPiAuYXJyb3cge1xuICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGxlZnQ6IDUwJTtcbiAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LW91dGVyLXdpZHRoO1xuICAgIGJvcmRlci10b3AtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICBib3JkZXItYm90dG9tLXdpZHRoOiAwO1xuICAgICY6YWZ0ZXIge1xuICAgICAgYm90dG9tOiAxcHg7XG4gICAgICBtYXJnaW4tbGVmdDogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1jb2xvcjtcbiAgICAgIGJvcmRlci1ib3R0b20td2lkdGg6IDA7XG4gICAgfVxuICB9XG4gICYucmlnaHQgPiAuYXJyb3cge1xuICAgIHRvcDogNTAlO1xuICAgIGxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICBib3JkZXItbGVmdC13aWR0aDogMDtcbiAgICAmOmFmdGVyIHtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgbGVmdDogMXB4O1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBib3JkZXItcmlnaHQtY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgICAgYm9yZGVyLWxlZnQtd2lkdGg6IDA7XG4gICAgfVxuICB9XG4gICYuYm90dG9tID4gLmFycm93IHtcbiAgICB0b3A6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBsZWZ0OiA1MCU7XG4gICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBib3JkZXItdG9wLXdpZHRoOiAwO1xuICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWZhbGxiYWNrLWNvbG9yOyAvLyBJRTggZmFsbGJhY2tcbiAgICBib3JkZXItYm90dG9tLWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1jb2xvcjtcbiAgICAmOmFmdGVyIHtcbiAgICAgIHRvcDogMXB4O1xuICAgICAgbWFyZ2luLWxlZnQ6IC0kcG9wb3Zlci1hcnJvdy13aWR0aDtcbiAgICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgICAgYm9yZGVyLXRvcC13aWR0aDogMDtcbiAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6ICRwb3BvdmVyLWFycm93LWNvbG9yO1xuICAgIH1cbiAgfVxuXG4gICYubGVmdCA+IC5hcnJvdyB7XG4gICAgdG9wOiA1MCU7XG4gICAgcmlnaHQ6IC0kcG9wb3Zlci1hcnJvdy1vdXRlci13aWR0aDtcbiAgICBtYXJnaW4tdG9wOiAtJHBvcG92ZXItYXJyb3ctb3V0ZXItd2lkdGg7XG4gICAgYm9yZGVyLXJpZ2h0LXdpZHRoOiAwO1xuICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkcG9wb3Zlci1hcnJvdy1vdXRlci1mYWxsYmFjay1jb2xvcjsgLy8gSUU4IGZhbGxiYWNrXG4gICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwb3BvdmVyLWFycm93LW91dGVyLWNvbG9yO1xuICAgICY6YWZ0ZXIge1xuICAgICAgcmlnaHQ6IDFweDtcbiAgICAgIGJvdHRvbTogLSRwb3BvdmVyLWFycm93LXdpZHRoO1xuICAgICAgY29udGVudDogXCIgXCI7XG4gICAgICBib3JkZXItcmlnaHQtd2lkdGg6IDA7XG4gICAgICBib3JkZXItbGVmdC1jb2xvcjogJHBvcG92ZXItYXJyb3ctY29sb3I7XG4gICAgfVxuICB9XG59XG5cbi5wb3BvdmVyLXRpdGxlIHtcbiAgcGFkZGluZzogOHB4IDE0cHg7XG4gIG1hcmdpbjogMDsgLy8gcmVzZXQgaGVhZGluZyBtYXJnaW5cbiAgZm9udC1zaXplOiAkZm9udC1zaXplLWJhc2U7XG4gIGJhY2tncm91bmQtY29sb3I6ICRwb3BvdmVyLXRpdGxlLWJnO1xuICBib3JkZXItYm90dG9tOiAxcHggc29saWQgZGFya2VuKCRwb3BvdmVyLXRpdGxlLWJnLCA1JSk7XG4gIGJvcmRlci1yYWRpdXM6ICgkYm9yZGVyLXJhZGl1cy1sYXJnZSAtIDEpICgkYm9yZGVyLXJhZGl1cy1sYXJnZSAtIDEpIDAgMDtcbn1cblxuLnBvcG92ZXItY29udGVudCB7XG4gIHBhZGRpbmc6IDlweCAxNHB4O1xufVxuIiwiLy9cbi8vIENhcm91c2VsXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIFdyYXBwZXIgZm9yIHRoZSBzbGlkZSBjb250YWluZXIgYW5kIGluZGljYXRvcnNcbi5jYXJvdXNlbCB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLmNhcm91c2VsLWlubmVyIHtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB3aWR0aDogMTAwJTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICA+IC5pdGVtIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgICBAaW5jbHVkZSB0cmFuc2l0aW9uKC42cyBlYXNlLWluLW91dCBsZWZ0KTtcblxuICAgIC8vIEFjY291bnQgZm9yIGphbmtpdHVkZSBvbiBpbWFnZXNcbiAgICA+IGltZyxcbiAgICA+IGEgPiBpbWcge1xuICAgICAgQGluY2x1ZGUgaW1nLXJlc3BvbnNpdmU7XG4gICAgICBsaW5lLWhlaWdodDogMTtcbiAgICB9XG5cbiAgICAvLyBXZWJLaXQgQ1NTMyB0cmFuc2Zvcm1zIGZvciBzdXBwb3J0ZWQgZGV2aWNlc1xuICAgIEBtZWRpYSBhbGwgYW5kICh0cmFuc2Zvcm0tM2QpLCAoLXdlYmtpdC10cmFuc2Zvcm0tM2QpIHtcbiAgICAgIEBpbmNsdWRlIHRyYW5zaXRpb24tdHJhbnNmb3JtKDAuNnMgZWFzZS1pbi1vdXQpO1xuICAgICAgQGluY2x1ZGUgYmFja2ZhY2UtdmlzaWJpbGl0eShoaWRkZW4pO1xuICAgICAgQGluY2x1ZGUgcGVyc3BlY3RpdmUoMTAwMHB4KTtcblxuICAgICAgJi5uZXh0LFxuICAgICAgJi5hY3RpdmUucmlnaHQge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgxMDAlLCAwLCAwKTtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgIH1cbiAgICAgICYucHJldixcbiAgICAgICYuYWN0aXZlLmxlZnQge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgICAmLm5leHQubGVmdCxcbiAgICAgICYucHJldi5yaWdodCxcbiAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMCwgMCwgMCk7XG4gICAgICAgIGxlZnQ6IDA7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgPiAuYWN0aXZlLFxuICA+IC5uZXh0LFxuICA+IC5wcmV2IHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgfVxuXG4gID4gLmFjdGl2ZSB7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gID4gLm5leHQsXG4gID4gLnByZXYge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDA7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICA+IC5uZXh0IHtcbiAgICBsZWZ0OiAxMDAlO1xuICB9XG4gID4gLnByZXYge1xuICAgIGxlZnQ6IC0xMDAlO1xuICB9XG4gID4gLm5leHQubGVmdCxcbiAgPiAucHJldi5yaWdodCB7XG4gICAgbGVmdDogMDtcbiAgfVxuXG4gID4gLmFjdGl2ZS5sZWZ0IHtcbiAgICBsZWZ0OiAtMTAwJTtcbiAgfVxuICA+IC5hY3RpdmUucmlnaHQge1xuICAgIGxlZnQ6IDEwMCU7XG4gIH1cblxufVxuXG4vLyBMZWZ0L3JpZ2h0IGNvbnRyb2xzIGZvciBuYXZcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uY2Fyb3VzZWwtY29udHJvbCB7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgdG9wOiAwO1xuICBib3R0b206IDA7XG4gIGxlZnQ6IDA7XG4gIHdpZHRoOiAkY2Fyb3VzZWwtY29udHJvbC13aWR0aDtcbiAgZm9udC1zaXplOiAkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemU7XG4gIGNvbG9yOiAkY2Fyb3VzZWwtY29udHJvbC1jb2xvcjtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB0ZXh0LXNoYWRvdzogJGNhcm91c2VsLXRleHQtc2hhZG93O1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIDApOyAvLyBGaXggSUU5IGNsaWNrLXRocnUgYnVnXG4gIEBpbmNsdWRlIG9wYWNpdHkoJGNhcm91c2VsLWNvbnRyb2wtb3BhY2l0eSk7XG4gIC8vIFdlIGNhbid0IGhhdmUgdGhpcyB0cmFuc2l0aW9uIGhlcmUgYmVjYXVzZSBXZWJLaXQgY2FuY2VscyB0aGUgY2Fyb3VzZWxcbiAgLy8gYW5pbWF0aW9uIGlmIHlvdSB0cmlwIHRoaXMgd2hpbGUgaW4gdGhlIG1pZGRsZSBvZiBhbm90aGVyIGFuaW1hdGlvbi5cblxuICAvLyBTZXQgZ3JhZGllbnRzIGZvciBiYWNrZ3JvdW5kc1xuICAmLmxlZnQge1xuICAgIEBpbmNsdWRlIGdyYWRpZW50LWhvcml6b250YWwoJHN0YXJ0LWNvbG9yOiByZ2JhKDAsIDAsIDAsIC41KSwgJGVuZC1jb2xvcjogcmdiYSgwLCAwLCAwLCAuMDAwMSkpO1xuICB9XG4gICYucmlnaHQge1xuICAgIHJpZ2h0OiAwO1xuICAgIGxlZnQ6IGF1dG87XG4gICAgQGluY2x1ZGUgZ3JhZGllbnQtaG9yaXpvbnRhbCgkc3RhcnQtY29sb3I6IHJnYmEoMCwgMCwgMCwgLjAwMDEpLCAkZW5kLWNvbG9yOiByZ2JhKDAsIDAsIDAsIC41KSk7XG4gIH1cblxuICAvLyBIb3Zlci9mb2N1cyBzdGF0ZVxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHtcbiAgICBjb2xvcjogJGNhcm91c2VsLWNvbnRyb2wtY29sb3I7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIG91dGxpbmU6IDA7XG4gICAgQGluY2x1ZGUgb3BhY2l0eSguOSk7XG4gIH1cblxuICAvLyBUb2dnbGVzXG4gIC5pY29uLXByZXYsXG4gIC5pY29uLW5leHQsXG4gIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICB0b3A6IDUwJTtcbiAgICB6LWluZGV4OiA1O1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgfVxuICAuaWNvbi1wcmV2LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tbGVmdCB7XG4gICAgbGVmdDogNTAlO1xuICAgIG1hcmdpbi1sZWZ0OiAtMTBweDtcbiAgfVxuICAuaWNvbi1uZXh0LFxuICAuZ2x5cGhpY29uLWNoZXZyb24tcmlnaHQge1xuICAgIHJpZ2h0OiA1MCU7XG4gICAgbWFyZ2luLXJpZ2h0OiAtMTBweDtcbiAgfVxuICAuaWNvbi1wcmV2LFxuICAuaWNvbi1uZXh0IHtcbiAgICB3aWR0aDogMjBweDtcbiAgICBoZWlnaHQ6IDIwcHg7XG4gICAgZm9udC1mYW1pbHk6IHNlcmlmO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG5cbiAgLmljb24tcHJldiB7XG4gICAgJjpiZWZvcmUge1xuICAgICAgY29udGVudDogXCJcXDIwMzlcIjsvLyBTSU5HTEUgTEVGVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDM5KVxuICAgIH1cbiAgfVxuICAuaWNvbi1uZXh0IHtcbiAgICAmOmJlZm9yZSB7XG4gICAgICBjb250ZW50OiBcIlxcMjAzYVwiOy8vIFNJTkdMRSBSSUdIVC1QT0lOVElORyBBTkdMRSBRVU9UQVRJT04gTUFSSyAoVSsyMDNBKVxuICAgIH1cbiAgfVxufVxuXG4vLyBPcHRpb25hbCBpbmRpY2F0b3IgcGlwc1xuLy9cbi8vIEFkZCBhbiB1bm9yZGVyZWQgbGlzdCB3aXRoIHRoZSBmb2xsb3dpbmcgY2xhc3MgYW5kIGFkZCBhIGxpc3QgaXRlbSBmb3IgZWFjaFxuLy8gc2xpZGUgeW91ciBjYXJvdXNlbCBob2xkcy5cblxuLmNhcm91c2VsLWluZGljYXRvcnMge1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIGJvdHRvbTogMTBweDtcbiAgbGVmdDogNTAlO1xuICB6LWluZGV4OiAxNTtcbiAgd2lkdGg6IDYwJTtcbiAgcGFkZGluZy1sZWZ0OiAwO1xuICBtYXJnaW4tbGVmdDogLTMwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xuICBsaXN0LXN0eWxlOiBub25lO1xuXG4gIGxpIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgd2lkdGg6IDEwcHg7XG4gICAgaGVpZ2h0OiAxMHB4O1xuICAgIG1hcmdpbjogMXB4O1xuICAgIHRleHQtaW5kZW50OiAtOTk5cHg7XG4gICAgY3Vyc29yOiBwb2ludGVyO1xuICAgIC8vIElFOC05IGhhY2sgZm9yIGV2ZW50IGhhbmRsaW5nXG4gICAgLy9cbiAgICAvLyBJbnRlcm5ldCBFeHBsb3JlciA4LTkgZG9lcyBub3Qgc3VwcG9ydCBjbGlja3Mgb24gZWxlbWVudHMgd2l0aG91dCBhIHNldFxuICAgIC8vIGBiYWNrZ3JvdW5kLWNvbG9yYC4gV2UgY2Fubm90IHVzZSBgZmlsdGVyYCBzaW5jZSB0aGF0J3Mgbm90IHZpZXdlZCBhcyBhXG4gICAgLy8gYmFja2dyb3VuZCBjb2xvciBieSB0aGUgYnJvd3Nlci4gVGh1cywgYSBoYWNrIGlzIG5lZWRlZC5cbiAgICAvLyBTZWUgaHR0cHM6Ly9kZXZlbG9wZXIubW96aWxsYS5vcmcvZW4tVVMvZG9jcy9XZWIvRXZlbnRzL2NsaWNrI0ludGVybmV0X0V4cGxvcmVyXG4gICAgLy9cbiAgICAvLyBGb3IgSUU4LCB3ZSBzZXQgc29saWQgYmxhY2sgYXMgaXQgZG9lc24ndCBzdXBwb3J0IGByZ2JhKClgLiBGb3IgSUU5LCB3ZVxuICAgIC8vIHNldCBhbHBoYSB0cmFuc3BhcmVuY3kgZm9yIHRoZSBiZXN0IHJlc3VsdHMgcG9zc2libGUuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogIzAwMCBcXDk7IC8vIElFOFxuICAgIGJhY2tncm91bmQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7IC8vIElFOVxuXG4gICAgYm9yZGVyOiAxcHggc29saWQgJGNhcm91c2VsLWluZGljYXRvci1ib3JkZXItY29sb3I7XG4gICAgYm9yZGVyLXJhZGl1czogMTBweDtcbiAgfVxuXG4gIC5hY3RpdmUge1xuICAgIHdpZHRoOiAxMnB4O1xuICAgIGhlaWdodDogMTJweDtcbiAgICBtYXJnaW46IDA7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGNhcm91c2VsLWluZGljYXRvci1hY3RpdmUtYmc7XG4gIH1cbn1cblxuLy8gT3B0aW9uYWwgY2FwdGlvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4vLyBIaWRkZW4gYnkgZGVmYXVsdCBmb3Igc21hbGxlciB2aWV3cG9ydHNcbi5jYXJvdXNlbC1jYXB0aW9uIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMTUlO1xuICBib3R0b206IDIwcHg7XG4gIGxlZnQ6IDE1JTtcbiAgei1pbmRleDogMTA7XG4gIHBhZGRpbmctdG9wOiAyMHB4O1xuICBwYWRkaW5nLWJvdHRvbTogMjBweDtcbiAgY29sb3I6ICRjYXJvdXNlbC1jYXB0aW9uLWNvbG9yO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtc2hhZG93OiAkY2Fyb3VzZWwtdGV4dC1zaGFkb3c7XG5cbiAgJiAuYnRuIHtcbiAgICB0ZXh0LXNoYWRvdzogbm9uZTsgLy8gTm8gc2hhZG93IGZvciBidXR0b24gZWxlbWVudHMgaW4gY2Fyb3VzZWwtY2FwdGlvblxuICB9XG59XG5cblxuLy8gU2NhbGUgdXAgY29udHJvbHMgZm9yIHRhYmxldHMgYW5kIHVwXG5AbWVkaWEgc2NyZWVuIGFuZCAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikge1xuXG4gIC8vIFNjYWxlIHVwIHRoZSBjb250cm9scyBhIHNtaWRnZVxuICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLWxlZnQsXG4gICAgLmdseXBoaWNvbi1jaGV2cm9uLXJpZ2h0LFxuICAgIC5pY29uLXByZXYsXG4gICAgLmljb24tbmV4dCB7XG4gICAgICB3aWR0aDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAqIDEuNSk7XG4gICAgICBoZWlnaHQ6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgKiAxLjUpO1xuICAgICAgbWFyZ2luLXRvcDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICAgIGZvbnQtc2l6ZTogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAqIDEuNSk7XG4gICAgfVxuICAgIC5nbHlwaGljb24tY2hldnJvbi1sZWZ0LFxuICAgIC5pY29uLXByZXYge1xuICAgICAgbWFyZ2luLWxlZnQ6ICgkY2Fyb3VzZWwtY29udHJvbC1mb250LXNpemUgLyAtMik7XG4gICAgfVxuICAgIC5nbHlwaGljb24tY2hldnJvbi1yaWdodCxcbiAgICAuaWNvbi1uZXh0IHtcbiAgICAgIG1hcmdpbi1yaWdodDogKCRjYXJvdXNlbC1jb250cm9sLWZvbnQtc2l6ZSAvIC0yKTtcbiAgICB9XG4gIH1cblxuICAvLyBTaG93IGFuZCBsZWZ0IGFsaWduIHRoZSBjYXB0aW9uc1xuICAuY2Fyb3VzZWwtY2FwdGlvbiB7XG4gICAgcmlnaHQ6IDIwJTtcbiAgICBsZWZ0OiAyMCU7XG4gICAgcGFkZGluZy1ib3R0b206IDMwcHg7XG4gIH1cblxuICAvLyBNb3ZlIHVwIHRoZSBpbmRpY2F0b3JzXG4gIC5jYXJvdXNlbC1pbmRpY2F0b3JzIHtcbiAgICBib3R0b206IDIwcHg7XG4gIH1cbn1cbiIsIi8vXG4vLyBVdGlsaXR5IGNsYXNzZXNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cblxuLy8gRmxvYXRzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi5jbGVhcmZpeCB7XG4gIEBpbmNsdWRlIGNsZWFyZml4O1xufVxuLmNlbnRlci1ibG9jayB7XG4gIEBpbmNsdWRlIGNlbnRlci1ibG9jaztcbn1cbi5wdWxsLXJpZ2h0IHtcbiAgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7XG59XG4ucHVsbC1sZWZ0IHtcbiAgZmxvYXQ6IGxlZnQgIWltcG9ydGFudDtcbn1cblxuXG4vLyBUb2dnbGluZyBjb250ZW50XG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8vIE5vdGU6IERlcHJlY2F0ZWQgLmhpZGUgaW4gZmF2b3Igb2YgLmhpZGRlbiBvciAuc3Itb25seSAoYXMgYXBwcm9wcmlhdGUpIGluIHYzLjAuMVxuLmhpZGUge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG4uc2hvdyB7XG4gIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG59XG4uaW52aXNpYmxlIHtcbiAgdmlzaWJpbGl0eTogaGlkZGVuO1xufVxuLnRleHQtaGlkZSB7XG4gIEBpbmNsdWRlIHRleHQtaGlkZTtcbn1cblxuXG4vLyBIaWRlIGZyb20gc2NyZWVucmVhZGVycyBhbmQgYnJvd3NlcnNcbi8vXG4vLyBDcmVkaXQ6IEhUTUw1IEJvaWxlcnBsYXRlXG5cbi5oaWRkZW4ge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG59XG5cblxuLy8gRm9yIEFmZml4IHBsdWdpblxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uYWZmaXgge1xuICBwb3NpdGlvbjogZml4ZWQ7XG59XG4iLCIvL1xuLy8gUmVzcG9uc2l2ZTogVXRpbGl0eSBjbGFzc2VzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG5cbi8vIElFMTAgaW4gV2luZG93cyAoUGhvbmUpIDhcbi8vXG4vLyBTdXBwb3J0IGZvciByZXNwb25zaXZlIHZpZXdzIHZpYSBtZWRpYSBxdWVyaWVzIGlzIGtpbmQgb2YgYm9ya2VkIGluIElFMTAsIGZvclxuLy8gU3VyZmFjZS9kZXNrdG9wIGluIHNwbGl0IHZpZXcgYW5kIGZvciBXaW5kb3dzIFBob25lIDguIFRoaXMgcGFydGljdWxhciBmaXhcbi8vIG11c3QgYmUgYWNjb21wYW5pZWQgYnkgYSBzbmlwcGV0IG9mIEphdmFTY3JpcHQgdG8gc25pZmYgdGhlIHVzZXIgYWdlbnQgYW5kXG4vLyBhcHBseSBzb21lIGNvbmRpdGlvbmFsIENTUyB0byAqb25seSogdGhlIFN1cmZhY2UvZGVza3RvcCBXaW5kb3dzIDguIExvb2sgYXRcbi8vIG91ciBHZXR0aW5nIFN0YXJ0ZWQgcGFnZSBmb3IgbW9yZSBpbmZvcm1hdGlvbiBvbiB0aGlzIGJ1Zy5cbi8vXG4vLyBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlIHRoZSBmb2xsb3dpbmc6XG4vL1xuLy8gSXNzdWU6IGh0dHBzOi8vZ2l0aHViLmNvbS90d2JzL2Jvb3RzdHJhcC9pc3N1ZXMvMTA0OTdcbi8vIERvY3M6IGh0dHBzOi8vZ2V0Ym9vdHN0cmFwLmNvbS9kb2NzLzMuNC9nZXR0aW5nLXN0YXJ0ZWQvI3N1cHBvcnQtaWUxMC13aWR0aFxuLy8gU291cmNlOiBodHRwczovL3RpbWthZGxlYy5jb20vMjAxMy8wMS93aW5kb3dzLXBob25lLTgtYW5kLWRldmljZS13aWR0aC9cbi8vIFNvdXJjZTogaHR0cHM6Ly90aW1rYWRsZWMuY29tLzIwMTIvMTAvaWUxMC1zbmFwLW1vZGUtYW5kLXJlc3BvbnNpdmUtZGVzaWduL1xuXG5AYXQtcm9vdCB7XG4gIEAtbXMtdmlld3BvcnQge1xuICAgIHdpZHRoOiBkZXZpY2Utd2lkdGg7XG4gIH1cbn1cblxuXG4vLyBWaXNpYmlsaXR5IHV0aWxpdGllc1xuLy8gTm90ZTogRGVwcmVjYXRlZCAudmlzaWJsZS14cywgLnZpc2libGUtc20sIC52aXNpYmxlLW1kLCBhbmQgLnZpc2libGUtbGcgYXMgb2YgdjMuMi4wXG5cbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS14cycpO1xuQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy52aXNpYmxlLXNtJyk7XG5AaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1sZycpO1xuXG4udmlzaWJsZS14cy1ibG9jayxcbi52aXNpYmxlLXhzLWlubGluZSxcbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayxcbi52aXNpYmxlLXNtLWJsb2NrLFxuLnZpc2libGUtc20taW5saW5lLFxuLnZpc2libGUtc20taW5saW5lLWJsb2NrLFxuLnZpc2libGUtbWQtYmxvY2ssXG4udmlzaWJsZS1tZC1pbmxpbmUsXG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2ssXG4udmlzaWJsZS1sZy1ibG9jayxcbi52aXNpYmxlLWxnLWlubGluZSxcbi52aXNpYmxlLWxnLWlubGluZS1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcbn1cblxuQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUteHMnKTtcbn1cbi52aXNpYmxlLXhzLWJsb2NrIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuLnZpc2libGUteHMtaW5saW5lIHtcbiAgQG1lZGlhIChtYXgtd2lkdGg6ICRzY3JlZW4teHMtbWF4KSB7XG4gICAgZGlzcGxheTogaW5saW5lICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXhzLWlubGluZS1ibG9jayB7XG4gIEBtZWRpYSAobWF4LXdpZHRoOiAkc2NyZWVuLXhzLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLXNtLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tc20tbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtc20nKTtcbn1cbi52aXNpYmxlLXNtLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1zbS1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1zbS1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1zbS1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLXNtLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLW1kLW1pbikgYW5kIChtYXgtd2lkdGg6ICRzY3JlZW4tbWQtbWF4KSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtdmlzaWJpbGl0eSgnLnZpc2libGUtbWQnKTtcbn1cbi52aXNpYmxlLW1kLWJsb2NrIHtcbiAgQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgICBkaXNwbGF5OiBibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1tZC1pbmxpbmUge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1tZC1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1tZC1taW4pIGFuZCAobWF4LXdpZHRoOiAkc2NyZWVuLW1kLW1heCkge1xuICAgIGRpc3BsYXk6IGlubGluZS1ibG9jayAhaW1wb3J0YW50O1xuICB9XG59XG5cbkBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLWxnJyk7XG59XG4udmlzaWJsZS1sZy1ibG9jayB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLWxnLWlubGluZSB7XG4gIEBtZWRpYSAobWluLXdpZHRoOiAkc2NyZWVuLWxnLW1pbikge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1sZy1pbmxpbmUtYmxvY2sge1xuICBAbWVkaWEgKG1pbi13aWR0aDogJHNjcmVlbi1sZy1taW4pIHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgKG1heC13aWR0aDogJHNjcmVlbi14cy1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4teHMnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tc20tbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1zbS1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tc20nKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbWQtbWluKSBhbmQgKG1heC13aWR0aDogJHNjcmVlbi1tZC1tYXgpIHtcbiAgQGluY2x1ZGUgcmVzcG9uc2l2ZS1pbnZpc2liaWxpdHkoJy5oaWRkZW4tbWQnKTtcbn1cblxuQG1lZGlhIChtaW4td2lkdGg6ICRzY3JlZW4tbGctbWluKSB7XG4gIEBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcuaGlkZGVuLWxnJyk7XG59XG5cblxuLy8gUHJpbnQgdXRpbGl0aWVzXG4vL1xuLy8gTWVkaWEgcXVlcmllcyBhcmUgcGxhY2VkIG9uIHRoZSBpbnNpZGUgdG8gYmUgbWl4aW4tZnJpZW5kbHkuXG5cbi8vIE5vdGU6IERlcHJlY2F0ZWQgLnZpc2libGUtcHJpbnQgYXMgb2YgdjMuMi4wXG5cbkBpbmNsdWRlIHJlc3BvbnNpdmUtaW52aXNpYmlsaXR5KCcudmlzaWJsZS1wcmludCcpO1xuXG5AbWVkaWEgcHJpbnQge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLXZpc2liaWxpdHkoJy52aXNpYmxlLXByaW50Jyk7XG59XG4udmlzaWJsZS1wcmludC1ibG9jayB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7XG4gIH1cbn1cbi52aXNpYmxlLXByaW50LWlubGluZSB7XG4gIGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDtcblxuICBAbWVkaWEgcHJpbnQge1xuICAgIGRpc3BsYXk6IGlubGluZSAhaW1wb3J0YW50O1xuICB9XG59XG4udmlzaWJsZS1wcmludC1pbmxpbmUtYmxvY2sge1xuICBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7XG5cbiAgQG1lZGlhIHByaW50IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWltcG9ydGFudDtcbiAgfVxufVxuXG5AbWVkaWEgcHJpbnQge1xuICBAaW5jbHVkZSByZXNwb25zaXZlLWludmlzaWJpbGl0eSgnLmhpZGRlbi1wcmludCcpO1xufVxuIiwiLyogR2VuZXJhdGVkIGJ5IEZvbnQgU3F1aXJyZWwgKGh0dHA6Ly93d3cuZm9udHNxdWlycmVsLmNvbSkgb24gTm92ZW1iZXIgMTEsIDIwMTEgKi9cbkBmb250LWZhY2Uge1xuICAgIGZvbnQtZmFtaWx5OiAnRnV0dXJhJztcbiAgICBzcmM6IHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvZnV0dXJhL2Z1dHVyYV9tZWRpdW1fYnQtd2ViZm9udC5lb3QnKTtcbiAgICBzcmM6IHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvZnV0dXJhL2Z1dHVyYV9tZWRpdW1fYnQtd2ViZm9udC5lb3Q/I2llZml4JykgZm9ybWF0KCdlbWJlZGRlZC1vcGVudHlwZScpLFxuICAgICAgICAgdXJsKCcuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS9mdXR1cmEvZnV0dXJhX21lZGl1bV9idC13ZWJmb250LndvZmYnKSBmb3JtYXQoJ3dvZmYnKSxcbiAgICAgICAgIHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvZnV0dXJhL2Z1dHVyYV9tZWRpdW1fYnQtd2ViZm9udC50dGYnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgICAgICB1cmwoJy4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL2Z1dHVyYS9mdXR1cmFfbWVkaXVtX2J0LXdlYmZvbnQuc3ZnI0Z1dHVyYU1lZGl1bScpIGZvcm1hdCgnc3ZnJyk7XG4gICAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgICBmb250LXN0eWxlOiBub3JtYWw7XG5cbn1cbiIsIkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ3d1LXNvY2lhbC1pY29ucyc7XG4gIHNyYzpcbiAgICB1cmwoJy4uLy4uLy4uLy4uL3B1YmxpYy90eXBlL3d1LXNvY2lhbC1pY29ucy9jaXJjbGUvd3Utc29jaWFsLWljb25zLnR0Zj9xOWhrcTMnKSBmb3JtYXQoJ3RydWV0eXBlJyksXG4gICAgdXJsKCcuLi8uLi8uLi8uLi9wdWJsaWMvdHlwZS93dS1zb2NpYWwtaWNvbnMvY2lyY2xlL3d1LXNvY2lhbC1pY29ucy53b2ZmP3E5aGtxMycpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnLi4vLi4vLi4vLi4vcHVibGljL3R5cGUvd3Utc29jaWFsLWljb25zL2NpcmNsZS93dS1zb2NpYWwtaWNvbnMuc3ZnP3E5aGtxMyN3dS1zb2NpYWwtaWNvbnMnKSBmb3JtYXQoJ3N2ZycpO1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG5cbltjbGFzc149XCJ3dS1zb2NpYWwtXCJdLCBbY2xhc3MqPVwiIHd1LXNvY2lhbC1cIl0ge1xuICAvKiB1c2UgIWltcG9ydGFudCB0byBwcmV2ZW50IGlzc3VlcyB3aXRoIGJyb3dzZXIgZXh0ZW5zaW9ucyB0aGF0IGNoYW5nZSBmb250cyAqL1xuICBmb250LWZhbWlseTogJ3d1LXNvY2lhbC1pY29ucycgIWltcG9ydGFudDtcbiAgc3BlYWs6IG5vbmU7XG4gIGZvbnQtc3R5bGU6IG5vcm1hbDtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbiAgZm9udC12YXJpYW50OiBub3JtYWw7XG4gIHRleHQtdHJhbnNmb3JtOiBub25lO1xuICBsaW5lLWhlaWdodDogMTtcblxuICAvKiBCZXR0ZXIgRm9udCBSZW5kZXJpbmcgPT09PT09PT09PT0gKi9cbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG59XG5cbi53dS1zb2NpYWwtZ2lwaHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MWRcIjtcbn1cbi53dS1zb2NpYWwtdGlrdG9rOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTFjXCI7XG59XG4ud3Utc29jaWFsLWxpbmtlZGluOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAwXCI7XG59XG4ud3Utc29jaWFsLXNvdW5kY2xvdWQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGUwMDJcIjtcbn1cbi53dS1zb2NpYWwtc3BvdGlmeTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTYwMlwiO1xufVxuLnd1LXNvY2lhbC10d2l0dGVyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlNjAzXCI7XG59XG4ud3Utc29jaWFsLWdvb2dsZXBsdXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU2MDRcIjtcbn1cbi53dS1zb2NpYWwteW91dHViZTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTYwNVwiO1xufVxuLnd1LXNvY2lhbC1yc3M6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU2MGZcIjtcbn1cbi53dS1zb2NpYWwtcGludGVyZXN0OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlNjEwXCI7XG59XG4ud3Utc29jaWFsLXZpbWVvOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAxXCI7XG59XG4ud3Utc29jaWFsLWFwcGxlOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTAyXCI7XG59XG4ud3Utc29jaWFsLVZldm86YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MDNcIjtcbn1cbi53dS1zb2NpYWwtbWVzc2VuZ2VyOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA0XCI7XG59XG4ud3Utc29jaWFsLWluc3RhZ3JhbTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwNVwiO1xufVxuLnd1LXNvY2lhbC1tYWlsOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA2XCI7XG59XG4ud3Utc29jaWFsLXR1bWJscjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwN1wiO1xufVxuLnd1LXNvY2lhbC1zbmFwY2hhdDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwOFwiO1xufVxuLnd1LXNvY2lhbC12aW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTA5XCI7XG59XG4ud3Utc29jaWFsLW15c3BhY2U6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGFcIjtcbn1cbi53dS1zb2NpYWwtd2hhdHNhcHA6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGJcIjtcbn1cbi53dS1zb2NpYWwta2lrOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOGZjXCI7XG59XG4ud3Utc29jaWFsLWdvb2dsZXBsYXk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MGNcIjtcbn1cbi53dS1zb2NpYWwtZmFuczpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZFwiO1xufVxuLnd1LXNvY2lhbC1mYWNlYm9vazpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkwZVwiO1xufVxuLnd1LXNvY2lhbC1saW5lOmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTBmXCI7XG59XG4ud3Utc29jaWFsLWFtYXpvbjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMFwiO1xufVxuLnd1LXNvY2lhbC1ia3N0ZzpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxMVwiO1xufVxuLnd1LXNvY2lhbC1pdHVuZXM6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTJcIjtcbn1cbi53dS1zb2NpYWwtYnV5OmJlZm9yZSB7XG4gIGNvbnRlbnQ6IFwiXFxlOTEzXCI7XG59XG4ud3Utc29jaWFsLWRlZXplcjpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNFwiO1xufVxuLnd1LXNvY2lhbC10YXJnZXQ6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTVcIjtcbn1cbi53dS1zb2NpYWwtd2FsbWFydDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxNlwiO1xufVxuLnd1LXNvY2lhbC1tdXNpY2FsbHk6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTdcIjtcbn1cbi53dS1zb2NpYWwtcGFuZG9yYTpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxOFwiO1xufVxuLnd1LXNvY2lhbC10d2l0Y2g6YmVmb3JlIHtcbiAgY29udGVudDogXCJcXGU5MTlcIjtcbn1cbi53dS1zb2NpYWwteWVscDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxYVwiO1xufVxuLnd1LXNvY2lhbC11bnRhcHBlZDpiZWZvcmUge1xuICBjb250ZW50OiBcIlxcZTkxYlwiO1xufVxuIiwiLyogUGFnZSBGYWRlIFRyYW5zaXRpb24gKi9cbiRwYWdlLXRyYW5zaXRpb24tZHVyYXRpb246IDI1MG1zICFkZWZhdWx0O1xuXG4ucGFnZSB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAmLWlubmVyIHtcbiAgICBAaW5jbHVkZSBjbGVhcmZpeCgpO1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICB0b3A6IDA7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGFnZS10cmFuc2l0aW9uLWR1cmF0aW9uO1xuICAgIG9wYWNpdHk6IDE7XG5cbiAgICAmLm5nLWVudGVyIHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgICYubmctZW50ZXItYWN0aXZlIHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgICYubmctbGVhdmUge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB0b3A6IDA7XG4gICAgICBvcGFjaXR5OiAxO1xuICAgIH1cbiAgICAmLm5nLWxlYXZlLWFjdGl2ZSB7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgIH1cbiAgfVxufVxuIiwiLyogU2ltcGxlIFBhZ2luYXRpb24gKi9cbiRhY3RpdmUtcGFnZS1iZzogIzAwMCAhZGVmYXVsdDtcbiRhY3RpdmUtcGFnZS1jb2xvcjogI2ZmZiAhZGVmYXVsdDtcblxuICAuc2VjdGlvbi1wYWdpbmF0aW9uIHtcbiAgICBmb250LXNpemU6IDEuMmVtO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuICAucGFnaW5hdGlvbiB7XG4gICAgPiBsaSB7XG4gICAgICBhLCBhOmZvY3VzLCBzcGFuIHtcbiAgICAgICAgYm9yZGVyOiAwO1xuICAgICAgICBvdXRsaW5lOiAwO1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICAgIGE6aG92ZXIge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgfVxuICAgICAgJjpmaXJzdC1jaGlsZCwgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgPiBhLCA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgPiAuYWN0aXZlIHtcbiAgICAgIGEsIGE6aG92ZXIsIGE6Zm9jdXMge1xuICAgICAgICBib3JkZXI6IDA7XG4gICAgICAgIGN1cnNvcjogbm90LWFsbG93ZWQ7XG4gICAgICAgIG91dGxpbmU6IDA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRhY3RpdmUtcGFnZS1iZztcbiAgICAgICAgY29sb3I6ICRhY3RpdmUtcGFnZS1jb2xvcjtcbiAgICAgIH1cbiAgICB9XG4gICAgPiAuZGlzYWJsZWQge1xuICAgICAgPiBhLCA+IGE6aG92ZXIge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiIsIi8qIEZhZGUgYW5pbWF0aW9uIGZvciBkZWZhdWx0IGNhcm91c2VsICovXG5cbi5zZWN0aW9uLWNhcm91c2VsIHtcbiAgLmNhcm91c2VsLWlubmVyIHtcbiAgICAuaXRlbSB7XG4gICAgICB0cmFuc2l0aW9uLXByb3BlcnR5OiBvcGFjaXR5O1xuICAgIH1cbiAgICAuaXRlbSwgLmFjdGl2ZS5sZWZ0LCAuYWN0aXZlLnJpZ2h0IHtcbiAgICAgIG9wYWNpdHk6IDA7XG4gICAgfVxuICAgIC5hY3RpdmUsIC5uZXh0LmxlZnQsIC5wcmV2LnJpZ2h0IHtcbiAgICAgIG9wYWNpdHk6IDE7XG4gICAgfVxuICAgIC5uZXh0LCAucHJldiwgLmFjdGl2ZS5sZWZ0LCAuYWN0aXZlLnJpZ2h0IHtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKDAsIDAsIDApO1xuICAgIH1cbiAgfVxuICAuY2Fyb3VzZWwtY29udHJvbCB7XG4gICAgei1pbmRleDogMjtcbiAgfVxufSIsIi8qIEZlYXR1cmVkIFZpZGVvIC8gV2lkZ2V0IFZpZGVvIHdpdGggT3ZlcmxheSAqL1xuXG4kb3ZlcmxheS1iZy1jb2xvcjogcmdiYSgwLDAsMCwuNSkgIWRlZmF1bHQ7XG4kZm9udC1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcbiRsb2FkaW5nLWljb246IG51bGwgIWRlZmF1bHQ7XG4kcGxheS1idXR0b246IGZhbHNlICFkZWZhdWx0O1xuJHBsYXktYnV0dG9uLWNvbG9yOiAjMDAwICFkZWZhdWx0O1xuJHBsYXktYnV0dG9uLWJhY2tncm91bmQ6ICNmZmYgIWRlZmF1bHQ7XG5cbi5zZWN0aW9uLXdpZGdldC12aWRlbyxcbi5zZWN0aW9uLWZlYXR1cmVkLXZpZGVvIHtcbiAgLmhlYWRlciB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuICAudmlkZW8tZnJhbWUge1xuICAgICYudmlkZW8tYWN0aXZlIHtcbiAgICAgIC5pbm5lciB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC52aWRlbyB7XG4gICAgICAgICYtcG9zdGVyLWltYWdlLCAmLXRpdGxlIHtcbiAgICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnZpZGVvLWVtYmVkIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgICAgdmlzaWJpbGl0eTogaGlkZGVuO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIC5pbm5lciB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNTYuMjUlOyAvKiAxNjo5ICovXG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgY3Vyc29yOiBwb2ludGVyO1xuXG4gICAgICAmOmJlZm9yZSwgLnZpZGVvLXBvc3Rlci1pbWFnZSwgLnZpZGVvLXRpdGxlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDI1MG1zIDBtcywgb3BhY2l0eSAyNTBtcztcbiAgICAgIH1cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgYmFja2dyb3VuZDogbGlnaHRlbigkb3ZlcmxheS1iZy1jb2xvciwgMjUpO1xuICAgICAgICB6LWluZGV4OiAyO1xuICAgICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDI1MG1zO1xuICAgICAgfVxuICAgICAgQGlmICRsb2FkaW5nLWljb24ge1xuICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICBjb250ZW50OiAnJztcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICAgIHdpZHRoOiAxMDBweDtcbiAgICAgICAgICBoZWlnaHQ6IDEwMHB4O1xuICAgICAgICAgIGJhY2tncm91bmQ6IHVybCgkbG9hZGluZy1pY29uKSBuby1yZXBlYXQgY2VudGVyL2NvbnRhaW47XG4gICAgICAgICAgei1pbmRleDogMTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgICB0cmFuc2l0aW9uOiB2aXNpYmlsaXR5IDI1MG1zIDBtcywgb3BhY2l0eSAyNTBtcztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLnZpZGVvLXBvc3Rlci1pbWFnZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgICBiYWNrZ3JvdW5kLXJlcGVhdDogbm8tcmVwZWF0O1xuICAgICAgICBiYWNrZ3JvdW5kLXBvc2l0aW9uOiBjZW50ZXI7XG4gICAgICAgIGJhY2tncm91bmQtc2l6ZTogY292ZXI7XG4gICAgICAgIHotaW5kZXg6IDE7XG4gICAgICB9XG4gICAgICAudmlkZW8tdGl0bGUge1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHJpZ2h0OiAwO1xuICAgICAgICBtYXJnaW46IDE1cHg7XG4gICAgICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICBmb250LXNpemU6IDEuMmVtO1xuICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB6LWluZGV4OiAzO1xuICAgICAgfVxuICAgIH1cbiAgICAuc291bmQtaWNvbiB7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IC4yNWVtO1xuICAgICAgbGVmdDogLjVlbTtcbiAgICAgIGZvbnQtc2l6ZTogM2VtO1xuICAgICAgY29sb3I6ICRwbGF5LWJ1dHRvbi1jb2xvcjtcbiAgICAgIHotaW5kZXg6IDU7XG4gICAgfVxuICAgIGlmcmFtZSwgdmlkZW8ge1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgbGVmdDogMDtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgIH1cbiAgfVxuICAmLndpZGdldC1sb2FkZWQsXG4gICYudmlkZW8tbG9hZGVkIHtcbiAgICAuaW5uZXIge1xuICAgICAgJjpiZWZvcmUge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkb3ZlcmxheS1iZy1jb2xvcjtcbiAgICAgIH1cbiAgICAgICY6YWZ0ZXIge1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB2aXNpYmlsaXR5OiBoaWRkZW47XG4gICAgICB9XG4gICAgfVxuICAgIC52aWRlby1mcmFtZSB7XG4gICAgICBAaWYgJHBsYXktYnV0dG9uID09IHRydWUge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgICBsZWZ0OiA1MCU7XG4gICAgICAgICAgY3Vyc29yOiBwb2ludGVyO1xuICAgICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTUwJSwgLTUwJSk7XG4gICAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcywgYmFja2dyb3VuZC1jb2xvciAyNTBtcywgYm9yZGVyLWNvbG9yIDI1MG1zO1xuICAgICAgICB9XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICB3aWR0aDogNzVweDtcbiAgICAgICAgICBoZWlnaHQ6IDc1cHg7XG4gICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYXktYnV0dG9uLWJhY2tncm91bmQ7XG4gICAgICAgICAgYm9yZGVyLXJhZGl1czogNTAlO1xuICAgICAgICAgIHotaW5kZXg6IDQ7XG4gICAgICAgIH1cbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICAgIGJvcmRlci10b3A6IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLWxlZnQ6IDI1cHggc29saWQgJHBsYXktYnV0dG9uLWNvbG9yO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IDE1cHggc29saWQgdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoLTM4JSwgLTUwJSk7XG4gICAgICAgICAgei1pbmRleDogNTtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAmOmJlZm9yZSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxheS1idXR0b24tY29sb3I7XG4gICAgICAgICAgfVxuICAgICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICRwbGF5LWJ1dHRvbi1iYWNrZ3JvdW5kO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICAmLnZpZGVvLWFjdGl2ZSB7XG4gICAgICAgICAgJjpiZWZvcmUsICY6YWZ0ZXIge1xuICAgICAgICAgICAgb3BhY2l0eTogMDtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNTAwcHgpIHtcblxuICAuc2VjdGlvbi13aWRnZXQtdmlkZW8ge1xuICAgIC5pbm5lciB7XG4gICAgICAudmlkZW8tdGl0bGUge1xuICAgICAgICBtYXJnaW46IDYwcHg7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbn1cbiIsIi8qIDMgQ29sIE1lZGlhIExpc3RpbmcgKi9cblxuLyogVmFycyAqL1xuICAkYXNzZXQtYmctaG92ZXI6IGluaGVyaXQgIWRlZmF1bHQ7XG4gICRhc3NldC10aXRsZS1jb2xvcjogaW5oZXJpdCAhZGVmYXVsdDtcbiAgJGFzc2V0LWRlZmF1bHQtaW1hZ2U6IG5vbmUgIWRlZmF1bHQ7XG4gICRiYWNrQnRuU3R5bGU6IHRydWUgIWRlZmF1bHQ7IC8vIHRydWUsIGZhbHNlLCBidXR0b25cblxuICAkcGxhY2Vob2xkZXItY29sb3I6IHJnYmEoIzAwMCwgLjEpICFkZWZhdWx0O1xuICAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uOiA1MDBtcyAhZGVmYXVsdDtcblxuLyogTGlzdGluZyAqL1xuICAuc2VjdGlvbi1tZWRpYS1saXN0IHtcbiAgICAmLWxvYWRlZCB7XG4gICAgICAmLm5nLWhpZGUtcmVtb3ZlIHtcbiAgICAgICAgb3BhY2l0eTowO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb247XG4gICAgICB9XG4gICAgICAmLm5nLWhpZGUtcmVtb3ZlLWFjdGl2ZSB7XG4gICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICB9XG4gICAgfVxuICAgIHVsIHtcbiAgICAgIG1hcmdpbjogMDtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gICAgfVxuICAgIC5nYWxsZXJ5LWxpc3QsIC5hc3NldC1saXN0IHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4KCk7XG4gICAgfVxuICAgIC5nYWxsZXJ5LWl0ZW0sIC5hc3NldC1pdGVtIHtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW46IDAgMCAxOHB4IDA7XG4gICAgICBwYWRkaW5nLWJvdHRvbTogNzglO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcblxuICAgICAgJi5uby1pbWFnZSB7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybCgkYXNzZXQtZGVmYXVsdC1pbWFnZSk7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtcG9zaXRpb246IGNlbnRlcjtcbiAgICAgICAgYmFja2dyb3VuZC1zaXplOiBjb3ZlcjtcbiAgICAgIH1cbiAgICB9XG4gICAgLmltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IG5vLXJlcGVhdCB0b3AgY2VudGVyL2NvdmVyO1xuXG4gICAgICBpbWcge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgICAuaGVhZGVyIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIHBhZGRpbmc6IDEwcHg7XG4gICAgICBiYWNrZ3JvdW5kOiAkYXNzZXQtYmctaG92ZXI7XG4gICAgICBvcGFjaXR5OiAwO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAyNTBtcztcblxuICAgICAgLnRpdGxlIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZSgtNTAlLCAtNTAlKTtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBmb250LXNpemU6IDFlbTtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcblxuICAgICAgICAmLm5vLXRpdGxlOmJlZm9yZSB7XG4gICAgICAgICAgY29udGVudDogJ1ZpZXcnO1xuICAgICAgICAgIGNvbG9yOiAkYXNzZXQtdGl0bGUtY29sb3I7XG4gICAgICAgIH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgY29sb3I6ICRhc3NldC10aXRsZS1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgLm1ldGEge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIExvYWRlZCAqL1xuICAgICYtbG9hZGVkIHtcbiAgICAgIC5pdGVtIHtcbiAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgLmhlYWRlciB7XG4gICAgICAgICAgICBvcGFjaXR5OiAxO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qIFBsYWNlaG9sZGVyICovXG4gICAgJi1wbGFjZWhvbGRlciB7XG4gICAgICAmLm5nLWhpZGUge1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBvcGFjaXR5OiAwO1xuICAgICAgICB0cmFuc2l0aW9uOiBvcGFjaXR5ICRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb247XG4gICAgICAgIHotaW5kZXg6IC0xO1xuICAgICAgfVxuICAgICAgLml0ZW0ge1xuICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkcGxhY2Vob2xkZXItY29sb3I7XG4gICAgICB9XG4gICAgfVxuICB9XG4gIC5zZWN0aW9uLW1lZGlhLWZvb3RlciB7XG4gICAgQGlmICgkYmFja0J0blN0eWxlID09IHRydWUpIHtcbiAgICAgIGEge1xuICAgICAgICBib3JkZXItYm90dG9tOiAxcHggc29saWQ7XG4gICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgIGZvbnQtd2VpZ2h0OiA4MDA7XG4gICAgICAgIHRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAoJGJhY2tCdG5TdHlsZSA9PSAnYnV0dG9uJykge1xuICAgICAgYSB7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbigpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8qIFNob3cgaG92ZXIgaWYgdG91Y2ggZGV2aWNlICovXG4gIC50b3VjaGV2ZW50cyB7XG4gICAgLnNlY3Rpb24tbWVkaWEtbGlzdCB7XG4gICAgICAuaXRlbSB7XG4gICAgICAgIC5oZWFkZXIge1xuICAgICAgICAgIG9wYWNpdHk6IDE7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAbWVkaWEgb25seSBzY3JlZW4gYW5kIChtaW4td2lkdGggOiAzMzBweCkge1xuXG4gICAgLnNlY3Rpb24tbWVkaWEtbGlzdCB7XG4gICAgICAuZ2FsbGVyeS1pdGVtLCAuYXNzZXQtaXRlbSB7XG4gICAgICAgIGZsb2F0OiBsZWZ0O1xuICAgICAgICBtYXJnaW46IDAgMThweCAxOHB4IDA7XG4gICAgICAgIHdpZHRoOiBjYWxjKDUwJSAtIDlweCk7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAzOCU7XG5cbiAgICAgICAgJjpudGgtY2hpbGQoMm4rMikge1xuICAgICAgICAgIG1hcmdpbi1yaWdodDogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWluLXdpZHRoIDogNzY4cHgpIHtcblxuICAgIC5zZWN0aW9uLW1lZGlhLWxpc3Qge1xuICAgICAgLmdhbGxlcnktaXRlbSwgLmFzc2V0LWl0ZW0ge1xuICAgICAgICB3aWR0aDogY2FsYygzMy4zMyUgLSAxMnB4KTtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDI1JTtcblxuICAgICAgICAmOm50aC1jaGlsZCgybisyKSB7XG4gICAgICAgICAgbWFyZ2luLXJpZ2h0OiAxOHB4O1xuICAgICAgICB9XG4gICAgICAgICY6bnRoLWNoaWxkKDNuKzMpIHtcbiAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfVxuXG4gIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aCA6IDgxNXB4KSB7XG5cbiAgICAuc2VjdGlvbi1tZWRpYS1saXN0IHtcbiAgICAgIC5oZWFkZXIge1xuICAgICAgICAudGl0bGUge1xuICAgICAgICAgIGZvbnQtc2l6ZTogMS40ZW07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgfSIsIi8qIDEgQ29sIE1lZGlhIERldGFpbCAqL1xuXG4vKiBWYXJzICovXG4gICRwbGFjZWhvbGRlci1jb2xvcjogcmdiYSgjMDAwLCAuMSkgIWRlZmF1bHQ7XG4gICRwbGFjZWhvbGRlci1hbmltYXRpb24tZHVyYXRpb246IDUwMG1zICFkZWZhdWx0O1xuICAkYmFja0J0blN0eWxlOiB0cnVlICFkZWZhdWx0OyAvLyB0cnVlLCBmYWxzZSwgYnV0dG9uXG5cbi8qIERldGFpbCAqL1xuICAuc2VjdGlvbi1tZWRpYS1hc3NldCB7XG4gICAgJi1sb2FkZWQge1xuICAgICAgJi5uZy1lbnRlciB7XG4gICAgICAgIG9wYWNpdHk6IDA7XG4gICAgICAgIHRyYW5zaXRpb246IG9wYWNpdHkgJHBsYWNlaG9sZGVyLWFuaW1hdGlvbi1kdXJhdGlvbjtcblxuICAgICAgICAmLm5nLWVudGVyLWFjdGl2ZSB7XG4gICAgICAgICAgb3BhY2l0eTogMTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGlmICgkYmFja0J0blN0eWxlID09IHRydWUpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkO1xuICAgICAgICAgIGZvbnQtc2l6ZTogMC44ZW07XG4gICAgICAgICAgZm9udC13ZWlnaHQ6IDgwMDtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICBAaWYgKCRiYWNrQnRuU3R5bGUgPT0gJ2J1dHRvbicpIHtcbiAgICAgICAgYSB7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uKCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgLmZpZ3VyZSwgLmltYmVkIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDQwcHg7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIC5pbWJlZCB7XG4gICAgICAuaW5uZXIge1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgcGFkZGluZy1ib3R0b206IDU2LjI1JTsgLyogMTY6OSAqL1xuICAgICAgfVxuICAgICAgaWZyYW1lLCB2aWRlbyB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBsZWZ0OiAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAxMDAlO1xuICAgICAgfVxuXG4gICAgfVxuICAgIC5maWd1cmUge1xuICAgICAgaW1nIHtcbiAgICAgICAgbWF4LXdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgIC5oZWFkZXIge1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgICAgIC5tZXRhIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIH1cbiAgICB9XG4gICAgLmNvbnRlbnQge1xuICAgICAgbWFyZ2luOiAyMHB4IDA7XG4gICAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgfVxuICAgIC5mb290ZXIge1xuICAgICAgbWFyZ2luLWJvdHRvbTogNDBweDtcbiAgICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgICB9XG4gICAgLm1ldGEtaXRlbS1zb2NpYWxzIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLyogUGxhY2Vob2xkZXIgKi9cbiAgICAmLXBsYWNlaG9sZGVyIHtcbiAgICAgICYubmctaGlkZSB7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIG9wYWNpdHk6MDtcbiAgICAgICAgdHJhbnNpdGlvbjogb3BhY2l0eSAkcGxhY2Vob2xkZXItYW5pbWF0aW9uLWR1cmF0aW9uO1xuICAgICAgICB6LWluZGV4OiAtMTtcbiAgICAgIH1cbiAgICAgIC5pbWFnZSB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgaGVpZ2h0OiAwO1xuICAgICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogNDAlO1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgfVxuICAgICAgLmltYmVkIHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgfVxuICAgICAgLnRpdGxlLCAuY29udGVudCAuaW5uZXIge1xuICAgICAgICBtYXgtd2lkdGg6IDYwMHB4O1xuICAgICAgICBtYXJnaW46IDAgYXV0bztcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHBsYWNlaG9sZGVyLWNvbG9yO1xuICAgICAgfVxuICAgIH1cbiAgfVxuIiwiLyogQW5pbWF0ZWQgNDA0IGdsaXRjaCBzdHlsZSAqL1xuXG5Aa2V5ZnJhbWVzIGZsaWNrZXIge1xuICAwJSAgICAgeyBvcGFjaXR5OiAwLjAxOyB9XG4gIDI1JSAgICB7IG9wYWNpdHk6IDAuMDE7IH1cblxuICAyNS4wMSUgeyBvcGFjaXR5OiAxOyB9XG4gIDI2JSAgICB7IG9wYWNpdHk6IDE7IH1cblxuICAyNi4wMSUgeyBvcGFjaXR5OiAwLjAxOyB9XG4gIDUwJSAgICB7IG9wYWNpdHk6IDAuMDE7IH1cblxuICA1MC4wMSUgeyBvcGFjaXR5OiAxOyB9XG4gIDU4JSAgICB7IG9wYWNpdHk6IDE7IH1cblxuICA1OC4wMSUgeyBvcGFjaXR5OiAwLjAxOyB9XG4gIDcwJSAgICB7IG9wYWNpdHk6IDAuMDE7IH1cblxuICA3MC4wMSUgeyBvcGFjaXR5OiAxOyB9XG4gIDcyJSAgICB7IG9wYWNpdHk6IDE7IH1cblxuICA3Mi4wMSUgeyBvcGFjaXR5OiAwLjAxOyB9XG4gIDc1JSAgICB7IG9wYWNpdHk6IDAuMDE7IH1cblxuICA3NS4wMSUgeyBvcGFjaXR5OiAxOyB9XG4gIDgwJSAgICB7IG9wYWNpdHk6IDE7IH1cblxuICA4MC4wMSUgeyBvcGFjaXR5OiAwLjAxOyB9XG4gIDkwJSAgICB7IG9wYWNpdHk6IDAuMDE7IH1cblxuICA5MC4wMSUgeyBvcGFjaXR5OiAxOyB9XG4gIDk1JSAgICB7IG9wYWNpdHk6IDE7IH1cblxuICA5NS4wMSUgeyBvcGFjaXR5OiAwLjAxOyB9XG4gIDEwMCUgICB7IG9wYWNpdHk6IDAuMDE7IH1cbn1cblxuLyogRGV0YWlsICovXG4ucGFnZS00MDQge1xuICAucGFnZSB7XG4gICAgYmFja2dyb3VuZDogI2ZmZjtcbiAgfVxufVxuLnNlY3Rpb24tZXJyb3Ige1xuICBkaXNwbGF5OiBibG9jaztcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAwO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG5cbiAgLndyYXAge1xuICAgIG1heC13aWR0aDogMTAwJTtcbiAgICBwYWRkaW5nOiAwO1xuICB9XG4gICYtaGVhZGVyIHtcbiAgICBkaXNwbGF5OiBub25lO1xuICB9XG4gIC5maWd1cmUge1xuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nLWJvdHRvbTogNTklO1xuXG4gICAgLmltYWdlIHtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHRvcDogMDtcbiAgICAgIGxlZnQ6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgIGJhY2tncm91bmQ6IHVybCgnLy9zdGF0aWMud29uZGVyZnVsdW5pb24ubmV0L2dyb3VuZGN0cmwvY2xpZW50cy93b25kZXJmdWwtdW5pb24vZXJyb3IvZXJyb3IxLnBuZycpIG5vLXJlcGVhdCBjZW50ZXIvY29udGFpbjtcblxuICAgICAgJjphZnRlciB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICAgIHRvcDogMDtcbiAgICAgICAgbGVmdDogMDtcbiAgICAgICAgYmFja2dyb3VuZDogdXJsKCcvL3N0YXRpYy53b25kZXJmdWx1bmlvbi5uZXQvZ3JvdW5kY3RybC9jbGllbnRzL3dvbmRlcmZ1bC11bmlvbi9lcnJvci9lcnJvcjIuanBnJykgbm8tcmVwZWF0IGNlbnRlci9jb250YWluO1xuICAgICAgICBvcGFjaXR5OiAwLjAxO1xuICAgICAgICBhbmltYXRpb24tbmFtZTogZmxpY2tlcjtcbiAgICAgICAgYW5pbWF0aW9uLWR1cmF0aW9uOiA2cztcbiAgICAgICAgYW5pbWF0aW9uLXRpbWluZy1mdW5jdGlvbjogbGluZWFyO1xuICAgICAgICBhbmltYXRpb24taXRlcmF0aW9uLWNvdW50OiBpbmZpbml0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgLmNvbnRlbnQge1xuICAgIG1heC13aWR0aDogNzAwcHg7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogMmVtIDEwcHggNGVtO1xuICB9XG4gIHAge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgY29sb3I6ICNlYzFjMjQ7XG4gICAgZm9udC1zaXplOiAyM3B4O1xuICAgIGZvbnQtZmFtaWx5OiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgQXJpYWwsIHNhbnMtc2VyaWY7XG4gIH1cbiAgYSB7XG4gICAgY29sb3I6ICMwMDA7XG4gICAgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICBmb250LXdlaWdodDogYm9sZDtcbiAgICB0cmFuc2l0aW9uOiBjb2xvciAyNTBtcztcblxuICAgICY6aG92ZXIge1xuICAgICAgY29sb3I6ICM4MDgwODA7XG4gICAgfVxuICB9XG59XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBOzs7RUFHRTtBQUVG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 */
