@charset "UTF-8";
meta.foundation-version {
  font-family: "/5.5.2/"; }

meta.foundation-mq-small {
  font-family: "/only screen/";
  width: 0; }

meta.foundation-mq-small-only {
  font-family: "/only screen and (max-width: 40em)/";
  width: 0; }

meta.foundation-mq-medium {
  font-family: "/only screen and (min-width:40.0625em)/";
  width: 40.0625em; }

meta.foundation-mq-medium-only {
  font-family: "/only screen and (min-width:40.0625em) and (max-width:64em)/";
  width: 40.0625em; }

meta.foundation-mq-large {
  font-family: "/only screen and (min-width:64.0625em)/";
  width: 64.0625em; }

meta.foundation-mq-large-only {
  font-family: "/only screen and (min-width:64.0625em) and (max-width:90em)/";
  width: 64.0625em; }

meta.foundation-mq-xlarge {
  font-family: "/only screen and (min-width:90.0625em)/";
  width: 90.0625em; }

meta.foundation-mq-xlarge-only {
  font-family: "/only screen and (min-width:90.0625em) and (max-width:120em)/";
  width: 90.0625em; }

meta.foundation-mq-xxlarge {
  font-family: "/only screen and (min-width:120.0625em)/";
  width: 120.0625em; }

meta.foundation-data-attribute-namespace {
  font-family: false; }

html, body {
  height: 100%; }

html {
  box-sizing: border-box; }

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

html,
body {
  font-size: 100%; }

body {
  background: #fff;
  color: #222;
  cursor: auto;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.5;
  margin: 0;
  padding: 0;
  position: relative; }

a:hover {
  cursor: pointer; }

img {
  max-width: 100%;
  height: auto; }

img {
  -ms-interpolation-mode: bicubic; }

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important; }

.left {
  float: left !important; }

.right {
  float: right !important; }

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

.clearfix:after {
  clear: both; }

.hide {
  display: none; }

.invisible {
  visibility: hidden; }

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

img {
  display: inline-block;
  vertical-align: middle; }

textarea {
  height: auto;
  min-height: 50px; }

select {
  width: 100%; }

.accordion {
  margin-bottom: 0; }
  .accordion:before, .accordion:after {
    content: " ";
    display: table; }
  .accordion:after {
    clear: both; }
  .accordion .accordion-navigation, .accordion dd {
    display: block;
    margin-bottom: 0 !important; }
    .accordion .accordion-navigation.active > a, .accordion dd.active > a {
      background: #e8e8e8; }
    .accordion .accordion-navigation > a, .accordion dd > a {
      background: #EFEFEF;
      color: #222222;
      display: block;
      font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-size: 1rem;
      padding: 1rem; }
      .accordion .accordion-navigation > a:hover, .accordion dd > a:hover {
        background: #6c6c6c; }
    .accordion .accordion-navigation > .content, .accordion dd > .content {
      display: none;
      padding: 0.9375rem; }
      .accordion .accordion-navigation > .content.active, .accordion dd > .content.active {
        background: #FFFFFF;
        display: block; }

[class*="block-grid-"] {
  display: block;
  padding: 0;
  margin: 0 -0.625rem; }
  [class*="block-grid-"]:before, [class*="block-grid-"]:after {
    content: " ";
    display: table; }
  [class*="block-grid-"]:after {
    clear: both; }
  [class*="block-grid-"] > li {
    display: block;
    float: left;
    height: auto;
    padding: 0 0.625rem 1.25rem; }

@media only screen {
  .small-block-grid-1 > li {
    list-style: none;
    width: 100%; }
    .small-block-grid-1 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
  .small-block-grid-2 > li {
    list-style: none;
    width: 50%; }
    .small-block-grid-2 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
  .small-block-grid-3 > li {
    list-style: none;
    width: 33.33333%; }
    .small-block-grid-3 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
  .small-block-grid-4 > li {
    list-style: none;
    width: 25%; }
    .small-block-grid-4 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
  .small-block-grid-5 > li {
    list-style: none;
    width: 20%; }
    .small-block-grid-5 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
  .small-block-grid-6 > li {
    list-style: none;
    width: 16.66667%; }
    .small-block-grid-6 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
  .small-block-grid-7 > li {
    list-style: none;
    width: 14.28571%; }
    .small-block-grid-7 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
  .small-block-grid-8 > li {
    list-style: none;
    width: 12.5%; }
    .small-block-grid-8 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
  .small-block-grid-9 > li {
    list-style: none;
    width: 11.11111%; }
    .small-block-grid-9 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
  .small-block-grid-10 > li {
    list-style: none;
    width: 10%; }
    .small-block-grid-10 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
  .small-block-grid-11 > li {
    list-style: none;
    width: 9.09091%; }
    .small-block-grid-11 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
  .small-block-grid-12 > li {
    list-style: none;
    width: 8.33333%; }
    .small-block-grid-12 > li:nth-of-type(1n) {
      clear: none; }
    .small-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; } }

@media only screen and (min-width: 40.0625em) {
  .medium-block-grid-1 > li {
    list-style: none;
    width: 100%; }
    .medium-block-grid-1 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
  .medium-block-grid-2 > li {
    list-style: none;
    width: 50%; }
    .medium-block-grid-2 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
  .medium-block-grid-3 > li {
    list-style: none;
    width: 33.33333%; }
    .medium-block-grid-3 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
  .medium-block-grid-4 > li {
    list-style: none;
    width: 25%; }
    .medium-block-grid-4 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
  .medium-block-grid-5 > li {
    list-style: none;
    width: 20%; }
    .medium-block-grid-5 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
  .medium-block-grid-6 > li {
    list-style: none;
    width: 16.66667%; }
    .medium-block-grid-6 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
  .medium-block-grid-7 > li {
    list-style: none;
    width: 14.28571%; }
    .medium-block-grid-7 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
  .medium-block-grid-8 > li {
    list-style: none;
    width: 12.5%; }
    .medium-block-grid-8 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
  .medium-block-grid-9 > li {
    list-style: none;
    width: 11.11111%; }
    .medium-block-grid-9 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
  .medium-block-grid-10 > li {
    list-style: none;
    width: 10%; }
    .medium-block-grid-10 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
  .medium-block-grid-11 > li {
    list-style: none;
    width: 9.09091%; }
    .medium-block-grid-11 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
  .medium-block-grid-12 > li {
    list-style: none;
    width: 8.33333%; }
    .medium-block-grid-12 > li:nth-of-type(1n) {
      clear: none; }
    .medium-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; } }

@media only screen and (min-width: 64.0625em) {
  .large-block-grid-1 > li {
    list-style: none;
    width: 100%; }
    .large-block-grid-1 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-1 > li:nth-of-type(1n+1) {
      clear: both; }
  .large-block-grid-2 > li {
    list-style: none;
    width: 50%; }
    .large-block-grid-2 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-2 > li:nth-of-type(2n+1) {
      clear: both; }
  .large-block-grid-3 > li {
    list-style: none;
    width: 33.33333%; }
    .large-block-grid-3 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-3 > li:nth-of-type(3n+1) {
      clear: both; }
  .large-block-grid-4 > li {
    list-style: none;
    width: 25%; }
    .large-block-grid-4 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-4 > li:nth-of-type(4n+1) {
      clear: both; }
  .large-block-grid-5 > li {
    list-style: none;
    width: 20%; }
    .large-block-grid-5 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-5 > li:nth-of-type(5n+1) {
      clear: both; }
  .large-block-grid-6 > li {
    list-style: none;
    width: 16.66667%; }
    .large-block-grid-6 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-6 > li:nth-of-type(6n+1) {
      clear: both; }
  .large-block-grid-7 > li {
    list-style: none;
    width: 14.28571%; }
    .large-block-grid-7 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-7 > li:nth-of-type(7n+1) {
      clear: both; }
  .large-block-grid-8 > li {
    list-style: none;
    width: 12.5%; }
    .large-block-grid-8 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-8 > li:nth-of-type(8n+1) {
      clear: both; }
  .large-block-grid-9 > li {
    list-style: none;
    width: 11.11111%; }
    .large-block-grid-9 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-9 > li:nth-of-type(9n+1) {
      clear: both; }
  .large-block-grid-10 > li {
    list-style: none;
    width: 10%; }
    .large-block-grid-10 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-10 > li:nth-of-type(10n+1) {
      clear: both; }
  .large-block-grid-11 > li {
    list-style: none;
    width: 9.09091%; }
    .large-block-grid-11 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-11 > li:nth-of-type(11n+1) {
      clear: both; }
  .large-block-grid-12 > li {
    list-style: none;
    width: 8.33333%; }
    .large-block-grid-12 > li:nth-of-type(1n) {
      clear: none; }
    .large-block-grid-12 > li:nth-of-type(12n+1) {
      clear: both; } }

.breadcrumbs {
  border-style: solid;
  border-width: 0px;
  display: block;
  list-style: none;
  margin-left: 0;
  overflow: hidden;
  padding: 0.5625rem 0.875rem 0.5625rem;
  background-color: #F9F9F9;
  border-color: #e0e0e0;
  border-radius: 0; }
  .breadcrumbs > * {
    color: #4a8ec2;
    float: left;
    font-size: 0.6875rem;
    line-height: 0.6875rem;
    margin: 0;
    text-transform: uppercase; }
    .breadcrumbs > *:hover a, .breadcrumbs > *:focus a {
      text-decoration: underline; }
    .breadcrumbs > * a {
      color: #4a8ec2; }
    .breadcrumbs > *.current {
      color: #333333;
      cursor: default; }
      .breadcrumbs > *.current a {
        color: #333333;
        cursor: default; }
      .breadcrumbs > *.current:hover, .breadcrumbs > *.current:hover a,
      .breadcrumbs > *.current:focus, .breadcrumbs > *.current:focus a {
        text-decoration: none; }
    .breadcrumbs > *.unavailable {
      color: #999999; }
      .breadcrumbs > *.unavailable a {
        color: #999999; }
      .breadcrumbs > *.unavailable:hover,
      .breadcrumbs > *.unavailable:hover a,
      .breadcrumbs > *.unavailable:focus,
      .breadcrumbs > *.unavailable a:focus {
        color: #999999;
        cursor: not-allowed;
        text-decoration: none; }
    .breadcrumbs > *:before {
      color: #AAAAAA;
      content: "/";
      margin: 0 0.75rem;
      position: relative;
      top: 1px; }
    .breadcrumbs > *:first-child:before {
      content: " ";
      margin: 0; }

/* Accessibility - hides the forward slash */
[aria-label="breadcrumbs"] [aria-hidden="true"]:after {
  content: "/"; }

button, .button, .top-cart .btn-cart,
.top-cart .btn-checkout {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  border-style: solid;
  border-width: 0;
  cursor: pointer;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: normal;
  margin: 0 0 1.25rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  display: inline-block;
  padding: 1rem 2rem 1.0625rem 2rem;
  font-size: 1rem;
  background-color: #4a8ec2;
  border-color: #3672a0;
  color: #FFFFFF;
  transition: background-color 300ms ease-out; }
  button:hover,
  button:focus, .button:hover,
  .top-cart .btn-cart:hover,
  .top-cart .btn-checkout:hover,
  .button:focus, .top-cart .btn-cart:focus,
  .top-cart .btn-checkout:focus {
    background-color: #3672a0; }
  button:hover,
  button:focus, .button:hover,
  .top-cart .btn-cart:hover,
  .top-cart .btn-checkout:hover,
  .button:focus, .top-cart .btn-cart:focus,
  .top-cart .btn-checkout:focus {
    color: #FFFFFF; }
  button.secondary, .button.secondary, .top-cart .secondary.btn-cart,
  .top-cart .secondary.btn-checkout {
    background-color: #e7e7e7;
    border-color: #b9b9b9;
    color: #333333; }
    button.secondary:hover,
    button.secondary:focus, .button.secondary:hover,
    .top-cart .secondary.btn-cart:hover,
    .top-cart .secondary.btn-checkout:hover,
    .button.secondary:focus, .top-cart .secondary.btn-cart:focus,
    .top-cart .secondary.btn-checkout:focus {
      background-color: #b9b9b9; }
    button.secondary:hover,
    button.secondary:focus, .button.secondary:hover,
    .top-cart .secondary.btn-cart:hover,
    .top-cart .secondary.btn-checkout:hover,
    .button.secondary:focus, .top-cart .secondary.btn-cart:focus,
    .top-cart .secondary.btn-checkout:focus {
      color: #333333; }
  button.success, .button.success, .top-cart .success.btn-cart,
  .top-cart .success.btn-checkout {
    background-color: #43AC6A;
    border-color: #368a55;
    color: #FFFFFF; }
    button.success:hover,
    button.success:focus, .button.success:hover,
    .top-cart .success.btn-cart:hover,
    .top-cart .success.btn-checkout:hover,
    .button.success:focus, .top-cart .success.btn-cart:focus,
    .top-cart .success.btn-checkout:focus {
      background-color: #368a55; }
    button.success:hover,
    button.success:focus, .button.success:hover,
    .top-cart .success.btn-cart:hover,
    .top-cart .success.btn-checkout:hover,
    .button.success:focus, .top-cart .success.btn-cart:focus,
    .top-cart .success.btn-checkout:focus {
      color: #FFFFFF; }
  button.alert, .button.alert, .top-cart .alert.btn-cart,
  .top-cart .alert.btn-checkout {
    background-color: #f04124;
    border-color: #cf2a0e;
    color: #FFFFFF; }
    button.alert:hover,
    button.alert:focus, .button.alert:hover,
    .top-cart .alert.btn-cart:hover,
    .top-cart .alert.btn-checkout:hover,
    .button.alert:focus, .top-cart .alert.btn-cart:focus,
    .top-cart .alert.btn-checkout:focus {
      background-color: #cf2a0e; }
    button.alert:hover,
    button.alert:focus, .button.alert:hover,
    .top-cart .alert.btn-cart:hover,
    .top-cart .alert.btn-checkout:hover,
    .button.alert:focus, .top-cart .alert.btn-cart:focus,
    .top-cart .alert.btn-checkout:focus {
      color: #FFFFFF; }
  button.warning, .button.warning, .top-cart .warning.btn-cart,
  .top-cart .warning.btn-checkout {
    background-color: #f08a24;
    border-color: #cf6e0e;
    color: #FFFFFF; }
    button.warning:hover,
    button.warning:focus, .button.warning:hover,
    .top-cart .warning.btn-cart:hover,
    .top-cart .warning.btn-checkout:hover,
    .button.warning:focus, .top-cart .warning.btn-cart:focus,
    .top-cart .warning.btn-checkout:focus {
      background-color: #cf6e0e; }
    button.warning:hover,
    button.warning:focus, .button.warning:hover,
    .top-cart .warning.btn-cart:hover,
    .top-cart .warning.btn-checkout:hover,
    .button.warning:focus, .top-cart .warning.btn-cart:focus,
    .top-cart .warning.btn-checkout:focus {
      color: #FFFFFF; }
  button.info, .button.info, .top-cart .info.btn-cart,
  .top-cart .info.btn-checkout {
    background-color: #a0d3e8;
    border-color: #61b6d9;
    color: #333333; }
    button.info:hover,
    button.info:focus, .button.info:hover,
    .top-cart .info.btn-cart:hover,
    .top-cart .info.btn-checkout:hover,
    .button.info:focus, .top-cart .info.btn-cart:focus,
    .top-cart .info.btn-checkout:focus {
      background-color: #61b6d9; }
    button.info:hover,
    button.info:focus, .button.info:hover,
    .top-cart .info.btn-cart:hover,
    .top-cart .info.btn-checkout:hover,
    .button.info:focus, .top-cart .info.btn-cart:focus,
    .top-cart .info.btn-checkout:focus {
      color: #FFFFFF; }
  button.large, .button.large, .top-cart .large.btn-cart,
  .top-cart .large.btn-checkout {
    padding: 1.125rem 2.25rem 1.1875rem 2.25rem;
    font-size: 1.25rem; }
  button.small, .products-list button.btn-cart,
  .products-grid button.btn-cart, .button.small, .products-list .button.btn-cart,
  .products-list .top-cart .btn-cart,
  .top-cart .products-list .btn-cart,
  .products-grid .button.btn-cart, .products-grid .top-cart .btn-cart, .top-cart .products-grid .btn-cart,
  .top-cart .small.btn-cart,
  .top-cart .small.btn-checkout {
    padding: 0.875rem 1.75rem 0.9375rem 1.75rem;
    font-size: 0.8125rem; }
  button.tiny, #wishlist-view-form button, .cart form fieldset #shopping-cart-table tfoot button, .footer-container .block-subscribe .actions button, .header-container .header .quick-access .form-search button, .top-cart button.btn-cart,
  .top-cart button.btn-checkout, .button.tiny, #wishlist-view-form button.button, #wishlist-view-form .top-cart button.btn-cart, .top-cart #wishlist-view-form button.btn-cart,
  #wishlist-view-form .top-cart button.btn-checkout, .top-cart #wishlist-view-form button.btn-checkout, .cart form fieldset #shopping-cart-table tfoot button.button, .cart form fieldset #shopping-cart-table tfoot .top-cart button.btn-cart, .top-cart .cart form fieldset #shopping-cart-table tfoot button.btn-cart,
  .cart form fieldset #shopping-cart-table tfoot .top-cart button.btn-checkout, .top-cart .cart form fieldset #shopping-cart-table tfoot button.btn-checkout, .footer-container .block-subscribe .actions button.button, .footer-container .block-subscribe .actions .top-cart button.btn-cart, .top-cart .footer-container .block-subscribe .actions button.btn-cart,
  .footer-container .block-subscribe .actions .top-cart button.btn-checkout, .top-cart .footer-container .block-subscribe .actions button.btn-checkout, .header-container .header .quick-access .form-search button.button, .header-container .header .quick-access .form-search .top-cart button.btn-cart, .top-cart .header-container .header .quick-access .form-search button.btn-cart,
  .header-container .header .quick-access .form-search .top-cart button.btn-checkout, .top-cart .header-container .header .quick-access .form-search button.btn-checkout, .top-cart .btn-cart,
  .top-cart .btn-checkout {
    padding: 0.625rem 1.25rem 0.6875rem 1.25rem;
    font-size: 0.6875rem; }
  button.expand, .button.expand, .top-cart .expand.btn-cart,
  .top-cart .expand.btn-checkout {
    padding-left: 0;
    padding-right: 0;
    width: 100%; }
  button.left-align, .button.left-align, .top-cart .left-align.btn-cart,
  .top-cart .left-align.btn-checkout {
    text-align: left;
    text-indent: 0.75rem; }
  button.right-align, .button.right-align, .top-cart .right-align.btn-cart,
  .top-cart .right-align.btn-checkout {
    text-align: right;
    padding-right: 0.75rem; }
  button.radius, .button.radius, .top-cart .radius.btn-cart,
  .top-cart .radius.btn-checkout {
    border-radius: 3px; }
  button.round, .button.round, .top-cart .round.btn-cart,
  .top-cart .round.btn-checkout {
    border-radius: 1000px; }
  button.disabled, button[disabled], .button.disabled, .top-cart .disabled.btn-cart,
  .top-cart .disabled.btn-checkout, .button[disabled], .top-cart [disabled].btn-cart,
  .top-cart [disabled].btn-checkout {
    background-color: #4a8ec2;
    border-color: #3672a0;
    color: #FFFFFF;
    box-shadow: none;
    cursor: default;
    opacity: 0.7; }
    button.disabled:hover,
    button.disabled:focus, button[disabled]:hover,
    button[disabled]:focus, .button.disabled:hover,
    .top-cart .disabled.btn-cart:hover,
    .top-cart .disabled.btn-checkout:hover,
    .button.disabled:focus, .top-cart .disabled.btn-cart:focus,
    .top-cart .disabled.btn-checkout:focus, .button[disabled]:hover,
    .top-cart [disabled].btn-cart:hover,
    .top-cart [disabled].btn-checkout:hover,
    .button[disabled]:focus, .top-cart [disabled].btn-cart:focus,
    .top-cart [disabled].btn-checkout:focus {
      background-color: #3672a0; }
    button.disabled:hover,
    button.disabled:focus, button[disabled]:hover,
    button[disabled]:focus, .button.disabled:hover,
    .top-cart .disabled.btn-cart:hover,
    .top-cart .disabled.btn-checkout:hover,
    .button.disabled:focus, .top-cart .disabled.btn-cart:focus,
    .top-cart .disabled.btn-checkout:focus, .button[disabled]:hover,
    .top-cart [disabled].btn-cart:hover,
    .top-cart [disabled].btn-checkout:hover,
    .button[disabled]:focus, .top-cart [disabled].btn-cart:focus,
    .top-cart [disabled].btn-checkout:focus {
      color: #FFFFFF; }
    button.disabled:hover,
    button.disabled:focus, button[disabled]:hover,
    button[disabled]:focus, .button.disabled:hover,
    .top-cart .disabled.btn-cart:hover,
    .top-cart .disabled.btn-checkout:hover,
    .button.disabled:focus, .top-cart .disabled.btn-cart:focus,
    .top-cart .disabled.btn-checkout:focus, .button[disabled]:hover,
    .top-cart [disabled].btn-cart:hover,
    .top-cart [disabled].btn-checkout:hover,
    .button[disabled]:focus, .top-cart [disabled].btn-cart:focus,
    .top-cart [disabled].btn-checkout:focus {
      background-color: #4a8ec2; }
    button.disabled.secondary, button[disabled].secondary, .button.disabled.secondary, .top-cart .disabled.secondary.btn-cart,
    .top-cart .disabled.secondary.btn-checkout, .button[disabled].secondary, .top-cart [disabled].secondary.btn-cart,
    .top-cart [disabled].secondary.btn-checkout {
      background-color: #e7e7e7;
      border-color: #b9b9b9;
      color: #333333;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.secondary:hover,
      button.disabled.secondary:focus, button[disabled].secondary:hover,
      button[disabled].secondary:focus, .button.disabled.secondary:hover,
      .top-cart .disabled.secondary.btn-cart:hover,
      .top-cart .disabled.secondary.btn-checkout:hover,
      .button.disabled.secondary:focus, .top-cart .disabled.secondary.btn-cart:focus,
      .top-cart .disabled.secondary.btn-checkout:focus, .button[disabled].secondary:hover,
      .top-cart [disabled].secondary.btn-cart:hover,
      .top-cart [disabled].secondary.btn-checkout:hover,
      .button[disabled].secondary:focus, .top-cart [disabled].secondary.btn-cart:focus,
      .top-cart [disabled].secondary.btn-checkout:focus {
        background-color: #b9b9b9; }
      button.disabled.secondary:hover,
      button.disabled.secondary:focus, button[disabled].secondary:hover,
      button[disabled].secondary:focus, .button.disabled.secondary:hover,
      .top-cart .disabled.secondary.btn-cart:hover,
      .top-cart .disabled.secondary.btn-checkout:hover,
      .button.disabled.secondary:focus, .top-cart .disabled.secondary.btn-cart:focus,
      .top-cart .disabled.secondary.btn-checkout:focus, .button[disabled].secondary:hover,
      .top-cart [disabled].secondary.btn-cart:hover,
      .top-cart [disabled].secondary.btn-checkout:hover,
      .button[disabled].secondary:focus, .top-cart [disabled].secondary.btn-cart:focus,
      .top-cart [disabled].secondary.btn-checkout:focus {
        color: #333333; }
      button.disabled.secondary:hover,
      button.disabled.secondary:focus, button[disabled].secondary:hover,
      button[disabled].secondary:focus, .button.disabled.secondary:hover,
      .top-cart .disabled.secondary.btn-cart:hover,
      .top-cart .disabled.secondary.btn-checkout:hover,
      .button.disabled.secondary:focus, .top-cart .disabled.secondary.btn-cart:focus,
      .top-cart .disabled.secondary.btn-checkout:focus, .button[disabled].secondary:hover,
      .top-cart [disabled].secondary.btn-cart:hover,
      .top-cart [disabled].secondary.btn-checkout:hover,
      .button[disabled].secondary:focus, .top-cart [disabled].secondary.btn-cart:focus,
      .top-cart [disabled].secondary.btn-checkout:focus {
        background-color: #e7e7e7; }
    button.disabled.success, button[disabled].success, .button.disabled.success, .top-cart .disabled.success.btn-cart,
    .top-cart .disabled.success.btn-checkout, .button[disabled].success, .top-cart [disabled].success.btn-cart,
    .top-cart [disabled].success.btn-checkout {
      background-color: #43AC6A;
      border-color: #368a55;
      color: #FFFFFF;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.success:hover,
      button.disabled.success:focus, button[disabled].success:hover,
      button[disabled].success:focus, .button.disabled.success:hover,
      .top-cart .disabled.success.btn-cart:hover,
      .top-cart .disabled.success.btn-checkout:hover,
      .button.disabled.success:focus, .top-cart .disabled.success.btn-cart:focus,
      .top-cart .disabled.success.btn-checkout:focus, .button[disabled].success:hover,
      .top-cart [disabled].success.btn-cart:hover,
      .top-cart [disabled].success.btn-checkout:hover,
      .button[disabled].success:focus, .top-cart [disabled].success.btn-cart:focus,
      .top-cart [disabled].success.btn-checkout:focus {
        background-color: #368a55; }
      button.disabled.success:hover,
      button.disabled.success:focus, button[disabled].success:hover,
      button[disabled].success:focus, .button.disabled.success:hover,
      .top-cart .disabled.success.btn-cart:hover,
      .top-cart .disabled.success.btn-checkout:hover,
      .button.disabled.success:focus, .top-cart .disabled.success.btn-cart:focus,
      .top-cart .disabled.success.btn-checkout:focus, .button[disabled].success:hover,
      .top-cart [disabled].success.btn-cart:hover,
      .top-cart [disabled].success.btn-checkout:hover,
      .button[disabled].success:focus, .top-cart [disabled].success.btn-cart:focus,
      .top-cart [disabled].success.btn-checkout:focus {
        color: #FFFFFF; }
      button.disabled.success:hover,
      button.disabled.success:focus, button[disabled].success:hover,
      button[disabled].success:focus, .button.disabled.success:hover,
      .top-cart .disabled.success.btn-cart:hover,
      .top-cart .disabled.success.btn-checkout:hover,
      .button.disabled.success:focus, .top-cart .disabled.success.btn-cart:focus,
      .top-cart .disabled.success.btn-checkout:focus, .button[disabled].success:hover,
      .top-cart [disabled].success.btn-cart:hover,
      .top-cart [disabled].success.btn-checkout:hover,
      .button[disabled].success:focus, .top-cart [disabled].success.btn-cart:focus,
      .top-cart [disabled].success.btn-checkout:focus {
        background-color: #43AC6A; }
    button.disabled.alert, button[disabled].alert, .button.disabled.alert, .top-cart .disabled.alert.btn-cart,
    .top-cart .disabled.alert.btn-checkout, .button[disabled].alert, .top-cart [disabled].alert.btn-cart,
    .top-cart [disabled].alert.btn-checkout {
      background-color: #f04124;
      border-color: #cf2a0e;
      color: #FFFFFF;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.alert:hover,
      button.disabled.alert:focus, button[disabled].alert:hover,
      button[disabled].alert:focus, .button.disabled.alert:hover,
      .top-cart .disabled.alert.btn-cart:hover,
      .top-cart .disabled.alert.btn-checkout:hover,
      .button.disabled.alert:focus, .top-cart .disabled.alert.btn-cart:focus,
      .top-cart .disabled.alert.btn-checkout:focus, .button[disabled].alert:hover,
      .top-cart [disabled].alert.btn-cart:hover,
      .top-cart [disabled].alert.btn-checkout:hover,
      .button[disabled].alert:focus, .top-cart [disabled].alert.btn-cart:focus,
      .top-cart [disabled].alert.btn-checkout:focus {
        background-color: #cf2a0e; }
      button.disabled.alert:hover,
      button.disabled.alert:focus, button[disabled].alert:hover,
      button[disabled].alert:focus, .button.disabled.alert:hover,
      .top-cart .disabled.alert.btn-cart:hover,
      .top-cart .disabled.alert.btn-checkout:hover,
      .button.disabled.alert:focus, .top-cart .disabled.alert.btn-cart:focus,
      .top-cart .disabled.alert.btn-checkout:focus, .button[disabled].alert:hover,
      .top-cart [disabled].alert.btn-cart:hover,
      .top-cart [disabled].alert.btn-checkout:hover,
      .button[disabled].alert:focus, .top-cart [disabled].alert.btn-cart:focus,
      .top-cart [disabled].alert.btn-checkout:focus {
        color: #FFFFFF; }
      button.disabled.alert:hover,
      button.disabled.alert:focus, button[disabled].alert:hover,
      button[disabled].alert:focus, .button.disabled.alert:hover,
      .top-cart .disabled.alert.btn-cart:hover,
      .top-cart .disabled.alert.btn-checkout:hover,
      .button.disabled.alert:focus, .top-cart .disabled.alert.btn-cart:focus,
      .top-cart .disabled.alert.btn-checkout:focus, .button[disabled].alert:hover,
      .top-cart [disabled].alert.btn-cart:hover,
      .top-cart [disabled].alert.btn-checkout:hover,
      .button[disabled].alert:focus, .top-cart [disabled].alert.btn-cart:focus,
      .top-cart [disabled].alert.btn-checkout:focus {
        background-color: #f04124; }
    button.disabled.warning, button[disabled].warning, .button.disabled.warning, .top-cart .disabled.warning.btn-cart,
    .top-cart .disabled.warning.btn-checkout, .button[disabled].warning, .top-cart [disabled].warning.btn-cart,
    .top-cart [disabled].warning.btn-checkout {
      background-color: #f08a24;
      border-color: #cf6e0e;
      color: #FFFFFF;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.warning:hover,
      button.disabled.warning:focus, button[disabled].warning:hover,
      button[disabled].warning:focus, .button.disabled.warning:hover,
      .top-cart .disabled.warning.btn-cart:hover,
      .top-cart .disabled.warning.btn-checkout:hover,
      .button.disabled.warning:focus, .top-cart .disabled.warning.btn-cart:focus,
      .top-cart .disabled.warning.btn-checkout:focus, .button[disabled].warning:hover,
      .top-cart [disabled].warning.btn-cart:hover,
      .top-cart [disabled].warning.btn-checkout:hover,
      .button[disabled].warning:focus, .top-cart [disabled].warning.btn-cart:focus,
      .top-cart [disabled].warning.btn-checkout:focus {
        background-color: #cf6e0e; }
      button.disabled.warning:hover,
      button.disabled.warning:focus, button[disabled].warning:hover,
      button[disabled].warning:focus, .button.disabled.warning:hover,
      .top-cart .disabled.warning.btn-cart:hover,
      .top-cart .disabled.warning.btn-checkout:hover,
      .button.disabled.warning:focus, .top-cart .disabled.warning.btn-cart:focus,
      .top-cart .disabled.warning.btn-checkout:focus, .button[disabled].warning:hover,
      .top-cart [disabled].warning.btn-cart:hover,
      .top-cart [disabled].warning.btn-checkout:hover,
      .button[disabled].warning:focus, .top-cart [disabled].warning.btn-cart:focus,
      .top-cart [disabled].warning.btn-checkout:focus {
        color: #FFFFFF; }
      button.disabled.warning:hover,
      button.disabled.warning:focus, button[disabled].warning:hover,
      button[disabled].warning:focus, .button.disabled.warning:hover,
      .top-cart .disabled.warning.btn-cart:hover,
      .top-cart .disabled.warning.btn-checkout:hover,
      .button.disabled.warning:focus, .top-cart .disabled.warning.btn-cart:focus,
      .top-cart .disabled.warning.btn-checkout:focus, .button[disabled].warning:hover,
      .top-cart [disabled].warning.btn-cart:hover,
      .top-cart [disabled].warning.btn-checkout:hover,
      .button[disabled].warning:focus, .top-cart [disabled].warning.btn-cart:focus,
      .top-cart [disabled].warning.btn-checkout:focus {
        background-color: #f08a24; }
    button.disabled.info, button[disabled].info, .button.disabled.info, .top-cart .disabled.info.btn-cart,
    .top-cart .disabled.info.btn-checkout, .button[disabled].info, .top-cart [disabled].info.btn-cart,
    .top-cart [disabled].info.btn-checkout {
      background-color: #a0d3e8;
      border-color: #61b6d9;
      color: #333333;
      box-shadow: none;
      cursor: default;
      opacity: 0.7; }
      button.disabled.info:hover,
      button.disabled.info:focus, button[disabled].info:hover,
      button[disabled].info:focus, .button.disabled.info:hover,
      .top-cart .disabled.info.btn-cart:hover,
      .top-cart .disabled.info.btn-checkout:hover,
      .button.disabled.info:focus, .top-cart .disabled.info.btn-cart:focus,
      .top-cart .disabled.info.btn-checkout:focus, .button[disabled].info:hover,
      .top-cart [disabled].info.btn-cart:hover,
      .top-cart [disabled].info.btn-checkout:hover,
      .button[disabled].info:focus, .top-cart [disabled].info.btn-cart:focus,
      .top-cart [disabled].info.btn-checkout:focus {
        background-color: #61b6d9; }
      button.disabled.info:hover,
      button.disabled.info:focus, button[disabled].info:hover,
      button[disabled].info:focus, .button.disabled.info:hover,
      .top-cart .disabled.info.btn-cart:hover,
      .top-cart .disabled.info.btn-checkout:hover,
      .button.disabled.info:focus, .top-cart .disabled.info.btn-cart:focus,
      .top-cart .disabled.info.btn-checkout:focus, .button[disabled].info:hover,
      .top-cart [disabled].info.btn-cart:hover,
      .top-cart [disabled].info.btn-checkout:hover,
      .button[disabled].info:focus, .top-cart [disabled].info.btn-cart:focus,
      .top-cart [disabled].info.btn-checkout:focus {
        color: #FFFFFF; }
      button.disabled.info:hover,
      button.disabled.info:focus, button[disabled].info:hover,
      button[disabled].info:focus, .button.disabled.info:hover,
      .top-cart .disabled.info.btn-cart:hover,
      .top-cart .disabled.info.btn-checkout:hover,
      .button.disabled.info:focus, .top-cart .disabled.info.btn-cart:focus,
      .top-cart .disabled.info.btn-checkout:focus, .button[disabled].info:hover,
      .top-cart [disabled].info.btn-cart:hover,
      .top-cart [disabled].info.btn-checkout:hover,
      .button[disabled].info:focus, .top-cart [disabled].info.btn-cart:focus,
      .top-cart [disabled].info.btn-checkout:focus {
        background-color: #a0d3e8; }

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

@media only screen and (min-width: 40.0625em) {
  button, .button, .top-cart .btn-cart,
  .top-cart .btn-checkout {
    display: inline-block; } }

/* Foundation Dropdowns */
.f-dropdown {
  display: none;
  left: -9999px;
  list-style: none;
  margin-left: 0;
  position: absolute;
  background: #FFFFFF;
  border: solid 1px #cccccc;
  font-size: 0.875rem;
  height: auto;
  max-height: none;
  width: 100%;
  z-index: 89;
  margin-top: 2px;
  max-width: 500px; }
  .f-dropdown.open {
    display: block; }
  .f-dropdown > *:first-child {
    margin-top: 0; }
  .f-dropdown > *:last-child {
    margin-bottom: 0; }
  .f-dropdown:before {
    border: inset 6px;
    content: "";
    display: block;
    height: 0;
    width: 0;
    border-color: transparent transparent #FFFFFF transparent;
    border-bottom-style: solid;
    position: absolute;
    top: -12px;
    left: 10px;
    z-index: 89; }
  .f-dropdown:after {
    border: inset 7px;
    content: "";
    display: block;
    height: 0;
    width: 0;
    border-color: transparent transparent #cccccc transparent;
    border-bottom-style: solid;
    position: absolute;
    top: -14px;
    left: 9px;
    z-index: 88; }
  .f-dropdown.right:before {
    left: auto;
    right: 10px; }
  .f-dropdown.right:after {
    left: auto;
    right: 9px; }
  .f-dropdown.drop-right {
    display: none;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    position: absolute;
    background: #FFFFFF;
    border: solid 1px #cccccc;
    font-size: 0.875rem;
    height: auto;
    max-height: none;
    width: 100%;
    z-index: 89;
    margin-top: 0;
    margin-left: 2px;
    max-width: 500px; }
    .f-dropdown.drop-right.open {
      display: block; }
    .f-dropdown.drop-right > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-right > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-right:before {
      border: inset 6px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent #FFFFFF transparent transparent;
      border-right-style: solid;
      position: absolute;
      top: 10px;
      left: -12px;
      z-index: 89; }
    .f-dropdown.drop-right:after {
      border: inset 7px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent #cccccc transparent transparent;
      border-right-style: solid;
      position: absolute;
      top: 9px;
      left: -14px;
      z-index: 88; }
  .f-dropdown.drop-left {
    display: none;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    position: absolute;
    background: #FFFFFF;
    border: solid 1px #cccccc;
    font-size: 0.875rem;
    height: auto;
    max-height: none;
    width: 100%;
    z-index: 89;
    margin-top: 0;
    margin-left: -2px;
    max-width: 500px; }
    .f-dropdown.drop-left.open {
      display: block; }
    .f-dropdown.drop-left > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-left > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-left:before {
      border: inset 6px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent transparent transparent #FFFFFF;
      border-left-style: solid;
      position: absolute;
      top: 10px;
      right: -12px;
      left: auto;
      z-index: 89; }
    .f-dropdown.drop-left:after {
      border: inset 7px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent transparent transparent #cccccc;
      border-left-style: solid;
      position: absolute;
      top: 9px;
      right: -14px;
      left: auto;
      z-index: 88; }
  .f-dropdown.drop-top {
    display: none;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    position: absolute;
    background: #FFFFFF;
    border: solid 1px #cccccc;
    font-size: 0.875rem;
    height: auto;
    max-height: none;
    width: 100%;
    z-index: 89;
    margin-left: 0;
    margin-top: -2px;
    max-width: 500px; }
    .f-dropdown.drop-top.open {
      display: block; }
    .f-dropdown.drop-top > *:first-child {
      margin-top: 0; }
    .f-dropdown.drop-top > *:last-child {
      margin-bottom: 0; }
    .f-dropdown.drop-top:before {
      border: inset 6px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: #FFFFFF transparent transparent transparent;
      border-top-style: solid;
      bottom: -12px;
      position: absolute;
      top: auto;
      left: 10px;
      right: auto;
      z-index: 89; }
    .f-dropdown.drop-top:after {
      border: inset 7px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: #cccccc transparent transparent transparent;
      border-top-style: solid;
      bottom: -14px;
      position: absolute;
      top: auto;
      left: 9px;
      right: auto;
      z-index: 88; }
  .f-dropdown li {
    cursor: pointer;
    font-size: 0.875rem;
    line-height: 1.125rem;
    margin: 0; }
    .f-dropdown li:hover,
    .f-dropdown li:focus {
      background: #EEEEEE; }
    .f-dropdown li.radius {
      border-radius: 3px; }
    .f-dropdown li a {
      display: block;
      padding: 0.5rem;
      color: #555555; }
  .f-dropdown.content {
    display: none;
    left: -9999px;
    list-style: none;
    margin-left: 0;
    position: absolute;
    background: #FFFFFF;
    border: solid 1px #cccccc;
    font-size: 0.875rem;
    height: auto;
    max-height: none;
    padding: 1.25rem;
    width: 100%;
    z-index: 89;
    max-width: 500px; }
    .f-dropdown.content.open {
      display: block; }
    .f-dropdown.content > *:first-child {
      margin-top: 0; }
    .f-dropdown.content > *:last-child {
      margin-bottom: 0; }
  .f-dropdown.tiny, #wishlist-view-form button.f-dropdown, .cart form fieldset #shopping-cart-table tfoot button.f-dropdown, .footer-container .block-subscribe .actions button.f-dropdown, .header-container .header .quick-access .form-search button.f-dropdown, .top-cart .f-dropdown.btn-cart,
  .top-cart .f-dropdown.btn-checkout {
    max-width: 200px; }
  .f-dropdown.small, .products-list .f-dropdown.btn-cart,
  .products-grid .f-dropdown.btn-cart {
    max-width: 300px; }
  .f-dropdown.medium {
    max-width: 500px; }
  .f-dropdown.large {
    max-width: 800px; }
  .f-dropdown.mega {
    width: 100% !important;
    max-width: 100% !important; }
    .f-dropdown.mega.open {
      left: 0 !important; }

.dropdown.button, .top-cart .dropdown.btn-cart,
.top-cart .dropdown.btn-checkout, button.dropdown {
  position: relative;
  padding-right: 3.5625rem; }
  .dropdown.button::after, .top-cart .dropdown.btn-cart::after,
  .top-cart .dropdown.btn-checkout::after, button.dropdown::after {
    border-color: #FFFFFF transparent transparent transparent;
    border-style: solid;
    content: "";
    display: block;
    height: 0;
    position: absolute;
    top: 50%;
    width: 0; }
  .dropdown.button::after, .top-cart .dropdown.btn-cart::after,
  .top-cart .dropdown.btn-checkout::after, button.dropdown::after {
    border-width: 0.375rem;
    right: 1.40625rem;
    margin-top: -0.15625rem; }
  .dropdown.button::after, .top-cart .dropdown.btn-cart::after,
  .top-cart .dropdown.btn-checkout::after, button.dropdown::after {
    border-color: #FFFFFF transparent transparent transparent; }
  .dropdown.button.tiny, #wishlist-view-form button.dropdown.button, #wishlist-view-form .top-cart button.dropdown.btn-cart, .top-cart #wishlist-view-form button.dropdown.btn-cart,
  #wishlist-view-form .top-cart button.dropdown.btn-checkout, .top-cart #wishlist-view-form button.dropdown.btn-checkout, .cart form fieldset #shopping-cart-table tfoot button.dropdown.button, .cart form fieldset #shopping-cart-table tfoot .top-cart button.dropdown.btn-cart, .top-cart .cart form fieldset #shopping-cart-table tfoot button.dropdown.btn-cart,
  .cart form fieldset #shopping-cart-table tfoot .top-cart button.dropdown.btn-checkout, .top-cart .cart form fieldset #shopping-cart-table tfoot button.dropdown.btn-checkout, .footer-container .block-subscribe .actions button.dropdown.button, .footer-container .block-subscribe .actions .top-cart button.dropdown.btn-cart, .top-cart .footer-container .block-subscribe .actions button.dropdown.btn-cart,
  .footer-container .block-subscribe .actions .top-cart button.dropdown.btn-checkout, .top-cart .footer-container .block-subscribe .actions button.dropdown.btn-checkout, .header-container .header .quick-access .form-search button.dropdown.button, .header-container .header .quick-access .form-search .top-cart button.dropdown.btn-cart, .top-cart .header-container .header .quick-access .form-search button.dropdown.btn-cart,
  .header-container .header .quick-access .form-search .top-cart button.dropdown.btn-checkout, .top-cart .header-container .header .quick-access .form-search button.dropdown.btn-checkout, .top-cart .dropdown.btn-cart,
  .top-cart .dropdown.btn-checkout, button.dropdown.tiny, #wishlist-view-form button.dropdown, .cart form fieldset #shopping-cart-table tfoot button.dropdown, .footer-container .block-subscribe .actions button.dropdown, .header-container .header .quick-access .form-search button.dropdown, .top-cart button.dropdown.btn-cart,
  .top-cart button.dropdown.btn-checkout {
    padding-right: 2.625rem; }
    .dropdown.button.tiny:after, #wishlist-view-form button.dropdown.button:after, #wishlist-view-form .top-cart button.dropdown.btn-cart:after, .top-cart #wishlist-view-form button.dropdown.btn-cart:after,
    #wishlist-view-form .top-cart button.dropdown.btn-checkout:after, .top-cart #wishlist-view-form button.dropdown.btn-checkout:after, .cart form fieldset #shopping-cart-table tfoot button.dropdown.button:after, .cart form fieldset #shopping-cart-table tfoot .top-cart button.dropdown.btn-cart:after, .top-cart .cart form fieldset #shopping-cart-table tfoot button.dropdown.btn-cart:after,
    .cart form fieldset #shopping-cart-table tfoot .top-cart button.dropdown.btn-checkout:after, .top-cart .cart form fieldset #shopping-cart-table tfoot button.dropdown.btn-checkout:after, .footer-container .block-subscribe .actions button.dropdown.button:after, .header-container .header .quick-access .form-search button.dropdown.button:after, .header-container .header .quick-access .form-search .top-cart button.dropdown.btn-cart:after, .top-cart .header-container .header .quick-access .form-search button.dropdown.btn-cart:after,
    .header-container .header .quick-access .form-search .top-cart button.dropdown.btn-checkout:after, .top-cart .header-container .header .quick-access .form-search button.dropdown.btn-checkout:after, .top-cart .dropdown.btn-cart:after,
    .top-cart .dropdown.btn-checkout:after, button.dropdown.tiny:after, #wishlist-view-form button.dropdown:after, .cart form fieldset #shopping-cart-table tfoot button.dropdown:after, .footer-container .block-subscribe .actions button.dropdown:after, .header-container .header .quick-access .form-search button.dropdown:after, .top-cart button.dropdown.btn-cart:after,
    .top-cart button.dropdown.btn-checkout:after {
      border-width: 0.375rem;
      right: 1.125rem;
      margin-top: -0.125rem; }
    .dropdown.button.tiny::after, #wishlist-view-form button.dropdown.button::after, #wishlist-view-form .top-cart button.dropdown.btn-cart::after, .top-cart #wishlist-view-form button.dropdown.btn-cart::after,
    #wishlist-view-form .top-cart button.dropdown.btn-checkout::after, .top-cart #wishlist-view-form button.dropdown.btn-checkout::after, .cart form fieldset #shopping-cart-table tfoot button.dropdown.button::after, .cart form fieldset #shopping-cart-table tfoot .top-cart button.dropdown.btn-cart::after, .top-cart .cart form fieldset #shopping-cart-table tfoot button.dropdown.btn-cart::after,
    .cart form fieldset #shopping-cart-table tfoot .top-cart button.dropdown.btn-checkout::after, .top-cart .cart form fieldset #shopping-cart-table tfoot button.dropdown.btn-checkout::after, .footer-container .block-subscribe .actions button.dropdown.button::after, .header-container .header .quick-access .form-search button.dropdown.button::after, .header-container .header .quick-access .form-search .top-cart button.dropdown.btn-cart::after, .top-cart .header-container .header .quick-access .form-search button.dropdown.btn-cart::after,
    .header-container .header .quick-access .form-search .top-cart button.dropdown.btn-checkout::after, .top-cart .header-container .header .quick-access .form-search button.dropdown.btn-checkout::after, .top-cart .dropdown.btn-cart::after,
    .top-cart .dropdown.btn-checkout::after, button.dropdown.tiny::after, #wishlist-view-form button.dropdown::after, .cart form fieldset #shopping-cart-table tfoot button.dropdown::after, .footer-container .block-subscribe .actions button.dropdown::after, .header-container .header .quick-access .form-search button.dropdown::after, .top-cart button.dropdown.btn-cart::after,
    .top-cart button.dropdown.btn-checkout::after {
      border-color: #FFFFFF transparent transparent transparent; }
  .dropdown.button.small, .products-list .dropdown.button.btn-cart,
  .products-list .top-cart .dropdown.btn-cart,
  .top-cart .products-list .dropdown.btn-cart,
  .products-grid .dropdown.button.btn-cart, .products-grid .top-cart .dropdown.btn-cart, .top-cart .products-grid .dropdown.btn-cart,
  .top-cart .dropdown.small.btn-cart,
  .top-cart .dropdown.small.btn-checkout, button.dropdown.small, .products-list button.dropdown.btn-cart,
  .products-grid button.dropdown.btn-cart {
    padding-right: 3.0625rem; }
    .dropdown.button.small::after, .products-list .dropdown.button.btn-cart::after,
    .products-list .top-cart .dropdown.btn-cart::after,
    .top-cart .products-list .dropdown.btn-cart::after,
    .products-grid .dropdown.button.btn-cart::after, .products-grid .top-cart .dropdown.btn-cart::after, .top-cart .products-grid .dropdown.btn-cart::after,
    .top-cart .dropdown.small.btn-cart::after,
    .top-cart .dropdown.small.btn-checkout::after, button.dropdown.small::after, .products-list button.dropdown.btn-cart::after,
    .products-grid button.dropdown.btn-cart::after {
      border-width: 0.4375rem;
      right: 1.3125rem;
      margin-top: -0.15625rem; }
    .dropdown.button.small::after, .products-list .dropdown.button.btn-cart::after,
    .products-list .top-cart .dropdown.btn-cart::after,
    .top-cart .products-list .dropdown.btn-cart::after,
    .products-grid .dropdown.button.btn-cart::after, .products-grid .top-cart .dropdown.btn-cart::after, .top-cart .products-grid .dropdown.btn-cart::after,
    .top-cart .dropdown.small.btn-cart::after,
    .top-cart .dropdown.small.btn-checkout::after, button.dropdown.small::after, .products-list button.dropdown.btn-cart::after,
    .products-grid button.dropdown.btn-cart::after {
      border-color: #FFFFFF transparent transparent transparent; }
  .dropdown.button.large, .top-cart .dropdown.large.btn-cart,
  .top-cart .dropdown.large.btn-checkout, button.dropdown.large {
    padding-right: 3.625rem; }
    .dropdown.button.large::after, .top-cart .dropdown.large.btn-cart::after,
    .top-cart .dropdown.large.btn-checkout::after, button.dropdown.large::after {
      border-width: 0.3125rem;
      right: 1.71875rem;
      margin-top: -0.15625rem; }
    .dropdown.button.large::after, .top-cart .dropdown.large.btn-cart::after,
    .top-cart .dropdown.large.btn-checkout::after, button.dropdown.large::after {
      border-color: #FFFFFF transparent transparent transparent; }
  .dropdown.button.secondary:after, .top-cart .dropdown.secondary.btn-cart:after,
  .top-cart .dropdown.secondary.btn-checkout:after, button.dropdown.secondary:after {
    border-color: #333333 transparent transparent transparent; }

.flex-video {
  height: 0;
  margin-bottom: 1rem;
  overflow: hidden;
  padding-bottom: 67.5%;
  padding-top: 1.5625rem;
  position: relative; }
  .flex-video.widescreen {
    padding-bottom: 56.34%; }
  .flex-video.vimeo {
    padding-top: 0; }
  .flex-video iframe,
  .flex-video object,
  .flex-video embed,
  .flex-video video {
    height: 100%;
    position: absolute;
    top: 0;
    width: 100%;
    left: 0; }

/* Standard Forms */
form {
  margin: 0 0 1rem; }

/* Using forms within rows, we need to set some defaults */
form .row .row {
  margin: 0 -0.5rem; }
  form .row .row .column,
  form .row .row .columns {
    padding: 0 0.5rem; }
  form .row .row.collapse {
    margin: 0; }
    form .row .row.collapse .column,
    form .row .row.collapse .columns {
      padding: 0; }
    form .row .row.collapse input {
      -webkit-border-bottom-right-radius: 0;
      -webkit-border-top-right-radius: 0;
      border-bottom-right-radius: 0;
      border-top-right-radius: 0; }

form .row input.column,
form .row input.columns,
form .row textarea.column,
form .row textarea.columns {
  padding-left: 0.5rem; }

/* Label Styles */
label {
  color: #4d4d4d;
  cursor: pointer;
  display: block;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.5;
  margin-bottom: 0;
  /* Styles for required inputs */ }
  label.right {
    float: none !important;
    text-align: right; }
  label.inline {
    margin: 0 0 1rem 0;
    padding: 0.5625rem 0; }
  label small {
    text-transform: capitalize;
    color: #676767; }

/* Attach elements to the beginning or end of an input */
.prefix,
.postfix {
  border-style: solid;
  border-width: 1px;
  display: block;
  font-size: 0.875rem;
  height: 2.3125rem;
  line-height: 2.3125rem;
  overflow: visible;
  padding-bottom: 0;
  padding-top: 0;
  position: relative;
  text-align: center;
  width: 100%;
  z-index: 2; }

/* Adjust padding, alignment and radius if pre/post element is a button */
.postfix.button, .top-cart .postfix.btn-cart,
.top-cart .postfix.btn-checkout {
  border-color: true; }

.prefix.button, .top-cart .prefix.btn-cart,
.top-cart .prefix.btn-checkout {
  border: none;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-top: 0;
  text-align: center; }

.prefix.button.radius, .top-cart .prefix.radius.btn-cart,
.top-cart .prefix.radius.btn-checkout {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

.postfix.button.radius, .top-cart .postfix.radius.btn-cart,
.top-cart .postfix.radius.btn-checkout {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

.prefix.button.round, .top-cart .prefix.round.btn-cart,
.top-cart .prefix.round.btn-checkout {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

.postfix.button.round, .top-cart .postfix.round.btn-cart,
.top-cart .postfix.round.btn-checkout {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

/* Separate prefix and postfix styles when on span or label so buttons keep their own */
span.prefix, label.prefix {
  background: #f2f2f2;
  border-right: none;
  color: #333333;
  border-color: #cccccc; }

span.postfix, label.postfix {
  background: #f2f2f2;
  color: #333333;
  border-color: #cccccc; }

/* We use this to get basic styling on all basic form elements */
input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="datetime-local"], input[type="month"], input[type="week"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input[type="color"], textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
  background-color: #FFFFFF;
  border-style: solid;
  border-width: 1px;
  border-color: #cccccc;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
  color: rgba(0, 0, 0, 0.75);
  display: block;
  font-family: inherit;
  font-size: 0.875rem;
  height: 2.3125rem;
  margin: 0 0 1rem 0;
  padding: 0.5rem;
  width: 100%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: border-color 0.15s linear, background 0.15s linear;
  -moz-transition: border-color 0.15s linear, background 0.15s linear;
  -ms-transition: border-color 0.15s linear, background 0.15s linear;
  -o-transition: border-color 0.15s linear, background 0.15s linear;
  transition: border-color 0.15s linear, background 0.15s linear; }
  input[type="text"]:focus, input[type="password"]:focus, input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="email"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="color"]:focus, textarea:focus {
    background: #fafafa;
    border-color: #999999;
    outline: none; }
  input[type="text"]:disabled, input[type="password"]:disabled, input[type="date"]:disabled, input[type="datetime"]:disabled, input[type="datetime-local"]:disabled, input[type="month"]:disabled, input[type="week"]:disabled, input[type="email"]:disabled, input[type="number"]:disabled, input[type="search"]:disabled, input[type="tel"]:disabled, input[type="time"]:disabled, input[type="url"]:disabled, input[type="color"]:disabled, textarea:disabled {
    background-color: #DDDDDD;
    cursor: default; }
  input[type="text"][disabled],
  input[type="text"][readonly],
  fieldset[disabled] input[type="text"], input[type="password"][disabled],
  input[type="password"][readonly],
  fieldset[disabled] input[type="password"], input[type="date"][disabled],
  input[type="date"][readonly],
  fieldset[disabled] input[type="date"], input[type="datetime"][disabled],
  input[type="datetime"][readonly],
  fieldset[disabled] input[type="datetime"], input[type="datetime-local"][disabled],
  input[type="datetime-local"][readonly],
  fieldset[disabled] input[type="datetime-local"], input[type="month"][disabled],
  input[type="month"][readonly],
  fieldset[disabled] input[type="month"], input[type="week"][disabled],
  input[type="week"][readonly],
  fieldset[disabled] input[type="week"], input[type="email"][disabled],
  input[type="email"][readonly],
  fieldset[disabled] input[type="email"], input[type="number"][disabled],
  input[type="number"][readonly],
  fieldset[disabled] input[type="number"], input[type="search"][disabled],
  input[type="search"][readonly],
  fieldset[disabled] input[type="search"], input[type="tel"][disabled],
  input[type="tel"][readonly],
  fieldset[disabled] input[type="tel"], input[type="time"][disabled],
  input[type="time"][readonly],
  fieldset[disabled] input[type="time"], input[type="url"][disabled],
  input[type="url"][readonly],
  fieldset[disabled] input[type="url"], input[type="color"][disabled],
  input[type="color"][readonly],
  fieldset[disabled] input[type="color"], textarea[disabled],
  textarea[readonly],
  fieldset[disabled] textarea {
    background-color: #DDDDDD;
    cursor: default; }
  input[type="text"].radius, input[type="password"].radius, input[type="date"].radius, input[type="datetime"].radius, input[type="datetime-local"].radius, input[type="month"].radius, input[type="week"].radius, input[type="email"].radius, input[type="number"].radius, input[type="search"].radius, input[type="tel"].radius, input[type="time"].radius, input[type="url"].radius, input[type="color"].radius, textarea.radius {
    border-radius: 3px; }

form .row .prefix-radius.row.collapse input,
form .row .prefix-radius.row.collapse textarea,
form .row .prefix-radius.row.collapse select,
form .row .prefix-radius.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

form .row .prefix-radius.row.collapse .prefix {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

form .row .postfix-radius.row.collapse input,
form .row .postfix-radius.row.collapse textarea,
form .row .postfix-radius.row.collapse select,
form .row .postfix-radius.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 3px;
  -webkit-border-top-left-radius: 3px;
  border-bottom-left-radius: 3px;
  border-top-left-radius: 3px; }

form .row .postfix-radius.row.collapse .postfix {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  border-top-right-radius: 3px; }

form .row .prefix-round.row.collapse input,
form .row .prefix-round.row.collapse textarea,
form .row .prefix-round.row.collapse select,
form .row .prefix-round.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

form .row .prefix-round.row.collapse .prefix {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

form .row .postfix-round.row.collapse input,
form .row .postfix-round.row.collapse textarea,
form .row .postfix-round.row.collapse select,
form .row .postfix-round.row.collapse button {
  border-radius: 0;
  -webkit-border-bottom-left-radius: 1000px;
  -webkit-border-top-left-radius: 1000px;
  border-bottom-left-radius: 1000px;
  border-top-left-radius: 1000px; }

form .row .postfix-round.row.collapse .postfix {
  border-radius: 0;
  -webkit-border-bottom-right-radius: 1000px;
  -webkit-border-top-right-radius: 1000px;
  border-bottom-right-radius: 1000px;
  border-top-right-radius: 1000px; }

input[type="submit"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0; }

/* Respect enforced amount of rows for textarea */
textarea[rows] {
  height: auto; }

/* Not allow resize out of parent */
textarea {
  max-width: 100%; }

::-webkit-input-placeholder {
  color: #cccccc; }

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

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

:-ms-input-placeholder {
  color: #cccccc; }

/* Add height value for select elements to match text input height */
select {
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-color: #FFFFFF;
  border-radius: 0;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZlcnNpb249IjEuMSIgeD0iMTJweCIgeT0iMHB4IiB3aWR0aD0iMjRweCIgaGVpZ2h0PSIzcHgiIHZpZXdCb3g9IjAgMCA2IDMiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDYgMyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBvbHlnb24gcG9pbnRzPSI1Ljk5MiwwIDIuOTkyLDMgLTAuMDA4LDAgIi8+PC9zdmc+);
  background-position: 100% center;
  background-repeat: no-repeat;
  border-style: solid;
  border-width: 1px;
  border-color: #cccccc;
  color: rgba(0, 0, 0, 0.75);
  font-family: inherit;
  font-size: 0.875rem;
  line-height: normal;
  padding: 0.5rem;
  border-radius: 0;
  height: 2.3125rem; }
  select::-ms-expand {
    display: none; }
  select.radius {
    border-radius: 3px; }
  select:hover {
    background-color: #f7f7f7;
    border-color: #999999; }
  select:disabled {
    background-color: #DDDDDD;
    cursor: default; }
  select[multiple] {
    height: auto; }

/* Adjust margin for form elements below */
input[type="file"],
input[type="checkbox"],
input[type="radio"],
select {
  margin: 0 0 1rem 0; }

input[type="checkbox"] + label,
input[type="radio"] + label {
  display: inline-block;
  margin-left: 0.5rem;
  margin-right: 1rem;
  margin-bottom: 0;
  vertical-align: baseline; }

/* Normalize file input width */
input[type="file"] {
  width: 100%; }

/* HTML5 Number spinners settings */
/* We add basic fieldset styling */
fieldset {
  border: 0 solid #DDDDDD;
  margin: 1.125rem 0;
  padding: 1.25rem; }
  fieldset legend {
    background: #FFFFFF;
    font-weight: bold;
    margin-left: -0.1875rem;
    margin: 0;
    padding: 0 0.1875rem; }

/* Error Handling */
[data-abide] .error small.error, [data-abide] .error span.error, [data-abide] span.error, [data-abide] small.error {
  display: block;
  font-size: 0.75rem;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 1rem;
  margin-top: -1px;
  padding: 0.375rem 0.5625rem 0.5625rem;
  background: #f04124;
  color: #FFFFFF; }

[data-abide] span.error, [data-abide] small.error {
  display: none; }

span.error, small.error {
  display: block;
  font-size: 0.75rem;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 1rem;
  margin-top: -1px;
  padding: 0.375rem 0.5625rem 0.5625rem;
  background: #f04124;
  color: #FFFFFF; }

.error input,
.error textarea,
.error select {
  margin-bottom: 0; }

.error input[type="checkbox"],
.error input[type="radio"] {
  margin-bottom: 1rem; }

.error label,
.error label.error {
  color: #f04124; }

.error small.error {
  display: block;
  font-size: 0.75rem;
  font-style: italic;
  font-weight: normal;
  margin-bottom: 1rem;
  margin-top: -1px;
  padding: 0.375rem 0.5625rem 0.5625rem;
  background: #f04124;
  color: #FFFFFF; }

.error > label > small {
  background: transparent;
  color: #676767;
  display: inline;
  font-size: 60%;
  font-style: normal;
  margin: 0;
  padding: 0;
  text-transform: capitalize; }

.error span.error-message {
  display: block; }

input.error,
textarea.error,
select.error {
  margin-bottom: 0; }

label.error {
  color: #f04124; }

.row {
  margin: 0 auto;
  max-width: 84%;
  width: 100%; }
  .row:before, .row:after {
    content: " ";
    display: table; }
  .row:after {
    clear: both; }
  .row.collapse > .column,
  .row.collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row .row {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .row .row:before, .row .row:after {
      content: " ";
      display: table; }
    .row .row:after {
      clear: both; }
    .row .row.collapse {
      margin: 0;
      max-width: none;
      width: auto; }
      .row .row.collapse:before, .row .row.collapse:after {
        content: " ";
        display: table; }
      .row .row.collapse:after {
        clear: both; }

.column,
.columns {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 100%;
  float: left; }

.column + .column:last-child,
.columns + .columns:last-child {
  float: right; }

.column + .column.end,
.columns + .columns.end {
  float: left; }

@media only screen {
  .small-push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .small-pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .small-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .small-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .small-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .small-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .small-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .small-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .small-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .small-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .small-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .small-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .small-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .small-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .small-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .small-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .small-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .small-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .small-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .small-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .small-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .small-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .small-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .small-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .small-1 {
    width: 8.33333%; }
  .small-2 {
    width: 16.66667%; }
  .small-3 {
    width: 25%; }
  .small-4 {
    width: 33.33333%; }
  .small-5 {
    width: 41.66667%; }
  .small-6 {
    width: 50%; }
  .small-7 {
    width: 58.33333%; }
  .small-8 {
    width: 66.66667%; }
  .small-9 {
    width: 75%; }
  .small-10 {
    width: 83.33333%; }
  .small-11 {
    width: 91.66667%; }
  .small-12 {
    width: 100%; }
  .small-offset-0 {
    margin-left: 0 !important; }
  .small-offset-1 {
    margin-left: 8.33333% !important; }
  .small-offset-2 {
    margin-left: 16.66667% !important; }
  .small-offset-3 {
    margin-left: 25% !important; }
  .small-offset-4 {
    margin-left: 33.33333% !important; }
  .small-offset-5 {
    margin-left: 41.66667% !important; }
  .small-offset-6 {
    margin-left: 50% !important; }
  .small-offset-7 {
    margin-left: 58.33333% !important; }
  .small-offset-8 {
    margin-left: 66.66667% !important; }
  .small-offset-9 {
    margin-left: 75% !important; }
  .small-offset-10 {
    margin-left: 83.33333% !important; }
  .small-offset-11 {
    margin-left: 91.66667% !important; }
  .small-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.small-centered,
  .columns.small-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.small-uncentered,
  .columns.small-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.small-centered:last-child,
  .columns.small-centered:last-child {
    float: none; }
  .column.small-uncentered:last-child,
  .columns.small-uncentered:last-child {
    float: left; }
  .column.small-uncentered.opposite,
  .columns.small-uncentered.opposite {
    float: right; }
  .row.small-collapse > .column,
  .row.small-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.small-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.small-uncollapse > .column,
  .row.small-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; } }

@media only screen and (min-width: 40.0625em) {
  .medium-push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .medium-pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .medium-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .medium-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .medium-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .medium-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .medium-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .medium-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .medium-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .medium-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .medium-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .medium-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .medium-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .medium-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .medium-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .medium-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .medium-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .medium-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .medium-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .medium-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .medium-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .medium-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .medium-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .medium-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .medium-1 {
    width: 8.33333%; }
  .medium-2 {
    width: 16.66667%; }
  .medium-3 {
    width: 25%; }
  .medium-4 {
    width: 33.33333%; }
  .medium-5 {
    width: 41.66667%; }
  .medium-6 {
    width: 50%; }
  .medium-7 {
    width: 58.33333%; }
  .medium-8 {
    width: 66.66667%; }
  .medium-9 {
    width: 75%; }
  .medium-10 {
    width: 83.33333%; }
  .medium-11 {
    width: 91.66667%; }
  .medium-12 {
    width: 100%; }
  .medium-offset-0 {
    margin-left: 0 !important; }
  .medium-offset-1 {
    margin-left: 8.33333% !important; }
  .medium-offset-2 {
    margin-left: 16.66667% !important; }
  .medium-offset-3 {
    margin-left: 25% !important; }
  .medium-offset-4 {
    margin-left: 33.33333% !important; }
  .medium-offset-5 {
    margin-left: 41.66667% !important; }
  .medium-offset-6 {
    margin-left: 50% !important; }
  .medium-offset-7 {
    margin-left: 58.33333% !important; }
  .medium-offset-8 {
    margin-left: 66.66667% !important; }
  .medium-offset-9 {
    margin-left: 75% !important; }
  .medium-offset-10 {
    margin-left: 83.33333% !important; }
  .medium-offset-11 {
    margin-left: 91.66667% !important; }
  .medium-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.medium-centered,
  .columns.medium-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.medium-uncentered,
  .columns.medium-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.medium-centered:last-child,
  .columns.medium-centered:last-child {
    float: none; }
  .column.medium-uncentered:last-child,
  .columns.medium-uncentered:last-child {
    float: left; }
  .column.medium-uncentered.opposite,
  .columns.medium-uncentered.opposite {
    float: right; }
  .row.medium-collapse > .column,
  .row.medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.medium-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.medium-uncollapse > .column,
  .row.medium-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; } }

@media only screen and (min-width: 64.0625em) {
  .large-push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .large-pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .large-push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .large-pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .large-push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .large-pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .large-push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .large-pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .large-push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .large-pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .large-push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .large-pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .large-push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .large-pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .large-push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .large-pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .large-push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .large-pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .large-push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .large-pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .large-push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .large-pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .large-push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .large-pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .large-1 {
    width: 8.33333%; }
  .large-2 {
    width: 16.66667%; }
  .large-3 {
    width: 25%; }
  .large-4 {
    width: 33.33333%; }
  .large-5 {
    width: 41.66667%; }
  .large-6 {
    width: 50%; }
  .large-7 {
    width: 58.33333%; }
  .large-8 {
    width: 66.66667%; }
  .large-9 {
    width: 75%; }
  .large-10 {
    width: 83.33333%; }
  .large-11 {
    width: 91.66667%; }
  .large-12 {
    width: 100%; }
  .large-offset-0 {
    margin-left: 0 !important; }
  .large-offset-1 {
    margin-left: 8.33333% !important; }
  .large-offset-2 {
    margin-left: 16.66667% !important; }
  .large-offset-3 {
    margin-left: 25% !important; }
  .large-offset-4 {
    margin-left: 33.33333% !important; }
  .large-offset-5 {
    margin-left: 41.66667% !important; }
  .large-offset-6 {
    margin-left: 50% !important; }
  .large-offset-7 {
    margin-left: 58.33333% !important; }
  .large-offset-8 {
    margin-left: 66.66667% !important; }
  .large-offset-9 {
    margin-left: 75% !important; }
  .large-offset-10 {
    margin-left: 83.33333% !important; }
  .large-offset-11 {
    margin-left: 91.66667% !important; }
  .large-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto; }
  .column.large-centered,
  .columns.large-centered {
    margin-left: auto;
    margin-right: auto;
    float: none; }
  .column.large-uncentered,
  .columns.large-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0; }
  .column.large-centered:last-child,
  .columns.large-centered:last-child {
    float: none; }
  .column.large-uncentered:last-child,
  .columns.large-uncentered:last-child {
    float: left; }
  .column.large-uncentered.opposite,
  .columns.large-uncentered.opposite {
    float: right; }
  .row.large-collapse > .column,
  .row.large-collapse > .columns {
    padding-left: 0;
    padding-right: 0; }
  .row.large-collapse .row {
    margin-left: 0;
    margin-right: 0; }
  .row.large-uncollapse > .column,
  .row.large-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left; }
  .push-0 {
    position: relative;
    left: 0;
    right: auto; }
  .pull-0 {
    position: relative;
    right: 0;
    left: auto; }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto; }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto; }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto; }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto; }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto; }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto; }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto; }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto; }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto; }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto; }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto; }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto; }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto; }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto; }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto; }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto; }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto; }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto; }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto; }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto; }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto; }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto; } }

.icon-bar {
  display: inline-block;
  font-size: 0;
  width: 100%;
  background: #333333; }
  .icon-bar > * {
    display: block;
    float: left;
    font-size: 1rem;
    margin: 0 auto;
    padding: 1.25rem;
    text-align: center;
    width: 25%; }
    .icon-bar > * i, .icon-bar > * img {
      display: block;
      margin: 0 auto; }
      .icon-bar > * i + label, .icon-bar > * img + label {
        margin-top: .0625rem; }
    .icon-bar > * i {
      font-size: 1.875rem;
      vertical-align: middle; }
    .icon-bar > * img {
      height: 1.875rem;
      width: 1.875rem; }
  .icon-bar.label-right > * i, .icon-bar.label-right > * img {
    display: inline-block;
    margin: 0 0.0625rem 0 0; }
    .icon-bar.label-right > * i + label, .icon-bar.label-right > * img + label {
      margin-top: 0; }
  .icon-bar.label-right > * label {
    display: inline-block; }
  .icon-bar.vertical.label-right > * {
    text-align: left; }
  .icon-bar.vertical, .icon-bar.small-vertical {
    height: 100%;
    width: auto; }
    .icon-bar.vertical .item, .icon-bar.small-vertical .item {
      float: none;
      margin: auto;
      width: auto; }
  @media only screen and (min-width: 40.0625em) {
    .icon-bar.medium-vertical {
      height: 100%;
      width: auto; }
      .icon-bar.medium-vertical .item {
        float: none;
        margin: auto;
        width: auto; } }
  @media only screen and (min-width: 64.0625em) {
    .icon-bar.large-vertical {
      height: 100%;
      width: auto; }
      .icon-bar.large-vertical .item {
        float: none;
        margin: auto;
        width: auto; } }
  .icon-bar > * {
    font-size: 1rem;
    padding: 1.25rem; }
    .icon-bar > * i + label, .icon-bar > * img + label {
      margin-top: .0625rem;
      font-size: 1rem; }
    .icon-bar > * i {
      font-size: 1.875rem; }
    .icon-bar > * img {
      height: 1.875rem;
      width: 1.875rem; }
  .icon-bar > * label {
    color: #FFFFFF; }
  .icon-bar > * i {
    color: #FFFFFF; }
  .icon-bar > a:hover {
    background: #4a8ec2; }
    .icon-bar > a:hover label {
      color: #FFFFFF; }
    .icon-bar > a:hover i {
      color: #FFFFFF; }
  .icon-bar > a.active {
    background: #4a8ec2; }
    .icon-bar > a.active label {
      color: #FFFFFF; }
    .icon-bar > a.active i {
      color: #FFFFFF; }
  .icon-bar .item.disabled {
    cursor: not-allowed;
    opacity: 0.7;
    pointer-events: none; }
    .icon-bar .item.disabled > * {
      opacity: 0.7;
      cursor: not-allowed; }
  .icon-bar.two-up .item {
    width: 50%; }
  .icon-bar.two-up.vertical .item, .icon-bar.two-up.small-vertical .item {
    width: auto; }
  @media only screen and (min-width: 40.0625em) {
    .icon-bar.two-up.medium-vertical .item {
      width: auto; } }
  @media only screen and (min-width: 64.0625em) {
    .icon-bar.two-up.large-vertical .item {
      width: auto; } }
  .icon-bar.three-up .item {
    width: 33.3333%; }
  .icon-bar.three-up.vertical .item, .icon-bar.three-up.small-vertical .item {
    width: auto; }
  @media only screen and (min-width: 40.0625em) {
    .icon-bar.three-up.medium-vertical .item {
      width: auto; } }
  @media only screen and (min-width: 64.0625em) {
    .icon-bar.three-up.large-vertical .item {
      width: auto; } }
  .icon-bar.four-up .item {
    width: 25%; }
  .icon-bar.four-up.vertical .item, .icon-bar.four-up.small-vertical .item {
    width: auto; }
  @media only screen and (min-width: 40.0625em) {
    .icon-bar.four-up.medium-vertical .item {
      width: auto; } }
  @media only screen and (min-width: 64.0625em) {
    .icon-bar.four-up.large-vertical .item {
      width: auto; } }
  .icon-bar.five-up .item {
    width: 20%; }
  .icon-bar.five-up.vertical .item, .icon-bar.five-up.small-vertical .item {
    width: auto; }
  @media only screen and (min-width: 40.0625em) {
    .icon-bar.five-up.medium-vertical .item {
      width: auto; } }
  @media only screen and (min-width: 64.0625em) {
    .icon-bar.five-up.large-vertical .item {
      width: auto; } }
  .icon-bar.six-up .item {
    width: 16.66667%; }
  .icon-bar.six-up.vertical .item, .icon-bar.six-up.small-vertical .item {
    width: auto; }
  @media only screen and (min-width: 40.0625em) {
    .icon-bar.six-up.medium-vertical .item {
      width: auto; } }
  @media only screen and (min-width: 64.0625em) {
    .icon-bar.six-up.large-vertical .item {
      width: auto; } }
  .icon-bar.seven-up .item {
    width: 14.28571%; }
  .icon-bar.seven-up.vertical .item, .icon-bar.seven-up.small-vertical .item {
    width: auto; }
  @media only screen and (min-width: 40.0625em) {
    .icon-bar.seven-up.medium-vertical .item {
      width: auto; } }
  @media only screen and (min-width: 64.0625em) {
    .icon-bar.seven-up.large-vertical .item {
      width: auto; } }
  .icon-bar.eight-up .item {
    width: 12.5%; }
  .icon-bar.eight-up.vertical .item, .icon-bar.eight-up.small-vertical .item {
    width: auto; }
  @media only screen and (min-width: 40.0625em) {
    .icon-bar.eight-up.medium-vertical .item {
      width: auto; } }
  @media only screen and (min-width: 64.0625em) {
    .icon-bar.eight-up.large-vertical .item {
      width: auto; } }

.icon-bar.two-up .item {
  width: 50%; }

.icon-bar.two-up.vertical .item, .icon-bar.two-up.small-vertical .item {
  width: auto; }

@media only screen and (min-width: 40.0625em) {
  .icon-bar.two-up.medium-vertical .item {
    width: auto; } }

@media only screen and (min-width: 64.0625em) {
  .icon-bar.two-up.large-vertical .item {
    width: auto; } }

.icon-bar.three-up .item {
  width: 33.3333%; }

.icon-bar.three-up.vertical .item, .icon-bar.three-up.small-vertical .item {
  width: auto; }

@media only screen and (min-width: 40.0625em) {
  .icon-bar.three-up.medium-vertical .item {
    width: auto; } }

@media only screen and (min-width: 64.0625em) {
  .icon-bar.three-up.large-vertical .item {
    width: auto; } }

.icon-bar.four-up .item {
  width: 25%; }

.icon-bar.four-up.vertical .item, .icon-bar.four-up.small-vertical .item {
  width: auto; }

@media only screen and (min-width: 40.0625em) {
  .icon-bar.four-up.medium-vertical .item {
    width: auto; } }

@media only screen and (min-width: 64.0625em) {
  .icon-bar.four-up.large-vertical .item {
    width: auto; } }

.icon-bar.five-up .item {
  width: 20%; }

.icon-bar.five-up.vertical .item, .icon-bar.five-up.small-vertical .item {
  width: auto; }

@media only screen and (min-width: 40.0625em) {
  .icon-bar.five-up.medium-vertical .item {
    width: auto; } }

@media only screen and (min-width: 64.0625em) {
  .icon-bar.five-up.large-vertical .item {
    width: auto; } }

.icon-bar.six-up .item {
  width: 16.66667%; }

.icon-bar.six-up.vertical .item, .icon-bar.six-up.small-vertical .item {
  width: auto; }

@media only screen and (min-width: 40.0625em) {
  .icon-bar.six-up.medium-vertical .item {
    width: auto; } }

@media only screen and (min-width: 64.0625em) {
  .icon-bar.six-up.large-vertical .item {
    width: auto; } }

.icon-bar.seven-up .item {
  width: 14.28571%; }

.icon-bar.seven-up.vertical .item, .icon-bar.seven-up.small-vertical .item {
  width: auto; }

@media only screen and (min-width: 40.0625em) {
  .icon-bar.seven-up.medium-vertical .item {
    width: auto; } }

@media only screen and (min-width: 64.0625em) {
  .icon-bar.seven-up.large-vertical .item {
    width: auto; } }

.icon-bar.eight-up .item {
  width: 12.5%; }

.icon-bar.eight-up.vertical .item, .icon-bar.eight-up.small-vertical .item {
  width: auto; }

@media only screen and (min-width: 40.0625em) {
  .icon-bar.eight-up.medium-vertical .item {
    width: auto; } }

@media only screen and (min-width: 64.0625em) {
  .icon-bar.eight-up.large-vertical .item {
    width: auto; } }

.inline-list {
  list-style: none;
  margin-left: -1.375rem;
  margin-right: 0;
  margin: 0 auto 1.0625rem auto;
  overflow: hidden;
  padding: 0; }
  .inline-list > li {
    display: block;
    float: left;
    list-style: none;
    margin-left: 1.375rem; }
    .inline-list > li > * {
      display: block; }

/* Foundation Joyride */
.joyride-list {
  display: none; }

/* Default styles for the container */
.joyride-tip-guide {
  background: #333333;
  color: #FFFFFF;
  display: none;
  font-family: inherit;
  font-weight: normal;
  position: absolute;
  top: 0;
  width: 95%;
  z-index: 101;
  left: 2.5%; }

.lt-ie9 .joyride-tip-guide {
  margin-left: -400px;
  max-width: 800px;
  left: 50%; }

.joyride-content-wrapper {
  padding: 1.125rem 1.25rem 1.5rem;
  width: 100%; }
  .joyride-content-wrapper .button, .joyride-content-wrapper .top-cart .btn-cart, .top-cart .joyride-content-wrapper .btn-cart,
  .joyride-content-wrapper .top-cart .btn-checkout, .top-cart .joyride-content-wrapper .btn-checkout {
    margin-bottom: 0 !important; }
  .joyride-content-wrapper .joyride-prev-tip {
    margin-right: 10px; }

/* Add a little css triangle pip, older browser just miss out on the fanciness of it */
.joyride-tip-guide .joyride-nub {
  border: 10px solid #333333;
  display: block;
  height: 0;
  position: absolute;
  width: 0;
  left: 22px; }
  .joyride-tip-guide .joyride-nub.top {
    border-color: #333333;
    border-top-color: transparent !important;
    border-top-style: solid;
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    top: -20px; }
  .joyride-tip-guide .joyride-nub.bottom {
    border-color: #333333 !important;
    border-bottom-color: transparent !important;
    border-bottom-style: solid;
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    bottom: -20px; }
  .joyride-tip-guide .joyride-nub.right {
    right: -20px; }
  .joyride-tip-guide .joyride-nub.left {
    left: -20px; }

/* Typography */
.joyride-tip-guide h1,
.joyride-tip-guide h2,
.joyride-tip-guide h3,
.joyride-tip-guide h4,
.joyride-tip-guide h5,
.joyride-tip-guide h6 {
  color: #FFFFFF;
  font-weight: bold;
  line-height: 1.25;
  margin: 0; }

.joyride-tip-guide p {
  font-size: 0.875rem;
  line-height: 1.3;
  margin: 0 0 1.125rem 0; }

.joyride-timer-indicator-wrap {
  border: solid 1px #555555;
  bottom: 1rem;
  height: 3px;
  position: absolute;
  width: 50px;
  right: 1.0625rem; }

.joyride-timer-indicator {
  background: #666666;
  display: block;
  height: inherit;
  width: 0; }

.joyride-close-tip {
  color: #777777 !important;
  font-size: 24px;
  font-weight: normal;
  line-height: .5 !important;
  position: absolute;
  text-decoration: none;
  top: 10px;
  right: 12px; }
  .joyride-close-tip:hover,
  .joyride-close-tip:focus {
    color: #EEEEEE !important; }

.joyride-modal-bg {
  background: rgba(0, 0, 0, 0.5);
  cursor: pointer;
  display: none;
  height: 100%;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
  left: 0; }

.joyride-expose-wrapper {
  background-color: #FFFFFF;
  border-radius: 3px;
  box-shadow: 0 0 15px #FFFFFF;
  position: absolute;
  z-index: 102; }

.joyride-expose-cover {
  background: transparent;
  border-radius: 3px;
  left: 0;
  position: absolute;
  top: 0;
  z-index: 9999; }

/* Styles for screens that are at least 768px; */
@media only screen and (min-width: 40.0625em) {
  .joyride-tip-guide {
    width: 300px;
    left: inherit; }
    .joyride-tip-guide .joyride-nub.bottom {
      border-color: #333333 !important;
      border-bottom-color: transparent !important;
      border-left-color: transparent !important;
      border-right-color: transparent !important;
      bottom: -20px; }
    .joyride-tip-guide .joyride-nub.right {
      border-color: #333333 !important;
      border-right-color: transparent !important;
      border-bottom-color: transparent !important;
      border-top-color: transparent !important;
      left: auto;
      right: -20px;
      top: 22px; }
    .joyride-tip-guide .joyride-nub.left {
      border-color: #333333 !important;
      border-bottom-color: transparent !important;
      border-left-color: transparent !important;
      border-top-color: transparent !important;
      left: -20px;
      right: auto;
      top: 22px; } }

.label {
  display: inline-block;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-weight: normal;
  line-height: 1;
  margin-bottom: auto;
  position: relative;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  padding: 0.25rem 0.5rem 0.25rem;
  font-size: 0.6875rem;
  background-color: #4a8ec2;
  color: #FFFFFF; }
  .label.radius {
    border-radius: 3px; }
  .label.round {
    border-radius: 1000px; }
  .label.alert {
    background-color: #f04124;
    color: #FFFFFF; }
  .label.warning {
    background-color: #f08a24;
    color: #FFFFFF; }
  .label.success {
    background-color: #43AC6A;
    color: #FFFFFF; }
  .label.secondary {
    background-color: #e7e7e7;
    color: #333333; }
  .label.info {
    background-color: #a0d3e8;
    color: #333333; }

[data-magellan-expedition], [data-magellan-expedition-clone] {
  background: #FFFFFF;
  min-width: 100%;
  padding: 10px;
  z-index: 50; }
  [data-magellan-expedition] .sub-nav, [data-magellan-expedition-clone] .sub-nav {
    margin-bottom: 0; }
    [data-magellan-expedition] .sub-nav dd, [data-magellan-expedition-clone] .sub-nav dd {
      margin-bottom: 0; }
    [data-magellan-expedition] .sub-nav a, [data-magellan-expedition-clone] .sub-nav a {
      line-height: 1.8em; }

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

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

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

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

@media only screen and (max-width: 40em) {
  .small-only-text-left {
    text-align: left !important; }
  .small-only-text-right {
    text-align: right !important; }
  .small-only-text-center {
    text-align: center !important; }
  .small-only-text-justify {
    text-align: justify !important; } }

@media only screen {
  .small-text-left {
    text-align: left !important; }
  .small-text-right {
    text-align: right !important; }
  .small-text-center {
    text-align: center !important; }
  .small-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 40.0625em) and (max-width: 64em) {
  .medium-only-text-left {
    text-align: left !important; }
  .medium-only-text-right {
    text-align: right !important; }
  .medium-only-text-center {
    text-align: center !important; }
  .medium-only-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 40.0625em) {
  .medium-text-left {
    text-align: left !important; }
  .medium-text-right {
    text-align: right !important; }
  .medium-text-center {
    text-align: center !important; }
  .medium-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 64.0625em) and (max-width: 90em) {
  .large-only-text-left {
    text-align: left !important; }
  .large-only-text-right {
    text-align: right !important; }
  .large-only-text-center {
    text-align: center !important; }
  .large-only-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 64.0625em) {
  .large-text-left {
    text-align: left !important; }
  .large-text-right {
    text-align: right !important; }
  .large-text-center {
    text-align: center !important; }
  .large-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 90.0625em) and (max-width: 120em) {
  .xlarge-only-text-left {
    text-align: left !important; }
  .xlarge-only-text-right {
    text-align: right !important; }
  .xlarge-only-text-center {
    text-align: center !important; }
  .xlarge-only-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 90.0625em) {
  .xlarge-text-left {
    text-align: left !important; }
  .xlarge-text-right {
    text-align: right !important; }
  .xlarge-text-center {
    text-align: center !important; }
  .xlarge-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 120.0625em) and (max-width: 6249999.9375em) {
  .xxlarge-only-text-left {
    text-align: left !important; }
  .xxlarge-only-text-right {
    text-align: right !important; }
  .xxlarge-only-text-center {
    text-align: center !important; }
  .xxlarge-only-text-justify {
    text-align: justify !important; } }

@media only screen and (min-width: 120.0625em) {
  .xxlarge-text-left {
    text-align: left !important; }
  .xxlarge-text-right {
    text-align: right !important; }
  .xxlarge-text-center {
    text-align: center !important; }
  .xxlarge-text-justify {
    text-align: justify !important; } }

/* Typography resets */
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

/* Default Link Styles */
a {
  color: #4a8ec2;
  line-height: inherit;
  text-decoration: none; }
  a:hover,
  a:focus {
    color: #3a7bac; }
  a img {
    border: none; }

/* Default paragraph styles */
p {
  font-family: inherit;
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.6;
  margin-bottom: 1.25rem;
  text-rendering: optimizeLegibility; }
  p.lead {
    font-size: 1.21875rem;
    line-height: 1.6; }
  p aside {
    font-size: 0.875rem;
    font-style: italic;
    line-height: 1.35; }

/* Default header styles */
h1, h2, h3, h4, h5, h6 {
  color: #222222;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 1.4;
  margin-bottom: 0.5rem;
  margin-top: 0.2rem;
  text-rendering: optimizeLegibility; }
  h1 small, h2 small, h3 small, h4 small, h5 small, h6 small {
    color: #6f6f6f;
    font-size: 60%;
    line-height: 0; }

h1 {
  font-size: 1.625rem; }

h2 {
  font-size: 1.25rem; }

h3 {
  font-size: 1.375rem; }

h4 {
  font-size: 1.125rem; }

h5 {
  font-size: 1.125rem; }

h6 {
  font-size: 1rem; }

.subheader {
  line-height: 1.4;
  color: #6f6f6f;
  font-weight: normal;
  margin-top: 0.2rem;
  margin-bottom: 0.5rem; }

hr {
  border: solid #DDDDDD;
  border-width: 1px 0 0;
  clear: both;
  height: 0;
  margin: 1.25rem 0 1.1875rem; }

/* Helpful Typography Defaults */
em,
i {
  font-style: italic;
  line-height: inherit; }

strong,
b {
  font-weight: bold;
  line-height: inherit; }

small {
  font-size: 60%;
  line-height: inherit; }

code {
  background-color: #f8f8f8;
  border-color: #dfdfdf;
  border-style: solid;
  border-width: 1px;
  color: #333333;
  font-family: Consolas, "Liberation Mono", Courier, monospace;
  font-weight: normal;
  padding: 0.125rem 0.3125rem 0.0625rem; }

/* Lists */
ul,
ol,
dl {
  font-family: inherit;
  font-size: 1rem;
  line-height: 1.6;
  list-style-position: outside;
  margin-bottom: 1.25rem; }

ul {
  margin-left: 1.1rem; }
  ul.no-bullet {
    margin-left: 0; }
    ul.no-bullet li ul,
    ul.no-bullet li ol {
      margin-left: 1.25rem;
      margin-bottom: 0;
      list-style: none; }

/* Unordered Lists */
ul li ul,
ul li ol {
  margin-left: 1.25rem;
  margin-bottom: 0; }

ul.square li ul,
ul.circle li ul,
ul.disc li ul {
  list-style: inherit; }

ul.square {
  list-style-type: square;
  margin-left: 1.1rem; }

ul.circle {
  list-style-type: circle;
  margin-left: 1.1rem; }

ul.disc {
  list-style-type: disc;
  margin-left: 1.1rem; }

ul.no-bullet {
  list-style: none; }

/* Ordered Lists */
ol {
  margin-left: 1.4rem; }
  ol li ul,
  ol li ol {
    margin-left: 1.25rem;
    margin-bottom: 0; }

/* Definition Lists */
dl dt {
  margin-bottom: 0.3rem;
  font-weight: bold; }

dl dd {
  margin-bottom: 0.75rem; }

/* Abbreviations */
abbr,
acronym {
  text-transform: uppercase;
  font-size: 90%;
  color: #222;
  cursor: help; }

abbr {
  text-transform: none; }
  abbr[title] {
    border-bottom: 1px dotted #DDDDDD; }

/* Blockquotes */
blockquote {
  margin: 0 0 1.25rem;
  padding: 0.5625rem 1.25rem 0 1.1875rem;
  border-left: 1px solid #DDDDDD; }
  blockquote cite {
    display: block;
    font-size: 0.8125rem;
    color: #555555; }
    blockquote cite:before {
      content: "\2014 \0020"; }
    blockquote cite a,
    blockquote cite a:visited {
      color: #555555; }

blockquote,
blockquote p {
  line-height: 1.6;
  color: #6f6f6f; }

/* Microformats */
.vcard {
  display: inline-block;
  margin: 0 0 1.25rem 0;
  border: 1px solid #DDDDDD;
  padding: 0.625rem 0.75rem; }
  .vcard li {
    margin: 0;
    display: block; }
  .vcard .fn {
    font-weight: bold;
    font-size: 0.9375rem; }

.vevent .summary {
  font-weight: bold; }

.vevent abbr {
  cursor: default;
  text-decoration: none;
  font-weight: bold;
  border: none;
  padding: 0 0.0625rem; }

@media only screen and (min-width: 40.0625em) {
  h1, h2, h3, h4, h5, h6 {
    line-height: 1.4; }
  h1 {
    font-size: 2.25rem; }
  h2 {
    font-size: 1.875rem; }
  h3 {
    font-size: 1.6875rem; }
  h4 {
    font-size: 1.4375rem; }
  h5 {
    font-size: 1.125rem; }
  h6 {
    font-size: 1rem; } }

.off-canvas-wrap {
  -webkit-backface-visibility: hidden;
  position: relative;
  width: 100%;
  overflow: hidden; }
  .off-canvas-wrap.move-right,
  .off-canvas-wrap.move-left {
    min-height: 100%;
    -webkit-overflow-scrolling: touch; }

.inner-wrap {
  position: relative;
  width: 100%;
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -ms-transition: -ms-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease; }
  .inner-wrap:before, .inner-wrap:after {
    content: " ";
    display: table; }
  .inner-wrap:after {
    clear: both; }

.tab-bar {
  -webkit-backface-visibility: hidden;
  background: #333333;
  color: #FFFFFF;
  height: 2.8125rem;
  line-height: 2.8125rem;
  position: relative; }
  .tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4, .tab-bar h5, .tab-bar h6 {
    color: #FFFFFF;
    font-weight: bold;
    line-height: 2.8125rem;
    margin: 0; }
  .tab-bar h1, .tab-bar h2, .tab-bar h3, .tab-bar h4 {
    font-size: 1.125rem; }

.left-small {
  height: 2.8125rem;
  position: absolute;
  top: 0;
  width: 2.8125rem;
  border-right: solid 1px #1a1a1a;
  left: 0; }

.right-small {
  height: 2.8125rem;
  position: absolute;
  top: 0;
  width: 2.8125rem;
  border-left: solid 1px #1a1a1a;
  right: 0; }

.tab-bar-section {
  height: 2.8125rem;
  padding: 0 0.625rem;
  position: absolute;
  text-align: center;
  top: 0; }
  .tab-bar-section.left {
    text-align: left; }
  .tab-bar-section.right {
    text-align: right; }
  .tab-bar-section.left {
    left: 0;
    right: 2.8125rem; }
  .tab-bar-section.right {
    left: 2.8125rem;
    right: 0; }
  .tab-bar-section.middle {
    left: 2.8125rem;
    right: 2.8125rem; }

.tab-bar .menu-icon {
  color: #FFFFFF;
  display: block;
  height: 2.8125rem;
  padding: 0;
  position: relative;
  text-indent: 2.1875rem;
  transform: translate3d(0, 0, 0);
  width: 2.8125rem; }
  .tab-bar .menu-icon span::after {
    content: "";
    display: block;
    height: 0;
    position: absolute;
    top: 50%;
    margin-top: -0.5rem;
    left: 0.90625rem;
    box-shadow: 0 0 0 1px #FFFFFF, 0 7px 0 1px #FFFFFF, 0 14px 0 1px #FFFFFF;
    width: 1rem; }
  .tab-bar .menu-icon span:hover:after {
    box-shadow: 0 0 0 1px #b3b3b3, 0 7px 0 1px #b3b3b3, 0 14px 0 1px #b3b3b3; }

.left-off-canvas-menu {
  -webkit-backface-visibility: hidden;
  background: #F9F9F9;
  bottom: 0;
  box-sizing: content-box;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  transition: transform 500ms ease 0s;
  width: 15.625rem;
  z-index: 1001;
  font-size: 16px;
  -webkit-transform: translate3d(-100%, 0, 0);
  -moz-transform: translate3d(-100%, 0, 0);
  -ms-transform: translate(-100%, 0);
  -ms-transform: translate3d(-100%, 0, 0);
  -o-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  left: 0; }
  .left-off-canvas-menu * {
    -webkit-backface-visibility: hidden; }

.right-off-canvas-menu {
  -webkit-backface-visibility: hidden;
  background: #F9F9F9;
  bottom: 0;
  box-sizing: content-box;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-style: -ms-autohiding-scrollbar;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  transition: transform 500ms ease 0s;
  width: 15.625rem;
  z-index: 1001;
  font-size: 16px;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 0);
  -ms-transform: translate(100%, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  right: 0; }
  .right-off-canvas-menu * {
    -webkit-backface-visibility: hidden; }

ul.off-canvas-list {
  list-style-type: none;
  margin: 0;
  padding: 0; }
  ul.off-canvas-list li label {
    background: #444444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    display: block;
    font-size: 0.75rem;
    font-weight: bold;
    margin: 0;
    padding: 0.3rem 0.9375rem;
    text-transform: uppercase; }
  ul.off-canvas-list li a {
    border-bottom: 1px solid #bbbbbb;
    color: rgba(255, 255, 255, 0.7);
    display: block;
    padding: 0.66667rem;
    transition: background 300ms ease; }
    ul.off-canvas-list li a:hover {
      background: #242424; }
    ul.off-canvas-list li a:active {
      background: #242424; }

.move-right > .inner-wrap {
  -webkit-transform: translate3d(15.625rem, 0, 0);
  -moz-transform: translate3d(15.625rem, 0, 0);
  -ms-transform: translate(15.625rem, 0);
  -ms-transform: translate3d(15.625rem, 0, 0);
  -o-transform: translate3d(15.625rem, 0, 0);
  transform: translate3d(15.625rem, 0, 0); }

.move-right .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 40.0625em) {
    .move-right .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.move-left > .inner-wrap {
  -webkit-transform: translate3d(-15.625rem, 0, 0);
  -moz-transform: translate3d(-15.625rem, 0, 0);
  -ms-transform: translate(-15.625rem, 0);
  -ms-transform: translate3d(-15.625rem, 0, 0);
  -o-transform: translate3d(-15.625rem, 0, 0);
  transform: translate3d(-15.625rem, 0, 0); }

.move-left .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 40.0625em) {
    .move-left .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.offcanvas-overlap .left-off-canvas-menu, .offcanvas-overlap .right-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 40.0625em) {
    .offcanvas-overlap .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.offcanvas-overlap-left .right-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap-left .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 40.0625em) {
    .offcanvas-overlap-left .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.offcanvas-overlap-right .left-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap-right .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 40.0625em) {
    .offcanvas-overlap-right .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.no-csstransforms .left-off-canvas-menu {
  left: -15.625rem; }

.no-csstransforms .right-off-canvas-menu {
  right: -15.625rem; }

.no-csstransforms .move-left > .inner-wrap {
  right: 15.625rem; }

.no-csstransforms .move-right > .inner-wrap {
  left: 15.625rem; }

.left-submenu {
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  background: #F9F9F9;
  bottom: 0;
  box-sizing: content-box;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  width: 15.625rem;
  z-index: 1002;
  -webkit-transform: translate3d(-100%, 0, 0);
  -moz-transform: translate3d(-100%, 0, 0);
  -ms-transform: translate(-100%, 0);
  -ms-transform: translate3d(-100%, 0, 0);
  -o-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  left: 0;
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -ms-transition: -ms-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease; }
  .left-submenu * {
    -webkit-backface-visibility: hidden; }
  .left-submenu .back > a {
    background: #444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    font-weight: bold;
    padding: 0.3rem 0.9375rem;
    text-transform: uppercase;
    margin: 0; }
    .left-submenu .back > a:hover {
      background: #303030;
      border-bottom: none;
      border-top: 1px solid #5e5e5e; }
    .left-submenu .back > a:before {
      content: "\AB";
      margin-right: .5rem;
      display: inline; }
  .left-submenu.move-right, .left-submenu.offcanvas-overlap-right, .left-submenu.offcanvas-overlap {
    -webkit-transform: translate3d(0%, 0, 0);
    -moz-transform: translate3d(0%, 0, 0);
    -ms-transform: translate(0%, 0);
    -ms-transform: translate3d(0%, 0, 0);
    -o-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0); }

.right-submenu {
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  background: #F9F9F9;
  bottom: 0;
  box-sizing: content-box;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  width: 15.625rem;
  z-index: 1002;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 0);
  -ms-transform: translate(100%, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  right: 0;
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -ms-transition: -ms-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease; }
  .right-submenu * {
    -webkit-backface-visibility: hidden; }
  .right-submenu .back > a {
    background: #444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    font-weight: bold;
    padding: 0.3rem 0.9375rem;
    text-transform: uppercase;
    margin: 0; }
    .right-submenu .back > a:hover {
      background: #303030;
      border-bottom: none;
      border-top: 1px solid #5e5e5e; }
    .right-submenu .back > a:after {
      content: "\BB";
      margin-left: .5rem;
      display: inline; }
  .right-submenu.move-left, .right-submenu.offcanvas-overlap-left, .right-submenu.offcanvas-overlap {
    -webkit-transform: translate3d(0%, 0, 0);
    -moz-transform: translate3d(0%, 0, 0);
    -ms-transform: translate(0%, 0);
    -ms-transform: translate3d(0%, 0, 0);
    -o-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0); }

.left-off-canvas-menu ul.off-canvas-list li.has-submenu > a:after {
  content: "\BB";
  margin-left: .5rem;
  display: inline; }

.right-off-canvas-menu ul.off-canvas-list li.has-submenu > a:before {
  content: "\AB";
  margin-right: .5rem;
  display: inline; }

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

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

/* Orbit Graceful Loading */
.slideshow-wrapper {
  position: relative; }
  .slideshow-wrapper ul {
    list-style-type: none;
    margin: 0; }
    .slideshow-wrapper ul li,
    .slideshow-wrapper ul li .orbit-caption {
      display: none; }
    .slideshow-wrapper ul li:first-child {
      display: block; }
  .slideshow-wrapper .orbit-container {
    background-color: transparent; }
    .slideshow-wrapper .orbit-container li {
      display: block; }
      .slideshow-wrapper .orbit-container li .orbit-caption {
        display: block; }
    .slideshow-wrapper .orbit-container .orbit-bullets li {
      display: inline-block; }
  .slideshow-wrapper .preloader {
    border-radius: 1000px;
    animation-duration: 1.5s;
    animation-iteration-count: infinite;
    animation-name: rotate;
    animation-timing-function: linear;
    border-color: #555555 #FFFFFF;
    border: solid 3px;
    display: block;
    height: 40px;
    left: 50%;
    margin-left: -20px;
    margin-top: -20px;
    position: absolute;
    top: 50%;
    width: 40px; }

.orbit-container {
  background: none;
  overflow: hidden;
  position: relative;
  width: 100%; }
  .orbit-container .orbit-slides-container {
    list-style: none;
    margin: 0;
    padding: 0;
    position: relative;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -ms-transform: translateZ(0);
    -o-transform: translateZ(0);
    transform: translateZ(0); }
    .orbit-container .orbit-slides-container img {
      display: block;
      max-width: 100%; }
    .orbit-container .orbit-slides-container > * {
      position: absolute;
      top: 0;
      width: 100%;
      margin-left: 100%; }
      .orbit-container .orbit-slides-container > *:first-child {
        margin-left: 0; }
      .orbit-container .orbit-slides-container > * .orbit-caption {
        bottom: 0;
        position: absolute;
        background-color: rgba(51, 51, 51, 0.8);
        color: #FFFFFF;
        font-size: 0.875rem;
        padding: 0.625rem 0.875rem;
        width: 100%; }
  .orbit-container .orbit-slide-number {
    left: 10px;
    background: transparent;
    color: #FFFFFF;
    font-size: 12px;
    position: absolute;
    top: 10px;
    z-index: 10; }
    .orbit-container .orbit-slide-number span {
      font-weight: 700;
      padding: 0.3125rem; }
  .orbit-container .orbit-timer {
    position: absolute;
    top: 12px;
    right: 10px;
    height: 6px;
    width: 100px;
    z-index: 10; }
    .orbit-container .orbit-timer .orbit-progress {
      height: 3px;
      background-color: rgba(255, 255, 255, 0.3);
      display: block;
      width: 0;
      position: relative;
      right: 20px;
      top: 5px; }
    .orbit-container .orbit-timer > span {
      border: solid 4px #FFFFFF;
      border-bottom: none;
      border-top: none;
      display: none;
      height: 14px;
      position: absolute;
      top: 0;
      width: 11px;
      right: 0; }
    .orbit-container .orbit-timer.paused > span {
      top: 0;
      width: 11px;
      height: 14px;
      border: inset 8px;
      border-left-style: solid;
      border-color: transparent;
      border-left-color: #FFFFFF;
      right: -4px; }
      .orbit-container .orbit-timer.paused > span.dark {
        border-left-color: #333333; }
  .orbit-container:hover .orbit-timer > span {
    display: block; }
  .orbit-container .orbit-prev,
  .orbit-container .orbit-next {
    background-color: transparent;
    color: white;
    height: 60px;
    line-height: 50px;
    margin-top: -25px;
    position: absolute;
    text-indent: -9999px !important;
    top: 45%;
    width: 36px;
    z-index: 10; }
    .orbit-container .orbit-prev:hover,
    .orbit-container .orbit-next:hover {
      background-color: rgba(0, 0, 0, 0.3); }
    .orbit-container .orbit-prev > span,
    .orbit-container .orbit-next > span {
      border: inset 10px;
      display: block;
      height: 0;
      margin-top: -10px;
      position: absolute;
      top: 50%;
      width: 0; }
  .orbit-container .orbit-prev {
    left: 0; }
    .orbit-container .orbit-prev > span {
      border-right-style: solid;
      border-color: transparent;
      border-right-color: #FFFFFF; }
    .orbit-container .orbit-prev:hover > span {
      border-right-color: #FFFFFF; }
  .orbit-container .orbit-next {
    right: 0; }
    .orbit-container .orbit-next > span {
      border-color: transparent;
      border-left-style: solid;
      border-left-color: #FFFFFF;
      left: 50%;
      margin-left: -4px; }
    .orbit-container .orbit-next:hover > span {
      border-left-color: #FFFFFF; }

.orbit-bullets-container {
  text-align: center; }

.orbit-bullets {
  display: block;
  float: none;
  margin: 0 auto 30px auto;
  overflow: hidden;
  position: relative;
  text-align: center;
  top: 10px; }
  .orbit-bullets li {
    background: #CCCCCC;
    cursor: pointer;
    display: inline-block;
    float: none;
    height: 0.5625rem;
    margin-right: 6px;
    width: 0.5625rem;
    border-radius: 1000px; }
    .orbit-bullets li.active {
      background: #999999; }
    .orbit-bullets li:last-child {
      margin-right: 0; }

.touch .orbit-container .orbit-prev,
.touch .orbit-container .orbit-next {
  display: none; }

.touch .orbit-bullets {
  display: none; }

@media only screen and (min-width: 40.0625em) {
  .touch .orbit-container .orbit-prev,
  .touch .orbit-container .orbit-next {
    display: inherit; }
  .touch .orbit-bullets {
    display: block; } }

@media only screen and (max-width: 40em) {
  .orbit-stack-on-small .orbit-slides-container {
    height: auto !important; }
  .orbit-stack-on-small .orbit-slides-container > * {
    margin: 0  !important;
    opacity: 1 !important;
    position: relative; }
  .orbit-stack-on-small .orbit-slide-number {
    display: none; }
  .orbit-timer {
    display: none; }
  .orbit-next, .orbit-prev {
    display: none; }
  .orbit-bullets {
    display: none; } }

ul.pagination {
  display: block;
  margin-left: -0.3125rem;
  min-height: 1.5rem; }
  ul.pagination li {
    color: #222222;
    font-size: 0.875rem;
    height: 1.5rem;
    margin-left: 0.3125rem; }
    ul.pagination li a, ul.pagination li button {
      border-radius: 3px;
      transition: background-color 300ms ease-out;
      background: none;
      color: #999999;
      display: block;
      font-size: 1em;
      font-weight: normal;
      line-height: inherit;
      padding: 0.0625rem 0.625rem 0.0625rem; }
    ul.pagination li:hover a,
    ul.pagination li a:focus,
    ul.pagination li:hover button,
    ul.pagination li
button:focus {
      background: #e6e6e6; }
    ul.pagination li.unavailable a, ul.pagination li.unavailable button {
      cursor: default;
      color: #999999; }
    ul.pagination li.unavailable:hover a,
    ul.pagination li.unavailable a:focus,
    ul.pagination li.unavailable:hover button,
    ul.pagination li.unavailable button:focus {
      background: transparent; }
    ul.pagination li.current a, ul.pagination li.current button {
      background: #4a8ec2;
      color: #FFFFFF;
      cursor: default;
      font-weight: bold; }
      ul.pagination li.current a:hover,
      ul.pagination li.current a:focus, ul.pagination li.current button:hover,
      ul.pagination li.current button:focus {
        background: #4a8ec2; }
  ul.pagination li {
    display: block;
    float: left; }

/* Pagination centred wrapper */
.pagination-centered {
  text-align: center; }
  .pagination-centered ul.pagination li {
    display: inline-block;
    float: none; }

/* Panels */
.panel {
  border-style: solid;
  border-width: 1px;
  border-color: #d8d8d8;
  margin-bottom: 1.25rem;
  padding: 1.25rem;
  background: #f2f2f2;
  color: #333333; }
  .panel > :first-child {
    margin-top: 0; }
  .panel > :last-child {
    margin-bottom: 0; }
  .panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel h6, .panel p, .panel li, .panel dl {
    color: #333333; }
  .panel h1, .panel h2, .panel h3, .panel h4, .panel h5, .panel h6 {
    line-height: 1;
    margin-bottom: 0.625rem; }
    .panel h1.subheader, .panel h2.subheader, .panel h3.subheader, .panel h4.subheader, .panel h5.subheader, .panel h6.subheader {
      line-height: 1.4; }
  .panel.callout {
    border-style: solid;
    border-width: 1px;
    border-color: #d8d8d8;
    margin-bottom: 1.25rem;
    padding: 1.25rem;
    background: #f4f8fb;
    color: #333333; }
    .panel.callout > :first-child {
      margin-top: 0; }
    .panel.callout > :last-child {
      margin-bottom: 0; }
    .panel.callout h1, .panel.callout h2, .panel.callout h3, .panel.callout h4, .panel.callout h5, .panel.callout h6, .panel.callout p, .panel.callout li, .panel.callout dl {
      color: #333333; }
    .panel.callout h1, .panel.callout h2, .panel.callout h3, .panel.callout h4, .panel.callout h5, .panel.callout h6 {
      line-height: 1;
      margin-bottom: 0.625rem; }
      .panel.callout h1.subheader, .panel.callout h2.subheader, .panel.callout h3.subheader, .panel.callout h4.subheader, .panel.callout h5.subheader, .panel.callout h6.subheader {
        line-height: 1.4; }
    .panel.callout a:not(.button) {
      color: #4a8ec2; }
      .panel.callout a:not(.button):hover,
      .panel.callout a:not(.button):focus {
        color: #3a7bac; }
  .panel.radius {
    border-radius: 3px; }

/* Pricing Tables */
.pricing-table {
  border: solid 1px #DDDDDD;
  margin-left: 0;
  margin-bottom: 1.25rem; }
  .pricing-table * {
    list-style: none;
    line-height: 1; }
  .pricing-table .title {
    background-color: #333333;
    color: #EEEEEE;
    font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-size: 1rem;
    font-weight: normal;
    padding: 0.9375rem 1.25rem;
    text-align: center; }
  .pricing-table .price {
    background-color: #F6F6F6;
    color: #333333;
    font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-size: 2rem;
    font-weight: normal;
    padding: 0.9375rem 1.25rem;
    text-align: center; }
  .pricing-table .description {
    background-color: #FFFFFF;
    border-bottom: dotted 1px #DDDDDD;
    color: #777777;
    font-size: 0.75rem;
    font-weight: normal;
    line-height: 1.4;
    padding: 0.9375rem;
    text-align: center; }
  .pricing-table .bullet-item {
    background-color: #FFFFFF;
    border-bottom: dotted 1px #DDDDDD;
    color: #333333;
    font-size: 0.875rem;
    font-weight: normal;
    padding: 0.9375rem;
    text-align: center; }
  .pricing-table .cta-button {
    background-color: #FFFFFF;
    padding: 1.25rem 1.25rem 0;
    text-align: center; }

/* Progress Bar */
.progress {
  background-color: #F6F6F6;
  border: 1px solid white;
  height: 1.5625rem;
  margin-bottom: 0.625rem;
  padding: 0.125rem; }
  .progress .meter {
    background: #4a8ec2;
    display: block;
    height: 100%; }
  .progress.secondary .meter {
    background: #e7e7e7;
    display: block;
    height: 100%; }
  .progress.success .meter {
    background: #43AC6A;
    display: block;
    height: 100%; }
  .progress.alert .meter {
    background: #f04124;
    display: block;
    height: 100%; }
  .progress.radius {
    border-radius: 3px; }
    .progress.radius .meter {
      border-radius: 2px; }
  .progress.round {
    border-radius: 1000px; }
    .progress.round .meter {
      border-radius: 999px; }

.reveal-modal-bg {
  background: #000000;
  background: rgba(0, 0, 0, 0.45);
  bottom: 0;
  display: none;
  left: 0;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 1004;
  left: 0; }

.reveal-modal {
  border-radius: 3px;
  display: none;
  position: absolute;
  top: 0;
  visibility: hidden;
  width: 100%;
  z-index: 1005;
  left: 0;
  background-color: #FFFFFF;
  padding: 1.875rem;
  border: solid 1px #666666;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4); }
  @media only screen and (max-width: 40em) {
    .reveal-modal {
      min-height: 100vh; } }
  .reveal-modal .column, .reveal-modal .columns {
    min-width: 0; }
  .reveal-modal > :first-child {
    margin-top: 0; }
  .reveal-modal > :last-child {
    margin-bottom: 0; }
  @media only screen and (min-width: 40.0625em) {
    .reveal-modal {
      left: 0;
      margin: 0 auto;
      max-width: 84%;
      right: 0;
      width: 80%; } }
  @media only screen and (min-width: 40.0625em) {
    .reveal-modal {
      top: 6.25rem; } }
  .reveal-modal.radius {
    border-radius: 3px; }
  .reveal-modal.round {
    border-radius: 1000px; }
  .reveal-modal.collapse {
    padding: 0; }
  @media only screen and (min-width: 40.0625em) {
    .reveal-modal.tiny, #wishlist-view-form button.reveal-modal, .cart form fieldset #shopping-cart-table tfoot button.reveal-modal, .footer-container .block-subscribe .actions button.reveal-modal, .header-container .header .quick-access .form-search button.reveal-modal, .top-cart .reveal-modal.btn-cart,
    .top-cart .reveal-modal.btn-checkout {
      left: 0;
      margin: 0 auto;
      max-width: 84%;
      right: 0;
      width: 30%; } }
  @media only screen and (min-width: 40.0625em) {
    .reveal-modal.small, .products-list .reveal-modal.btn-cart,
    .products-grid .reveal-modal.btn-cart {
      left: 0;
      margin: 0 auto;
      max-width: 84%;
      right: 0;
      width: 40%; } }
  @media only screen and (min-width: 40.0625em) {
    .reveal-modal.medium {
      left: 0;
      margin: 0 auto;
      max-width: 84%;
      right: 0;
      width: 60%; } }
  @media only screen and (min-width: 40.0625em) {
    .reveal-modal.large {
      left: 0;
      margin: 0 auto;
      max-width: 84%;
      right: 0;
      width: 70%; } }
  @media only screen and (min-width: 40.0625em) {
    .reveal-modal.xlarge {
      left: 0;
      margin: 0 auto;
      max-width: 84%;
      right: 0;
      width: 95%; } }
  .reveal-modal.full {
    height: 100vh;
    height: 100%;
    left: 0;
    margin-left: 0 !important;
    max-width: none !important;
    min-height: 100vh;
    top: 0; }
    @media only screen and (min-width: 40.0625em) {
      .reveal-modal.full {
        left: 0;
        margin: 0 auto;
        max-width: 84%;
        right: 0;
        width: 100%; } }
  .reveal-modal.toback {
    z-index: 1003; }
  .reveal-modal .close-reveal-modal {
    color: #AAAAAA;
    cursor: pointer;
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1;
    position: absolute;
    top: 0.625rem;
    right: 1.375rem; }

.side-nav {
  display: block;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  list-style-position: outside;
  list-style-type: none;
  margin: 0;
  padding: 0.875rem 0; }
  .side-nav li {
    font-size: 0.875rem;
    font-weight: normal;
    margin: 0 0 0.4375rem 0; }
    .side-nav li a:not(.button) {
      color: #4a8ec2;
      display: block;
      margin: 0;
      padding: 0.4375rem 0.875rem; }
      .side-nav li a:not(.button):hover,
      .side-nav li a:not(.button):focus {
        background: rgba(0, 0, 0, 0.025);
        color: #80b0d4; }
      .side-nav li a:not(.button):active {
        color: #80b0d4; }
    .side-nav li.active > a:first-child:not(.button) {
      color: #80b0d4;
      font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-weight: normal; }
    .side-nav li.divider {
      border-top: 1px solid;
      height: 0;
      list-style: none;
      padding: 0;
      border-top-color: #e6e6e6; }
    .side-nav li.heading {
      color: #4a8ec2;
      font-size: 0.875rem;
      font-weight: bold;
      text-transform: uppercase; }

.sub-nav {
  display: block;
  margin: -0.25rem 0 1.125rem;
  overflow: hidden;
  padding-top: 0.25rem;
  width: auto; }
  .sub-nav dt {
    text-transform: uppercase; }
  .sub-nav dt,
  .sub-nav dd,
  .sub-nav li {
    color: #999999;
    float: left;
    font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
    font-size: 0.875rem;
    font-weight: normal;
    margin-left: 1rem;
    margin-bottom: 0; }
    .sub-nav dt a,
    .sub-nav dd a,
    .sub-nav li a {
      color: #999999;
      padding: 0.1875rem 1rem;
      text-decoration: none; }
      .sub-nav dt a:hover,
      .sub-nav dd a:hover,
      .sub-nav li a:hover {
        color: #737373; }
    .sub-nav dt.active a,
    .sub-nav dd.active a,
    .sub-nav li.active a {
      border-radius: 3px;
      background: #4a8ec2;
      color: #FFFFFF;
      cursor: default;
      font-weight: normal;
      padding: 0.1875rem 1rem; }
      .sub-nav dt.active a:hover,
      .sub-nav dd.active a:hover,
      .sub-nav li.active a:hover {
        background: #3a7bac; }

table {
  background: #FFFFFF;
  border: solid 1px #DDDDDD;
  margin-bottom: 1.25rem;
  table-layout: auto; }
  table caption {
    background: transparent;
    color: #222222;
    font-size: 1rem;
    font-weight: bold; }
  table thead {
    background: #F5F5F5; }
    table thead tr th,
    table thead tr td {
      color: #222222;
      font-size: 0.875rem;
      font-weight: bold;
      padding: 0.5rem 0.625rem 0.625rem; }
  table tfoot {
    background: #F5F5F5; }
    table tfoot tr th,
    table tfoot tr td {
      color: #222222;
      font-size: 0.875rem;
      font-weight: bold;
      padding: 0.5rem 0.625rem 0.625rem; }
  table tr th,
  table tr td {
    color: #222222;
    font-size: 0.875rem;
    padding: 0.5625rem 0.625rem;
    text-align: left; }
  table tr.even,
  table tr.alt,
  table tr:nth-of-type(even) {
    background: #F9F9F9; }
  table thead tr th,
  table tfoot tr th,
  table tfoot tr td,
  table tbody tr th,
  table tbody tr td,
  table tr td {
    display: table-cell;
    line-height: 1.125rem; }

.tabs {
  margin-bottom: 0 !important;
  margin-left: 0; }
  .tabs:before, .tabs:after {
    content: " ";
    display: table; }
  .tabs:after {
    clear: both; }
  .tabs dd,
  .tabs .tab-title {
    float: left;
    list-style: none;
    margin-bottom: 0 !important;
    position: relative; }
    .tabs dd > a,
    .tabs .tab-title > a {
      display: block;
      background-color: #F9F9F9;
      color: #222222;
      font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-size: 1rem;
      padding: 1rem 2rem; }
      .tabs dd > a:hover,
      .tabs .tab-title > a:hover {
        background-color: #eaeaea; }
    .tabs dd.active a,
    .tabs .tab-title.active a {
      background-color: #EFEFEF;
      color: #222222; }
  .tabs.radius dd:first-child a,
  .tabs.radius .tab:first-child a {
    -webkit-border-bottom-left-radius: 3px;
    -webkit-border-top-left-radius: 3px;
    border-bottom-left-radius: 3px;
    border-top-left-radius: 3px; }
  .tabs.radius dd:last-child a,
  .tabs.radius .tab:last-child a {
    -webkit-border-bottom-right-radius: 3px;
    -webkit-border-top-right-radius: 3px;
    border-bottom-right-radius: 3px;
    border-top-right-radius: 3px; }
  .tabs.vertical dd,
  .tabs.vertical .tab-title {
    position: inherit;
    float: none;
    display: block;
    top: auto; }

.tabs-content {
  margin-bottom: 1.5rem;
  width: 100%; }
  .tabs-content:before, .tabs-content:after {
    content: " ";
    display: table; }
  .tabs-content:after {
    clear: both; }
  .tabs-content > .content {
    display: none;
    float: left;
    padding: 0.9375rem 0;
    width: 100%; }
    .tabs-content > .content.active {
      display: block;
      float: none; }
    .tabs-content > .content.contained {
      padding: 0.9375rem; }
  .tabs-content.vertical {
    display: block; }
    .tabs-content.vertical > .content {
      padding: 0 0.9375rem; }

@media only screen and (min-width: 40.0625em) {
  .tabs.vertical {
    float: left;
    margin: 0;
    margin-bottom: 1.25rem !important;
    max-width: 20%;
    width: 20%; }
  .tabs-content.vertical {
    float: left;
    margin-left: -1px;
    max-width: 80%;
    padding-left: 1rem;
    width: 80%; } }

.no-js .tabs-content > .content {
  display: block;
  float: none; }

/* Image Thumbnails */
.th {
  border: none 4px #FFFFFF;
  box-shadow: none;
  display: inline-block;
  line-height: 0;
  max-width: 100%;
  transition: all 200ms ease-out; }
  .th:hover,
  .th:focus {
    box-shadow: 0 0 6px 1px rgba(74, 142, 194, 0.5); }
  .th.radius {
    border-radius: 3px; }

/* Tooltips */
.has-tip {
  border-bottom: dotted 1px #CCCCCC;
  color: #333333;
  cursor: help;
  font-weight: bold; }
  .has-tip:hover,
  .has-tip:focus {
    border-bottom: dotted 1px #1e405a;
    color: #4a8ec2; }
  .has-tip.tip-left,
  .has-tip.tip-right {
    float: none !important; }

.tooltip {
  background: #333333;
  color: #FFFFFF;
  display: none;
  font-size: 0.875rem;
  font-weight: normal;
  line-height: 1.3;
  max-width: 300px;
  padding: 0.75rem;
  position: absolute;
  width: 100%;
  z-index: 1006;
  left: 50%; }
  .tooltip > .nub {
    border-color: transparent transparent #333333 transparent;
    border: solid 5px;
    display: block;
    height: 0;
    pointer-events: none;
    position: absolute;
    top: -10px;
    width: 0;
    left: 5px; }
    .tooltip > .nub.rtl {
      left: auto;
      right: 5px; }
  .tooltip.radius {
    border-radius: 3px; }
  .tooltip.round {
    border-radius: 1000px; }
    .tooltip.round > .nub {
      left: 2rem; }
  .tooltip.opened {
    border-bottom: dotted 1px #1e405a !important;
    color: #4a8ec2 !important; }

.tap-to-close {
  color: #777777;
  display: block;
  font-size: 0.625rem;
  font-weight: normal; }

@media only screen and (min-width: 40.0625em) {
  .tooltip > .nub {
    border-color: transparent transparent #333333 transparent;
    top: -10px; }
  .tooltip.tip-top > .nub {
    border-color: #333333 transparent transparent transparent;
    bottom: -10px;
    top: auto; }
  .tooltip.tip-left,
  .tooltip.tip-right {
    float: none !important; }
  .tooltip.tip-left > .nub {
    border-color: transparent transparent transparent #333333;
    left: auto;
    margin-top: -5px;
    right: -10px;
    top: 50%; }
  .tooltip.tip-right > .nub {
    border-color: transparent #333333 transparent transparent;
    left: -10px;
    margin-top: -5px;
    right: auto;
    top: 50%; } }

meta.foundation-mq-topbar {
  font-family: "/only screen and (min-width:40.0625em)/";
  width: 40.0625em; }

/* Wrapped around .top-bar to contain to grid width */
.contain-to-grid {
  width: 100%;
  background: #F9F9F9; }
  .contain-to-grid .top-bar {
    margin-bottom: 0; }

.fixed {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 99;
  left: 0; }
  .fixed.expanded:not(.top-bar) {
    height: auto;
    max-height: 100%;
    overflow-y: auto;
    width: 100%; }
    .fixed.expanded:not(.top-bar) .title-area {
      position: fixed;
      width: 100%;
      z-index: 99; }
    .fixed.expanded:not(.top-bar) .top-bar-section {
      margin-top: 2.8125rem;
      z-index: 98; }

.top-bar {
  background: #F9F9F9;
  height: 2.8125rem;
  line-height: 2.8125rem;
  margin-bottom: 0;
  overflow: hidden;
  position: relative; }
  .top-bar ul {
    list-style: none;
    margin-bottom: 0; }
  .top-bar .row {
    max-width: none; }
  .top-bar form,
  .top-bar input,
  .top-bar select {
    margin-bottom: 0; }
  .top-bar input,
  .top-bar select {
    font-size: 0.75rem;
    height: 1.75rem;
    padding-bottom: .35rem;
    padding-top: .35rem; }
  .top-bar .button, .top-bar .top-cart .btn-cart, .top-cart .top-bar .btn-cart,
  .top-bar .top-cart .btn-checkout, .top-cart .top-bar .btn-checkout, .top-bar button {
    font-size: 0.75rem;
    margin-bottom: 0;
    padding-bottom: 0.4125rem;
    padding-top: 0.4125rem; }
    @media only screen and (max-width: 40em) {
      .top-bar .button, .top-bar .top-cart .btn-cart, .top-cart .top-bar .btn-cart,
      .top-bar .top-cart .btn-checkout, .top-cart .top-bar .btn-checkout, .top-bar button {
        position: relative;
        top: -1px; } }
  .top-bar .title-area {
    margin: 0;
    position: relative; }
  .top-bar .name {
    font-size: 16px;
    height: 2.8125rem;
    margin: 0; }
    .top-bar .name h1, .top-bar .name h2, .top-bar .name h3, .top-bar .name h4, .top-bar .name p, .top-bar .name span {
      font-size: 1.0625rem;
      line-height: 2.8125rem;
      margin: 0; }
      .top-bar .name h1 a, .top-bar .name h2 a, .top-bar .name h3 a, .top-bar .name h4 a, .top-bar .name p a, .top-bar .name span a {
        color: #333333;
        display: block;
        font-weight: normal;
        padding: 0 0.9375rem;
        width: 75%; }
  .top-bar .toggle-topbar {
    position: absolute;
    right: 0;
    top: 0; }
    .top-bar .toggle-topbar a {
      color: #333333;
      display: block;
      font-size: 0.8125rem;
      font-weight: bold;
      height: 2.8125rem;
      line-height: 2.8125rem;
      padding: 0 0.9375rem;
      position: relative;
      text-transform: uppercase; }
    .top-bar .toggle-topbar.menu-icon {
      margin-top: -16px;
      top: 50%; }
      .top-bar .toggle-topbar.menu-icon a {
        color: #333333;
        height: 34px;
        line-height: 33px;
        padding: 0 2.5rem 0 0.9375rem;
        position: relative; }
        .top-bar .toggle-topbar.menu-icon a span::after {
          content: "";
          display: block;
          height: 0;
          position: absolute;
          margin-top: -8px;
          top: 50%;
          right: 0.9375rem;
          box-shadow: 0 0 0 1px #333333, 0 7px 0 1px #333333, 0 14px 0 1px #333333;
          width: 16px; }
        .top-bar .toggle-topbar.menu-icon a span:hover:after {
          box-shadow: 0 0 0 1px "", 0 7px 0 1px "", 0 14px 0 1px ""; }
  .top-bar.expanded {
    background: transparent;
    height: auto; }
    .top-bar.expanded .title-area {
      background: #F9F9F9; }
    .top-bar.expanded .toggle-topbar a {
      color: #888888; }
      .top-bar.expanded .toggle-topbar a span::after {
        box-shadow: 0 0 0 1px #888888, 0 7px 0 1px #888888, 0 14px 0 1px #888888; }
    @media screen and (-webkit-min-device-pixel-ratio: 0) {
      .top-bar.expanded .top-bar-section .has-dropdown.moved > .dropdown,
      .top-bar.expanded .top-bar-section .dropdown {
        clip: initial; }
      .top-bar.expanded .top-bar-section .has-dropdown:not(.moved) > ul {
        padding: 0; } }

.top-bar-section {
  left: 0;
  position: relative;
  width: auto;
  transition: left 300ms ease-out; }
  .top-bar-section ul {
    display: block;
    font-size: 16px;
    height: auto;
    margin: 0;
    padding: 0;
    width: 100%; }
  .top-bar-section .divider,
  .top-bar-section [role="separator"] {
    border-top: solid 1px #7d7d7d;
    clear: both;
    height: 1px;
    width: 100%; }
  .top-bar-section ul li {
    background: #F9F9F9; }
    .top-bar-section ul li > a {
      color: #333333;
      display: block;
      font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
      font-size: 0.8125rem;
      font-weight: bold;
      padding-left: 0.9375rem;
      padding: 12px 0 12px 0.9375rem;
      text-transform: none;
      width: 100%; }
      .top-bar-section ul li > a.button, .top-bar-section ul .top-cart li > a.btn-cart, .top-cart .top-bar-section ul li > a.btn-cart,
      .top-bar-section ul .top-cart li > a.btn-checkout, .top-cart .top-bar-section ul li > a.btn-checkout {
        font-size: 0.8125rem;
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        background-color: #4a8ec2;
        border-color: #3672a0;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button:hover,
        .top-bar-section ul .top-cart li > a.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.btn-checkout:hover, .top-bar-section ul li > a.button:focus, .top-bar-section ul .top-cart li > a.btn-cart:focus, .top-cart .top-bar-section ul li > a.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.btn-checkout:focus, .top-cart .top-bar-section ul li > a.btn-checkout:focus {
          background-color: #3672a0; }
        .top-bar-section ul li > a.button:hover,
        .top-bar-section ul .top-cart li > a.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.btn-checkout:hover, .top-bar-section ul li > a.button:focus, .top-bar-section ul .top-cart li > a.btn-cart:focus, .top-cart .top-bar-section ul li > a.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.btn-checkout:focus, .top-cart .top-bar-section ul li > a.btn-checkout:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.secondary, .top-bar-section ul .top-cart li > a.secondary.btn-cart, .top-cart .top-bar-section ul li > a.secondary.btn-cart,
      .top-bar-section ul .top-cart li > a.secondary.btn-checkout, .top-cart .top-bar-section ul li > a.secondary.btn-checkout {
        background-color: #e7e7e7;
        border-color: #b9b9b9;
        color: #333333; }
        .top-bar-section ul li > a.button.secondary:hover,
        .top-bar-section ul .top-cart li > a.secondary.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.secondary.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.secondary.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.secondary.btn-checkout:hover, .top-bar-section ul li > a.button.secondary:focus, .top-bar-section ul .top-cart li > a.secondary.btn-cart:focus, .top-cart .top-bar-section ul li > a.secondary.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.secondary.btn-checkout:focus, .top-cart .top-bar-section ul li > a.secondary.btn-checkout:focus {
          background-color: #b9b9b9; }
        .top-bar-section ul li > a.button.secondary:hover,
        .top-bar-section ul .top-cart li > a.secondary.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.secondary.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.secondary.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.secondary.btn-checkout:hover, .top-bar-section ul li > a.button.secondary:focus, .top-bar-section ul .top-cart li > a.secondary.btn-cart:focus, .top-cart .top-bar-section ul li > a.secondary.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.secondary.btn-checkout:focus, .top-cart .top-bar-section ul li > a.secondary.btn-checkout:focus {
          color: #333333; }
      .top-bar-section ul li > a.button.success, .top-bar-section ul .top-cart li > a.success.btn-cart, .top-cart .top-bar-section ul li > a.success.btn-cart,
      .top-bar-section ul .top-cart li > a.success.btn-checkout, .top-cart .top-bar-section ul li > a.success.btn-checkout {
        background-color: #43AC6A;
        border-color: #368a55;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.success:hover,
        .top-bar-section ul .top-cart li > a.success.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.success.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.success.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.success.btn-checkout:hover, .top-bar-section ul li > a.button.success:focus, .top-bar-section ul .top-cart li > a.success.btn-cart:focus, .top-cart .top-bar-section ul li > a.success.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.success.btn-checkout:focus, .top-cart .top-bar-section ul li > a.success.btn-checkout:focus {
          background-color: #368a55; }
        .top-bar-section ul li > a.button.success:hover,
        .top-bar-section ul .top-cart li > a.success.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.success.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.success.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.success.btn-checkout:hover, .top-bar-section ul li > a.button.success:focus, .top-bar-section ul .top-cart li > a.success.btn-cart:focus, .top-cart .top-bar-section ul li > a.success.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.success.btn-checkout:focus, .top-cart .top-bar-section ul li > a.success.btn-checkout:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.alert, .top-bar-section ul .top-cart li > a.alert.btn-cart, .top-cart .top-bar-section ul li > a.alert.btn-cart,
      .top-bar-section ul .top-cart li > a.alert.btn-checkout, .top-cart .top-bar-section ul li > a.alert.btn-checkout {
        background-color: #f04124;
        border-color: #cf2a0e;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.alert:hover,
        .top-bar-section ul .top-cart li > a.alert.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.alert.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.alert.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.alert.btn-checkout:hover, .top-bar-section ul li > a.button.alert:focus, .top-bar-section ul .top-cart li > a.alert.btn-cart:focus, .top-cart .top-bar-section ul li > a.alert.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.alert.btn-checkout:focus, .top-cart .top-bar-section ul li > a.alert.btn-checkout:focus {
          background-color: #cf2a0e; }
        .top-bar-section ul li > a.button.alert:hover,
        .top-bar-section ul .top-cart li > a.alert.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.alert.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.alert.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.alert.btn-checkout:hover, .top-bar-section ul li > a.button.alert:focus, .top-bar-section ul .top-cart li > a.alert.btn-cart:focus, .top-cart .top-bar-section ul li > a.alert.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.alert.btn-checkout:focus, .top-cart .top-bar-section ul li > a.alert.btn-checkout:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.warning, .top-bar-section ul .top-cart li > a.warning.btn-cart, .top-cart .top-bar-section ul li > a.warning.btn-cart,
      .top-bar-section ul .top-cart li > a.warning.btn-checkout, .top-cart .top-bar-section ul li > a.warning.btn-checkout {
        background-color: #f08a24;
        border-color: #cf6e0e;
        color: #FFFFFF; }
        .top-bar-section ul li > a.button.warning:hover,
        .top-bar-section ul .top-cart li > a.warning.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.warning.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.warning.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.warning.btn-checkout:hover, .top-bar-section ul li > a.button.warning:focus, .top-bar-section ul .top-cart li > a.warning.btn-cart:focus, .top-cart .top-bar-section ul li > a.warning.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.warning.btn-checkout:focus, .top-cart .top-bar-section ul li > a.warning.btn-checkout:focus {
          background-color: #cf6e0e; }
        .top-bar-section ul li > a.button.warning:hover,
        .top-bar-section ul .top-cart li > a.warning.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.warning.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.warning.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.warning.btn-checkout:hover, .top-bar-section ul li > a.button.warning:focus, .top-bar-section ul .top-cart li > a.warning.btn-cart:focus, .top-cart .top-bar-section ul li > a.warning.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.warning.btn-checkout:focus, .top-cart .top-bar-section ul li > a.warning.btn-checkout:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > a.button.info, .top-bar-section ul .top-cart li > a.info.btn-cart, .top-cart .top-bar-section ul li > a.info.btn-cart,
      .top-bar-section ul .top-cart li > a.info.btn-checkout, .top-cart .top-bar-section ul li > a.info.btn-checkout {
        background-color: #a0d3e8;
        border-color: #61b6d9;
        color: #333333; }
        .top-bar-section ul li > a.button.info:hover,
        .top-bar-section ul .top-cart li > a.info.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.info.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.info.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.info.btn-checkout:hover, .top-bar-section ul li > a.button.info:focus, .top-bar-section ul .top-cart li > a.info.btn-cart:focus, .top-cart .top-bar-section ul li > a.info.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.info.btn-checkout:focus, .top-cart .top-bar-section ul li > a.info.btn-checkout:focus {
          background-color: #61b6d9; }
        .top-bar-section ul li > a.button.info:hover,
        .top-bar-section ul .top-cart li > a.info.btn-cart:hover,
        .top-cart .top-bar-section ul li > a.info.btn-cart:hover,
        .top-bar-section ul .top-cart li > a.info.btn-checkout:hover,
        .top-cart .top-bar-section ul li > a.info.btn-checkout:hover, .top-bar-section ul li > a.button.info:focus, .top-bar-section ul .top-cart li > a.info.btn-cart:focus, .top-cart .top-bar-section ul li > a.info.btn-cart:focus,
        .top-bar-section ul .top-cart li > a.info.btn-checkout:focus, .top-cart .top-bar-section ul li > a.info.btn-checkout:focus {
          color: #FFFFFF; }
    .top-bar-section ul li > button {
      font-size: 0.8125rem;
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      background-color: #4a8ec2;
      border-color: #3672a0;
      color: #FFFFFF; }
      .top-bar-section ul li > button:hover,
      .top-bar-section ul li > button:focus {
        background-color: #3672a0; }
      .top-bar-section ul li > button:hover,
      .top-bar-section ul li > button:focus {
        color: #FFFFFF; }
      .top-bar-section ul li > button.secondary {
        background-color: #e7e7e7;
        border-color: #b9b9b9;
        color: #333333; }
        .top-bar-section ul li > button.secondary:hover,
        .top-bar-section ul li > button.secondary:focus {
          background-color: #b9b9b9; }
        .top-bar-section ul li > button.secondary:hover,
        .top-bar-section ul li > button.secondary:focus {
          color: #333333; }
      .top-bar-section ul li > button.success {
        background-color: #43AC6A;
        border-color: #368a55;
        color: #FFFFFF; }
        .top-bar-section ul li > button.success:hover,
        .top-bar-section ul li > button.success:focus {
          background-color: #368a55; }
        .top-bar-section ul li > button.success:hover,
        .top-bar-section ul li > button.success:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.alert {
        background-color: #f04124;
        border-color: #cf2a0e;
        color: #FFFFFF; }
        .top-bar-section ul li > button.alert:hover,
        .top-bar-section ul li > button.alert:focus {
          background-color: #cf2a0e; }
        .top-bar-section ul li > button.alert:hover,
        .top-bar-section ul li > button.alert:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.warning {
        background-color: #f08a24;
        border-color: #cf6e0e;
        color: #FFFFFF; }
        .top-bar-section ul li > button.warning:hover,
        .top-bar-section ul li > button.warning:focus {
          background-color: #cf6e0e; }
        .top-bar-section ul li > button.warning:hover,
        .top-bar-section ul li > button.warning:focus {
          color: #FFFFFF; }
      .top-bar-section ul li > button.info {
        background-color: #a0d3e8;
        border-color: #61b6d9;
        color: #333333; }
        .top-bar-section ul li > button.info:hover,
        .top-bar-section ul li > button.info:focus {
          background-color: #61b6d9; }
        .top-bar-section ul li > button.info:hover,
        .top-bar-section ul li > button.info:focus {
          color: #FFFFFF; }
    .top-bar-section ul li:hover:not(.has-form) > a {
      background-color: #555555;
      color: #333333;
      background: #F9F9F9; }
    .top-bar-section ul li.active > a {
      background: #F9F9F9;
      color: #333333; }
      .top-bar-section ul li.active > a:hover {
        background: #F9F9F9;
        color: #333333; }
  .top-bar-section .has-form {
    padding: 0.9375rem; }
  .top-bar-section .has-dropdown {
    position: relative; }
    .top-bar-section .has-dropdown > a:after {
      border: inset 5px;
      content: "";
      display: block;
      height: 0;
      width: 0;
      border-color: transparent transparent transparent rgba(255, 255, 255, 0.4);
      border-left-style: solid;
      margin-right: 0.9375rem;
      margin-top: -4.5px;
      position: absolute;
      top: 50%;
      right: 0; }
    .top-bar-section .has-dropdown.moved {
      position: static; }
      .top-bar-section .has-dropdown.moved > .dropdown {
        position: static !important;
        height: auto;
        width: auto;
        overflow: visible;
        clip: auto;
        display: block;
        position: absolute !important;
        width: 100%; }
      .top-bar-section .has-dropdown.moved > a:after {
        display: none; }
  .top-bar-section .dropdown {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px;
    display: block;
    padding: 0;
    position: absolute;
    top: 0;
    z-index: 99;
    left: 100%; }
    .top-bar-section .dropdown li {
      height: auto;
      width: 100%; }
      .top-bar-section .dropdown li a {
        font-weight: normal;
        padding: 8px 0.9375rem; }
        .top-bar-section .dropdown li a.parent-link {
          font-weight: bold; }
      .top-bar-section .dropdown li.title h5,
      .top-bar-section .dropdown li.parent-link {
        margin-bottom: 0;
        margin-top: 0;
        font-size: 1.125rem; }
        .top-bar-section .dropdown li.title h5 a,
        .top-bar-section .dropdown li.parent-link a {
          color: #333333;
          display: block; }
          .top-bar-section .dropdown li.title h5 a:hover,
          .top-bar-section .dropdown li.parent-link a:hover {
            background: none; }
      .top-bar-section .dropdown li.has-form {
        padding: 8px 0.9375rem; }
      .top-bar-section .dropdown li .button,
      .top-bar-section .dropdown li .top-cart .btn-cart,
      .top-cart .top-bar-section .dropdown li .btn-cart,
      .top-bar-section .dropdown li .top-cart .btn-checkout,
      .top-cart .top-bar-section .dropdown li .btn-checkout, .top-bar-section .dropdown li button {
        top: auto; }
    .top-bar-section .dropdown label {
      color: #777777;
      font-size: 0.625rem;
      font-weight: bold;
      margin-bottom: 0;
      padding: 8px 0.9375rem 2px;
      text-transform: uppercase; }

.js-generated {
  display: block; }

@media only screen and (min-width: 40.0625em) {
  .top-bar {
    background: #F9F9F9;
    overflow: visible; }
    .top-bar:before, .top-bar:after {
      content: " ";
      display: table; }
    .top-bar:after {
      clear: both; }
    .top-bar .toggle-topbar {
      display: none; }
    .top-bar .title-area {
      float: left; }
    .top-bar .name h1 a,
    .top-bar .name h2 a,
    .top-bar .name h3 a,
    .top-bar .name h4 a,
    .top-bar .name h5 a,
    .top-bar .name h6 a {
      width: auto; }
    .top-bar input,
    .top-bar select,
    .top-bar .button,
    .top-bar .top-cart .btn-cart,
    .top-cart .top-bar .btn-cart,
    .top-bar .top-cart .btn-checkout,
    .top-cart .top-bar .btn-checkout, .top-bar button {
      font-size: 0.875rem;
      height: 1.75rem;
      position: relative;
      top: 0.53125rem; }
    .top-bar.expanded {
      background: #F9F9F9; }
  .contain-to-grid .top-bar {
    margin-bottom: 0;
    margin: 0 auto;
    max-width: 84%; }
  .top-bar-section {
    transition: none 0 0;
    left: 0 !important; }
    .top-bar-section ul {
      display: inline;
      height: auto !important;
      width: auto; }
      .top-bar-section ul li {
        float: left; }
        .top-bar-section ul li .js-generated {
          display: none; }
    .top-bar-section li.hover > a:not(.button) {
      background-color: #555555;
      background: #F9F9F9;
      color: #333333; }
    .top-bar-section li:not(.has-form) a:not(.button) {
      background: #F9F9F9;
      line-height: 2.8125rem;
      padding: 0 0.9375rem; }
      .top-bar-section li:not(.has-form) a:not(.button):hover {
        background-color: #555555;
        background: #F9F9F9; }
    .top-bar-section li.active:not(.has-form) a:not(.button) {
      background: #F9F9F9;
      color: #333333;
      line-height: 2.8125rem;
      padding: 0 0.9375rem; }
      .top-bar-section li.active:not(.has-form) a:not(.button):hover {
        background: #F9F9F9;
        color: #333333; }
    .top-bar-section .has-dropdown > a {
      padding-right: 2.1875rem !important; }
      .top-bar-section .has-dropdown > a:after {
        border: inset 5px;
        content: "";
        display: block;
        height: 0;
        width: 0;
        border-color: rgba(255, 255, 255, 0.4) transparent transparent transparent;
        border-top-style: solid;
        margin-top: -2.5px;
        top: 1.40625rem; }
    .top-bar-section .has-dropdown.moved {
      position: relative; }
      .top-bar-section .has-dropdown.moved > .dropdown {
        clip: rect(1px, 1px, 1px, 1px);
        height: 1px;
        overflow: hidden;
        position: absolute !important;
        width: 1px;
        display: block; }
    .top-bar-section .has-dropdown.hover > .dropdown, .top-bar-section .has-dropdown.not-click:hover > .dropdown {
      position: static !important;
      height: auto;
      width: auto;
      overflow: visible;
      clip: auto;
      display: block;
      position: absolute !important; }
    .top-bar-section .has-dropdown > a:focus + .dropdown {
      position: static !important;
      height: auto;
      width: auto;
      overflow: visible;
      clip: auto;
      display: block;
      position: absolute !important; }
    .top-bar-section .has-dropdown .dropdown li.has-dropdown > a:after {
      border: none;
      content: "\00bb";
      top: 0.1875rem;
      right: 5px; }
    .top-bar-section .dropdown {
      left: 0;
      background: transparent;
      min-width: 100%;
      top: auto; }
      .top-bar-section .dropdown li a {
        background: #F9F9F9;
        color: #888888;
        line-height: 2.8125rem;
        padding: 12px 0.9375rem;
        white-space: nowrap; }
      .top-bar-section .dropdown li:not(.has-form):not(.active) > a:not(.button) {
        background: #F9F9F9;
        color: #888888; }
      .top-bar-section .dropdown li:not(.has-form):not(.active):hover > a:not(.button) {
        background-color: #555555;
        color: #333333;
        background: #F9F9F9; }
      .top-bar-section .dropdown li label {
        background: #333333;
        white-space: nowrap; }
      .top-bar-section .dropdown li .dropdown {
        left: 100%;
        top: 0; }
    .top-bar-section > ul > .divider,
    .top-bar-section > ul > [role="separator"] {
      border-right: solid 1px #fafafa;
      border-bottom: none;
      border-top: none;
      clear: none;
      height: 2.8125rem;
      width: 0; }
    .top-bar-section .has-form {
      background: #F9F9F9;
      height: 2.8125rem;
      padding: 0 0.9375rem; }
    .top-bar-section .right li .dropdown {
      left: auto;
      right: 0; }
      .top-bar-section .right li .dropdown li .dropdown {
        right: 100%; }
    .top-bar-section .left li .dropdown {
      right: auto;
      left: 0; }
      .top-bar-section .left li .dropdown li .dropdown {
        left: 100%; }
  .no-js .top-bar-section ul li:hover > a {
    background-color: #555555;
    background: #F9F9F9;
    color: #333333; }
  .no-js .top-bar-section ul li:active > a {
    background: #F9F9F9;
    color: #333333; }
  .no-js .top-bar-section .has-dropdown:hover > .dropdown {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto;
    display: block;
    position: absolute !important; }
  .no-js .top-bar-section .has-dropdown > a:focus + .dropdown {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto;
    display: block;
    position: absolute !important; } }

/* small displays */
@media only screen {
  .show-for-small-only, .show-for-small-up, .show-for-small, .show-for-small-down, .hide-for-medium-only, .hide-for-medium-up, .hide-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .hide-for-small-only, .hide-for-small-up, .hide-for-small, .demo-notice, .welcome-msg, .hide-for-small-down, .show-for-medium-only, .show-for-medium-up, .show-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .visible-for-small-only, .visible-for-small-up, .visible-for-small, .visible-for-small-down, .hidden-for-medium-only, .hidden-for-medium-up, .col2-left-layout .left-off-canvas-toggle, .col2-right-layout .right-off-canvas-toggle, .col3-layout .left-off-canvas-toggle, .col3-layout .right-off-canvas-toggle, .hidden-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .hidden-for-small-only, .hidden-for-small-up, .hidden-for-small, .hidden-for-small-down, .visible-for-medium-only, .visible-for-medium-up, .visible-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.show-for-small-only, table.show-for-small-up, table.show-for-small, table.show-for-small-down, table.hide-for-medium-only, table.hide-for-medium-up, table.hide-for-medium, table.show-for-medium-down, table.hide-for-large-only, table.hide-for-large-up, table.hide-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xlarge, table.show-for-xlarge-down, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up, table.hide-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.show-for-small-only, thead.show-for-small-up, thead.show-for-small, thead.show-for-small-down, thead.hide-for-medium-only, thead.hide-for-medium-up, thead.hide-for-medium, thead.show-for-medium-down, thead.hide-for-large-only, thead.hide-for-large-up, thead.hide-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xlarge, thead.show-for-xlarge-down, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up, thead.hide-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.show-for-small-only, tbody.show-for-small-up, tbody.show-for-small, tbody.show-for-small-down, tbody.hide-for-medium-only, tbody.hide-for-medium-up, tbody.hide-for-medium, tbody.show-for-medium-down, tbody.hide-for-large-only, tbody.hide-for-large-up, tbody.hide-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xlarge, tbody.show-for-xlarge-down, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up, tbody.hide-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.show-for-small-only, tr.show-for-small-up, tr.show-for-small, tr.show-for-small-down, tr.hide-for-medium-only, tr.hide-for-medium-up, tr.hide-for-medium, tr.show-for-medium-down, tr.hide-for-large-only, tr.hide-for-large-up, tr.hide-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xlarge, tr.show-for-xlarge-down, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up, tr.hide-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.show-for-small-only, td.show-for-small-only, th.show-for-small-up, td.show-for-small-up, th.show-for-small, td.show-for-small, th.show-for-small-down, td.show-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.hide-for-medium-up, td.hide-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* medium displays */
@media only screen and (min-width: 40.0625em) {
  .hide-for-small-only, .show-for-small-up, .hide-for-small, .demo-notice, .welcome-msg, .hide-for-small-down, .show-for-medium-only, .show-for-medium-up, .show-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .hide-for-medium-only, .hide-for-medium-up, .hide-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .visible-for-medium-only, .visible-for-medium-up, .visible-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .hidden-for-medium-only, .hidden-for-medium-up, .col2-left-layout .left-off-canvas-toggle, .col2-right-layout .right-off-canvas-toggle, .col3-layout .left-off-canvas-toggle, .col3-layout .right-off-canvas-toggle, .hidden-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.demo-notice, table.welcome-msg, table.hide-for-small-down, table.show-for-medium-only, table.show-for-medium-up, table.show-for-medium, table.show-for-medium-down, table.hide-for-large-only, table.hide-for-large-up, table.hide-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xlarge, table.show-for-xlarge-down, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up, table.hide-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.demo-notice, thead.welcome-msg, thead.hide-for-small-down, thead.show-for-medium-only, thead.show-for-medium-up, thead.show-for-medium, thead.show-for-medium-down, thead.hide-for-large-only, thead.hide-for-large-up, thead.hide-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xlarge, thead.show-for-xlarge-down, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up, thead.hide-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.demo-notice, tbody.welcome-msg, tbody.hide-for-small-down, tbody.show-for-medium-only, tbody.show-for-medium-up, tbody.show-for-medium, tbody.show-for-medium-down, tbody.hide-for-large-only, tbody.hide-for-large-up, tbody.hide-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xlarge, tbody.show-for-xlarge-down, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up, tbody.hide-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.demo-notice, tr.welcome-msg, tr.hide-for-small-down, tr.show-for-medium-only, tr.show-for-medium-up, tr.show-for-medium, tr.show-for-medium-down, tr.hide-for-large-only, tr.hide-for-large-up, tr.hide-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xlarge, tr.show-for-xlarge-down, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up, tr.hide-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, th.demo-notice, th.welcome-msg, td.hide-for-small, td.demo-notice, td.welcome-msg, th.hide-for-small-down, td.hide-for-small-down, th.show-for-medium-only, td.show-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.show-for-medium, td.show-for-medium, th.show-for-medium-down, td.show-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.hide-for-large-up, td.hide-for-large-up, th.hide-for-large, td.hide-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* large displays */
@media only screen and (min-width: 64.0625em) {
  .hide-for-small-only, .show-for-small-up, .hide-for-small, .demo-notice, .welcome-msg, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .show-for-large-only, .show-for-large-up, .show-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .hide-for-large-only, .hide-for-large-up, .hide-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .visible-for-large-only, .visible-for-large-up, .visible-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .col2-left-layout .left-off-canvas-toggle, .col2-right-layout .right-off-canvas-toggle, .col3-layout .left-off-canvas-toggle, .col3-layout .right-off-canvas-toggle, .visible-for-medium, .visible-for-medium-down, .hidden-for-large-only, .hidden-for-large-up, .hidden-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.demo-notice, table.welcome-msg, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.show-for-large-only, table.show-for-large-up, table.show-for-large, table.show-for-large-down, table.hide-for-xlarge-only, table.hide-for-xlarge-up, table.hide-for-xlarge, table.show-for-xlarge-down, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up, table.hide-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.demo-notice, thead.welcome-msg, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.show-for-large-only, thead.show-for-large-up, thead.show-for-large, thead.show-for-large-down, thead.hide-for-xlarge-only, thead.hide-for-xlarge-up, thead.hide-for-xlarge, thead.show-for-xlarge-down, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up, thead.hide-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.demo-notice, tbody.welcome-msg, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.show-for-large-only, tbody.show-for-large-up, tbody.show-for-large, tbody.show-for-large-down, tbody.hide-for-xlarge-only, tbody.hide-for-xlarge-up, tbody.hide-for-xlarge, tbody.show-for-xlarge-down, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up, tbody.hide-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.demo-notice, tr.welcome-msg, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.show-for-large-only, tr.show-for-large-up, tr.show-for-large, tr.show-for-large-down, tr.hide-for-xlarge-only, tr.hide-for-xlarge-up, tr.hide-for-xlarge, tr.show-for-xlarge-down, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up, tr.hide-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, th.demo-notice, th.welcome-msg, td.hide-for-small, td.demo-notice, td.welcome-msg, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.show-for-large-only, td.show-for-large-only, th.show-for-large-up, td.show-for-large-up, th.show-for-large, td.show-for-large, th.show-for-large-down, td.show-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.hide-for-xlarge-up, td.hide-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* xlarge displays */
@media only screen and (min-width: 90.0625em) {
  .hide-for-small-only, .show-for-small-up, .hide-for-small, .demo-notice, .welcome-msg, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .hide-for-large-only, .show-for-large-up, .hide-for-large, .hide-for-large-down, .show-for-xlarge-only, .show-for-xlarge-up, .show-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .show-for-large-only, .hide-for-large-up, .show-for-large, .show-for-large-down, .hide-for-xlarge-only, .hide-for-xlarge-up, .hide-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .hidden-for-large-only, .visible-for-large-up, .hidden-for-large, .hidden-for-large-down, .visible-for-xlarge-only, .visible-for-xlarge-up, .visible-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .col2-left-layout .left-off-canvas-toggle, .col2-right-layout .right-off-canvas-toggle, .col3-layout .left-off-canvas-toggle, .col3-layout .right-off-canvas-toggle, .visible-for-medium, .visible-for-medium-down, .visible-for-large-only, .hidden-for-large-up, .visible-for-large, .visible-for-large-down, .hidden-for-xlarge-only, .hidden-for-xlarge-up, .hidden-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.demo-notice, table.welcome-msg, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.hide-for-large-only, table.show-for-large-up, table.hide-for-large, table.hide-for-large-down, table.show-for-xlarge-only, table.show-for-xlarge-up, table.show-for-xlarge, table.show-for-xlarge-down, table.hide-for-xxlarge-only, table.hide-for-xxlarge-up, table.hide-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.demo-notice, thead.welcome-msg, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.hide-for-large-only, thead.show-for-large-up, thead.hide-for-large, thead.hide-for-large-down, thead.show-for-xlarge-only, thead.show-for-xlarge-up, thead.show-for-xlarge, thead.show-for-xlarge-down, thead.hide-for-xxlarge-only, thead.hide-for-xxlarge-up, thead.hide-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.demo-notice, tbody.welcome-msg, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.hide-for-large-only, tbody.show-for-large-up, tbody.hide-for-large, tbody.hide-for-large-down, tbody.show-for-xlarge-only, tbody.show-for-xlarge-up, tbody.show-for-xlarge, tbody.show-for-xlarge-down, tbody.hide-for-xxlarge-only, tbody.hide-for-xxlarge-up, tbody.hide-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.demo-notice, tr.welcome-msg, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.hide-for-large-only, tr.show-for-large-up, tr.hide-for-large, tr.hide-for-large-down, tr.show-for-xlarge-only, tr.show-for-xlarge-up, tr.show-for-xlarge, tr.show-for-xlarge-down, tr.hide-for-xxlarge-only, tr.hide-for-xxlarge-up, tr.hide-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, th.demo-notice, th.welcome-msg, td.hide-for-small, td.demo-notice, td.welcome-msg, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.show-for-large-up, td.show-for-large-up, th.hide-for-large, td.hide-for-large, th.hide-for-large-down, td.hide-for-large-down, th.show-for-xlarge-only, td.show-for-xlarge-only, th.show-for-xlarge-up, td.show-for-xlarge-up, th.show-for-xlarge, td.show-for-xlarge, th.show-for-xlarge-down, td.show-for-xlarge-down, th.hide-for-xxlarge-only, td.hide-for-xxlarge-only, th.hide-for-xxlarge-up, td.hide-for-xxlarge-up, th.hide-for-xxlarge, td.hide-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* xxlarge displays */
@media only screen and (min-width: 120.0625em) {
  .hide-for-small-only, .show-for-small-up, .hide-for-small, .demo-notice, .welcome-msg, .hide-for-small-down, .hide-for-medium-only, .show-for-medium-up, .hide-for-medium, .hide-for-medium-down, .hide-for-large-only, .show-for-large-up, .hide-for-large, .hide-for-large-down, .hide-for-xlarge-only, .show-for-xlarge-up, .hide-for-xlarge, .hide-for-xlarge-down, .show-for-xxlarge-only, .show-for-xxlarge-up, .show-for-xxlarge, .show-for-xxlarge-down {
    display: inherit !important; }
  .show-for-small-only, .hide-for-small-up, .show-for-small, .show-for-small-down, .show-for-medium-only, .hide-for-medium-up, .show-for-medium, .show-for-medium-down, .show-for-large-only, .hide-for-large-up, .show-for-large, .show-for-large-down, .show-for-xlarge-only, .hide-for-xlarge-up, .show-for-xlarge, .show-for-xlarge-down, .hide-for-xxlarge-only, .hide-for-xxlarge-up, .hide-for-xxlarge, .hide-for-xxlarge-down {
    display: none !important; }
  .hidden-for-small-only, .visible-for-small-up, .hidden-for-small, .hidden-for-small-down, .hidden-for-medium-only, .visible-for-medium-up, .hidden-for-medium, .hidden-for-medium-down, .hidden-for-large-only, .visible-for-large-up, .hidden-for-large, .hidden-for-large-down, .hidden-for-xlarge-only, .visible-for-xlarge-up, .hidden-for-xlarge, .hidden-for-xlarge-down, .visible-for-xxlarge-only, .visible-for-xxlarge-up, .visible-for-xxlarge, .visible-for-xxlarge-down {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }
  .visible-for-small-only, .hidden-for-small-up, .visible-for-small, .visible-for-small-down, .visible-for-medium-only, .hidden-for-medium-up, .col2-left-layout .left-off-canvas-toggle, .col2-right-layout .right-off-canvas-toggle, .col3-layout .left-off-canvas-toggle, .col3-layout .right-off-canvas-toggle, .visible-for-medium, .visible-for-medium-down, .visible-for-large-only, .hidden-for-large-up, .visible-for-large, .visible-for-large-down, .visible-for-xlarge-only, .hidden-for-xlarge-up, .visible-for-xlarge, .visible-for-xlarge-down, .hidden-for-xxlarge-only, .hidden-for-xxlarge-up, .hidden-for-xxlarge, .hidden-for-xxlarge-down {
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    overflow: hidden;
    position: absolute !important;
    width: 1px; }
  table.hide-for-small-only, table.show-for-small-up, table.hide-for-small, table.demo-notice, table.welcome-msg, table.hide-for-small-down, table.hide-for-medium-only, table.show-for-medium-up, table.hide-for-medium, table.hide-for-medium-down, table.hide-for-large-only, table.show-for-large-up, table.hide-for-large, table.hide-for-large-down, table.hide-for-xlarge-only, table.show-for-xlarge-up, table.hide-for-xlarge, table.hide-for-xlarge-down, table.show-for-xxlarge-only, table.show-for-xxlarge-up, table.show-for-xxlarge, table.show-for-xxlarge-down {
    display: table !important; }
  thead.hide-for-small-only, thead.show-for-small-up, thead.hide-for-small, thead.demo-notice, thead.welcome-msg, thead.hide-for-small-down, thead.hide-for-medium-only, thead.show-for-medium-up, thead.hide-for-medium, thead.hide-for-medium-down, thead.hide-for-large-only, thead.show-for-large-up, thead.hide-for-large, thead.hide-for-large-down, thead.hide-for-xlarge-only, thead.show-for-xlarge-up, thead.hide-for-xlarge, thead.hide-for-xlarge-down, thead.show-for-xxlarge-only, thead.show-for-xxlarge-up, thead.show-for-xxlarge, thead.show-for-xxlarge-down {
    display: table-header-group !important; }
  tbody.hide-for-small-only, tbody.show-for-small-up, tbody.hide-for-small, tbody.demo-notice, tbody.welcome-msg, tbody.hide-for-small-down, tbody.hide-for-medium-only, tbody.show-for-medium-up, tbody.hide-for-medium, tbody.hide-for-medium-down, tbody.hide-for-large-only, tbody.show-for-large-up, tbody.hide-for-large, tbody.hide-for-large-down, tbody.hide-for-xlarge-only, tbody.show-for-xlarge-up, tbody.hide-for-xlarge, tbody.hide-for-xlarge-down, tbody.show-for-xxlarge-only, tbody.show-for-xxlarge-up, tbody.show-for-xxlarge, tbody.show-for-xxlarge-down {
    display: table-row-group !important; }
  tr.hide-for-small-only, tr.show-for-small-up, tr.hide-for-small, tr.demo-notice, tr.welcome-msg, tr.hide-for-small-down, tr.hide-for-medium-only, tr.show-for-medium-up, tr.hide-for-medium, tr.hide-for-medium-down, tr.hide-for-large-only, tr.show-for-large-up, tr.hide-for-large, tr.hide-for-large-down, tr.hide-for-xlarge-only, tr.show-for-xlarge-up, tr.hide-for-xlarge, tr.hide-for-xlarge-down, tr.show-for-xxlarge-only, tr.show-for-xxlarge-up, tr.show-for-xxlarge, tr.show-for-xxlarge-down {
    display: table-row; }
  th.hide-for-small-only, td.hide-for-small-only, th.show-for-small-up, td.show-for-small-up, th.hide-for-small, th.demo-notice, th.welcome-msg, td.hide-for-small, td.demo-notice, td.welcome-msg, th.hide-for-small-down, td.hide-for-small-down, th.hide-for-medium-only, td.hide-for-medium-only, th.show-for-medium-up, td.show-for-medium-up, th.hide-for-medium, td.hide-for-medium, th.hide-for-medium-down, td.hide-for-medium-down, th.hide-for-large-only, td.hide-for-large-only, th.show-for-large-up, td.show-for-large-up, th.hide-for-large, td.hide-for-large, th.hide-for-large-down, td.hide-for-large-down, th.hide-for-xlarge-only, td.hide-for-xlarge-only, th.show-for-xlarge-up, td.show-for-xlarge-up, th.hide-for-xlarge, td.hide-for-xlarge, th.hide-for-xlarge-down, td.hide-for-xlarge-down, th.show-for-xxlarge-only, td.show-for-xxlarge-only, th.show-for-xxlarge-up, td.show-for-xxlarge-up, th.show-for-xxlarge, td.show-for-xxlarge, th.show-for-xxlarge-down, td.show-for-xxlarge-down {
    display: table-cell !important; } }

/* Orientation targeting */
.show-for-landscape,
.hide-for-portrait {
  display: inherit !important; }

.hide-for-landscape,
.show-for-portrait {
  display: none !important; }

/* Specific visibility for tables */
table.hide-for-landscape,
table.show-for-portrait {
  display: table !important; }

thead.hide-for-landscape,
thead.show-for-portrait {
  display: table-header-group !important; }

tbody.hide-for-landscape,
tbody.show-for-portrait {
  display: table-row-group !important; }

tr.hide-for-landscape,
tr.show-for-portrait {
  display: table-row !important; }

td.hide-for-landscape,
td.show-for-portrait,
th.hide-for-landscape,
th.show-for-portrait {
  display: table-cell !important; }

@media only screen and (orientation: landscape) {
  .show-for-landscape,
  .hide-for-portrait {
    display: inherit !important; }
  .hide-for-landscape,
  .show-for-portrait {
    display: none !important; }
  /* Specific visibility for tables */
  table.show-for-landscape,
  table.hide-for-portrait {
    display: table !important; }
  thead.show-for-landscape,
  thead.hide-for-portrait {
    display: table-header-group !important; }
  tbody.show-for-landscape,
  tbody.hide-for-portrait {
    display: table-row-group !important; }
  tr.show-for-landscape,
  tr.hide-for-portrait {
    display: table-row !important; }
  td.show-for-landscape,
  td.hide-for-portrait,
  th.show-for-landscape,
  th.hide-for-portrait {
    display: table-cell !important; } }

@media only screen and (orientation: portrait) {
  .show-for-portrait,
  .hide-for-landscape {
    display: inherit !important; }
  .hide-for-portrait,
  .show-for-landscape {
    display: none !important; }
  /* Specific visibility for tables */
  table.show-for-portrait,
  table.hide-for-landscape {
    display: table !important; }
  thead.show-for-portrait,
  thead.hide-for-landscape {
    display: table-header-group !important; }
  tbody.show-for-portrait,
  tbody.hide-for-landscape {
    display: table-row-group !important; }
  tr.show-for-portrait,
  tr.hide-for-landscape {
    display: table-row !important; }
  td.show-for-portrait,
  td.hide-for-landscape,
  th.show-for-portrait,
  th.hide-for-landscape {
    display: table-cell !important; } }

/* Touch-enabled device targeting */
.show-for-touch {
  display: none !important; }

.hide-for-touch {
  display: inherit !important; }

.touch .show-for-touch {
  display: inherit !important; }

.touch .hide-for-touch {
  display: none !important; }

/* Specific visibility for tables */
table.hide-for-touch {
  display: table !important; }

.touch table.show-for-touch {
  display: table !important; }

thead.hide-for-touch {
  display: table-header-group !important; }

.touch thead.show-for-touch {
  display: table-header-group !important; }

tbody.hide-for-touch {
  display: table-row-group !important; }

.touch tbody.show-for-touch {
  display: table-row-group !important; }

tr.hide-for-touch {
  display: table-row !important; }

.touch tr.show-for-touch {
  display: table-row !important; }

td.hide-for-touch {
  display: table-cell !important; }

.touch td.show-for-touch {
  display: table-cell !important; }

th.hide-for-touch {
  display: table-cell !important; }

.touch th.show-for-touch {
  display: table-cell !important; }

/* Screen reader-specific classes */
.show-for-sr {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px; }

.show-on-focus {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute !important;
  width: 1px; }
  .show-on-focus:focus,
  .show-on-focus:active {
    position: static !important;
    height: auto;
    width: auto;
    overflow: visible;
    clip: auto; }

/*
       * Print styles.
       *
       * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
       * Credit to Paul Irish and HTML5 Boilerplate (html5boilerplate.com)
      */
.print-only {
  display: none !important; }

@media print {
  * {
    background: transparent !important;
    box-shadow: none !important;
    color: #000000 !important;
    /* Black prints faster: h5bp.com/s */
    text-shadow: none !important; }
  .show-for-print {
    display: block; }
  .hide-for-print {
    display: none; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; }
  a,
  a:visited {
    text-decoration: underline; }
  a[href]:after {
    content: " (" attr(href) ")"; }
  abbr[title]:after {
    content: " (" attr(title) ")"; }
  .ir a:after,
  a[href^="javascript:"]:after,
  a[href^="#"]:after {
    content: ""; }
  pre,
  blockquote {
    border: 1px solid #999999;
    page-break-inside: avoid; }
  thead {
    display: table-header-group;
    /* h5bp.com/t */ }
  tr,
  img {
    page-break-inside: avoid; }
  img {
    max-width: 100% !important; }
  @page {
    margin: .5cm; }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3; }
  h2,
  h3 {
    page-break-after: avoid; }
  .hide-on-print {
    display: none !important; }
  .print-only {
    display: block !important; }
  .hide-for-print {
    display: none !important; }
  .show-for-print {
    display: inherit !important; } }

/* Print visibility */
@media print {
  .show-for-print {
    display: block; }
  .hide-for-print {
    display: none; }
  table.show-for-print {
    display: table !important; }
  thead.show-for-print {
    display: table-header-group !important; }
  tbody.show-for-print {
    display: table-row-group !important; }
  tr.show-for-print {
    display: table-row !important; }
  td.show-for-print {
    display: table-cell !important; }
  th.show-for-print {
    display: table-cell !important; } }

@media not print {
  .show-for-print {
    display: none !important; } }

/*!
 *  Font Awesome 4.4.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("../bower_components/components-font-awesome/fonts/fontawesome-webfont.eot?v=4.4.0");
  src: url("../bower_components/components-font-awesome/fonts/fontawesome-webfont.eot?#iefix&v=4.4.0") format("embedded-opentype"), url("../bower_components/components-font-awesome/fonts/fontawesome-webfont.woff2?v=4.4.0") format("woff2"), url("../bower_components/components-font-awesome/fonts/fontawesome-webfont.woff?v=4.4.0") format("woff"), url("../bower_components/components-font-awesome/fonts/fontawesome-webfont.ttf?v=4.4.0") format("truetype"), url("../bower_components/components-font-awesome/fonts/fontawesome-webfont.svg?v=4.4.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal; }

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%; }

.fa-2x {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-fw {
  width: 1.28571em;
  text-align: center; }

.fa-ul {
  padding-left: 0;
  margin-left: 2.14286em;
  list-style-type: none; }
  .fa-ul > li {
    position: relative; }

.fa-li {
  position: absolute;
  left: -2.14286em;
  width: 2.14286em;
  top: 0.14286em;
  text-align: center; }
  .fa-li.fa-lg {
    left: -1.85714em; }

.fa-border {
  padding: 0.2em 0.25em 0.15em;
  border: solid 0.08em #eee;
  border-radius: .1em; }

.fa-pull-left {
  float: left; }

.fa-pull-right {
  float: right; }

.fa.fa-pull-left {
  margin-right: .3em; }

.fa.fa-pull-right {
  margin-left: .3em; }

/* Deprecated as of 4.4.0 */
.pull-right {
  float: right; }

.pull-left {
  float: left; }

.fa.pull-left {
  margin-right: .3em; }

.fa.pull-right {
  margin-left: .3em; }

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear; }

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8); }

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

.fa-rotate-90 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=1);
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg); }

.fa-rotate-180 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg); }

.fa-rotate-270 {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=3);
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg); }

.fa-flip-horizontal {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=0);
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1); }

.fa-flip-vertical {
  filter: progid:DXImageTransform.Microsoft.BasicImage(rotation=2);
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1); }

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none; }

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle; }

.fa-stack-1x, .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center; }

.fa-stack-1x {
  line-height: inherit; }

.fa-stack-2x {
  font-size: 2em; }

.fa-inverse {
  color: #fff; }

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: ""; }

.fa-music:before {
  content: ""; }

.fa-search:before {
  content: ""; }

.fa-envelope-o:before {
  content: ""; }

.fa-heart:before {
  content: ""; }

.fa-star:before {
  content: ""; }

.fa-star-o:before {
  content: ""; }

.fa-user:before {
  content: ""; }

.fa-film:before {
  content: ""; }

.fa-th-large:before {
  content: ""; }

.fa-th:before {
  content: ""; }

.fa-th-list:before {
  content: ""; }

.fa-check:before {
  content: ""; }

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: ""; }

.fa-search-plus:before {
  content: ""; }

.fa-search-minus:before {
  content: ""; }

.fa-power-off:before {
  content: ""; }

.fa-signal:before {
  content: ""; }

.fa-gear:before,
.fa-cog:before {
  content: ""; }

.fa-trash-o:before {
  content: ""; }

.fa-home:before {
  content: ""; }

.fa-file-o:before {
  content: ""; }

.fa-clock-o:before {
  content: ""; }

.fa-road:before {
  content: ""; }

.fa-download:before {
  content: ""; }

.fa-arrow-circle-o-down:before {
  content: ""; }

.fa-arrow-circle-o-up:before {
  content: ""; }

.fa-inbox:before {
  content: ""; }

.fa-play-circle-o:before {
  content: ""; }

.fa-rotate-right:before,
.fa-repeat:before {
  content: ""; }

.fa-refresh:before {
  content: ""; }

.fa-list-alt:before {
  content: ""; }

.fa-lock:before {
  content: ""; }

.fa-flag:before {
  content: ""; }

.fa-headphones:before {
  content: ""; }

.fa-volume-off:before {
  content: ""; }

.fa-volume-down:before {
  content: ""; }

.fa-volume-up:before {
  content: ""; }

.fa-qrcode:before {
  content: ""; }

.fa-barcode:before {
  content: ""; }

.fa-tag:before {
  content: ""; }

.fa-tags:before {
  content: ""; }

.fa-book:before {
  content: ""; }

.fa-bookmark:before {
  content: ""; }

.fa-print:before {
  content: ""; }

.fa-camera:before {
  content: ""; }

.fa-font:before {
  content: ""; }

.fa-bold:before {
  content: ""; }

.fa-italic:before {
  content: ""; }

.fa-text-height:before {
  content: ""; }

.fa-text-width:before {
  content: ""; }

.fa-align-left:before {
  content: ""; }

.fa-align-center:before {
  content: ""; }

.fa-align-right:before {
  content: ""; }

.fa-align-justify:before {
  content: ""; }

.fa-list:before {
  content: ""; }

.fa-dedent:before,
.fa-outdent:before {
  content: ""; }

.fa-indent:before {
  content: ""; }

.fa-video-camera:before {
  content: ""; }

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: ""; }

.fa-pencil:before {
  content: ""; }

.fa-map-marker:before {
  content: ""; }

.fa-adjust:before {
  content: ""; }

.fa-tint:before {
  content: ""; }

.fa-edit:before,
.fa-pencil-square-o:before {
  content: ""; }

.fa-share-square-o:before {
  content: ""; }

.fa-check-square-o:before {
  content: ""; }

.fa-arrows:before {
  content: ""; }

.fa-step-backward:before {
  content: ""; }

.fa-fast-backward:before {
  content: ""; }

.fa-backward:before {
  content: ""; }

.fa-play:before {
  content: ""; }

.fa-pause:before {
  content: ""; }

.fa-stop:before {
  content: ""; }

.fa-forward:before {
  content: ""; }

.fa-fast-forward:before {
  content: ""; }

.fa-step-forward:before {
  content: ""; }

.fa-eject:before {
  content: ""; }

.fa-chevron-left:before {
  content: ""; }

.fa-chevron-right:before {
  content: ""; }

.fa-plus-circle:before {
  content: ""; }

.fa-minus-circle:before {
  content: ""; }

.fa-times-circle:before {
  content: ""; }

.fa-check-circle:before {
  content: ""; }

.fa-question-circle:before {
  content: ""; }

.fa-info-circle:before {
  content: ""; }

.fa-crosshairs:before {
  content: ""; }

.fa-times-circle-o:before {
  content: ""; }

.fa-check-circle-o:before {
  content: ""; }

.fa-ban:before {
  content: ""; }

.fa-arrow-left:before {
  content: ""; }

.fa-arrow-right:before {
  content: ""; }

.fa-arrow-up:before {
  content: ""; }

.fa-arrow-down:before {
  content: ""; }

.fa-mail-forward:before,
.fa-share:before {
  content: ""; }

.fa-expand:before {
  content: ""; }

.fa-compress:before {
  content: ""; }

.fa-plus:before {
  content: ""; }

.fa-minus:before {
  content: ""; }

.fa-asterisk:before {
  content: ""; }

.fa-exclamation-circle:before {
  content: ""; }

.fa-gift:before {
  content: ""; }

.fa-leaf:before {
  content: ""; }

.fa-fire:before {
  content: ""; }

.fa-eye:before {
  content: ""; }

.fa-eye-slash:before {
  content: ""; }

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: ""; }

.fa-plane:before {
  content: ""; }

.fa-calendar:before {
  content: ""; }

.fa-random:before {
  content: ""; }

.fa-comment:before {
  content: ""; }

.fa-magnet:before {
  content: ""; }

.fa-chevron-up:before {
  content: ""; }

.fa-chevron-down:before {
  content: ""; }

.fa-retweet:before {
  content: ""; }

.fa-shopping-cart:before {
  content: ""; }

.fa-folder:before {
  content: ""; }

.fa-folder-open:before {
  content: ""; }

.fa-arrows-v:before {
  content: ""; }

.fa-arrows-h:before {
  content: ""; }

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: ""; }

.fa-twitter-square:before {
  content: ""; }

.fa-facebook-square:before {
  content: ""; }

.fa-camera-retro:before {
  content: ""; }

.fa-key:before {
  content: ""; }

.fa-gears:before,
.fa-cogs:before {
  content: ""; }

.fa-comments:before {
  content: ""; }

.fa-thumbs-o-up:before {
  content: ""; }

.fa-thumbs-o-down:before {
  content: ""; }

.fa-star-half:before {
  content: ""; }

.fa-heart-o:before {
  content: ""; }

.fa-sign-out:before {
  content: ""; }

.fa-linkedin-square:before {
  content: ""; }

.fa-thumb-tack:before {
  content: ""; }

.fa-external-link:before {
  content: ""; }

.fa-sign-in:before {
  content: ""; }

.fa-trophy:before {
  content: ""; }

.fa-github-square:before {
  content: ""; }

.fa-upload:before {
  content: ""; }

.fa-lemon-o:before {
  content: ""; }

.fa-phone:before {
  content: ""; }

.fa-square-o:before {
  content: ""; }

.fa-bookmark-o:before {
  content: ""; }

.fa-phone-square:before {
  content: ""; }

.fa-twitter:before {
  content: ""; }

.fa-facebook-f:before,
.fa-facebook:before {
  content: ""; }

.fa-github:before {
  content: ""; }

.fa-unlock:before {
  content: ""; }

.fa-credit-card:before {
  content: ""; }

.fa-feed:before,
.fa-rss:before {
  content: ""; }

.fa-hdd-o:before {
  content: ""; }

.fa-bullhorn:before {
  content: ""; }

.fa-bell:before {
  content: ""; }

.fa-certificate:before {
  content: ""; }

.fa-hand-o-right:before {
  content: ""; }

.fa-hand-o-left:before {
  content: ""; }

.fa-hand-o-up:before {
  content: ""; }

.fa-hand-o-down:before {
  content: ""; }

.fa-arrow-circle-left:before {
  content: ""; }

.fa-arrow-circle-right:before {
  content: ""; }

.fa-arrow-circle-up:before {
  content: ""; }

.fa-arrow-circle-down:before {
  content: ""; }

.fa-globe:before {
  content: ""; }

.fa-wrench:before {
  content: ""; }

.fa-tasks:before {
  content: ""; }

.fa-filter:before {
  content: ""; }

.fa-briefcase:before {
  content: ""; }

.fa-arrows-alt:before {
  content: ""; }

.fa-group:before,
.fa-users:before {
  content: ""; }

.fa-chain:before,
.fa-link:before {
  content: ""; }

.fa-cloud:before {
  content: ""; }

.fa-flask:before {
  content: ""; }

.fa-cut:before,
.fa-scissors:before {
  content: ""; }

.fa-copy:before,
.fa-files-o:before {
  content: ""; }

.fa-paperclip:before {
  content: ""; }

.fa-save:before,
.fa-floppy-o:before {
  content: ""; }

.fa-square:before {
  content: ""; }

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: ""; }

.fa-list-ul:before {
  content: ""; }

.fa-list-ol:before {
  content: ""; }

.fa-strikethrough:before {
  content: ""; }

.fa-underline:before {
  content: ""; }

.fa-table:before {
  content: ""; }

.fa-magic:before {
  content: ""; }

.fa-truck:before {
  content: ""; }

.fa-pinterest:before {
  content: ""; }

.fa-pinterest-square:before {
  content: ""; }

.fa-google-plus-square:before {
  content: ""; }

.fa-google-plus:before {
  content: ""; }

.fa-money:before {
  content: ""; }

.fa-caret-down:before {
  content: ""; }

.fa-caret-up:before {
  content: ""; }

.fa-caret-left:before {
  content: ""; }

.fa-caret-right:before {
  content: ""; }

.fa-columns:before {
  content: ""; }

.fa-unsorted:before,
.fa-sort:before {
  content: ""; }

.fa-sort-down:before,
.fa-sort-desc:before {
  content: ""; }

.fa-sort-up:before,
.fa-sort-asc:before {
  content: ""; }

.fa-envelope:before {
  content: ""; }

.fa-linkedin:before {
  content: ""; }

.fa-rotate-left:before,
.fa-undo:before {
  content: ""; }

.fa-legal:before,
.fa-gavel:before {
  content: ""; }

.fa-dashboard:before,
.fa-tachometer:before {
  content: ""; }

.fa-comment-o:before {
  content: ""; }

.fa-comments-o:before {
  content: ""; }

.fa-flash:before,
.fa-bolt:before {
  content: ""; }

.fa-sitemap:before {
  content: ""; }

.fa-umbrella:before {
  content: ""; }

.fa-paste:before,
.fa-clipboard:before {
  content: ""; }

.fa-lightbulb-o:before {
  content: ""; }

.fa-exchange:before {
  content: ""; }

.fa-cloud-download:before {
  content: ""; }

.fa-cloud-upload:before {
  content: ""; }

.fa-user-md:before {
  content: ""; }

.fa-stethoscope:before {
  content: ""; }

.fa-suitcase:before {
  content: ""; }

.fa-bell-o:before {
  content: ""; }

.fa-coffee:before {
  content: ""; }

.fa-cutlery:before {
  content: ""; }

.fa-file-text-o:before {
  content: ""; }

.fa-building-o:before {
  content: ""; }

.fa-hospital-o:before {
  content: ""; }

.fa-ambulance:before {
  content: ""; }

.fa-medkit:before {
  content: ""; }

.fa-fighter-jet:before {
  content: ""; }

.fa-beer:before {
  content: ""; }

.fa-h-square:before {
  content: ""; }

.fa-plus-square:before {
  content: ""; }

.fa-angle-double-left:before {
  content: ""; }

.fa-angle-double-right:before {
  content: ""; }

.fa-angle-double-up:before {
  content: ""; }

.fa-angle-double-down:before {
  content: ""; }

.fa-angle-left:before {
  content: ""; }

.fa-angle-right:before {
  content: ""; }

.fa-angle-up:before {
  content: ""; }

.fa-angle-down:before {
  content: ""; }

.fa-desktop:before {
  content: ""; }

.fa-laptop:before {
  content: ""; }

.fa-tablet:before {
  content: ""; }

.fa-mobile-phone:before,
.fa-mobile:before {
  content: ""; }

.fa-circle-o:before {
  content: ""; }

.fa-quote-left:before {
  content: ""; }

.fa-quote-right:before {
  content: ""; }

.fa-spinner:before {
  content: ""; }

.fa-circle:before {
  content: ""; }

.fa-mail-reply:before,
.fa-reply:before {
  content: ""; }

.fa-github-alt:before {
  content: ""; }

.fa-folder-o:before {
  content: ""; }

.fa-folder-open-o:before {
  content: ""; }

.fa-smile-o:before {
  content: ""; }

.fa-frown-o:before {
  content: ""; }

.fa-meh-o:before {
  content: ""; }

.fa-gamepad:before {
  content: ""; }

.fa-keyboard-o:before {
  content: ""; }

.fa-flag-o:before {
  content: ""; }

.fa-flag-checkered:before {
  content: ""; }

.fa-terminal:before {
  content: ""; }

.fa-code:before {
  content: ""; }

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: ""; }

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: ""; }

.fa-location-arrow:before {
  content: ""; }

.fa-crop:before {
  content: ""; }

.fa-code-fork:before {
  content: ""; }

.fa-unlink:before,
.fa-chain-broken:before {
  content: ""; }

.fa-question:before {
  content: ""; }

.fa-info:before {
  content: ""; }

.fa-exclamation:before {
  content: ""; }

.fa-superscript:before {
  content: ""; }

.fa-subscript:before {
  content: ""; }

.fa-eraser:before {
  content: ""; }

.fa-puzzle-piece:before {
  content: ""; }

.fa-microphone:before {
  content: ""; }

.fa-microphone-slash:before {
  content: ""; }

.fa-shield:before {
  content: ""; }

.fa-calendar-o:before {
  content: ""; }

.fa-fire-extinguisher:before {
  content: ""; }

.fa-rocket:before {
  content: ""; }

.fa-maxcdn:before {
  content: ""; }

.fa-chevron-circle-left:before {
  content: ""; }

.fa-chevron-circle-right:before {
  content: ""; }

.fa-chevron-circle-up:before {
  content: ""; }

.fa-chevron-circle-down:before {
  content: ""; }

.fa-html5:before {
  content: ""; }

.fa-css3:before {
  content: ""; }

.fa-anchor:before {
  content: ""; }

.fa-unlock-alt:before {
  content: ""; }

.fa-bullseye:before {
  content: ""; }

.fa-ellipsis-h:before {
  content: ""; }

.fa-ellipsis-v:before {
  content: ""; }

.fa-rss-square:before {
  content: ""; }

.fa-play-circle:before {
  content: ""; }

.fa-ticket:before {
  content: ""; }

.fa-minus-square:before {
  content: ""; }

.fa-minus-square-o:before {
  content: ""; }

.fa-level-up:before {
  content: ""; }

.fa-level-down:before {
  content: ""; }

.fa-check-square:before {
  content: ""; }

.fa-pencil-square:before {
  content: ""; }

.fa-external-link-square:before {
  content: ""; }

.fa-share-square:before {
  content: ""; }

.fa-compass:before {
  content: ""; }

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: ""; }

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: ""; }

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: ""; }

.fa-euro:before,
.fa-eur:before {
  content: ""; }

.fa-gbp:before {
  content: ""; }

.fa-dollar:before,
.fa-usd:before {
  content: ""; }

.fa-rupee:before,
.fa-inr:before {
  content: ""; }

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: ""; }

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: ""; }

.fa-won:before,
.fa-krw:before {
  content: ""; }

.fa-bitcoin:before,
.fa-btc:before {
  content: ""; }

.fa-file:before {
  content: ""; }

.fa-file-text:before {
  content: ""; }

.fa-sort-alpha-asc:before {
  content: ""; }

.fa-sort-alpha-desc:before {
  content: ""; }

.fa-sort-amount-asc:before {
  content: ""; }

.fa-sort-amount-desc:before {
  content: ""; }

.fa-sort-numeric-asc:before {
  content: ""; }

.fa-sort-numeric-desc:before {
  content: ""; }

.fa-thumbs-up:before {
  content: ""; }

.fa-thumbs-down:before {
  content: ""; }

.fa-youtube-square:before {
  content: ""; }

.fa-youtube:before {
  content: ""; }

.fa-xing:before {
  content: ""; }

.fa-xing-square:before {
  content: ""; }

.fa-youtube-play:before {
  content: ""; }

.fa-dropbox:before {
  content: ""; }

.fa-stack-overflow:before {
  content: ""; }

.fa-instagram:before {
  content: ""; }

.fa-flickr:before {
  content: ""; }

.fa-adn:before {
  content: ""; }

.fa-bitbucket:before {
  content: ""; }

.fa-bitbucket-square:before {
  content: ""; }

.fa-tumblr:before {
  content: ""; }

.fa-tumblr-square:before {
  content: ""; }

.fa-long-arrow-down:before {
  content: ""; }

.fa-long-arrow-up:before {
  content: ""; }

.fa-long-arrow-left:before {
  content: ""; }

.fa-long-arrow-right:before {
  content: ""; }

.fa-apple:before {
  content: ""; }

.fa-windows:before {
  content: ""; }

.fa-android:before {
  content: ""; }

.fa-linux:before {
  content: ""; }

.fa-dribbble:before {
  content: ""; }

.fa-skype:before {
  content: ""; }

.fa-foursquare:before {
  content: ""; }

.fa-trello:before {
  content: ""; }

.fa-female:before {
  content: ""; }

.fa-male:before {
  content: ""; }

.fa-gittip:before,
.fa-gratipay:before {
  content: ""; }

.fa-sun-o:before {
  content: ""; }

.fa-moon-o:before {
  content: ""; }

.fa-archive:before {
  content: ""; }

.fa-bug:before {
  content: ""; }

.fa-vk:before {
  content: ""; }

.fa-weibo:before {
  content: ""; }

.fa-renren:before {
  content: ""; }

.fa-pagelines:before {
  content: ""; }

.fa-stack-exchange:before {
  content: ""; }

.fa-arrow-circle-o-right:before {
  content: ""; }

.fa-arrow-circle-o-left:before {
  content: ""; }

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: ""; }

.fa-dot-circle-o:before {
  content: ""; }

.fa-wheelchair:before {
  content: ""; }

.fa-vimeo-square:before {
  content: ""; }

.fa-turkish-lira:before,
.fa-try:before {
  content: ""; }

.fa-plus-square-o:before {
  content: ""; }

.fa-space-shuttle:before {
  content: ""; }

.fa-slack:before {
  content: ""; }

.fa-envelope-square:before {
  content: ""; }

.fa-wordpress:before {
  content: ""; }

.fa-openid:before {
  content: ""; }

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: ""; }

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: ""; }

.fa-yahoo:before {
  content: ""; }

.fa-google:before {
  content: ""; }

.fa-reddit:before {
  content: ""; }

.fa-reddit-square:before {
  content: ""; }

.fa-stumbleupon-circle:before {
  content: ""; }

.fa-stumbleupon:before {
  content: ""; }

.fa-delicious:before {
  content: ""; }

.fa-digg:before {
  content: ""; }

.fa-pied-piper:before {
  content: ""; }

.fa-pied-piper-alt:before {
  content: ""; }

.fa-drupal:before {
  content: ""; }

.fa-joomla:before {
  content: ""; }

.fa-language:before {
  content: ""; }

.fa-fax:before {
  content: ""; }

.fa-building:before {
  content: ""; }

.fa-child:before {
  content: ""; }

.fa-paw:before {
  content: ""; }

.fa-spoon:before {
  content: ""; }

.fa-cube:before {
  content: ""; }

.fa-cubes:before {
  content: ""; }

.fa-behance:before {
  content: ""; }

.fa-behance-square:before {
  content: ""; }

.fa-steam:before {
  content: ""; }

.fa-steam-square:before {
  content: ""; }

.fa-recycle:before {
  content: ""; }

.fa-automobile:before,
.fa-car:before {
  content: ""; }

.fa-cab:before,
.fa-taxi:before {
  content: ""; }

.fa-tree:before {
  content: ""; }

.fa-spotify:before {
  content: ""; }

.fa-deviantart:before {
  content: ""; }

.fa-soundcloud:before {
  content: ""; }

.fa-database:before {
  content: ""; }

.fa-file-pdf-o:before {
  content: ""; }

.fa-file-word-o:before {
  content: ""; }

.fa-file-excel-o:before {
  content: ""; }

.fa-file-powerpoint-o:before {
  content: ""; }

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: ""; }

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: ""; }

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: ""; }

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: ""; }

.fa-file-code-o:before {
  content: ""; }

.fa-vine:before {
  content: ""; }

.fa-codepen:before {
  content: ""; }

.fa-jsfiddle:before {
  content: ""; }

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: ""; }

.fa-circle-o-notch:before {
  content: ""; }

.fa-ra:before,
.fa-rebel:before {
  content: ""; }

.fa-ge:before,
.fa-empire:before {
  content: ""; }

.fa-git-square:before {
  content: ""; }

.fa-git:before {
  content: ""; }

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: ""; }

.fa-tencent-weibo:before {
  content: ""; }

.fa-qq:before {
  content: ""; }

.fa-wechat:before,
.fa-weixin:before {
  content: ""; }

.fa-send:before,
.fa-paper-plane:before {
  content: ""; }

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: ""; }

.fa-history:before {
  content: ""; }

.fa-circle-thin:before {
  content: ""; }

.fa-header:before {
  content: ""; }

.fa-paragraph:before {
  content: ""; }

.fa-sliders:before {
  content: ""; }

.fa-share-alt:before {
  content: ""; }

.fa-share-alt-square:before {
  content: ""; }

.fa-bomb:before {
  content: ""; }

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: ""; }

.fa-tty:before {
  content: ""; }

.fa-binoculars:before {
  content: ""; }

.fa-plug:before {
  content: ""; }

.fa-slideshare:before {
  content: ""; }

.fa-twitch:before {
  content: ""; }

.fa-yelp:before {
  content: ""; }

.fa-newspaper-o:before {
  content: ""; }

.fa-wifi:before {
  content: ""; }

.fa-calculator:before {
  content: ""; }

.fa-paypal:before {
  content: ""; }

.fa-google-wallet:before {
  content: ""; }

.fa-cc-visa:before {
  content: ""; }

.fa-cc-mastercard:before {
  content: ""; }

.fa-cc-discover:before {
  content: ""; }

.fa-cc-amex:before {
  content: ""; }

.fa-cc-paypal:before {
  content: ""; }

.fa-cc-stripe:before {
  content: ""; }

.fa-bell-slash:before {
  content: ""; }

.fa-bell-slash-o:before {
  content: ""; }

.fa-trash:before {
  content: ""; }

.fa-copyright:before {
  content: ""; }

.fa-at:before {
  content: ""; }

.fa-eyedropper:before {
  content: ""; }

.fa-paint-brush:before {
  content: ""; }

.fa-birthday-cake:before {
  content: ""; }

.fa-area-chart:before {
  content: ""; }

.fa-pie-chart:before {
  content: ""; }

.fa-line-chart:before {
  content: ""; }

.fa-lastfm:before {
  content: ""; }

.fa-lastfm-square:before {
  content: ""; }

.fa-toggle-off:before {
  content: ""; }

.fa-toggle-on:before {
  content: ""; }

.fa-bicycle:before {
  content: ""; }

.fa-bus:before {
  content: ""; }

.fa-ioxhost:before {
  content: ""; }

.fa-angellist:before {
  content: ""; }

.fa-cc:before {
  content: ""; }

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: ""; }

.fa-meanpath:before {
  content: ""; }

.fa-buysellads:before {
  content: ""; }

.fa-connectdevelop:before {
  content: ""; }

.fa-dashcube:before {
  content: ""; }

.fa-forumbee:before {
  content: ""; }

.fa-leanpub:before {
  content: ""; }

.fa-sellsy:before {
  content: ""; }

.fa-shirtsinbulk:before {
  content: ""; }

.fa-simplybuilt:before {
  content: ""; }

.fa-skyatlas:before {
  content: ""; }

.fa-cart-plus:before {
  content: ""; }

.fa-cart-arrow-down:before {
  content: ""; }

.fa-diamond:before {
  content: ""; }

.fa-ship:before {
  content: ""; }

.fa-user-secret:before {
  content: ""; }

.fa-motorcycle:before {
  content: ""; }

.fa-street-view:before {
  content: ""; }

.fa-heartbeat:before {
  content: ""; }

.fa-venus:before {
  content: ""; }

.fa-mars:before {
  content: ""; }

.fa-mercury:before {
  content: ""; }

.fa-intersex:before,
.fa-transgender:before {
  content: ""; }

.fa-transgender-alt:before {
  content: ""; }

.fa-venus-double:before {
  content: ""; }

.fa-mars-double:before {
  content: ""; }

.fa-venus-mars:before {
  content: ""; }

.fa-mars-stroke:before {
  content: ""; }

.fa-mars-stroke-v:before {
  content: ""; }

.fa-mars-stroke-h:before {
  content: ""; }

.fa-neuter:before {
  content: ""; }

.fa-genderless:before {
  content: ""; }

.fa-facebook-official:before {
  content: ""; }

.fa-pinterest-p:before {
  content: ""; }

.fa-whatsapp:before {
  content: ""; }

.fa-server:before {
  content: ""; }

.fa-user-plus:before {
  content: ""; }

.fa-user-times:before {
  content: ""; }

.fa-hotel:before,
.fa-bed:before {
  content: ""; }

.fa-viacoin:before {
  content: ""; }

.fa-train:before {
  content: ""; }

.fa-subway:before {
  content: ""; }

.fa-medium:before {
  content: ""; }

.fa-yc:before,
.fa-y-combinator:before {
  content: ""; }

.fa-optin-monster:before {
  content: ""; }

.fa-opencart:before {
  content: ""; }

.fa-expeditedssl:before {
  content: ""; }

.fa-battery-4:before,
.fa-battery-full:before {
  content: ""; }

.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: ""; }

.fa-battery-2:before,
.fa-battery-half:before {
  content: ""; }

.fa-battery-1:before,
.fa-battery-quarter:before {
  content: ""; }

.fa-battery-0:before,
.fa-battery-empty:before {
  content: ""; }

.fa-mouse-pointer:before {
  content: ""; }

.fa-i-cursor:before {
  content: ""; }

.fa-object-group:before {
  content: ""; }

.fa-object-ungroup:before {
  content: ""; }

.fa-sticky-note:before {
  content: ""; }

.fa-sticky-note-o:before {
  content: ""; }

.fa-cc-jcb:before {
  content: ""; }

.fa-cc-diners-club:before {
  content: ""; }

.fa-clone:before {
  content: ""; }

.fa-balance-scale:before {
  content: ""; }

.fa-hourglass-o:before {
  content: ""; }

.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: ""; }

.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: ""; }

.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: ""; }

.fa-hourglass:before {
  content: ""; }

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: ""; }

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: ""; }

.fa-hand-scissors-o:before {
  content: ""; }

.fa-hand-lizard-o:before {
  content: ""; }

.fa-hand-spock-o:before {
  content: ""; }

.fa-hand-pointer-o:before {
  content: ""; }

.fa-hand-peace-o:before {
  content: ""; }

.fa-trademark:before {
  content: ""; }

.fa-registered:before {
  content: ""; }

.fa-creative-commons:before {
  content: ""; }

.fa-gg:before {
  content: ""; }

.fa-gg-circle:before {
  content: ""; }

.fa-tripadvisor:before {
  content: ""; }

.fa-odnoklassniki:before {
  content: ""; }

.fa-odnoklassniki-square:before {
  content: ""; }

.fa-get-pocket:before {
  content: ""; }

.fa-wikipedia-w:before {
  content: ""; }

.fa-safari:before {
  content: ""; }

.fa-chrome:before {
  content: ""; }

.fa-firefox:before {
  content: ""; }

.fa-opera:before {
  content: ""; }

.fa-internet-explorer:before {
  content: ""; }

.fa-tv:before,
.fa-television:before {
  content: ""; }

.fa-contao:before {
  content: ""; }

.fa-500px:before {
  content: ""; }

.fa-amazon:before {
  content: ""; }

.fa-calendar-plus-o:before {
  content: ""; }

.fa-calendar-minus-o:before {
  content: ""; }

.fa-calendar-times-o:before {
  content: ""; }

.fa-calendar-check-o:before {
  content: ""; }

.fa-industry:before {
  content: ""; }

.fa-map-pin:before {
  content: ""; }

.fa-map-signs:before {
  content: ""; }

.fa-map-o:before {
  content: ""; }

.fa-map:before {
  content: ""; }

.fa-commenting:before {
  content: ""; }

.fa-commenting-o:before {
  content: ""; }

.fa-houzz:before {
  content: ""; }

.fa-vimeo:before {
  content: ""; }

.fa-black-tie:before {
  content: ""; }

.fa-fonticons:before {
  content: ""; }

.top-bar,
.header-container,
.demo-notice,
.footer-container,
.col1-layout,
.col2-left-layout,
.col2-right-layout,
.col3-layout {
  margin: 0 auto;
  max-width: 84%;
  width: 100%; }
  .top-bar:before,
  .top-bar:after,
  .header-container:before,
  .header-container:after,
  .demo-notice:before,
  .demo-notice:after,
  .footer-container:before,
  .footer-container:after,
  .col1-layout:before,
  .col1-layout:after,
  .col2-left-layout:before,
  .col2-left-layout:after,
  .col2-right-layout:before,
  .col2-right-layout:after,
  .col3-layout:before, .col3-layout:after {
    content: " ";
    display: table; }
  .top-bar:after,
  .header-container:after,
  .demo-notice:after,
  .footer-container:after,
  .col1-layout:after,
  .col2-left-layout:after,
  .col2-right-layout:after,
  .col3-layout:after {
    clear: both; }

.col1-layout .col-wrapper {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .col1-layout .col-wrapper:before, .col1-layout .col-wrapper:after {
    content: " ";
    display: table; }
  .col1-layout .col-wrapper:after {
    clear: both; }
  .col1-layout .col-wrapper .col-main {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

.col2-left-layout .col-wrapper,
.col2-right-layout .col-wrapper {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .col2-left-layout .col-wrapper:before,
  .col2-left-layout .col-wrapper:after,
  .col2-right-layout .col-wrapper:before, .col2-right-layout .col-wrapper:after {
    content: " ";
    display: table; }
  .col2-left-layout .col-wrapper:after,
  .col2-right-layout .col-wrapper:after {
    clear: both; }
  .col2-left-layout .col-wrapper .sidebar,
  .col2-left-layout .col-wrapper .col-main,
  .col2-left-layout .col-wrapper > a,
  .col2-right-layout .col-wrapper .sidebar,
  .col2-right-layout .col-wrapper .col-main,
  .col2-right-layout .col-wrapper > a {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

.col3-layout .col-wrapper {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .col3-layout .col-wrapper:before, .col3-layout .col-wrapper:after {
    content: " ";
    display: table; }
  .col3-layout .col-wrapper:after {
    clear: both; }
  .col3-layout .col-wrapper .sidebar,
  .col3-layout .col-wrapper .col-main {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }
  .col3-layout .col-wrapper > span {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 50%;
    float: left; }

.breadcrumbs {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 100%;
  float: left; }

.header-container .super-header {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .header-container .super-header:before, .header-container .super-header:after {
    content: " ";
    display: table; }
  .header-container .super-header:after {
    clear: both; }
  .header-container .super-header .welcome,
  .header-container .super-header .switchers,
  .header-container .super-header .top-links {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

.header-container .header {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .header-container .header:before, .header-container .header:after {
    content: " ";
    display: table; }
  .header-container .header:after {
    clear: both; }
  .header-container .header .logo,
  .header-container .header .quick-access {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }
    .header-container .header .logo input,
    .header-container .header .quick-access input {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 75%;
      float: left; }
    .header-container .header .logo button,
    .header-container .header .quick-access button {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 25%;
      float: left; }

.products-list li a,
.products-list li .product-shop {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 100%;
  float: left; }

.products-grid {
  display: block;
  padding: 0;
  margin: 0 -0.625rem; }
  .products-grid:before, .products-grid:after {
    content: " ";
    display: table; }
  .products-grid:after {
    clear: both; }
  .products-grid > li {
    display: block;
    float: left;
    height: auto;
    padding: 0 0.625rem 1.25rem; }
  .products-grid > li {
    list-style: none;
    padding: 0 0.625rem 1.25rem;
    width: 50%; }
    .products-grid > li:nth-of-type(1n) {
      clear: none; }
    .products-grid > li:nth-of-type(2n+1) {
      clear: both; }

.product-view .product-essential #product_addtocart_form {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .product-view .product-essential #product_addtocart_form:before, .product-view .product-essential #product_addtocart_form:after {
    content: " ";
    display: table; }
  .product-view .product-essential #product_addtocart_form:after {
    clear: both; }
  .product-view .product-essential #product_addtocart_form .product-img-box,
  .product-view .product-essential #product_addtocart_form .product-shop {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

.product-view .product-collateral #customer-reviews {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .product-view .product-collateral #customer-reviews:before, .product-view .product-collateral #customer-reviews:after {
    content: " ";
    display: table; }
  .product-view .product-collateral #customer-reviews:after {
    clear: both; }
  .product-view .product-collateral #customer-reviews > h2, .product-view .product-collateral #customer-reviews dl, .product-view .product-collateral #customer-reviews .form-add {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }
  .product-view .product-collateral #customer-reviews .form-add form {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .product-view .product-collateral #customer-reviews .form-add form:before, .product-view .product-collateral #customer-reviews .form-add form:after {
      content: " ";
      display: table; }
    .product-view .product-collateral #customer-reviews .form-add form:after {
      clear: both; }
    .product-view .product-collateral #customer-reviews .form-add form section {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 100%;
      float: left; }
  .product-view .product-collateral #customer-reviews .form-add .buttons-set {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

.box-up-sell ul,
.block-related ul,
.crosssell ul {
  display: block;
  padding: 0;
  margin: 0 -0.625rem; }
  .box-up-sell ul:before,
  .box-up-sell ul:after,
  .block-related ul:before,
  .block-related ul:after,
  .crosssell ul:before, .crosssell ul:after {
    content: " ";
    display: table; }
  .box-up-sell ul:after,
  .block-related ul:after,
  .crosssell ul:after {
    clear: both; }
  .box-up-sell ul > li,
  .block-related ul > li,
  .crosssell ul > li {
    display: block;
    float: left;
    height: auto;
    padding: 0 0.625rem 1.25rem; }
  .box-up-sell ul > li,
  .block-related ul > li,
  .crosssell ul > li {
    list-style: none;
    padding: 0 0.625rem 1.25rem;
    width: 50%; }
    .box-up-sell ul > li:nth-of-type(1n),
    .block-related ul > li:nth-of-type(1n),
    .crosssell ul > li:nth-of-type(1n) {
      clear: none; }
    .box-up-sell ul > li:nth-of-type(2n+1),
    .block-related ul > li:nth-of-type(2n+1),
    .crosssell ul > li:nth-of-type(2n+1) {
      clear: both; }

.cart > form {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .cart > form:before, .cart > form:after {
    content: " ";
    display: table; }
  .cart > form:after {
    clear: both; }
  .cart > form .cart-table-wrapper {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

.cart .cart-collaterals .col-collaterals {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .cart .cart-collaterals .col-collaterals:before, .cart .cart-collaterals .col-collaterals:after {
    content: " ";
    display: table; }
  .cart .cart-collaterals .col-collaterals:after {
    clear: both; }
  .cart .cart-collaterals .col-collaterals .shipping,
  .cart .cart-collaterals .col-collaterals #discount-coupon-form,
  .cart .cart-collaterals .col-collaterals .totals {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

.footer-container .footer {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .footer-container .footer:before, .footer-container .footer:after {
    content: " ";
    display: table; }
  .footer-container .footer:after {
    clear: both; }
  .footer-container .footer .footer-links,
  .footer-container .footer address {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }
  .footer-container .footer .block-subscribe {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }
    .footer-container .footer .block-subscribe form {
      margin: 0 -0.9375rem;
      max-width: none;
      width: auto; }
      .footer-container .footer .block-subscribe form:before, .footer-container .footer .block-subscribe form:after {
        content: " ";
        display: table; }
      .footer-container .footer .block-subscribe form:after {
        clear: both; }
      .footer-container .footer .block-subscribe form .block-content {
        padding-left: 0.9375rem;
        padding-right: 0.9375rem;
        width: 100%;
        float: left; }
        .footer-container .footer .block-subscribe form .block-content .input-box {
          padding-left: 0;
          padding-right: 0;
          width: 66.66667%;
          float: left; }
        .footer-container .footer .block-subscribe form .block-content .actions {
          padding-left: 0;
          padding-right: 0;
          width: 33.33333%;
          float: left; }

.account-login {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  .account-login:before, .account-login:after {
    content: " ";
    display: table; }
  .account-login:after {
    clear: both; }
  .account-login .page-title {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }
  .account-login .registered-users,
  .account-login .new-users {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

#checkout-step-login .col2-set {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto; }
  #checkout-step-login .col2-set:before, #checkout-step-login .col2-set:after {
    content: " ";
    display: table; }
  #checkout-step-login .col2-set:after {
    clear: both; }
  #checkout-step-login .col2-set .col-1,
  #checkout-step-login .col2-set .col-2 {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 100%;
    float: left; }

@media only screen and (min-width: 40.0625em) {
  .col2-left-layout .col-wrapper .sidebar,
  .col2-right-layout .col-wrapper .sidebar {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 41.66667%;
    float: left; }
  .col2-left-layout .col-wrapper .col-main,
  .col2-right-layout .col-wrapper .col-main {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 58.33333%;
    float: left; }
  .col3-layout .col-wrapper .sidebar {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 25%;
    float: left; }
  .col3-layout .col-wrapper .col-main {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 50%;
    float: left; }
  .header-container .super-header {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .header-container .super-header:before, .header-container .super-header:after {
      content: " ";
      display: table; }
    .header-container .super-header:after {
      clear: both; }
    .header-container .super-header .welcome {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 33.33333%;
      float: left; }
    .header-container .super-header .switchers {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 66.66667%;
      float: left; }
    .header-container .super-header .top-links {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 100%;
      float: left; }
  .header-container .header {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .header-container .header:before, .header-container .header:after {
      content: " ";
      display: table; }
    .header-container .header:after {
      clear: both; }
    .header-container .header .logo {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 41.66667%;
      float: left; }
    .header-container .header .quick-access {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 58.33333%;
      float: left; }
  .product-view .product-essential #product_addtocart_form .product-img-box {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 41.66667%;
    float: left; }
  .product-view .product-essential #product_addtocart_form .product-shop {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 58.33333%;
    float: left; }
  .product-view .product-collateral #customer-reviews {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .product-view .product-collateral #customer-reviews:before, .product-view .product-collateral #customer-reviews:after {
      content: " ";
      display: table; }
    .product-view .product-collateral #customer-reviews:after {
      clear: both; }
    .product-view .product-collateral #customer-reviews dl,
    .product-view .product-collateral #customer-reviews .form-add {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 50%;
      float: left; }
  .box-up-sell ul,
  .block-related ul,
  .crosssell ul {
    display: block;
    padding: 0;
    margin: 0 -0.625rem; }
    .box-up-sell ul:before,
    .box-up-sell ul:after,
    .block-related ul:before,
    .block-related ul:after,
    .crosssell ul:before, .crosssell ul:after {
      content: " ";
      display: table; }
    .box-up-sell ul:after,
    .block-related ul:after,
    .crosssell ul:after {
      clear: both; }
    .box-up-sell ul > li,
    .block-related ul > li,
    .crosssell ul > li {
      display: block;
      float: left;
      height: auto;
      padding: 0 0.625rem 1.25rem; }
    .box-up-sell ul > li,
    .block-related ul > li,
    .crosssell ul > li {
      list-style: none;
      padding: 0 0.625rem 1.25rem;
      width: 33.33333%; }
      .box-up-sell ul > li:nth-of-type(1n),
      .block-related ul > li:nth-of-type(1n),
      .crosssell ul > li:nth-of-type(1n) {
        clear: none; }
      .box-up-sell ul > li:nth-of-type(3n+1),
      .block-related ul > li:nth-of-type(3n+1),
      .crosssell ul > li:nth-of-type(3n+1) {
        clear: both; }
  .cart .cart-collaterals .col-collaterals {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .cart .cart-collaterals .col-collaterals:before, .cart .cart-collaterals .col-collaterals:after {
      content: " ";
      display: table; }
    .cart .cart-collaterals .col-collaterals:after {
      clear: both; }
    .cart .cart-collaterals .col-collaterals #discount-coupon-form,
    .cart .cart-collaterals .col-collaterals .totals {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 50%;
      float: left; }
  .account-login .registered-users,
  .account-login .new-users {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 50%;
    float: left; }
  .account-create {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .account-create .page-title {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 100%;
      float: left; }
    .account-create:before, .account-create:after {
      content: " ";
      display: table; }
    .account-create:after {
      clear: both; }
    .account-create .fieldset {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 50%;
      float: left; }
  .footer-container .footer .block-subscribe {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 66.66667%;
    float: left; } }

@media only screen and (min-width: 64.0625em) {
  .col2-left-layout .col-wrapper .sidebar,
  .col2-right-layout .col-wrapper .sidebar {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 25%;
    float: left; }
  .col2-left-layout .col-wrapper .col-main,
  .col2-right-layout .col-wrapper .col-main {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 75%;
    float: left; }
  .header-container .super-header {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .header-container .super-header:before, .header-container .super-header:after {
      content: " ";
      display: table; }
    .header-container .super-header:after {
      clear: both; }
    .header-container .super-header .welcome {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 16.66667%;
      float: left; }
    .header-container .super-header .switchers {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 33.33333%;
      float: left; }
    .header-container .super-header .top-links {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 50%;
      float: left; }
  .header-container .header .quick-access input {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 83.33333%;
    float: left; }
  .header-container .header .quick-access button {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 16.66667%;
    float: left; }
  .products-grid {
    display: block;
    padding: 0;
    margin: 0 -0.625rem; }
    .products-grid:before, .products-grid:after {
      content: " ";
      display: table; }
    .products-grid:after {
      clear: both; }
    .products-grid > li {
      display: block;
      float: left;
      height: auto;
      padding: 0 0.625rem 1.25rem; }
    .products-grid > li {
      list-style: none;
      padding: 0 0.625rem 1.25rem;
      width: 33.33333%; }
      .products-grid > li:nth-of-type(1n) {
        clear: none; }
      .products-grid > li:nth-of-type(3n+1) {
        clear: both; }
  .products-list li > a {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 33.33333%;
    float: left; }
  .products-list li .product-shop {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 66.66667%;
    float: left; }
  .box-up-sell ul,
  .block-related ul,
  .crosssell ul {
    display: block;
    padding: 0;
    margin: 0 -0.625rem; }
    .box-up-sell ul:before,
    .box-up-sell ul:after,
    .block-related ul:before,
    .block-related ul:after,
    .crosssell ul:before, .crosssell ul:after {
      content: " ";
      display: table; }
    .box-up-sell ul:after,
    .block-related ul:after,
    .crosssell ul:after {
      clear: both; }
    .box-up-sell ul > li,
    .block-related ul > li,
    .crosssell ul > li {
      display: block;
      float: left;
      height: auto;
      padding: 0 0.625rem 1.25rem; }
    .box-up-sell ul > li,
    .block-related ul > li,
    .crosssell ul > li {
      list-style: none;
      padding: 0 0.625rem 1.25rem;
      width: 25%; }
      .box-up-sell ul > li:nth-of-type(1n),
      .block-related ul > li:nth-of-type(1n),
      .crosssell ul > li:nth-of-type(1n) {
        clear: none; }
      .box-up-sell ul > li:nth-of-type(4n+1),
      .block-related ul > li:nth-of-type(4n+1),
      .crosssell ul > li:nth-of-type(4n+1) {
        clear: both; }
  .cart .cart-collaterals .col-collaterals {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    .cart .cart-collaterals .col-collaterals:before, .cart .cart-collaterals .col-collaterals:after {
      content: " ";
      display: table; }
    .cart .cart-collaterals .col-collaterals:after {
      clear: both; }
    .cart .cart-collaterals .col-collaterals .shipping {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 50%;
      float: left; }
    .cart .cart-collaterals .col-collaterals #discount-coupon-form,
    .cart .cart-collaterals .col-collaterals .totals {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 25%;
      float: left; }
  #checkout-step-login .col2-set {
    margin: 0 -0.9375rem;
    max-width: none;
    width: auto; }
    #checkout-step-login .col2-set:before, #checkout-step-login .col2-set:after {
      content: " ";
      display: table; }
    #checkout-step-login .col2-set:after {
      clear: both; }
    #checkout-step-login .col2-set .col-1,
    #checkout-step-login .col2-set .col-2 {
      padding-left: 0.9375rem;
      padding-right: 0.9375rem;
      width: 50%;
      float: left; }
  .footer-container .footer .block-subscribe {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    width: 41.66667%;
    float: left; } }

#wishlist-table img {
  max-width: inherit; }

.demo-notice .notice-inner {
  text-align: center;
  color: #f08a24; }

#inchoo_global_messages {
  background: #F9F9F9;
  position: relative;
  z-index: 9999; }

#inchoo_global_messages_close {
  position: absolute;
  top: 0;
  right: 15px;
  z-index: 10000;
  display: block;
  color: #4a8ec2;
  font-size: 24px;
  line-height: 15px;
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px; }

.validation-advice,
.required {
  color: #f08a24; }

.success-msg ul li span {
  color: #43AC6A; }

.error-msg ul li span {
  color: #f08a24; }

.breadcrumbs {
  margin-top: 1em; }
  .breadcrumbs ul li {
    display: inline-block; }

@-moz-document url-prefix() {}.scrollToTop {
  display: none;
  position: fixed;
  cursor: pointer;
  right: 1em;
  bottom: 100px; }

.cart .page-title h1 + ul {
  display: none; }

.cart form {
  overflow-x: hidden; }
  .cart form fieldset {
    padding: 0; }
    .cart form fieldset #shopping-cart-table {
      width: 100%; }
      .cart form fieldset #shopping-cart-table tbody img {
        max-width: inherit; }
      .cart form fieldset #shopping-cart-table tfoot button {
        margin-bottom: 1em; }
      .cart form fieldset #shopping-cart-table tfoot .btn-empty {
        float: left; }
      .cart form fieldset #shopping-cart-table tfoot .btn-update,
      .cart form fieldset #shopping-cart-table tfoot .btn-continue {
        float: right; }
      .cart form fieldset #shopping-cart-table tfoot .btn-update {
        margin: 0 0.5em; }
      @media only screen and (max-width: 40em) {
        .cart form fieldset #shopping-cart-table tfoot button {
          clear: both; }
        .cart form fieldset #shopping-cart-table tfoot .btn-empty {
          margin: 1em 0; } }

.cart .cart-collaterals .shipping .buttons-set .button, .cart .cart-collaterals .shipping .buttons-set .top-cart .btn-cart, .top-cart .cart .cart-collaterals .shipping .buttons-set .btn-cart,
.cart .cart-collaterals .shipping .buttons-set .top-cart .btn-checkout, .top-cart .cart .cart-collaterals .shipping .buttons-set .btn-checkout {
  float: right; }

.cart .cart-collaterals #discount-coupon-form .discount h2 {
  text-align: right; }

.cart .cart-collaterals #discount-coupon-form .discount .discount-form label,
.cart .cart-collaterals #discount-coupon-form .discount .discount-form input,
.cart .cart-collaterals #discount-coupon-form .discount .discount-form .buttons-set {
  float: right;
  clear: both; }

.cart .cart-collaterals #discount-coupon-form .discount .discount-form input {
  margin: 1em 0; }

.cart .cart-collaterals .totals table,
.cart .cart-collaterals .totals ul {
  float: right;
  display: block;
  clear: both; }

.cart .cart-collaterals .totals table {
  margin-top: 1em; }

.toolbar {
  overflow: auto;
  margin-bottom: 1em; }
  .toolbar .pager {
    display: inline-block; }
    .toolbar .pager .amount, .toolbar .pager .limiter {
      display: inline-block;
      vertical-align: middle;
      margin: 0; }
    .toolbar .pager .amount {
      padding-right: 0.5em;
      position: relative;
      top: 4px; }
    .toolbar .pager .limiter {
      float: right; }
      .toolbar .pager .limiter select, .toolbar .pager .limiter span {
        display: inline-block;
        margin: 0;
        width: 70px; }
    .toolbar .pager .pages strong {
      display: none; }
    .toolbar .pager .pages ol li {
      display: inline-block; }
  .toolbar .sorter {
    display: inline-block;
    float: right; }
    .toolbar .sorter .view-mode, .toolbar .sorter .sort-by {
      display: inline-block;
      vertical-align: middle;
      margin: 0; }
    .toolbar .sorter .view-mode {
      position: relative;
      top: 4px; }
    .toolbar .sorter .sort-by {
      float: right; }
      .toolbar .sorter .sort-by select, .toolbar .sorter .sort-by a {
        display: inline-block;
        margin: 0; }
      .toolbar .sorter .sort-by select {
        width: 80px; }

.products-list li {
  overflow: hidden;
  clear: both;
  margin-bottom: 1em; }

.products-grid h2 a {
  font-size: 0.65em; }

.products-list .btn-cart,
.products-grid .btn-cart {
  margin-bottom: 0.5em; }

.products-list .product-shop a,
.products-grid .product-shop a {
  padding: 0; }

.add-to-links {
  margin: 0; }
  .add-to-links li {
    display: inline-block;
    vertical-align: top; }
    .add-to-links li .separator {
      display: none; }
    .add-to-links li a {
      font-size: 0; }
      .add-to-links li a:before {
        font-family: FontAwesome;
        font-size: 20px; }
    .add-to-links li:first-child a:before {
      padding: 0 0.5em 0 0;
      content: "\f004"; }
    .add-to-links li:nth-child(2) a:before {
      padding: 0 0 0 0.5em;
      content: "\f0ec"; }

#checkout-step-billing ul,
#checkout-step-billing fieldset,
#checkout-step-shipping ul,
#checkout-step-shipping fieldset,
#checkout-step-login ul,
#checkout-step-login fieldset,
#checkout-step-shipping_method ul,
#checkout-step-shipping_method fieldset,
#checkout-step-payment ul,
#checkout-step-payment fieldset {
  margin: 0;
  padding: 0; }

.opc .section .step-title {
  clear: both; }
  .opc .section .step-title h2 {
    display: inline-block; }
  .opc .section .step-title a {
    display: none; }

.opc .section.allow:not(.active) .step-title a {
  display: block;
  float: right;
  line-height: 40px;
  height: 40px;
  padding: 0 10px; }

.cms-index-index .main-container {
  padding: 1.2em 0 0 0; }

.footer-container {
  margin-top: 2em; }
  .footer-container ul.links {
    text-align: right; }
  .footer-container address {
    text-align: right;
    clear: both; }
  .footer-container .block-subscribe .input-box {
    padding-right: 0; }
    .footer-container .block-subscribe .input-box input {
      height: 2.35em; }
  .footer-container .block-subscribe .actions {
    padding-left: 0; }
    .footer-container .block-subscribe .actions button {
      width: 100%;
      height: 3em; }

ul, ol {
  list-style-type: none; }

ul.links li {
  display: inline; }

ul, ol, dd {
  margin: 0; }

a {
  text-decoration: none; }

.sidebar .block {
  background: #F9F9F9;
  margin-top: 1em;
  padding: 1em; }

.header-container .super-header .switchers .store-switcher,
.header-container .super-header .switchers .form-language,
.header-container .super-header .switchers .block-currency {
  display: inline-block;
  vertical-align: top;
  width: 5.4em; }
  .header-container .super-header .switchers .store-switcher select,
  .header-container .super-header .switchers .form-language select,
  .header-container .super-header .switchers .block-currency select {
    padding: 0.1em 1.4em 0.1em 0.1em;
    height: 1.6em; }

.header-container .super-header .top-links {
  text-align: center; }
  .header-container .super-header .top-links ul {
    display: inline-block; }
    .header-container .super-header .top-links ul li {
      margin: 0 0 0 1em; }
      .header-container .super-header .top-links ul li a {
        font-size: 0; }
        .header-container .super-header .top-links ul li a:before {
          font-family: FontAwesome;
          font-size: 20px;
          padding: 0 0.5em 0 0; }
      .header-container .super-header .top-links ul li:first-child a:before {
        content: "\f007"; }
      .header-container .super-header .top-links ul li:nth-child(2) a:before {
        content: "\f004"; }
      .header-container .super-header .top-links ul li:nth-child(3) a:before {
        content: "\f0ec"; }
      .header-container .super-header .top-links ul li:nth-child(4) a:before {
        content: "\f090"; }
    @media only screen and (min-width: 40.0625em) {
      .header-container .super-header .top-links ul {
        float: right; }
        .header-container .super-header .top-links ul li {
          margin: 0 0 0 2em; }
          .header-container .super-header .top-links ul li a {
            font-size: 0.8em; } }

.header-container .super-header .btn-cart {
  position: fixed;
  top: 2.5em;
  right: 0;
  padding: 0.5em;
  margin-top: -0.5em;
  background: #4a8ec2;
  z-index: 5; }
  .header-container .super-header .btn-cart span {
    background: #FFFFFF;
    border-radius: 50%;
    padding: 0 0.3em;
    position: relative;
    bottom: 7px; }
  .header-container .super-header .btn-cart:before {
    content: "\f07a";
    font-family: FontAwesome;
    color: #FFFFFF;
    font-size: 20px;
    padding: 0 0.3em 0 0; }
  @media only screen and (min-width: 40.0625em) {
    .header-container .super-header .btn-cart {
      top: 2.8em; } }

.header-container .header {
  margin-top: 0.5em;
  margin-bottom: 0.5em; }
  .header-container .header .quick-access {
    position: relative; }
    .header-container .header .quick-access .form-search {
      float: left;
      margin: 0.5em 0 0 0;
      width: 100%; }
      .header-container .header .quick-access .form-search input {
        display: inline-block;
        height: 2.35em; }
      .header-container .header .quick-access .form-search button {
        display: inline-block;
        margin-bottom: 0;
        vertical-align: top;
        height: 3em; }
      @media only screen and (min-width: 40.0625em) {
        .header-container .header .quick-access .form-search {
          margin: 1.3em 0 0 0; } }
      .header-container .header .quick-access .form-search #search_autocomplete {
        z-index: 10; }
        .header-container .header .quick-access .form-search #search_autocomplete ul li {
          border: 1px solid #CCCCCC;
          border-top: 0;
          color: #4a8ec2; }

.rating-box {
  width: 69px;
  height: 13px;
  font-size: 0;
  line-height: 0;
  background: url(../images/bkg_rating.gif) 0 0 repeat-x;
  text-indent: -999em;
  overflow: hidden;
  clear: both; }
  .rating-box .rating {
    float: left;
    height: 13px;
    background: url(../images/bkg_rating.gif) 0 100% repeat-x; }

.product-image-gallery .gallery-image {
  display: none; }

.product-image-gallery .gallery-image.visible {
  display: block; }

.form-language label,
.form-search label,
.store-switcher label,
.toolbar label {
  display: none; }

.view-mode strong, .block-title strong {
  display: none; }

.block-currency .block-title {
  display: none; }

.col3-layout span + span {
  text-align: right; }

@media only screen and (max-width: 40em) {
  .col-left,
  .col-right {
    width: 205px !important; } }

.right-off-canvas-toggle {
  text-align: right; }

.offcanvas-overlap .left-off-canvas-menu, .offcanvas-overlap .right-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 40.0625em) {
    .offcanvas-overlap .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.offcanvas-overlap-left .right-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap-left .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 40.0625em) {
    .offcanvas-overlap-left .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.offcanvas-overlap-right .left-off-canvas-menu {
  -ms-transform: none;
  -webkit-transform: none;
  -moz-transform: none;
  -o-transform: none;
  transform: none;
  z-index: 1003; }

.offcanvas-overlap-right .exit-off-canvas {
  -webkit-backface-visibility: hidden;
  box-shadow: -4px 0 4px rgba(0, 0, 0, 0.5), 4px 0 4px rgba(0, 0, 0, 0.5);
  cursor: pointer;
  transition: background 300ms ease;
  -webkit-tap-highlight-color: transparent;
  background: rgba(255, 255, 255, 0.2);
  bottom: 0;
  display: block;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1002; }
  @media only screen and (min-width: 40.0625em) {
    .offcanvas-overlap-right .exit-off-canvas:hover {
      background: rgba(255, 255, 255, 0.05); } }

.no-csstransforms .left-off-canvas-menu {
  left: -15.625rem; }

.no-csstransforms .right-off-canvas-menu {
  right: -15.625rem; }

.no-csstransforms .move-left > .inner-wrap {
  right: 15.625rem; }

.no-csstransforms .move-right > .inner-wrap {
  left: 15.625rem; }

.left-submenu {
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  background: #F9F9F9;
  bottom: 0;
  box-sizing: content-box;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  width: 15.625rem;
  z-index: 1002;
  -webkit-transform: translate3d(-100%, 0, 0);
  -moz-transform: translate3d(-100%, 0, 0);
  -ms-transform: translate(-100%, 0);
  -ms-transform: translate3d(-100%, 0, 0);
  -o-transform: translate3d(-100%, 0, 0);
  transform: translate3d(-100%, 0, 0);
  left: 0;
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -ms-transition: -ms-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease; }
  .left-submenu * {
    -webkit-backface-visibility: hidden; }
  .left-submenu .back > a {
    background: #444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    font-weight: bold;
    padding: 0.3rem 0.9375rem;
    text-transform: uppercase;
    margin: 0; }
    .left-submenu .back > a:hover {
      background: #303030;
      border-bottom: none;
      border-top: 1px solid #5e5e5e; }
    .left-submenu .back > a:before {
      content: "\AB";
      margin-right: .5rem;
      display: inline; }
  .left-submenu.move-right, .left-submenu.offcanvas-overlap-right, .left-submenu.offcanvas-overlap {
    -webkit-transform: translate3d(0%, 0, 0);
    -moz-transform: translate3d(0%, 0, 0);
    -ms-transform: translate(0%, 0);
    -ms-transform: translate3d(0%, 0, 0);
    -o-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0); }

.right-submenu {
  -webkit-backface-visibility: hidden;
  -webkit-overflow-scrolling: touch;
  background: #F9F9F9;
  bottom: 0;
  box-sizing: content-box;
  margin: 0;
  overflow-x: hidden;
  overflow-y: auto;
  position: absolute;
  top: 0;
  width: 15.625rem;
  z-index: 1002;
  -webkit-transform: translate3d(100%, 0, 0);
  -moz-transform: translate3d(100%, 0, 0);
  -ms-transform: translate(100%, 0);
  -ms-transform: translate3d(100%, 0, 0);
  -o-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  right: 0;
  -webkit-transition: -webkit-transform 500ms ease;
  -moz-transition: -moz-transform 500ms ease;
  -ms-transition: -ms-transform 500ms ease;
  -o-transition: -o-transform 500ms ease;
  transition: transform 500ms ease; }
  .right-submenu * {
    -webkit-backface-visibility: hidden; }
  .right-submenu .back > a {
    background: #444;
    border-bottom: none;
    border-top: 1px solid #5e5e5e;
    color: #999999;
    font-weight: bold;
    padding: 0.3rem 0.9375rem;
    text-transform: uppercase;
    margin: 0; }
    .right-submenu .back > a:hover {
      background: #303030;
      border-bottom: none;
      border-top: 1px solid #5e5e5e; }
    .right-submenu .back > a:after {
      content: "\BB";
      margin-left: .5rem;
      display: inline; }
  .right-submenu.move-left, .right-submenu.offcanvas-overlap-left, .right-submenu.offcanvas-overlap {
    -webkit-transform: translate3d(0%, 0, 0);
    -moz-transform: translate3d(0%, 0, 0);
    -ms-transform: translate(0%, 0);
    -ms-transform: translate3d(0%, 0, 0);
    -o-transform: translate3d(0%, 0, 0);
    transform: translate3d(0%, 0, 0); }

ul.off-canvas-list li a {
  border-bottom: 1px solid #bbbbbb;
  color: #333;
  display: block;
  padding: 0.66667rem;
  transition: background 300ms ease; }

.product-info-heading {
  padding: 4px 20px 0px 12px;
  text-transform: uppercase;
  background-color: #cfd4e4;
  color: #111;
  font-weight: bold;
  margin: 0;
  line-height: 1.6666em;
  font-size: 16px;
  margin-bottom: 8px;
  margin-top: 8px; }

.product-collateral .row {
  margin: 0 auto;
  max-width: 98%;
  width: 100%; }

.product-info-heading2 {
  height: 37px;
  border: 0px;
  padding: 7px 15px 0px;
  background-color: transparent;
  background-repeat: no-repeat;
  background-image: url("../images/pdp_bar_900.png"); }

.product-img-box .product-image-gallery img {
  max-width: 100%;
  max-height: 750px;
  margin: 0 auto; }

.product-slider .bx-wrapper {
  position: relative;
  margin: 0 auto; }
  .product-slider .bx-wrapper .slides li a {
    width: 70px;
    display: block;
    margin: 0 auto; }
  .product-slider .bx-wrapper .bx-controls-direction .bx-prev {
    position: absolute;
    top: 12px;
    left: -10px; }
    .product-slider .bx-wrapper .bx-controls-direction .bx-prev:before {
      content: "\f104";
      font-family: FontAwesome;
      font-size: 30px; }
  .product-slider .bx-wrapper .bx-controls-direction .bx-next {
    position: absolute;
    top: 12px;
    right: -10px; }
    .product-slider .bx-wrapper .bx-controls-direction .bx-next:before {
      content: "\f105";
      font-family: FontAwesome;
      font-size: 30px; }

.product-collateral {
  clear: both; }

.add-to-cart .quantity i,
.add-to-cart-alt .quantity i {
  cursor: pointer; }

.add-to-cart .quantity input,
.add-to-cart-alt .quantity input {
  display: inline-block;
  width: 50px; }

.box-reviews .form-add .buttons-set .button, .box-reviews .form-add .buttons-set .top-cart .btn-cart, .top-cart .box-reviews .form-add .buttons-set .btn-cart,
.box-reviews .form-add .buttons-set .top-cart .btn-checkout, .top-cart .box-reviews .form-add .buttons-set .btn-checkout {
  float: right; }

@media only screen and (max-width: 40em) {
  #shopping-cart-table thead,
  #wishlist-table thead,
  #my-tags-table thead {
    display: none; }
  #shopping-cart-table tbody tr,
  #wishlist-table tbody tr,
  #my-tags-table tbody tr {
    position: relative;
    background: #FFFFFF;
    border-bottom: 1px solid #EFEFEF; }
  #shopping-cart-table tbody td,
  #wishlist-table tbody td,
  #my-tags-table tbody td {
    display: inline-block;
    text-align: left; }
  #shopping-cart-table tbody dl dt,
  #wishlist-table tbody dl dt,
  #my-tags-table tbody dl dt {
    display: inline-block;
    padding: 0 0 0 1em; }
  #shopping-cart-table tbody dl dd,
  #wishlist-table tbody dl dd,
  #my-tags-table tbody dl dd {
    display: inline-block;
    padding: 0 1em 0 0; }
  #my-orders-table,
  #my-downloadable-products-table,
  #my-reviews-table,
  #product_comparison {
    overflow-x: auto;
    display: block; } }

@media only screen and (min-width: 40.0625em) and (max-width: 64em) {
  #my-orders-table,
  #my-downloadable-products-table,
  #my-reviews-table,
  .cart-table-wrapper,
  .wishlist-table-wrapper,
  #product_comparison {
    overflow-x: auto;
    display: block; } }

@media only screen and (max-width: 64em) {
  #product-review-table {
    width: 100%; }
    #product-review-table th {
      font-weight: 200;
      padding: 0.3rem; } }

#my-tags-table {
  width: 100%; }
  #my-tags-table img {
    max-width: inherit; }

.wishlist-table-wrapper fieldset {
  padding: 0; }

.top-cart {
  padding: 1em;
  width: 220px; }
  .top-cart .right-off-canvas-toggle {
    text-align: left;
    display: block; }
  .top-cart .btn-remove {
    display: block; }
  .top-cart .price-total {
    margin: 1em 0;
    color: #43AC6A;
    text-align: center; }
  .top-cart .btn-checkout {
    float: right; }

.top-cart {
  padding: 1em;
  width: 220px; }

.top-cart .right-off-canvas-toggle {
  text-align: left;
  display: block; }

.top-cart .btn-remove {
  display: block; }

.top-cart .price-total {
  margin: 1em 0;
  color: #43AC6A;
  text-align: center; }

.top-cart .btn-checkout {
  float: right; }

.product-info-heading {
  padding: 4px 20px 0px 12px;
  text-transform: uppercase;
  background-color: #cfd4e4;
  color: #111;
  font-weight: bold;
  margin: 0;
  line-height: 1.6666em;
  font-size: 16px;
  margin-bottom: 8px;
  margin-top: 8px; }

.product-options-bottom {
  background-color: #f4f4f4;
  padding: 15px 20px;
  border: 1px solid #cccccc;
  border-top: 0;
  margin-bottom: 10px; }

.related-info {
  width: 100%;
  clear: both; }

.tab-bar .btn-cart {
  position: fixed;
  /* top: 2.5em; */
  right: 0;
  padding: 0.5em;
  margin-top: -0.5em;
  background: #008CBA;
  z-index: 5;
  max-height: 53px; }

.tab-bar .btn-cart span {
  background: #FFFFFF;
  border-radius: 50%;
  padding: 0 0.3em;
  position: relative;
  bottom: 7px; }

.tab-bar .btn-cart:before {
  content: "\f07a";
  font-family: FontAwesome;
  color: #FFFFFF;
  font-size: 20px;
  padding: 0 0.3em 0 0; }

@media only screen and (min-width: 40.0625em) {
  .header-container .tab-bar .btn-cart {
    top: 2.8em; } }

.footer-wrapper {
  background-image: url("../images/bg_footer-pattern.jpg"); }

.footer-wrapper .footer-actions-shadow {
  background-image: url("../images/bg_footer_shadow.png");
  background-repeat: repeat-y;
  background-position: top center; }

.footer-wrapper .footer-actions {
  width: 940px;
  margin: 0 auto;
  min-height: 185px; }

.footer-wrapper .footer-actions .footer-top-container {
  width: 900px;
  margin: 0 auto;
  clear: both; }

.footer-wrapper .footer-actions .footer-top-item {
  float: left;
  color: #ccc;
  min-height: 150px;
  text-align: left;
  padding: 22px 20px 0 10px;
  background-image: url("../images/ft_light.png");
  background-repeat: no-repeat;
  background-position: right -2px; }

.footer-wrapper .footer-actions .footer-top-item h3 {
  color: #64CCF9;
  font-size: 16px;
  margin-bottom: 15px; }

.footer-wrapper .footer-actions .footer-top-item span {
  font-size: 1.15em;
  margin-bottom: 9px;
  display: inline-block; }

.footer-wrapper .footer-actions .footer-top-item span a {
  color: #ccc; }

.footer-wrapper .footer-actions .footer-top-item span.detail {
  width: 100%;
  font-size: 1.05em; }

.footer-wrapper .footer-actions .footer-top-item span.privacy {
  height: 17px;
  line-height: 17px;
  padding-left: 19px;
  margin-top: 7px;
  background-image: url("../images/padlock.png");
  background-repeat: no-repeat;
  background-position: left 0px; }

.footer-wrapper .footer-actions .footer-top-item a.survey {
  width: 138px;
  height: 25px;
  display: inline-block;
  background-image: url("../images/btn_survey.png");
  text-decoration: none; }

.footer-wrapper .footer-actions .footer-top-item a.quote {
  width: 163px;
  height: 25px;
  margin: -3px 0 3px 0;
  display: inline-block;
  background-image: url("../images/btn_quote.png"); }

.footer-wrapper .footer-actions .footer-top-item a.footer-top-btn {
  min-width: 70px;
  height: 20px;
  padding: 4px 20px 0;
  margin: -3px 0 3px 0;
  display: inline-block;
  border-radius: 3px;
  color: #fff;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 12px;
  font-family: "Roboto_Black","verdana",sans-serif;
  background-color: #008CC8; }

.footer-wrapper .footer-actions .footer-top-item form {
  width: 100%;
  display: inline-block; }

.footer-wrapper .footer-actions .footer-top-item form .form-subscribe {
  width: 100%; }

.footer-wrapper .footer-actions .footer-top-item form .form-subscribe-header {
  display: none; }

.footer-wrapper .footer-actions .footer-top-item form input {
  width: 175px;
  height: 20px;
  line-height: 20px;
  border: 1px solid #333; }

.footer-wrapper .footer-actions .footer-top-item form button {
  width: 77px;
  height: 25px;
  margin: 0 15px 0 0;
  background-image: url("../images/btn_signup.png"); }

.footer-wrapper .footer-actions .footer-top-item form button span {
  display: none; }

.footer-wrapper .footer-actions .footer-top-item .social {
  overflow-x: hidden;
  min-height: 30px;
  max-width: 120px; }

.footer-wrapper .footer-actions .footer-top-item .social span {
  float: left;
  display: block; }

.footer-wrapper .footer-actions .footer-top-item .social span a {
  display: block;
  width: 28px;
  height: 28px;
  margin: 0 14px 5px 0;
  text-indent: -9999px; }

.footer-wrapper .footer-actions .footer-top-item .social span .yt {
  background-image: url("../images/social.png");
  background-position: 0px 0px;
  margin-right: 1px; }

.footer-wrapper .footer-actions .footer-top-item .social span .tw {
  background-image: url("../images/social.png");
  background-position: -40px 0px; }

.footer-wrapper .footer-actions .footer-top-item .social span .fb {
  background-image: url("../images/social.png");
  background-position: 0px -41px; }

.footer-wrapper .footer-actions .footer-top-item .social span .ln {
  background-image: url("../images/social.png");
  background-position: -40px -40px; }

.footer-wrapper .footer-actions .block1 {
  width: 120px; }

.footer-wrapper .footer-actions .block2 {
  width: 280px; }

.footer-wrapper .footer-actions .block3 {
  width: 170px; }

.footer-wrapper .footer-actions .block3 span {
  width: 92%; }

.footer-wrapper .footer-actions .block4 {
  width: 230px; }

.footer-wrapper .footer-actions .last {
  padding-right: 0px;
  background-image: none; }

.footer-wrapper .footer-cms {
  background-color: #DADBDD;
  padding-bottom: 30px; }

.footer-wrapper .footer-cms .footer-container, .footer-wrapper .footer-cms .copyright {
  width: 940px;
  margin: 0 auto;
  background: none;
  border: none;
  font-size: 1.07em;
  text-align: left; }

.footer-wrapper .footer-cms .footer-container .footer, .footer-wrapper .footer-cms .copyright .footer {
  padding-left: 1.3%;
  padding-bottom: 10px;
  background-image: none; }

.footer-wrapper .footer-cms .footer-container .footer form, .footer-wrapper .footer-cms .copyright .footer form {
  display: none; }

.footer-wrapper .footer-cms .footer-container .footer .collapsible, .footer-wrapper .footer-cms .copyright .footer .collapsible {
  width: auto;
  float: left;
  padding: 0 4.5% 0 2%; }

.footer-wrapper .footer-cms .footer-container .footer .collapsible .block-title, .footer-wrapper .footer-cms .copyright .footer .collapsible .block-title {
  text-transform: uppercase;
  font-size: 12px;
  color: #111;
  padding-bottom: 5px; }

.footer-wrapper .footer-cms .footer-container .footer .collapsible ul, .footer-wrapper .footer-cms .copyright .footer .collapsible ul {
  width: auto;
  margin: 0; }

.footer-wrapper .footer-cms .footer-container .footer .collapsible ul li, .footer-wrapper .footer-cms .copyright .footer .collapsible ul li {
  margin-bottom: 4px; }

.footer-wrapper .footer-cms .footer-container .footer .collapsible ul li a, .footer-wrapper .footer-cms .copyright .footer .collapsible ul li a {
  color: #333;
  font-size: 12px;
  line-height: 13px;
  text-transform: capitalize; }

.footer-wrapper .footer-cms .copyright {
  display: block;
  padding-left: 35px; }

.footer-wrapper .footer-cms .copyright span {
  display: inline-block;
  margin: 4px 0 0 20px; }

.footer-wrapper .footer-cms .copyright span p {
  float: right; }

.footer-wrapper .footer-cms .copyright span span {
  margin: 0 0 0 9px;
  padding-left: 9px;
  border-left: 1px solid #777; }

/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fZ2xvYmFsLnNjc3MiLCJfc2V0dGluZ3Muc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYWNjb3JkaW9uLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL19mdW5jdGlvbnMuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fYmxvY2stZ3JpZC5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19icmVhZGNydW1icy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19idXR0b25zLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Ryb3Bkb3duLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2Ryb3Bkb3duLWJ1dHRvbnMuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvZm91bmRhdGlvbi9zY3NzL2ZvdW5kYXRpb24vY29tcG9uZW50cy9fZmxleC12aWRlby5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19mb3Jtcy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19ncmlkLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2ljb24tYmFyLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2lubGluZS1saXN0cy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19qb3lyaWRlLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX2xhYmVscy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19tYWdlbGxhbi5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL190eXBlLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX29mZmNhbnZhcy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19vcmJpdC5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19wYWdpbmF0aW9uLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3BhbmVscy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19wcmljaW5nLXRhYmxlcy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19wcm9ncmVzcy1iYXJzLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3JldmVhbC5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19zaWRlLW5hdi5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL19zdWItbmF2LnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RhYmxlcy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL190YWJzLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3RodW1icy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL190b29sdGlwcy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9jb21wb25lbnRzL190b3AtYmFyLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2ZvdW5kYXRpb24vc2Nzcy9mb3VuZGF0aW9uL2NvbXBvbmVudHMvX3Zpc2liaWxpdHkuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvY29tcG9uZW50cy1mb250LWF3ZXNvbWUvc2Nzcy9mb250LWF3ZXNvbWUuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvY29tcG9uZW50cy1mb250LWF3ZXNvbWUvc2Nzcy9fcGF0aC5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9jb21wb25lbnRzLWZvbnQtYXdlc29tZS9zY3NzL19jb3JlLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2NvbXBvbmVudHMtZm9udC1hd2Vzb21lL3Njc3MvX2xhcmdlci5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9jb21wb25lbnRzLWZvbnQtYXdlc29tZS9zY3NzL19maXhlZC13aWR0aC5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9jb21wb25lbnRzLWZvbnQtYXdlc29tZS9zY3NzL19saXN0LnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2NvbXBvbmVudHMtZm9udC1hd2Vzb21lL3Njc3MvX3ZhcmlhYmxlcy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9jb21wb25lbnRzLWZvbnQtYXdlc29tZS9zY3NzL19ib3JkZXJlZC1wdWxsZWQuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvY29tcG9uZW50cy1mb250LWF3ZXNvbWUvc2Nzcy9fYW5pbWF0ZWQuc2NzcyIsIi4uLy4uL2Jvd2VyX2NvbXBvbmVudHMvY29tcG9uZW50cy1mb250LWF3ZXNvbWUvc2Nzcy9fcm90YXRlZC1mbGlwcGVkLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2NvbXBvbmVudHMtZm9udC1hd2Vzb21lL3Njc3MvX21peGlucy5zY3NzIiwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9jb21wb25lbnRzLWZvbnQtYXdlc29tZS9zY3NzL19zdGFja2VkLnNjc3MiLCIuLi8uLi9ib3dlcl9jb21wb25lbnRzL2NvbXBvbmVudHMtZm9udC1hd2Vzb21lL3Njc3MvX2ljb25zLnNjc3MiLCJjdXN0b20vX2dyaWQuc2NzcyIsImN1c3RvbS9fYWNjb3VudC5zY3NzIiwiY3VzdG9tL19hbGVydHMuc2NzcyIsImN1c3RvbS9fYnJlYWRjcnVtYnMuc2NzcyIsImN1c3RvbS9fYnJvd3Nlci5zY3NzIiwiY3VzdG9tL19idXR0b25zLnNjc3MiLCJjdXN0b20vX2NhcnQuc2NzcyIsImN1c3RvbS9fY2F0YWxvZy5zY3NzIiwiY3VzdG9tL19jaGVja291dC5zY3NzIiwiY3VzdG9tL19jbXMuc2NzcyIsImN1c3RvbS9fZm9vdGVyLnNjc3MiLCJjdXN0b20vX2dsb2JhbHMuc2NzcyIsImN1c3RvbS9faGVhZGVyLnNjc3MiLCJjdXN0b20vX2ltZy5zY3NzIiwiY3VzdG9tL19sYWJlbHMuc2NzcyIsImN1c3RvbS9fb2ZmY2FudmFzLnNjc3MiLCJjdXN0b20vX3Byb2R1Y3Quc2NzcyIsImN1c3RvbS9fdGFibGVzLnNjc3MiLCJjdXN0b20vX3RvcC1jYXJ0LnNjc3MiLCJzdHlsZXMuc2NzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBMldRLElBQUksbUJBQW1CLENBQUg7RUFDdEIsV0FBVyxFQUFFLFNBQVUsR0FEQTs7QUFJckIsSUFBSSxvQkFBb0IsQ0FBSDtFQUN2QixXQUFXLEVBQUUsZUFBRztFQUNoQixLQUFLLEVBakVNLENBQUMsR0ErRFk7O0FBS3RCLElBQUkseUJBQXlCLENBQUg7RUFDNUIsV0FBVyxFQUFFLHFDQUFHO0VBQ2hCLEtBQUssRUF0RU0sQ0FBQyxHQW9FaUI7O0FBSzNCLElBQUkscUJBQXFCLENBQUg7RUFDeEIsV0FBVyxFQUFFLHlDQUFHO0VBQ2hCLEtBQUssRUExRU0sU0FBaUIsR0F3RUg7O0FBS3ZCLElBQUksMEJBQTBCLENBQUg7RUFDN0IsV0FBVyxFQUFFLDhEQUFHO0VBQ2hCLEtBQUssRUEvRU0sU0FBaUIsR0E2RUU7O0FBSzVCLElBQUksb0JBQW9CLENBQUg7RUFDdkIsV0FBVyxFQUFFLHlDQUFHO0VBQ2hCLEtBQUssRUFuRk0sU0FBa0IsR0FpRkw7O0FBS3RCLElBQUkseUJBQXlCLENBQUg7RUFDNUIsV0FBVyxFQUFFLDhEQUFHO0VBQ2hCLEtBQUssRUF4Rk0sU0FBa0IsR0FzRkE7O0FBSzNCLElBQUkscUJBQXFCLENBQUg7RUFDeEIsV0FBVyxFQUFFLHlDQUFHO0VBQ2hCLEtBQUssRUE1Rk0sU0FBaUIsR0EwRkg7O0FBS3ZCLElBQUksMEJBQTBCLENBQUg7RUFDN0IsV0FBVyxF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QVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBNUM7RUFBQyxLQUFLLEVBQUMsS0FBTSxHQUFaOztBQUEwRCxlQUFlLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUE1QztFQUFDLE1BQU0sRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHO0VBQUMsWUFBWSxFQUFDLEdBQUk7RUFBQyxXQUFXLEVBQUMsY0FBZSxHQUE5RCIsImZpbGUiOiJzdHlsZXMuY3NzIiwic291cmNlc0NvbnRlbnQiOlsiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnLi4vZnVuY3Rpb25zJztcbi8vXG4vLyBGb3VuZGF0aW9uIFZhcmlhYmxlc1xuLy9cblxuLy8gRGF0YSBhdHRyaWJ1dGUgbmFtZXNwYWNlXG4vLyBzdHlsZXMgZ2V0IGFwcGxpZWQgdG8gW2RhdGEtbXlzaXRlLXBsdWdpbl0sIGV0Y1xuJG5hbWVzcGFjZTogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFRoZSBkZWZhdWx0IGZvbnQtc2l6ZSBpcyBzZXQgdG8gMTAwJSBvZiB0aGUgYnJvd3NlciBzdHlsZSBzaGVldCAodXN1YWxseSAxNnB4KVxuLy8gZm9yIGNvbXBhdGliaWxpdHkgd2l0aCBicm93c2VyLWJhc2VkIHRleHQgem9vbSBvciB1c2VyLXNldCBkZWZhdWx0cy5cblxuLy8gU2luY2UgdGhlIHR5cGljYWwgZGVmYXVsdCBicm93c2VyIGZvbnQtc2l6ZSBpcyAxNnB4LCB0aGF0IG1ha2VzIHRoZSBjYWxjdWxhdGlvbiBmb3IgZ3JpZCBzaXplLlxuLy8gSWYgeW91IHdhbnQgeW91ciBiYXNlIGZvbnQtc2l6ZSB0byBiZSBkaWZmZXJlbnQgYW5kIG5vdCBoYXZlIGl0IGFmZmVjdCB0aGUgZ3JpZCBicmVha3BvaW50cyxcbi8vIHNldCAkcmVtLWJhc2UgdG8gJGJhc2UtZm9udC1zaXplIGFuZCBtYWtlIHN1cmUgJGJhc2UtZm9udC1zaXplIGlzIGEgcHggdmFsdWUuXG4kYmFzZS1mb250LXNpemU6IDEwMCUgIWRlZmF1bHQ7XG5cbi8vICRiYXNlLWxpbmUtaGVpZ2h0IGlzIDI0cHggd2hpbGUgJGJhc2UtZm9udC1zaXplIGlzIDE2cHhcbiRiYXNlLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG5cbi8vXG4vLyBHbG9iYWwgRm91bmRhdGlvbiBNaXhpbnNcbi8vXG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGJvcmRlciByYWRpdXMuXG4vLyAkcmFkaXVzIC0gRGVmYXVsdDogJGdsb2JhbC1yYWRpdXMgfHwgNHB4XG5AbWl4aW4gcmFkaXVzKCRyYWRpdXM6JGdsb2JhbC1yYWRpdXMpIHtcbiAgQGlmICRyYWRpdXMge1xuICAgIGJvcmRlci1yYWRpdXM6ICRyYWRpdXM7XG4gIH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSBlcXVhbCBzaWRlIGJvcmRlciByYWRpdXMgb24gZWxlbWVudHMuXG4vLyAkc2lkZSAtIE9wdGlvbnM6IGxlZnQsIHJpZ2h0LCB0b3AsIGJvdHRvbVxuQG1peGluIHNpZGUtcmFkaXVzKCRzaWRlLCAkcmFkaXVzOiRnbG9iYWwtcmFkaXVzKSB7XG4gIEBpZiAoJHNpZGUgPT0gbGVmdCBvciAkc2lkZSA9PSByaWdodCkge1xuICAgIC13ZWJraXQtYm9yZGVyLWJvdHRvbS0jeyRzaWRlfS1yYWRpdXM6ICRyYWRpdXM7XG4gICAgLXdlYmtpdC1ib3JkZXItdG9wLSN7JHNpZGV9LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItYm90dG9tLSN7JHNpZGV9LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItdG9wLSN7JHNpZGV9LXJhZGl1czogJHJhZGl1cztcbiAgfSBAZWxzZSB7XG4gICAgLXdlYmtpdC0jeyRzaWRlfS1sZWZ0LXJhZGl1czogJHJhZGl1cztcbiAgICAtd2Via2l0LSN7JHNpZGV9LXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgICBib3JkZXItI3skc2lkZX0tbGVmdC1yYWRpdXM6ICRyYWRpdXM7XG4gICAgYm9yZGVyLSN7JHNpZGV9LXJpZ2h0LXJhZGl1czogJHJhZGl1cztcbiAgfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgY2FuIGNvbnRyb2wgd2hldGhlciBvciBub3Qgd2UgaGF2ZSBpbnNldCBzaGFkb3dzIGVkZ2VzLlxuLy8gJGFjdGl2ZSAtIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXG5AbWl4aW4gaW5zZXQtc2hhZG93KCRhY3RpdmU6dHJ1ZSkge1xuICBib3gtc2hhZG93OiAkc2hpbnktZWRnZS1zaXplICRzaGlueS1lZGdlLWNvbG9yIGluc2V0O1xuXG4gIEBpZiAkYWN0aXZlIHsgJjphY3RpdmUge1xuICAgIGJveC1zaGFkb3c6ICRzaGlueS1lZGdlLXNpemUgJHNoaW55LWVkZ2UtYWN0aXZlLWNvbG9yIGluc2V0OyB9IH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCB0cmFuc2l0aW9ucyB0byBlbGVtZW50c1xuLy8gJHByb3BlcnR5IC0gRGVmYXVsdDogYWxsLCBPcHRpb25zOiBodHRwOi8vd3d3LnczLm9yZy9UUi9jc3MzLXRyYW5zaXRpb25zLyNhbmltYXRhYmxlLXByb3BlcnRpZXNcbi8vICRzcGVlZCAtIERlZmF1bHQ6IDMwMG1zXG4vLyAkZWFzZSAtIERlZmF1bHQ6ZWFzZS1vdXQsIE9wdGlvbnM6IGh0dHA6Ly9jc3MtdHJpY2tzLmNvbS9hbG1hbmFjL3Byb3BlcnRpZXMvdC90cmFuc2l0aW9uLXRpbWluZy1mdW5jdGlvbi9cbkBtaXhpbiBzaW5nbGUtdHJhbnNpdGlvbigkcHJvcGVydHk6YWxsLCAkc3BlZWQ6MzAwbXMsICRlYXNlOmVhc2Utb3V0KSB7XG4gIHRyYW5zaXRpb246ICRwcm9wZXJ0eSAkc3BlZWQgJGVhc2U7XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBhZGQgYm94LXNpemluZyBhY3Jvc3MgYnJvd3NlciBwcmVmaXhlc1xuQG1peGluIGJveC1zaXppbmcoJHR5cGU6Ym9yZGVyLWJveCkge1xuICAtd2Via2l0LWJveC1zaXppbmc6ICR0eXBlOyAvLyBBbmRyb2lkIDwgMi4zLCBpT1MgPCA0XG4gICAgIC1tb3otYm94LXNpemluZzogJHR5cGU7XG4gICAgICAgICAgYm94LXNpemluZzogJHR5cGU7IC8vIENocm9tZSwgSUUgOCssIE9wZXJhLCBTYWZhcmkgNS4xXG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgaXNvc2NlbGVzIHRyaWFuZ2xlc1xuLy8gJHRyaWFuZ2xlLXNpemUgLSBVc2VkIHRvIHNldCBib3JkZXItc2l6ZS4gTm8gZGVmYXVsdCwgc2V0IGEgcHggb3IgZW0gc2l6ZS5cbi8vICR0cmlhbmdsZS1jb2xvciAtIFVzZWQgdG8gc2V0IGJvcmRlci1jb2xvciB3aGljaCBtYWtlcyB1cCB0cmlhbmdsZS4gTm8gZGVmYXVsdFxuLy8gJHRyaWFuZ2xlLWRpcmVjdGlvbiAtIFVzZWQgdG8gZGV0ZXJtaW5lIHdoaWNoIGRpcmVjdGlvbiB0cmlhbmdsZSBwb2ludHMuIE9wdGlvbnM6IHRvcCwgYm90dG9tLCBsZWZ0LCByaWdodFxuQG1peGluIGNzcy10cmlhbmdsZSgkdHJpYW5nbGUtc2l6ZSwgJHRyaWFuZ2xlLWNvbG9yLCAkdHJpYW5nbGUtZGlyZWN0aW9uKSB7XG4gIGJvcmRlcjogaW5zZXQgJHRyaWFuZ2xlLXNpemU7XG4gIGNvbnRlbnQ6IFwiXCI7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBoZWlnaHQ6IDA7XG4gIHdpZHRoOiAwO1xuICBAaWYgKCR0cmlhbmdsZS1kaXJlY3Rpb24gPT0gdG9wKSB7XG4gICAgYm9yZGVyLWNvbG9yOiAkdHJpYW5nbGUtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgYm9yZGVyLXRvcC1zdHlsZTogc29saWQ7XG4gIH1cbiAgQGlmICgkdHJpYW5nbGUtZGlyZWN0aW9uID09IGJvdHRvbSkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSBsZWZ0KSB7XG4gICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdHJpYW5nbGUtY29sb3I7XG4gICAgYm9yZGVyLWxlZnQtc3R5bGU6IHNvbGlkO1xuICB9XG4gIEBpZiAoJHRyaWFuZ2xlLWRpcmVjdGlvbiA9PSByaWdodCkge1xuICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgJHRyaWFuZ2xlLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgIGJvcmRlci1yaWdodC1zdHlsZTogc29saWQ7XG4gIH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGNyZWF0ZSB0aGUgaWNvbiB3aXRoIHRocmVlIGxpbmVzIGFrYSB0aGUgaGFtYnVyZ2VyIGljb24sIHRoZSBtZW51LWljb24gb3IgdGhlIG5hdmljb25cbi8vICR3aWR0aCAtIFdpZHRoIG9mIGhhbWJ1cmdlciBpY29uIGluIHJlbVxuLy8gJGxlZnQgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIGhvcml6b250YWxseSB8fCBleHBsaWNpdGx5IHNldCB2YWx1ZSBpbiByZW1cbi8vICR0b3AgLSBJZiBmYWxzZSwgaWNvbiB3aWxsIGJlIGNlbnRlcmVkIHZlcnRpY2FsbHkgfHwgZXhwbGljaXRseSBzZXQgdmFsdWUgaW4gcmVtXG4vLyAkdGhpY2tuZXNzIC0gdGhpY2tuZXNzIG9mIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHhcbi8vICRnYXAgLSBzcGFjaW5nIGJldHdlZW4gdGhlIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHhcbi8vICRjb2xvciAtIGljb24gY29sb3Jcbi8vICRob3Zlci1jb2xvciAtIGljb24gY29sb3IgZHVyaW5nIGhvdmVyXG4vLyAkb2ZmY2FudmFzIC0gU2V0IHRvIHRydWUgb2YgQGluY2x1ZGUgaW4gb2ZmY2FudmFzXG5AbWl4aW4gaGFtYnVyZ2VyKCR3aWR0aCwgJGxlZnQsICR0b3AsICR0aGlja25lc3MsICRnYXAsICRjb2xvciwgJGhvdmVyLWNvbG9yLCAkb2ZmY2FudmFzKSB7XG4gIHNwYW46OmFmdGVyIHtcbiAgICBjb250ZW50OiBcIlwiO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGhlaWdodDogMDtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG5cbiAgICBAaWYgJG9mZmNhbnZhcyB7XG4gICAgICBAaWYgJHRvcCB7XG4gICAgICAgIHRvcDogJHRvcDtcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIG1hcmdpbi10b3A6ICgtJHdpZHRoLzIpO1xuICAgICAgfVxuICAgICAgQGlmICRsZWZ0IHtcbiAgICAgICAgbGVmdDogJGxlZnQ7XG4gICAgICB9XG4gICAgICBAZWxzZSB7XG4gICAgICAgIGxlZnQ6ICgkdGFiYmFyLW1lbnUtaWNvbi13aWR0aCAtICR3aWR0aCkvMjtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgbWFyZ2luLXRvcDogLSgkd2lkdGgvMik7XG4gICAgICB0b3A6IDUwJTtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgIH1cblxuICAgIGJveC1zaGFkb3c6XG4gICAgICAwIDAgMCAkdGhpY2tuZXNzICRjb2xvcixcbiAgICAgIDAgJGdhcCArICR0aGlja25lc3MgMCAkdGhpY2tuZXNzICRjb2xvcixcbiAgICAgIDAgKDIgKiAkZ2FwICsgMiokdGhpY2tuZXNzKSAwICR0aGlja25lc3MgJGNvbG9yO1xuICAgIHdpZHRoOiAkd2lkdGg7XG4gIH1cbiAgc3Bhbjpob3ZlcjphZnRlciB7XG4gICAgYm94LXNoYWRvdzpcbiAgICAgIDAgMCAwICR0aGlja25lc3MgJGhvdmVyLWNvbG9yLFxuICAgICAgMCAkZ2FwICsgJHRoaWNrbmVzcyAwICR0aGlja25lc3MgJGhvdmVyLWNvbG9yLFxuICAgICAgMCAoMiAqICRnYXAgKyAyKiR0aGlja25lc3MpIDAgJHRoaWNrbmVzcyAkaG92ZXItY29sb3I7XG4gIH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgdG8gZG8gY2xlYXIgZmxvYXRzXG5AbWl4aW4gY2xlYXJmaXgge1xuICAmOmJlZm9yZSwgJjphZnRlciB7IGNvbnRlbnQ6IFwiIFwiOyBkaXNwbGF5OiB0YWJsZTsgfVxuICAmOmFmdGVyIHsgY2xlYXI6IGJvdGg7IH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIGFkZCBhIGdsb3dpbmcgZWZmZWN0IHRvIGJsb2NrIGVsZW1lbnRzXG4vLyAkc2VsZWN0b3IgLSBVc2VkIGZvciBzZWxlY3RvciBzdGF0ZS4gRGVmYXVsdDogZm9jdXMsIE9wdGlvbnM6IGhvdmVyLCBhY3RpdmUsIHZpc2l0ZWRcbi8vICRmYWRlLXRpbWUgLSBEZWZhdWx0OiAzMDBtc1xuLy8gJGdsb3dpbmctZWZmZWN0LWNvbG9yIC0gRGVmYXVsdDogZmFkZS1vdXQoJHByaW1hcnktY29sb3IsIC4yNSlcbkBtaXhpbiBibG9jay1nbG93aW5nLWVmZmVjdCgkc2VsZWN0b3I6Zm9jdXMsICRmYWRlLXRpbWU6MzAwbXMsICRnbG93aW5nLWVmZmVjdC1jb2xvcjpmYWRlLW91dCgkcHJpbWFyeS1jb2xvciwgLjI1KSkge1xuICB0cmFuc2l0aW9uOiBib3gtc2hhZG93ICRmYWRlLXRpbWUsIGJvcmRlci1jb2xvciAkZmFkZS10aW1lIGVhc2UtaW4tb3V0O1xuXG4gICY6I3skc2VsZWN0b3J9IHtcbiAgICBib3JkZXItY29sb3I6ICRnbG93aW5nLWVmZmVjdC1jb2xvcjtcbiAgICBib3gtc2hhZG93OiAwIDAgNXB4ICRnbG93aW5nLWVmZmVjdC1jb2xvcjtcbiAgfVxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gdHJhbnNsYXRlIGVsZW1lbnRzIGluIDJEXG4vLyAkaG9yaXpvbnRhbDogRGVmYXVsdDogMFxuLy8gJHZlcnRpY2FsOiBEZWZhdWx0OiAwXG5AbWl4aW4gdHJhbnNsYXRlMmQoJGhvcml6b250YWw6MCwgJHZlcnRpY2FsOjApIHtcbiAgdHJhbnNmb3JtOiB0cmFuc2xhdGUoJGhvcml6b250YWwsICR2ZXJ0aWNhbClcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuLCBidXQgYWNjZXNzaWJsZS5cbi8vIEBzZWUgaHR0cDovL3Nub29rLmNhL2FyY2hpdmVzL2h0bWxfYW5kX2Nzcy9oaWRpbmctY29udGVudC1mb3ItYWNjZXNzaWJpbGl0eVxuQG1peGluIGVsZW1lbnQtaW52aXNpYmxlIHtcbiAgY2xpcDogcmVjdCgxcHgsIDFweCwgMXB4LCAxcHgpO1xuICBoZWlnaHQ6IDFweDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7XG4gIHdpZHRoOiAxcHg7XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBUdXJucyBvZmYgdGhlIGVsZW1lbnQtaW52aXNpYmxlIGVmZmVjdC5cbkBtaXhpbiBlbGVtZW50LWludmlzaWJsZS1vZmYge1xuICBwb3NpdGlvbjogc3RhdGljICFpbXBvcnRhbnQ7XG4gIGhlaWdodDogYXV0bztcbiAgd2lkdGg6IGF1dG87XG4gIG92ZXJmbG93OiB2aXNpYmxlO1xuICBjbGlwOiBhdXRvO1xufVxuXG4kd2hpdGUgICAgICAgICA6ICNGRkZGRkYgIWRlZmF1bHQ7XG4kZ2hvc3QgICAgICAgICA6ICNGQUZBRkEgIWRlZmF1bHQ7XG4kc25vdyAgICAgICAgICA6ICNGOUY5RjkgIWRlZmF1bHQ7XG4kdmFwb3IgICAgICAgICA6ICNGNkY2RjYgIWRlZmF1bHQ7XG4kd2hpdGUtc21va2UgICA6ICNGNUY1RjUgIWRlZmF1bHQ7XG4kc2lsdmVyICAgICAgICA6ICNFRkVGRUYgIWRlZmF1bHQ7XG4kc21va2UgICAgICAgICA6ICNFRUVFRUUgIWRlZmF1bHQ7XG4kZ2FpbnNib3JvICAgICA6ICNEREREREQgIWRlZmF1bHQ7XG4kaXJvbiAgICAgICAgICA6ICNDQ0NDQ0MgIWRlZmF1bHQ7XG4kYmFzZSAgICAgICAgICA6ICNBQUFBQUEgIWRlZmF1bHQ7XG4kYWx1bWludW0gICAgICA6ICM5OTk5OTkgIWRlZmF1bHQ7XG4kanVtYm8gICAgICAgICA6ICM4ODg4ODggIWRlZmF1bHQ7XG4kbW9uc29vbiAgICAgICA6ICM3Nzc3NzcgIWRlZmF1bHQ7XG4kc3RlZWwgICAgICAgICA6ICM2NjY2NjYgIWRlZmF1bHQ7XG4kY2hhcmNvYWwgICAgICA6ICM1NTU1NTUgIWRlZmF1bHQ7XG4kdHVhdGFyYSAgICAgICA6ICM0NDQ0NDQgIWRlZmF1bHQ7XG4kb2lsICAgICAgICAgICA6ICMzMzMzMzMgIWRlZmF1bHQ7XG4kamV0ICAgICAgICAgICA6ICMyMjIyMjIgIWRlZmF1bHQ7XG4kYmxhY2sgICAgICAgICA6ICMwMDAwMDAgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSBhcyBkZWZhdWx0IGNvbG9ycyB0aHJvdWdob3V0XG4kcHJpbWFyeS1jb2xvcjogIzAwOENCQSAhZGVmYXVsdDsgICAvLyBib25kaS1ibHVlXG4kc2Vjb25kYXJ5LWNvbG9yOiAjZTdlN2U3ICFkZWZhdWx0OyAvLyB3aGl0ZS1saWxhY1xuJGFsZXJ0LWNvbG9yOiAjZjA0MTI0ICFkZWZhdWx0OyAgICAgLy8gY2lubmFiYXJcbiRzdWNjZXNzLWNvbG9yOiAjNDNBQzZBICFkZWZhdWx0OyAgIC8vIHNlYS1ncmVlblxuJHdhcm5pbmctY29sb3I6ICNmMDhhMjQgIWRlZmF1bHQ7ICAgLy8gY2Fycm90XG4kaW5mby1jb2xvcjogI2EwZDNlOCAhZGVmYXVsdDsgICAgICAvLyBjb3JuZmxvd2VyXG5cbi8vIFdlIHVzZSB0aGVzZSB0byBkZWZpbmUgZGVmYXVsdCBmb250IHN0YWNrc1xuJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWY6IFwiSGVsdmV0aWNhIE5ldWVcIiwgSGVsdmV0aWNhLCBSb2JvdG8sIEFyaWFsLCBzYW5zLXNlcmlmICFkZWZhdWx0O1xuJGZvbnQtZmFtaWx5LXNlcmlmOiBHZW9yZ2lhLCBDYW1icmlhLCBcIlRpbWVzIE5ldyBSb21hblwiLCBUaW1lcywgc2VyaWYgIWRlZmF1bHQ7XG4kZm9udC1mYW1pbHktbW9ub3NwYWNlOiBDb25zb2xhcywgXCJMaWJlcmF0aW9uIE1vbm9cIiwgQ291cmllciwgbW9ub3NwYWNlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gZGVmaW5lIGRlZmF1bHQgZm9udCB3ZWlnaHRzXG4kZm9udC13ZWlnaHQtbm9ybWFsOiBub3JtYWwgIWRlZmF1bHQ7XG4kZm9udC13ZWlnaHQtYm9sZDogYm9sZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmFyaW91cyBnbG9iYWwgc3R5bGVzXG4kYm9keS1iZzogI2ZmZiAhZGVmYXVsdDtcbiRib2R5LWZvbnQtY29sb3I6ICMyMjIgIWRlZmF1bHQ7XG4kYm9keS1mb250LWZhbWlseTogJGZvbnQtZmFtaWx5LXNhbnMtc2VyaWYgIWRlZmF1bHQ7XG4kYm9keS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRib2R5LWZvbnQtc3R5bGU6IG5vcm1hbCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBmb250LXNtb290aGluZ1xuJGZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBkaXJlY3Rpb24gc2V0dGluZ3NcbiR0ZXh0LWRpcmVjdGlvbjogbHRyICFkZWZhdWx0O1xuJGRlZmF1bHQtZmxvYXQ6IGxlZnQgIWRlZmF1bHQ7XG4kb3Bwb3NpdGUtZGlyZWN0aW9uOiByaWdodCAhZGVmYXVsdDtcbkBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gbHRyIHtcbiAgJGRlZmF1bHQtZmxvYXQ6IGxlZnQ7XG4gICRvcHBvc2l0ZS1kaXJlY3Rpb246IHJpZ2h0O1xufSBAZWxzZSB7XG4gICRkZWZhdWx0LWZsb2F0OiByaWdodDtcbiAgJG9wcG9zaXRlLWRpcmVjdGlvbjogbGVmdDtcbn1cblxuLy8gV2UgdXNlIHRoZXNlIHRvIG1ha2Ugc3VyZSBib3JkZXIgcmFkaXVzIG1hdGNoZXMgdW5sZXNzIHdlIHdhbnQgaXQgZGlmZmVyZW50LlxuJGdsb2JhbC1yYWRpdXM6IDNweCAhZGVmYXVsdDtcbiRnbG9iYWwtcm91bmRlZDogMTAwMHB4ICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBpbnNldCBzaGFkb3cgc2hpbnkgZWRnZXMgYW5kIGRlcHJlc3Npb25zLlxuJHNoaW55LWVkZ2Utc2l6ZTogMCAxcHggMCAhZGVmYXVsdDtcbiRzaGlueS1lZGdlLWNvbG9yOiByZ2JhKCNmZmYsIC41KSAhZGVmYXVsdDtcbiRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvcjogcmdiYSgjMDAwLCAuMikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgd2hldGhlciBvciBub3QgQ1NTIGNsYXNzZXMgY29tZSB0aHJvdWdoIGluIHRoZSBnZW0gZmlsZXMuXG4kaW5jbHVkZS1odG1sLWNsYXNzZXM6IHRydWUgIWRlZmF1bHQ7XG4kaW5jbHVkZS1wcmludC1zdHlsZXM6IHRydWUgIWRlZmF1bHQ7XG4kaW5jbHVkZS1qcy1tZXRhLXN0eWxlczogdHJ1ZSAhZGVmYXVsdDsgLy8gV2FybmluZyEgTWV0YSBzdHlsZXMgYXJlIGEgZGVwZW5kYW5jeSBvZiB0aGUgSmF2YXNjcmlwdC5cbiRpbmNsdWRlLWh0bWwtZ2xvYmFsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJGNvbHVtbi1ndXR0ZXI6IHJlbS1jYWxjKDMwKSAhZGVmYXVsdDtcblxuLy8gTWVkaWEgUXVlcnkgUmFuZ2VzXG4kc21hbGwtYnJlYWtwb2ludDogIGVtLWNhbGMoNjQwKSAgIWRlZmF1bHQ7XG4kbWVkaXVtLWJyZWFrcG9pbnQ6IGVtLWNhbGMoMTAyNCkgIWRlZmF1bHQ7XG4kbGFyZ2UtYnJlYWtwb2ludDogIGVtLWNhbGMoMTQ0MCkgIWRlZmF1bHQ7XG4keGxhcmdlLWJyZWFrcG9pbnQ6IGVtLWNhbGMoMTkyMCkgIWRlZmF1bHQ7XG5cbiRzbWFsbC1yYW5nZTogICAoMCwgJHNtYWxsLWJyZWFrcG9pbnQpICFkZWZhdWx0O1xuJG1lZGl1bS1yYW5nZTogICgkc21hbGwtYnJlYWtwb2ludCAgKyBlbS1jYWxjKDEpLCAkbWVkaXVtLWJyZWFrcG9pbnQpICFkZWZhdWx0O1xuJGxhcmdlLXJhbmdlOiAgICgkbWVkaXVtLWJyZWFrcG9pbnQgKyBlbS1jYWxjKDEpLCAkbGFyZ2UtYnJlYWtwb2ludCkgICFkZWZhdWx0O1xuJHhsYXJnZS1yYW5nZTogICgkbGFyZ2UtYnJlYWtwb2ludCAgKyBlbS1jYWxjKDEpLCAkeGxhcmdlLWJyZWFrcG9pbnQpICFkZWZhdWx0O1xuJHh4bGFyZ2UtcmFuZ2U6ICgkeGxhcmdlLWJyZWFrcG9pbnQgKyBlbS1jYWxjKDEpLCBlbS1jYWxjKDk5OTk5OTk5KSkgIWRlZmF1bHQ7XG5cbiRzY3JlZW46IFwib25seSBzY3JlZW5cIiAhZGVmYXVsdDtcblxuJGxhbmRzY2FwZTogXCIjeyRzY3JlZW59IGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcIiAhZGVmYXVsdDtcbiRwb3J0cmFpdDogXCIjeyRzY3JlZW59IGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KVwiICFkZWZhdWx0O1xuXG4kc21hbGwtdXA6ICRzY3JlZW4gIWRlZmF1bHQ7XG4kc21hbGwtb25seTogXCIjeyRzY3JlZW59IGFuZCAobWF4LXdpZHRoOiAje3VwcGVyLWJvdW5kKCRzbWFsbC1yYW5nZSl9KVwiICFkZWZhdWx0O1xuXG4kbWVkaXVtLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG4kbWVkaXVtLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG5cbiRsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG4kbGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG5cbiR4bGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcbiR4bGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIiAhZGVmYXVsdDtcblxuJHh4bGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG4keHhsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCIgIWRlZmF1bHQ7XG5cbiRyZXRpbmE6IChcbiAgXCIjeyRzY3JlZW59IGFuZCAoLXdlYmtpdC1taW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKVwiLFxuICBcIiN7JHNjcmVlbn0gYW5kIChtaW4tLW1vei1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpXCIsXG4gIFwiI3skc2NyZWVufSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSlcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLWRldmljZS1waXhlbC1yYXRpbzogMilcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLXJlc29sdXRpb246IDE5MmRwaSlcIixcbiAgXCIjeyRzY3JlZW59IGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KVwiXG4pO1xuXG4vLyBMZWdhY3lcbiRzbWFsbDogJG1lZGl1bS11cDtcbiRtZWRpdW06ICRtZWRpdW0tdXA7XG4kbGFyZ2U6ICRsYXJnZS11cDtcblxuXG4vL1dlIHVzZSB0aGlzIGFzIGN1cnNvcnMgdmFsdWVzIGZvciBlbmFibGluZyB0aGUgb3B0aW9uIG9mIGhhdmluZyBjdXN0b20gY3Vyc29ycyBpbiB0aGUgd2hvbGUgc2l0ZSdzIHN0eWxlc2hlZXRcbiRjdXJzb3ItYXV0by12YWx1ZTogYXV0byAhZGVmYXVsdDtcbiRjdXJzb3ItY3Jvc3NoYWlyLXZhbHVlOiBjcm9zc2hhaXIgIWRlZmF1bHQ7XG4kY3Vyc29yLWRlZmF1bHQtdmFsdWU6IGRlZmF1bHQgIWRlZmF1bHQ7XG4kY3Vyc29yLWRpc2FibGVkLXZhbHVlOiBub3QtYWxsb3dlZCAhZGVmYXVsdDtcbiRjdXJzb3ItcG9pbnRlci12YWx1ZTogcG9pbnRlciAhZGVmYXVsdDtcbiRjdXJzb3ItaGVscC12YWx1ZTogaGVscCAhZGVmYXVsdDtcbiRjdXJzb3ItdGV4dC12YWx1ZTogdGV4dCAhZGVmYXVsdDtcblxuXG5AaW5jbHVkZSBleHBvcnRzKFwiZ2xvYmFsXCIpIHtcblxuICAvLyBNZXRhIHN0eWxlcyBhcmUgYSBkZXBlbmRhbmN5IG9mIHRoZSBKYXZhc2NyaXB0LlxuICAvLyBVc2VkIHRvIHByb3ZpZGUgbWVkaWEgcXVlcnkgdmFsdWVzIGZvciBqYXZhc2NyaXB0IGNvbXBvbmVudHMuXG4gIC8vIEZvcndhcmQgc2xhc2ggcGxhY2VkIGFyb3VuZCBldmVyeXRoaW5nIHRvIGNvbnZpbmNlIFBoYW50b21KUyB0byByZWFkIHRoZSB2YWx1ZS5cblxuICBAaWYgJGluY2x1ZGUtanMtbWV0YS1zdHlsZXMge1xuXG4gICAgbWV0YS5mb3VuZGF0aW9uLXZlcnNpb24ge1xuICAgICAgZm9udC1mYW1pbHk6IFwiLzUuNS4yL1wiO1xuICAgIH1cblxuICAgIG1ldGEuZm91bmRhdGlvbi1tcS1zbWFsbCB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCRzbWFsbC11cCkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkc21hbGwtcmFuZ2UpO1xuICAgIH1cblxuICAgIG1ldGEuZm91bmRhdGlvbi1tcS1zbWFsbC1vbmx5IHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJHNtYWxsLW9ubHkpICsgXCIvXCI7XG4gICAgICB3aWR0aDogbG93ZXItYm91bmQoJHNtYWxsLXJhbmdlKTtcbiAgICB9XG5cbiAgICBtZXRhLmZvdW5kYXRpb24tbXEtbWVkaXVtIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJG1lZGl1bS11cCkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKTtcbiAgICB9XG5cbiAgICBtZXRhLmZvdW5kYXRpb24tbXEtbWVkaXVtLW9ubHkge1xuICAgICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkbWVkaXVtLW9ubHkpICsgXCIvXCI7XG4gICAgICB3aWR0aDogbG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLWxhcmdlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiBcIi9cIiArIHVucXVvdGUoJGxhcmdlLXVwKSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCRsYXJnZS1yYW5nZSk7XG4gICAgfVxuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLWxhcmdlLW9ubHkge1xuICAgICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkbGFyZ2Utb25seSkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkbGFyZ2UtcmFuZ2UpO1xuICAgIH1cblxuICAgIG1ldGEuZm91bmRhdGlvbi1tcS14bGFyZ2Uge1xuICAgICAgZm9udC1mYW1pbHk6IFwiL1wiICsgdW5xdW90ZSgkeGxhcmdlLXVwKSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpO1xuICAgIH1cblxuICAgIG1ldGEuZm91bmRhdGlvbi1tcS14bGFyZ2Utb25seSB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCR4bGFyZ2Utb25seSkgKyBcIi9cIjtcbiAgICAgIHdpZHRoOiBsb3dlci1ib3VuZCgkeGxhcmdlLXJhbmdlKTtcbiAgICB9XG5cbiAgICBtZXRhLmZvdW5kYXRpb24tbXEteHhsYXJnZSB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCR4eGxhcmdlLXVwKSArIFwiL1wiO1xuICAgICAgd2lkdGg6IGxvd2VyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKTtcbiAgICB9XG5cbiAgICBtZXRhLmZvdW5kYXRpb24tZGF0YS1hdHRyaWJ1dGUtbmFtZXNwYWNlIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAjeyRuYW1lc3BhY2V9O1xuICAgIH1cblxuICB9XG5cbiAgQGlmICRpbmNsdWRlLWh0bWwtZ2xvYmFsLWNsYXNzZXMge1xuXG4gICAgLy8gTXVzdCBiZSAxMDAlIGZvciBvZmYgY2FudmFzIHRvIHdvcmtcbiAgICBodG1sLCBib2R5IHsgaGVpZ2h0OiAxMDAlOyB9XG5cbiAgICAvLyBTZXQgYm94LXNpemluZyBnbG9iYWxseSB0byBoYW5kbGUgcGFkZGluZyBhbmQgYm9yZGVyIHdpZHRoc1xuICAgIGh0bWwge1xuICAgICAgYm94LXNpemluZzogYm9yZGVyLWJveDtcbiAgICB9XG4gICAgKixcbiAgICAqOmJlZm9yZSxcbiAgICAqOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGJveC1zaXppbmcoaW5oZXJpdCk7XG4gICAgfVxuXG4gICAgaHRtbCxcbiAgICBib2R5IHsgZm9udC1zaXplOiAkYmFzZS1mb250LXNpemU7IH1cblxuICAgIC8vIERlZmF1bHQgYm9keSBzdHlsZXNcbiAgICBib2R5IHtcbiAgICAgIGJhY2tncm91bmQ6ICRib2R5LWJnO1xuICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItYXV0by12YWx1ZTtcbiAgICAgIGZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc3R5bGU6ICRib2R5LWZvbnQtc3R5bGU7XG4gICAgICBmb250LXdlaWdodDogJGJvZHktZm9udC13ZWlnaHQ7XG4gICAgICBsaW5lLWhlaWdodDogJGJhc2UtbGluZS1oZWlnaHQ7IC8vIFNldCB0byAkYmFzZS1saW5lLWhlaWdodCB0byB0YWtlIG9uIGJyb3dzZXIgZGVmYXVsdCBvZiAxNTAlXG4gICAgICBtYXJnaW46IDA7XG4gICAgICBwYWRkaW5nOiAwO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIH1cblxuICBhOmhvdmVyIHsgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7IH1cblxuICAgIC8vIEdyaWQgRGVmYXVsdHMgdG8gZ2V0IGltYWdlcyBhbmQgZW1iZWRzIHRvIHdvcmsgcHJvcGVybHlcbiAgICBpbWcgeyBtYXgtd2lkdGg6IDEwMCU7IGhlaWdodDogYXV0bzsgfVxuXG4gICAgaW1nIHsgLW1zLWludGVycG9sYXRpb24tbW9kZTogYmljdWJpYzsgfVxuXG4gICAgI21hcF9jYW52YXMsXG4gICAgLm1hcF9jYW52YXMsXG4gICAgLm1xYS1kaXNwbGF5IHtcbiAgICAgIGltZyxcbiAgICAgIGVtYmVkLFxuICAgICAgb2JqZWN0IHsgbWF4LXdpZHRoOiBub25lICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLy8gTWlzY2VsbGFuZW91cyB1c2VmdWwgSFRNTCBjbGFzc2VzXG4gICAgLmxlZnQgeyBmbG9hdDogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgLnJpZ2h0IHsgZmxvYXQ6IHJpZ2h0ICFpbXBvcnRhbnQ7IH1cbiAgICAuY2xlYXJmaXggeyBAaW5jbHVkZSBjbGVhcmZpeDsgfVxuXG4gICAgLy8gSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVyc1xuICAgIC5oaWRlIHtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgfVxuXG4gICAgLy8gSGlkZSB2aXN1YWxseSBhbmQgZnJvbSBzY3JlZW4gcmVhZGVycywgYnV0IG1haW50YWluIGxheW91dFxuICAgIC5pbnZpc2libGUgeyB2aXNpYmlsaXR5OiBoaWRkZW47IH1cblxuICAgIC8vIEZvbnQgc21vb3RoaW5nXG4gICAgLy8gQW50aWFsaWFzZWQgZm9udCBzbW9vdGhpbmcgd29ya3MgYmVzdCBmb3IgbGlnaHQgdGV4dCBvbiBhIGRhcmsgYmFja2dyb3VuZC5cbiAgICAvLyBBcHBseSB0byBzaW5nbGUgZWxlbWVudHMgaW5zdGVhZCBvZiBnbG9iYWxseSB0byBib2R5LlxuICAgIC8vIE5vdGUgdGhpcyBvbmx5IGFwcGxpZXMgdG8gd2Via2l0LWJhc2VkIGRlc2t0b3AgYnJvd3NlcnMgYW5kIEZpcmVmb3ggMjUgKGFuZCBsYXRlcikgb24gdGhlIE1hYy5cbiAgICAuYW50aWFsaWFzZWQgeyAtd2Via2l0LWZvbnQtc21vb3RoaW5nOiBhbnRpYWxpYXNlZDsgLW1vei1vc3gtZm9udC1zbW9vdGhpbmc6IGdyYXlzY2FsZTsgfVxuXG4gICAgLy8gR2V0IHJpZCBvZiBnYXAgdW5kZXIgaW1hZ2VzIGJ5IG1ha2luZyB0aGVtIGRpc3BsYXk6IGlubGluZS1ibG9jazsgYnkgZGVmYXVsdFxuICAgIGltZyB7XG4gICAgICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gICAgICB2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuICAgIH1cblxuICAgIC8vXG4gICAgLy8gR2xvYmFsIHJlc2V0cyBmb3IgZm9ybXNcbiAgICAvL1xuXG4gICAgLy8gTWFrZSBzdXJlIHRleHRhcmVhIHRha2VzIG9uIGhlaWdodCBhdXRvbWF0aWNhbGx5XG4gICAgdGV4dGFyZWEgeyBoZWlnaHQ6IGF1dG87IG1pbi1oZWlnaHQ6IDUwcHg7IH1cblxuICAgIC8vIE1ha2Ugc2VsZWN0IGVsZW1lbnRzIDEwMCUgd2lkdGggYnkgZGVmYXVsdFxuICAgIHNlbGVjdCB7IHdpZHRoOiAxMDAlOyB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbi8vXG5cbi8vIFRhYmxlIG9mIENvbnRlbnRzXG4vLyBGb3VuZGF0aW9uIFNldHRpbmdzXG4vL1xuLy8gYS4gQmFzZVxuLy8gYi4gR3JpZFxuLy8gYy4gR2xvYmFsXG4vLyBkLiBNZWRpYSBRdWVyeSBSYW5nZXNcbi8vIGUuIFR5cG9ncmFwaHlcbi8vIDAxLiBBY2NvcmRpb25cbi8vIDAyLiBBbGVydCBCb3hlc1xuLy8gMDMuIEJsb2NrIEdyaWRcbi8vIDA0LiBCcmVhZGNydW1ic1xuLy8gMDUuIEJ1dHRvbnNcbi8vIDA2LiBCdXR0b24gR3JvdXBzXG4vLyAwNy4gQ2xlYXJpbmdcbi8vIDA4LiBEcm9wZG93blxuLy8gMDkuIERyb3Bkb3duIEJ1dHRvbnNcbi8vIDEwLiBGbGV4IFZpZGVvXG4vLyAxMS4gRm9ybXNcbi8vIDEyLiBJY29uIEJhclxuLy8gMTMuIElubGluZSBMaXN0c1xuLy8gMTQuIEpveXJpZGVcbi8vIDE1LiBLZXlzdHJva2VzXG4vLyAxNi4gTGFiZWxzXG4vLyAxNy4gTWFnZWxsYW5cbi8vIDE4LiBPZmYtY2FudmFzXG4vLyAxOS4gT3JiaXRcbi8vIDIwLiBQYWdpbmF0aW9uXG4vLyAyMS4gUGFuZWxzXG4vLyAyMi4gUHJpY2luZyBUYWJsZXNcbi8vIDIzLiBQcm9ncmVzcyBCYXJcbi8vIDI0LiBSYW5nZSBTbGlkZXJcbi8vIDI1LiBSZXZlYWxcbi8vIDI2LiBTaWRlIE5hdlxuLy8gMjcuIFNwbGl0IEJ1dHRvbnNcbi8vIDI4LiBTdWIgTmF2XG4vLyAyOS4gU3dpdGNoXG4vLyAzMC4gVGFibGVzXG4vLyAzMS4gVGFic1xuLy8gMzIuIFRodW1ibmFpbHNcbi8vIDMzLiBUb29sdGlwc1xuLy8gMzQuIFRvcCBCYXJcbi8vIDM2LiBWaXNpYmlsaXR5IENsYXNzZXNcblxuLy8gYS4gQmFzZVxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyBUaGlzIGlzIHRoZSBkZWZhdWx0IGh0bWwgYW5kIGJvZHkgZm9udC1zaXplIGZvciB0aGUgYmFzZSByZW0gdmFsdWUuXG4vLyAkcmVtLWJhc2U6IDE2cHg7XG5cbi8vIEFsbG93cyB0aGUgdXNlIG9mIHJlbS1jYWxjKCkgb3IgbG93ZXItYm91bmQoKSBpbiB5b3VyIHNldHRpbmdzXG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9mb3VuZGF0aW9uL3Njc3MvZm91bmRhdGlvbi9mdW5jdGlvbnNcIjtcblxuLy8gVGhlIGRlZmF1bHQgZm9udC1zaXplIGlzIHNldCB0byAxMDAlIG9mIHRoZSBicm93c2VyIHN0eWxlIHNoZWV0ICh1c3VhbGx5IDE2cHgpXG4vLyBmb3IgY29tcGF0aWJpbGl0eSB3aXRoIGJyb3dzZXItYmFzZWQgdGV4dCB6b29tIG9yIHVzZXItc2V0IGRlZmF1bHRzLlxuXG4vLyBTaW5jZSB0aGUgdHlwaWNhbCBkZWZhdWx0IGJyb3dzZXIgZm9udC1zaXplIGlzIDE2cHgsIHRoYXQgbWFrZXMgdGhlIGNhbGN1bGF0aW9uIGZvciBncmlkIHNpemUuXG4vLyBJZiB5b3Ugd2FudCB5b3VyIGJhc2UgZm9udC1zaXplIHRvIGJlIGRpZmZlcmVudCBhbmQgbm90IGhhdmUgaXQgYWZmZWN0IHRoZSBncmlkIGJyZWFrcG9pbnRzLFxuLy8gc2V0ICRyZW0tYmFzZSB0byAkYmFzZS1mb250LXNpemUgYW5kIG1ha2Ugc3VyZSAkYmFzZS1mb250LXNpemUgaXMgYSBweCB2YWx1ZS5cbi8vICRiYXNlLWZvbnQtc2l6ZTogMTAwJTtcblxuLy8gVGhlICRiYXNlLWZvbnQtc2l6ZSBpcyAxMDAlIHdoaWxlICRiYXNlLWxpbmUtaGVpZ2h0IGlzIDE1MCVcbi8vICRiYXNlLWxpbmUtaGVpZ2h0OiAxNTAlO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHdoZXRoZXIgb3Igbm90IENTUyBjbGFzc2VzIGNvbWUgdGhyb3VnaCBpbiB0aGUgZ2VtIGZpbGVzLlxuJGluY2x1ZGUtaHRtbC1jbGFzc2VzOiB0cnVlO1xuLy8gJGluY2x1ZGUtcHJpbnQtc3R5bGVzOiB0cnVlO1xuJGluY2x1ZGUtaHRtbC1nbG9iYWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBiLiBHcmlkXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG4vLyAkaW5jbHVkZS14bC1odG1sLWdyaWQtY2xhc3NlczogZmFsc2U7XG5cbiAgICRyb3ctd2lkdGg6IDg0JTtcbi8vICR0b3RhbC1jb2x1bW5zOiAxMjtcbi8vICRjb2x1bW4tZ3V0dGVyOiByZW0tY2FsYygzMCk7XG5cbi8vIGMuIEdsb2JhbFxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyBXZSB1c2UgdGhlc2UgdG8gZGVmaW5lIGRlZmF1bHQgZm9udCBzdGFja3NcbiRmb250LWZhbWlseS1zYW5zLXNlcmlmOiBcIkhlbHZldGljYSBOZXVlXCIsIEhlbHZldGljYSwgUm9ib3RvLCBBcmlhbCwgc2Fucy1zZXJpZjtcbi8vICRmb250LWZhbWlseS1zZXJpZjogR2VvcmdpYSwgQ2FtYnJpYSwgXCJUaW1lcyBOZXcgUm9tYW5cIiwgVGltZXMsIHNlcmlmO1xuLy8gJGZvbnQtZmFtaWx5LW1vbm9zcGFjZTogQ29uc29sYXMsIFwiTGliZXJhdGlvbiBNb25vXCIsIENvdXJpZXIsIG1vbm9zcGFjZTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGRlZmluZSBkZWZhdWx0IGZvbnQgd2VpZ2h0c1xuICAgJGZvbnQtd2VpZ2h0LW5vcm1hbDogbm9ybWFsO1xuICAgJGZvbnQtd2VpZ2h0LWJvbGQ6IGJvbGQ7XG5cbiAgICR3aGl0ZSAgICAgICA6ICNGRkZGRkY7XG4gJGdob3N0ICAgICAgIDogI0ZBRkFGQTtcbiAgICRzbm93ICAgICAgICA6ICNGOUY5Rjk7XG4gJHZhcG9yICAgICAgIDogI0Y2RjZGNjtcbiAkd2hpdGUtc21va2UgOiAjRjVGNUY1O1xuICAgJHNpbHZlciAgICAgIDogI0VGRUZFRjtcbiAkc21va2UgICAgICAgOiAjRUVFRUVFO1xuICRnYWluc2Jvcm8gICA6ICNEREREREQ7XG4gJGlyb24gICAgICAgIDogI0NDQ0NDQztcbiAkYmFzZSAgICAgICAgOiAjQUFBQUFBO1xuJGFsdW1pbnVtICAgIDogIzk5OTk5OTtcbiAgICRqdW1ibyAgICAgICA6ICM4ODg4ODg7XG4gJG1vbnNvb24gICAgIDogIzc3Nzc3NztcbiAkc3RlZWwgICAgICAgOiAjNjY2NjY2O1xuICRjaGFyY29hbCAgICA6ICM1NTU1NTU7XG4kdHVhdGFyYSAgICAgOiAjNDQ0NDQ0O1xuICAgJG9pbCAgICAgICAgIDogIzMzMzMzMztcbiAkamV0ICAgICAgICAgOiAjMjIyMjIyO1xuICRibGFjayAgICAgICA6ICMwMDAwMDA7XG5cbi8vIFdlIHVzZSB0aGVzZSBhcyBkZWZhdWx0IGNvbG9ycyB0aHJvdWdob3V0XG4gICAkcHJpbWFyeS1jb2xvcjogIzRhOGVjMjtcbiAkc2Vjb25kYXJ5LWNvbG9yOiAjZTdlN2U3O1xuICRhbGVydC1jb2xvcjogI2YwNDEyNDtcbiAkc3VjY2Vzcy1jb2xvcjogIzQzQUM2QTtcbiAkd2FybmluZy1jb2xvcjogI2YwOGEyNDtcbiAkaW5mby1jb2xvcjogI2EwZDNlODtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmFyaW91cyBnbG9iYWwgc3R5bGVzXG4vLyAkYm9keS1iZzogJHdoaXRlO1xuLy8gJGJvZHktZm9udC1jb2xvcjogJGpldDtcbiRib2R5LWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktc2Fucy1zZXJpZjtcbi8vICRib2R5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGJvZHktZm9udC1zdHlsZTogbm9ybWFsO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGZvbnQtc21vb3RoaW5nXG4vLyAkZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0ZXh0IGRpcmVjdGlvbiBzZXR0aW5nc1xuLy8gJHRleHQtZGlyZWN0aW9uOiBsdHI7XG4vLyAkb3Bwb3NpdGUtZGlyZWN0aW9uOiByaWdodDtcbi8vICRkZWZhdWx0LWZsb2F0OiBsZWZ0O1xuLy8gJGxhc3QtY2hpbGQtZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBtYWtlIHN1cmUgYm9yZGVyIHJhZGl1cyBtYXRjaGVzIHVubGVzcyB3ZSB3YW50IGl0IGRpZmZlcmVudC5cbi8vICRnbG9iYWwtcmFkaXVzOiAzcHg7XG4vLyAkZ2xvYmFsLXJvdW5kZWQ6IDEwMDBweDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaW5zZXQgc2hhZG93IHNoaW55IGVkZ2VzIGFuZCBkZXByZXNzaW9ucy5cbi8vICRzaGlueS1lZGdlLXNpemU6IDAgMXB4IDA7XG4vLyAkc2hpbnktZWRnZS1jb2xvcjogcmdiYSgkd2hpdGUsIC41KTtcbi8vICRzaGlueS1lZGdlLWFjdGl2ZS1jb2xvcjogcmdiYSgkYmxhY2ssIC4yKTtcblxuLy8gZC4gTWVkaWEgUXVlcnkgUmFuZ2VzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRzbWFsbC1icmVha3BvaW50OiAgZW0tY2FsYyg2NDApO1xuLy8gJG1lZGl1bS1icmVha3BvaW50OiBlbS1jYWxjKDEwMjQpO1xuLy8gJGxhcmdlLWJyZWFrcG9pbnQ6ICBlbS1jYWxjKDE0NDApO1xuLy8gJHhsYXJnZS1icmVha3BvaW50OiBlbS1jYWxjKDE5MjApO1xuXG4vLyAkc21hbGwtcmFuZ2U6ICAgKDAsICRzbWFsbC1icmVha3BvaW50KTtcbi8vICRtZWRpdW0tcmFuZ2U6ICAoJHNtYWxsLWJyZWFrcG9pbnQgICsgZW0tY2FsYygxKSwgJG1lZGl1bS1icmVha3BvaW50KTtcbi8vICRsYXJnZS1yYW5nZTogICAoJG1lZGl1bS1icmVha3BvaW50ICsgZW0tY2FsYygxKSwgJGxhcmdlLWJyZWFrcG9pbnQpO1xuLy8gJHhsYXJnZS1yYW5nZTogICgkbGFyZ2UtYnJlYWtwb2ludCAgKyBlbS1jYWxjKDEpLCAkeGxhcmdlLWJyZWFrcG9pbnQpO1xuLy8gJHh4bGFyZ2UtcmFuZ2U6ICgkeGxhcmdlLWJyZWFrcG9pbnQgKyBlbS1jYWxjKDEpLCBlbS1jYWxjKDk5OTk5OTk5KSk7XG5cbi8vICRzY3JlZW46IFwib25seSBzY3JlZW5cIjtcblxuLy8gJGxhbmRzY2FwZTogXCIjeyRzY3JlZW59IGFuZCAob3JpZW50YXRpb246IGxhbmRzY2FwZSlcIjtcbi8vICRwb3J0cmFpdDogXCIjeyRzY3JlZW59IGFuZCAob3JpZW50YXRpb246IHBvcnRyYWl0KVwiO1xuXG4vLyAkc21hbGwtdXA6ICRzY3JlZW47XG4vLyAkc21hbGwtb25seTogXCIjeyRzY3JlZW59IGFuZCAobWF4LXdpZHRoOiAje3VwcGVyLWJvdW5kKCRzbWFsbC1yYW5nZSl9KVwiO1xuXG4vLyAkbWVkaXVtLXVwOiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCI7XG4vLyAkbWVkaXVtLW9ubHk6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCRtZWRpdW0tcmFuZ2UpfSkgYW5kIChtYXgtd2lkdGg6I3t1cHBlci1ib3VuZCgkbWVkaXVtLXJhbmdlKX0pXCI7XG5cbi8vICRsYXJnZS11cDogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCI7XG4vLyAkbGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pIGFuZCAobWF4LXdpZHRoOiN7dXBwZXItYm91bmQoJGxhcmdlLXJhbmdlKX0pXCI7XG5cbi8vICR4bGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIjtcbi8vICR4bGFyZ2Utb25seTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4bGFyZ2UtcmFuZ2UpfSlcIjtcblxuLy8gJHh4bGFyZ2UtdXA6IFwiI3skc2NyZWVufSBhbmQgKG1pbi13aWR0aDoje2xvd2VyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCI7XG4vLyAkeHhsYXJnZS1vbmx5OiBcIiN7JHNjcmVlbn0gYW5kIChtaW4td2lkdGg6I3tsb3dlci1ib3VuZCgkeHhsYXJnZS1yYW5nZSl9KSBhbmQgKG1heC13aWR0aDoje3VwcGVyLWJvdW5kKCR4eGxhcmdlLXJhbmdlKX0pXCI7XG5cbi8vICRyZXRpbmE6IChcbi8vICBcIiN7JHNjcmVlbn0gYW5kICgtd2Via2l0LW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIpXCIsXG4vLyAgXCIjeyRzY3JlZW59IGFuZCAobWluLS1tb3otZGV2aWNlLXBpeGVsLXJhdGlvOiAyKVwiLFxuLy8gIFwiI3skc2NyZWVufSBhbmQgKC1vLW1pbi1kZXZpY2UtcGl4ZWwtcmF0aW86IDIvMSlcIixcbi8vICBcIiN7JHNjcmVlbn0gYW5kIChtaW4tZGV2aWNlLXBpeGVsLXJhdGlvOiAyKVwiLFxuLy8gIFwiI3skc2NyZWVufSBhbmQgKG1pbi1yZXNvbHV0aW9uOiAxOTJkcGkpXCIsXG4vLyAgXCIjeyRzY3JlZW59IGFuZCAobWluLXJlc29sdXRpb246IDJkcHB4KVwiXG4vLyApO1xuXG4vLyBMZWdhY3lcbi8vICRzbWFsbDogJG1lZGl1bS11cDtcbi8vICRtZWRpdW06ICRtZWRpdW0tdXA7XG4vLyAkbGFyZ2U6ICRsYXJnZS11cDtcblxuLy8gV2UgdXNlIHRoaXMgYXMgY3Vyc29ycyB2YWx1ZXMgZm9yIGVuYWJsaW5nIHRoZSBvcHRpb24gb2YgaGF2aW5nIGN1c3RvbSBjdXJzb3JzIGluIHRoZSB3aG9sZSBzaXRlJ3Mgc3R5bGVzaGVldFxuLy8gJGN1cnNvci1jcm9zc2hhaXItdmFsdWU6IGNyb3NzaGFpcjtcbi8vICRjdXJzb3ItZGVmYXVsdC12YWx1ZTogZGVmYXVsdDtcbi8vICRjdXJzb3ItZGlzYWJsZWQtdmFsdWU6IG5vdC1hbGxvd2VkO1xuLy8gJGN1cnNvci1wb2ludGVyLXZhbHVlOiBwb2ludGVyO1xuLy8gJGN1cnNvci1oZWxwLXZhbHVlOiBoZWxwO1xuLy8gJGN1cnNvci10ZXh0LXZhbHVlOiB0ZXh0O1xuXG4vLyBlLiBUeXBvZ3JhcGh5XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtdHlwZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHN0eWxlc1xuLy8gJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4vLyAkaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWw7XG4vLyAkaGVhZGVyLWZvbnQtY29sb3I6ICRqZXQ7XG4vLyAkaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQ7XG4vLyAkaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtO1xuLy8gJGhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbTtcbi8vICRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIGZvbnQgc2l6ZXNcbiAgICRoMS1mb250LXNpemU6IHJlbS1jYWxjKDM2KTtcbiAgICRoMi1mb250LXNpemU6IHJlbS1jYWxjKDMwKTtcbi8vICRoMy1mb250LXNpemU6IHJlbS1jYWxjKDI3KTtcbi8vICRoNC1mb250LXNpemU6IHJlbS1jYWxjKDIzKTtcbi8vICRoNS1mb250LXNpemU6IHJlbS1jYWxjKDE4KTtcbi8vICRoNi1mb250LXNpemU6IDFyZW07XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBzaXplIHJlZHVjdGlvbiBvbiBzbWFsbCBzY3JlZW5zXG4vLyAkaDEtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDEwKTtcbi8vICRoMi1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoMTApO1xuLy8gJGgzLWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYyg1KTtcbi8vICRoNC1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSk7XG4vLyAkaDUtZm9udC1yZWR1Y3Rpb246IDA7XG4vLyAkaDYtZm9udC1yZWR1Y3Rpb246IDA7XG5cbi8vIFRoZXNlIGNvbnRyb2wgaG93IHN1YmhlYWRlcnMgYXJlIHN0eWxlZC5cbi8vICRzdWJoZWFkZXItbGluZS1oZWlnaHQ6IDEuNDtcbi8vICRzdWJoZWFkZXItZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpO1xuLy8gJHN1YmhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRzdWJoZWFkZXItdG9wLW1hcmdpbjogLjJyZW07XG4vLyAkc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtO1xuXG4vLyBBIGdlbmVyYWwgPHNtYWxsPiBzdHlsaW5nXG4vLyAkc21hbGwtZm9udC1zaXplOiA2MCU7XG4vLyAkc21hbGwtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgcGFyYWdyYXBoc1xuLy8gJHBhcmFncmFwaC1mb250LWZhbWlseTogaW5oZXJpdDtcbi8vICRwYXJhZ3JhcGgtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbTtcbi8vICRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ6IDEuNjtcbi8vICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuLy8gJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ6IDEuMzU7XG4vLyAkcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU6IGl0YWxpYztcbi8vICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIDxjb2RlPiB0YWdzXG4vLyAkY29kZS1jb2xvcjogJG9pbDtcbi8vICRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlO1xuLy8gJGNvZGUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkY29kZS1iYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA3MCUpO1xuLy8gJGNvZGUtYm9yZGVyLXNpemU6IDFweDtcbi8vICRjb2RlLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkY29kZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjb2RlLWJhY2tncm91bmQtY29sb3IsICRsaWdodG5lc3M6IC0xMCUpO1xuLy8gJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMikgcmVtLWNhbGMoNSkgcmVtLWNhbGMoMSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBhbmNob3JzXG4vLyAkYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbi8vICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lO1xuLy8gJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRhbmNob3ItZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSA8aHI+IGVsZW1lbnRcbi8vICRoci1ib3JkZXItd2lkdGg6IDFweDtcbi8vICRoci1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGhyLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcbi8vICRoci1tYXJnaW46IHJlbS1jYWxjKDIwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxpc3RzXG4vLyAkbGlzdC1mb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseTtcbi8vICRsaXN0LWZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemU7XG4vLyAkbGlzdC1saW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodDtcbi8vICRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTtcbi8vICRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlO1xuLy8gJGxpc3Qtc2lkZS1tYXJnaW46IDEuMXJlbTtcbi8vICRsaXN0LW9yZGVyZWQtc2lkZS1tYXJnaW46IDEuNHJlbTtcbi8vICRsaXN0LXNpZGUtbWFyZ2luLW5vLWJ1bGxldDogMDtcbi8vICRsaXN0LW5lc3RlZC1tYXJnaW46IHJlbS1jYWxjKDIwKTtcbi8vICRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkZGVmaW5pdGlvbi1saXN0LWhlYWRlci1tYXJnaW4tYm90dG9tOiAuM3JlbTtcbi8vICRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYmxvY2txdW90ZXNcbi8vICRibG9ja3F1b3RlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKTtcbi8vICRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSk7XG4vLyAkYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkZ2FpbnNib3JvO1xuLy8gJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbi8vICRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAyMyUpO1xuLy8gJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3I7XG5cbi8vIEFjcm9ueW0gc3R5bGVzXG4vLyAkYWNyb255bS11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGdhaW5zYm9ybztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgcGFkZGluZyBhbmQgbWFyZ2luXG4vLyAkbWljcm9mb3JtYXQtcGFkZGluZzogcmVtLWNhbGMoMTAgMTIpO1xuLy8gJG1pY3JvZm9ybWF0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlc1xuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aDogMXB4O1xuLy8gJG1pY3JvZm9ybWF0LWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkbWljcm9mb3JtYXQtYm9yZGVyLWNvbG9yOiAkZ2FpbnNib3JvO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBmdWxsIG5hbWUgZm9udCBzdHlsZXNcbi8vICRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplOiByZW0tY2FsYygxNSk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIHN1bW1hcnkgZm9udCBzdHlsZXNcbi8vICRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBhYmJyIHBhZGRpbmdcbi8vICRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc6IHJlbS1jYWxjKDAgMSk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBmb250IHN0eWxlc1xuLy8gJG1pY3JvZm9ybWF0LWFiYnItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuLy8gJG1pY3JvZm9ybWF0LWFiYnItZm9udC1kZWNvcmF0aW9uOiBub25lO1xuXG4vLyAwMS4gQWNjb3JkaW9uXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtYWNjb3JkaW9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nOiByZW0tY2FsYygxNik7XG4gJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yOiAkc2lsdmVyO1xuICRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNTUlKTtcbiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3IsICRsaWdodG5lc3M6IC0zJSk7XG4vLyAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1jb2xvcjogJGpldDtcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbi8vICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cbi8vICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nOiAoJGNvbHVtbi1ndXR0ZXIvMik7XG4vLyAkYWNjb3JkaW9uLWNvbnRlbnQtYWN0aXZlLWJnLWNvbG9yOiAkd2hpdGU7XG5cbi8vIDAyLiBBbGVydCBCb3hlc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWFsZXJ0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBhbGVydCBwYWRkaW5nLlxuLy8gJGFsZXJ0LXBhZGRpbmctdG9wOiByZW0tY2FsYygxNCk7XG4vLyAkYWxlcnQtcGFkZGluZy1kZWZhdWx0LWZsb2F0OiAkYWxlcnQtcGFkZGluZy10b3A7XG4vLyAkYWxlcnQtcGFkZGluZy1vcHBvc2l0ZS1kaXJlY3Rpb246ICRhbGVydC1wYWRkaW5nLXRvcCArIHJlbS1jYWxjKDEwKTtcbi8vICRhbGVydC1wYWRkaW5nLWJvdHRvbTogJGFsZXJ0LXBhZGRpbmctdG9wO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0ZXh0IHN0eWxlLlxuLy8gJGFsZXJ0LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGFsZXJ0LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTMpO1xuLy8gJGFsZXJ0LWZvbnQtY29sb3I6ICR3aGl0ZTtcbi8vICRhbGVydC1mb250LWNvbG9yLWFsdDogc2NhbGUtY29sb3IoJHNlY29uZGFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTY2JSk7XG5cbi8vIFdlIHVzZSB0aGlzIGZvciBjbG9zZSBob3ZlciBlZmZlY3QuXG4vLyAkYWxlcnQtZnVuY3Rpb24tZmFjdG9yOiAtMTQlO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBib3JkZXIgc3R5bGVzLlxuLy8gJGFsZXJ0LWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkYWxlcnQtYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAkYWxlcnQtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogJGFsZXJ0LWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkYWxlcnQtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMjApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGNsb3NlIGJ1dHRvbnNcbi8vICRhbGVydC1jbG9zZS1jb2xvcjogJG9pbDtcbi8vICRhbGVydC1jbG9zZS10b3A6IDUwJTtcbi8vICRhbGVydC1jbG9zZS1wb3NpdGlvbjogcmVtLWNhbGMoNCk7XG4vLyAkYWxlcnQtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYygyMik7XG4vLyAkYWxlcnQtY2xvc2Utb3BhY2l0eTogLjM7XG4vLyAkYWxlcnQtY2xvc2Utb3BhY2l0eS1ob3ZlcjogLjU7XG4vLyAkYWxlcnQtY2xvc2UtcGFkZGluZzogOXB4IDZweCA0cHg7XG4vLyAkYWxlcnQtY2xvc2UtYmFja2dyb3VuZDogaW5oZXJpdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBib3JkZXIgcmFkaXVzXG4vLyAkYWxlcnQtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gJGFsZXJ0LXRyYW5zaXRpb24tc3BlZWQ6IDMwMG1zO1xuLy8gJGFsZXJ0LXRyYW5zaXRpb24tZWFzZTogZWFzZS1vdXQ7XG5cbi8vIDAzLiBCbG9jayBHcmlkXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG4vLyAkaW5jbHVkZS14bC1odG1sLWJsb2NrLWdyaWQtY2xhc3NlczogZmFsc2U7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG1heGltdW0gbnVtYmVyIG9mIGJsb2NrIGdyaWQgZWxlbWVudHMgcGVyIHJvd1xuLy8gJGJsb2NrLWdyaWQtZWxlbWVudHM6IDEyO1xuLy8gJGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nOiByZW0tY2FsYygyMCk7XG5cbi8vICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQ6IGZhbHNlO1xuLy8gQGlmICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQgeyRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZzogJGNvbHVtbi1ndXR0ZXI7fVxuXG4vLyBFbmFibGVzIG1lZGlhIHF1ZXJpZXMgZm9yIGJsb2NrLWdyaWQgY2xhc3Nlcy4gU2V0IHRvIGZhbHNlIGlmIHdyaXRpbmcgc2VtYW50aWMgSFRNTC5cbi8vICRibG9jay1ncmlkLW1lZGlhLXF1ZXJpZXM6IHRydWU7XG5cbi8vIDA0LiBCcmVhZGNydW1ic1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIGJyZWFkY3J1bWIgY29udGFpbmVyLlxuICAgJGNydW1iLWJnOiAkc25vdzsgLy9zY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA1NSUpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBwYWRkaW5nIGFyb3VuZCB0aGUgYnJlYWRjcnVtYnMuXG4vLyAkY3J1bWItcGFkZGluZzogcmVtLWNhbGMoOSAxNCA5KTtcbi8vICRjcnVtYi1zaWRlLXBhZGRpbmc6IHJlbS1jYWxjKDEyKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlcy5cbi8vICRjcnVtYi1mdW5jdGlvbi1mYWN0b3I6IC0xMCU7XG4gICAkY3J1bWItYm9yZGVyLXNpemU6IDBweDtcbi8vICRjcnVtYi1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGNydW1iLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGNydW1iLWJnLCAkbGlnaHRuZXNzOiAkY3J1bWItZnVuY3Rpb24tZmFjdG9yKTtcbiAgICRjcnVtYi1yYWRpdXM6IDA7IC8vICRnbG9iYWwtcmFkaXVzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHZhcmlvdXMgdGV4dCBzdHlsZXMgZm9yIGJyZWFkY3J1bWJzLlxuLy8gJGNydW1iLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTEpO1xuLy8gJGNydW1iLWZvbnQtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJGNydW1iLWZvbnQtY29sb3ItY3VycmVudDogJG9pbDtcbi8vICRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOiAkYWx1bWludW07XG4vLyAkY3J1bWItZm9udC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbi8vICRjcnVtYi1saW5rLWRlY29yOiB1bmRlcmxpbmU7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzbGFzaCBiZXR3ZWVuIGJyZWFkY3J1bWJzXG4vLyAkY3J1bWItc2xhc2gtY29sb3I6ICRiYXNlO1xuLy8gJGNydW1iLXNsYXNoOiBcIi9cIjtcblxuLy8gMDUuIEJ1dHRvbnNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1idXR0b24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gYnVpbGQgcGFkZGluZyBmb3IgYnV0dG9ucy5cbi8vICRidXR0b24tdG55OiByZW0tY2FsYygxMCk7XG4vLyAkYnV0dG9uLXNtbDogcmVtLWNhbGMoMTQpO1xuLy8gJGJ1dHRvbi1tZWQ6IHJlbS1jYWxjKDE2KTtcbi8vICRidXR0b24tbHJnOiByZW0tY2FsYygxOCk7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGRpc3BsYXkgcHJvcGVydHkuXG4vLyAkYnV0dG9uLWRpc3BsYXk6IGlubGluZS1ibG9jaztcbi8vICRidXR0b24tbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBidXR0b24gdGV4dCBzdHlsZXMuXG4vLyAkYnV0dG9uLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbi8vICRidXR0b24tZm9udC1jb2xvcjogJHdoaXRlO1xuLy8gJGJ1dHRvbi1mb250LWNvbG9yLWFsdDogJG9pbDtcbi8vICRidXR0b24tZm9udC10bnk6IHJlbS1jYWxjKDExKTtcbi8vICRidXR0b24tZm9udC1zbWw6IHJlbS1jYWxjKDEzKTtcbi8vICRidXR0b24tZm9udC1tZWQ6IHJlbS1jYWxjKDE2KTtcbi8vICRidXR0b24tZm9udC1scmc6IHJlbS1jYWxjKDIwKTtcbi8vICRidXR0b24tZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkYnV0dG9uLWZvbnQtYWxpZ246IGNlbnRlcjtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmFyaW91cyBob3ZlciBlZmZlY3RzLlxuLy8gJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3I6IC0yMCU7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJ1dHRvbiBib3JkZXIgc3R5bGVzLlxuLy8gJGJ1dHRvbi1ib3JkZXItd2lkdGg6IDA7XG4vLyAkYnV0dG9uLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkYnV0dG9uLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRidXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRidXR0b24tYmctY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRidXR0b24tYm9yZGVyLWNvbG9yOiAkYnV0dG9uLWJnLWhvdmVyO1xuLy8gJHNlY29uZGFyeS1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRzZWNvbmRhcnktYnV0dG9uLWJvcmRlci1jb2xvcjogJHNlY29uZGFyeS1idXR0b24tYmctaG92ZXI7XG4vLyAkc3VjY2Vzcy1idXR0b24tYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRzdWNjZXNzLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3Rvcik7XG4vLyAkc3VjY2Vzcy1idXR0b24tYm9yZGVyLWNvbG9yOiAkc3VjY2Vzcy1idXR0b24tYmctaG92ZXI7XG4vLyAkYWxlcnQtYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkYWxlcnQtY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRhbGVydC1idXR0b24tYm9yZGVyLWNvbG9yOiAkYWxlcnQtYnV0dG9uLWJnLWhvdmVyO1xuLy8gJHdhcm5pbmctYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkd2FybmluZy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJHdhcm5pbmctYnV0dG9uLWJvcmRlci1jb2xvcjogJHdhcm5pbmctYnV0dG9uLWJnLWhvdmVyO1xuLy8gJGluZm8tYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkaW5mby1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJGluZm8tYnV0dG9uLWJvcmRlci1jb2xvcjogJGluZm8tYnV0dG9uLWJnLWhvdmVyO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGRlZmF1bHQgcmFkaXVzIHVzZWQgdGhyb3VnaG91dCB0aGUgY29yZS5cbi8vICRidXR0b24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vICRidXR0b24tcm91bmQ6ICRnbG9iYWwtcm91bmRlZDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IGRlZmF1bHQgb3BhY2l0eSBhbmQgY3Vyc29yIGZvciBkaXNhYmxlZCBidXR0b25zLlxuLy8gJGJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5OiAuNztcbi8vICRidXR0b24tZGlzYWJsZWQtY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG5cbi8vIDA2LiBCdXR0b24gR3JvdXBzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gU2V0cyB0aGUgbWFyZ2luIGZvciB0aGUgcmlnaHQgc2lkZSBieSBkZWZhdWx0LCBhbmQgdGhlIGxlZnQgbWFyZ2luIGlmIHJpZ2h0LXRvLWxlZnQgZGlyZWN0aW9uIGlzIHVzZWRcbi8vICRidXR0b24tYmFyLW1hcmdpbi1vcHBvc2l0ZTogcmVtLWNhbGMoMTApO1xuLy8gJGJ1dHRvbi1ncm91cC1ib3JkZXItd2lkdGg6IDFweDtcblxuLy8gMDcuIENsZWFyaW5nXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtY2xlYXJpbmctY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBiYWNrZ3JvdW5kIGNvbG9ycyBmb3IgcGFydHMgb2YgQ2xlYXJpbmcuXG4vLyAkY2xlYXJpbmctYmc6ICRvaWw7XG4vLyAkY2xlYXJpbmctY2FwdGlvbi1iZzogJGNsZWFyaW5nLWJnO1xuLy8gJGNsZWFyaW5nLWNhcm91c2VsLWJnOiByZ2JhKDUxLDUxLDUxLDAuOCk7XG4vLyAkY2xlYXJpbmctaW1nLWJnOiAkY2xlYXJpbmctYmc7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgY2xvc2UgYnV0dG9uXG4vLyAkY2xlYXJpbmctY2xvc2UtY29sb3I6ICRpcm9uO1xuLy8gJGNsZWFyaW5nLWNsb3NlLXNpemU6IDMwcHg7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgYXJyb3dzXG4vLyAkY2xlYXJpbmctYXJyb3ctc2l6ZTogMTJweDtcbi8vICRjbGVhcmluZy1hcnJvdy1jb2xvcjogJGNsZWFyaW5nLWNsb3NlLWNvbG9yO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgY2FwdGlvbnNcbi8vICRjbGVhcmluZy1jYXB0aW9uLWZvbnQtY29sb3I6ICRpcm9uO1xuLy8gJGNsZWFyaW5nLWNhcHRpb24tZm9udC1zaXplOiAuODc1ZW07XG4vLyAkY2xlYXJpbmctY2FwdGlvbi1wYWRkaW5nOiAxMHB4IDMwcHggMjBweDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIG1ha2UgdGhlIGltYWdlIGFuZCBjYXJvdXNlbCBoZWlnaHQgYW5kIHN0eWxlXG4vLyAkY2xlYXJpbmctYWN0aXZlLWltZy1oZWlnaHQ6IDg1JTtcbi8vICRjbGVhcmluZy1jYXJvdXNlbC1oZWlnaHQ6IDEyMHB4O1xuLy8gJGNsZWFyaW5nLWNhcm91c2VsLXRodW1iLXdpZHRoOiAxMjBweDtcbi8vICRjbGVhcmluZy1jYXJvdXNlbC10aHVtYi1hY3RpdmUtYm9yZGVyOiAxcHggc29saWQgcmdiKDI1NSwyNTUsMjU1KTtcblxuLy8gMDguIERyb3Bkb3duXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtZHJvcGRvd24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbHMgaGVpZ2h0IGFuZCB3aWR0aCBzdHlsZXMuXG4gICAkZi1kcm9wZG93bi1tYXgtd2lkdGg6IDUwMHB4O1xuLy8gJGYtZHJvcGRvd24taGVpZ2h0OiBhdXRvO1xuLy8gJGYtZHJvcGRvd24tbWF4LWhlaWdodDogbm9uZTtcblxuLy8gVXNlZCBmb3IgYm90dG9tIHBvc2l0aW9uXG4vLyAkZi1kcm9wZG93bi1tYXJnaW4tdG9wOiAycHg7XG5cbi8vIFVzZWQgZm9yIHJpZ2h0IHBvc2l0aW9uXG4vLyAkZi1kcm9wZG93bi1tYXJnaW4tbGVmdDogJGYtZHJvcGRvd24tbWFyZ2luLXRvcDtcblxuLy8gVXNlZCBmb3IgbGVmdCBwb3NpdGlvblxuLy8gJGYtZHJvcGRvd24tbWFyZ2luLXJpZ2h0OiAkZi1kcm9wZG93bi1tYXJnaW4tdG9wO1xuXG4vLyBVc2VkIGZvciB0b3AgcG9zaXRpb25cbi8vICRmLWRyb3Bkb3duLW1hcmdpbi1ib3R0b206ICRmLWRyb3Bkb3duLW1hcmdpbi10b3A7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJhY2tncm91bmQgY29sb3Jcbi8vICRmLWRyb3Bkb3duLWJnOiAkd2hpdGU7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYm9yZGVyIHN0eWxlcyBmb3IgZHJvcGRvd25zLlxuLy8gJGYtZHJvcGRvd24tYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRmLWRyb3Bkb3duLWJvcmRlci13aWR0aDogMXB4O1xuLy8gJGYtZHJvcGRvd24tYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIHRyaWFuZ2xlIHBpcC5cbi8vICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemU6IDZweDtcbi8vICRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yOiAkd2hpdGU7XG4vLyAkZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldDogMTBweDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgc3R5bGVzIGZvciB0aGUgbGlzdCBlbGVtZW50cy5cbi8vICRmLWRyb3Bkb3duLWxpc3Qtc3R5bGU6IG5vbmU7XG4vLyAkZi1kcm9wZG93bi1mb250LWNvbG9yOiAkY2hhcmNvYWw7XG4vLyAkZi1kcm9wZG93bi1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRmLWRyb3Bkb3duLWxpc3QtcGFkZGluZzogcmVtLWNhbGMoNSwgMTApO1xuLy8gJGYtZHJvcGRvd24tbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDE4KTtcbi8vICRmLWRyb3Bkb3duLWxpc3QtaG92ZXItYmc6ICRzbW9rZTtcbi8vICRkcm9wZG93bi1tb2JpbGUtZGVmYXVsdC1mbG9hdDogMDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBoYXMgY3VzdG9tIGNvbnRlbnQuXG4vLyAkZi1kcm9wZG93bi1jb250ZW50LXBhZGRpbmc6IHJlbS1jYWxjKDIwKTtcblxuLy8gRGVmYXVsdCByYWRpdXMgZm9yIGRyb3Bkb3duLlxuLy8gJGYtZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuXG4vLyAwOS4gRHJvcGRvd24gQnV0dG9uc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIGNvbG9yIG9mIHRoZSBwaXAgaW4gZHJvcGRvd24gYnV0dG9uc1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtY29sb3I6ICR3aGl0ZTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yLWFsdDogJG9pbDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgc2l6ZSBvZiB0aGUgcGlwIGluIGRyb3Bkb3duIGJ1dHRvbnNcbi8vICRidXR0b24tcGlwLXRueTogcmVtLWNhbGMoNik7XG4vLyAkYnV0dG9uLXBpcC1zbWw6IHJlbS1jYWxjKDcpO1xuLy8gJGJ1dHRvbi1waXAtbWVkOiByZW0tY2FsYyg5KTtcbi8vICRidXR0b24tcGlwLWxyZzogcmVtLWNhbGMoMTEpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGlueSBkcm9wZG93biBidXR0b25zXG4vLyAkZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctdG55OiAkYnV0dG9uLXBpcC10bnkgKiA3O1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS10bnk6ICRidXR0b24tcGlwLXRueTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLXRueTogJGJ1dHRvbi1waXAtdG55ICogMztcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXRvcC10bnk6ICgtJGJ1dHRvbi1waXAtdG55IC8gMikgKyByZW0tY2FsYygxKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHNtYWxsIGRyb3Bkb3duIGJ1dHRvbnNcbi8vICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDc7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLXNtbDogJGJ1dHRvbi1waXAtc21sO1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtc21sOiAkYnV0dG9uLXBpcC1zbWwgKiAzO1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLXNtbDogKC0kYnV0dG9uLXBpcC1zbWwgLyAyKSArIHJlbS1jYWxjKDEpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgbWVkaXVtIGRyb3Bkb3duIGJ1dHRvbnNcbi8vICRkcm9wZG93bi1idXR0b24tcGFkZGluZy1tZWQ6ICRidXR0b24tcGlwLW1lZCAqIDYgKyByZW0tY2FsYygzKTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtbWVkOiAkYnV0dG9uLXBpcC1tZWQgLSByZW0tY2FsYygzKTtcbi8vICRkcm9wZG93bi1idXR0b24tcGlwLW9wcG9zaXRlLW1lZDogJGJ1dHRvbi1waXAtbWVkICogMi41O1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLW1lZDogKC0kYnV0dG9uLXBpcC1tZWQgLyAyKSArIHJlbS1jYWxjKDIpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgbGFyZ2UgZHJvcGRvd24gYnV0dG9uc1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLWxyZzogJGJ1dHRvbi1waXAtbHJnICogNSArIHJlbS1jYWxjKDMpO1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS1scmc6ICRidXR0b24tcGlwLWxyZyAtIHJlbS1jYWxjKDYpO1xuLy8gJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtbHJnOiAkYnV0dG9uLXBpcC1scmcgKiAyLjU7XG4vLyAkZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtbHJnOiAoLSRidXR0b24tcGlwLWxyZyAvIDIpICsgcmVtLWNhbGMoMyk7XG5cbi8vIDEwLiBGbGV4IFZpZGVvXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB2aWRlbyBjb250YWluZXIgcGFkZGluZyBhbmQgbWFyZ2luc1xuLy8gJGZsZXgtdmlkZW8tcGFkZGluZy10b3A6IHJlbS1jYWxjKDI1KTtcbi8vICRmbGV4LXZpZGVvLXBhZGRpbmctYm90dG9tOiA2Ny41JTtcbi8vICRmbGV4LXZpZGVvLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDE2KTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB3aWRlc2NyZWVuIGJvdHRvbSBwYWRkaW5nXG4vLyAkZmxleC12aWRlby13aWRlc2NyZWVuLXBhZGRpbmctYm90dG9tOiA1Ni4zNCU7XG5cbi8vIDExLiBGb3Jtc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWZvcm0tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGJhc2UgZm9yIGxvdHMgb2YgZm9ybSBzcGFjaW5nIGFuZCBwb3NpdGlvbmluZyBzdHlsZXNcbi8vICRmb3JtLXNwYWNpbmc6IHJlbS1jYWxjKDE2KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbHMgaW4gZGlmZmVyZW50IHdheXNcbi8vICRmb3JtLWxhYmVsLXBvaW50ZXI6IHBvaW50ZXI7XG4vLyAkZm9ybS1sYWJlbC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRmb3JtLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGZvcm0tbGFiZWwtbGluZS1oZWlnaHQ6IDEuNTtcbi8vICRmb3JtLWxhYmVsLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRibGFjaywgJGxpZ2h0bmVzczogMzAlKTtcbi8vICRmb3JtLWxhYmVsLXNtYWxsLXRyYW5zZm9ybTogY2FwaXRhbGl6ZTtcbi8vICRmb3JtLWxhYmVsLWJvdHRvbS1tYXJnaW46IDA7XG4vLyAkaW5wdXQtZm9udC1mYW1pbHk6IGluaGVyaXQ7XG4vLyAkaW5wdXQtZm9udC1jb2xvcjogcmdiYSgwLDAsMCwwLjc1KTtcbi8vICRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbi8vICRpbnB1dC1iZy1jb2xvcjogJHdoaXRlO1xuLy8gJGlucHV0LWZvY3VzLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yJSk7XG4vLyAkaW5wdXQtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpO1xuLy8gJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNDAlKTtcbi8vICRpbnB1dC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJGlucHV0LWJvcmRlci13aWR0aDogMXB4O1xuLy8gJGlucHV0LWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gJGlucHV0LWRpc2FibGVkLWJnOiAkZ2FpbnNib3JvO1xuLy8gJGlucHV0LWRpc2FibGVkLWN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlO1xuLy8gJGlucHV0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSk7XG4vLyAkaW5wdXQtaW5jbHVkZS1nbG93aW5nLWVmZmVjdDogZmFsc2U7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgZmllbGRzZXQgYm9yZGVyIGFuZCBzcGFjaW5nLlxuLy8gJGZpZWxkc2V0LWJvcmRlci1zdHlsZTogc29saWQ7XG4gICAkZmllbGRzZXQtYm9yZGVyLXdpZHRoOiAwO1xuLy8gJGZpZWxkc2V0LWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybztcbi8vICRmaWVsZHNldC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4vLyAkZmllbGRzZXQtbWFyZ2luOiByZW0tY2FsYygxOCAwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsZWdlbmRzIHdoZW4geW91IHVzZSB0aGVtXG4vLyAkbGVnZW5kLWJnOiAkd2hpdGU7XG4vLyAkbGVnZW5kLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbi8vICRsZWdlbmQtcGFkZGluZzogcmVtLWNhbGMoMCAzKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBwcmVmaXggYW5kIHBvc3RmaXggaW5wdXQgZWxlbWVudHNcbi8vICRpbnB1dC1wcmVmaXgtYmc6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKTtcbi8vICRpbnB1dC1wcmVmaXgtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpO1xuLy8gJGlucHV0LXByZWZpeC1ib3JkZXItc2l6ZTogMXB4O1xuLy8gJGlucHV0LXByZWZpeC1ib3JkZXItdHlwZTogc29saWQ7XG4vLyAkaW5wdXQtcHJlZml4LW92ZXJmbG93OiBoaWRkZW47XG4vLyAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3I6ICRvaWw7XG4vLyAkaW5wdXQtcHJlZml4LWZvbnQtY29sb3ItYWx0OiAkd2hpdGU7XG5cbi8vIFdlIHVzZSB0aGlzIHNldHRpbmcgdG8gdHVybiBvbi9vZmYgSFRNTDUgbnVtYmVyIHNwaW5uZXJzICh0aGUgdXAvZG93biBhcnJvd3MpXG4vLyAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGVycm9yIHN0YXRlcyBmb3IgaW5wdXRzIGFuZCBsYWJlbHNcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLXBhZGRpbmc6IHJlbS1jYWxjKDYgOSA5KTtcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLXRvcDogLTFweDtcbi8vICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXN0eWxlOiBpdGFsaWM7XG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yOiAkd2hpdGU7XG4vLyAkaW5wdXQtZXJyb3ItbWVzc2FnZS1iZy1jb2xvcjogJGFsZXJ0LWNvbG9yO1xuLy8gJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvci1hbHQ6ICRvaWw7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSBnbG93aW5nIGVmZmVjdCBvZiBpbnB1dHMgd2hlbiBmb2N1c2VkXG4vLyAkZ2xvd2luZy1lZmZlY3QtZmFkZS10aW1lOiAuNDVzO1xuLy8gJGdsb3dpbmctZWZmZWN0LWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzdHlsZSB0aGUgdHJhbnNpdGlvbiB3aGVuIGlucHV0cyBhcmUgZm9jdXNlZCBhbmQgd2hlbiB0aGUgZ2xvd2luZyBlZmZlY3QgaXMgZGlzYWJsZWQuXG4vLyAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWU6IDAuMTVzO1xuLy8gJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcblxuLy8gU2VsZWN0IHZhcmlhYmxlc1xuICAgJHNlbGVjdC1iZy1jb2xvcjogJHdoaXRlO1xuLy8gJHNlbGVjdC1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHNlbGVjdC1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTMlKTtcblxuXG4vLyAxMi4gSWNvbiBCYXJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBpY29uLWJhciBhbmQgaXRlbXNcbi8vICRpY29uLWJhci1iZzogJG9pbDtcbi8vICRpY29uLWJhci1mb250LWNvbG9yOiAkd2hpdGU7XG4vLyAkaWNvbi1iYXItZm9udC1jb2xvci1ob3ZlcjogJGljb24tYmFyLWZvbnQtY29sb3I7XG4vLyAkaWNvbi1iYXItZm9udC1zaXplOiAxcmVtO1xuLy8gJGljb24tYmFyLWhvdmVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRpY29uLWJhci1pY29uLWNvbG9yOiAkd2hpdGU7XG4vLyAkaWNvbi1iYXItaWNvbi1jb2xvci1ob3ZlcjogJGljb24tYmFyLWljb24tY29sb3I7XG4vLyAkaWNvbi1iYXItaWNvbi1zaXplOiAxLjg3NXJlbTtcbi8vICRpY29uLWJhci1pbWFnZS13aWR0aDogMS44NzVyZW07XG4vLyAkaWNvbi1iYXItaW1hZ2UtaGVpZ2h0OiAxLjg3NXJlbTtcbi8vICRpY29uLWJhci1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJGljb24tYmFyLWl0ZW0tcGFkZGluZzogMS4yNXJlbTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IGRlZmF1bHQgb3BhY2l0eSBhbmQgY3Vyc29yIGZvciBkaXNhYmxlZCBpY29ucy5cbi8vICRpY29uLWJhci1kaXNhYmxlZC1vcGFjaXR5OiAuNztcblxuLy8gMTMuIElubGluZSBMaXN0c1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWlubGluZS1saXN0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbWFyZ2lucyBhbmQgcGFkZGluZyBvZiB0aGUgaW5saW5lIGxpc3QuXG4vLyAkaW5saW5lLWxpc3QtdG9wLW1hcmdpbjogMDtcbi8vICRpbmxpbmUtbGlzdC1vcHBvc2l0ZS1tYXJnaW46IDA7XG4vLyAkaW5saW5lLWxpc3QtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMTcpO1xuLy8gJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbWFyZ2luOiByZW0tY2FsYygtMjIpO1xuLy8gJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbGlzdC1tYXJnaW46IHJlbS1jYWxjKDIyKTtcblxuLy8gJGlubGluZS1saXN0LXBhZGRpbmc6IDA7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG92ZXJmbG93IG9mIHRoZSBpbmxpbmUgbGlzdC5cbi8vICRpbmxpbmUtbGlzdC1vdmVyZmxvdzogaGlkZGVuO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBsaXN0IGl0ZW1zXG4vLyAkaW5saW5lLWxpc3QtZGlzcGxheTogYmxvY2s7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYW55IGVsZW1lbnRzIHdpdGhpbiBsaXN0IGl0ZW1zXG4vLyAkaW5saW5lLWxpc3QtY2hpbGRyZW4tZGlzcGxheTogYmxvY2s7XG5cbi8vIDE0LiBKb3lyaWRlXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtam95cmlkZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIENvbnRyb2xsaW5nIGRlZmF1bHQgSm95cmlkZSBzdHlsZXNcbi8vICRqb3lyaWRlLXRpcC1iZzogJG9pbDtcbi8vICRqb3lyaWRlLXRpcC1kZWZhdWx0LXdpZHRoOiAzMDBweDtcbi8vICRqb3lyaWRlLXRpcC1wYWRkaW5nOiByZW0tY2FsYygxOCAyMCAyNCk7XG4vLyAkam95cmlkZS10aXAtYm9yZGVyOiBzb2xpZCAxcHggJGNoYXJjb2FsO1xuLy8gJGpveXJpZGUtdGlwLXJhZGl1czogNHB4O1xuLy8gJGpveXJpZGUtdGlwLXBvc2l0aW9uLW9mZnNldDogMjJweDtcblxuLy8gSGVyZSwgd2UncmUgc2V0dGluZyB0aGUgdGlwIGZvbnQgc3R5bGVzXG4vLyAkam95cmlkZS10aXAtZm9udC1jb2xvcjogJHdoaXRlO1xuLy8gJGpveXJpZGUtdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJGpveXJpZGUtdGlwLWhlYWRlci13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuXG4vLyBUaGlzIGNoYW5nZXMgdGhlIG51YiBzaXplXG4vLyAkam95cmlkZS10aXAtbnViLXNpemU6IDEwcHg7XG5cbi8vIFRoaXMgYWRqdXN0cyB0aGUgc3R5bGVzIGZvciB0aGUgdGltZXIgd2hlbiBpdHMgZW5hYmxlZFxuLy8gJGpveXJpZGUtdGlwLXRpbWVyLXdpZHRoOiA1MHB4O1xuLy8gJGpveXJpZGUtdGlwLXRpbWVyLWhlaWdodDogM3B4O1xuLy8gJGpveXJpZGUtdGlwLXRpbWVyLWNvbG9yOiAkc3RlZWw7XG5cbi8vIFRoaXMgY2hhbmdlcyB1cCB0aGUgc3R5bGVzIGZvciB0aGUgY2xvc2UgYnV0dG9uXG4vLyAkam95cmlkZS10aXAtY2xvc2UtY29sb3I6ICRtb25zb29uO1xuLy8gJGpveXJpZGUtdGlwLWNsb3NlLXNpemU6IDI0cHg7XG4vLyAkam95cmlkZS10aXAtY2xvc2Utd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuXG4vLyBXaGVuIEpveXJpZGUgaXMgZmlsbGluZyB0aGUgc2NyZWVuLCB3ZSB1c2UgdGhpcyBzdHlsZSBmb3IgdGhlIGJnXG4vLyAkam95cmlkZS1zY3JlZW5maWxsOiByZ2JhKDAsMCwwLDAuNSk7XG5cbi8vIDE1LiBLZXlzdHJva2VzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwta2V5c3Ryb2tlLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGV4dCBzdHlsZXMuXG4vLyAka2V5c3Ryb2tlLWZvbnQ6IFwiQ29uc29sYXNcIiwgXCJNZW5sb1wiLCBcIkNvdXJpZXJcIiwgbW9ub3NwYWNlO1xuLy8gJGtleXN0cm9rZS1mb250LXNpemU6IGluaGVyaXQ7XG4vLyAka2V5c3Ryb2tlLWZvbnQtY29sb3I6ICRqZXQ7XG4vLyAka2V5c3Ryb2tlLWZvbnQtY29sb3ItYWx0OiAkd2hpdGU7XG4vLyAka2V5c3Ryb2tlLWZ1bmN0aW9uLWZhY3RvcjogLTclO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIGtleXN0cm9rZSBwYWRkaW5nLlxuLy8gJGtleXN0cm9rZS1wYWRkaW5nOiByZW0tY2FsYygyIDQgMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJhY2tncm91bmQgYW5kIGJvcmRlciBzdHlsZXMuXG4vLyAka2V5c3Ryb2tlLWJnOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6ICRrZXlzdHJva2UtZnVuY3Rpb24tZmFjdG9yKTtcbi8vICRrZXlzdHJva2UtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRrZXlzdHJva2UtYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAka2V5c3Ryb2tlLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJGtleXN0cm9rZS1iZywgJGxpZ2h0bmVzczogJGtleXN0cm9rZS1mdW5jdGlvbi1mYWN0b3IpO1xuLy8gJGtleXN0cm9rZS1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyAxNi4gTGFiZWxzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsc1xuLy8gJGxhYmVsLXBhZGRpbmc6IHJlbS1jYWxjKDQgOCA0KTtcbi8vICRsYWJlbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxhYmVsIHRleHRcbi8vICRsYWJlbC1mb250LXNpemluZzogcmVtLWNhbGMoMTEpO1xuLy8gJGxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJGxhYmVsLWZvbnQtY29sb3I6ICRvaWw7XG4vLyAkbGFiZWwtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZTtcbi8vICRsYWJlbC1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cbi8vIDE3LiBNYWdlbGxhblxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLW1hZ2VsbGFuLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gJG1hZ2VsbGFuLWJnOiAkd2hpdGU7XG4vLyAkbWFnZWxsYW4tcGFkZGluZzogMTBweDtcblxuLy8gMTguIE9mZi1jYW52YXNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIFZhcmlhYmxlc1xuLy8gJGluY2x1ZGUtaHRtbC1vZmYtY2FudmFzLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuICR0YWJiYXItYmc6ICRvaWw7XG4gJHRhYmJhci1oZWlnaHQ6IHJlbS1jYWxjKDQ1KTtcbiAkdGFiYmFyLWljb24td2lkdGg6ICR0YWJiYXItaGVpZ2h0O1xuICR0YWJiYXItbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuICR0YWJiYXItY29sb3I6ICR3aGl0ZTtcbiAkdGFiYmFyLW1pZGRsZS1wYWRkaW5nOiAwIHJlbS1jYWxjKDEwKTtcblxuLy8gT2ZmIENhbnZhcyBEaXZpZGVyIFN0eWxlc1xuJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyOiBzb2xpZCAxcHggc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTUwJSk7XG4gJHRhYmJhci1yaWdodC1zZWN0aW9uLWJvcmRlcjogJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyO1xuXG5cbi8vIE9mZiBDYW52YXMgVGFiIEJhciBIZWFkZXJzXG4gJHRhYmJhci1oZWFkZXItY29sb3I6ICR3aGl0ZTtcbiAkdGFiYmFyLWhlYWRlci13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICR0YWJiYXItaGVhZGVyLWxpbmUtaGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcbiAkdGFiYmFyLWhlYWRlci1tYXJnaW46IDA7XG5cbi8vIE9mZiBDYW52YXMgTWVudSBWYXJpYWJsZXNcbi8vICRvZmYtY2FudmFzLXdpZHRoOiByZW0tY2FsYygyNTApO1xuICAgJG9mZi1jYW52YXMtYmc6ICRzbm93O1xuICRvZmYtY2FudmFzLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAtMzAlKTtcbiAkb2ZmLWNhbnZhcy1iZy1hY3RpdmU6IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC0zMCUpO1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgTGlzdCBWYXJpYWJsZXNcbi8vICRvZmYtY2FudmFzLWxhYmVsLXBhZGRpbmc6IC4zcmVtIHJlbS1jYWxjKDE1KTtcbi8vICRvZmYtY2FudmFzLWxhYmVsLWNvbG9yOiAkYWx1bWludW07XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gJG9mZi1jYW52YXMtbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxMik7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1iZzogJHR1YXRhcmE7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItdG9wOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtbGFiZWwtYmcsICRsaWdodG5lc3M6IDE0JSk7XG4vLyAkb2ZmLWNhbnZhcy1sYWJlbC1ib3JkZXItYm90dG9tOiBub25lO1xuLy8gJG9mZi1jYW52YXMtbGFiZWwtbWFyZ2luOjA7XG4vLyAkb2ZmLWNhbnZhcy1saW5rLXBhZGRpbmc6IHJlbS1jYWxjKDEwLCAxNSk7XG4vLyAkb2ZmLWNhbnZhcy1saW5rLWNvbG9yOiByZ2JhKCR3aGl0ZSwgLjcpO1xuLy8gJG9mZi1jYW52YXMtbGluay1ib3JkZXItYm90dG9tOiAxcHggc29saWQgc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtYmcsICRsaWdodG5lc3M6IC0yNSUpO1xuICRvZmYtY2FudmFzLWJhY2stYmc6ICM0NDQ7XG4vLyAkb2ZmLWNhbnZhcy1iYWNrLWJvcmRlci10b3A6ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci10b3A7XG4vLyAkb2ZmLWNhbnZhcy1iYWNrLWJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci1ib3R0b207XG4gJG9mZi1jYW52YXMtYmFjay1ob3Zlci1iZzogc2NhbGUtY29sb3IoJG9mZi1jYW52YXMtYmFjay1iZywgJGxpZ2h0bmVzczogLTMwJSk7XG4vLyAkb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJvcmRlci10b3A6IDFweCBzb2xpZCBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1sYWJlbC1iZywgJGxpZ2h0bmVzczogMTQlKTtcbi8vICRvZmYtY2FudmFzLWJhY2staG92ZXItYm9yZGVyLWJvdHRvbTogbm9uZTtcblxuLy8gT2ZmIENhbnZhcyBNZW51IEljb24gVmFyaWFibGVzXG4vLyAkdGFiYmFyLW1lbnUtaWNvbi1jb2xvcjogJHdoaXRlO1xuLy8gJHRhYmJhci1tZW51LWljb24taG92ZXI6IHNjYWxlLWNvbG9yKCR0YWJiYXItbWVudS1pY29uLWNvbG9yLCAkbGlnaHRuZXNzOiAtODAlKTtcblxuLy8gJHRhYmJhci1tZW51LWljb24tdGV4dC1pbmRlbnQ6IHJlbS1jYWxjKDM1KTtcbi8vICR0YWJiYXItbWVudS1pY29uLXdpZHRoOiAkdGFiYmFyLWljb24td2lkdGg7XG4vLyAkdGFiYmFyLW1lbnUtaWNvbi1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuLy8gJHRhYmJhci1tZW51LWljb24tcGFkZGluZzogMDtcblxuLy8gJHRhYmJhci1oYW1idXJnZXItaWNvbi13aWR0aDogcmVtLWNhbGMoMTYpO1xuLy8gJHRhYmJhci1oYW1idXJnZXItaWNvbi1sZWZ0OiBmYWxzZTtcbi8vICR0YWJiYXItaGFtYnVyZ2VyLWljb24tdG9wOiBmYWxzZTtcbi8vICR0YWJiYXItaGFtYnVyZ2VyLWljb24tdGhpY2tuZXNzOiAxcHg7XG4vLyAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWdhcDogNnB4O1xuXG4vLyBPZmYgQ2FudmFzIEJhY2stTGluayBPdmVybGF5XG4gJG9mZi1jYW52YXMtb3ZlcmxheS10cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDMwMG1zIGVhc2U7XG4gJG9mZi1jYW52YXMtb3ZlcmxheS1jdXJzb3I6IHBvaW50ZXI7XG4gJG9mZi1jYW52YXMtb3ZlcmxheS1ib3gtc2hhZG93OiAtNHB4IDAgNHB4IHJnYmEoJGJsYWNrLCAuNSksIDRweCAwIDRweCByZ2JhKCRibGFjaywgLjUpO1xuICRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZDogcmdiYSgkd2hpdGUsIC4yKTtcbiAkb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJHdoaXRlLCAuMDUpO1xuXG4vLyBUcmFuc2l0aW9uIFZhcmlhYmxlc1xuICRtZW51LXNsaWRlOiBcInRyYW5zZm9ybSA1MDBtcyBlYXNlXCI7XG5cbi8vIDE5LiBPcmJpdFxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLW9yYml0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGNhcHRpb24gc3R5bGVzXG4vLyAkb3JiaXQtY29udGFpbmVyLWJnOiBub25lO1xuLy8gJG9yYml0LWNhcHRpb24tYmc6IHJnYmEoNTEsNTEsNTEsIC44KTtcbi8vICRvcmJpdC1jYXB0aW9uLWZvbnQtY29sb3I6ICR3aGl0ZTtcbi8vICRvcmJpdC1jYXB0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJG9yYml0LWNhcHRpb24tcG9zaXRpb246IFwiYm90dG9tXCI7IC8vIFN1cHBvcnRlZCB2YWx1ZXM6IFwiYm90dG9tXCIsIFwidW5kZXJcIlxuLy8gJG9yYml0LWNhcHRpb24tcGFkZGluZzogcmVtLWNhbGMoMTAgMTQpO1xuLy8gJG9yYml0LWNhcHRpb24taGVpZ2h0OiBhdXRvO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGVmdC9yaWdodCBuYXYgc3R5bGVzXG4vLyAkb3JiaXQtbmF2LWJnOiB0cmFuc3BhcmVudDtcbi8vICRvcmJpdC1uYXYtYmctaG92ZXI6IHJnYmEoMCwwLDAsMC4zKTtcbi8vICRvcmJpdC1uYXYtYXJyb3ctY29sb3I6ICR3aGl0ZTtcbi8vICRvcmJpdC1uYXYtYXJyb3ctY29sb3ItaG92ZXI6ICR3aGl0ZTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHRpbWVyIHN0eWxlc1xuLy8gJG9yYml0LXRpbWVyLWJnOiByZ2JhKDI1NSwyNTUsMjU1LDAuMyk7XG4vLyAkb3JiaXQtdGltZXItc2hvdy1wcm9ncmVzcy1iYXI6IHRydWU7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBidWxsZXQgbmF2IHN0eWxlc1xuLy8gJG9yYml0LWJ1bGxldC1uYXYtY29sb3I6ICRpcm9uO1xuLy8gJG9yYml0LWJ1bGxldC1uYXYtY29sb3ItYWN0aXZlOiAkYWx1bWludW07XG4vLyAkb3JiaXQtYnVsbGV0LXJhZGl1czogcmVtLWNhbGMoOSk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9scyB0aGUgc3R5bGUgb2Ygc2xpZGUgbnVtYmVyc1xuLy8gJG9yYml0LXNsaWRlLW51bWJlci1iZzogcmdiYSgwLDAsMCwwKTtcbi8vICRvcmJpdC1zbGlkZS1udW1iZXItZm9udC1jb2xvcjogJHdoaXRlO1xuLy8gJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nOiByZW0tY2FsYyg1KTtcblxuLy8gR3JhY2VmdWwgTG9hZGluZyBXcmFwcGVyIGFuZCBwcmVsb2FkZXJcbi8vICR3cmFwcGVyLWNsYXNzOiBcInNsaWRlc2hvdy13cmFwcGVyXCI7XG4vLyAkcHJlbG9hZGVyLWNsYXNzOiBcInByZWxvYWRlclwiO1xuXG4vLyBIaWRlIGNvbnRyb2xzIG9uIHNtYWxsXG4vLyAkb3JiaXQtbmF2LWhpZGUtZm9yLXNtYWxsOiB0cnVlO1xuLy8gJG9yYml0LWJ1bGxldC1oaWRlLWZvci1zbWFsbDogdHJ1ZTtcbi8vICRvcmJpdC10aW1lci1oaWRlLWZvci1zbWFsbDogdHJ1ZTtcblxuLy8gMjAuIFBhZ2luYXRpb25cbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtcGFnaW5hdGlvbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBwYWdpbmF0aW9uIGNvbnRhaW5lclxuLy8gJHBhZ2luYXRpb24taGVpZ2h0OiByZW0tY2FsYygyNCk7XG4vLyAkcGFnaW5hdGlvbi1tYXJnaW46IHJlbS1jYWxjKC01KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgbGlzdC1pdGVtIHByb3BlcnRpZXNcbi8vICRwYWdpbmF0aW9uLWxpLWZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbi8vICRwYWdpbmF0aW9uLWxpLWhlaWdodDogcmVtLWNhbGMoMjQpO1xuLy8gJHBhZ2luYXRpb24tbGktZm9udC1jb2xvcjogJGpldDtcbi8vICRwYWdpbmF0aW9uLWxpLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHBhZ2luYXRpb24tbGktbWFyZ2luOiByZW0tY2FsYyg1KTtcblxuLy8gV2UgdXNlIHRoZXNlIGZvciB0aGUgcGFnaW5hdGlvbiBhbmNob3IgbGlua3Ncbi8vICRwYWdpbmF0aW9uLWxpbmstcGFkOiByZW0tY2FsYygxIDEwIDEpO1xuLy8gJHBhZ2luYXRpb24tbGluay1mb250LWNvbG9yOiAkYWx1bWludW07XG4vLyAkcGFnaW5hdGlvbi1saW5rLWFjdGl2ZS1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtMTAlKTtcblxuLy8gV2UgdXNlIHRoZXNlIGZvciBkaXNhYmxlZCBhbmNob3IgbGlua3Ncbi8vICRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtY3Vyc29yOiBkZWZhdWx0O1xuLy8gJHBhZ2luYXRpb24tbGluay11bmF2YWlsYWJsZS1mb250LWNvbG9yOiAkYWx1bWludW07XG4vLyAkcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWJnLWFjdGl2ZTogdHJhbnNwYXJlbnQ7XG5cbi8vIFdlIHVzZSB0aGVzZSBmb3IgY3VycmVudGx5IHNlbGVjdGVkIGFuY2hvciBsaW5rc1xuLy8gJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWJhY2tncm91bmQ6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtY29sb3I6ICR3aGl0ZTtcbi8vICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtY3Vyc29yOiBkZWZhdWx0O1xuLy8gJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWFjdGl2ZS1iZzogJHByaW1hcnktY29sb3I7XG5cbi8vIDIxLiBQYW5lbHNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1wYW5lbC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGFuZCBib3JkZXIgc3R5bGVzXG4vLyAkcGFuZWwtYmc6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKTtcbi8vICRwYW5lbC1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJHBhbmVsLWJvcmRlci1zaXplOiAxcHg7XG4vLyAkY2FsbG91dC1wYW5lbC1iZzogc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6IDk0JSk7XG5cbi8vIFdlIHVzZSB0aGlzICUgdG8gY29udHJvbCBob3cgbXVjaCB3ZSBkYXJrZW4gdGhpbmdzIG9uIGhvdmVyXG4vLyAkcGFuZWwtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkcGFuZWwtYmcsICRsaWdodG5lc3M6IC0xMSUpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IGRlZmF1bHQgaW5uZXIgcGFkZGluZyBhbmQgYm90dG9tIG1hcmdpblxuLy8gJHBhbmVsLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcbi8vICRwYW5lbC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgZGVmYXVsdCBmb250IGNvbG9yc1xuLy8gJHBhbmVsLWZvbnQtY29sb3I6ICRvaWw7XG4vLyAkcGFuZWwtZm9udC1jb2xvci1hbHQ6ICR3aGl0ZTtcblxuLy8gJHBhbmVsLWhlYWRlci1hZGp1c3Q6IHRydWU7XG4vLyAkY2FsbG91dC1wYW5lbC1saW5rLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRjYWxsb3V0LXBhbmVsLWxpbmstY29sb3ItaG92ZXI6IHNjYWxlLWNvbG9yKCRjYWxsb3V0LXBhbmVsLWxpbmstY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuXG4vLyAyMi4gUHJpY2luZyBUYWJsZXNcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1wcmljaW5nLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgYm9yZGVyIGNvbG9yXG4vLyAkcHJpY2UtdGFibGUtYm9yZGVyOiBzb2xpZCAxcHggJGdhaW5zYm9ybztcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgYm90dG9tIG1hcmdpbiBvZiB0aGUgcHJpY2luZyB0YWJsZVxuLy8gJHByaWNlLXRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHRpdGxlIHN0eWxlc1xuLy8gJHByaWNlLXRpdGxlLWJnOiAkb2lsO1xuLy8gJHByaWNlLXRpdGxlLXBhZGRpbmc6IHJlbS1jYWxjKDE1IDIwKTtcbi8vICRwcmljZS10aXRsZS1hbGlnbjogY2VudGVyO1xuLy8gJHByaWNlLXRpdGxlLWNvbG9yOiAkc21va2U7XG4vLyAkcHJpY2UtdGl0bGUtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJHByaWNlLXRpdGxlLXNpemU6IHJlbS1jYWxjKDE2KTtcbi8vICRwcmljZS10aXRsZS1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBwcmljZSBzdHlsZXNcbi8vICRwcmljZS1tb25leS1iZzogJHZhcG9yO1xuLy8gJHByaWNlLW1vbmV5LXBhZGRpbmc6IHJlbS1jYWxjKDE1IDIwKTtcbi8vICRwcmljZS1tb25leS1hbGlnbjogY2VudGVyO1xuLy8gJHByaWNlLW1vbmV5LWNvbG9yOiAkb2lsO1xuLy8gJHByaWNlLW1vbmV5LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRwcmljZS1tb25leS1zaXplOiByZW0tY2FsYygzMik7XG4vLyAkcHJpY2UtbW9uZXktZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBkZXNjcmlwdGlvbiBzdHlsZXNcbi8vICRwcmljZS1iZzogJHdoaXRlO1xuLy8gJHByaWNlLWRlc2MtY29sb3I6ICRtb25zb29uO1xuLy8gJHByaWNlLWRlc2MtcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuLy8gJHByaWNlLWRlc2MtYWxpZ246IGNlbnRlcjtcbi8vICRwcmljZS1kZXNjLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpO1xuLy8gJHByaWNlLWRlc2Mtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJHByaWNlLWRlc2MtbGluZS1oZWlnaHQ6IDEuNDtcbi8vICRwcmljZS1kZXNjLWJvdHRvbS1ib3JkZXI6IGRvdHRlZCAxcHggJGdhaW5zYm9ybztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGxpc3QgaXRlbSBzdHlsZXNcbi8vICRwcmljZS1pdGVtLWNvbG9yOiAkb2lsO1xuLy8gJHByaWNlLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMTUpO1xuLy8gJHByaWNlLWl0ZW0tYWxpZ246IGNlbnRlcjtcbi8vICRwcmljZS1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHByaWNlLWl0ZW0td2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJHByaWNlLWl0ZW0tYm90dG9tLWJvcmRlcjogZG90dGVkIDFweCAkZ2FpbnNib3JvO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgQ1RBIGFyZWEgc3R5bGVzXG4vLyAkcHJpY2UtY3RhLWJnOiAkd2hpdGU7XG4vLyAkcHJpY2UtY3RhLWFsaWduOiBjZW50ZXI7XG4vLyAkcHJpY2UtY3RhLXBhZGRpbmc6IHJlbS1jYWxjKDIwIDIwIDApO1xuXG4vLyAyMy4gUHJvZ3Jlc3MgQmFyXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIHByb2dyZXNzIGJhciBoZWlnaHRcbi8vICRwcm9ncmVzcy1iYXItaGVpZ2h0OiByZW0tY2FsYygyNSk7XG4vLyAkcHJvZ3Jlc3MtYmFyLWNvbG9yOiAkdmFwb3I7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBib3JkZXIgc3R5bGVzXG4vLyAkcHJvZ3Jlc3MtYmFyLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAyMCUpO1xuLy8gJHByb2dyZXNzLWJhci1ib3JkZXItc2l6ZTogMXB4O1xuLy8gJHByb2dyZXNzLWJhci1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJHByb2dyZXNzLWJhci1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIG1hcmdpbiAmIHBhZGRpbmdcbi8vICRwcm9ncmVzcy1iYXItbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBtZXRlciBjb2xvcnNcbi8vICRwcm9ncmVzcy1tZXRlci1jb2xvcjogJHByaW1hcnktY29sb3I7XG4vLyAkcHJvZ3Jlc3MtbWV0ZXItc2Vjb25kYXJ5LWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yO1xuLy8gJHByb2dyZXNzLW1ldGVyLXN1Y2Nlc3MtY29sb3I6ICRzdWNjZXNzLWNvbG9yO1xuLy8gJHByb2dyZXNzLW1ldGVyLWFsZXJ0LWNvbG9yOiAkYWxlcnQtY29sb3I7XG5cbi8vIDI0LiBSYW5nZSBTbGlkZXJcbi8vIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC1cblxuLy8gJGluY2x1ZGUtaHRtbC1yYW5nZS1zbGlkZXItY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBUaGVzZSB2YXJpYWJsZXMgZGVmaW5lIHRoZSBzbGlkZXIgYmFyIHN0eWxlc1xuLy8gJHJhbmdlLXNsaWRlci1iYXItd2lkdGg6IDEwMCU7XG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1oZWlnaHQ6IHJlbS1jYWxjKDE2KTtcblxuLy8gJHJhbmdlLXNsaWRlci1iYXItYm9yZGVyLXdpZHRoOiAxcHg7XG4vLyAkcmFuZ2Utc2xpZGVyLWJhci1ib3JkZXItc3R5bGU6IHNvbGlkO1xuLy8gJHJhbmdlLXNsaWRlci1iYXItYm9yZGVyLWNvbG9yOiAkZ2FpbnNib3JvO1xuLy8gJHJhbmdlLXNsaWRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gJHJhbmdlLXNsaWRlci1yb3VuZDogJGdsb2JhbC1yb3VuZGVkO1xuLy8gJHJhbmdlLXNsaWRlci1iYXItYmctY29sb3I6ICRnaG9zdDtcbi8vICRyYW5nZS1zbGlkZXItYWN0aXZlLXNlZ21lbnQtYmctY29sb3I6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IC0xJSk7XG5cbi8vIFZlcnRpY2FsIGJhciBzdHlsZXNcbi8vICRyYW5nZS1zbGlkZXItdmVydGljYWwtYmFyLXdpZHRoOiByZW0tY2FsYygxNik7XG4vLyAkcmFuZ2Utc2xpZGVyLXZlcnRpY2FsLWJhci1oZWlnaHQ6IHJlbS1jYWxjKDIwMCk7XG5cbi8vIFRoZXNlIHZhcmlhYmVscyBkZWZpbmUgdGhlIHNsaWRlciBoYW5kbGUgc3R5bGVzXG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS13aWR0aDogcmVtLWNhbGMoMzIpO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtaGVpZ2h0OiByZW0tY2FsYygyMik7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1wb3NpdGlvbi10b3A6IHJlbS1jYWxjKC01KTtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWJnLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlci13aWR0aDogMXB4O1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtYm9yZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWJvcmRlci1jb2xvcjogbm9uZTtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLXJhZGl1czogJGdsb2JhbC1yYWRpdXM7XG4vLyAkcmFuZ2Utc2xpZGVyLWhhbmRsZS1yb3VuZDogJGdsb2JhbC1yb3VuZGVkO1xuLy8gJHJhbmdlLXNsaWRlci1oYW5kbGUtYmctaG92ZXItY29sb3I6IHNjYWxlLWNvbG9yKCRwcmltYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTIlKTtcbi8vICRyYW5nZS1zbGlkZXItaGFuZGxlLWN1cnNvcjogcG9pbnRlcjtcblxuLy8gJHJhbmdlLXNsaWRlci1kaXNhYmxlZC1vcGFjaXR5OiAuNztcbi8vICRyYW5nZS1zbGlkZXItZGlzYWJsZWQtY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkLXZhbHVlO1xuXG4vLyAyNS4gUmV2ZWFsXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtcmV2ZWFsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN0eWxlIG9mIHRoZSByZXZlYWwgb3ZlcmxheS5cbi8vICRyZXZlYWwtb3ZlcmxheS1iZzogcmdiYSgkYmxhY2ssIC40NSk7XG4vLyAkcmV2ZWFsLW92ZXJsYXktYmctb2xkOiAkYmxhY2s7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzdHlsZSBvZiB0aGUgbW9kYWwgaXRzZWxmLlxuLy8gJHJldmVhbC1tb2RhbC1iZzogJHdoaXRlO1xuLy8gJHJldmVhbC1wb3NpdGlvbi10b3A6IHJlbS1jYWxjKDEwMCk7XG4vLyAkcmV2ZWFsLWRlZmF1bHQtd2lkdGg6IDgwJTtcbi8vICRyZXZlYWwtbWF4LXdpZHRoOiAkcm93LXdpZHRoO1xuLy8gJHJldmVhbC1tb2RhbC1wYWRkaW5nOiByZW0tY2FsYygyMCk7XG4vLyAkcmV2ZWFsLWJveC1zaGFkb3c6IDAgMCAxMHB4IHJnYmEoJGJsYWNrLC40KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSByZXZlYWwgY2xvc2UgYnV0dG9uXG4vLyAkcmV2ZWFsLWNsb3NlLWZvbnQtc2l6ZTogcmVtLWNhbGMoNDApO1xuLy8gJHJldmVhbC1jbG9zZS10b3A6IHJlbS1jYWxjKDEwKTtcbi8vICRyZXZlYWwtY2xvc2Utc2lkZTogcmVtLWNhbGMoMjIpO1xuLy8gJHJldmVhbC1jbG9zZS1jb2xvcjogJGJhc2U7XG4vLyAkcmV2ZWFsLWNsb3NlLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgZGVmYXVsdCByYWRpdXMgdXNlZCB0aHJvdWdob3V0IHRoZSBjb3JlLlxuLy8gJHJldmVhbC1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzO1xuLy8gJHJldmVhbC1yb3VuZDogJGdsb2JhbC1yb3VuZGVkO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbW9kYWwgYm9yZGVyXG4vLyAkcmV2ZWFsLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkcmV2ZWFsLWJvcmRlci13aWR0aDogMXB4O1xuLy8gJHJldmVhbC1ib3JkZXItY29sb3I6ICRzdGVlbDtcblxuLy8gJHJldmVhbC1tb2RhbC1jbGFzczogXCJyZXZlYWwtbW9kYWxcIjtcbi8vICRjbG9zZS1yZXZlYWwtbW9kYWwtY2xhc3M6IFwiY2xvc2UtcmV2ZWFsLW1vZGFsXCI7XG5cbi8vIDI2LiBTaWRlIE5hdlxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgcGFkZGluZy5cbi8vICRzaWRlLW5hdi1wYWRkaW5nOiByZW0tY2FsYygxNCAwKTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGlzdCBzdHlsZXMuXG4vLyAkc2lkZS1uYXYtbGlzdC10eXBlOiBub25lO1xuLy8gJHNpZGUtbmF2LWxpc3QtcG9zaXRpb246IG91dHNpZGU7XG4vLyAkc2lkZS1uYXYtbGlzdC1tYXJnaW46IHJlbS1jYWxjKDAgMCA3IDApO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsaW5rIHN0eWxlcy5cbi8vICRzaWRlLW5hdi1saW5rLWNvbG9yOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRzaWRlLW5hdi1saW5rLWNvbG9yLWFjdGl2ZTogc2NhbGUtY29sb3IoJHNpZGUtbmF2LWxpbmstY29sb3IsICRsaWdodG5lc3M6IDMwJSk7XG4vLyAkc2lkZS1uYXYtbGluay1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJHNpZGUtbmF2LWxpbmstY29sb3IsICRsaWdodG5lc3M6IDMwJSk7XG4vLyAkc2lkZS1uYXYtbGluay1iZy1ob3ZlcjogaHNsYSgwLCAwLCAwLCAuMDI1KTtcbi8vICRzaWRlLW5hdi1saW5rLW1hcmdpbjogMDtcbi8vICRzaWRlLW5hdi1saW5rLXBhZGRpbmc6IHJlbS1jYWxjKDcgMTQpO1xuLy8gJHNpZGUtbmF2LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHNpZGUtbmF2LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuLy8gJHNpZGUtbmF2LWZvbnQtd2VpZ2h0LWFjdGl2ZTogJHNpZGUtbmF2LWZvbnQtd2VpZ2h0O1xuLy8gJHNpZGUtbmF2LWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseTtcbi8vICRzaWRlLW5hdi1mb250LWZhbWlseS1hY3RpdmU6ICRzaWRlLW5hdi1mb250LWZhbWlseTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGluZyBzdHlsZXMuXG4vLyAkc2lkZS1uYXYtaGVhZGluZy1jb2xvcjogJHNpZGUtbmF2LWxpbmstY29sb3I7XG4vLyAkc2lkZS1uYXYtaGVhZGluZy1mb250LXNpemU6ICRzaWRlLW5hdi1mb250LXNpemU7XG4vLyAkc2lkZS1uYXYtaGVhZGluZy1mb250LXdlaWdodDogYm9sZDtcbi8vICRzaWRlLW5hdi1oZWFkaW5nLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2U7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXNcbi8vICRzaWRlLW5hdi1kaXZpZGVyLXNpemU6IDFweDtcbi8vICRzaWRlLW5hdi1kaXZpZGVyLXN0eWxlOiBzb2xpZDtcbi8vICRzaWRlLW5hdi1kaXZpZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IDEwJSk7XG5cbi8vIDI3LiBTcGxpdCBCdXR0b25zXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgZGlmZmVyZW50IHNoYXJlZCBzdHlsZXMgZm9yIFNwbGl0IEJ1dHRvbnNcbi8vICRzcGxpdC1idXR0b24tZnVuY3Rpb24tZmFjdG9yOiAxMCU7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1jb2xvcjogJHdoaXRlO1xuLy8gJHNwbGl0LWJ1dHRvbi1zcGFuLWJvcmRlci1jb2xvcjogcmdiYSgyNTUsMjU1LDI1NSwwLjUpO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtY29sb3ItYWx0OiAkb2lsO1xuLy8gJHNwbGl0LWJ1dHRvbi1hY3RpdmUtYmctdGludDogcmdiYSgwLDAsMCwwLjEpO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aW55IHNwbGl0IGJ1dHRvbnNcbi8vICRzcGxpdC1idXR0b24tcGFkZGluZy10bnk6ICRidXR0b24tcGlwLXRueSAqIDEwO1xuLy8gJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLXRueTogJGJ1dHRvbi1waXAtdG55ICogNjtcbi8vICRzcGxpdC1idXR0b24tcGlwLXNpemUtdG55OiAkYnV0dG9uLXBpcC10bnk7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC10b3AtdG55OiAkYnV0dG9uLXBpcC10bnkgKiAyO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC10bnk6IHJlbS1jYWxjKC02KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgc21hbGwgc3BsaXQgYnV0dG9uc1xuLy8gJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLXNtbDogJGJ1dHRvbi1waXAtc21sICogMTA7XG4vLyAkc3BsaXQtYnV0dG9uLXNwYW4td2lkdGgtc21sOiAkYnV0dG9uLXBpcC1zbWwgKiA2O1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1zbWw6ICRidXR0b24tcGlwLXNtbDtcbi8vICRzcGxpdC1idXR0b24tcGlwLXRvcC1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDEuNTtcbi8vICRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtc21sOiByZW0tY2FsYygtNik7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIG1lZGl1bSBzcGxpdCBidXR0b25zXG4vLyAkc3BsaXQtYnV0dG9uLXBhZGRpbmctbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiA5O1xuLy8gJHNwbGl0LWJ1dHRvbi1zcGFuLXdpZHRoLW1lZDogJGJ1dHRvbi1waXAtbWVkICogNS41O1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtc2l6ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAtIHJlbS1jYWxjKDMpO1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtdG9wLW1lZDogJGJ1dHRvbi1waXAtbWVkICogMS41O1xuLy8gJHNwbGl0LWJ1dHRvbi1waXAtZGVmYXVsdC1mbG9hdC1tZWQ6IHJlbS1jYWxjKC02KTtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbGFyZ2Ugc3BsaXQgYnV0dG9uc1xuLy8gJHNwbGl0LWJ1dHRvbi1wYWRkaW5nLWxyZzogJGJ1dHRvbi1waXAtbHJnICogODtcbi8vICRzcGxpdC1idXR0b24tc3Bhbi13aWR0aC1scmc6ICRidXR0b24tcGlwLWxyZyAqIDU7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC1zaXplLWxyZzogJGJ1dHRvbi1waXAtbHJnIC0gcmVtLWNhbGMoNik7XG4vLyAkc3BsaXQtYnV0dG9uLXBpcC10b3AtbHJnOiAkYnV0dG9uLXBpcC1scmcgKyByZW0tY2FsYyg1KTtcbi8vICRzcGxpdC1idXR0b24tcGlwLWRlZmF1bHQtZmxvYXQtbHJnOiByZW0tY2FsYygtNik7XG5cbi8vIDI4LiBTdWIgTmF2XG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgbWFyZ2luIGFuZCBwYWRkaW5nXG4vLyAkc3ViLW5hdi1saXN0LW1hcmdpbjogcmVtLWNhbGMoLTQgMCAxOCk7XG4vLyAkc3ViLW5hdi1saXN0LXBhZGRpbmctdG9wOiByZW0tY2FsYyg0KTtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgZGVmaW5pdGlvblxuLy8gJHN1Yi1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuLy8gJHN1Yi1uYXYtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkc3ViLW5hdi1mb250LWNvbG9yOiAkYWx1bWludW07XG4vLyAkc3ViLW5hdi1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICRzdWItbmF2LXRleHQtZGVjb3JhdGlvbjogbm9uZTtcbi8vICRzdWItbmF2LXBhZGRpbmc6IHJlbS1jYWxjKDMgMTYpO1xuLy8gJHN1Yi1uYXYtYm9yZGVyLXJhZGl1czogM3B4O1xuLy8gJHN1Yi1uYXYtZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJHN1Yi1uYXYtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogLTI1JSk7XG5cblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGFjdGl2ZSBpdGVtIHN0eWxlc1xuXG4vLyAkc3ViLW5hdi1hY3RpdmUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkc3ViLW5hdi1hY3RpdmUtYmc6ICRwcmltYXJ5LWNvbG9yO1xuLy8gJHN1Yi1uYXYtYWN0aXZlLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc3ViLW5hdi1hY3RpdmUtYmcsICRsaWdodG5lc3M6IC0xNCUpO1xuLy8gJHN1Yi1uYXYtYWN0aXZlLWNvbG9yOiAkd2hpdGU7XG4vLyAkc3ViLW5hdi1hY3RpdmUtcGFkZGluZzogJHN1Yi1uYXYtcGFkZGluZztcbi8vICRzdWItbmF2LWFjdGl2ZS1jdXJzb3I6IGRlZmF1bHQ7XG5cbi8vICRzdWItbmF2LWl0ZW0tZGl2aWRlcjogXCJcIjtcbi8vICRzdWItbmF2LWl0ZW0tZGl2aWRlci1tYXJnaW46IHJlbS1jYWxjKDEyKTtcblxuLy8gMjkuIFN3aXRjaFxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLWZvcm0tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBDb250cm9sbGluZyBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgc3dpdGNoIGNvbnRhaW5lclxuLy8gJHN3aXRjaC1iZzogJGdhaW5zYm9ybztcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHN3aXRjaCBoZWlnaHRzIGZvciBvdXIgZGVmYXVsdCBjbGFzc2VzXG4vLyAkc3dpdGNoLWhlaWdodC10bnk6IDEuNXJlbTtcbi8vICRzd2l0Y2gtaGVpZ2h0LXNtbDogMS43NXJlbTtcbi8vICRzd2l0Y2gtaGVpZ2h0LW1lZDogMnJlbTtcbi8vICRzd2l0Y2gtaGVpZ2h0LWxyZzogMi41cmVtO1xuLy8gJHN3aXRjaC1ib3R0b20tbWFyZ2luOiAxLjVyZW07XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgc3dpdGNoLXBhZGRsZVxuLy8gJHN3aXRjaC1wYWRkbGUtYmc6ICR3aGl0ZTtcbi8vICRzd2l0Y2gtcGFkZGxlLXRyYW5zaXRpb24tc3BlZWQ6IC4xNXM7XG4vLyAkc3dpdGNoLXBhZGRsZS10cmFuc2l0aW9uLWVhc2U6IGVhc2Utb3V0O1xuLy8gJHN3aXRjaC1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yO1xuXG4vLyAzMC4gVGFibGVzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtdGFibGUtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgdGFibGUgYW5kIGV2ZW4gcm93c1xuLy8gJHRhYmxlLWJnOiAkd2hpdGU7XG4vLyAkdGFibGUtZXZlbi1yb3ctYmc6ICRzbm93O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSB0YWJsZSBjZWxsIGJvcmRlciBzdHlsZVxuLy8gJHRhYmxlLWJvcmRlci1zdHlsZTogc29saWQ7XG4vLyAkdGFibGUtYm9yZGVyLXNpemU6IDFweDtcbi8vICR0YWJsZS1ib3JkZXItY29sb3I6ICRnYWluc2Jvcm87XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGhlYWQgc3R5bGVzXG4vLyAkdGFibGUtaGVhZC1iZzogJHdoaXRlLXNtb2tlO1xuLy8gJHRhYmxlLWhlYWQtZm9udC1zaXplOiByZW0tY2FsYygxNCk7XG4vLyAkdGFibGUtaGVhZC1mb250LWNvbG9yOiAkamV0O1xuLy8gJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuLy8gJHRhYmxlLWhlYWQtcGFkZGluZzogcmVtLWNhbGMoOCAxMCAxMCk7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGZvb3Qgc3R5bGVzXG4vLyAkdGFibGUtZm9vdC1iZzogJHRhYmxlLWhlYWQtYmc7XG4vLyAkdGFibGUtZm9vdC1mb250LXNpemU6ICR0YWJsZS1oZWFkLWZvbnQtc2l6ZTtcbi8vICR0YWJsZS1mb290LWZvbnQtY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4vLyAkdGFibGUtZm9vdC1mb250LXdlaWdodDogJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ7XG4vLyAkdGFibGUtZm9vdC1wYWRkaW5nOiAkdGFibGUtaGVhZC1wYWRkaW5nO1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSBjYXB0aW9uXG4vLyB0YWJsZS1jYXB0aW9uLWJnOiB0cmFuc3BhcmVudDtcbi8vICR0YWJsZS1jYXB0aW9uLWZvbnQtY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4vLyAkdGFibGUtY2FwdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbi8vICR0YWJsZS1jYXB0aW9uLWZvbnQtd2VpZ2h0OiBib2xkO1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSByb3cgcGFkZGluZyBhbmQgZm9udCBzdHlsZXNcbi8vICR0YWJsZS1yb3ctcGFkZGluZzogcmVtLWNhbGMoOSAxMCk7XG4vLyAkdGFibGUtcm93LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHRhYmxlLXJvdy1mb250LWNvbG9yOiAkamV0O1xuLy8gJHRhYmxlLWxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCk7XG5cbi8vIFRoZXNlIGFyZSBmb3IgY29udHJvbGxpbmcgdGhlIGxheW91dCwgZGlzcGxheSBhbmQgbWFyZ2luIG9mIHRhYmxlc1xuLy8gJHRhYmxlLWxheW91dDogYXV0bztcbi8vICR0YWJsZS1kaXNwbGF5OiB0YWJsZS1jZWxsO1xuLy8gJHRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKTtcblxuXG4vLyAzMS4gVGFic1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLXRhYnMtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyAkdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDE2KTtcbiAgICR0YWJzLW5hdmlnYXRpb24tYmctY29sb3I6ICRzbm93O1xuICAgJHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtYmctY29sb3I6ICRzaWx2ZXI7XG4vLyAkdGFicy1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNiUpO1xuLy8gJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yOiAkamV0O1xuLy8gJHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtZm9udC1jb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yO1xuLy8gJHRhYnMtbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KTtcbi8vICR0YWJzLW5hdmlnYXRpb24tZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5O1xuXG4vLyAkdGFicy1jb250ZW50LW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KTtcbi8vICR0YWJzLWNvbnRlbnQtcGFkZGluZzogKCRjb2x1bW4tZ3V0dGVyLzIpO1xuXG4vLyAkdGFicy12ZXJ0aWNhbC1uYXZpZ2F0aW9uLW1hcmdpbi1ib3R0b206IDEuMjVyZW07XG5cbi8vIDMyLiBUaHVtYm5haWxzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBib3JkZXIgc3R5bGVzXG4gICAkdGh1bWItYm9yZGVyLXN0eWxlOiBub25lO1xuLy8gJHRodW1iLWJvcmRlci13aWR0aDogNHB4O1xuLy8gJHRodW1iLWJvcmRlci1jb2xvcjogJHdoaXRlO1xuICAgJHRodW1iLWJveC1zaGFkb3c6IG5vbmU7IC8vMCAwIDAgMXB4IHJnYmEoJGJsYWNrLC4yKTtcbi8vICR0aHVtYi1ib3gtc2hhZG93LWhvdmVyOiAwIDAgNnB4IDFweCByZ2JhKCRwcmltYXJ5LWNvbG9yLDAuNSk7XG5cbi8vIFJhZGl1cyBhbmQgdHJhbnNpdGlvbiBzcGVlZCBmb3IgdGh1bWJzXG4vLyAkdGh1bWItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vICR0aHVtYi10cmFuc2l0aW9uLXNwZWVkOiAyMDBtcztcblxuLy8gMzMuIFRvb2x0aXBzXG4vLyAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtXG5cbi8vICRpbmNsdWRlLWh0bWwtdG9vbHRpcC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXM7XG5cbi8vICRoYXMtdGlwLWJvcmRlci1ib3R0b206IGRvdHRlZCAxcHggJGlyb247XG4vLyAkaGFzLXRpcC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkaGFzLXRpcC1mb250LWNvbG9yOiAkb2lsO1xuLy8gJGhhcy10aXAtYm9yZGVyLWJvdHRvbS1ob3ZlcjogZG90dGVkIDFweCBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogLTU1JSk7XG4vLyAkaGFzLXRpcC1mb250LWNvbG9yLWhvdmVyOiAkcHJpbWFyeS1jb2xvcjtcbi8vICRoYXMtdGlwLWN1cnNvci10eXBlOiBoZWxwO1xuXG4vLyAkdG9vbHRpcC1wYWRkaW5nOiByZW0tY2FsYygxMik7XG4vLyAkdG9vbHRpcC1iZzogJG9pbDtcbi8vICR0b29sdGlwLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpO1xuLy8gJHRvb2x0aXAtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4vLyAkdG9vbHRpcC1mb250LWNvbG9yOiAkd2hpdGU7XG4vLyAkdG9vbHRpcC1saW5lLWhlaWdodDogMS4zO1xuLy8gJHRvb2x0aXAtY2xvc2UtZm9udC1zaXplOiByZW0tY2FsYygxMCk7XG4vLyAkdG9vbHRpcC1jbG9zZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICR0b29sdGlwLWNsb3NlLWZvbnQtY29sb3I6ICRtb25zb29uO1xuLy8gJHRvb2x0aXAtZm9udC1zaXplLXNtbDogcmVtLWNhbGMoMTQpO1xuLy8gJHRvb2x0aXAtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cztcbi8vICR0b29sdGlwLXJvdW5kZWQ6ICRnbG9iYWwtcm91bmRlZDtcbi8vICR0b29sdGlwLXBpcC1zaXplOiA1cHg7XG4vLyAkdG9vbHRpcC1tYXgtd2lkdGg6IDMwMHB4O1xuXG4vLyAzNC4gVG9wIEJhclxuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4gJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcztcblxuLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXJcbiAgICR0b3BiYXItYmctY29sb3I6ICRzbm93O1xuICR0b3BiYXItYmc6ICR0b3BiYXItYmctY29sb3I7XG5cbi8vIEhlaWdodCBhbmQgbWFyZ2luXG4gJHRvcGJhci1oZWlnaHQ6IHJlbS1jYWxjKDQ1KTtcbiAkdG9wYmFyLW1hcmdpbi1ib3R0b206IDA7XG5cbi8vIENvbnRyb2xsaW5nIHRoZSBzdHlsZXMgZm9yIHRoZSB0aXRsZSBpbiB0aGUgdG9wIGJhclxuICR0b3BiYXItdGl0bGUtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsO1xuICR0b3BiYXItdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxNyk7XG5cbi8vIFNldCB0aGUgbGluayBjb2xvcnMgYW5kIHN0eWxlcyBmb3IgdG9wLWxldmVsIG5hdlxuICAgJHRvcGJhci1saW5rLWNvbG9yOiAkb2lsO1xuICAgJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyOiAkb2lsO1xuICAgJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZTogJG9pbDtcbiAgICR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI6ICRvaWw7XG4gICAkdG9wYmFyLWxpbmstd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbi8vICR0b3BiYXItbGluay1mb250LXNpemU6IHJlbS1jYWxjKDEzKTtcbiR0b3BiYXItbGluay1ob3Zlci1saWdodG5lc3M6IC0xMCU7IC8vIERhcmtlbiBieSAxMCVcbi8vICR0b3BiYXItbGluay1iZzogJHRvcGJhci1iZztcbiAgICR0b3BiYXItbGluay1iZy1ob3ZlcjogJHNub3c7XG4vLyAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI6ICRjaGFyY29hbDtcbiAgICR0b3BiYXItbGluay1iZy1hY3RpdmU6ICRzbm93O1xuICAgJHRvcGJhci1saW5rLWJnLWFjdGl2ZS1ob3ZlcjogJHNub3c7IC8vc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6IC0xNCUpO1xuICR0b3BiYXItbGluay1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHk7XG4vLyAkdG9wYmFyLWxpbmstdGV4dC10cmFuc2Zvcm06IG5vbmU7XG4vLyAkdG9wYmFyLWxpbmstcGFkZGluZzogKCR0b3BiYXItaGVpZ2h0IC8gMyk7XG4vLyAkdG9wYmFyLWJhY2stbGluay1zaXplOiByZW0tY2FsYygxOCk7XG4vLyAkdG9wYmFyLWxpbmstZHJvcGRvd24tcGFkZGluZzogcmVtLWNhbGMoMjApO1xuLy8gJHRvcGJhci1idXR0b24tZm9udC1zaXplOiAuNzVyZW07XG4vLyAkdG9wYmFyLWJ1dHRvbi10b3A6IDdweDtcblxuLy8gU3R5bGUgdGhlIHRvcCBiYXIgZHJvcGRvd24gZWxlbWVudHNcbiAgICR0b3BiYXItZHJvcGRvd24tYmc6ICRzbm93O1xuICAgJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yOiAkanVtYm87XG4vLyAkdG9wYmFyLWRyb3Bkb3duLWxpbmstY29sb3ItaG92ZXI6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcbiAgICR0b3BiYXItZHJvcGRvd24tbGluay1iZzogJHNub3c7XG4gICAkdG9wYmFyLWRyb3Bkb3duLWxpbmstYmctaG92ZXI6ICRzbm93O1xuLy8gJHRvcGJhci1kcm9wZG93bi1saW5rLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbDtcbi8vICR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLXNpemU6IDVweDtcbi8vICR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWNvbG9yOiAkd2hpdGU7XG4vLyAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYTogLjQ7XG5cbi8vICR0b3BiYXItZHJvcGRvd24tbGFiZWwtY29sb3I6ICRtb25zb29uO1xuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC10ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQ7XG4vLyAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTApO1xuLy8gJHRvcGJhci1kcm9wZG93bi1sYWJlbC1iZzogJG9pbDtcblxuLy8gVG9wIG1lbnUgaWNvbiBzdHlsZXNcbi8vICR0b3BiYXItbWVudS1saW5rLXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuLy8gJHRvcGJhci1tZW51LWxpbmstZm9udC1zaXplOiByZW0tY2FsYygxMyk7XG4vLyAkdG9wYmFyLW1lbnUtbGluay13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkO1xuICAgJHRvcGJhci1tZW51LWxpbmstY29sb3I6ICRvaWw7XG4gICAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvcjogJG9pbDtcbi8vICR0b3BiYXItbWVudS1saW5rLWNvbG9yLXRvZ2dsZWQ6ICRqdW1ibztcbi8vICR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQ6ICRqdW1ibztcbi8vICR0b3BiYXItbWVudS1pY29uLXBvc2l0aW9uOiAkb3Bwb3NpdGUtZGlyZWN0aW9uOyAvLyBDaGFuZ2UgdG8gJGRlZmF1bHQtZmxvYXQgZm9yIGEgbGVmdCBtZW51IGljb25cblxuLy8gVHJhbnNpdGlvbnMgYW5kIGJyZWFrcG9pbnQgc3R5bGVzXG4vLyAkdG9wYmFyLXRyYW5zaXRpb24tc3BlZWQ6IDMwMG1zO1xuLy8gVXNpbmcgcmVtLWNhbGMgZm9yIHRoZSBiZWxvdyBicmVha3BvaW50IGNhdXNlcyBpc3N1ZXMgd2l0aCB0b3AgYmFyXG4vLyAkdG9wYmFyLWJyZWFrcG9pbnQ6ICN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9OyAvLyBDaGFuZ2UgdG8gOTk5OXB4IGZvciBhbHdheXMgbW9iaWxlIGxheW91dFxuLy8gJHRvcGJhci1tZWRpYS1xdWVyeTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHRvcGJhci1icmVha3BvaW50KX0pXCI7XG5cbi8vIFRvcC1iYXIgaW5wdXQgc3R5bGVzXG4vLyAkdG9wYmFyLWlucHV0LWhlaWdodDogcmVtLWNhbGMoMjgpO1xuXG4vLyBEaXZpZGVyIFN0eWxlc1xuLy8gJHRvcGJhci1kaXZpZGVyLWJvcmRlci1ib3R0b206IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAxMyUpO1xuLy8gJHRvcGJhci1kaXZpZGVyLWJvcmRlci10b3A6IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNTAlKTtcblxuLy8gU3RpY2t5IENsYXNzXG4gJHRvcGJhci1zdGlja3ktY2xhc3M6IFwiLnN0aWNreVwiO1xuICR0b3BiYXItYXJyb3dzOiB0cnVlOyAvL1NldCBmYWxzZSB0byByZW1vdmUgdGhlIHRyaWFuZ2xlIGljb24gZnJvbSB0aGUgbWVudSBpdGVtXG4gJHRvcGJhci1kcm9wZG93bi1hcnJvd3M6IHRydWU7IC8vU2V0IGZhbHNlIHRvIHJlbW92ZSB0aGUgXFwwMGJiID4+IHRleHQgZnJvbSBkcm9wZG93biBzdWJuYXZpZ2F0aW9uIGxpLy9cblxuLy8gMzYuIFZpc2liaWxpdHkgQ2xhc3Nlc1xuLy8gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLSAtIC0gLVxuXG4vLyAkaW5jbHVkZS1odG1sLXZpc2liaWxpdHktY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzO1xuLy8gJGluY2x1ZGUtYWNjZXNzaWJpbGl0eS1jbGFzc2VzOiB0cnVlO1xuLy8gJGluY2x1ZGUtdGFibGUtdmlzaWJpbGl0eS1jbGFzc2VzOiB0cnVlO1xuLy8gJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlczogdHJ1ZTtcblxuJG1haW5XaWR0aDogOTIlO1xuJGNvbXBsZW1lbnRhcnlXaWR0aDogMjAlO1xuJHNlY3Rpb24tYm9yZGVyLWNvbG9yOiAjY2NjO1xuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtYWNjb3JkaW9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmc6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1iZy1jb2xvcjogJHNpbHZlciAhZGVmYXVsdDtcbiRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjogc2NhbGUtY29sb3IoJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtMyUpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4kYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZzogKCRjb2x1bW4tZ3V0dGVyLzIpICFkZWZhdWx0O1xuJGFjY29yZGlvbi1jb250ZW50LWFjdGl2ZS1iZy1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuXG5cbi8vICBNaXhpbjogYWNjb3JkaW9uLWNvbnRhaW5lcigpXG4vLyAgRGVjcmlwdGlvbjogUmVzcG9uc2libGUgZm9yIHRoZSBjb250YWluZXIgY29tcG9uZW50IG9mIGFjY29yZGlvbnMsIGdlbmVyYXRpbmcgc3R5bGVzIHJlbGF0aW5nIHRvIGEgbWFyZ2luIG9mIHplcm8gYW5kIGEgY2xlYXJmaXhcbi8vICBFeHBsaWNpdCBEZXBlbmRlbmNpZXM6IGEgY2xlYXJmaXggbWl4aW4gKmlzKiBkZWZpbmVkLlxuLy8gIEltcGxpY2l0IERlcGVuZGVuY2llczogTm9uZVxuXG5AbWl4aW4gYWNjb3JkaW9uLWNvbnRhaW5lcigpIHtcbiAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi8vICBNaXhpbjogYWNjb3JkaW9uLW5hdmlnYXRpb24oICRiZywgJGhvdmVyLWJnLCAkYWN0aXZlLWJnLCAkcGFkZGluZywgJGFjdGl2ZV9jbGFzcywgICRmb250LWNvbG9yLCAkZm9udC1zaXplLCAkZm9udC1mYW1pbHkpIHtcbi8vICAgIEBwYXJhbXMgJGJnLWNvbG9yOiBbIGNvbG9yIG9yIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgbmF2aWdhdGlvbiBlbGVtZW50XG4vLyAgICBAcGFyYW1zICRob3Zlci1iZy1jb2xvciBbIGNvbG9yIG9yIHN0cmluZyBdOiBTcGVjaWZ5IHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgbmF2aWdhdGlvbiBlbGVtZW50IHdoZW4gaG92ZXJlZFxuLy8gICAgQHBhcmFtcyAkYWN0aXZlLWJnIFsgY29sb3Igb3Igc3RyaW5nIF06IFNwZWNpZnkgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBuYXZpZ2F0aW9uIGVsZW1lbnQgd2hlbiBjbGlja2VkIGFuZCBub3QgcmVsZWFzZWQuXG4vLyAgICBAcGFyYW1zICRhY3RpdmVfY2xhc3MgWyBzdHJpbmcgXTogU3BlY2lmeSB0aGUgY2xhc3MgbmFtZSB1c2VkIHRvIGtlZXAgdHJhY2sgb2Ygd2hpY2ggYWNjb3JkaW9uIHRhYiBzaG91bGQgYmUgdmlzaWJsZVxuLy8gICAgQHBhcmFtcyAkZm9udC1jb2xvciBbIGNvbG9yIG9yIHN0cmluZyBdOiBDb2xvciBvZiB0aGUgZm9udCBmb3IgYWNjb3JkaW9uXG4vLyAgICBAcGFyYW1zICRmb250LXNpemUgWyBudW1iZXIgXTogU3BlY2lmaXkgdGhlIGZvbnQtc2l6ZSBvZiB0aGUgdGV4dCBpbnNpZGUgdGhlIG5hdmlnYXRpb24gZWxlbWVudFxuLy8gICAgQHBhcmFtcyAkZm9udC1mYW1pbHkgWyBzdHJpbmcgXTogU3BlY2lmeSB0aGUgZm9udCBmYW1pbHkgZm9yIHRoZSB0ZXh0IG9mIHRoZSBuYXZpZ2F0aW9uIG9mIHRoZSBhY2NvcmlvblxuXG5AbWl4aW4gYWNjb3JkaW9uLW5hdmlnYXRpb24oICRiZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkaG92ZXItYmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvciwgJGFjdGl2ZS1iZzogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvciwgJHBhZGRpbmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nLCAkYWN0aXZlX2NsYXNzOiAnYWN0aXZlJywgICRmb250LWNvbG9yOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1jb2xvciwgJGZvbnQtc2l6ZTogJGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZSwgJGZvbnQtZmFtaWx5OiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1mYW1pbHkgKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gIEBpZiB0eXBlLW9mKCRhY3RpdmVfY2xhc3MpICE9IFwic3RyaW5nXCIge1xuICAgIEB3YXJuIFwiYCN7JGFjdGl2ZV9jbGFzc31gIGlzbid0IGEgdmFsaWQgc3RyaW5nLiBBIHZhbGlkIHN0cmluZyBpcyBuZWVkZWQgdG8gY29ycmVjdGx5IGJlIGludGVycG9sYXRlZCBhcyBhIENTUyBjbGFzcy4gQ1NTIGNsYXNzZXMgY2Fubm90IHN0YXJ0IHdpdGggYSBudW1iZXIgb3IgY29uc2lzdCBvZiBvbmx5IG51bWJlcnMuIENTUyB3aWxsIG5vdCBiZSBnZW5lcmF0ZWQgZm9yIHRoZSBhY3RpdmUgc3RhdGUgb2YgdGhpcyBuYXZpZ2F0aW9uIGNvbXBvbmVudC5cIlxuICB9XG4gIEBlbHNlIHtcbiAgICAmLiN7ICRhY3RpdmVfY2xhc3MgfSA+IGEge1xuICAgICAgYmFja2dyb3VuZDogJGFjdGl2ZS1iZztcbiAgICB9XG4gIH1cbiAgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAkYmc7XG4gICAgY29sb3I6ICRmb250LWNvbG9yO1xuICAgIEBpZiB0eXBlLW9mKCRwYWRkaW5nKSAhPSBudW1iZXIge1xuICAgICAgQHdhcm4gXCJgI3skcGFkZGluZ31gIHdhcyByZWFkIGFzICN7dHlwZS1vZigkcGFkZGluZyl9XCI7XG4gICAgICBAaWYgJGFjY29yZGlvbi1uYXZpZ2F0aW9uLXBhZGRpbmcgIT0gbnVsbCB7XG4gICAgICAgIEB3YXJuIFwiI3skcGFkZGluZ30gd2FzIHJlYWQgYXMgYSAje3R5cGUtb2YoJHBhZGRpbmcpfVwiO1xuICAgICAgICBAd2FybiBcImAjeyRwYWRkaW5nfWAgaXNuJ3QgYSB2YWxpZCBudW1iZXIuICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nICgjeyRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nfSkgd2lsbCBiZSB1c2VkIGluc3RlYWQuKVwiO1xuICAgICAgICBwYWRkaW5nOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZztcbiAgICAgIH1cbiAgICAgIEBlbHNlIHtcbiAgICAgICAgQHdhcm4gXCJgI3skcGFkZGluZ31gIGlzbid0IGEgdmFsaWQgbnVtYmVyIGFuZCAkYWNjb3JkaW9uLW5hdmlnYXRpb24tcGFkZGluZyBpcyBtaXNzaW5nLiBBIHZhbHVlIG9mIGBudWxsYCBpcyByZXR1cm5lZCB0byBub3Qgb3V0cHV0IGFuIGludmFsaWQgdmFsdWUgZm9yIHBhZGRpbmdcIjtcbiAgICAgICAgcGFkZGluZzogbnVsbDtcbiAgICAgIH1cbiAgICB9XG4gICAgQGVsc2Uge1xuICAgICAgcGFkZGluZzogJHBhZGRpbmc7XG4gICAgfVxuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHk7XG4gICAgQGlmIHR5cGUtb2YoJGZvbnQtc2l6ZSkgIT0gbnVtYmVyIHtcbiAgICAgIEB3YXJuIFwiYCN7JGZvbnQtc2l6ZX1gIHdhcyByZWFkIGFzIGEgI3t0eXBlLW9mKCRmb250LXNpemUpfVwiO1xuICAgICAgQGlmICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemUgIT0gbnVsbCB7XG4gICAgICAgIEB3YXJuIFwiYCN7JGZvbnQtc2l6ZX1gIGlzIG5vdCBhIHZhbGlkIG51bWJlci4gVGhlIHZhbHVlIG9mICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemUgd2lsbCBiZSB1c2VkIGluc3RlYWQgKCN7JGFjY29yZGlvbi1uYXZpZ2F0aW9uLWZvbnQtc2l6ZX0pLlwiO1xuICAgICAgICBmb250LXNpemU6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LXNpemU7XG4gICAgICB9XG4gICAgICBAZWxzZXtcbiAgICAgICAgQHdhcm4gXCJgI3skZm9udC1zaXplfWAgaXMgbm90IGEgdmFsaWQgbnVtYmVyIGFuZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplIGlzIG5vdCBkZWZpbmVkLiBBIHZhbHVlIG9mIGBudWxsYCB3aWxsIGJlIHJldHVybmVkIHRvIG5vdCBnZW5lcmF0ZSBhbiBpbnZhbGlkIHZhbHVlIGZvciBmb250LXNpemUuXCI7XG4gICAgICAgIGZvbnQtc2l6ZTogbnVsbDtcblxuICAgICAgfVxuICAgIH1cbiAgICBAZWxzZSB7XG4gICAgICBmb250LXNpemU6ICRmb250LXNpemU7XG4gICAgfVxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJGhvdmVyLWJnO1xuICAgIH1cbiAgfVxufVxuXG4vLyAgTWl4aW46IGFjY29yZGlvbi1jb250ZW50KCRiZywgJHBhZGRpbmcsICRhY3RpdmUtY2xhc3MpXG4vLyAgICBAcGFyYW1zICRwYWRkaW5nIFsgbnVtYmVyIF06IFBhZGRpbmcgZm9yIHRoZSBjb250ZW50IG9mIHRoZSBjb250YWluZXJcbi8vICAgIEBwYXJhbXMgJGJnIFsgY29sb3IgIF06IEJhY2tncm91bmQgY29sb3IgZm9yIHRoZSBjb250ZW50IHdoZW4gaXQncyB2aXNpYmxlXG4vLyAgICBAcGFyYW1zICRhY3RpdmVfY2xhc3MgWyBzdHJpbmcgXTogQ2xhc3MgbmFtZSB1c2VkIHRvIGtlZXAgdHJhY2sgb2Ygd2hpY2ggYWNjb3JkaW9uIHRhYiBzaG91bGQgYmUgdmlzaWJsZS5cblxuQG1peGluIGFjY29yZGlvbi1jb250ZW50KCRiZzogJGFjY29yZGlvbi1jb250ZW50LWFjdGl2ZS1iZy1jb2xvciwgJHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nLCAkYWN0aXZlX2NsYXNzOiAnYWN0aXZlJykge1xuICBkaXNwbGF5OiBub25lO1xuICBAaWYgdHlwZS1vZigkcGFkZGluZykgIT0gXCJudW1iZXJcIiB7XG4gICAgQHdhcm4gXCIjeyRwYWRkaW5nfSB3YXMgcmVhZCBhcyBhICN7dHlwZS1vZigkcGFkZGluZyl9XCI7XG4gICAgQGlmICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nICE9IG51bGwge1xuICAgICAgQHdhcm4gXCJgI3skcGFkZGluZ31gIGlzbid0IGEgdmFsaWQgbnVtYmVyLiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyB1c2VkIGluc3RlYWRcIjtcbiAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb24tY29udGVudC1wYWRkaW5nO1xuICAgIH0gQGVsc2Uge1xuICAgICAgQHdhcm4gXCJgI3skcGFkZGluZ31gIGlzbid0IGEgdmFsaWQgbnVtYmVyIGFuZCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiAkYWNjb3JkaW9uLWNvbnRlbnQtcGFkZGluZyBpcyBub3QgZGVmaW5lZC4gQSB2YWx1ZSBvZiBgbnVsbGAgaXMgcmV0dXJuZWQgdG8gbm90IG91dHB1dCBhbiBpbnZhbGlkIHZhbHVlIGZvciBwYWRkaW5nLlwiO1xuICAgICAgcGFkZGluZzogbnVsbDtcbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuICB9XG5cbiAgQGlmIHR5cGUtb2YoJGFjdGl2ZV9jbGFzcykgIT0gXCJzdHJpbmdcIiB7XG4gICAgQHdhcm4gXCJgI3skYWN0aXZlX2NsYXNzfWAgaXNuJ3QgYSB2YWxpZCBzdHJpbmcuIEEgdmFsaWQgc3RyaW5nIGlzIG5lZWRlZCB0byBjb3JyZWN0bHkgYmUgaW50ZXJwb2xhdGVkIGFzIGEgQ1NTIGNsYXNzLiBDU1MgY2xhc3NlcyBjYW5ub3Qgc3RhcnQgd2l0aCBhIG51bWJlciBvciBjb25zaXN0IG9mIG9ubHkgbnVtYmVycy4gQ1NTIHdpbGwgbm90IGJlIGdlbmVyYXRlZCBmb3IgdGhlIGFjdGl2ZSBzdGF0ZSBvZiB0aGUgY29udGVudC4gXCJcbiAgfVxuICBAZWxzZSB7XG4gICAgJi4jeyRhY3RpdmVfY2xhc3N9IHtcbiAgICAgIGJhY2tncm91bmQ6ICRiZztcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIH1cbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwiYWNjb3JkaW9uXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtYWNjb3JkaW9uLWNsYXNzZXMge1xuICAgIC5hY2NvcmRpb24ge1xuICAgICAgQGluY2x1ZGUgY2xlYXJmaXg7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgLmFjY29yZGlvbi1uYXZpZ2F0aW9uLCBkZCB7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwICFpbXBvcnRhbnQ7XG4gICAgICAgICYuYWN0aXZlID4gYSB7IGJhY2tncm91bmQ6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1hY3RpdmUtYmctY29sb3I7IH1cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tYmctY29sb3I7XG4gICAgICAgICAgY29sb3I6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1mb250LWNvbG9yO1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGZvbnQtZmFtaWx5OiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgZm9udC1zaXplOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24tZm9udC1zaXplO1xuICAgICAgICAgIHBhZGRpbmc6ICRhY2NvcmRpb24tbmF2aWdhdGlvbi1wYWRkaW5nO1xuICAgICAgICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kOiAkYWNjb3JkaW9uLW5hdmlnYXRpb24taG92ZXItYmctY29sb3I7IH1cbiAgICAgICAgfVxuXG4gICAgICAgID4gLmNvbnRlbnQge1xuICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgcGFkZGluZzogJGFjY29yZGlvbi1jb250ZW50LXBhZGRpbmc7XG4gICAgICAgICAgJi5hY3RpdmUge1xuICAgICAgICAgICAgYmFja2dyb3VuZDogJGFjY29yZGlvbi1jb250ZW50LWFjdGl2ZS1iZy1jb2xvcjtcbiAgICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuLy8gVGhpcyBpcyB0aGUgZGVmYXVsdCBodG1sIGFuZCBib2R5IGZvbnQtc2l6ZSBmb3IgdGhlIGJhc2UgcmVtIHZhbHVlLlxuJHJlbS1iYXNlOiAxNnB4ICFkZWZhdWx0O1xuXG4vLyBJTVBPUlQgT05DRVxuLy8gV2UgdXNlIHRoaXMgdG8gcHJldmVudCBzdHlsZXMgZnJvbSBiZWluZyBsb2FkZWQgbXVsdGlwbGUgdGltZXMgZm9yIGNvbXBvbmVudHMgdGhhdCByZWx5IG9uIG90aGVyIGNvbXBvbmVudHMuXG4kbW9kdWxlczogKCkgIWRlZmF1bHQ7XG5cbkBtaXhpbiBleHBvcnRzKCRuYW1lKSB7XG4gIC8vIEltcG9ydCBmcm9tIGdsb2JhbCBzY29wZVxuICAkbW9kdWxlczogJG1vZHVsZXMgIWdsb2JhbDtcbiAgLy8gQ2hlY2sgaWYgYSBtb2R1bGUgaXMgYWxyZWFkeSBvbiB0aGUgbGlzdFxuICAkbW9kdWxlX2luZGV4OiBpbmRleCgkbW9kdWxlcywgJG5hbWUpO1xuICBAaWYgKCgkbW9kdWxlX2luZGV4ID09IG51bGwpIG9yICgkbW9kdWxlX2luZGV4ID09IGZhbHNlKSkge1xuICAgICRtb2R1bGVzOiBhcHBlbmQoJG1vZHVsZXMsICRuYW1lKSAhZ2xvYmFsO1xuICAgIEBjb250ZW50O1xuICB9XG59XG5cbi8vXG4vLyBAZnVuY3Rpb25zXG4vL1xuXG5cbi8vIFJBTkdFU1xuLy8gV2UgdXNlIHRoZXNlIGZ1bmN0aW9ucyB0byBkZWZpbmUgcmFuZ2VzIGZvciB2YXJpb3VzIHRoaW5ncywgbGlrZSBtZWRpYSBxdWVyaWVzLlxuQGZ1bmN0aW9uIGxvd2VyLWJvdW5kKCRyYW5nZSkge1xuICBAaWYgbGVuZ3RoKCRyYW5nZSkgPD0gMCB7XG4gICAgQHJldHVybiAwO1xuICB9XG4gIEByZXR1cm4gbnRoKCRyYW5nZSwgMSk7XG59XG5cbkBmdW5jdGlvbiB1cHBlci1ib3VuZCgkcmFuZ2UpIHtcbiAgQGlmIGxlbmd0aCgkcmFuZ2UpIDwgMiB7XG4gICAgQHJldHVybiA5OTk5OTk5OTk5OTk7XG4gIH1cbiAgQHJldHVybiBudGgoJHJhbmdlLCAyKTtcbn1cblxuLy8gU1RSSVAgVU5JVFxuLy8gSXQgc3RyaXBzIHRoZSB1bml0IG9mIG1lYXN1cmUgYW5kIHJldHVybnMgaXRcbkBmdW5jdGlvbiBzdHJpcC11bml0KCRudW0pIHtcbiAgQHJldHVybiAkbnVtIC8gKCRudW0gKiAwICsgMSk7XG59XG5cbi8vIFRFWFQgSU5QVVQgVFlQRVNcblxuQGZ1bmN0aW9uIHRleHQtaW5wdXRzKCAkdHlwZXM6IGFsbCwgJHNlbGVjdG9yOiBpbnB1dCApIHtcblxuICAkcmV0dXJuOiAoKTtcblxuICAkYWxsLXRleHQtaW5wdXQtdHlwZXM6XG4gICAgdGV4dFxuICAgIHBhc3N3b3JkXG4gICAgZGF0ZVxuICAgIGRhdGV0aW1lXG4gICAgZGF0ZXRpbWUtbG9jYWxcbiAgICBtb250aFxuICAgIHdlZWtcbiAgICBlbWFpbFxuICAgIG51bWJlclxuICAgIHNlYXJjaFxuICAgIHRlbFxuICAgIHRpbWVcbiAgICB1cmxcbiAgICBjb2xvclxuICAgIHRleHRhcmVhO1xuXG4gIEBpZiAkdHlwZXMgPT0gYWxsIHsgJHR5cGVzOiAkYWxsLXRleHQtaW5wdXQtdHlwZXM7IH1cblxuICBAZWFjaCAkdHlwZSBpbiAkdHlwZXMge1xuICAgIEBpZiAkdHlwZSA9PSB0ZXh0YXJlYSB7XG4gICAgICBAaWYgJHNlbGVjdG9yID09IGlucHV0IHtcbiAgICAgICAgJHJldHVybjogYXBwZW5kKCRyZXR1cm4sIHVucXVvdGUoJyN7JHR5cGV9JyksIGNvbW1hKVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCB1bnF1b3RlKCcjeyR0eXBlfSN7JHNlbGVjdG9yfScpLCBjb21tYSlcbiAgICAgIH1cbiAgICB9IEBlbHNlIHtcbiAgICAgICRyZXR1cm46IGFwcGVuZCgkcmV0dXJuLCB1bnF1b3RlKCcjeyRzZWxlY3Rvcn1bdHlwZT1cIiN7JHR5cGV9XCJdJyksIGNvbW1hKVxuICAgIH1cbiAgfVxuXG4gICAgQHJldHVybiAkcmV0dXJuO1xuXG59XG5cbi8vIENPTlZFUlQgVE8gUkVNXG5AZnVuY3Rpb24gY29udmVydC10by1yZW0oJHZhbHVlLCAkYmFzZS12YWx1ZTogJHJlbS1iYXNlKSB7XG4gICR2YWx1ZTogc3RyaXAtdW5pdCgkdmFsdWUpIC8gc3RyaXAtdW5pdCgkYmFzZS12YWx1ZSkgKiAxcmVtO1xuICBAaWYgKCR2YWx1ZSA9PSAwcmVtKSB7ICR2YWx1ZTogMDsgfSAvLyBUdXJuIDByZW0gaW50byAwXG4gIEByZXR1cm4gJHZhbHVlO1xufVxuXG5AZnVuY3Rpb24gZGF0YSgkYXR0cikge1xuICBAaWYgJG5hbWVzcGFjZSB7XG4gICAgQHJldHVybiAnW2RhdGEtJyArICRuYW1lc3BhY2UgKyAnLScgKyAkYXR0ciArICddJztcbiAgfVxuXG4gIEByZXR1cm4gJ1tkYXRhLScgKyAkYXR0ciArICddJztcbn1cblxuLy8gUkVNIENBTENcblxuLy8gTmV3IFN5bnRheCwgYWxsb3dzIHRvIG9wdGlvbmFsbHkgY2FsY3VsYXRlIG9uIGEgZGlmZmVyZW50IGJhc2UgdmFsdWUgdG8gY291bnRlciBjb21wb3VuZGluZyBlZmZlY3Qgb2YgcmVtJ3MuXG4vLyBDYWxsIHdpdGggMSwgMiwgMyBvciA0IHBhcmFtZXRlcnMsICdweCcgaXMgbm90IHJlcXVpcmVkIGJ1dCBzdXBwb3J0ZWQ6XG4vL1xuLy8gICByZW0tY2FsYygxMCAyMCAzMHB4IDQwKTtcbi8vXG4vLyBTcGFjZSBkZWxpbWl0ZWQsIGlmIHlvdSB3YW50IHRvIGRlbGltaXQgdXNpbmcgY29tbWEncywgd3JhcCBpdCBpbiBhbm90aGVyIHBhaXIgb2YgYnJhY2tldHNcbi8vXG4vLyAgIHJlbS1jYWxjKCgxMCwgMjAsIDMwLCA0MHB4KSk7XG4vL1xuLy8gT3B0aW9uYWxseSBjYWxsIHdpdGggYSBkaWZmZXJlbnQgYmFzZSAoZWc6IDhweCkgdG8gY2FsY3VsYXRlIHJlbS5cbi8vXG4vLyAgIHJlbS1jYWxjKDE2cHggMzJweCA0OHB4LCA4cHgpO1xuLy9cbi8vIElmIHlvdSByZXF1aXJlIHRvIGNvbW1hIHNlcGFyYXRlIHlvdXIgbGlzdFxuLy9cbi8vICAgcmVtLWNhbGMoKDE2cHgsIDMycHgsIDQ4KSwgOHB4KTtcblxuQGZ1bmN0aW9uIHJlbS1jYWxjKCR2YWx1ZXMsICRiYXNlLXZhbHVlOiAkcmVtLWJhc2UpIHtcbiAgJG1heDogbGVuZ3RoKCR2YWx1ZXMpO1xuXG4gIEBpZiAkbWF4ID09IDEgeyBAcmV0dXJuIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAxKSwgJGJhc2UtdmFsdWUpOyB9XG5cbiAgJHJlbVZhbHVlczogKCk7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heCB7XG4gICAgJHJlbVZhbHVlczogYXBwZW5kKCRyZW1WYWx1ZXMsIGNvbnZlcnQtdG8tcmVtKG50aCgkdmFsdWVzLCAkaSksICRiYXNlLXZhbHVlKSk7XG4gIH1cbiAgQHJldHVybiAkcmVtVmFsdWVzO1xufVxuXG5cbkBmdW5jdGlvbiBlbS1jYWxjKCR2YWx1ZXMpIHtcbiAgJHJlbVZhbHVlczogcmVtLWNhbGMoJHZhbHVlcyk7XG5cbiAgJG1heDogbGVuZ3RoKCRyZW1WYWx1ZXMpO1xuXG4gIEBpZiAkbWF4ID09IDEgeyBAcmV0dXJuIHN0cmlwLXVuaXQobnRoKCRyZW1WYWx1ZXMsIDEpKSAqIDFlbTsgfVxuXG4gICRlbVZhbHVlczogKCk7XG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJG1heCB7XG4gICAgJGVtVmFsdWVzOiBhcHBlbmQoJGVtVmFsdWVzLCBzdHJpcC11bml0KG50aCgkcmVtVmFsdWVzLCAkaSkpICogMWVtKTtcbiAgfVxuICBAcmV0dXJuICRlbVZhbHVlcztcbn1cblxuXG4vLyBEZXByZWNhdGVkOiBPTEQgRU0gQ0FMQ1xuQGZ1bmN0aW9uIGVtQ2FsYygkdmFsdWVzKSB7XG4gIEByZXR1cm4gZW0tY2FsYygkdmFsdWVzKTtcbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBCbG9jayBHcmlkIFZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtYmxvY2stZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG4kaW5jbHVkZS14bC1odG1sLWJsb2NrLWdyaWQtY2xhc3NlczogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG1heGltdW0gbnVtYmVyIG9mIGJsb2NrIGdyaWQgZWxlbWVudHMgcGVyIHJvd1xuJGJsb2NrLWdyaWQtZWxlbWVudHM6IDEyICFkZWZhdWx0O1xuJGJsb2NrLWdyaWQtZGVmYXVsdC1zcGFjaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG5cbiRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQ6IGZhbHNlICFkZWZhdWx0O1xuQGlmICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQge1xuICAkYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmc6ICRjb2x1bW4tZ3V0dGVyO1xufVxuXG4vLyBFbmFibGVzIG1lZGlhIHF1ZXJpZXMgZm9yIGJsb2NrLWdyaWQgY2xhc3Nlcy4gU2V0IHRvIGZhbHNlIGlmIHdyaXRpbmcgc2VtYW50aWMgSFRNTC5cbiRibG9jay1ncmlkLW1lZGlhLXF1ZXJpZXM6IHRydWUgIWRlZmF1bHQ7XG5cbi8vXG4vLyBCbG9jayBHcmlkIE1peGluc1xuLy9cblxuLy8gQ3JlYXRlIGEgY3VzdG9tIGJsb2NrIGdyaWRcbi8vXG4vLyAkcGVyLXJvdyAtICMgb2YgaXRlbXMgdG8gZGlzcGxheSBwZXIgcm93LiBEZWZhdWx0OiBmYWxzZS5cbi8vICRzcGFjaW5nIC0gIyBvZiBlbXMgdG8gdXNlIGFzIHBhZGRpbmcgb24gZWFjaCBibG9jayBpdGVtLiBEZWZhdWx0OiByZW0tY2FsYygyMCkuXG4vLyAkaW5jbHVkZS1zcGFjaW5nIC0gQWRkcyBwYWRkaW5nIHRvIG91ciBsaXN0IGl0ZW0uIERlZmF1bHQ6IHRydWUuXG4vLyAkYmFzZS1zdHlsZSAtIEFwcGx5IGEgYmFzZSBzdHlsZSB0byBibG9jayBncmlkLiBEZWZhdWx0OiB0cnVlLlxuQG1peGluIGJsb2NrLWdyaWQoXG4gICRwZXItcm93OmZhbHNlLFxuICAkc3BhY2luZzokYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmcsXG4gICRpbmNsdWRlLXNwYWNpbmc6dHJ1ZSxcbiAgJGJhc2Utc3R5bGU6dHJ1ZSkge1xuXG4gIEBpZiAkYmFzZS1zdHlsZSB7XG4gICAgZGlzcGxheTogYmxvY2s7XG4gICAgcGFkZGluZzogMDtcbiAgICBAaWYgJGFsaWduLWJsb2NrLWdyaWQtdG8tZ3JpZCB7XG4gICAgICBtYXJnaW46IDA7XG4gICAgfSBAZWxzZSB7XG4gICAgICBtYXJnaW46IDAgKC0kc3BhY2luZy8yKTtcbiAgICB9XG4gICAgQGluY2x1ZGUgY2xlYXJmaXg7XG5cbiAgICA+IGxpIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgQGlmICRpbmNsdWRlLXNwYWNpbmcge1xuICAgICAgICBwYWRkaW5nOiAwICgkc3BhY2luZy8yKSAkc3BhY2luZztcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBAaWYgJHBlci1yb3cge1xuICAgID4gbGkge1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIEBpZiAkaW5jbHVkZS1zcGFjaW5nIHtcbiAgICAgICAgcGFkZGluZzogMCAoJHNwYWNpbmcvMikgJHNwYWNpbmc7XG4gICAgICB9XG4gICAgICB3aWR0aDogMTAwJS8kcGVyLXJvdztcblxuICAgICAgJjpudGgtb2YtdHlwZSgxbikgeyBjbGVhcjogbm9uZTsgfVxuICAgICAgJjpudGgtb2YtdHlwZSgjeyRwZXItcm93fW4rMSkgeyBjbGVhcjogYm90aDsgfVxuICAgICAgQGlmICRhbGlnbi1ibG9jay1ncmlkLXRvLWdyaWQge1xuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWFsaWduZWQoJHBlci1yb3csICRzcGFjaW5nKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQG1peGluIGJsb2NrLWdyaWQtYWxpZ25lZCgkcGVyLXJvdywgJHNwYWNpbmcpIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1lbGVtZW50cyB7XG4gICAgQGlmICRwZXItcm93ID49ICRpIHtcbiAgICAgICRncmlkLWNvbHVtbjogJysnICsgJGk7XG4gICAgICBAaWYgJHBlci1yb3cgPT0gJGkge1xuICAgICAgICAkZ3JpZC1jb2x1bW46ICcnO1xuICAgICAgfVxuICAgICAgJjpudGgtb2YtdHlwZSgjeyRwZXItcm93fW4je3VucXVvdGUoJGdyaWQtY29sdW1uKX0pIHtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiAoJHNwYWNpbmcgLSAoKCRzcGFjaW5nIC8gJHBlci1yb3cpICogKCRwZXItcm93IC0gKCRpIC0gMSkpKSk7XG4gICAgICAgIHBhZGRpbmctcmlnaHQ6ICgkc3BhY2luZyAtICgoJHNwYWNpbmcgLyAkcGVyLXJvdykgKiAkaSkpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuXG4vLyBHZW5lcmF0ZSBwcmVzZW50YXRpb25hbCBtYXJrdXAgZm9yIGJsb2NrIGdyaWQuXG4vL1xuLy8gJHNpemUgLSBOYW1lIG9mIGNsYXNzIHRvIHVzZSwgaS5lLiBcImxhcmdlXCIgd2lsbCBnZW5lcmF0ZSAubGFyZ2UtYmxvY2stZ3JpZC0xLCAubGFyZ2UtYmxvY2stZ3JpZC0yLCBldGMuXG5AbWl4aW4gYmxvY2stZ3JpZC1odG1sLWNsYXNzZXMoJHNpemUsICRpbmNsdWRlLXNwYWNpbmcpIHtcbiAgQGZvciAkaSBmcm9tIDEgdGhyb3VnaCAkYmxvY2stZ3JpZC1lbGVtZW50cyB7XG4gICAgLiN7JHNpemV9LWJsb2NrLWdyaWQtI3soJGkpfSB7XG4gICAgICBAaW5jbHVkZSBibG9jay1ncmlkKCRpLCAkYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmcsICRpbmNsdWRlLXNwYWNpbmcsIGZhbHNlKTtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImJsb2NrLWdyaWRcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1ibG9jay1ncmlkLWNsYXNzZXMge1xuXG4gICAgW2NsYXNzKj1cImJsb2NrLWdyaWQtXCJdIHsgQGluY2x1ZGUgYmxvY2stZ3JpZDsgfVxuXG4gICAgQGlmICRibG9jay1ncmlkLW1lZGlhLXF1ZXJpZXMge1xuICAgICAgQG1lZGlhICN7JHNtYWxsLXVwfSB7XG4gICAgICAgIEBpbmNsdWRlIGJsb2NrLWdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnNtYWxsLCAkaW5jbHVkZS1zcGFjaW5nOmZhbHNlKTtcbiAgICAgIH1cblxuICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICBAaW5jbHVkZSBibG9jay1ncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZTptZWRpdW0sICRpbmNsdWRlLXNwYWNpbmc6ZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6bGFyZ2UsICRpbmNsdWRlLXNwYWNpbmc6ZmFsc2UpO1xuICAgICAgfVxuXG4gICAgICBAaWYgJGluY2x1ZGUteGwtaHRtbC1ibG9jay1ncmlkLWNsYXNzZXMge1xuICAgICAgICBAbWVkaWEgI3skeGxhcmdlLXVwfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6eGxhcmdlLCAkaW5jbHVkZS1zcGFjaW5nOmZhbHNlKTtcbiAgICAgICAgfVxuXG4gICAgICAgIEBtZWRpYSAjeyR4eGxhcmdlLXVwfSB7XG4gICAgICAgICAgQGluY2x1ZGUgYmxvY2stZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6eHhsYXJnZSwgJGluY2x1ZGUtc3BhY2luZzpmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBCcmVhZGNydW1iIFZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgYnJlYWRjcnVtYiBjb250YWluZXIuXG4kY3J1bWItYmc6IHNjYWxlLWNvbG9yKCRzZWNvbmRhcnktY29sb3IsICRsaWdodG5lc3M6IDU1JSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIHBhZGRpbmcgYXJvdW5kIHRoZSBicmVhZGNydW1icy5cbiRjcnVtYi1wYWRkaW5nOiByZW0tY2FsYyg5IDE0IDkpICFkZWZhdWx0O1xuJGNydW1iLXNpZGUtcGFkZGluZzogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBib3JkZXIgc3R5bGVzLlxuJGNydW1iLWZ1bmN0aW9uLWZhY3RvcjogLTEwJSAhZGVmYXVsdDtcbiRjcnVtYi1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJGNydW1iLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kY3J1bWItYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkY3J1bWItYmcsICRsaWdodG5lc3M6ICRjcnVtYi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuJGNydW1iLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdmFyaW91cyB0ZXh0IHN0eWxlcyBmb3IgYnJlYWRjcnVtYnMuXG4kY3J1bWItZm9udC1zaXplOiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG4kY3J1bWItZm9udC1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kY3J1bWItZm9udC1jb2xvci1jdXJyZW50OiAkb2lsICFkZWZhdWx0O1xuJGNydW1iLWZvbnQtY29sb3ItdW5hdmFpbGFibGU6ICRhbHVtaW51bSAhZGVmYXVsdDtcbiRjcnVtYi1mb250LXRyYW5zZm9ybTogdXBwZXJjYXNlICFkZWZhdWx0O1xuJGNydW1iLWxpbmstZGVjb3I6IHVuZGVybGluZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHNsYXNoIGJldHdlZW4gYnJlYWRjcnVtYnNcbiRjcnVtYi1zbGFzaC1jb2xvcjogJGJhc2UgIWRlZmF1bHQ7XG4kY3J1bWItc2xhc2g6IFwiL1wiICFkZWZhdWx0O1xuXG4vL1xuLy8gQnJlYWRjcnVtYiBNaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBhIGNvbnRhaW5lciBhcm91bmQgb3VyIGJyZWFkY3J1bWJzXG5AbWl4aW4gY3J1bWItY29udGFpbmVyIHtcbiAgYm9yZGVyLXN0eWxlOiAkY3J1bWItYm9yZGVyLXN0eWxlO1xuICBib3JkZXItd2lkdGg6ICRjcnVtYi1ib3JkZXItc2l6ZTtcbiAgZGlzcGxheTogYmxvY2s7XG4gIGxpc3Qtc3R5bGU6IG5vbmU7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgcGFkZGluZzogJGNydW1iLXBhZGRpbmc7XG5cbiAgLy8gV2UgY29udHJvbCB3aGljaCBiYWNrZ3JvdW5kIGNvbG9yIGFuZCBib3JkZXIgY29tZSB0aHJvdWdoLlxuICBiYWNrZ3JvdW5kLWNvbG9yOiAkY3J1bWItYmc7XG4gIGJvcmRlci1jb2xvcjogJGNydW1iLWJvcmRlci1jb2xvcjtcbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGJyZWFkY3J1bWIgc3R5bGVzIGZyb20gbGlzdCBpdGVtcy5cbkBtaXhpbiBjcnVtYnMge1xuXG4gIC8vIEEgbm9ybWFsIHN0YXRlIHdpbGwgbWFrZSB0aGUgbGlua3MgbG9vayBhbmQgYWN0IGxpa2UgY2xpY2thYmxlIGJyZWFkY3J1bWJzLlxuICBjb2xvcjogJGNydW1iLWZvbnQtY29sb3I7XG4gIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgZm9udC1zaXplOiAkY3J1bWItZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGNydW1iLWZvbnQtc2l6ZTtcbiAgbWFyZ2luOiAwO1xuICB0ZXh0LXRyYW5zZm9ybTogJGNydW1iLWZvbnQtdHJhbnNmb3JtO1xuXG4gICY6aG92ZXIgYSwgJjpmb2N1cyBhIHsgdGV4dC1kZWNvcmF0aW9uOiAkY3J1bWItbGluay1kZWNvcjsgfVxuXG4gIGEge1xuICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvcjtcbiAgfVxuXG4gIC8vIEN1cnJlbnQgaXMgZm9yIHRoZSBsaW5rIG9mIHRoZSBjdXJyZW50IHBhZ2VcbiAgJi5jdXJyZW50IHtcbiAgICBjb2xvcjogJGNydW1iLWZvbnQtY29sb3ItY3VycmVudDtcbiAgICBjdXJzb3I6ICRjdXJzb3ItZGVmYXVsdC12YWx1ZTtcbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvci1jdXJyZW50O1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRlZmF1bHQtdmFsdWU7XG4gICAgfVxuXG4gICAgJjpob3ZlciwgJjpob3ZlciBhLFxuICAgICY6Zm9jdXMsICY6Zm9jdXMgYSB7IHRleHQtZGVjb3JhdGlvbjogbm9uZTsgfVxuICB9XG5cbiAgLy8gVW5hdmFpbGFibGUgcmVtb3ZlZCBjb2xvciBhbmQgbGluayBzdHlsZXMgc28gaXQgbG9va3MgaW5hY3RpdmUuXG4gICYudW5hdmFpbGFibGUge1xuICAgIGNvbG9yOiAkY3J1bWItZm9udC1jb2xvci11bmF2YWlsYWJsZTtcbiAgICBhIHsgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlOyB9XG5cbiAgICAmOmhvdmVyLFxuICAgICY6aG92ZXIgYSxcbiAgICAmOmZvY3VzLFxuICAgIGE6Zm9jdXMge1xuICAgICAgY29sb3I6ICRjcnVtYi1mb250LWNvbG9yLXVuYXZhaWxhYmxlO1xuICAgICAgY3Vyc29yOiAkY3Vyc29yLWRpc2FibGVkLXZhbHVlO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiBub25lO1xuICAgIH1cbiAgfVxuXG4gICY6YmVmb3JlIHtcbiAgICBjb2xvcjogJGNydW1iLXNsYXNoLWNvbG9yO1xuICAgIGNvbnRlbnQ6IFwiI3skY3J1bWItc2xhc2h9XCI7XG4gICAgbWFyZ2luOiAwICRjcnVtYi1zaWRlLXBhZGRpbmc7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIHRvcDogMXB4O1xuICB9XG5cbiAgJjpmaXJzdC1jaGlsZDpiZWZvcmUge1xuICAgIGNvbnRlbnQ6IFwiIFwiO1xuICAgIG1hcmdpbjogMDtcbiAgfVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwiYnJlYWRjcnVtYnNcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlcyB7XG4gICAgLmJyZWFkY3J1bWJzIHtcbiAgICAgIEBpbmNsdWRlIGNydW1iLWNvbnRhaW5lcjtcbiAgICAgIEBpbmNsdWRlIHJhZGl1cygkY3J1bWItcmFkaXVzKTtcblxuICAgICAgPiAqIHtcbiAgICAgICAgQGluY2x1ZGUgY3J1bWJzO1xuICAgICAgfVxuICAgIH1cbiAgICAvKiBBY2Nlc3NpYmlsaXR5IC0gaGlkZXMgdGhlIGZvcndhcmQgc2xhc2ggKi9cbiAgICBbYXJpYS1sYWJlbD1cImJyZWFkY3J1bWJzXCJdIFthcmlhLWhpZGRlbj1cInRydWVcIl06YWZ0ZXIge1xuICAgICAgY29udGVudDogXCIvXCI7XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGJ1aWxkIHBhZGRpbmcgZm9yIGJ1dHRvbnMuXG4kYnV0dG9uLXRueTogcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuJGJ1dHRvbi1zbWw6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRidXR0b24tbWVkOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kYnV0dG9uLWxyZzogcmVtLWNhbGMoMTgpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBkaXNwbGF5IHByb3BlcnR5LlxuJGJ1dHRvbi1kaXNwbGF5OiBpbmxpbmUtYmxvY2sgIWRlZmF1bHQ7XG4kYnV0dG9uLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYnV0dG9uIHRleHQgc3R5bGVzLlxuJGJ1dHRvbi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRidXR0b24tZm9udC1jb2xvci1hbHQ6ICRvaWwgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtdG55OiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtc21sOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtbWVkOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtbHJnOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kYnV0dG9uLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGJ1dHRvbi1mb250LWFsaWduOiBjZW50ZXIgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHZhcmlvdXMgaG92ZXIgZWZmZWN0cy5cbiRidXR0b24tZnVuY3Rpb24tZmFjdG9yOiAtMjAlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBidXR0b24gYm9yZGVyIHN0eWxlcy5cbiRidXR0b24tYm9yZGVyLXdpZHRoOiAwICFkZWZhdWx0O1xuJGJ1dHRvbi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGJ1dHRvbi1iZy1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkYnV0dG9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4kYnV0dG9uLWJvcmRlci1jb2xvcjogJGJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcbiRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4kc2Vjb25kYXJ5LWJ1dHRvbi1ib3JkZXItY29sb3I6ICRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyOiBzY2FsZS1jb2xvcigkc3VjY2Vzcy1jb2xvciwgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpICFkZWZhdWx0O1xuJHN1Y2Nlc3MtYnV0dG9uLWJvcmRlci1jb2xvcjogJHN1Y2Nlc3MtYnV0dG9uLWJnLWhvdmVyICFkZWZhdWx0O1xuJGFsZXJ0LWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGFsZXJ0LWNvbG9yLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikgIWRlZmF1bHQ7XG4kYWxlcnQtYnV0dG9uLWJvcmRlci1jb2xvcjogJGFsZXJ0LWJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcbiR3YXJuaW5nLWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJHdhcm5pbmctY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiR3YXJuaW5nLWJ1dHRvbi1ib3JkZXItY29sb3I6ICR3YXJuaW5nLWJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcbiRpbmZvLWJ1dHRvbi1iZy1ob3Zlcjogc2NhbGUtY29sb3IoJGluZm8tY29sb3IsICRsaWdodG5lc3M6ICRidXR0b24tZnVuY3Rpb24tZmFjdG9yKSAhZGVmYXVsdDtcbiRpbmZvLWJ1dHRvbi1ib3JkZXItY29sb3I6ICRpbmZvLWJ1dHRvbi1iZy1ob3ZlciAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBkZWZhdWx0IHJhZGl1cyB1c2VkIHRocm91Z2hvdXQgdGhlIGNvcmUuXG4kYnV0dG9uLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG4kYnV0dG9uLXJvdW5kOiAkZ2xvYmFsLXJvdW5kZWQgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCBkZWZhdWx0IG9wYWNpdHkgYW5kIGN1cnNvciBmb3IgZGlzYWJsZWQgYnV0dG9ucy5cbiRidXR0b24tZGlzYWJsZWQtb3BhY2l0eTogLjcgIWRlZmF1bHQ7XG4kYnV0dG9uLWRpc2FibGVkLWN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlICFkZWZhdWx0O1xuXG5cbi8vXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgYSBkZWZhdWx0IGJ1dHRvbiBiYXNlLlxuLy9cbi8vICRzdHlsZSAtIFNldHMgYmFzZSBzdHlsZXMuIENhbiBiZSBzZXQgdG8gZmFsc2UuIERlZmF1bHQ6IHRydWUuXG4vLyAkZGlzcGxheSAtIFVzZWQgdG8gY29udHJvbCBkaXNwbGF5IHByb3BlcnR5LiBEZWZhdWx0OiAkYnV0dG9uLWRpc3BsYXkgfHwgaW5saW5lLWJsb2NrXG5cbkBtaXhpbiBidXR0b24tYmFzZSgkc3R5bGU6dHJ1ZSwgJGRpc3BsYXk6JGJ1dHRvbi1kaXNwbGF5KSB7XG4gIEBpZiAkc3R5bGUge1xuICAgIC13ZWJraXQtYXBwZWFyYW5jZTogbm9uZTtcbiAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgYm9yZGVyLXJhZGl1czowO1xuICAgIGJvcmRlci1zdHlsZTogJGJ1dHRvbi1ib3JkZXItc3R5bGU7XG4gICAgYm9yZGVyLXdpZHRoOiAkYnV0dG9uLWJvcmRlci13aWR0aDtcbiAgICBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTtcbiAgICBmb250LWZhbWlseTogJGJ1dHRvbi1mb250LWZhbWlseTtcbiAgICBmb250LXdlaWdodDogJGJ1dHRvbi1mb250LXdlaWdodDtcbiAgICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICAgIG1hcmdpbjogMCAwICRidXR0b24tbWFyZ2luLWJvdHRvbTtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgdGV4dC1hbGlnbjogJGJ1dHRvbi1mb250LWFsaWduO1xuICAgIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgfVxuICBAaWYgJGRpc3BsYXkgeyBkaXNwbGF5OiAkZGlzcGxheTsgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBhZGQgYnV0dG9uIHNpemUgc3R5bGVzXG4vL1xuLy8gJHBhZGRpbmcgLSBVc2VkIHRvIGJ1aWxkIHBhZGRpbmcgZm9yIGJ1dHRvbnMgRGVmYXVsdDogJGJ1dHRvbi1tZWQgfHw9IHJlbS1jYWxjKDEyKVxuLy8gJGZ1bGwtd2lkdGggLSBXZSBjYW4gc2V0ICRmdWxsLXdpZHRoOnRydWUgdG8gcmVtb3ZlIHNpZGUgcGFkZGluZyBleHRlbmQgd2lkdGggLSBEZWZhdWx0OiBmYWxzZVxuXG5AbWl4aW4gYnV0dG9uLXNpemUoJHBhZGRpbmc6JGJ1dHRvbi1tZWQsICRmdWxsLXdpZHRoOmZhbHNlKSB7XG5cbiAgLy8gV2UgY29udHJvbCB3aGljaCBwYWRkaW5nIHN0eWxlcyBjb21lIHRocm91Z2gsXG4gIC8vIHRoZXNlIGNhbiBiZSB0dXJuZWQgb2ZmIGJ5IHNldHRpbmcgJHBhZGRpbmc6ZmFsc2VcbiAgQGlmICRwYWRkaW5nIHtcbiAgICBwYWRkaW5nOiAkcGFkZGluZyAoJHBhZGRpbmcgKiAyKSAoJHBhZGRpbmcgKyByZW0tY2FsYygxKSkgKCRwYWRkaW5nICogMik7XG4gICAgLy8gV2UgY29udHJvbCB0aGUgZm9udC1zaXplIGJhc2VkIG9uIG1peGluIGlucHV0LlxuICAgIEBpZiAgICAgICRwYWRkaW5nID09ICRidXR0b24tbWVkIHsgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtbWVkOyB9XG4gICAgQGVsc2UgaWYgJHBhZGRpbmcgPT0gJGJ1dHRvbi10bnkgeyBmb250LXNpemU6ICRidXR0b24tZm9udC10bnk7IH1cbiAgICBAZWxzZSBpZiAkcGFkZGluZyA9PSAkYnV0dG9uLXNtbCB7IGZvbnQtc2l6ZTogJGJ1dHRvbi1mb250LXNtbDsgfVxuICAgIEBlbHNlIGlmICRwYWRkaW5nID09ICRidXR0b24tbHJnIHsgZm9udC1zaXplOiAkYnV0dG9uLWZvbnQtbHJnOyB9XG4gIH1cblxuICAvLyBXZSBjYW4gc2V0ICRmdWxsLXdpZHRoOnRydWUgdG8gcmVtb3ZlIHNpZGUgcGFkZGluZyBleHRlbmQgd2lkdGguXG4gIEBpZiAkZnVsbC13aWR0aCB7XG4gICAgLy8gV2Ugc3RpbGwgbmVlZCB0byBjaGVjayBpZiAkcGFkZGluZyBpcyBzZXQuXG4gICAgQGlmICRwYWRkaW5nIHtcbiAgICAgIHBhZGRpbmctYm90dG9tOiAkcGFkZGluZyArIHJlbS1jYWxjKDEpO1xuICAgICAgcGFkZGluZy10b3A6ICRwYWRkaW5nO1xuICAgIH0gQGVsc2UgaWYgJHBhZGRpbmcgPT0gZmFsc2Uge1xuICAgICAgcGFkZGluZy1ib3R0b206MDtcbiAgICAgIHBhZGRpbmctdG9wOjA7XG4gICAgfVxuICAgIHBhZGRpbmctbGVmdDogMDtcbiAgICBwYWRkaW5nLXJpZ2h0OiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICB9XG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIHdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSB0aGUgYnV0dG9uIGhvdmVyIGFuZCBib3JkZXIgY29sb3JzXG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBidXR0b24gY29sb3Igc3R5bGVzXG4vL1xuLy8gJGJnIC0gQmFja2dyb3VuZCBjb2xvci4gV2UgY2FuIHNldCAkYmc6ZmFsc2UgZm9yIGEgdHJhbnNwYXJlbnQgYmFja2dyb3VuZC4gRGVmYXVsdDogJHByaW1hcnktY29sb3IuXG4vLyAkcmFkaXVzIC0gSWYgdHJ1ZSwgc2V0IHRvIGJ1dHRvbiByYWRpdXMgd2hpY2ggaXMgJGJ1dHRvbi1yYWRpdXMgfHwgZXhwbGljaXRseSBzZXQgcmFkaXVzIGFtb3VudCBpbiBweCAoZXguICRyYWRpdXM6MTBweCkuIERlZmF1bHQ6IGZhbHNlXG4vLyAkZGlzYWJsZWQgLSBXZSBjYW4gc2V0ICRkaXNhYmxlZDp0cnVlIHRvIGNyZWF0ZSBhIGRpc2FibGVkIHRyYW5zcGFyZW50IGJ1dHRvbi4gRGVmYXVsdDogZmFsc2Vcbi8vICRiZy1ob3ZlciAtIEJ1dHRvbiBIb3ZlciBCYWNrZ3JvdW5kIENvbG9yLiBEZWZhdWx0OiAkYnV0dG9uLWJnLWhvdmVyXG4vLyAkYm9yZGVyLWNvbG9yIC0gQnV0dG9uIEJvcmRlciBDb2xvci4gRGVmYXVsdDogJGJ1dHRvbi1ib3JkZXItY29sb3JcbkBtaXhpbiBidXR0b24tc3R5bGUoJGJnOiRidXR0b24tYmctY29sb3IsICRyYWRpdXM6ZmFsc2UsICRkaXNhYmxlZDpmYWxzZSwgJGJnLWhvdmVyOm51bGwsICRib3JkZXItY29sb3I6bnVsbCkge1xuXG4gIC8vIFdlIGNvbnRyb2wgd2hpY2ggYmFja2dyb3VuZCBzdHlsZXMgYXJlIHVzZWQsXG4gIC8vIHRoZXNlIGNhbiBiZSByZW1vdmVkIGJ5IHNldHRpbmcgJGJnOmZhbHNlXG4gIEBpZiAkYmcge1xuXG4gICAgQGlmICRiZy1ob3ZlciA9PSBudWxsIHtcbiAgICAgICRiZy1ob3ZlcjogaWYoJGJnID09ICRidXR0b24tYmctY29sb3IsICRidXR0b24tYmctaG92ZXIsIHNjYWxlLWNvbG9yKCRiZywgJGxpZ2h0bmVzczogJGJ1dHRvbi1mdW5jdGlvbi1mYWN0b3IpKTtcbiAgICB9XG5cbiAgICBAaWYgJGJvcmRlci1jb2xvciA9PSBudWxsIHtcbiAgICAgICRib3JkZXItY29sb3I6IGlmKCRiZyA9PSAkYnV0dG9uLWJnLWNvbG9yLCAkYnV0dG9uLWJvcmRlci1jb2xvciwgc2NhbGUtY29sb3IoJGJnLCAkbGlnaHRuZXNzOiAkYnV0dG9uLWZ1bmN0aW9uLWZhY3RvcikpO1xuICAgIH1cblxuICAgIC8vIFRoaXMgZmluZCB0aGUgbGlnaHRuZXNzIHBlcmNlbnRhZ2Ugb2YgdGhlIGJhY2tncm91bmQgY29sb3IuXG4gICAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG4gICAgJGJnLWhvdmVyLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZy1ob3Zlcik7XG5cbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7XG4gICAgYm9yZGVyLWNvbG9yOiAkYm9yZGVyLWNvbG9yO1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICRiZy1ob3ZlcjsgfVxuXG4gICAgLy8gV2UgY29udHJvbCB0aGUgdGV4dCBjb2xvciBmb3IgeW91IGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgIGNvbG9yOiBpZigkYmctbGlnaHRuZXNzID4gNzAlLCAkYnV0dG9uLWZvbnQtY29sb3ItYWx0LCAkYnV0dG9uLWZvbnQtY29sb3IpO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHtcbiAgICAgIGNvbG9yOiBpZigkYmctaG92ZXItbGlnaHRuZXNzID4gNzAlLCAkYnV0dG9uLWZvbnQtY29sb3ItYWx0LCAkYnV0dG9uLWZvbnQtY29sb3IpO1xuICAgIH1cbiAgfVxuXG4gIC8vIFdlIGNhbiBzZXQgJGRpc2FibGVkOnRydWUgdG8gY3JlYXRlIGEgZGlzYWJsZWQgdHJhbnNwYXJlbnQgYnV0dG9uLlxuICBAaWYgJGRpc2FibGVkIHtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGN1cnNvcjogJGJ1dHRvbi1kaXNhYmxlZC1jdXJzb3I7XG4gICAgb3BhY2l0eTogJGJ1dHRvbi1kaXNhYmxlZC1vcGFjaXR5O1xuICAgICY6aG92ZXIsXG4gICAgJjpmb2N1cyB7IGJhY2tncm91bmQtY29sb3I6ICRiZzsgfVxuICB9XG5cbiAgLy8gV2UgY2FuIGNvbnRyb2wgaG93IG11Y2ggYnV0dG9uIHJhZGl1cyBpcyB1c2VkLlxuICBAaWYgJHJhZGl1cyA9PSB0cnVlIHsgQGluY2x1ZGUgcmFkaXVzKCRidXR0b24tcmFkaXVzKTsgfVxuICBAZWxzZSBpZiAkcmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRyYWRpdXMpOyB9XG5cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gcXVpY2tseSBjcmVhdGUgYnV0dG9ucyB3aXRoIGEgc2luZ2xlIG1peGluLiBBcyBAamFyZWRoYXJkeSBwdXRzIGl0LCBcInRoZSBraXRjaGVuIHNpbmsgbWl4aW5cIlxuLy9cbi8vICRwYWRkaW5nIC0gVXNlZCB0byBidWlsZCBwYWRkaW5nIGZvciBidXR0b25zIERlZmF1bHQ6ICRidXR0b24tbWVkIHx8PSByZW0tY2FsYygxMilcbi8vICRiZyAtIFByaW1hcnkgY29sb3Igc2V0IGluIHNldHRpbmdzIGZpbGUuIERlZmF1bHQ6ICRidXR0b24tYmcuXG4vLyAkcmFkaXVzIC0gSWYgdHJ1ZSwgc2V0IHRvIGJ1dHRvbiByYWRpdXMgd2hpY2ggaXMgJGdsb2JhbC1yYWRpdXMgfHwgZXhwbGljaXRseSBzZXQgcmFkaXVzIGFtb3VudCBpbiBweCAoZXguICRyYWRpdXM6MTBweCkuIERlZmF1bHQ6ZmFsc2UuXG4vLyAkZnVsbC13aWR0aCAtIFdlIGNhbiBzZXQgJGZ1bGwtd2lkdGg6dHJ1ZSB0byByZW1vdmUgc2lkZSBwYWRkaW5nIGV4dGVuZCB3aWR0aC4gRGVmYXVsdDpmYWxzZS5cbi8vICRkaXNhYmxlZCAtIFdlIGNhbiBzZXQgJGRpc2FibGVkOnRydWUgdG8gY3JlYXRlIGEgZGlzYWJsZWQgdHJhbnNwYXJlbnQgYnV0dG9uLiBEZWZhdWx0OmZhbHNlLlxuLy8gJGlzLXByZWZpeCAtIE5vdCB1c2VkPyBEZWZhdWx0OmZhbHNlLlxuLy8gJGJnLWhvdmVyIC0gQnV0dG9uIEhvdmVyIENvbG9yIC0gRGVmYXVsdCBudWxsIC0gc2VlIGJ1dHRvbi1zdHlsZSBtaXhpblxuLy8gJGJvcmRlci1jb2xvciAtIEJ1dHRvbiBCb3JkZXIgQ29sb3IgLSBEZWZhdWx0IG51bGwgLSBzZWUgYnV0dG9uLXN0eWxlIG1peGluXG4vLyAkdHJhbnNpdGlvbiAtIFdlIGNhbiBjb250cm9sIHdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdGhlIGJhY2tncm91bmQtY29sb3IgdHJhbnNpdGlvbiBwcm9wZXJ0eSAtIERlZmF1bHQ6dHJ1ZS5cbkBtaXhpbiBidXR0b24oJHBhZGRpbmc6JGJ1dHRvbi1tZWQsICRiZzokYnV0dG9uLWJnLWNvbG9yLCAkcmFkaXVzOmZhbHNlLCAkZnVsbC13aWR0aDpmYWxzZSwgJGRpc2FibGVkOmZhbHNlLCAkaXMtcHJlZml4OmZhbHNlLCAkYmctaG92ZXI6bnVsbCwgJGJvcmRlci1jb2xvcjpudWxsLCAkdHJhbnNpdGlvbjogdHJ1ZSkge1xuICBAaW5jbHVkZSBidXR0b24tYmFzZTtcbiAgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmcsICRmdWxsLXdpZHRoKTtcbiAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZywgJHJhZGl1cywgJGRpc2FibGVkLCAkYmctaG92ZXIsICRib3JkZXItY29sb3IpO1xuXG4gIEBpZiAkdHJhbnNpdGlvbiB7XG4gICAgQGluY2x1ZGUgc2luZ2xlLXRyYW5zaXRpb24oYmFja2dyb3VuZC1jb2xvcik7XG4gIH1cbn1cblxuXG5AaW5jbHVkZSBleHBvcnRzKFwiYnV0dG9uXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXMge1xuXG4gICAgLy8gRGVmYXVsdCBzdHlsZXMgYXBwbGllZCBvdXRzaWRlIG9mIG1lZGlhIHF1ZXJ5XG4gICAgYnV0dG9uLCAuYnV0dG9uIHtcbiAgICAgIEBpbmNsdWRlIGJ1dHRvbi1iYXNlO1xuICAgICAgQGluY2x1ZGUgYnV0dG9uLXNpemU7XG4gICAgICBAaW5jbHVkZSBidXR0b24tc3R5bGU7XG5cbiAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKGJhY2tncm91bmQtY29sb3IpO1xuXG4gICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHNlY29uZGFyeS1jb2xvciwgJGJnLWhvdmVyOiRzZWNvbmRhcnktYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRzZWNvbmRhcnktYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICYuc3VjY2VzcyAgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc3VjY2Vzcy1jb2xvciwgJGJnLWhvdmVyOiRzdWNjZXNzLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokc3VjY2Vzcy1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgJi5hbGVydCAgICAgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRhbGVydC1jb2xvciwgJGJnLWhvdmVyOiRhbGVydC1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JGFsZXJ0LWJ1dHRvbi1ib3JkZXItY29sb3IpOyB9XG4gICAgICAmLndhcm5pbmcgICB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHdhcm5pbmctY29sb3IsICRiZy1ob3Zlcjokd2FybmluZy1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JHdhcm5pbmctYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICYuaW5mbyAgICAgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokaW5mby1jb2xvciwgJGJnLWhvdmVyOiRpbmZvLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokaW5mby1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuXG4gICAgICAmLmxhcmdlICB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOiRidXR0b24tbHJnKTsgfVxuICAgICAgJi5zbWFsbCAgeyBAaW5jbHVkZSBidXR0b24tc2l6ZSgkcGFkZGluZzokYnV0dG9uLXNtbCk7IH1cbiAgICAgICYudGlueSAgIHsgQGluY2x1ZGUgYnV0dG9uLXNpemUoJHBhZGRpbmc6JGJ1dHRvbi10bnkpOyB9XG4gICAgICAmLmV4cGFuZCB7IEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOm51bGwsICRmdWxsLXdpZHRoOnRydWUpOyB9XG5cbiAgICAgICYubGVmdC1hbGlnbiAgeyB0ZXh0LWFsaWduOiBsZWZ0OyB0ZXh0LWluZGVudDogcmVtLWNhbGMoMTIpOyB9XG4gICAgICAmLnJpZ2h0LWFsaWduIHsgdGV4dC1hbGlnbjogcmlnaHQ7IHBhZGRpbmctcmlnaHQ6IHJlbS1jYWxjKDEyKTsgfVxuXG4gICAgICAmLnJhZGl1cyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6ZmFsc2UsICRyYWRpdXM6dHJ1ZSk7IH1cbiAgICAgICYucm91bmQgIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzpmYWxzZSwgJHJhZGl1czokYnV0dG9uLXJvdW5kKTsgfVxuXG4gICAgICAmLmRpc2FibGVkLCAmW2Rpc2FibGVkXSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGJ1dHRvbi1iZy1jb2xvciwgJGRpc2FibGVkOnRydWUsICRiZy1ob3ZlcjokYnV0dG9uLWJnLWhvdmVyLCAkYm9yZGVyLWNvbG9yOiRidXR0b24tYm9yZGVyLWNvbG9yKTtcbiAgICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzZWNvbmRhcnktY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JHNlY29uZGFyeS1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JHNlY29uZGFyeS1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgICAmLnN1Y2Nlc3MgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzdWNjZXNzLWNvbG9yLCAkZGlzYWJsZWQ6dHJ1ZSwgJGJnLWhvdmVyOiRzdWNjZXNzLWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokc3VjY2Vzcy1idXR0b24tYm9yZGVyLWNvbG9yKTsgfVxuICAgICAgICAmLmFsZXJ0IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokYWxlcnQtY29sb3IsICRkaXNhYmxlZDp0cnVlLCAkYmctaG92ZXI6JGFsZXJ0LWJ1dHRvbi1iZy1ob3ZlciwgJGJvcmRlci1jb2xvcjokYWxlcnQtYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICAgJi53YXJuaW5nIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokd2FybmluZy1jb2xvciwgJGRpc2FibGVkOnRydWUsICRiZy1ob3Zlcjokd2FybmluZy1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JHdhcm5pbmctYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgICAgJi5pbmZvIHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokaW5mby1jb2xvciwgJGRpc2FibGVkOnRydWUsICRiZy1ob3ZlcjokaW5mby1idXR0b24tYmctaG92ZXIsICRib3JkZXItY29sb3I6JGluZm8tYnV0dG9uLWJvcmRlci1jb2xvcik7IH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvL2ZpcmVmb3ggMnB4IGZpeFxuICAgIGJ1dHRvbjo6LW1vei1mb2N1cy1pbm5lciB7Ym9yZGVyOjA7IHBhZGRpbmc6MDt9XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBidXR0b24sIC5idXR0b24ge1xuICAgICAgICBAaW5jbHVkZSBidXR0b24tYmFzZSgkc3R5bGU6ZmFsc2UsICRkaXNwbGF5OmlubGluZS1ibG9jayk7XG4gICAgICAgIEBpbmNsdWRlIGJ1dHRvbi1zaXplKCRwYWRkaW5nOmZhbHNlLCAkZnVsbC13aWR0aDpmYWxzZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtZHJvcGRvd24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbHMgaGVpZ2h0IGFuZCB3aWR0aCBzdHlsZXMuXG4kZi1kcm9wZG93bi1tYXgtd2lkdGg6IDIwMHB4ICFkZWZhdWx0O1xuJGYtZHJvcGRvd24taGVpZ2h0OiBhdXRvICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tbWF4LWhlaWdodDogbm9uZSAhZGVmYXVsdDtcblxuLy8gVXNlZCBmb3IgYm90dG9tIHBvc2l0aW9uXG4kZi1kcm9wZG93bi1tYXJnaW4tdG9wOiAycHggIWRlZmF1bHQ7XG5cbi8vIFVzZWQgZm9yIHJpZ2h0IHBvc2l0aW9uXG4kZi1kcm9wZG93bi1tYXJnaW4tbGVmdDogJGYtZHJvcGRvd24tbWFyZ2luLXRvcCAhZGVmYXVsdDtcblxuLy8gVXNlZCBmb3IgbGVmdCBwb3NpdGlvblxuJGYtZHJvcGRvd24tbWFyZ2luLXJpZ2h0OiAkZi1kcm9wZG93bi1tYXJnaW4tdG9wICFkZWZhdWx0O1xuXG4vLyBVc2VkIGZvciB0b3AgcG9zaXRpb25cbiRmLWRyb3Bkb3duLW1hcmdpbi1ib3R0b206ICRmLWRyb3Bkb3duLW1hcmdpbi10b3AgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIGJhY2tncm91bmQgY29sb3JcbiRmLWRyb3Bkb3duLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHNldCB0aGUgYm9yZGVyIHN0eWxlcyBmb3IgZHJvcGRvd25zLlxuJGYtZHJvcGRvd24tYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIHRyaWFuZ2xlIHBpcC5cbiRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemU6IDZweCAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldDogMTBweCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgc3R5bGVzIGZvciB0aGUgbGlzdCBlbGVtZW50cy5cbiRmLWRyb3Bkb3duLWxpc3Qtc3R5bGU6IG5vbmUgIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi1mb250LWNvbG9yOiAkY2hhcmNvYWwgIWRlZmF1bHQ7XG4kZi1kcm9wZG93bi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLWxpc3QtcGFkZGluZzogcmVtLWNhbGMoNSwgMTApICFkZWZhdWx0O1xuJGYtZHJvcGRvd24tbGluZS1oZWlnaHQ6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcbiRmLWRyb3Bkb3duLWxpc3QtaG92ZXItYmc6ICRzbW9rZSAhZGVmYXVsdDtcbiRkcm9wZG93bi1tb2JpbGUtZGVmYXVsdC1mbG9hdDogMCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgc3R5bGVzIGZvciB3aGVuIHRoZSBkcm9wZG93biBoYXMgY3VzdG9tIGNvbnRlbnQuXG4kZi1kcm9wZG93bi1jb250ZW50LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gRGVmYXVsdCByYWRpdXMgZm9yIGRyb3Bkb3duLlxuJGYtZHJvcGRvd24tcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy9cbi8vIEBtaXhpbnNcbi8vXG4vL1xuLy8gTk9URTogTWFrZSBkZWZhdWx0IG1heC13aWR0aCBjaGFuZ2UgYmV0d2VlbiBsaXN0IGFuZCBjb250ZW50IHR5cGVzLiBDYW4gYWRkIG1vcmUgd2lkdGggd2l0aCBjbGFzc2VzLCBtYXliZSAuc21hbGwsIC5tZWRpdW0sIC5sYXJnZSwgZXRjLjtcbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSBkcm9wZG93biBjb250YWluZXIgZWxlbWVudC5cbi8vICRjb250ZW50LWxpc3QgLSBTZXRzIGxpc3Qtc3R5bGUuIERlZmF1bHQ6IGxpc3QuIE9wdGlvbnM6IFtsaXN0LCBjb250ZW50XVxuLy8gJHRyaWFuZ2xlIC0gU2V0cyBpZiBkcm9wZG93biBoYXMgdHJpYW5nbGUuIERlZmF1bHQ6dHJ1ZS5cbi8vICRtYXgtd2lkdGggLSBEZWZhdWx0OiAkZi1kcm9wZG93bi1tYXgtd2lkdGggfHwgMjAwcHguXG5AbWl4aW4gZHJvcGRvd24tY29udGFpbmVyKCRjb250ZW50Omxpc3QsICR0cmlhbmdsZTp0cnVlLCAkbWF4LXdpZHRoOiRmLWRyb3Bkb3duLW1heC13aWR0aCkge1xuICBkaXNwbGF5OiBub25lO1xuICBsZWZ0OiAtOTk5OXB4O1xuICBsaXN0LXN0eWxlOiAkZi1kcm9wZG93bi1saXN0LXN0eWxlO1xuICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcblxuICAmLm9wZW4ge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICB9XG5cbiAgPiAqOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfVxuICA+ICo6bGFzdC1jaGlsZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cblxuICBAaWYgJGNvbnRlbnQgPT0gbGlzdCB7XG4gICAgYmFja2dyb3VuZDogJGYtZHJvcGRvd24tYmc7XG4gICAgYm9yZGVyOiAkZi1kcm9wZG93bi1ib3JkZXItc3R5bGUgJGYtZHJvcGRvd24tYm9yZGVyLXdpZHRoICRmLWRyb3Bkb3duLWJvcmRlci1jb2xvcjtcbiAgICBmb250LXNpemU6ICRmLWRyb3Bkb3duLWZvbnQtc2l6ZTtcbiAgICBoZWlnaHQ6ICRmLWRyb3Bkb3duLWhlaWdodDtcbiAgICBtYXgtaGVpZ2h0OiAkZi1kcm9wZG93bi1tYXgtaGVpZ2h0O1xuICAgIHdpZHRoOiAxMDAlO1xuICAgIHotaW5kZXg6IDg5O1xuICB9XG4gIEBlbHNlIGlmICRjb250ZW50ID09IGNvbnRlbnQge1xuICAgIGJhY2tncm91bmQ6ICRmLWRyb3Bkb3duLWJnO1xuICAgIGJvcmRlcjogJGYtZHJvcGRvd24tYm9yZGVyLXN0eWxlICRmLWRyb3Bkb3duLWJvcmRlci13aWR0aCAkZi1kcm9wZG93bi1ib3JkZXItY29sb3I7XG4gICAgZm9udC1zaXplOiAkZi1kcm9wZG93bi1mb250LXNpemU7XG4gICAgaGVpZ2h0OiAkZi1kcm9wZG93bi1oZWlnaHQ7XG4gICAgbWF4LWhlaWdodDogJGYtZHJvcGRvd24tbWF4LWhlaWdodDtcbiAgICBwYWRkaW5nOiAkZi1kcm9wZG93bi1jb250ZW50LXBhZGRpbmc7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgei1pbmRleDogODk7XG4gIH1cblxuICBAaWYgJHRyaWFuZ2xlID09IGJvdHRvbSB7XG4gICAgbWFyZ2luLXRvcDogJGYtZHJvcGRvd24tbWFyZ2luLXRvcDtcblxuICAgIEBpZiAkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICE9IDBweCB7XG5cbiAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUsICRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yLCBib3R0b20pO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICogMik7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAkZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldDtcbiAgICAgICAgei1pbmRleDogODk7XG4gICAgICB9XG4gICAgICAmOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKyAxLCAkZi1kcm9wZG93bi1ib3JkZXItY29sb3IsIGJvdHRvbSk7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAtKCgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICsgMSkgKiAyKTtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0IC0gMTtcbiAgICAgICAgei1pbmRleDogODg7XG4gICAgICB9XG5cbiAgICAgICYucmlnaHQ6YmVmb3JlIHtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IGF1dG87XG4gICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgICAgfVxuICAgICAgJi5yaWdodDphZnRlciB7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvO1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldCAtIDE7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgQGlmICR0cmlhbmdsZSA9PSAkZGVmYXVsdC1mbG9hdCB7XG4gICAgbWFyZ2luLXRvcDogMDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRmLWRyb3Bkb3duLW1hcmdpbi1yaWdodDtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplLCAkZi1kcm9wZG93bi10cmlhbmdsZS1jb2xvciwgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IC0oJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSAqIDIpO1xuICAgICAgei1pbmRleDogODk7XG4gICAgfVxuICAgICY6YWZ0ZXIge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKyAxLCAkZi1kcm9wZG93bi1ib3JkZXItY29sb3IsICN7JG9wcG9zaXRlLWRpcmVjdGlvbn0pO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAkZi1kcm9wZG93bi10cmlhbmdsZS1zaWRlLW9mZnNldCAtIDE7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogLSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICogMikgLSAyO1xuICAgICAgei1pbmRleDogODg7XG4gICAgfVxuXG4gIH1cblxuICBAaWYgJHRyaWFuZ2xlID09ICRvcHBvc2l0ZS1kaXJlY3Rpb24ge1xuICAgIG1hcmdpbi10b3A6IDA7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAtJGYtZHJvcGRvd24tbWFyZ2luLXJpZ2h0O1xuXG4gICAgJjpiZWZvcmUge1xuICAgICAgQGluY2x1ZGUgY3NzLXRyaWFuZ2xlKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUsICRmLWRyb3Bkb3duLXRyaWFuZ2xlLWNvbG9yLCAjeyRkZWZhdWx0LWZsb2F0fSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogLSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICogMik7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogYXV0bztcbiAgICAgIHotaW5kZXg6IDg5O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICsgMSwgJGYtZHJvcGRvd24tYm9yZGVyLWNvbG9yLCAjeyRkZWZhdWx0LWZsb2F0fSk7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0IC0gMTtcbiAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC0oJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSAqIDIpIC0gMjtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvO1xuICAgICAgei1pbmRleDogODg7XG4gICAgfVxuXG4gIH1cblxuICBAaWYgJHRyaWFuZ2xlID09IHRvcCB7XG4gICAgbWFyZ2luLWxlZnQ6IDA7XG4gICAgbWFyZ2luLXRvcDogLSRmLWRyb3Bkb3duLW1hcmdpbi1ib3R0b207XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSwgJGYtZHJvcGRvd24tdHJpYW5nbGUtY29sb3IsIHRvcCk7XG4gICAgICBib3R0b206IC0oJGYtZHJvcGRvd24tdHJpYW5nbGUtc2l6ZSAqIDIpO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiBhdXRvO1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06ICRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpZGUtb2Zmc2V0O1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgIHotaW5kZXg6IDg5O1xuICAgIH1cbiAgICAmOmFmdGVyIHtcbiAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkZi1kcm9wZG93bi10cmlhbmdsZS1zaXplICsgMSwgJGYtZHJvcGRvd24tYm9yZGVyLWNvbG9yLCB0b3ApO1xuICAgICAgYm90dG9tOiAtKCRmLWRyb3Bkb3duLXRyaWFuZ2xlLXNpemUgKiAyKSAtIDI7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IGF1dG87XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogJGYtZHJvcGRvd24tdHJpYW5nbGUtc2lkZS1vZmZzZXQgLSAxO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgIHotaW5kZXg6IDg4O1xuICAgIH1cblxuICB9XG5cbiAgQGlmICRtYXgtd2lkdGggeyBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7IH1cbiAgQGVsc2UgeyBtYXgtd2lkdGg6ICRmLWRyb3Bkb3duLW1heC13aWR0aDsgfVxuXG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSBsaXN0IGVsZW1lbnRzIG9yIGNvbnRlbnQgaW5zaWRlIHRoZSBkcm9wZG93bi5cblxuQG1peGluIGRyb3Bkb3duLXN0eWxlIHtcbiAgY3Vyc29yOiAkY3Vyc29yLXBvaW50ZXItdmFsdWU7XG4gIGZvbnQtc2l6ZTogJGYtZHJvcGRvd24tZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogJGYtZHJvcGRvd24tbGluZS1oZWlnaHQ7XG4gIG1hcmdpbjogMDtcblxuICAmOmhvdmVyLFxuICAmOmZvY3VzIHsgYmFja2dyb3VuZDogJGYtZHJvcGRvd24tbGlzdC1ob3Zlci1iZzsgfVxuXG4gICYucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRmLWRyb3Bkb3duLXJhZGl1cyk7IH1cblxuICBhIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBwYWRkaW5nOiAkZi1kcm9wZG93bi1saXN0LXBhZGRpbmc7XG4gICAgY29sb3I6ICRmLWRyb3Bkb3duLWZvbnQtY29sb3I7XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImRyb3Bkb3duXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtZHJvcGRvd24tY2xhc3NlcyB7XG5cbiAgICAvKiBGb3VuZGF0aW9uIERyb3Bkb3ducyAqL1xuICAgIC5mLWRyb3Bkb3duIHtcbiAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcihsaXN0LCBib3R0b20pO1xuXG4gICAgICAmLmRyb3AtI3skb3Bwb3NpdGUtZGlyZWN0aW9ufSB7XG4gICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcihsaXN0LCAjeyRkZWZhdWx0LWZsb2F0fSk7XG4gICAgICB9XG5cbiAgICAgICYuZHJvcC0jeyRkZWZhdWx0LWZsb2F0fSB7XG4gICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcihsaXN0LCAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259KTtcbiAgICAgIH1cblxuICAgICAgJi5kcm9wLXRvcCB7XG4gICAgICAgIEBpbmNsdWRlIGRyb3Bkb3duLWNvbnRhaW5lcihsaXN0LCB0b3ApO1xuICAgICAgfVxuICAgICAgLy8gbWF4LXdpZHRoOiBub25lO1xuXG4gICAgICBsaSB7IEBpbmNsdWRlIGRyb3Bkb3duLXN0eWxlOyB9XG5cbiAgICAgIC8vIFlvdSBjYW4gYWxzbyBwdXQgY3VzdG9tIGNvbnRlbnQgaW4gdGhlc2UgZHJvcGRvd25zXG4gICAgICAmLmNvbnRlbnQgeyBAaW5jbHVkZSBkcm9wZG93bi1jb250YWluZXIoY29udGVudCwgJHRyaWFuZ2xlOmZhbHNlKTsgfVxuXG4gICAgICAvLyBTaXplc1xuICAgICAgJi50aW55ICAgIHsgbWF4LXdpZHRoOiAyMDBweDsgfVxuICAgICAgJi5zbWFsbCAgIHsgbWF4LXdpZHRoOiAzMDBweDsgfVxuICAgICAgJi5tZWRpdW0gIHsgbWF4LXdpZHRoOiA1MDBweDsgfVxuICAgICAgJi5sYXJnZSAgIHsgbWF4LXdpZHRoOiA4MDBweDsgfVxuICAgICAgJi5tZWdhICAgIHtcbiAgICAgICAgd2lkdGg6MTAwJSFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDoxMDAlIWltcG9ydGFudDtcblxuICAgICAgICAmLm9wZW57XG4gICAgICAgICAgbGVmdDowIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtYnV0dG9uLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCB0aGUgY29sb3Igb2YgdGhlIHBpcCBpbiBkcm9wZG93biBidXR0b25zXG4kZHJvcGRvd24tYnV0dG9uLXBpcC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtY29sb3ItYWx0OiAkb2lsICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBzaXplIG9mIHRoZSBwaXAgaW4gZHJvcGRvd24gYnV0dG9uc1xuJGJ1dHRvbi1waXAtdG55OiByZW0tY2FsYyg2KSAhZGVmYXVsdDtcbiRidXR0b24tcGlwLXNtbDogcmVtLWNhbGMoNykgIWRlZmF1bHQ7XG4kYnV0dG9uLXBpcC1tZWQ6IHJlbS1jYWxjKDkpICFkZWZhdWx0O1xuJGJ1dHRvbi1waXAtbHJnOiByZW0tY2FsYygxMSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aW55IGRyb3Bkb3duIGJ1dHRvbnNcbiRkcm9wZG93bi1idXR0b24tcGFkZGluZy10bnk6ICRidXR0b24tcGlwLXRueSAqIDcgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLXRueTogJGJ1dHRvbi1waXAtdG55ICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtdG55OiAkYnV0dG9uLXBpcC10bnkgKiAzICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLXRueTogKC0kYnV0dG9uLXBpcC10bnkgLyAyKSArIHJlbS1jYWxjKDEpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgc21hbGwgZHJvcGRvd24gYnV0dG9uc1xuJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLXNtbDogJGJ1dHRvbi1waXAtc21sICogNyAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtc21sOiAkYnV0dG9uLXBpcC1zbWwgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1zbWw6ICRidXR0b24tcGlwLXNtbCAqIDMgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC10b3Atc21sOiAoLSRidXR0b24tcGlwLXNtbCAvIDIpICsgcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBtZWRpdW0gZHJvcGRvd24gYnV0dG9uc1xuJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLW1lZDogJGJ1dHRvbi1waXAtbWVkICogNiArIHJlbS1jYWxjKDMpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtc2l6ZS1tZWQ6ICRidXR0b24tcGlwLW1lZCAtIHJlbS1jYWxjKDMpICFkZWZhdWx0O1xuJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtbWVkOiAkYnV0dG9uLXBpcC1tZWQgKiAyLjUgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC10b3AtbWVkOiAoLSRidXR0b24tcGlwLW1lZCAvIDIpICsgcmVtLWNhbGMoMikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBsYXJnZSBkcm9wZG93biBidXR0b25zXG4kZHJvcGRvd24tYnV0dG9uLXBhZGRpbmctbHJnOiAkYnV0dG9uLXBpcC1scmcgKiA1ICsgcmVtLWNhbGMoMykgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1zaXplLWxyZzogJGJ1dHRvbi1waXAtbHJnIC0gcmVtLWNhbGMoNikgIWRlZmF1bHQ7XG4kZHJvcGRvd24tYnV0dG9uLXBpcC1vcHBvc2l0ZS1scmc6ICRidXR0b24tcGlwLWxyZyAqIDIuNSAhZGVmYXVsdDtcbiRkcm9wZG93bi1idXR0b24tcGlwLXRvcC1scmc6ICgtJGJ1dHRvbi1waXAtbHJnIC8gMikgKyByZW0tY2FsYygzKSAhZGVmYXVsdDtcblxuLy8gQG1peGluc1xuLy9cbi8vIERyb3Bkb3duIEJ1dHRvbiBNaXhpblxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGJ1aWxkIG9mZiBvZiB0aGUgYnV0dG9uIG1peGluIGFuZCBhZGQgZHJvcGRvd24gYnV0dG9uIHN0eWxlc1xuLy9cbi8vICRwYWRkaW5nIC0gRGV0ZXJtaW5lcyB0aGUgc2l6ZSBvZiBidXR0b24geW91J3JlIHdvcmtpbmcgd2l0aC4gRGVmYXVsdDogbWVkaXVtLiBPcHRpb25zIFt0aW55LCBzbWFsbCwgbWVkaXVtLCBsYXJnZV1cbi8vICRwaXAtY29sb3IgLSBDb2xvciBvZiB0aGUgbGl0dGxlIHRyaWFuZ2xlIHRoYXQgcG9pbnRzIHRvIHRoZSBkcm9wZG93bi4gRGVmYXVsdDogJHdoaXRlLlxuLy8gJGJhc2Utc3R5bGUgLSBBZGQgaW4gYmFzZS1zdHlsZXMuIFRoaXMgY2FuIGJlIHNldCB0byBmYWxzZS4gRGVmYXVsdDp0cnVlXG5cbkBtaXhpbiBkcm9wZG93bi1idXR0b24oJHBhZGRpbmc6bWVkaXVtLCAkcGlwLWNvbG9yOiRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yLCAkYmFzZS1zdHlsZTp0cnVlKSB7XG5cbiAgLy8gV2UgYWRkIGluIGJhc2Ugc3R5bGVzLCBidXQgdGhleSBjYW4gYmUgbmVnYXRlZCBieSBzZXR0aW5nIHRvICdmYWxzZScuXG4gIEBpZiAkYmFzZS1zdHlsZSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgLy8gVGhpcyBjcmVhdGVzIHRoZSBiYXNlIHN0eWxlcyBmb3IgdGhlIHRyaWFuZ2xlIHBpcFxuICAgICY6OmFmdGVyIHtcbiAgICAgIGJvcmRlci1jb2xvcjogJGRyb3Bkb3duLWJ1dHRvbi1waXAtY29sb3IgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItc3R5bGU6IHNvbGlkO1xuICAgICAgY29udGVudDogXCJcIjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiA1MCU7XG4gICAgICB3aWR0aDogMDtcbiAgICB9XG4gIH1cblxuICAvLyBJZiB3ZSdyZSBkZWFsaW5nIHdpdGggdGlueSBidXR0b25zLCB1c2UgdGhlc2Ugc3R5bGVzXG4gIEBpZiAkcGFkZGluZyA9PSB0aW55IHtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRkcm9wZG93bi1idXR0b24tcGFkZGluZy10bnk7XG4gICAgJjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6ICRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtdG55O1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtdG55O1xuICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLXRueTtcbiAgICB9XG4gIH1cblxuICAvLyBJZiB3ZSdyZSBkZWFsaW5nIHdpdGggc21hbGwgYnV0dG9ucywgdXNlIHRoZXNlIHN0eWxlc1xuICBAaWYgJHBhZGRpbmcgPT0gc21hbGwge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLXNtbDtcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6ICRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtc21sO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtc21sO1xuICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLXNtbDtcbiAgICB9XG4gIH1cblxuICAvLyBJZiB3ZSdyZSBkZWFsaW5nIHdpdGggZGVmYXVsdCAobWVkaXVtKSBidXR0b25zLCB1c2UgdGhlc2Ugc3R5bGVzXG4gIEBpZiAkcGFkZGluZyA9PSBtZWRpdW0ge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLW1lZDtcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6ICRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtbWVkO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtbWVkO1xuICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLW1lZDtcbiAgICB9XG4gIH1cblxuICAvLyBJZiB3ZSdyZSBkZWFsaW5nIHdpdGggbGFyZ2UgYnV0dG9ucywgdXNlIHRoZXNlIHN0eWxlc1xuICBAaWYgJHBhZGRpbmcgPT0gbGFyZ2Uge1xuICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGRyb3Bkb3duLWJ1dHRvbi1wYWRkaW5nLWxyZztcbiAgICAmOjphZnRlciB7XG4gICAgICBib3JkZXItd2lkdGg6ICRkcm9wZG93bi1idXR0b24tcGlwLXNpemUtbHJnO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJGRyb3Bkb3duLWJ1dHRvbi1waXAtb3Bwb3NpdGUtbHJnO1xuICAgICAgbWFyZ2luLXRvcDogJGRyb3Bkb3duLWJ1dHRvbi1waXAtdG9wLWxyZztcbiAgICB9XG4gIH1cblxuICAvLyBXZSBjYW4gY29udHJvbCB0aGUgcGlwIGNvbG9yLiBXZSBkaWRuJ3QgdXNlIGxvZ2ljIGluIHRoaXMgY2FzZSwganVzdCBzZXQgaXQgYW5kIGZvcmdldCBpdC5cbiAgQGlmICRwaXAtY29sb3Ige1xuICAgICY6OmFmdGVyIHsgYm9yZGVyLWNvbG9yOiAkcGlwLWNvbG9yIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50IHRyYW5zcGFyZW50OyB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImRyb3Bkb3duLWJ1dHRvblwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWJ1dHRvbi1jbGFzc2VzIHtcbiAgICAuZHJvcGRvd24uYnV0dG9uLCBidXR0b24uZHJvcGRvd24geyBAaW5jbHVkZSBkcm9wZG93bi1idXR0b247XG4gICAgICAmLnRpbnkgeyBAaW5jbHVkZSBkcm9wZG93bi1idXR0b24odGlueSwgJGJhc2Utc3R5bGU6ZmFsc2UpOyB9XG4gICAgICAmLnNtYWxsIHsgQGluY2x1ZGUgZHJvcGRvd24tYnV0dG9uKHNtYWxsLCAkYmFzZS1zdHlsZTpmYWxzZSk7IH1cbiAgICAgICYubGFyZ2UgeyBAaW5jbHVkZSBkcm9wZG93bi1idXR0b24obGFyZ2UsICRiYXNlLXN0eWxlOmZhbHNlKTsgfVxuICAgICAgJi5zZWNvbmRhcnk6YWZ0ZXIgeyBib3JkZXItY29sb3I6ICRkcm9wZG93bi1idXR0b24tcGlwLWNvbG9yLWFsdCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLW1lZGlhLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdmlkZW8gY29udGFpbmVyIHBhZGRpbmcgYW5kIG1hcmdpbnNcbiRmbGV4LXZpZGVvLXBhZGRpbmctdG9wOiByZW0tY2FsYygyNSkgIWRlZmF1bHQ7XG4kZmxleC12aWRlby1wYWRkaW5nLWJvdHRvbTogNjcuNSUgIWRlZmF1bHQ7XG4kZmxleC12aWRlby1tYXJnaW4tYm90dG9tOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgd2lkZXNjcmVlbiBib3R0b20gcGFkZGluZ1xuJGZsZXgtdmlkZW8td2lkZXNjcmVlbi1wYWRkaW5nLWJvdHRvbTogNTYuMzQlICFkZWZhdWx0O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuQG1peGluIGZsZXgtdmlkZW8tY29udGFpbmVyIHtcbiAgaGVpZ2h0OiAwO1xuICBtYXJnaW4tYm90dG9tOiAkZmxleC12aWRlby1tYXJnaW4tYm90dG9tO1xuICBvdmVyZmxvdzogaGlkZGVuO1xuICBwYWRkaW5nLWJvdHRvbTogJGZsZXgtdmlkZW8tcGFkZGluZy1ib3R0b207XG4gIHBhZGRpbmctdG9wOiAkZmxleC12aWRlby1wYWRkaW5nLXRvcDtcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICYud2lkZXNjcmVlbiB7IHBhZGRpbmctYm90dG9tOiAkZmxleC12aWRlby13aWRlc2NyZWVuLXBhZGRpbmctYm90dG9tOyB9XG4gICYudmltZW8geyBwYWRkaW5nLXRvcDogMDsgfVxuXG4gIGlmcmFtZSxcbiAgb2JqZWN0LFxuICBlbWJlZCxcbiAgdmlkZW8ge1xuICAgIGhlaWdodDogMTAwJTtcbiAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgdG9wOiAwO1xuICAgIHdpZHRoOiAxMDAlO1xuICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJmbGV4LXZpZGVvXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlcyB7XG4gICAgLmZsZXgtdmlkZW8geyBAaW5jbHVkZSBmbGV4LXZpZGVvLWNvbnRhaW5lcjsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnYnV0dG9ucyc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1mb3JtLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IHRoZSBiYXNlIGZvciBsb3RzIG9mIGZvcm0gc3BhY2luZyBhbmQgcG9zaXRpb25pbmcgc3R5bGVzXG4kZm9ybS1zcGFjaW5nOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgbGFiZWxzIGluIGRpZmZlcmVudCB3YXlzXG4kZm9ybS1sYWJlbC1wb2ludGVyOiBwb2ludGVyICFkZWZhdWx0O1xuJGZvcm0tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0OiAxLjUgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1mb250LWNvbG9yOiBzY2FsZS1jb2xvcigkYmxhY2ssICRsaWdodG5lc3M6IDMwJSkgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1zbWFsbC10cmFuc2Zvcm06IGNhcGl0YWxpemUgIWRlZmF1bHQ7XG4kZm9ybS1sYWJlbC1ib3R0b20tbWFyZ2luOiAwICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtZmFtaWx5OiBpbmhlcml0ICFkZWZhdWx0O1xuJGlucHV0LWZvbnQtY29sb3I6IHJnYmEoMCwwLDAsMC43NSkgIWRlZmF1bHQ7XG4kaW5wdXQtcGxhY2Vob2xkZXItZm9udC1jb2xvcjogI2NjY2NjYyAhZGVmYXVsdDtcbiRpbnB1dC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRpbnB1dC1iZy1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yJSkgIWRlZmF1bHQ7XG4kaW5wdXQtYm9yZGVyLWNvbG9yOiBzY2FsZS1jb2xvcigkd2hpdGUsICRsaWdodG5lc3M6IC0yMCUpICFkZWZhdWx0O1xuJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNDAlKSAhZGVmYXVsdDtcbiRpbnB1dC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJGlucHV0LWJvcmRlci1yYWRpdXM6ICRnbG9iYWwtcmFkaXVzICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWJnOiAkZ2FpbnNib3JvICFkZWZhdWx0O1xuJGlucHV0LWRpc2FibGVkLWN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlICFkZWZhdWx0O1xuJGlucHV0LWJveC1zaGFkb3c6IGluc2V0IDAgMXB4IDJweCByZ2JhKDAsMCwwLDAuMSkgIWRlZmF1bHQ7XG4kaW5wdXQtaW5jbHVkZS1nbG93aW5nLWVmZmVjdDogZmFsc2UgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgZmllbGRzZXQgYm9yZGVyIGFuZCBzcGFjaW5nLlxuJGZpZWxkc2V0LWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kZmllbGRzZXQtYm9yZGVyLXdpZHRoOiAxcHggIWRlZmF1bHQ7XG4kZmllbGRzZXQtYm9yZGVyLWNvbG9yOiAkZ2FpbnNib3JvICFkZWZhdWx0O1xuJGZpZWxkc2V0LXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcbiRmaWVsZHNldC1tYXJnaW46IHJlbS1jYWxjKDE4IDApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGxlZ2VuZHMgd2hlbiB5b3UgdXNlIHRoZW1cbiRsZWdlbmQtYmc6ICR3aGl0ZSAhZGVmYXVsdDtcbiRsZWdlbmQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGxlZ2VuZC1wYWRkaW5nOiByZW0tY2FsYygwIDMpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIHByZWZpeCBhbmQgcG9zdGZpeCBpbnB1dCBlbGVtZW50c1xuJGlucHV0LXByZWZpeC1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xuJGlucHV0LXByZWZpeC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTIwJSkgIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LWJvcmRlci1zaXplOiAxcHggIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LWJvcmRlci10eXBlOiBzb2xpZCAhZGVmYXVsdDtcbiRpbnB1dC1wcmVmaXgtb3ZlcmZsb3c6IHZpc2libGUgIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LWZvbnQtY29sb3I6ICRvaWwgIWRlZmF1bHQ7XG4kaW5wdXQtcHJlZml4LWZvbnQtY29sb3ItYWx0OiAkd2hpdGUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHNldHRpbmcgdG8gdHVybiBvbi9vZmYgSFRNTDUgbnVtYmVyIHNwaW5uZXJzICh0aGUgdXAvZG93biBhcnJvd3MpXG4kaW5wdXQtbnVtYmVyLXNwaW5uZXJzOiB0cnVlICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgdGhlIGVycm9yIHN0YXRlcyBmb3IgaW5wdXRzIGFuZCBsYWJlbHNcbiRpbnB1dC1lcnJvci1tZXNzYWdlLXBhZGRpbmc6IHJlbS1jYWxjKDYgOSA5KSAhZGVmYXVsdDtcbiRpbnB1dC1lcnJvci1tZXNzYWdlLXRvcDogLTFweCAhZGVmYXVsdDtcbiRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LXN0eWxlOiBpdGFsaWMgIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kaW5wdXQtZXJyb3ItbWVzc2FnZS1iZy1jb2xvcjogJGFsZXJ0LWNvbG9yICFkZWZhdWx0O1xuJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvci1hbHQ6ICRvaWwgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSBnbG93aW5nIGVmZmVjdCBvZiBpbnB1dHMgd2hlbiBmb2N1c2VkXG4kZ2xvd2luZy1lZmZlY3QtZmFkZS10aW1lOiAuNDVzICFkZWZhdWx0O1xuJGdsb3dpbmctZWZmZWN0LWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzdHlsZSB0aGUgdHJhbnNpdGlvbiB3aGVuIGlucHV0cyBhcmUgZm9jdXNlZCBhbmQgd2hlbiB0aGUgZ2xvd2luZyBlZmZlY3QgaXMgZGlzYWJsZWQuXG4kaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWU6IDAuMTVzICFkZWZhdWx0O1xuJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1pbmctZnVuY3Rpb246IGxpbmVhciAhZGVmYXVsdDtcblxuLy8gU2VsZWN0IHZhcmlhYmxlc1xuJHNlbGVjdC1iZy1jb2xvcjogJGdob3N0ICFkZWZhdWx0O1xuJHNlbGVjdC1ob3Zlci1iZy1jb2xvcjogc2NhbGUtY29sb3IoJHNlbGVjdC1iZy1jb2xvciwgJGxpZ2h0bmVzczogLTMlKSAhZGVmYXVsdDtcblxuLy9cbi8vIEBNSVhJTlNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGdpdmUgdXMgZm9ybSBzdHlsZXMgZm9yIHJvd3MgaW5zaWRlIG9mIGZvcm1zXG5AbWl4aW4gZm9ybS1yb3ctYmFzZSB7XG4gIC5yb3cgeyBtYXJnaW46IDAgKCgtJGZvcm0tc3BhY2luZykgLyAyKTtcblxuICAgIC5jb2x1bW4sXG4gICAgLmNvbHVtbnMgeyBwYWRkaW5nOiAwICgkZm9ybS1zcGFjaW5nIC8gMik7IH1cblxuICAgIC8vIFVzZSB0aGlzIHRvIGNvbGxhcHNlIHRoZSBtYXJnaW5zIG9mIGEgZm9ybSByb3dcbiAgICAmLmNvbGxhcHNlIHsgbWFyZ2luOiAwO1xuXG4gICAgICAuY29sdW1uLFxuICAgICAgLmNvbHVtbnMgeyBwYWRkaW5nOiAwOyB9XG4gICAgICBpbnB1dCB7XG4gICAgICAgIEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRvcHBvc2l0ZS1kaXJlY3Rpb24sIDApO1xuICAgICAgfVxuXG4gICAgfVxuICB9XG4gIGlucHV0LmNvbHVtbixcbiAgaW5wdXQuY29sdW1ucyxcbiAgdGV4dGFyZWEuY29sdW1uLFxuICB0ZXh0YXJlYS5jb2x1bW5zIHsgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogKCRmb3JtLXNwYWNpbmcgLyAyKTsgfVxufVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBnaXZlIGFsbCBiYXNpYyBmb3JtIGVsZW1lbnRzIHRoZWlyIHN0eWxlXG5AbWl4aW4gZm9ybS1lbGVtZW50IHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWJnLWNvbG9yO1xuICBib3JkZXI6IHtcbiAgICBzdHlsZTogJGlucHV0LWJvcmRlci1zdHlsZTtcbiAgICB3aWR0aDogJGlucHV0LWJvcmRlci13aWR0aDtcbiAgICBjb2xvcjogJGlucHV0LWJvcmRlci1jb2xvcjtcbiAgfVxuICBib3gtc2hhZG93OiAkaW5wdXQtYm94LXNoYWRvdztcbiAgY29sb3I6ICRpbnB1dC1mb250LWNvbG9yO1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBoZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuICBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nIDA7XG4gIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyO1xuICB3aWR0aDogMTAwJTtcbiAgQGluY2x1ZGUgYm94LXNpemluZyhib3JkZXItYm94KTtcbiAgQGlmICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0IHtcbiAgICBAaW5jbHVkZSBibG9jay1nbG93aW5nLWVmZmVjdChmb2N1cywgJGdsb3dpbmctZWZmZWN0LWZhZGUtdGltZSwgJGdsb3dpbmctZWZmZWN0LWNvbG9yKTtcbiAgfVxuICAvLyBCYXNpYyBmb2N1cyBzdHlsZXNcbiAgJjpmb2N1cyB7XG4gICAgYmFja2dyb3VuZDogJGlucHV0LWZvY3VzLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgICBvdXRsaW5lOiBub25lO1xuICB9XG4gIC8vIERpc2FibGVkIFN0eWxlc1xuICAmOmRpc2FibGVkIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkaW5wdXQtZGlzYWJsZWQtYmc7XG4gICAgY3Vyc29yOiAkaW5wdXQtZGlzYWJsZWQtY3Vyc29yO1xuICB9XG5cbiAgLy8gRGlzYWJsZWQgYmFja2dyb3VuZCBpbnB1dCBiYWNrZ3JvdW5kIGNvbG9yXG4gICZbZGlzYWJsZWRdLFxuICAmW3JlYWRvbmx5XSxcbiAgZmllbGRzZXRbZGlzYWJsZWRdICYge1xuICAgIGJhY2tncm91bmQtY29sb3I6ICRpbnB1dC1kaXNhYmxlZC1iZztcbiAgICBjdXJzb3I6ICRpbnB1dC1kaXNhYmxlZC1jdXJzb3I7XG4gIH1cbn1cblxuLy8gQE1JWElOXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGZvcm0gbGFiZWxzXG4vL1xuLy8gJGFsaWdubWVudCAtIEFsaWdubWVudCBvcHRpb25zLiBEZWZhdWx0OiBmYWxzZS4gT3B0aW9uczogW3JpZ2h0LCBpbmxpbmUsIGZhbHNlXVxuLy8gJGJhc2Utc3R5bGUgLSBDb250cm9sIHdoZXRoZXIgb3Igbm90IHRoZSBiYXNlIHN0eWxlcyBjb21lIHRocm91Z2guIERlZmF1bHQ6IHRydWUuXG5AbWl4aW4gZm9ybS1sYWJlbCgkYWxpZ25tZW50OmZhbHNlLCAkYmFzZS1zdHlsZTp0cnVlKSB7XG5cbiAgLy8gQ29udHJvbCB3aGV0aGVyIG9yIG5vdCB0aGUgYmFzZSBzdHlsZXMgY29tZSB0aHJvdWdoLlxuICBAaWYgJGJhc2Utc3R5bGUge1xuICAgIGNvbG9yOiAkZm9ybS1sYWJlbC1mb250LWNvbG9yO1xuICAgIGN1cnNvcjogJGZvcm0tbGFiZWwtcG9pbnRlcjtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJGZvcm0tbGFiZWwtZm9udC13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICRmb3JtLWxhYmVsLWxpbmUtaGVpZ2h0O1xuICAgIG1hcmdpbi1ib3R0b206ICRmb3JtLWxhYmVsLWJvdHRvbS1tYXJnaW47XG4gIH1cblxuICAvLyBBbGlnbm1lbnQgb3B0aW9uc1xuICBAaWYgJGFsaWdubWVudCA9PSByaWdodCB7XG4gICAgZmxvYXQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICB0ZXh0LWFsaWduOiByaWdodDtcbiAgfVxuICBAZWxzZSBpZiAkYWxpZ25tZW50ID09IGlubGluZSB7XG4gICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZyAwO1xuICAgIHBhZGRpbmc6ICRmb3JtLXNwYWNpbmcgLyAyICsgcmVtLWNhbGMoJGlucHV0LWJvcmRlci13aWR0aCkgMDtcbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgcG9zdGZpeC9wcmVmaXggZm9ybSBMYWJlbHNcbkBtaXhpbiBwcmVmaXgtcG9zdGZpeC1iYXNlIHtcbiAgYm9yZGVyLXN0eWxlOiAkaW5wdXQtcHJlZml4LWJvcmRlci10eXBlO1xuICBib3JkZXItd2lkdGg6ICRpbnB1dC1wcmVmaXgtYm9yZGVyLXNpemU7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6ICRmb3JtLWxhYmVsLWZvbnQtc2l6ZTtcbiAgaGVpZ2h0OiAoJGlucHV0LWZvbnQtc2l6ZSArICgkZm9ybS1zcGFjaW5nICogMS41KSAtIHJlbS1jYWxjKDEpKTtcbiAgbGluZS1oZWlnaHQ6ICgkaW5wdXQtZm9udC1zaXplICsgKCRmb3JtLXNwYWNpbmcgKiAxLjUpIC0gcmVtLWNhbGMoMSkpO1xuICBvdmVyZmxvdzogJGlucHV0LXByZWZpeC1vdmVyZmxvdztcbiAgcGFkZGluZy1ib3R0b206IDA7XG4gIHBhZGRpbmctdG9wOiAwO1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgd2lkdGg6IDEwMCU7XG4gIHotaW5kZXg6IDI7XG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBwcmVmaXggbGFiZWwgc3R5bGVzXG4vLyAkYmcgLSBEZWZhdWx0OiRpbnB1dC1wcmVmaXgtYmcgfHwgc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xuLy8gJGlzLWJ1dHRvbiAtIFRvZ2dsZSBwb3NpdGlvbiBzZXR0aW5ncyBpZiBwcmVmaXggaXMgYSBidXR0b24uIERlZmF1bHQ6ZmFsc2Vcbi8vXG5AbWl4aW4gcHJlZml4KCRiZzokaW5wdXQtcHJlZml4LWJnLCAkYm9yZGVyOiRpbnB1dC1wcmVmaXgtYm9yZGVyLWNvbG9yLCAkaXMtYnV0dG9uOmZhbHNlKSB7XG5cbiAgQGlmICRiZyB7XG4gICAgJGJnLWxpZ2h0bmVzczogbGlnaHRuZXNzKCRiZyk7XG4gICAgYmFja2dyb3VuZDogJGJnO1xuICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiBub25lO1xuXG4gICAgLy8gQ29udHJvbCB0aGUgZm9udCBjb2xvciBiYXNlZCBvbiBiYWNrZ3JvdW5kIGJyaWdodG5lc3NcbiAgICBAaWYgJGJnLWxpZ2h0bmVzcyA+IDcwJSBvciAkYmcgPT0geWVsbG93IHsgY29sb3I6ICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvcjsgfVxuICAgIEBlbHNlIHsgY29sb3I6ICRpbnB1dC1wcmVmaXgtZm9udC1jb2xvci1hbHQ7IH1cbiAgfVxuXG4gIEBpZiAkYm9yZGVyIHtcbiAgICBib3JkZXItY29sb3I6ICRib3JkZXI7XG4gIH1cblxuICBAaWYgJGlzLWJ1dHRvbiB7XG4gICAgYm9yZGVyOiBub25lO1xuICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgcGFkZGluZy0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgIHBhZGRpbmctYm90dG9tOiAwO1xuICAgIHBhZGRpbmctdG9wOiAwO1xuICAgIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgfVxuXG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBwb3N0Zml4IGxhYmVsIHN0eWxlc1xuLy8gJGJnIC0gRGVmYXVsdDokaW5wdXQtcHJlZml4LWJnIHx8IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTUlKSAhZGVmYXVsdDtcbi8vICRpcy1idXR0b24gLSBUb2dnbGUgcG9zaXRpb24gc2V0dGluZ3MgaWYgcHJlZml4IGlzIGEgYnV0dG9uLiBEZWZhdWx0OiBmYWxzZVxuQG1peGluIHBvc3RmaXgoJGJnOiRpbnB1dC1wcmVmaXgtYmcsICRib3JkZXItbGVmdC1oaWRkZW46ZmFsc2UsICRib3JkZXI6JGlucHV0LXByZWZpeC1ib3JkZXItY29sb3IsICRpcy1idXR0b246ZmFsc2UpIHtcblxuICBAaWYgJGJnIHtcbiAgICAkYmctbGlnaHRuZXNzOiBsaWdodG5lc3MoJGJnKTtcbiAgICBiYWNrZ3JvdW5kOiAkYmc7XG4gICAgQGlmICRib3JkZXItbGVmdC1oaWRkZW4ge1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiBub25lO1xuICAgIH1cblxuICAgIC8vIENvbnRyb2wgdGhlIGZvbnQgY29sb3IgYmFzZWQgb24gYmFja2dyb3VuZCBicmlnaHRuZXNzXG4gICAgQGlmICRiZy1saWdodG5lc3MgPiA3MCUgIG9yICRiZyA9PSB5ZWxsb3cgeyBjb2xvcjogJGlucHV0LXByZWZpeC1mb250LWNvbG9yOyB9XG4gICAgQGVsc2UgeyBjb2xvcjogJGlucHV0LXByZWZpeC1mb250LWNvbG9yLWFsdDsgfVxuICB9XG5cbiAgQGlmICRib3JkZXIge1xuICAgIGJvcmRlci1jb2xvcjogJGJvcmRlcjtcbiAgfVxuXG4gIEBpZiAkaXMtYnV0dG9uIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgcGFkZGluZy1ib3R0b206IDA7XG4gICAgcGFkZGluZy10b3A6IDA7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICB9XG5cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gc3R5bGUgZmllbGRzZXRzXG5AbWl4aW4gZmllbGRzZXQge1xuICBib3JkZXI6ICRmaWVsZHNldC1ib3JkZXItd2lkdGggJGZpZWxkc2V0LWJvcmRlci1zdHlsZSAkZmllbGRzZXQtYm9yZGVyLWNvbG9yO1xuICBtYXJnaW46ICRmaWVsZHNldC1tYXJnaW47XG4gIHBhZGRpbmc6ICRmaWVsZHNldC1wYWRkaW5nO1xuXG4gIC8vIGFuZCBsZWdlbmQgc3R5bGVzXG4gIGxlZ2VuZCB7XG4gICAgYmFja2dyb3VuZDogJGxlZ2VuZC1iZztcbiAgICBmb250LXdlaWdodDogJGxlZ2VuZC1mb250LXdlaWdodDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IHJlbS1jYWxjKC0zKTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogJGxlZ2VuZC1wYWRkaW5nO1xuICB9XG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNvbnRyb2wgYm9yZGVyIGFuZCBiYWNrZ3JvdW5kIGNvbG9yIG9mIGVycm9yIGlucHV0c1xuLy8gJGNvbG9yIC0gRGVmYXVsdDogJGFsZXJ0LWNvbG9yIChmb3VuZCBpbiBzZXR0aW5ncyBmaWxlKVxuQG1peGluIGZvcm0tZXJyb3ItY29sb3IoJGNvbG9yOiRhbGVydC1jb2xvcikge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKCRjb2xvciwgLjEpO1xuICBib3JkZXItY29sb3I6ICRjb2xvcjtcblxuICAvLyBHbyBiYWNrIHRvIG5vcm1hbCBvbiBmb2N1c1xuICAmOmZvY3VzIHtcbiAgICBiYWNrZ3JvdW5kOiAkaW5wdXQtZm9jdXMtYmctY29sb3I7XG4gICAgYm9yZGVyLWNvbG9yOiAkaW5wdXQtZm9jdXMtYm9yZGVyLWNvbG9yO1xuICB9XG59XG5cbi8vIEBNSVhJTlxuLy9cbi8vIFdlIHVzZSB0aGlzIHNpbXBsZSBtaXhpbiB0byBzdHlsZSBsYWJlbHMgZm9yIGVycm9yIGlucHV0c1xuLy8gJGNvbG9yIC0gRGVmYXVsdDokYWxlcnQtY29sb3IuIEZvdW5kIGluIHNldHRpbmdzIGZpbGVcbkBtaXhpbiBmb3JtLWxhYmVsLWVycm9yLWNvbG9yKCRjb2xvcjokYWxlcnQtY29sb3IpIHsgY29sb3I6ICRjb2xvcjsgfVxuXG4vLyBATUlYSU5cbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgZXJyb3IgbWVzc2FnZSBzdHlsZXNcbi8vICRiZyAtIERlZmF1bHQ6ICRhbGVydC1jb2xvciAoRm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcbkBtaXhpbiBmb3JtLWVycm9yLW1lc3NhZ2UoJGJnOiRpbnB1dC1lcnJvci1tZXNzYWdlLWJnLWNvbG9yKSB7XG4gIGRpc3BsYXk6IGJsb2NrO1xuICBmb250LXNpemU6ICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtc2l6ZTtcbiAgZm9udC1zdHlsZTogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1zdHlsZTtcbiAgZm9udC13ZWlnaHQ6ICRpbnB1dC1lcnJvci1tZXNzYWdlLWZvbnQtd2VpZ2h0O1xuICBtYXJnaW4tYm90dG9tOiAkZm9ybS1zcGFjaW5nO1xuICBtYXJnaW4tdG9wOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS10b3A7XG4gIHBhZGRpbmc6ICRpbnB1dC1lcnJvci1tZXNzYWdlLXBhZGRpbmc7XG5cbiAgLy8gV2UgY2FuIGNvbnRyb2wgdGhlIHRleHQgY29sb3IgYmFzZWQgb24gdGhlIGJyaWdodG5lc3Mgb2YgdGhlIGJhY2tncm91bmQuXG4gICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuICBiYWNrZ3JvdW5kOiAkYmc7XG4gIEBpZiAkYmctbGlnaHRuZXNzIDwgNzAlIG9yICRiZyA9PSB5ZWxsb3cgeyBjb2xvcjogJGlucHV0LWVycm9yLW1lc3NhZ2UtZm9udC1jb2xvcjsgfVxuICBAZWxzZSB7IGNvbG9yOiAkaW5wdXQtZXJyb3ItbWVzc2FnZS1mb250LWNvbG9yLWFsdDsgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBzdHlsZSBzZWxlY3QgZWxlbWVudHNcbkBtaXhpbiBmb3JtLXNlbGVjdCAge1xuICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmUgIWltcG9ydGFudDtcbiAgLW1vei1hcHBlYXJhbmNlOiBub25lICFpbXBvcnRhbnQ7XG4gIGJhY2tncm91bmQtY29sb3I6ICRzZWxlY3QtYmctY29sb3I7XG4gIGJvcmRlci1yYWRpdXM6IDA7XG5cbiAgLy8gSGlkZSB0aGUgZHJvcGRvd24gYXJyb3cgc2hvd24gaW4gbmV3ZXIgSUUgdmVyc2lvbnNcbiAgJjo6LW1zLWV4cGFuZCB7XG4gICAgZGlzcGxheTogbm9uZTtcbiAgfVxuXG4gIC8vIFRoZSBjdXN0b20gYXJyb3cgaGFzIHNvbWUgZmFrZSBob3Jpem9udGFsIHBhZGRpbmcgc28gd2UgY2FuIGFsaWduIGl0XG4gIC8vIGZyb20gdGhlIHJpZ2h0IHNpZGUgb2YgdGhlIGVsZW1lbnQgd2l0aG91dCByZWx5aW5nIG9uIENTUzNcbiAgYmFja2dyb3VuZC1pbWFnZTogdXJsKGRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIWmxjbk5wYjI0OUlqRXVNU0lnZUQwaU1USndlQ0lnZVQwaU1IQjRJaUIzYVdSMGFEMGlNalJ3ZUNJZ2FHVnBaMmgwUFNJemNIZ2lJSFpwWlhkQ2IzZzlJakFnTUNBMklETWlJR1Z1WVdKc1pTMWlZV05yWjNKdmRXNWtQU0p1WlhjZ01DQXdJRFlnTXlJZ2VHMXNPbk53WVdObFBTSndjbVZ6WlhKMlpTSStQSEJ2YkhsbmIyNGdjRzlwYm5SelBTSTFMams1TWl3d0lESXVPVGt5TERNZ0xUQXVNREE0TERBZ0lpOCtQQzl6ZG1jKyk7XG5cbiAgLy8gV2UgY2FuIHNhZmVseSB1c2UgbGVmdG1vc3QgYW5kIHJpZ2h0bW9zdCBub3dcbiAgYmFja2dyb3VuZC1wb3NpdGlvbjogaWYoJHRleHQtZGlyZWN0aW9uID09ICdydGwnLCAwJSwgMTAwJSkgY2VudGVyO1xuXG4gIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gIGJvcmRlcjoge1xuICAgIHN0eWxlOiAkaW5wdXQtYm9yZGVyLXN0eWxlO1xuICAgIHdpZHRoOiAkaW5wdXQtYm9yZGVyLXdpZHRoO1xuICAgIGNvbG9yOiAkaW5wdXQtYm9yZGVyLWNvbG9yO1xuICB9XG4gIGNvbG9yOiAkaW5wdXQtZm9udC1jb2xvcjtcbiAgZm9udC1mYW1pbHk6ICRpbnB1dC1mb250LWZhbWlseTtcbiAgZm9udC1zaXplOiAkaW5wdXQtZm9udC1zaXplO1xuICBsaW5lLWhlaWdodDogbm9ybWFsO1xuICBwYWRkaW5nOiAoJGZvcm0tc3BhY2luZyAvIDIpO1xuICBAaW5jbHVkZSByYWRpdXMoMCk7XG4gICYucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRnbG9iYWwtcmFkaXVzKTsgfVxuICAmOmhvdmVyIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkc2VsZWN0LWhvdmVyLWJnLWNvbG9yO1xuICAgIGJvcmRlci1jb2xvcjogJGlucHV0LWZvY3VzLWJvcmRlci1jb2xvcjtcbiAgfVxuICAvLyBEaXNhYmxlZCBTdHlsZXNcbiAgJjpkaXNhYmxlZCB7XG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGlucHV0LWRpc2FibGVkLWJnO1xuICAgIGN1cnNvcjogJGlucHV0LWRpc2FibGVkLWN1cnNvcjtcbiAgfVxufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byB0dXJuIG9uL29mZiBIVE1MNSBudW1iZXIgc3Bpbm5lcnNcbkBtaXhpbiBodG1sNW51bWJlcigkYnJvd3NlciwgJG9uOnRydWUpIHtcbiAgQGlmICRvbj09ZmFsc2Uge1xuICAgICAgQGlmICRicm93c2VyPT13ZWJraXQge1xuICAgICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH0gQGVsc2UgaWYgJGJyb3dzZXI9PW1veiB7XG4gICAgICAgIC1tb3otYXBwZWFyYW5jZTogdGV4dGZpZWxkO1xuICAgICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJmb3JtXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtZm9ybS1jbGFzc2VzIHtcbiAgICAvKiBTdGFuZGFyZCBGb3JtcyAqL1xuICAgIGZvcm0geyBtYXJnaW46IDAgMCAkZm9ybS1zcGFjaW5nOyB9XG5cbiAgICAvKiBVc2luZyBmb3JtcyB3aXRoaW4gcm93cywgd2UgbmVlZCB0byBzZXQgc29tZSBkZWZhdWx0cyAqL1xuICAgIGZvcm0gLnJvdyB7IEBpbmNsdWRlIGZvcm0tcm93LWJhc2U7IH1cblxuICAgIC8qIExhYmVsIFN0eWxlcyAqL1xuICAgIGxhYmVsIHsgQGluY2x1ZGUgZm9ybS1sYWJlbDtcbiAgICAgICYucmlnaHQgeyBAaW5jbHVkZSBmb3JtLWxhYmVsKHJpZ2h0LCBmYWxzZSk7IH1cbiAgICAgICYuaW5saW5lIHsgQGluY2x1ZGUgZm9ybS1sYWJlbChpbmxpbmUsIGZhbHNlKTsgfVxuICAgICAgLyogU3R5bGVzIGZvciByZXF1aXJlZCBpbnB1dHMgKi9cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgdGV4dC10cmFuc2Zvcm06ICRmb3JtLWxhYmVsLXNtYWxsLXRyYW5zZm9ybTtcbiAgICAgICAgY29sb3I6IHNjYWxlLWNvbG9yKCRmb3JtLWxhYmVsLWZvbnQtY29sb3IsICRsaWdodG5lc3M6IDE1JSk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogQXR0YWNoIGVsZW1lbnRzIHRvIHRoZSBiZWdpbm5pbmcgb3IgZW5kIG9mIGFuIGlucHV0ICovXG4gICAgLnByZWZpeCxcbiAgICAucG9zdGZpeCB7IEBpbmNsdWRlIHByZWZpeC1wb3N0Zml4LWJhc2U7IH1cblxuICAgIC8qIEFkanVzdCBwYWRkaW5nLCBhbGlnbm1lbnQgYW5kIHJhZGl1cyBpZiBwcmUvcG9zdCBlbGVtZW50IGlzIGEgYnV0dG9uICovXG4gICAgLnBvc3RmaXguYnV0dG9uIHsgQGluY2x1ZGUgYnV0dG9uLXNpemUoZmFsc2UsIGZhbHNlKTsgQGluY2x1ZGUgcG9zdGZpeChmYWxzZSwgZmFsc2UsIHRydWUpOyB9XG4gICAgLnByZWZpeC5idXR0b24geyBAaW5jbHVkZSBidXR0b24tc2l6ZShmYWxzZSwgZmFsc2UpOyBAaW5jbHVkZSBwcmVmaXgoZmFsc2UsIGZhbHNlLCB0cnVlKTsgfVxuXG4gICAgLnByZWZpeC5idXR0b24ucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yYWRpdXMpOyB9XG4gICAgLnBvc3RmaXguYnV0dG9uLnJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGJ1dHRvbi1yYWRpdXMpOyB9XG4gICAgLnByZWZpeC5idXR0b24ucm91bmQgeyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJvdW5kKTsgfVxuICAgIC5wb3N0Zml4LmJ1dHRvbi5yb3VuZCB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGJ1dHRvbi1yb3VuZCk7IH1cblxuICAgIC8qIFNlcGFyYXRlIHByZWZpeCBhbmQgcG9zdGZpeCBzdHlsZXMgd2hlbiBvbiBzcGFuIG9yIGxhYmVsIHNvIGJ1dHRvbnMga2VlcCB0aGVpciBvd24gKi9cbiAgICBzcGFuLnByZWZpeCwgbGFiZWwucHJlZml4IHsgQGluY2x1ZGUgcHJlZml4KCk7IH1cbiAgICBzcGFuLnBvc3RmaXgsIGxhYmVsLnBvc3RmaXggeyBAaW5jbHVkZSBwb3N0Zml4KCk7IH1cblxuICAgIC8qIFdlIHVzZSB0aGlzIHRvIGdldCBiYXNpYyBzdHlsaW5nIG9uIGFsbCBiYXNpYyBmb3JtIGVsZW1lbnRzICovXG4gICAgI3t0ZXh0LWlucHV0cyhhbGwsICdpbnB1dCcpfSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgICAgQGluY2x1ZGUgZm9ybS1lbGVtZW50O1xuICAgICAgQGlmICRpbnB1dC1pbmNsdWRlLWdsb3dpbmctZWZmZWN0ID09IGZhbHNlIHtcbiAgICAgICAgLXdlYmtpdC10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uLCBiYWNrZ3JvdW5kICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZSAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgLW1vei10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uLCBiYWNrZ3JvdW5kICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZSAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgLW1zLXRyYW5zaXRpb246IGJvcmRlci1jb2xvciAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWUgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1pbmctZnVuY3Rpb24sIGJhY2tncm91bmQgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uO1xuICAgICAgICAtby10cmFuc2l0aW9uOiBib3JkZXItY29sb3IgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1lICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltaW5nLWZ1bmN0aW9uLCBiYWNrZ3JvdW5kICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZSAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbjtcbiAgICAgICAgdHJhbnNpdGlvbjogYm9yZGVyLWNvbG9yICRpbnB1dC10cmFuc2l0aW9uLWZhZGUtdGltZSAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWluZy1mdW5jdGlvbiwgYmFja2dyb3VuZCAkaW5wdXQtdHJhbnNpdGlvbi1mYWRlLXRpbWUgJGlucHV0LXRyYW5zaXRpb24tZmFkZS10aW1pbmctZnVuY3Rpb247XG4gICAgICB9XG4gICAgICAmLnJhZGl1cyB7XG4gICAgICAgIEBpbmNsdWRlIHJhZGl1cygkaW5wdXQtYm9yZGVyLXJhZGl1cyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZm9ybSB7XG4gICAgICAucm93IHtcbiAgICAgICAgLnByZWZpeC1yYWRpdXMucm93LmNvbGxhcHNlIHtcbiAgICAgICAgICBpbnB1dCxcbiAgICAgICAgICB0ZXh0YXJlYSxcbiAgICAgICAgICBzZWxlY3QsXG4gICAgICAgICAgYnV0dG9uIHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAgICAgICAucHJlZml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yYWRpdXMpOyB9XG4gICAgICAgIH1cbiAgICAgICAgLnBvc3RmaXgtcmFkaXVzLnJvdy5jb2xsYXBzZSB7XG4gICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgdGV4dGFyZWEsXG4gICAgICAgICAgc2VsZWN0LFxuICAgICAgICAgIGJ1dHRvbiB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRidXR0b24tcmFkaXVzKTsgfVxuICAgICAgICAgIC5wb3N0Zml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJhZGl1cyk7IH1cbiAgICAgICAgfVxuICAgICAgICAucHJlZml4LXJvdW5kLnJvdy5jb2xsYXBzZSB7XG4gICAgICAgICAgaW5wdXQsXG4gICAgICAgICAgdGV4dGFyZWEsXG4gICAgICAgICAgc2VsZWN0LFxuICAgICAgICAgIGJ1dHRvbiB7IEBpbmNsdWRlIHJhZGl1cygwKTsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGJ1dHRvbi1yb3VuZCk7IH1cbiAgICAgICAgICAucHJlZml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkZGVmYXVsdC1mbG9hdCwgJGJ1dHRvbi1yb3VuZCk7IH1cbiAgICAgICAgfVxuICAgICAgICAucG9zdGZpeC1yb3VuZC5yb3cuY29sbGFwc2Uge1xuICAgICAgICAgIGlucHV0LFxuICAgICAgICAgIHRleHRhcmVhLFxuICAgICAgICAgIHNlbGVjdCxcbiAgICAgICAgICBidXR0b24geyBAaW5jbHVkZSByYWRpdXMoMCk7IEBpbmNsdWRlIHNpZGUtcmFkaXVzKCRkZWZhdWx0LWZsb2F0LCAkYnV0dG9uLXJvdW5kKTsgfVxuICAgICAgICAgIC5wb3N0Zml4IHsgQGluY2x1ZGUgcmFkaXVzKDApOyBAaW5jbHVkZSBzaWRlLXJhZGl1cygkb3Bwb3NpdGUtZGlyZWN0aW9uLCAkYnV0dG9uLXJvdW5kKTsgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXRbdHlwZT1cInN1Ym1pdFwiXSB7XG4gICAgICAtd2Via2l0LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICAtbW96LWFwcGVhcmFuY2U6IG5vbmU7XG4gICAgICBib3JkZXItcmFkaXVzOiAwO1xuICAgIH1cblxuICAgIC8qIFJlc3BlY3QgZW5mb3JjZWQgYW1vdW50IG9mIHJvd3MgZm9yIHRleHRhcmVhICovXG4gICAgdGV4dGFyZWFbcm93c10ge1xuICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgIH1cblxuXHQgIC8qIE5vdCBhbGxvdyByZXNpemUgb3V0IG9mIHBhcmVudCAqL1xuXHQgIHRleHRhcmVhIHtcblx0ICAgIG1heC13aWR0aDogMTAwJTtcblx0ICB9XG4gICAgXG4gICAgLy8gc3R5bGUgcGxhY2Vob2xkZXIgdGV4dCBjcm9zcyBicm93c2VyXG4gICAgOjotd2Via2l0LWlucHV0LXBsYWNlaG9sZGVyIHtcbiAgICAgIGNvbG9yOiAkaW5wdXQtcGxhY2Vob2xkZXItZm9udC1jb2xvcjtcbiAgICB9XG5cbiAgICA6LW1vei1wbGFjZWhvbGRlciB7IC8qIEZpcmVmb3ggMTgtICovXG4gICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1mb250LWNvbG9yOyAgXG4gICAgfVxuXG4gICAgOjotbW96LXBsYWNlaG9sZGVyIHsgIC8qIEZpcmVmb3ggMTkrICovXG4gICAgICAgY29sb3I6ICRpbnB1dC1wbGFjZWhvbGRlci1mb250LWNvbG9yOyAgXG4gICAgfVxuXG4gICAgOi1tcy1pbnB1dC1wbGFjZWhvbGRlciB7ICBcbiAgICAgICBjb2xvcjogJGlucHV0LXBsYWNlaG9sZGVyLWZvbnQtY29sb3I7ICBcbiAgICB9XG4gICBcblxuICAgIC8qIEFkZCBoZWlnaHQgdmFsdWUgZm9yIHNlbGVjdCBlbGVtZW50cyB0byBtYXRjaCB0ZXh0IGlucHV0IGhlaWdodCAqL1xuICAgIHNlbGVjdCB7XG4gICAgICBAaW5jbHVkZSBmb3JtLXNlbGVjdDtcbiAgICAgIGhlaWdodDogKCRpbnB1dC1mb250LXNpemUgKyAoJGZvcm0tc3BhY2luZyAqIDEuNSkgLSByZW0tY2FsYygxKSk7XG4gICAgICAmW211bHRpcGxlXSB7XG4gICAgICAgIGhlaWdodDogYXV0bztcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiBBZGp1c3QgbWFyZ2luIGZvciBmb3JtIGVsZW1lbnRzIGJlbG93ICovXG4gICAgaW5wdXRbdHlwZT1cImZpbGVcIl0sXG4gICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSxcbiAgICBzZWxlY3Qge1xuICAgICAgbWFyZ2luOiAwIDAgJGZvcm0tc3BhY2luZyAwO1xuICAgIH1cblxuICAgIGlucHV0W3R5cGU9XCJjaGVja2JveFwiXSArIGxhYmVsLFxuICAgIGlucHV0W3R5cGU9XCJyYWRpb1wiXSArIGxhYmVsIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGZvcm0tc3BhY2luZyAqIC41O1xuICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICRmb3JtLXNwYWNpbmc7XG4gICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgdmVydGljYWwtYWxpZ246IGJhc2VsaW5lO1xuICAgIH1cblxuICAgIC8qIE5vcm1hbGl6ZSBmaWxlIGlucHV0IHdpZHRoICovXG4gICAgaW5wdXRbdHlwZT1cImZpbGVcIl0ge1xuICAgICAgd2lkdGg6MTAwJTtcbiAgICB9XG5cbiAgICAvKiBIVE1MNSBOdW1iZXIgc3Bpbm5lcnMgc2V0dGluZ3MgKi9cbiAgICBpbnB1dFt0eXBlPW51bWJlcl0ge1xuICAgICAgQGluY2x1ZGUgaHRtbDVudW1iZXIobW96LCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzKVxuICAgIH1cbiAgICBpbnB1dFt0eXBlPVwibnVtYmVyXCJdOjotd2Via2l0LWlubmVyLXNwaW4tYnV0dG9uLFxuICAgIGlucHV0W3R5cGU9XCJudW1iZXJcIl06Oi13ZWJraXQtb3V0ZXItc3Bpbi1idXR0b24ge1xuICAgICAgQGluY2x1ZGUgaHRtbDVudW1iZXIod2Via2l0LCAkaW5wdXQtbnVtYmVyLXNwaW5uZXJzKTtcbiAgICB9XG5cbiAgICAvKiBXZSBhZGQgYmFzaWMgZmllbGRzZXQgc3R5bGluZyAqL1xuICAgIGZpZWxkc2V0IHtcbiAgICAgIEBpbmNsdWRlIGZpZWxkc2V0O1xuICAgIH1cblxuICAgIC8qIEVycm9yIEhhbmRsaW5nICovXG5cbiAgICAje2RhdGEoJ2FiaWRlJyl9IHtcbiAgICAgIC5lcnJvciBzbWFsbC5lcnJvciwgLmVycm9yIHNwYW4uZXJyb3IsIHNwYW4uZXJyb3IsIHNtYWxsLmVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xuICAgICAgfVxuICAgICAgc3Bhbi5lcnJvciwgc21hbGwuZXJyb3IgeyBkaXNwbGF5OiBub25lOyB9XG4gICAgfVxuXG4gICAgc3Bhbi5lcnJvciwgc21hbGwuZXJyb3Ige1xuICAgICAgQGluY2x1ZGUgZm9ybS1lcnJvci1tZXNzYWdlO1xuICAgIH1cblxuICAgIC5lcnJvciB7XG4gICAgICBpbnB1dCxcbiAgICAgIHRleHRhcmVhLFxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgaW5wdXRbdHlwZT1cImNoZWNrYm94XCJdLFxuICAgICAgaW5wdXRbdHlwZT1cInJhZGlvXCJdIHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogJGZvcm0tc3BhY2luZ1xuICAgICAgfVxuXG4gICAgICBsYWJlbCxcbiAgICAgIGxhYmVsLmVycm9yIHtcbiAgICAgICAgQGluY2x1ZGUgZm9ybS1sYWJlbC1lcnJvci1jb2xvcjtcbiAgICAgIH1cblxuICAgICAgc21hbGwuZXJyb3Ige1xuICAgICAgICBAaW5jbHVkZSBmb3JtLWVycm9yLW1lc3NhZ2U7XG4gICAgICB9XG5cbiAgICAgID4gbGFiZWwge1xuICAgICAgICA+IHNtYWxsIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBjb2xvcjogc2NhbGUtY29sb3IoJGZvcm0tbGFiZWwtZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMTUlKTtcbiAgICAgICAgICBkaXNwbGF5OiBpbmxpbmU7XG4gICAgICAgICAgZm9udC1zaXplOiA2MCU7XG4gICAgICAgICAgZm9udC1zdHlsZTogbm9ybWFsO1xuICAgICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgICBwYWRkaW5nOiAwO1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkZm9ybS1sYWJlbC1zbWFsbC10cmFuc2Zvcm07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgc3Bhbi5lcnJvci1tZXNzYWdlIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICB9XG4gICAgfVxuXG4gICAgaW5wdXQuZXJyb3IsXG4gICAgdGV4dGFyZWEuZXJyb3IsXG4gICAgc2VsZWN0LmVycm9yIHtcbiAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgfVxuICAgIGxhYmVsLmVycm9yIHsgQGluY2x1ZGUgZm9ybS1sYWJlbC1lcnJvci1jb2xvcjsgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtZ3JpZC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG4kaW5jbHVkZS14bC1odG1sLWdyaWQtY2xhc3NlczogZmFsc2UgIWRlZmF1bHQ7XG5cbiRyb3ctd2lkdGg6IHJlbS1jYWxjKDEwMDApICFkZWZhdWx0O1xuJHRvdGFsLWNvbHVtbnM6IDEyICFkZWZhdWx0O1xuXG4kbGFzdC1jaGlsZC1mbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbiAhZGVmYXVsdDtcblxuLy9cbi8vIEdyaWQgRnVuY3Rpb25zXG4vL1xuXG4vLyBEZXByZWNhdGVkOiBXZSdsbCBkcm9wIHN1cHBvcnQgZm9yIHRoaXMgaW4gNS4xLCB1c2UgZ3JpZC1jYWxjKClcbkBmdW5jdGlvbiBncmlkQ2FsYygkY29sTnVtYmVyLCAkdG90YWxDb2x1bW5zKSB7XG4gIEB3YXJuIFwiZ3JpZENhbGMoKSBpcyBkZXByZWNhdGVkLCB1c2UgZ3JpZC1jYWxjKClcIjtcbiAgQHJldHVybiBncmlkLWNhbGMoJGNvbE51bWJlciwgJHRvdGFsQ29sdW1ucyk7XG59XG5cbi8vIEBGVU5DVElPTlxuLy8gJGNvbE51bWJlciAtIEZvdW5kIGluIHNldHRpbmdzIGZpbGVcbi8vICR0b3RhbENvbHVtbnMgLSBGb3VuZCBpbiBzZXR0aW5ncyBmaWxlXG5AZnVuY3Rpb24gZ3JpZC1jYWxjKCRjb2xOdW1iZXIsICR0b3RhbENvbHVtbnMpIHtcbiAgJHJlc3VsdDogcGVyY2VudGFnZSgoJGNvbE51bWJlciAvICR0b3RhbENvbHVtbnMpKTtcbiAgQGlmICRyZXN1bHQgPT0gMCUgeyAkcmVzdWx0OiAwOyB9XG4gIEByZXR1cm4gJHJlc3VsdDtcbn1cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIEZvciBjcmVhdGluZyBjb250YWluZXIsIG5lc3RlZCwgYW5kIGNvbGxhcHNlZCByb3dzLlxuLy9cbi8vXG4vLyAkYmVoYXZpb3IgLSBBbnkgc3BlY2lhbCBiZWhhdmlvciBmb3IgdGhpcyByb3c/IERlZmF1bHQ6IGZhbHNlLiBPcHRpb25zOiBuZXN0LCBjb2xsYXBzZSwgbmVzdC1jb2xsYXBzZSwgZmFsc2UuXG5AbWl4aW4gZ3JpZC1yb3coJGJlaGF2aW9yOiBmYWxzZSkge1xuXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhuZXN0KTsgdG8gaW5jbHVkZSBhIG5lc3RlZCByb3dcbiAgQGlmICRiZWhhdmlvciA9PSBuZXN0IHtcbiAgICBtYXJnaW46IDAgKC0oJGNvbHVtbi1ndXR0ZXIvMikpO1xuICAgIG1heC13aWR0aDogbm9uZTtcbiAgICB3aWR0aDogYXV0bztcbiAgfVxuXG4gIC8vIHVzZSBAaW5jbHVkZSBncmlkLXJvdyhjb2xsYXBzZSk7IHRvIGNvbGxhcHNlZCBhIGNvbnRhaW5lciByb3cgbWFyZ2luc1xuICBAZWxzZSBpZiAkYmVoYXZpb3IgPT0gY29sbGFwc2Uge1xuICAgIG1hcmdpbjogMDtcbiAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyB1c2UgQGluY2x1ZGUgZ3JpZC1yb3cobmVzdC1jb2xsYXBzZSk7IHRvIGNvbGxhcHNlIG91dGVyIG1hcmdpbnMgb24gYSBuZXN0ZWQgcm93XG4gIEBlbHNlIGlmICRiZWhhdmlvciA9PSBuZXN0LWNvbGxhcHNlIHtcbiAgICBtYXJnaW46IDA7XG4gICAgbWF4LXdpZHRoOiBub25lO1xuICAgIHdpZHRoOiBhdXRvO1xuICB9XG5cbiAgLy8gdXNlIEBpbmNsdWRlIGdyaWQtcm93OyB0byB1c2UgYSBjb250YWluZXIgcm93XG4gIEBlbHNlIHtcbiAgICBtYXJnaW46IDAgYXV0bztcbiAgICBtYXgtd2lkdGg6ICRyb3ctd2lkdGg7XG4gICAgd2lkdGg6IDEwMCU7XG4gIH1cblxuICAvLyBDbGVhcmZpeCBmb3IgYWxsIHJvd3NcbiAgQGluY2x1ZGUgY2xlYXJmaXgoKTtcbn1cblxuLy8gQ3JlYXRlcyBhIGNvbHVtbiwgc2hvdWxkIGJlIHVzZWQgaW5zaWRlIG9mIGEgbWVkaWEgcXVlcnkgdG8gY29udHJvbCBsYXlvdXRzXG4vL1xuLy8gJGNvbHVtbnMgLSBUaGUgbnVtYmVyIG9mIGNvbHVtbnMgdGhpcyBzaG91bGQgYmVcbi8vICRsYXN0LWNvbHVtbiAtIElzIHRoaXMgdGhlIGxhc3QgY29sdW1uPyBEZWZhdWx0OiBmYWxzZS5cbi8vICRjZW50ZXIgLSBDZW50ZXIgdGhlc2UgY29sdW1ucz8gRGVmYXVsdDogZmFsc2UuXG4vLyAkb2Zmc2V0IC0gIyBvZiBjb2x1bW5zIHRvIG9mZnNldC4gRGVmYXVsdDogZmFsc2UuXG4vLyAkcHVzaCAtICMgb2YgY29sdW1ucyB0byBwdXNoLiBEZWZhdWx0OiBmYWxzZS5cbi8vICRwdWxsIC0gIyBvZiBjb2x1bW5zIHRvIHB1bGwuIERlZmF1bHQ6IGZhbHNlLlxuLy8gJGNvbGxhcHNlIC0gR2V0IHJpZCBvZiBndXR0ZXIgcGFkZGluZyBvbiBjb2x1bW4/IERlZmF1bHQ6IGZhbHNlLlxuLy8gJGZsb2F0IC0gU2hvdWxkIHRoaXMgZmxvYXQ/IERlZmF1bHQ6IHRydWUuIE9wdGlvbnM6IHRydWUsIGZhbHNlLCBsZWZ0LCByaWdodC5cbkBtaXhpbiBncmlkLWNvbHVtbihcbiAgJGNvbHVtbnM6ZmFsc2UsXG4gICRsYXN0LWNvbHVtbjpmYWxzZSxcbiAgJGNlbnRlcjpmYWxzZSxcbiAgJG9mZnNldDpmYWxzZSxcbiAgJHB1c2g6ZmFsc2UsXG4gICRwdWxsOmZhbHNlLFxuICAkY29sbGFwc2U6ZmFsc2UsXG4gICRmbG9hdDp0cnVlLFxuICAkcG9zaXRpb246ZmFsc2UpIHtcblxuICAvLyBJZiBwb3NpdGlvbmVkIGZvciBkZWZhdWx0IC5jb2x1bW4sIGluY2x1ZGUgcmVsYXRpdmUgcG9zaXRpb25cbiAgLy8gcHVzaCBhbmQgcHVsbCByZXF1aXJlIHBvc2l0aW9uIHNldFxuICBAaWYgJHBvc2l0aW9uIG9yICRwdXNoIG9yICRwdWxsIHtcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIH1cblxuICAvLyBJZiBjb2xsYXBzZWQsIGdldCByaWQgb2YgZ3V0dGVyIHBhZGRpbmdcbiAgQGlmICRjb2xsYXBzZSB7XG4gICAgcGFkZGluZy1sZWZ0OiAwO1xuICAgIHBhZGRpbmctcmlnaHQ6IDA7XG4gIH1cblxuICAvLyBHdXR0ZXIgcGFkZGluZyB3aGVuZXZlciBhIGNvbHVtbiBpc24ndCBzZXQgdG8gY29sbGFwc2VcbiAgLy8gKHVzZSAkY29sbGFwc2U6bnVsbCB0byBkbyBub3RoaW5nKVxuICBAZWxzZSBpZiAkY29sbGFwc2UgPT0gZmFsc2Uge1xuICAgIHBhZGRpbmctbGVmdDogKCRjb2x1bW4tZ3V0dGVyIC8gMik7XG4gICAgcGFkZGluZy1yaWdodDogKCRjb2x1bW4tZ3V0dGVyIC8gMik7XG4gIH1cblxuICAvLyBJZiBhIGNvbHVtbiBudW1iZXIgaXMgZ2l2ZW4sIGNhbGN1bGF0ZSB3aWR0aFxuICBAaWYgJGNvbHVtbnMge1xuICAgIHdpZHRoOiBncmlkLWNhbGMoJGNvbHVtbnMsICR0b3RhbC1jb2x1bW5zKTtcblxuICAgIC8vIElmIGxhc3QgY29sdW1uLCBmbG9hdCBuYXR1cmFsbHkgaW5zdGVhZCBvZiB0byB0aGUgcmlnaHRcbiAgICBAaWYgJGxhc3QtY29sdW1uIHsgZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247IH1cbiAgfVxuXG4gIC8vIFNvdXJjZSBPcmRlcmluZywgYWRkcyBsZWZ0L3JpZ2h0IGRlcGVuZGluZyBvbiB3aGljaCB5b3UgdXNlLlxuICBAaWYgJHB1c2ggeyAjeyRkZWZhdWx0LWZsb2F0fTogZ3JpZC1jYWxjKCRwdXNoLCAkdG90YWwtY29sdW1ucyk7ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IGF1dG87IH1cbiAgQGlmICRwdWxsIHsgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogZ3JpZC1jYWxjKCRwdWxsLCAkdG90YWwtY29sdW1ucyk7ICN7JGRlZmF1bHQtZmxvYXR9OiBhdXRvOyB9XG5cbiAgQGlmICRmbG9hdCB7XG4gICAgQGlmICRmbG9hdCA9PSBsZWZ0IG9yICRmbG9hdCA9PSB0cnVlIHsgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0OyB9XG4gICAgQGVsc2UgaWYgJGZsb2F0ID09IHJpZ2h0IHsgZmxvYXQ6ICRvcHBvc2l0ZS1kaXJlY3Rpb247IH1cbiAgICBAZWxzZSB7IGZsb2F0OiBub25lOyB9XG4gIH1cblxuICAvLyBJZiBjZW50ZXJlZCwgZ2V0IHJpZCBvZiBmbG9hdCBhbmQgYWRkIGFwcHJvcHJpYXRlIG1hcmdpbnNcbiAgQGlmICRjZW50ZXIge1xuICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogYXV0bztcbiAgICBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIElmIG9mZnNldCwgY2FsY3VsYXRlIGFwcHJvcHJpYXRlIG1hcmdpbnNcbiAgQGlmICRvZmZzZXQgeyBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IGdyaWQtY2FsYygkb2Zmc2V0LCAkdG90YWwtY29sdW1ucykgIWltcG9ydGFudDsgfVxuXG59XG5cbi8vIENyZWF0ZSBwcmVzZW50YXRpb25hbCBjbGFzc2VzIGZvciBncmlkXG4vL1xuLy8gJHNpemUgLSBOYW1lIG9mIGNsYXNzIHRvIHVzZSwgaS5lLiBcImxhcmdlXCIgd2lsbCBnZW5lcmF0ZSAubGFyZ2UtMSwgLmxhcmdlLTIsIGV0Yy5cbkBtaXhpbiBncmlkLWh0bWwtY2xhc3Nlcygkc2l6ZSkge1xuXG4gIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHRvdGFsLWNvbHVtbnMgLSAxIHtcbiAgICAuI3skc2l6ZX0tcHVzaC0jeyRpfSB7XG4gICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVzaDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgfVxuICAgIC4jeyRzaXplfS1wdWxsLSN7JGl9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdWxsOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcbiAgICB9XG4gIH1cblxuICAuY29sdW1uLFxuICAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zOmZhbHNlLCAkcG9zaXRpb246dHJ1ZSk7IH1cblxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggJHRvdGFsLWNvbHVtbnMge1xuICAgIC4jeyRzaXplfS0jeyRpfSB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTsgfVxuICB9XG5cbiAgQGZvciAkaSBmcm9tIDAgdGhyb3VnaCAkdG90YWwtY29sdW1ucyAtIDEge1xuICAgIC4jeyRzaXplfS1vZmZzZXQtI3skaX0geyBAaW5jbHVkZSBncmlkLWNvbHVtbigkb2Zmc2V0OiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTsgfVxuICB9XG5cbiAgLiN7JHNpemV9LXJlc2V0LW9yZGVyIHtcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgbGVmdDogYXV0bztcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgcmlnaHQ6IGF1dG87XG4gIH1cblxuICAuY29sdW1uLiN7JHNpemV9LWNlbnRlcmVkLFxuICAuY29sdW1ucy4jeyRzaXplfS1jZW50ZXJlZCB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjZW50ZXI6dHJ1ZSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7IH1cblxuICAuY29sdW1uLiN7JHNpemV9LXVuY2VudGVyZWQsXG4gIC5jb2x1bW5zLiN7JHNpemV9LXVuY2VudGVyZWQge1xuICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gIH1cblxuICAvLyBGaWdodGluZyBbY2xhc3MqPVwiY29sdW1uXCJdICsgW2NsYXNzKj1cImNvbHVtblwiXTpsYXN0LWNoaWxkXG4gIC5jb2x1bW4uI3skc2l6ZX0tY2VudGVyZWQ6bGFzdC1jaGlsZCxcbiAgLmNvbHVtbnMuI3skc2l6ZX0tY2VudGVyZWQ6bGFzdC1jaGlsZHtcbiAgICBmbG9hdDogbm9uZTtcbiAgfVxuXG4gIC8vIEZpZ2h0aW5nIC5jb2x1bW4uPHByZXZpb3VzLXNpemU+LWNlbnRlcmVkOmxhc3QtY2hpbGRcbiAgLmNvbHVtbi4jeyRzaXplfS11bmNlbnRlcmVkOmxhc3QtY2hpbGQsXG4gIC5jb2x1bW5zLiN7JHNpemV9LXVuY2VudGVyZWQ6bGFzdC1jaGlsZCB7XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICB9XG5cbiAgLmNvbHVtbi4jeyRzaXplfS11bmNlbnRlcmVkLm9wcG9zaXRlLFxuICAuY29sdW1ucy4jeyRzaXplfS11bmNlbnRlcmVkLm9wcG9zaXRlIHtcbiAgICBmbG9hdDogJG9wcG9zaXRlLWRpcmVjdGlvbjtcbiAgfVxuXG5cdC5yb3cge1xuXHRcdCYuI3skc2l6ZX0tY29sbGFwc2Uge1xuXHRcdFx0PiAuY29sdW1uLFxuXHRcdFx0PiAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2xsYXBzZTp0cnVlLCAkZmxvYXQ6ZmFsc2UpOyB9XG5cblx0XHRcdC5yb3cge21hcmdpbi1sZWZ0OjA7IG1hcmdpbi1yaWdodDowO31cblx0XHR9XG5cdFx0Ji4jeyRzaXplfS11bmNvbGxhcHNlIHtcblx0XHRcdD4gLmNvbHVtbixcblx0XHRcdD4gLmNvbHVtbnMge1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImdyaWRcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1ncmlkLWNsYXNzZXMge1xuICAgIC5yb3cge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1yb3c7XG5cbiAgICAgICYuY29sbGFwc2Uge1xuICAgICAgICAgPiAuY29sdW1uLFxuICAgICAgICAgPiAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2xsYXBzZTp0cnVlLCAkZmxvYXQ6ZmFsc2UpOyB9XG5cbiAgICAgICAgLnJvdyB7bWFyZ2luLWxlZnQ6MDsgbWFyZ2luLXJpZ2h0OjA7fVxuICAgICAgfVxuXG4gICAgICAucm93IHsgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOm5lc3QpO1xuICAgICAgICAmLmNvbGxhcHNlIHsgQGluY2x1ZGUgZ3JpZC1yb3coJGJlaGF2aW9yOm5lc3QtY29sbGFwc2UpOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmNvbHVtbixcbiAgICAuY29sdW1ucyB7IEBpbmNsdWRlIGdyaWQtY29sdW1uKCRjb2x1bW5zOiR0b3RhbC1jb2x1bW5zKTsgfVxuXG4gICAgLmNvbHVtbixcbiAgICAuY29sdW1ucyB7XG4gICAgICAmICsgJjpsYXN0LWNoaWxkIHtcbiAgICAgICAgZmxvYXQ6ICRsYXN0LWNoaWxkLWZsb2F0O1xuICAgICAgfVxuICAgICAgJiArICYuZW5kIHtcbiAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgfVxuICAgIH1cblxuICAgIEBtZWRpYSAjeyRzbWFsbC11cH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6c21hbGwpO1xuICAgIH1cblxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOm1lZGl1bSk7XG4gICAgICAvLyBPbGQgcHVzaCBhbmQgcHVsbCBjbGFzc2VzXG4gICAgICBAZm9yICRpIGZyb20gMCB0aHJvdWdoICR0b3RhbC1jb2x1bW5zIC0gMSB7XG4gICAgICAgIC5wdXNoLSN7JGl9IHtcbiAgICAgICAgICBAaW5jbHVkZSBncmlkLWNvbHVtbigkcHVzaDokaSwgJGNvbGxhcHNlOm51bGwsICRmbG9hdDpmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgICAgLnB1bGwtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdWxsOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOmxhcmdlKTtcbiAgICAgIEBmb3IgJGkgZnJvbSAwIHRocm91Z2ggJHRvdGFsLWNvbHVtbnMgLSAxIHtcbiAgICAgICAgLnB1c2gtI3skaX0ge1xuICAgICAgICAgIEBpbmNsdWRlIGdyaWQtY29sdW1uKCRwdXNoOiRpLCAkY29sbGFwc2U6bnVsbCwgJGZsb2F0OmZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgICAucHVsbC0jeyRpfSB7XG4gICAgICAgICAgQGluY2x1ZGUgZ3JpZC1jb2x1bW4oJHB1bGw6JGksICRjb2xsYXBzZTpudWxsLCAkZmxvYXQ6ZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG4gIEBpZiAkaW5jbHVkZS14bC1odG1sLWdyaWQtY2xhc3NlcyB7XG4gICAgQG1lZGlhICN7JHhsYXJnZS11cH0ge1xuICAgICAgQGluY2x1ZGUgZ3JpZC1odG1sLWNsYXNzZXMoJHNpemU6eGxhcmdlKTtcbiAgICB9XG4gICAgQG1lZGlhICN7JHh4bGFyZ2UtdXB9IHtcbiAgICAgIEBpbmNsdWRlIGdyaWQtaHRtbC1jbGFzc2VzKCRzaXplOnh4bGFyZ2UpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuXG4vLyBAbmFtZVxuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFsLnNjc3NcblxuJGluY2x1ZGUtaHRtbC1pY29uLWJhci1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIEB2YXJpYWJsZXNcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBpY29uLWJhciBhbmQgaXRlbXNcbiRpY29uLWJhci1iZzogJG9pbCAhZGVmYXVsdDtcbiRpY29uLWJhci1mb250LWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kaWNvbi1iYXItZm9udC1jb2xvci1ob3ZlcjogJGljb24tYmFyLWZvbnQtY29sb3IgIWRlZmF1bHQ7XG4kaWNvbi1iYXItZm9udC1zaXplOiAxcmVtICFkZWZhdWx0O1xuJGljb24tYmFyLWhvdmVyLWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRpY29uLWJhci1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kaWNvbi1iYXItaWNvbi1jb2xvci1ob3ZlcjogJGljb24tYmFyLWljb24tY29sb3IgIWRlZmF1bHQ7XG4kaWNvbi1iYXItaWNvbi1zaXplOiAxLjg3NXJlbSAhZGVmYXVsdDtcbiRpY29uLWJhci1pbWFnZS13aWR0aDogMS44NzVyZW0gIWRlZmF1bHQ7XG4kaWNvbi1iYXItaW1hZ2UtaGVpZ2h0OiAxLjg3NXJlbSAhZGVmYXVsdDtcbiRpY29uLWJhci1hY3RpdmUtY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGljb24tYmFyLWl0ZW0tcGFkZGluZzogMS4yNXJlbSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gc2V0IGRlZmF1bHQgb3BhY2l0eSBhbmQgY3Vyc29yIGZvciBkaXNhYmxlZCBpY29ucy5cbiRpY29uLWJhci1kaXNhYmxlZC1vcGFjaXR5OiAuNyAhZGVmYXVsdDtcbiRpY29uLWJhci1kaXNhYmxlZC1jdXJzb3I6ICRjdXJzb3ItZGlzYWJsZWQtdmFsdWUgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSB0aGUgYmFzZSBzdHlsZXMgZm9yIG91ciBJY29uIGJhciBlbGVtZW50LlxuLy9cbkBtaXhpbiBpY29uLWJhci1iYXNlKCkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQtc2l6ZTogMDtcbiAgd2lkdGg6IDEwMCU7XG5cbiAgPiAqIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBmbG9hdDogbGVmdDtcbiAgICBmb250LXNpemU6ICRpY29uLWJhci1mb250LXNpemU7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgcGFkZGluZzogJGljb24tYmFyLWl0ZW0tcGFkZGluZztcbiAgICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gICAgd2lkdGg6IDI1JTtcblxuICAgIGksIGltZyB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogMCBhdXRvO1xuXG4gICAgICAmICsgbGFiZWwge1xuICAgICAgICBtYXJnaW4tdG9wOiAuMDYyNXJlbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogJGljb24tYmFyLWljb24tc2l6ZTtcbiAgICAgIHZlcnRpY2FsLWFsaWduOiBtaWRkbGU7XG4gICAgfVxuXG4gICAgaW1nIHtcbiAgICAgIGhlaWdodDogJGljb24tYmFyLWltYWdlLWhlaWdodDtcbiAgICAgIHdpZHRoOiAkaWNvbi1iYXItaW1hZ2Utd2lkdGg7XG4gICAgfVxuICB9XG5cbiAgJi5sYWJlbC1yaWdodCA+ICoge1xuXG4gICAgaSwgaW1nIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogMCAuMDYyNXJlbSAwIDA7XG5cbiAgICAgICYgKyBsYWJlbCB7XG4gICAgICAgIG1hcmdpbi10b3A6IDA7XG4gICAgICB9XG4gICAgfVxuXG4gICAgbGFiZWwgeyBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7IH1cbiAgfVxuXG4gICYudmVydGljYWwubGFiZWwtcmlnaHQgPiAqIHtcbiAgICB0ZXh0LWFsaWduOiBsZWZ0O1xuICB9XG5cbiAgJi52ZXJ0aWNhbCwgJi5zbWFsbC12ZXJ0aWNhbHtcbiAgICBoZWlnaHQ6IDEwMCU7XG4gICAgd2lkdGg6IGF1dG87XG5cbiAgICAuaXRlbSB7XG4gICAgICBmbG9hdDogbm9uZTtcbiAgICAgIG1hcmdpbjogYXV0bztcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgIH1cbiAgfVxuXG4gICYubWVkaXVtLXZlcnRpY2FsIHtcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogYXV0bztcblxuICAgICAgLml0ZW0ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgJi5sYXJnZS12ZXJ0aWNhbCB7XG4gICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICB3aWR0aDogYXV0bztcblxuICAgICAgLml0ZW0ge1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgbWFyZ2luOiBhdXRvO1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHRoZSBzaXplIHN0eWxlcyBmb3IgaWNvbiBiYXJzLlxuQG1peGluIGljb24tYmFyLXNpemUoXG4gICRwYWRkaW5nOiAkaWNvbi1iYXItaXRlbS1wYWRkaW5nLFxuICAkZm9udC1zaXplOiAkaWNvbi1iYXItZm9udC1zaXplLFxuICAkaWNvbi1zaXplOiAkaWNvbi1iYXItaWNvbi1zaXplLFxuICAkaW1hZ2Utd2lkdGg6ICRpY29uLWJhci1pbWFnZS13aWR0aCxcbiAgJGltYWdlLWhlaWdodDogJGljb24tYmFyLWltYWdlLWhlaWdodCkge1xuXG4gID4gKiB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIHBhZGRpbmc6ICRwYWRkaW5nO1xuXG4gICAgaSwgaW1nIHtcblxuICAgICAgJiArIGxhYmVsIHtcbiAgICAgICAgbWFyZ2luLXRvcDogLjA2MjVyZW07XG4gICAgICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBpIHtcbiAgICAgIGZvbnQtc2l6ZTogJGljb24tc2l6ZTtcbiAgICB9XG5cbiAgICBpbWcge1xuICAgICAgaGVpZ2h0OiAkaW1hZ2UtaGVpZ2h0O1xuICAgICAgd2lkdGg6ICRpbWFnZS13aWR0aDtcbiAgICB9XG4gIH1cblxufVxuXG5AbWl4aW4gaWNvbi1iYXItc3R5bGUoXG4gICRiYXItYmc6JGljb24tYmFyLWJnLFxuICAkYmFyLWZvbnQtY29sb3I6JGljb24tYmFyLWZvbnQtY29sb3IsXG4gICRiYXItZm9udC1jb2xvci1ob3ZlcjokaWNvbi1iYXItZm9udC1jb2xvci1ob3ZlcixcbiAgJGJhci1ob3Zlci1jb2xvcjokaWNvbi1iYXItaG92ZXItY29sb3IsXG4gICRiYXItaWNvbi1jb2xvcjokaWNvbi1iYXItaWNvbi1jb2xvcixcbiAgJGJhci1pY29uLWNvbG9yLWhvdmVyOiRpY29uLWJhci1pY29uLWNvbG9yLWhvdmVyLFxuICAkYmFyLWFjdGl2ZS1jb2xvcjokaWNvbi1iYXItYWN0aXZlLWNvbG9yLFxuICAkYmFzZS1zdHlsZTp0cnVlLFxuICAkZGlzYWJsZWQ6ZmFsc2UpIHtcblxuICBAaWYgJGJhc2Utc3R5bGUge1xuXG4gICAgYmFja2dyb3VuZDogJGJhci1iZztcblxuICAgID4gKiB7XG4gICAgICBsYWJlbCB7IGNvbG9yOiAkYmFyLWZvbnQtY29sb3I7IH1cblxuICAgICAgaSB7IGNvbG9yOiAkYmFyLWljb24tY29sb3I7IH1cbiAgICB9XG5cbiAgICA+IGE6aG92ZXIge1xuXG4gICAgICBiYWNrZ3JvdW5kOiAkYmFyLWhvdmVyLWNvbG9yO1xuXG4gICAgICBsYWJlbCB7IGNvbG9yOiAkYmFyLWZvbnQtY29sb3ItaG92ZXI7IH1cblxuICAgICAgaSB7IGNvbG9yOiAkYmFyLWljb24tY29sb3ItaG92ZXI7IH1cbiAgICB9XG5cbiAgICAgICAgPiBhLmFjdGl2ZSB7XG5cbiAgICAgIGJhY2tncm91bmQ6ICRiYXItYWN0aXZlLWNvbG9yO1xuXG4gICAgICBsYWJlbCB7IGNvbG9yOiAkYmFyLWZvbnQtY29sb3ItaG92ZXI7IH1cblxuICAgICAgaSB7IGNvbG9yOiAkYmFyLWljb24tY29sb3ItaG92ZXI7IH1cbiAgICB9XG4gIH1cbiAgQGlmICRkaXNhYmxlZCB7XG4gICAgLml0ZW0uZGlzYWJsZWQge1xuICAgICAgY3Vyc29yOiAkaWNvbi1iYXItZGlzYWJsZWQtY3Vyc29yO1xuICAgICAgb3BhY2l0eTogJGljb24tYmFyLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgICBwb2ludGVyLWV2ZW50czogbm9uZTtcbiAgICAgID4qIHtcbiAgICAgICAgb3BhY2l0eTogJGljb24tYmFyLWRpc2FibGVkLW9wYWNpdHk7XG4gICAgICAgIGN1cnNvcjogJGljb24tYmFyLWRpc2FibGVkLWN1cnNvcjtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLyBXZSB1c2UgdGhpcyB0byBxdWlja2x5IGNyZWF0ZSBpY29uIGJhcnMgd2l0aCBhIHNpbmdsZSBtaXhpblxuLy8gJGhlaWdodCAtIFRoZSBvdmVyYWxsIGNhbGN1bGF0ZWQgaGVpZ2h0IG9mIHRoZSBpY29uIGJhciAoaG9yaXpvbnRhbClcbi8vICRiYXItYmcgLSB0aGUgYmFja2dyb3VuZCBjb2xvciBvZiB0aGUgYmFyXG4vLyAkYmFyLWZvbnQtY29sb3IgLSB0aGUgZm9udCBjb2xvclxuLy8gJGJhci1ob3Zlci1jb2xvciAtIG9rYXkgdGhlc2UgYXJlIHByZXR0eSBvYnZpb3VzIHZhcmlhYmxlc1xuLy8gJGJhci1pY29uLWNvbG9yIC0gbWF5YmUgd2UgY291bGQgc2tpcCBleHBsYWluaW5nIHRoZW0gYWxsPyBPa2F5IHRoaXMgb25lIGRvZXMgY2hhbmdlIGljb24gY29sb3IgaWYgeW91IHVzZSBhbiBpY29uIGZvbnRcbi8vICRiYXItYWN0aXZlLWNvbG9yIC0gdGhlIGNvbG9yIG9mIGFuIGFjdGl2ZSAvIGhvdmVyIHN0YXRlXG4vLyAkYmFzZS1zdHlsZSAtIEFwcGx5IGJhc2Ugc3R5bGVzPyBEZWZhdWx0OiB0cnVlLlxuLy8gJGRpc2FibGVkIC0gQWxsb3cgZGlzYWJsZWQgaWNvbnM/IERlZmF1bHQ6IGZhbHNlLlxuXG5AbWl4aW4gaWNvbi1iYXIoXG4gICRiYXItYmc6JGljb24tYmFyLWJnLFxuICAkYmFyLWZvbnQtY29sb3I6JGljb24tYmFyLWZvbnQtY29sb3IsXG4gICRiYXItZm9udC1jb2xvci1ob3ZlcjokaWNvbi1iYXItZm9udC1jb2xvci1ob3ZlcixcbiAgJGJhci1ob3Zlci1jb2xvcjokaWNvbi1iYXItaG92ZXItY29sb3IsXG4gICRiYXItaWNvbi1jb2xvcjokaWNvbi1iYXItaWNvbi1jb2xvcixcbiAgJGJhci1pY29uLWNvbG9yLWhvdmVyOiRpY29uLWJhci1pY29uLWNvbG9yLWhvdmVyLFxuICAkYmFyLWFjdGl2ZS1jb2xvcjokaWNvbi1iYXItYWN0aXZlLWNvbG9yLFxuICAkcGFkZGluZzogJGljb24tYmFyLWl0ZW0tcGFkZGluZyxcbiAgJGZvbnQtc2l6ZTogJGljb24tYmFyLWZvbnQtc2l6ZSxcbiAgJGljb24tc2l6ZTogJGljb24tYmFyLWljb24tc2l6ZSxcbiAgJGltYWdlLXdpZHRoOiAkaWNvbi1iYXItaW1hZ2Utd2lkdGgsXG4gICRpbWFnZS1oZWlnaHQ6ICRpY29uLWJhci1pbWFnZS1oZWlnaHQsXG4gICRiYXNlLXN0eWxlOnRydWUsXG4gICRkaXNhYmxlZDp0cnVlKSB7XG4gICAgQGluY2x1ZGUgaWNvbi1iYXItYmFzZSgpO1xuICAgIEBpbmNsdWRlIGljb24tYmFyLXNpemUoJHBhZGRpbmcsICRmb250LXNpemUsICRpY29uLXNpemUsICRpbWFnZS13aWR0aCwgJGltYWdlLWhlaWdodCk7XG4gICAgQGluY2x1ZGUgaWNvbi1iYXItc3R5bGUoJGJhci1iZywgJGJhci1mb250LWNvbG9yLCAkYmFyLWZvbnQtY29sb3ItaG92ZXIsICRiYXItaG92ZXItY29sb3IsICRiYXItaWNvbi1jb2xvciwgJGJhci1pY29uLWNvbG9yLWhvdmVyLCAkYmFyLWFjdGl2ZS1jb2xvciwgJGJhc2Utc3R5bGUsICRkaXNhYmxlZCk7XG5cbiAgLy8gQ291bnRzXG5cbiAgJi50d28tdXAge1xuICAgIC5pdGVtIHsgd2lkdGg6IDUwJTsgfVxuICAgICYudmVydGljYWwgLml0ZW0sICYuc21hbGwtdmVydGljYWwgLml0ZW0geyB3aWR0aDogYXV0bzsgfVxuICAgICYubWVkaXVtLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgICYubGFyZ2UtdmVydGljYWwgLml0ZW0ge1xuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnRocmVlLXVwIHtcbiAgICAuaXRlbSB7IHdpZHRoOiAzMy4zMzMzJTsgfVxuICAgICYudmVydGljYWwgLml0ZW0sICYuc21hbGwtdmVydGljYWwgLml0ZW0geyB3aWR0aDogYXV0bzsgfVxuICAgICYubWVkaXVtLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgICYubGFyZ2UtdmVydGljYWwgLml0ZW0ge1xuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmZvdXItdXAge1xuICAgIC5pdGVtIHsgd2lkdGg6IDI1JTsgfVxuICAgICYudmVydGljYWwgLml0ZW0sICYuc21hbGwtdmVydGljYWwgLml0ZW0geyB3aWR0aDogYXV0bzsgfVxuICAgICYubWVkaXVtLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgICYubGFyZ2UtdmVydGljYWwgLml0ZW0ge1xuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLmZpdmUtdXAge1xuICAgIC5pdGVtIHsgd2lkdGg6IDIwJTsgfVxuICAgICYudmVydGljYWwgLml0ZW0sICYuc21hbGwtdmVydGljYWwgLml0ZW0geyB3aWR0aDogYXV0bzsgfVxuICAgICYubWVkaXVtLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgICYubGFyZ2UtdmVydGljYWwgLml0ZW0ge1xuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICAmLnNpeC11cCB7XG4gICAgLml0ZW0geyB3aWR0aDogMTYuNjY2NjclOyB9XG4gICAgJi52ZXJ0aWNhbCAuaXRlbSwgJi5zbWFsbC12ZXJ0aWNhbCAuaXRlbSB7IHdpZHRoOiBhdXRvOyB9XG4gICAgJi5tZWRpdW0tdmVydGljYWwgLml0ZW0ge1xuICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gICAgJi5sYXJnZS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuc2V2ZW4tdXAge1xuICAgIC5pdGVtIHsgd2lkdGg6IDE0LjI4NTcxJTsgfVxuICAgICYudmVydGljYWwgLml0ZW0sICYuc21hbGwtdmVydGljYWwgLml0ZW0geyB3aWR0aDogYXV0bzsgfVxuICAgICYubWVkaXVtLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgfVxuICAgIH1cbiAgICAmLmxhcmdlLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICB9XG4gICYuZWlnaHQtdXAge1xuICAgIC5pdGVtIHsgd2lkdGg6IDEyLjUlOyB9XG4gICAgJi52ZXJ0aWNhbCAuaXRlbSwgJi5zbWFsbC12ZXJ0aWNhbCAuaXRlbSB7IHdpZHRoOiBhdXRvOyB9XG4gICAgJi5tZWRpdW0tdmVydGljYWwgLml0ZW0ge1xuICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICB9XG4gICAgfVxuICAgICYubGFyZ2UtdmVydGljYWwgLml0ZW0ge1xuICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImljb24tYmFyXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtaWNvbi1iYXItY2xhc3NlcyB7XG4gICAgLmljb24tYmFyIHtcbiAgICAgIEBpbmNsdWRlIGljb24tYmFyO1xuICAgIH1cbiAgfVxufVxuXG5AaWYgJGluY2x1ZGUtaHRtbC1pY29uLWJhci1jbGFzc2VzIHtcblxuICAvLyB0b29sYmFyIHN0eWxlc1xuXG4gIC5pY29uLWJhciB7XG5cbiAgICAvLyBDb3VudHNcblxuICAgICYudHdvLXVwIHtcbiAgICAgIC5pdGVtIHsgd2lkdGg6IDUwJTsgfVxuICAgICAgJi52ZXJ0aWNhbCAuaXRlbSwgJi5zbWFsbC12ZXJ0aWNhbCAuaXRlbSB7IHdpZHRoOiBhdXRvOyB9XG4gICAgICAmLm1lZGl1bS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5sYXJnZS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYudGhyZWUtdXAge1xuICAgICAgLml0ZW0geyB3aWR0aDogMzMuMzMzMyU7IH1cbiAgICAgICYudmVydGljYWwgLml0ZW0sICYuc21hbGwtdmVydGljYWwgLml0ZW0geyB3aWR0aDogYXV0bzsgfVxuICAgICAgJi5tZWRpdW0tdmVydGljYWwgLml0ZW0ge1xuICAgICAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgICYubGFyZ2UtdmVydGljYWwgLml0ZW0ge1xuICAgICAgICBAbWVkaWEgI3skbGFyZ2UtdXB9IHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmZvdXItdXAge1xuICAgICAgLml0ZW0geyB3aWR0aDogMjUlOyB9XG4gICAgICAmLnZlcnRpY2FsIC5pdGVtLCAmLnNtYWxsLXZlcnRpY2FsIC5pdGVtIHsgd2lkdGg6IGF1dG87IH1cbiAgICAgICYubWVkaXVtLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLmxhcmdlLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgICAgQG1lZGlhICN7JGxhcmdlLXVwfSB7XG4gICAgICAgICAgd2lkdGg6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgJi5maXZlLXVwIHtcbiAgICAgIC5pdGVtIHsgd2lkdGg6IDIwJTsgfVxuICAgICAgJi52ZXJ0aWNhbCAuaXRlbSwgJi5zbWFsbC12ZXJ0aWNhbCAuaXRlbSB7IHdpZHRoOiBhdXRvOyB9XG4gICAgICAmLm1lZGl1bS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5sYXJnZS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuc2l4LXVwIHtcbiAgICAgIC5pdGVtIHsgd2lkdGg6IDE2LjY2NjY3JTsgfVxuICAgICAgJi52ZXJ0aWNhbCAuaXRlbSwgJi5zbWFsbC12ZXJ0aWNhbCAuaXRlbSB7IHdpZHRoOiBhdXRvOyB9XG4gICAgICAmLm1lZGl1bS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5sYXJnZS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgICYuc2V2ZW4tdXAge1xuICAgICAgLml0ZW0geyB3aWR0aDogMTQuMjg1NzElOyB9XG4gICAgICAmLnZlcnRpY2FsIC5pdGVtLCAmLnNtYWxsLXZlcnRpY2FsIC5pdGVtIHsgd2lkdGg6IGF1dG87IH1cbiAgICAgICYubWVkaXVtLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5sYXJnZS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgICAmLmVpZ2h0LXVwIHtcbiAgICAgIC5pdGVtIHsgd2lkdGg6IDEyLjUlOyB9XG4gICAgICAmLnZlcnRpY2FsIC5pdGVtLCAmLnNtYWxsLXZlcnRpY2FsIC5pdGVtIHsgd2lkdGg6IGF1dG87IH1cbiAgICAgICYubWVkaXVtLXZlcnRpY2FsIC5pdGVtIHtcbiAgICAgICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgJi5sYXJnZS12ZXJ0aWNhbCAuaXRlbSB7XG4gICAgICAgIEBtZWRpYSAjeyRsYXJnZS11cH0ge1xuICAgICAgICAgICB3aWR0aDogYXV0bztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWlubGluZS1saXN0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgbWFyZ2lucyBhbmQgcGFkZGluZyBvZiB0aGUgaW5saW5lIGxpc3QuXG4kaW5saW5lLWxpc3QtdG9wLW1hcmdpbjogMCAhZGVmYXVsdDtcbiRpbmxpbmUtbGlzdC1vcHBvc2l0ZS1tYXJnaW46IDAgIWRlZmF1bHQ7XG4kaW5saW5lLWxpc3QtYm90dG9tLW1hcmdpbjogcmVtLWNhbGMoMTcpICFkZWZhdWx0O1xuJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbWFyZ2luOiByZW0tY2FsYygtMjIpICFkZWZhdWx0O1xuJGlubGluZS1saXN0LWRlZmF1bHQtZmxvYXQtbGlzdC1tYXJnaW46IHJlbS1jYWxjKDIyKSAhZGVmYXVsdDtcblxuJGlubGluZS1saXN0LXBhZGRpbmc6IDAgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIG92ZXJmbG93IG9mIHRoZSBpbmxpbmUgbGlzdC5cbiRpbmxpbmUtbGlzdC1vdmVyZmxvdzogaGlkZGVuICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBsaXN0IGl0ZW1zXG4kaW5saW5lLWxpc3QtZGlzcGxheTogYmxvY2sgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYW55IGVsZW1lbnRzIHdpdGhpbiBsaXN0IGl0ZW1zXG4kaW5saW5lLWxpc3QtY2hpbGRyZW4tZGlzcGxheTogYmxvY2sgIWRlZmF1bHQ7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIGlubGluZSBsaXN0c1xuQG1peGluIGlubGluZS1saXN0IHtcbiAgbGlzdC1zdHlsZTogbm9uZTtcbiAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkaW5saW5lLWxpc3QtZGVmYXVsdC1mbG9hdC1tYXJnaW47XG4gIG1hcmdpbi0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkaW5saW5lLWxpc3Qtb3Bwb3NpdGUtbWFyZ2luO1xuICBtYXJnaW46ICRpbmxpbmUtbGlzdC10b3AtbWFyZ2luIGF1dG8gJGlubGluZS1saXN0LWJvdHRvbS1tYXJnaW4gYXV0bztcbiAgb3ZlcmZsb3c6ICRpbmxpbmUtbGlzdC1vdmVyZmxvdztcbiAgcGFkZGluZzogJGlubGluZS1saXN0LXBhZGRpbmc7XG5cbiAgPiBsaSB7XG4gICAgZGlzcGxheTogJGlubGluZS1saXN0LWRpc3BsYXk7XG4gICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkaW5saW5lLWxpc3QtZGVmYXVsdC1mbG9hdC1saXN0LW1hcmdpbjtcbiAgICA+ICogeyBkaXNwbGF5OiAkaW5saW5lLWxpc3QtY2hpbGRyZW4tZGlzcGxheTsgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJpbmxpbmUtbGlzdFwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWlubGluZS1saXN0LWNsYXNzZXMge1xuICAgIC5pbmxpbmUtbGlzdCB7XG4gICAgICBAaW5jbHVkZSBpbmxpbmUtbGlzdCgpO1xuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWpveXJpZGUtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBDb250cm9sbGluZyBkZWZhdWx0IEpveXJpZGUgc3R5bGVzXG4kam95cmlkZS10aXAtYmc6ICRvaWwgIWRlZmF1bHQ7XG4kam95cmlkZS10aXAtZGVmYXVsdC13aWR0aDogMzAwcHggIWRlZmF1bHQ7XG4kam95cmlkZS10aXAtcGFkZGluZzogcmVtLWNhbGMoMTggMjAgMjQpICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLWJvcmRlcjogc29saWQgMXB4ICRjaGFyY29hbCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1yYWRpdXM6IDRweCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1wb3NpdGlvbi1vZmZzZXQ6IDIycHggIWRlZmF1bHQ7XG5cbi8vIEhlcmUsIHdlJ3JlIHNldHRpbmcgdGhlIHRpcCBmb250IHN0eWxlc1xuJGpveXJpZGUtdGlwLWZvbnQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1oZWFkZXItd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8gVGhpcyBjaGFuZ2VzIHRoZSBudWIgc2l6ZVxuJGpveXJpZGUtdGlwLW51Yi1zaXplOiAxMHB4ICFkZWZhdWx0O1xuXG4vLyBUaGlzIGFkanVzdHMgdGhlIHN0eWxlcyBmb3IgdGhlIHRpbWVyIHdoZW4gaXRzIGVuYWJsZWRcbiRqb3lyaWRlLXRpcC10aW1lci13aWR0aDogNTBweCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC10aW1lci1oZWlnaHQ6IDNweCAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC10aW1lci1jb2xvcjogJHN0ZWVsICFkZWZhdWx0O1xuXG4vLyBUaGlzIGNoYW5nZXMgdXAgdGhlIHN0eWxlcyBmb3IgdGhlIGNsb3NlIGJ1dHRvblxuJGpveXJpZGUtdGlwLWNsb3NlLWNvbG9yOiAkbW9uc29vbiAhZGVmYXVsdDtcbiRqb3lyaWRlLXRpcC1jbG9zZS1zaXplOiAyNHB4ICFkZWZhdWx0O1xuJGpveXJpZGUtdGlwLWNsb3NlLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcblxuLy8gV2hlbiBKb3lyaWRlIGlzIGZpbGxpbmcgdGhlIHNjcmVlbiwgd2UgdXNlIHRoaXMgc3R5bGUgZm9yIHRoZSBiZ1xuJGpveXJpZGUtc2NyZWVuZmlsbDogcmdiYSgwLDAsMCwwLjUpICFkZWZhdWx0O1xuXG5cbi8vIFdlIGRlY2lkZWQgbm90IHRvIG1ha2UgYSBtaXhpbiBmb3IgdGhpcyBiZWNhdXNlIGl0IHJlbGllcyBvblxuLy8gcHJlZGVmaW5lZCBjbGFzc2VzIHRvIHdvcmsgcHJvcGVybHkuXG5AaW5jbHVkZSBleHBvcnRzKFwiam95cmlkZVwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLWpveXJpZGUtY2xhc3NlcyB7XG5cbiAgICAvKiBGb3VuZGF0aW9uIEpveXJpZGUgKi9cbiAgICAuam95cmlkZS1saXN0IHsgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgLyogRGVmYXVsdCBzdHlsZXMgZm9yIHRoZSBjb250YWluZXIgKi9cbiAgICAuam95cmlkZS10aXAtZ3VpZGUge1xuICAgICAgYmFja2dyb3VuZDogJGpveXJpZGUtdGlwLWJnO1xuICAgICAgY29sb3I6ICRqb3lyaWRlLXRpcC1mb250LWNvbG9yO1xuICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0O1xuICAgICAgZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWw7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogOTUlO1xuICAgICAgei1pbmRleDogMTAxO1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDIuNSU7XG4gICAgfVxuXG4gICAgLmx0LWllOSAuam95cmlkZS10aXAtZ3VpZGUge1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAtNDAwcHg7XG4gICAgICBtYXgtd2lkdGg6IDgwMHB4O1xuICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDUwJTtcbiAgICB9XG5cbiAgICAuam95cmlkZS1jb250ZW50LXdyYXBwZXIge1xuICAgICAgcGFkZGluZzogJGpveXJpZGUtdGlwLXBhZGRpbmc7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLmJ1dHRvbiB7IG1hcmdpbi1ib3R0b206IDAgIWltcG9ydGFudDsgfVxuXG4gICAgICAuam95cmlkZS1wcmV2LXRpcCB7IG1hcmdpbi1yaWdodDogMTBweDsgfVxuICAgIH1cblxuICAgIC8qIEFkZCBhIGxpdHRsZSBjc3MgdHJpYW5nbGUgcGlwLCBvbGRlciBicm93c2VyIGp1c3QgbWlzcyBvdXQgb24gdGhlIGZhbmNpbmVzcyBvZiBpdCAqL1xuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSB7XG4gICAgICAuam95cmlkZS1udWIge1xuICAgICAgICBib3JkZXI6ICRqb3lyaWRlLXRpcC1udWItc2l6ZSBzb2xpZCAkam95cmlkZS10aXAtYmc7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAkam95cmlkZS10aXAtcG9zaXRpb24tb2Zmc2V0O1xuXG4gICAgICAgICYudG9wIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRqb3lyaWRlLXRpcC1iZztcbiAgICAgICAgICBib3JkZXItdG9wLWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci10b3Atc3R5bGU6IHNvbGlkO1xuICAgICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICB0b3A6IC0oJGpveXJpZGUtdGlwLW51Yi1zaXplKjIpO1xuICAgICAgICB9XG4gICAgICAgICYuYm90dG9tIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6ICRqb3lyaWRlLXRpcC1iZyAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgYm9yZGVyLWJvdHRvbS1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259LWNvbG9yOiB0cmFuc3BhcmVudCAhaW1wb3J0YW50O1xuICAgICAgICAgIGJvdHRvbTogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7XG4gICAgICAgIH1cblxuICAgICAgICAmLnJpZ2h0IHsgcmlnaHQ6IC0oJGpveXJpZGUtdGlwLW51Yi1zaXplKjIpOyB9XG4gICAgICAgICYubGVmdCB7IGxlZnQ6IC0oJGpveXJpZGUtdGlwLW51Yi1zaXplKjIpOyB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogVHlwb2dyYXBoeSAqL1xuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSBoMSxcbiAgICAuam95cmlkZS10aXAtZ3VpZGUgaDIsXG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIGgzLFxuICAgIC5qb3lyaWRlLXRpcC1ndWlkZSBoNCxcbiAgICAuam95cmlkZS10aXAtZ3VpZGUgaDUsXG4gICAgLmpveXJpZGUtdGlwLWd1aWRlIGg2IHtcbiAgICAgIGNvbG9yOiAkam95cmlkZS10aXAtZm9udC1jb2xvcjtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkam95cmlkZS10aXAtaGVhZGVyLXdlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAxLjI1O1xuICAgICAgbWFyZ2luOiAwO1xuICAgIH1cbiAgICAuam95cmlkZS10aXAtZ3VpZGUgcCB7XG4gICAgICBmb250LXNpemU6ICRqb3lyaWRlLXRpcC1mb250LXNpemU7XG4gICAgICBsaW5lLWhlaWdodDogMS4zO1xuICAgICAgbWFyZ2luOiByZW0tY2FsYygwIDAgMTggMCk7XG4gICAgfVxuXG4gICAgLmpveXJpZGUtdGltZXItaW5kaWNhdG9yLXdyYXAge1xuICAgICAgYm9yZGVyOiAkam95cmlkZS10aXAtYm9yZGVyO1xuICAgICAgYm90dG9tOiByZW0tY2FsYygxNik7XG4gICAgICBoZWlnaHQ6ICRqb3lyaWRlLXRpcC10aW1lci1oZWlnaHQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB3aWR0aDogJGpveXJpZGUtdGlwLXRpbWVyLXdpZHRoO1xuICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogcmVtLWNhbGMoMTcpO1xuICAgIH1cbiAgICAuam95cmlkZS10aW1lci1pbmRpY2F0b3Ige1xuICAgICAgYmFja2dyb3VuZDogJGpveXJpZGUtdGlwLXRpbWVyLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBoZWlnaHQ6IGluaGVyaXQ7XG4gICAgICB3aWR0aDogMDtcbiAgICB9XG5cbiAgICAuam95cmlkZS1jbG9zZS10aXAge1xuICAgICAgY29sb3I6ICRqb3lyaWRlLXRpcC1jbG9zZS1jb2xvciAhaW1wb3J0YW50O1xuICAgICAgZm9udC1zaXplOiAkam95cmlkZS10aXAtY2xvc2Utc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkam95cmlkZS10aXAtY2xvc2Utd2VpZ2h0O1xuICAgICAgbGluZS1oZWlnaHQ6IC41ICFpbXBvcnRhbnQ7XG4gICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICB0ZXh0LWRlY29yYXRpb246IG5vbmU7XG4gICAgICB0b3A6IDEwcHg7XG4gICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMnB4O1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7IGNvbG9yOiAkc21va2UgIWltcG9ydGFudDsgfVxuICAgIH1cblxuICAgIC5qb3lyaWRlLW1vZGFsLWJnIHtcbiAgICAgIGJhY2tncm91bmQ6ICRqb3lyaWRlLXNjcmVlbmZpbGw7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBoZWlnaHQ6IDEwMCU7XG4gICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICB0b3A6IDA7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIHotaW5kZXg6IDEwMDtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuICAgIH1cblxuICAgIC5qb3lyaWRlLWV4cG9zZS13cmFwcGVyIHtcbiAgICAgIGJhY2tncm91bmQtY29sb3I6ICR3aGl0ZTtcbiAgICAgIGJvcmRlci1yYWRpdXM6IDNweDtcbiAgICAgIGJveC1zaGFkb3c6IDAgMCAxNXB4ICR3aGl0ZTtcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHotaW5kZXg6IDEwMjtcbiAgICB9XG5cbiAgICAuam95cmlkZS1leHBvc2UtY292ZXIge1xuICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgICBib3JkZXItcmFkaXVzOiAzcHg7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgdG9wOiAwO1xuICAgICAgei1pbmRleDogOTk5OTtcbiAgICB9XG5cblxuICAgIC8qIFN0eWxlcyBmb3Igc2NyZWVucyB0aGF0IGFyZSBhdCBsZWFzdCA3NjhweDsgKi9cbiAgICBAbWVkaWEgI3skc21hbGx9IHtcbiAgICAgIC5qb3lyaWRlLXRpcC1ndWlkZSB7IHdpZHRoOiAkam95cmlkZS10aXAtZGVmYXVsdC13aWR0aDsgI3skZGVmYXVsdC1mbG9hdH06IGluaGVyaXQ7XG4gICAgICAgIC5qb3lyaWRlLW51YiB7XG4gICAgICAgICAgJi5ib3R0b20ge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkam95cmlkZS10aXAtYmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvdHRvbTogLSgkam95cmlkZS10aXAtbnViLXNpemUqMik7XG4gICAgICAgICAgfVxuICAgICAgICAgICYucmlnaHQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkam95cmlkZS10aXAtYmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1yaWdodC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDsgYm9yZGVyLWJvdHRvbS1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICAgcmlnaHQ6IC0oJGpveXJpZGUtdGlwLW51Yi1zaXplKjIpO1xuICAgICAgICAgICAgdG9wOiAkam95cmlkZS10aXAtcG9zaXRpb24tb2Zmc2V0O1xuICAgICAgICAgIH1cbiAgICAgICAgICAmLmxlZnQge1xuICAgICAgICAgICAgYm9yZGVyLWNvbG9yOiAkam95cmlkZS10aXAtYmcgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci1ib3R0b20tY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1jb2xvcjogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICAgIGJvcmRlci10b3AtY29sb3I6IHRyYW5zcGFyZW50ICFpbXBvcnRhbnQ7XG4gICAgICAgICAgICBsZWZ0OiAtKCRqb3lyaWRlLXRpcC1udWItc2l6ZSoyKTtcbiAgICAgICAgICAgIHJpZ2h0OiBhdXRvO1xuICAgICAgICAgICAgdG9wOiAkam95cmlkZS10aXAtcG9zaXRpb24tb2Zmc2V0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLWxhYmVsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbHNcbiRsYWJlbC1wYWRkaW5nOiByZW0tY2FsYyg0IDggNCkgIWRlZmF1bHQ7XG4kbGFiZWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSBsYWJlbCB0ZXh0XG4kbGFiZWwtZm9udC1zaXppbmc6IHJlbS1jYWxjKDExKSAhZGVmYXVsdDtcbiRsYWJlbC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRsYWJlbC1mb250LWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJGxhYmVsLWZvbnQtY29sb3ItYWx0OiAkd2hpdGUgIWRlZmF1bHQ7XG4kbGFiZWwtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBhIGRlZmF1bHQgbGFiZWwgYmFzZS5cbkBtaXhpbiBsYWJlbC1iYXNlIHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250LWZhbWlseTogJGxhYmVsLWZvbnQtZmFtaWx5O1xuICBmb250LXdlaWdodDogJGxhYmVsLWZvbnQtd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgbWFyZ2luLWJvdHRvbTogYXV0bztcbiAgcG9zaXRpb246IHJlbGF0aXZlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbiAgd2hpdGUtc3BhY2U6IG5vd3JhcDtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBsYWJlbCBzaXplIHN0eWxlcy5cbi8vICRwYWRkaW5nIC0gVXNlZCB0byBkZXRlcm1pbmUgbGFiZWwgcGFkZGluZy4gRGVmYXVsdDogJGxhYmVsLXBhZGRpbmcgfHwgcmVtLWNhbGMoNCA4IDQpICFkZWZhdWx0XG4vLyAkdGV4dC1zaXplIC0gVXNlZCB0byBkZXRlcm1pbmUgbGFiZWwgdGV4dC1zaXplLiBEZWZhdWx0OiAkdGV4dC1zaXplIGZvdW5kIGluIHNldHRpbmdzXG5AbWl4aW4gbGFiZWwtc2l6ZSgkcGFkZGluZzokbGFiZWwtcGFkZGluZywgJHRleHQtc2l6ZTokbGFiZWwtZm9udC1zaXppbmcpIHtcbiAgQGlmICRwYWRkaW5nIHsgcGFkZGluZzogJHBhZGRpbmc7IH1cbiAgQGlmICR0ZXh0LXNpemUgeyBmb250LXNpemU6ICR0ZXh0LXNpemU7IH1cbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGFkZCBsYWJlbCBzdHlsZXMuXG4vLyAkYmcgLSBEZWZhdWx0OiAkcHJpbWFyeS1jb2xvciAoZm91bmQgaW4gc2V0dGluZ3MgZmlsZSlcbi8vICRyYWRpdXMgLSBEZWZhdWx0OiBmYWxzZSwgT3B0aW9uczogdHJ1ZSwgc2V0cyByYWRpdXMgdG8gJGdsb2JhbC1yYWRpdXMgKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gbGFiZWwtc3R5bGUoJGJnOiRwcmltYXJ5LWNvbG9yLCAkcmFkaXVzOmZhbHNlKSB7XG5cbiAgLy8gV2UgY29udHJvbCB3aGljaCBiYWNrZ3JvdW5kIGNvbG9yIGNvbWVzIHRocm91Z2hcbiAgQGlmICRiZyB7XG5cbiAgICAvLyBUaGlzIGZpbmQgdGhlIGxpZ2h0bmVzcyBwZXJjZW50YWdlIG9mIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuXG4gICAgYmFja2dyb3VuZC1jb2xvcjogJGJnO1xuXG4gICAgLy8gV2UgY29udHJvbCB0aGUgdGV4dCBjb2xvciBmb3IgeW91IGJhc2VkIG9uIHRoZSBiYWNrZ3JvdW5kIGNvbG9yLlxuICAgIEBpZiAkYmctbGlnaHRuZXNzIDwgNzAlIHsgY29sb3I6ICRsYWJlbC1mb250LWNvbG9yLWFsdDsgfVxuICAgIEBlbHNlIHsgY29sb3I6ICRsYWJlbC1mb250LWNvbG9yOyB9XG4gIH1cblxuICAvLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSByYWRpdXMgb24gbGFiZWxzLlxuICBAaWYgJHJhZGl1cyA9PSB0cnVlIHsgQGluY2x1ZGUgcmFkaXVzKCRsYWJlbC1yYWRpdXMpOyB9XG4gIEBlbHNlIGlmICRyYWRpdXMgeyBAaW5jbHVkZSByYWRpdXMoJHJhZGl1cyk7IH1cblxufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gYWRkIGNsb3NlIGJ1dHRvbnMgdG8gYWxlcnRzXG4vLyAkcGFkZGluZyAtIERlZmF1bHQ6ICRsYWJlbC1wYWRkaW5nLFxuLy8gJHRleHQtc2l6ZSAtIERlZmF1bHQ6ICRsYWJlbC1mb250LXNpemluZyxcbi8vICRiZyAtIERlZmF1bHQ6ICRwcmltYXJ5LWNvbG9yKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG4vLyAkcmFkaXVzIC0gRGVmYXVsdDogZmFsc2UsIE9wdGlvbnM6IHRydWUgd2hpY2ggc2V0cyByYWRpdXMgdG8gJGdsb2JhbC1yYWRpdXMgKGZvdW5kIGluIHNldHRpbmdzIGZpbGUpXG5AbWl4aW4gbGFiZWwoJHBhZGRpbmc6JGxhYmVsLXBhZGRpbmcsICR0ZXh0LXNpemU6JGxhYmVsLWZvbnQtc2l6aW5nLCAkYmc6JHByaW1hcnktY29sb3IsICRyYWRpdXM6ZmFsc2UpIHtcblxuICBAaW5jbHVkZSBsYWJlbC1iYXNlO1xuICBAaW5jbHVkZSBsYWJlbC1zaXplKCRwYWRkaW5nLCAkdGV4dC1zaXplKTtcbiAgQGluY2x1ZGUgbGFiZWwtc3R5bGUoJGJnLCAkcmFkaXVzKTtcbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcImxhYmVsXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbGFiZWwtY2xhc3NlcyB7XG4gICAgLmxhYmVsIHtcbiAgICAgIEBpbmNsdWRlIGxhYmVsLWJhc2U7XG4gICAgICBAaW5jbHVkZSBsYWJlbC1zaXplO1xuICAgICAgQGluY2x1ZGUgbGFiZWwtc3R5bGU7XG5cbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoZmFsc2UsIHRydWUpOyB9XG4gICAgICAmLnJvdW5kIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoZmFsc2UsICRyYWRpdXM6MTAwMHB4KTsgfVxuXG4gICAgICAmLmFsZXJ0ICAgICB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRhbGVydC1jb2xvcik7IH1cbiAgICAgICYud2FybmluZyAgIHsgQGluY2x1ZGUgbGFiZWwtc3R5bGUoJHdhcm5pbmctY29sb3IpOyB9XG4gICAgICAmLnN1Y2Nlc3MgICB7IEBpbmNsdWRlIGxhYmVsLXN0eWxlKCRzdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgJi5zZWNvbmRhcnkgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAgICAgJi5pbmZvICAgICAgeyBAaW5jbHVkZSBsYWJlbC1zdHlsZSgkaW5mby1jb2xvcik7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1tYWdlbGxhbi1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbiRtYWdlbGxhbi1iZzogJHdoaXRlICFkZWZhdWx0O1xuJG1hZ2VsbGFuLXBhZGRpbmc6IDEwcHggIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJtYWdlbGxhblwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW1hZ2VsbGFuLWNsYXNzZXMge1xuXG4gICAgI3tkYXRhKCdtYWdlbGxhbi1leHBlZGl0aW9uJyl9LCAje2RhdGEoJ21hZ2VsbGFuLWV4cGVkaXRpb24tY2xvbmUnKX0ge1xuICAgICAgYmFja2dyb3VuZDogJG1hZ2VsbGFuLWJnO1xuICAgICAgbWluLXdpZHRoOiAxMDAlO1xuICAgICAgcGFkZGluZzogJG1hZ2VsbGFuLXBhZGRpbmc7XG4gICAgICB6LWluZGV4OiA1MDtcblxuICAgICAgLnN1Yi1uYXYge1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBkZCB7IG1hcmdpbi1ib3R0b206IDA7IH1cbiAgICAgICAgYSB7XG4gICAgICAgICAgbGluZS1oZWlnaHQ6IDEuOGVtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbiRpbmNsdWRlLWh0bWwtdHlwZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBmb250IHN0eWxlc1xuJGhlYWRlci1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kaGVhZGVyLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJGhlYWRlci1mb250LXN0eWxlOiBub3JtYWwgIWRlZmF1bHQ7XG4kaGVhZGVyLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XG4kaGVhZGVyLWxpbmUtaGVpZ2h0OiAxLjQgIWRlZmF1bHQ7XG4kaGVhZGVyLXRvcC1tYXJnaW46IC4ycmVtICFkZWZhdWx0O1xuJGhlYWRlci1ib3R0b20tbWFyZ2luOiAuNXJlbSAhZGVmYXVsdDtcbiRoZWFkZXItdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgaGVhZGVyIGZvbnQgc2l6ZXNcbiRoMS1mb250LXNpemU6IHJlbS1jYWxjKDQ0KSAhZGVmYXVsdDtcbiRoMi1mb250LXNpemU6IHJlbS1jYWxjKDM3KSAhZGVmYXVsdDtcbiRoMy1mb250LXNpemU6IHJlbS1jYWxjKDI3KSAhZGVmYXVsdDtcbiRoNC1mb250LXNpemU6IHJlbS1jYWxjKDIzKSAhZGVmYXVsdDtcbiRoNS1mb250LXNpemU6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcbiRoNi1mb250LXNpemU6IDFyZW0gIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGhlYWRlciBzaXplIHJlZHVjdGlvbiBvbiBzbWFsbCBzY3JlZW5zXG4kaDEtZm9udC1yZWR1Y3Rpb246IHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcbiRoMi1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuJGgzLWZvbnQtcmVkdWN0aW9uOiByZW0tY2FsYyg1KSAhZGVmYXVsdDtcbiRoNC1mb250LXJlZHVjdGlvbjogcmVtLWNhbGMoNSkgIWRlZmF1bHQ7XG4kaDUtZm9udC1yZWR1Y3Rpb246IDAgIWRlZmF1bHQ7XG4kaDYtZm9udC1yZWR1Y3Rpb246IDAgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgaG93IHN1YmhlYWRlcnMgYXJlIHN0eWxlZC5cbiRzdWJoZWFkZXItbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRzdWJoZWFkZXItZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpICFkZWZhdWx0O1xuJHN1YmhlYWRlci1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRzdWJoZWFkZXItdG9wLW1hcmdpbjogLjJyZW0gIWRlZmF1bHQ7XG4kc3ViaGVhZGVyLWJvdHRvbS1tYXJnaW46IC41cmVtICFkZWZhdWx0O1xuXG4vLyBBIGdlbmVyYWwgPHNtYWxsPiBzdHlsaW5nXG4kc21hbGwtZm9udC1zaXplOiA2MCUgIWRlZmF1bHQ7XG4kc21hbGwtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAzNSUpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgcGFyYWdyYXBoc1xuJHBhcmFncmFwaC1mb250LWZhbWlseTogaW5oZXJpdCAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWZvbnQtc2l6ZTogMXJlbSAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtbGluZS1oZWlnaHQ6IDEuNiAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ6IDEuMzUgIWRlZmF1bHQ7XG4kcGFyYWdyYXBoLWFzaWRlLWZvbnQtc3R5bGU6IGl0YWxpYyAhZGVmYXVsdDtcbiRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc6IG9wdGltaXplTGVnaWJpbGl0eSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIDxjb2RlPiB0YWdzXG4kY29kZS1jb2xvcjogJG9pbCAhZGVmYXVsdDtcbiRjb2RlLWZvbnQtZmFtaWx5OiAkZm9udC1mYW1pbHktbW9ub3NwYWNlICFkZWZhdWx0O1xuJGNvZGUtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kY29kZS1iYWNrZ3JvdW5kLWNvbG9yOiBzY2FsZS1jb2xvcigkc2Vjb25kYXJ5LWNvbG9yLCAkbGlnaHRuZXNzOiA3MCUpICFkZWZhdWx0O1xuJGNvZGUtYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRjb2RlLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kY29kZS1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRjb2RlLWJhY2tncm91bmQtY29sb3IsICRsaWdodG5lc3M6IC0xMCUpICFkZWZhdWx0O1xuJGNvZGUtcGFkZGluZzogcmVtLWNhbGMoMikgcmVtLWNhbGMoNSkgcmVtLWNhbGMoMSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSBhbmNob3JzXG4kYW5jaG9yLXRleHQtZGVjb3JhdGlvbjogbm9uZSAhZGVmYXVsdDtcbiRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyOiBub25lICFkZWZhdWx0O1xuJGFuY2hvci1mb250LWNvbG9yOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRhbmNob3ItZm9udC1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGFuY2hvci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMTQlKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIHRoZSA8aHI+IGVsZW1lbnRcbiRoci1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRoci1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJGhyLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcbiRoci1tYXJnaW46IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHN0eWxlIGxpc3RzXG4kbGlzdC1mb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseSAhZGVmYXVsdDtcbiRsaXN0LWZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemUgIWRlZmF1bHQ7XG4kbGlzdC1saW5lLWhlaWdodDogJHBhcmFncmFwaC1saW5lLWhlaWdodCAhZGVmYXVsdDtcbiRsaXN0LW1hcmdpbi1ib3R0b206ICRwYXJhZ3JhcGgtbWFyZ2luLWJvdHRvbSAhZGVmYXVsdDtcbiRsaXN0LXN0eWxlLXBvc2l0aW9uOiBvdXRzaWRlICFkZWZhdWx0O1xuJGxpc3Qtc2lkZS1tYXJnaW46IDEuMXJlbSAhZGVmYXVsdDtcbiRsaXN0LW9yZGVyZWQtc2lkZS1tYXJnaW46IDEuNHJlbSAhZGVmYXVsdDtcbiRsaXN0LXNpZGUtbWFyZ2luLW5vLWJ1bGxldDogMCAhZGVmYXVsdDtcbiRsaXN0LW5lc3RlZC1tYXJnaW46IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcbiRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kZGVmaW5pdGlvbi1saXN0LWhlYWRlci1tYXJnaW4tYm90dG9tOiAuM3JlbSAhZGVmYXVsdDtcbiRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc3R5bGUgYmxvY2txdW90ZXNcbiRibG9ja3F1b3RlLWZvbnQtY29sb3I6IHNjYWxlLWNvbG9yKCRoZWFkZXItZm9udC1jb2xvciwgJGxpZ2h0bmVzczogMzUlKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLXBhZGRpbmc6IHJlbS1jYWxjKDkgMjAgMCAxOSkgIWRlZmF1bHQ7XG4kYmxvY2txdW90ZS1ib3JkZXI6IDFweCBzb2xpZCAkZ2FpbnNib3JvICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtY2l0ZS1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcbiRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjogc2NhbGUtY29sb3IoJGhlYWRlci1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAyMyUpICFkZWZhdWx0O1xuJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIEFjcm9ueW0gc3R5bGVzXG4kYWNyb255bS11bmRlcmxpbmU6IDFweCBkb3R0ZWQgJGdhaW5zYm9ybyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgcGFkZGluZyBhbmQgbWFyZ2luXG4kbWljcm9mb3JtYXQtcGFkZGluZzogcmVtLWNhbGMoMTAgMTIpICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDIwIDApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYm9yZGVyIHN0eWxlc1xuJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aDogMXB4ICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kbWljcm9mb3JtYXQtYm9yZGVyLWNvbG9yOiAkZ2FpbnNib3JvICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBmdWxsIG5hbWUgZm9udCBzdHlsZXNcbiRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplOiByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgdGhlIHN1bW1hcnkgZm9udCBzdHlsZXNcbiRtaWNyb2Zvcm1hdC1zdW1tYXJ5LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBhYmJyIHBhZGRpbmdcbiRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc6IHJlbS1jYWxjKDAgMSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGlzIHRvIGNvbnRyb2wgYWJiciBmb250IHN0eWxlc1xuJG1pY3JvZm9ybWF0LWFiYnItZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJG1pY3JvZm9ybWF0LWFiYnItZm9udC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuXG4vLyBUZXh0IGFsaWdubWVudCBjbGFzcyBuYW1lc1xuJGFsaWduLWNsYXNzLW5hbWVzOlxuICBzbWFsbC1vbmx5LFxuICBzbWFsbCxcbiAgbWVkaXVtLW9ubHksXG4gIG1lZGl1bSxcbiAgbGFyZ2Utb25seSxcbiAgbGFyZ2UsXG4gIHhsYXJnZS1vbmx5LFxuICB4bGFyZ2UsXG4gIHh4bGFyZ2Utb25seSxcbiAgeHhsYXJnZTtcblxuLy8gVGV4dCBhbGlnbm1lbnQgYnJlYWtwb2ludHNcbiRhbGlnbi1jbGFzcy1icmVha3BvaW50czpcbiAgJHNtYWxsLW9ubHksXG4gICRzbWFsbC11cCxcbiAgJG1lZGl1bS1vbmx5LFxuICAkbWVkaXVtLXVwLFxuICAkbGFyZ2Utb25seSxcbiAgJGxhcmdlLXVwLFxuICAkeGxhcmdlLW9ubHksXG4gICR4bGFyZ2UtdXAsXG4gICR4eGxhcmdlLW9ubHksXG4gICR4eGxhcmdlLXVwO1xuXG4vLyBHZW5lcmF0ZXMgdGV4dCBhbGlnbiBhbmQganVzdGlmeSBjbGFzc2VzXG5AbWl4aW4gYWxpZ24tY2xhc3Nlc3tcbiAgLnRleHQtbGVmdCAgICB7IHRleHQtYWxpZ246IGxlZnQgIWltcG9ydGFudDsgfVxuICAudGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAudGV4dC1jZW50ZXIgIHsgdGV4dC1hbGlnbjogY2VudGVyICFpbXBvcnRhbnQ7IH1cbiAgLnRleHQtanVzdGlmeSB7IHRleHQtYWxpZ246IGp1c3RpZnkgIWltcG9ydGFudDsgfVxuXG4gIEBmb3IgJGkgZnJvbSAxIHRocm91Z2ggbGVuZ3RoKCRhbGlnbi1jbGFzcy1uYW1lcykge1xuICAgIEBtZWRpYSAjeyhudGgoJGFsaWduLWNsYXNzLWJyZWFrcG9pbnRzLCAkaSkpfSB7XG4gICAgICAuI3sobnRoKCRhbGlnbi1jbGFzcy1uYW1lcywgJGkpKX0tdGV4dC1sZWZ0IHsgdGV4dC1hbGlnbjogbGVmdCAhaW1wb3J0YW50OyB9XG4gICAgICAuI3sobnRoKCRhbGlnbi1jbGFzcy1uYW1lcywgJGkpKX0tdGV4dC1yaWdodCAgIHsgdGV4dC1hbGlnbjogcmlnaHQgIWltcG9ydGFudDsgfVxuICAgICAgLiN7KG50aCgkYWxpZ24tY2xhc3MtbmFtZXMsICRpKSl9LXRleHQtY2VudGVyICB7IHRleHQtYWxpZ246IGNlbnRlciAhaW1wb3J0YW50OyB9XG4gICAgICAuI3sobnRoKCRhbGlnbi1jbGFzcy1uYW1lcywgJGkpKX0tdGV4dC1qdXN0aWZ5IHsgdGV4dC1hbGlnbjoganVzdGlmeSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG59XG5cbi8vXG4vLyBUeXBvZ3JhcGh5IFBsYWNlaG9sZGVyc1xuLy9cblxuLy8gVGhlc2Ugd2lsbCB0aHJvdyBhIGRlcHJlY2F0aW9uIHdhcm5pbmcgaWYgdXNlZCB3aXRoaW4gYSBtZWRpYSBxdWVyeS5cbkBtaXhpbiBsZWFkIHtcbiAgZm9udC1zaXplOiAkcGFyYWdyYXBoLWZvbnQtc2l6ZSArIHJlbS1jYWxjKDMuNSk7XG4gIGxpbmUtaGVpZ2h0OiAxLjY7XG59XG5cbkBtaXhpbiBzdWJoZWFkZXIge1xuICBsaW5lLWhlaWdodDogJHN1YmhlYWRlci1saW5lLWhlaWdodDtcbiAgY29sb3I6ICRzdWJoZWFkZXItZm9udC1jb2xvcjtcbiAgZm9udC13ZWlnaHQ6ICRzdWJoZWFkZXItZm9udC13ZWlnaHQ7XG4gIG1hcmdpbi10b3A6ICRzdWJoZWFkZXItdG9wLW1hcmdpbjtcbiAgbWFyZ2luLWJvdHRvbTogJHN1YmhlYWRlci1ib3R0b20tbWFyZ2luO1xufVxuQGluY2x1ZGUgZXhwb3J0cyhcInR5cGVcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC10eXBlLWNsYXNzZXMge1xuICAgIC8vIFJlc3BvbnNpdmUgVGV4dCBhbGlnbm1lbnRcbiAgICBAaW5jbHVkZSBhbGlnbi1jbGFzc2VzO1xuXG4gICAgLyogVHlwb2dyYXBoeSByZXNldHMgKi9cbiAgICBkaXYsXG4gICAgZGwsXG4gICAgZHQsXG4gICAgZGQsXG4gICAgdWwsXG4gICAgb2wsXG4gICAgbGksXG4gICAgaDEsXG4gICAgaDIsXG4gICAgaDMsXG4gICAgaDQsXG4gICAgaDUsXG4gICAgaDYsXG4gICAgcHJlLFxuICAgIGZvcm0sXG4gICAgcCxcbiAgICBibG9ja3F1b3RlLFxuICAgIHRoLFxuICAgIHRkIHtcbiAgICAgIG1hcmdpbjowO1xuICAgICAgcGFkZGluZzowO1xuICAgIH1cblxuICAgIC8qIERlZmF1bHQgTGluayBTdHlsZXMgKi9cbiAgICBhIHtcbiAgICAgIGNvbG9yOiAkYW5jaG9yLWZvbnQtY29sb3I7XG4gICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgIHRleHQtZGVjb3JhdGlvbjogJGFuY2hvci10ZXh0LWRlY29yYXRpb247XG5cbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgY29sb3I6ICRhbmNob3ItZm9udC1jb2xvci1ob3ZlcjtcbiAgICAgICAgQGlmICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyICE9ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uIHtcbiAgICAgICAgXHR0ZXh0LWRlY29yYXRpb246ICRhbmNob3ItdGV4dC1kZWNvcmF0aW9uLWhvdmVyO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIGltZyB7IGJvcmRlcjpub25lOyB9XG4gICAgfVxuXG4gICAgLyogRGVmYXVsdCBwYXJhZ3JhcGggc3R5bGVzICovXG4gICAgcCB7XG4gICAgICBmb250LWZhbWlseTogJHBhcmFncmFwaC1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1mb250LXNpemU7XG4gICAgICBmb250LXdlaWdodDogJHBhcmFncmFwaC1mb250LXdlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmUtaGVpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHBhcmFncmFwaC1tYXJnaW4tYm90dG9tO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6ICRwYXJhZ3JhcGgtdGV4dC1yZW5kZXJpbmc7XG5cbiAgICAgICYubGVhZCB7IEBpbmNsdWRlIGxlYWQ7IH1cblxuICAgICAgJiBhc2lkZSB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHBhcmFncmFwaC1hc2lkZS1mb250LXNpemU7XG4gICAgICAgIGZvbnQtc3R5bGU6ICRwYXJhZ3JhcGgtYXNpZGUtZm9udC1zdHlsZTtcbiAgICAgICAgbGluZS1oZWlnaHQ6ICRwYXJhZ3JhcGgtYXNpZGUtbGluZS1oZWlnaHQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogRGVmYXVsdCBoZWFkZXIgc3R5bGVzICovXG4gICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICBjb2xvcjogJGhlYWRlci1mb250LWNvbG9yO1xuICAgICAgZm9udC1mYW1pbHk6ICRoZWFkZXItZm9udC1mYW1pbHk7XG4gICAgICBmb250LXN0eWxlOiAkaGVhZGVyLWZvbnQtc3R5bGU7XG4gICAgICBmb250LXdlaWdodDogJGhlYWRlci1mb250LXdlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkaGVhZGVyLWxpbmUtaGVpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJGhlYWRlci1ib3R0b20tbWFyZ2luO1xuICAgICAgbWFyZ2luLXRvcDogJGhlYWRlci10b3AtbWFyZ2luO1xuICAgICAgdGV4dC1yZW5kZXJpbmc6ICRoZWFkZXItdGV4dC1yZW5kZXJpbmc7XG5cbiAgICAgIHNtYWxsIHtcbiAgICAgICAgY29sb3I6ICRzbWFsbC1mb250LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6ICRzbWFsbC1mb250LXNpemU7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAwO1xuICAgICAgfVxuICAgIH1cblxuICAgIGgxIHsgZm9udC1zaXplOiAkaDEtZm9udC1zaXplIC0gJGgxLWZvbnQtcmVkdWN0aW9uOyB9XG4gICAgaDIgeyBmb250LXNpemU6ICRoMi1mb250LXNpemUgLSAkaDItZm9udC1yZWR1Y3Rpb247IH1cbiAgICBoMyB7IGZvbnQtc2l6ZTogJGgzLWZvbnQtc2l6ZSAtICRoMy1mb250LXJlZHVjdGlvbjsgfVxuICAgIGg0IHsgZm9udC1zaXplOiAkaDQtZm9udC1zaXplIC0gJGg0LWZvbnQtcmVkdWN0aW9uOyB9XG4gICAgaDUgeyBmb250LXNpemU6ICRoNS1mb250LXNpemUgLSAkaDUtZm9udC1yZWR1Y3Rpb247IH1cbiAgICBoNiB7IGZvbnQtc2l6ZTogJGg2LWZvbnQtc2l6ZSAtICRoNi1mb250LXJlZHVjdGlvbjsgfVxuXG4gICAgLnN1YmhlYWRlciB7IEBpbmNsdWRlIHN1YmhlYWRlcjsgfVxuXG4gICAgaHIge1xuICAgICAgYm9yZGVyOiAkaHItYm9yZGVyLXN0eWxlICRoci1ib3JkZXItY29sb3I7XG4gICAgICBib3JkZXItd2lkdGg6ICRoci1ib3JkZXItd2lkdGggMCAwO1xuICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICBoZWlnaHQ6IDA7XG4gICAgICBtYXJnaW46ICRoci1tYXJnaW4gMCAoJGhyLW1hcmdpbiAtIHJlbS1jYWxjKCRoci1ib3JkZXItd2lkdGgpKTtcbiAgICB9XG5cbiAgICAvKiBIZWxwZnVsIFR5cG9ncmFwaHkgRGVmYXVsdHMgKi9cbiAgICBlbSxcbiAgICBpIHtcbiAgICAgIGZvbnQtc3R5bGU6IGl0YWxpYztcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIHN0cm9uZyxcbiAgICBiIHtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZDtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIHNtYWxsIHtcbiAgICAgIGZvbnQtc2l6ZTogJHNtYWxsLWZvbnQtc2l6ZTtcbiAgICAgIGxpbmUtaGVpZ2h0OiBpbmhlcml0O1xuICAgIH1cblxuICAgIGNvZGUge1xuICAgICAgYmFja2dyb3VuZC1jb2xvcjogJGNvZGUtYmFja2dyb3VuZC1jb2xvcjtcbiAgICAgIGJvcmRlci1jb2xvcjogJGNvZGUtYm9yZGVyLWNvbG9yO1xuICAgICAgYm9yZGVyLXN0eWxlOiAkY29kZS1ib3JkZXItc3R5bGU7XG4gICAgICBib3JkZXItd2lkdGg6ICRjb2RlLWJvcmRlci1zaXplO1xuICAgICAgY29sb3I6ICRjb2RlLWNvbG9yO1xuICAgICAgZm9udC1mYW1pbHk6ICRjb2RlLWZvbnQtZmFtaWx5O1xuICAgICAgZm9udC13ZWlnaHQ6ICRjb2RlLWZvbnQtd2VpZ2h0O1xuICAgICAgcGFkZGluZzogJGNvZGUtcGFkZGluZztcbiAgICB9XG5cbiAgICAvKiBMaXN0cyAqL1xuICAgIHVsLFxuICAgIG9sLFxuICAgIGRsIHtcbiAgICAgIGZvbnQtZmFtaWx5OiAkbGlzdC1mb250LWZhbWlseTtcbiAgICAgIGZvbnQtc2l6ZTogJGxpc3QtZm9udC1zaXplO1xuICAgICAgbGluZS1oZWlnaHQ6ICRsaXN0LWxpbmUtaGVpZ2h0O1xuICAgICAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJGxpc3Qtc3R5bGUtcG9zaXRpb247XG4gICAgICBtYXJnaW4tYm90dG9tOiAkbGlzdC1tYXJnaW4tYm90dG9tO1xuICAgIH1cblxuICAgIHVsIHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47XG4gICAgICAmLm5vLWJ1bGxldCB7XG4gICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW4tbm8tYnVsbGV0O1xuICAgICAgICBsaSB7XG4gICAgICAgICAgdWwsXG4gICAgICAgICAgb2wge1xuICAgICAgICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1uZXN0ZWQtbWFyZ2luO1xuICAgICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogVW5vcmRlcmVkIExpc3RzICovXG4gICAgdWwge1xuICAgICAgbGkge1xuICAgICAgICB1bCxcbiAgICAgICAgb2wge1xuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3QtbmVzdGVkLW1hcmdpbjtcbiAgICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAmLnNxdWFyZSxcbiAgICAgICYuY2lyY2xlLFxuICAgICAgJi5kaXNjIHtcbiAgICAgICAgbGkgdWwgeyBsaXN0LXN0eWxlOiBpbmhlcml0OyB9XG4gICAgICB9XG5cbiAgICAgICYuc3F1YXJlIHsgbGlzdC1zdHlsZS10eXBlOiBzcXVhcmU7IG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47fVxuICAgICAgJi5jaXJjbGUgeyBsaXN0LXN0eWxlLXR5cGU6IGNpcmNsZTsgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAkbGlzdC1zaWRlLW1hcmdpbjt9XG4gICAgICAmLmRpc2MgeyBsaXN0LXN0eWxlLXR5cGU6IGRpc2M7IG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtc2lkZS1tYXJnaW47fVxuICAgICAgJi5uby1idWxsZXQgeyBsaXN0LXN0eWxlOiBub25lOyB9XG4gICAgfVxuXG4gICAgLyogT3JkZXJlZCBMaXN0cyAqL1xuICAgIG9sIHtcbiAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogJGxpc3Qtb3JkZXJlZC1zaWRlLW1hcmdpbjtcbiAgICAgIGxpIHtcbiAgICAgICAgdWwsXG4gICAgICAgIG9sIHtcbiAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRsaXN0LW5lc3RlZC1tYXJnaW47XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC8qIERlZmluaXRpb24gTGlzdHMgKi9cbiAgICBkbCB7XG4gICAgICBkdCB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICRkZWZpbml0aW9uLWxpc3QtaGVhZGVyLW1hcmdpbi1ib3R0b207XG4gICAgICAgIGZvbnQtd2VpZ2h0OiAkZGVmaW5pdGlvbi1saXN0LWhlYWRlci13ZWlnaHQ7XG4gICAgICB9XG4gICAgICBkZCB7IG1hcmdpbi1ib3R0b206ICRkZWZpbml0aW9uLWxpc3QtbWFyZ2luLWJvdHRvbTsgfVxuICAgIH1cblxuICAgIC8qIEFiYnJldmlhdGlvbnMgKi9cbiAgICBhYmJyLFxuICAgIGFjcm9ueW0ge1xuICAgICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgICAgIGZvbnQtc2l6ZTogOTAlO1xuICAgICAgY29sb3I6ICRib2R5LWZvbnQtY29sb3I7XG4gICAgICBjdXJzb3I6ICRjdXJzb3ItaGVscC12YWx1ZTtcbiAgICB9XG4gICAgYWJiciB7XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICZbdGl0bGVdIHtcbiAgICAgICAgYm9yZGVyLWJvdHRvbTogJGFjcm9ueW0tdW5kZXJsaW5lO1xuICAgICAgfVxuICAgIH1cblxuICAgIC8qIEJsb2NrcXVvdGVzICovXG4gICAgYmxvY2txdW90ZSB7XG4gICAgICBtYXJnaW46IDAgMCAkcGFyYWdyYXBoLW1hcmdpbi1ib3R0b207XG4gICAgICBwYWRkaW5nOiAkYmxvY2txdW90ZS1wYWRkaW5nO1xuICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9OiAkYmxvY2txdW90ZS1ib3JkZXI7XG5cbiAgICAgIGNpdGUge1xuICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgZm9udC1zaXplOiAkYmxvY2txdW90ZS1jaXRlLWZvbnQtc2l6ZTtcbiAgICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWNpdGUtZm9udC1jb2xvcjtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIGNvbnRlbnQ6IFwiXFwyMDE0IFxcMDAyMFwiO1xuICAgICAgICB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHtcbiAgICAgICAgICBjb2xvcjogJGJsb2NrcXVvdGUtY2l0ZS1saW5rLWNvbG9yO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIGJsb2NrcXVvdGUsXG4gICAgYmxvY2txdW90ZSBwIHtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkcGFyYWdyYXBoLWxpbmUtaGVpZ2h0O1xuICAgICAgY29sb3I6ICRibG9ja3F1b3RlLWZvbnQtY29sb3I7XG4gICAgfVxuXG4gICAgLyogTWljcm9mb3JtYXRzICovXG4gICAgLnZjYXJkIHtcbiAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgIG1hcmdpbjogJG1pY3JvZm9ybWF0LW1hcmdpbjtcbiAgICAgIGJvcmRlcjogJG1pY3JvZm9ybWF0LWJvcmRlci13aWR0aCAkbWljcm9mb3JtYXQtYm9yZGVyLXN0eWxlICRtaWNyb2Zvcm1hdC1ib3JkZXItY29sb3I7XG4gICAgICBwYWRkaW5nOiAkbWljcm9mb3JtYXQtcGFkZGluZztcblxuICAgICAgbGkge1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgfVxuICAgICAgLmZuIHtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRtaWNyb2Zvcm1hdC1mdWxsbmFtZS1mb250LXdlaWdodDtcbiAgICAgICAgZm9udC1zaXplOiAkbWljcm9mb3JtYXQtZnVsbG5hbWUtZm9udC1zaXplO1xuICAgICAgfVxuICAgIH1cblxuICAgIC52ZXZlbnQge1xuICAgICAgLnN1bW1hcnkgeyBmb250LXdlaWdodDogJG1pY3JvZm9ybWF0LXN1bW1hcnktZm9udC13ZWlnaHQ7IH1cblxuICAgICAgYWJiciB7XG4gICAgICAgIGN1cnNvcjogJGN1cnNvci1kZWZhdWx0LXZhbHVlO1xuICAgICAgICB0ZXh0LWRlY29yYXRpb246ICRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtZGVjb3JhdGlvbjtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICRtaWNyb2Zvcm1hdC1hYmJyLWZvbnQtd2VpZ2h0O1xuICAgICAgICBib3JkZXI6IG5vbmU7XG4gICAgICAgIHBhZGRpbmc6ICRtaWNyb2Zvcm1hdC1hYmJyLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuXG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2IHsgbGluZS1oZWlnaHQ6ICRoZWFkZXItbGluZS1oZWlnaHQ7IH1cbiAgICAgIGgxIHsgZm9udC1zaXplOiAkaDEtZm9udC1zaXplOyB9XG4gICAgICBoMiB7IGZvbnQtc2l6ZTogJGgyLWZvbnQtc2l6ZTsgfVxuICAgICAgaDMgeyBmb250LXNpemU6ICRoMy1mb250LXNpemU7IH1cbiAgICAgIGg0IHsgZm9udC1zaXplOiAkaDQtZm9udC1zaXplOyB9XG4gICAgICBoNSB7IGZvbnQtc2l6ZTogJGg1LWZvbnQtc2l6ZTsgfVxuICAgICAgaDYgeyBmb250LXNpemU6ICRoNi1mb250LXNpemU7IH1cbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICd0eXBlJztcblxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIFZhcmlhYmxlc1xuJGluY2x1ZGUtaHRtbC1vZmYtY2FudmFzLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuJHRhYmJhci1iZzogJG9pbCAhZGVmYXVsdDtcbiR0YWJiYXItaGVpZ2h0OiByZW0tY2FsYyg0NSkgIWRlZmF1bHQ7XG4kdGFiYmFyLWljb24td2lkdGg6ICR0YWJiYXItaGVpZ2h0ICFkZWZhdWx0O1xuJHRhYmJhci1saW5lLWhlaWdodDogJHRhYmJhci1oZWlnaHQgIWRlZmF1bHQ7XG4kdGFiYmFyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFiYmFyLW1pZGRsZS1wYWRkaW5nOiAwIHJlbS1jYWxjKDEwKSAhZGVmYXVsdDtcblxuLy8gT2ZmIENhbnZhcyBEaXZpZGVyIFN0eWxlc1xuJHRhYmJhci1sZWZ0LXNlY3Rpb24tYm9yZGVyOiBzb2xpZCAxcHggc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTUwJSkgIWRlZmF1bHQ7XG4kdGFiYmFyLXJpZ2h0LXNlY3Rpb24tYm9yZGVyOiAkdGFiYmFyLWxlZnQtc2VjdGlvbi1ib3JkZXI7XG5cblxuLy8gT2ZmIENhbnZhcyBUYWIgQmFyIEhlYWRlcnNcbiR0YWJiYXItaGVhZGVyLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFiYmFyLWhlYWRlci13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJHRhYmJhci1oZWFkZXItbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVpZ2h0ICFkZWZhdWx0O1xuJHRhYmJhci1oZWFkZXItbWFyZ2luOiAwICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgVmFyaWFibGVzXG4kb2ZmLWNhbnZhcy13aWR0aDogcmVtLWNhbGMoMjUwKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJnOiAkb2lsICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmctaG92ZXI6IHNjYWxlLWNvbG9yKCR0YWJiYXItYmcsICRsaWdodG5lc3M6IC0zMCUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmctYWN0aXZlOiBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAtMzAlKSAhZGVmYXVsdDtcblxuLy8gT2ZmIENhbnZhcyBNZW51IExpc3QgVmFyaWFibGVzXG4kb2ZmLWNhbnZhcy1sYWJlbC1wYWRkaW5nOiAuM3JlbSByZW0tY2FsYygxNSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1sYWJlbC1jb2xvcjogJGFsdW1pbnVtICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtYmc6ICR0dWF0YXJhICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLXRvcDogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRvZmYtY2FudmFzLWxhYmVsLWJnLCAkbGlnaHRuZXNzOiAxNCUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLWJvdHRvbTogbm9uZSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxhYmVsLW1hcmdpbjowICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGluay1wYWRkaW5nOiByZW0tY2FsYygxMCwgMTUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtbGluay1jb2xvcjogcmdiYSgkd2hpdGUsIC43KSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWxpbmstYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRvZmYtY2FudmFzLWJnLCAkbGlnaHRuZXNzOiAtMjUlKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJhY2stYmc6ICM0NDQgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iYWNrLWJvcmRlci10b3A6ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci10b3AgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iYWNrLWJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci1ib3R0b20gIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1iYWNrLWhvdmVyLWJnOiBzY2FsZS1jb2xvcigkb2ZmLWNhbnZhcy1iYWNrLWJnLCAkbGlnaHRuZXNzOiAtMzAlKSAhZGVmYXVsdDtcbiRvZmYtY2FudmFzLWJhY2staG92ZXItYm9yZGVyLXRvcDogMXB4IHNvbGlkIHNjYWxlLWNvbG9yKCRvZmYtY2FudmFzLWxhYmVsLWJnLCAkbGlnaHRuZXNzOiAxNCUpICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtYmFjay1ob3Zlci1ib3JkZXItYm90dG9tOiBub25lICFkZWZhdWx0O1xuXG4vLyBPZmYgQ2FudmFzIE1lbnUgSWNvbiBWYXJpYWJsZXNcbiR0YWJiYXItbWVudS1pY29uLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFiYmFyLW1lbnUtaWNvbi1ob3Zlcjogc2NhbGUtY29sb3IoJHRhYmJhci1tZW51LWljb24tY29sb3IsICRsaWdodG5lc3M6IC0zMCUpICFkZWZhdWx0O1xuXG4kdGFiYmFyLW1lbnUtaWNvbi10ZXh0LWluZGVudDogcmVtLWNhbGMoMzUpICFkZWZhdWx0O1xuJHRhYmJhci1tZW51LWljb24td2lkdGg6ICR0YWJiYXItaWNvbi13aWR0aCAhZGVmYXVsdDtcbiR0YWJiYXItbWVudS1pY29uLWhlaWdodDogJHRhYmJhci1oZWlnaHQgIWRlZmF1bHQ7XG4kdGFiYmFyLW1lbnUtaWNvbi1wYWRkaW5nOiAwICFkZWZhdWx0O1xuXG4kdGFiYmFyLWhhbWJ1cmdlci1pY29uLXdpZHRoOiByZW0tY2FsYygxNikgIWRlZmF1bHQ7XG4kdGFiYmFyLWhhbWJ1cmdlci1pY29uLWxlZnQ6IGZhbHNlICFkZWZhdWx0O1xuJHRhYmJhci1oYW1idXJnZXItaWNvbi10b3A6IGZhbHNlICFkZWZhdWx0O1xuJHRhYmJhci1oYW1idXJnZXItaWNvbi10aGlja25lc3M6IDFweCAhZGVmYXVsdDtcbiR0YWJiYXItaGFtYnVyZ2VyLWljb24tZ2FwOiA2cHggIWRlZmF1bHQ7XG5cbi8vIE9mZiBDYW52YXMgQmFjay1MaW5rIE92ZXJsYXlcbiRvZmYtY2FudmFzLW92ZXJsYXktdHJhbnNpdGlvbjogYmFja2dyb3VuZCAzMDBtcyBlYXNlICFkZWZhdWx0O1xuJG9mZi1jYW52YXMtb3ZlcmxheS1jdXJzb3I6IHBvaW50ZXIgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1vdmVybGF5LWJveC1zaGFkb3c6IC00cHggMCA0cHggcmdiYSgkYmxhY2ssIC41KSwgNHB4IDAgNHB4IHJnYmEoJGJsYWNrLCAuNSkgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQ6IHJnYmEoJHdoaXRlLCAuMikgIWRlZmF1bHQ7XG4kb2ZmLWNhbnZhcy1vdmVybGF5LWJhY2tncm91bmQtaG92ZXI6IHJnYmEoJHdoaXRlLCAuMDUpICFkZWZhdWx0O1xuXG4vLyBUcmFuc2l0aW9uIFZhcmlhYmxlc1xuJG1lbnUtc2xpZGU6IFwidHJhbnNmb3JtIDUwMG1zIGVhc2VcIiAhZGVmYXVsdDtcblxuXG4vLyBNSVhJTlNcbi8vIFJlbW92ZSB0cmFuc2l0aW9uIGZsaWNrZXIgb24gcGhvbmVzXG5AbWl4aW4ga2lsbC1mbGlja2VyIHtcbiAgLy8gLXdlYmtpdC10cmFuc2Zvcm06IHRyYW5zbGF0ZVooMHgpO1xuICAtd2Via2l0LWJhY2tmYWNlLXZpc2liaWxpdHk6IGhpZGRlbjtcbn1cblxuLy8gQmFzaWMgcHJvcGVydGllcyBmb3IgdGhlIGNvbnRlbnQgd3JhcHNcbkBtaXhpbiB3cmFwLWJhc2Uge1xuICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gIHdpZHRoOiAxMDAlO1xufVxuXG5AbWl4aW4gdHJhbnNsYXRlM2QoJHR4LCAkdHksICR0eikge1xuICAtd2Via2l0LXRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHR4LCAkdHksICR0eik7XG4gICAgIC1tb3otdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkdHgsICR0eSwgJHR6KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHRyYW5zbGF0ZSgkdHgsICR0eSk7XG4gICAgICAtbXMtdHJhbnNmb3JtOiB0cmFuc2xhdGUzZCgkdHgsICR0eSwgJHR6KTtcbiAgICAgICAtby10cmFuc2Zvcm06IHRyYW5zbGF0ZTNkKCR0eCwgJHR5LCAkdHopO1xuICAgICAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoJHR4LCAkdHksICR0eilcbn1cblxuLy8gYmFzaWMgc3R5bGVzIGZvciBvZmYtY2FudmFzIG1lbnUgY29udGFpbmVyXG5AbWl4aW4gb2ZmLWNhbnZhcy1tZW51KCRwb3NpdGlvbikge1xuICBAaW5jbHVkZSBraWxsLWZsaWNrZXI7XG4gICogeyBAaW5jbHVkZSBraWxsLWZsaWNrZXI7IH1cbiAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtYmc7XG4gIGJvdHRvbTogMDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgLW1zLW92ZXJmbG93LXN0eWxlOiAtbXMtYXV0b2hpZGluZy1zY3JvbGxiYXI7XG4gIG92ZXJmbG93LXg6IGhpZGRlbjtcbiAgb3ZlcmZsb3cteTogYXV0bztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHRyYW5zaXRpb246IHRyYW5zZm9ybSA1MDBtcyBlYXNlIDBzO1xuICB3aWR0aDogJG9mZi1jYW52YXMtd2lkdGg7XG4gIHotaW5kZXg6IDEwMDE7Zm9udC1zaXplOjE2cHg7XG5cbiAgQGlmICRwb3NpdGlvbiA9PSBsZWZ0IHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtMTAwJSwwLDApO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgQGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgQGluY2x1ZGUgdHJhbnNsYXRlM2QoMTAwJSwwLDApO1xuICAgIHJpZ2h0OiAwO1xuICB9XG59XG5cbi8vIE9GRiBDQU5WQVMgV1JBUFxuLy8gV3JhcCB2aXNpYmxlIGNvbnRlbnQgYW5kIHByZXZlbnQgc2Nyb2xsIGJhcnNcbkBtaXhpbiBvZmYtY2FudmFzLXdyYXAge1xuICBAaW5jbHVkZSBraWxsLWZsaWNrZXI7XG4gIEBpbmNsdWRlIHdyYXAtYmFzZTtcbiAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgJi5tb3ZlLXJpZ2h0LFxuICAmLm1vdmUtbGVmdCB7IG1pbi1oZWlnaHQ6IDEwMCU7IC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDsgfVxufVxuXG4vLyBJTk5FUiBXUkFQXG4vLyBNYWluIGNvbnRlbnQgYXJlYSB0aGF0IG1vdmVzIHRvIHJldmVhbCB0aGUgb2ZmLWNhbnZhcyBuYXZcbkBtaXhpbiBpbm5lci13cmFwIHtcbiAgLy8gQGluY2x1ZGUga2lsbC1mbGlja2VyO1xuICAvLyByZW1vdmVkIGZvciBub3cgdGlsbCBjaHJvbWUgZml4ZXMgYmFja2ZhY2UgaXNzdWVcbiAgQGluY2x1ZGUgd3JhcC1iYXNlO1xuICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LSN7JG1lbnUtc2xpZGV9O1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otI3skbWVudS1zbGlkZX07XG4gIC1tcy10cmFuc2l0aW9uOiAtbXMtI3skbWVudS1zbGlkZX07XG4gIC1vLXRyYW5zaXRpb246IC1vLSN7JG1lbnUtc2xpZGV9O1xuICB0cmFuc2l0aW9uOiAjeyRtZW51LXNsaWRlfTtcbn1cblxuLy8gVEFCIEJBUlxuLy8gVGhpcyBpcyB0aGUgdGFiIGJhciBiYXNlXG5AbWl4aW4gdGFiLWJhci1iYXNlIHtcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xuXG4gIC8vIGJhc2Ugc3R5bGVzXG4gIGJhY2tncm91bmQ6ICR0YWJiYXItYmc7XG4gIGNvbG9yOiAkdGFiYmFyLWNvbG9yO1xuICBoZWlnaHQ6ICR0YWJiYXItaGVpZ2h0O1xuICBsaW5lLWhlaWdodDogJHRhYmJhci1saW5lLWhlaWdodDtcblxuICAvLyBtYWtlIHN1cmUgaXQncyBiZWxvdyB0aGUgLmV4aXQtb2ZmLWNhbnZhcyBsaW5rXG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgLy8gei1pbmRleDogOTk5O1xuXG4gIC8vIFR5cG9ncmFwaHlcbiAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgY29sb3I6ICR0YWJiYXItaGVhZGVyLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiAkdGFiYmFyLWhlYWRlci13ZWlnaHQ7XG4gICAgbGluZS1oZWlnaHQ6ICR0YWJiYXItaGVhZGVyLWxpbmUtaGVpZ2h0O1xuICAgIG1hcmdpbjogJHRhYmJhci1oZWFkZXItbWFyZ2luO1xuICB9XG4gIGgxLCBoMiwgaDMsIGg0IHsgZm9udC1zaXplOiAkaDUtZm9udC1zaXplOyB9XG59XG5cbi8vIFNNQUxMIFNFQ1RJT05TXG4vLyBUaGVzZSBhcmUgc21hbGwgc2VjdGlvbnMgb24gdGhlIGxlZnQgYW5kIHJpZ2h0IHRoYXQgY29udGFpbiB0aGUgb2ZmLWNhbnZhcyB0b2dnbGUgYnV0dG9ucztcbkBtaXhpbiB0YWJiYXItc21hbGwtc2VjdGlvbigkcG9zaXRpb24pIHtcbiAgaGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6IDA7XG4gIHdpZHRoOiAkdGFiYmFyLWljb24td2lkdGg7XG4gIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgYm9yZGVyLXJpZ2h0OiAkdGFiYmFyLWxlZnQtc2VjdGlvbi1ib3JkZXI7XG4gICAgLy8gYm94LXNoYWRvdzogMXB4IDAgMCBzY2FsZS1jb2xvcigkdGFiYmFyLWJnLCAkbGlnaHRuZXNzOiAxMyUpO1xuICAgIGxlZnQ6IDA7XG4gIH1cbiAgQGlmICRwb3NpdGlvbiA9PSByaWdodCB7XG4gICAgYm9yZGVyLWxlZnQ6ICR0YWJiYXItcmlnaHQtc2VjdGlvbi1ib3JkZXI7XG4gICAgLy8gYm94LXNoYWRvdzogLTFweCAwIDAgc2NhbGUtY29sb3IoJHRhYmJhci1iZywgJGxpZ2h0bmVzczogLTUwJSk7XG4gICAgcmlnaHQ6MDtcbiAgfVxufVxuXG5AbWl4aW4gdGFiLWJhci1zZWN0aW9uIHtcbiAgaGVpZ2h0OiAkdGFiYmFyLWhlaWdodDtcbiAgcGFkZGluZzogJHRhYmJhci1taWRkbGUtcGFkZGluZztcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0ZXh0LWFsaWduOiBjZW50ZXI7XG4gIHRvcDogMDtcbiAgICAmLmxlZnQgeyB0ZXh0LWFsaWduOiBsZWZ0OyB9XG4gICAgJi5yaWdodCB7IHRleHQtYWxpZ246IHJpZ2h0OyB9XG5cblxuICAvLyBzdGlsbCBuZWVkIHRvIG1ha2UgdGhlc2Ugbm9uLXByZXNlbnRhdGlvbmFsXG4gICYubGVmdCB7XG4gICAgbGVmdDogMDtcbiAgICByaWdodDogJHRhYmJhci1pY29uLXdpZHRoO1xuICB9XG4gICYucmlnaHQge1xuICAgIGxlZnQ6ICR0YWJiYXItaWNvbi13aWR0aDtcbiAgICByaWdodDogMDtcbiAgfVxuICAmLm1pZGRsZSB7XG4gICAgbGVmdDogJHRhYmJhci1pY29uLXdpZHRoO1xuICAgIHJpZ2h0OiAkdGFiYmFyLWljb24td2lkdGg7XG4gIH1cbn1cblxuLy8gT0ZGIENBTlZBUyBMSVNUXG4vLyBUaGlzIGlzIHRoZSBsaXN0IG9mIGxpbmtzIGluIHRoZSBvZmYtY2FudmFzIG1lbnVcbkBtaXhpbiBvZmYtY2FudmFzLWxpc3Qge1xuICBsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG4gIG1hcmdpbjowO1xuICBwYWRkaW5nOjA7XG5cbiAgbGkge1xuICAgIGxhYmVsIHtcbiAgICAgIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWxhYmVsLWJnO1xuICAgICAgYm9yZGVyLWJvdHRvbTogJG9mZi1jYW52YXMtbGFiZWwtYm9yZGVyLWJvdHRvbTtcbiAgICAgIGJvcmRlci10b3A6ICRvZmYtY2FudmFzLWxhYmVsLWJvcmRlci10b3A7XG4gICAgICBjb2xvcjogJG9mZi1jYW52YXMtbGFiZWwtY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZvbnQtc2l6ZTogJG9mZi1jYW52YXMtbGFiZWwtZm9udC1zaXplO1xuICAgICAgZm9udC13ZWlnaHQ6ICRvZmYtY2FudmFzLWxhYmVsLWZvbnQtd2VpZ2h0O1xuICAgICAgbWFyZ2luOiAkb2ZmLWNhbnZhcy1sYWJlbC1tYXJnaW47XG4gICAgICBwYWRkaW5nOiAkb2ZmLWNhbnZhcy1sYWJlbC1wYWRkaW5nO1xuICAgICAgdGV4dC10cmFuc2Zvcm06ICRvZmYtY2FudmFzLWxhYmVsLXRleHQtdHJhbnNmb3JtO1xuICAgIH1cbiAgICBhIHtcbiAgICAgIGJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWxpbmstYm9yZGVyLWJvdHRvbTtcbiAgICAgIGNvbG9yOiAkb2ZmLWNhbnZhcy1saW5rLWNvbG9yO1xuICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICBwYWRkaW5nOiAkb2ZmLWNhbnZhcy1saW5rLXBhZGRpbmc7XG4gICAgICB0cmFuc2l0aW9uOiBiYWNrZ3JvdW5kIDMwMG1zIGVhc2U7XG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtYmctaG92ZXI7XG4gICAgICB9XG4gICAgICAmOmFjdGl2ZSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLWJnLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxufVxuXG4vLyBCQUNLIExJTktcbi8vIFRoaXMgaXMgYW4gb3ZlcmxheSB0aGF0LCB3aGVuIGNsaWNrZWQsIHdpbGwgdG9nZ2xlIG9mZiB0aGUgb2ZmIGNhbnZhcyBtZW51XG5AbWl4aW4gYmFjay1saW5rIHtcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xuXG4gIGJveC1zaGFkb3c6ICRvZmYtY2FudmFzLW92ZXJsYXktYm94LXNoYWRvdztcbiAgY3Vyc29yOiAkb2ZmLWNhbnZhcy1vdmVybGF5LWN1cnNvcjtcbiAgdHJhbnNpdGlvbjogJG9mZi1jYW52YXMtb3ZlcmxheS10cmFuc2l0aW9uO1xuXG4gIC8vIGZpbGwgdGhlIHNjcmVlblxuICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwwLDAsMCk7XG4gIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZDtcbiAgYm90dG9tOiAwO1xuICBkaXNwbGF5OiBibG9jaztcbiAgbGVmdDogMDtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICByaWdodDogMDtcbiAgdG9wOiAwO1xuICB6LWluZGV4OiAxMDAyO1xuXG4gIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcbiAgICAmOmhvdmVyIHtcbiAgICAgIGJhY2tncm91bmQ6ICRvZmYtY2FudmFzLW92ZXJsYXktYmFja2dyb3VuZC1ob3ZlcjtcbiAgICB9XG4gIH1cbn1cblxuLy9cbi8vIE9mZi1DYW52YXMgU3VibWVudSBDbGFzc2VzXG4vL1xuQG1peGluIG9mZi1jYW52YXMtc3VibWVudSgkcG9zaXRpb24pIHtcbiAgQGluY2x1ZGUga2lsbC1mbGlja2VyO1xuICAqIHsgQGluY2x1ZGUga2lsbC1mbGlja2VyOyB9XG4gIC13ZWJraXQtb3ZlcmZsb3ctc2Nyb2xsaW5nOiB0b3VjaDtcbiAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtYmc7XG4gIGJvdHRvbTogMDtcbiAgYm94LXNpemluZzogY29udGVudC1ib3g7XG4gIG1hcmdpbjogMDtcbiAgb3ZlcmZsb3cteDogaGlkZGVuO1xuICBvdmVyZmxvdy15OiBhdXRvO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMDtcbiAgd2lkdGg6ICRvZmYtY2FudmFzLXdpZHRoO1xuICB6LWluZGV4OiAxMDAyO1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKC0xMDAlLDAsMCk7XG4gICAgbGVmdDogMDtcbiAgfVxuICBAaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgxMDAlLDAsMCk7XG4gICAgcmlnaHQ6IDA7XG4gIH1cbiAgLXdlYmtpdC10cmFuc2l0aW9uOiAtd2Via2l0LSN7JG1lbnUtc2xpZGV9O1xuICAtbW96LXRyYW5zaXRpb246IC1tb3otI3skbWVudS1zbGlkZX07XG4gIC1tcy10cmFuc2l0aW9uOiAtbXMtI3skbWVudS1zbGlkZX07XG4gIC1vLXRyYW5zaXRpb246IC1vLSN7JG1lbnUtc2xpZGV9O1xuICB0cmFuc2l0aW9uOiAjeyRtZW51LXNsaWRlfTtcblxuICAvL2JhY2sgYnV0dG9uIHN0eWxlIGxpa2UgbGFiZWxcbiAgLmJhY2sgPiBhIHtcbiAgICBiYWNrZ3JvdW5kOiAkb2ZmLWNhbnZhcy1iYWNrLWJnO1xuICAgIGJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWJhY2stYm9yZGVyLWJvdHRvbTtcbiAgICBib3JkZXItdG9wOiAkb2ZmLWNhbnZhcy1iYWNrLWJvcmRlci10b3A7XG4gICAgY29sb3I6ICRvZmYtY2FudmFzLWxhYmVsLWNvbG9yO1xuICAgIGZvbnQtd2VpZ2h0OiAkb2ZmLWNhbnZhcy1sYWJlbC1mb250LXdlaWdodDtcbiAgICBwYWRkaW5nOiAkb2ZmLWNhbnZhcy1sYWJlbC1wYWRkaW5nO1xuICAgIHRleHQtdHJhbnNmb3JtOiAkb2ZmLWNhbnZhcy1sYWJlbC10ZXh0LXRyYW5zZm9ybTtcblxuICAgICY6aG92ZXIge1xuICAgICAgYmFja2dyb3VuZDogJG9mZi1jYW52YXMtYmFjay1ob3Zlci1iZztcbiAgICAgIGJvcmRlci1ib3R0b206ICRvZmYtY2FudmFzLWJhY2staG92ZXItYm9yZGVyLWJvdHRvbTtcbiAgICAgIGJvcmRlci10b3A6ICRvZmYtY2FudmFzLWJhY2staG92ZXItYm9yZGVyLXRvcDtcbiAgICB9XG5cbiAgICBtYXJnaW46ICRvZmYtY2FudmFzLWxhYmVsLW1hcmdpbjtcbiAgICBAaWYgJHBvc2l0aW9uID09IHJpZ2h0IHtcbiAgICAgIEBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAgICAgJjpiZWZvcmUge1xuICAgICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IGxlZnQpO1xuICAgICAgICB9XG4gICAgICB9IEBlbHNlIHtcbiAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogcmlnaHQpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIEBpZiAkcG9zaXRpb24gPT0gbGVmdCB7XG4gICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICAgICY6YWZ0ZXIge1xuICAgICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IHJpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgICY6YmVmb3JlIHtcbiAgICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiBsZWZ0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxufVxuLy9MZWZ0IGRvdWJsZSBhbmdsZSBxdW90ZSBvciBSaWdodCBkb3VibGUgYW5nbGUgcXVvdGUgY2hhcnNcbkBtaXhpbiBpY29uLWRvdWJsZS1hcnJvd3MgKCRwb3NpdGlvbikge1xuICBAaWYgJHBvc2l0aW9uID09IGxlZnQge1xuICAgIGNvbnRlbnQ6IFwiXFxBQlwiO1xuICAgIEBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAgIG1hcmdpbi1sZWZ0OiAuNXJlbTtcbiAgICB9IEBlbHNlIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XG4gICAgfVxuICB9XG4gIEBpZiAkcG9zaXRpb24gPT0gcmlnaHQge1xuICAgIGNvbnRlbnQ6IFwiXFxCQlwiO1xuICAgIEBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAgIG1hcmdpbi1yaWdodDogLjVyZW07XG4gICAgfSBAZWxzZSB7XG4gICAgICBtYXJnaW4tbGVmdDogLjVyZW07XG4gICAgfVxuICB9XG4gIGRpc3BsYXk6IGlubGluZTtcbn1cblxuLy9cbi8vIERFRkFVTFQgQ0xBU1NFU1xuLy9cbkBpbmNsdWRlIGV4cG9ydHMoXCJvZmZjYW52YXNcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1vZmYtY2FudmFzLWNsYXNzZXMge1xuXG4gICAgLm9mZi1jYW52YXMtd3JhcCB7IEBpbmNsdWRlIG9mZi1jYW52YXMtd3JhcDsgfVxuICAgIC5pbm5lci13cmFwIHsgQGluY2x1ZGUgaW5uZXItd3JhcDsgfVxuXG4gICAgLnRhYi1iYXIgeyBAaW5jbHVkZSB0YWItYmFyLWJhc2U7IH1cblxuICAgIC5sZWZ0LXNtYWxsIHsgQGluY2x1ZGUgdGFiYmFyLXNtYWxsLXNlY3Rpb24oJHBvc2l0aW9uOiBsZWZ0KTsgfVxuICAgIC5yaWdodC1zbWFsbCB7IEBpbmNsdWRlIHRhYmJhci1zbWFsbC1zZWN0aW9uKCRwb3NpdGlvbjogcmlnaHQpOyB9XG5cbiAgICAudGFiLWJhci1zZWN0aW9uIHsgQGluY2x1ZGUgdGFiLWJhci1zZWN0aW9uOyB9XG5cbiAgICAvLyBNRU5VIEJVVFRPTlxuICAgIC8vIFRoaXMgaXMgYSBsaXR0bGUgYm9udXMuIFlvdSBkb24ndCBuZWVkIGl0IGZvciBvZmYgY2FudmFzIHRvIHdvcmsuIE1peGlucyB0byBiZSB3cml0dGVuIGluIHRoZSBmdXR1cmUuXG4gICAgLnRhYi1iYXIgLm1lbnUtaWNvbiB7XG4gICAgICBjb2xvcjogJHRhYmJhci1tZW51LWljb24tY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGhlaWdodDogJHRhYmJhci1tZW51LWljb24taGVpZ2h0O1xuICAgICAgcGFkZGluZzogJHRhYmJhci1tZW51LWljb24tcGFkZGluZztcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHRleHQtaW5kZW50OiAkdGFiYmFyLW1lbnUtaWNvbi10ZXh0LWluZGVudDtcbiAgICAgIHRyYW5zZm9ybTogdHJhbnNsYXRlM2QoMCwwLDApO1xuICAgICAgd2lkdGg6ICR0YWJiYXItbWVudS1pY29uLXdpZHRoO1xuXG4gICAgICAvLyBAaW5jbHVkZSBmb3IgdGhlIGhhbWJ1cmdlciBtZW51LWljb25cbiAgICAgIC8vXG4gICAgICAvLyBBcmd1bWVudHMgYXMgZm9sbG93czogKCR3aWR0aCwgJGxlZnQsICR0b3AsICR0aGlja25lc3MsICRnYXAsICRjb2xvciwgJGhvdmVyLWNvbG9yKVxuICAgICAgLy8gJHdpZHRoIC0gV2lkdGggb2YgaGFtYnVyZ2VyIGljb24gaW4gcmVtIERlZmF1bHQ6ICR0YWJiYXItaGFtYnVyZ2VyLWljb24td2lkdGguXG4gICAgICAvLyAkbGVmdCAtIElmIGZhbHNlLCBpY29uIHdpbGwgYmUgY2VudGVyZWQgaG9yaXpvbnRhbGx5IHx8IGV4cGxpY2l0bHkgc2V0IHZhbHVlIGluIHJlbSBEZWZhdWx0OiAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWxlZnQ9IEZhbHNlXG4gICAgICAvLyAkdG9wIC0gSWYgZmFsc2UsIGljb24gd2lsbCBiZSBjZW50ZXJlZCB2ZXJ0aWNhbGx5IHx8IGV4cGxpY2l0bHkgc2V0IHZhbHVlIGluIHJlbSBEZWZhdWx0OiA9IEZhbHNlXG4gICAgICAvLyAkdGhpY2tuZXNzIC0gdGhpY2tuZXNzIG9mIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHggRGVmYXVsdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi10aGlja25lc3MgPSAxcHhcbiAgICAgIC8vICRnYXAgLSBzcGFjaW5nIGJldHdlZW4gdGhlIGxpbmVzIGluIGhhbWJ1cmdlciBpY29uLCBzZXQgdmFsdWUgaW4gcHggRGVmYXVsdDogJHRhYmJhci1oYW1idXJnZXItaWNvbi1nYXAgPSA2cHhcbiAgICAgIC8vICRjb2xvciAtIGljb24gY29sb3IgRGVmYXVsdDogJHRhYmJhci1tZW51LWljb24tY29sb3JcbiAgICAgIC8vICRob3Zlci1jb2xvciAtIGljb24gY29sb3Igd2hlbiBob3ZlcmVkIERlZmF1bHQ6ICR0YWJiYXItbWVudS1pY29uLWhvdmVyXG4gICAgICAvLyAkb2ZmY2FudmFzIC0gU2V0IHRvIHRydWVcbiAgICAgIEBpbmNsdWRlIGhhbWJ1cmdlcigkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXdpZHRoLCAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLWxlZnQsICR0YWJiYXItaGFtYnVyZ2VyLWljb24tdG9wLCAkdGFiYmFyLWhhbWJ1cmdlci1pY29uLXRoaWNrbmVzcywgJHRhYmJhci1oYW1idXJnZXItaWNvbi1nYXAsICR0YWJiYXItbWVudS1pY29uLWNvbG9yLCAkdGFiYmFyLW1lbnUtaWNvbi1ob3ZlciwgdHJ1ZSlcbiAgICB9XG5cbiAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUgeyBAaW5jbHVkZSBvZmYtY2FudmFzLW1lbnUoJHBvc2l0aW9uOiBsZWZ0KTsgfVxuICAgIC5yaWdodC1vZmYtY2FudmFzLW1lbnUgeyBAaW5jbHVkZSBvZmYtY2FudmFzLW1lbnUoJHBvc2l0aW9uOiByaWdodCk7IH1cblxuICAgIHVsLm9mZi1jYW52YXMtbGlzdCB7IEBpbmNsdWRlIG9mZi1jYW52YXMtbGlzdDsgfVxuXG5cbiAgICAvLyBBTklNQVRJT04gQ0xBU1NFU1xuICAgIC8vIFRoZXNlIGNsYXNzZXMgYXJlIGFkZGVkIHdpdGggSlMgYW5kIHRyaWdnZXIgdGhlIGFjdHVhbCBhbmltYXRpb24uXG4gICAgLm1vdmUtcmlnaHQge1xuICAgICAgPiAuaW5uZXItd3JhcCB7XG4gICAgICAgIEBpbmNsdWRlIHRyYW5zbGF0ZTNkKCRvZmYtY2FudmFzLXdpZHRoLDAsMCk7XG4gICAgICB9XG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rO31cbiAgICB9XG5cbiAgICAubW92ZS1sZWZ0IHtcbiAgICAgID4gLmlubmVyLXdyYXAge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgtKCRvZmYtY2FudmFzLXdpZHRoKSwwLDApO1xuXG4gICAgICB9XG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rOyB9XG4gICAgfVxuICAgIC5vZmZjYW52YXMtb3ZlcmxhcCB7XG4gICAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUsIC5yaWdodC1vZmYtY2FudmFzLW1lbnUge1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDAzO1xuICAgICAgfVxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxuICAgIH1cbiAgICAub2ZmY2FudmFzLW92ZXJsYXAtbGVmdCB7XG4gICAgICAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgei1pbmRleDogMTAwMztcbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7IH1cbiAgICB9XG4gICAgLm9mZmNhbnZhcy1vdmVybGFwLXJpZ2h0IHtcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDEwMDM7XG4gICAgICB9XG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rOyB9XG4gICAgfVxuXG4gICAgLy8gT2xkZXIgYnJvd3NlcnNcbiAgICAubm8tY3NzdHJhbnNmb3JtcyB7XG4gICAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUgeyBsZWZ0OiAtKCRvZmYtY2FudmFzLXdpZHRoKTsgfVxuICAgICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB7IHJpZ2h0OiAtKCRvZmYtY2FudmFzLXdpZHRoKTsgfVxuXG4gICAgICAubW92ZS1sZWZ0ID4gLmlubmVyLXdyYXAgeyByaWdodDogJG9mZi1jYW52YXMtd2lkdGg7IH1cbiAgICAgIC5tb3ZlLXJpZ2h0ID4gLmlubmVyLXdyYXAgeyBsZWZ0OiAkb2ZmLWNhbnZhcy13aWR0aDsgfVxuICAgIH1cblxuICAgIC5sZWZ0LXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1zdWJtZW51KCRwb3NpdGlvbjogbGVmdCk7XG4gICAgICAmLm1vdmUtcmlnaHQsICYub2ZmY2FudmFzLW92ZXJsYXAtcmlnaHQsICYub2ZmY2FudmFzLW92ZXJsYXAge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwJSwwLDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5yaWdodC1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtc3VibWVudSgkcG9zaXRpb246IHJpZ2h0KTtcbiAgICAgICYubW92ZS1sZWZ0LCAmLm9mZmNhbnZhcy1vdmVybGFwLWxlZnQsICYub2ZmY2FudmFzLW92ZXJsYXAge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwJSwwLDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIEBpZiAkdGV4dC1kaXJlY3Rpb24gPT0gcnRsIHtcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB1bC5vZmYtY2FudmFzLWxpc3QgbGkuaGFzLXN1Ym1lbnUgPiBhOmJlZm9yZSB7XG4gICAgICAgIEBpbmNsdWRlIGljb24tZG91YmxlLWFycm93cygkcG9zaXRpb246IGxlZnQpO1xuICAgICAgfVxuICAgICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB1bC5vZmYtY2FudmFzLWxpc3QgbGkuaGFzLXN1Ym1lbnUgPiBhOmFmdGVyIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogcmlnaHQpO1xuICAgICAgfVxuICAgIH0gQGVsc2Uge1xuICAgICAgLmxlZnQtb2ZmLWNhbnZhcy1tZW51IHVsLm9mZi1jYW52YXMtbGlzdCBsaS5oYXMtc3VibWVudSA+IGE6YWZ0ZXIge1xuICAgICAgICBAaW5jbHVkZSBpY29uLWRvdWJsZS1hcnJvd3MoJHBvc2l0aW9uOiByaWdodCk7XG4gICAgICB9XG4gICAgICAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHVsLm9mZi1jYW52YXMtbGlzdCBsaS5oYXMtc3VibWVudSA+IGE6YmVmb3JlIHtcbiAgICAgICAgQGluY2x1ZGUgaWNvbi1kb3VibGUtYXJyb3dzKCRwb3NpdGlvbjogbGVmdCk7XG4gICAgICB9XG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLW9yYml0LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGNhcHRpb24gc3R5bGVzXG4kb3JiaXQtY29udGFpbmVyLWJnOiBub25lICFkZWZhdWx0O1xuJG9yYml0LWNhcHRpb24tYmc6IHJnYmEoNTEsNTEsNTEsIC44KSAhZGVmYXVsdDtcbiRvcmJpdC1jYXB0aW9uLWZvbnQtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRvcmJpdC1jYXB0aW9uLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJG9yYml0LWNhcHRpb24tcG9zaXRpb246IFwiYm90dG9tXCIgIWRlZmF1bHQ7IC8vIFN1cHBvcnRlZCB2YWx1ZXM6IFwiYm90dG9tXCIsIFwidW5kZXJcIlxuJG9yYml0LWNhcHRpb24tcGFkZGluZzogcmVtLWNhbGMoMTAgMTQpICFkZWZhdWx0O1xuJG9yYml0LWNhcHRpb24taGVpZ2h0OiBhdXRvICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgbGVmdC9yaWdodCBuYXYgc3R5bGVzXG4kb3JiaXQtbmF2LWJnOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiRvcmJpdC1uYXYtYmctaG92ZXI6IHJnYmEoMCwwLDAsMC4zKSAhZGVmYXVsdDtcbiRvcmJpdC1uYXYtYXJyb3ctY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRvcmJpdC1uYXYtYXJyb3ctY29sb3ItaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHRpbWVyIHN0eWxlc1xuJG9yYml0LXRpbWVyLWJnOiByZ2JhKDI1NSwyNTUsMjU1LDAuMykgIWRlZmF1bHQ7XG4kb3JiaXQtdGltZXItc2hvdy1wcm9ncmVzcy1iYXI6IHRydWUgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBidWxsZXQgbmF2IHN0eWxlc1xuJG9yYml0LWJ1bGxldC1uYXYtY29sb3I6ICRpcm9uICFkZWZhdWx0O1xuJG9yYml0LWJ1bGxldC1uYXYtY29sb3ItYWN0aXZlOiAkYWx1bWludW0gIWRlZmF1bHQ7XG4kb3JiaXQtYnVsbGV0LXJhZGl1czogcmVtLWNhbGMoOSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9scyB0aGUgc3R5bGUgb2Ygc2xpZGUgbnVtYmVyc1xuJG9yYml0LXNsaWRlLW51bWJlci1iZzogcmdiYSgwLDAsMCwwKSAhZGVmYXVsdDtcbiRvcmJpdC1zbGlkZS1udW1iZXItZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nOiByZW0tY2FsYyg1KSAhZGVmYXVsdDtcblxuLy8gR3JhY2VmdWwgTG9hZGluZyBXcmFwcGVyIGFuZCBwcmVsb2FkZXJcbiR3cmFwcGVyLWNsYXNzOiBcInNsaWRlc2hvdy13cmFwcGVyXCIgIWRlZmF1bHQ7XG4kcHJlbG9hZGVyLWNsYXNzOiBcInByZWxvYWRlclwiICFkZWZhdWx0O1xuXG4vLyBIaWRlIGNvbnRyb2xzIG9uIHNtYWxsXG4kb3JiaXQtbmF2LWhpZGUtZm9yLXNtYWxsOiB0cnVlICFkZWZhdWx0O1xuJG9yYml0LWJ1bGxldC1oaWRlLWZvci1zbWFsbDogdHJ1ZSAhZGVmYXVsdDtcbiRvcmJpdC10aW1lci1oaWRlLWZvci1zbWFsbDogdHJ1ZSAhZGVmYXVsdDtcblxuXG5AaW5jbHVkZSBleHBvcnRzKFwib3JiaXRcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1vcmJpdC1jbGFzc2VzIHtcblxuICAgIEAtd2Via2l0LWtleWZyYW1lcyByb3RhdGUge1xuICAgICAgZnJvbSB7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgfVxuICAgICAgdG8ge1xuICAgICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMzYwZGVnKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgfVxuICAgIH1cblxuXG4gICAgQGtleWZyYW1lcyByb3RhdGUge1xuICAgICAgZnJvbSB7XG4gICAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICAtbW96LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgICAgIH1cbiAgICAgIHRvIHtcbiAgICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICAgICAgLW1vei10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgzNjBkZWcpO1xuICAgICAgICAgIHRyYW5zZm9ybTogcm90YXRlKDM2MGRlZyk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLyogT3JiaXQgR3JhY2VmdWwgTG9hZGluZyAqL1xuICAgIC4jeyR3cmFwcGVyLWNsYXNzfSB7XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgLy8gUHJldmVudCBidWxsZXRzIHNob3dpbmcgYmVmb3JlIC5vcmJpdC1jb250YWluZXIgaXMgbG9hZGVkXG4gICAgICAgIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgIC8vIEhpZGUgYWxsIGxpc3QgaXRlbXNcbiAgICAgICAgbGksXG4gICAgICAgIGxpIC5vcmJpdC1jYXB0aW9uIHsgZGlzcGxheTogbm9uZTsgfVxuXG4gICAgICAgIC8vIC4uLmV4Y2VwdCBmb3IgdGhlIGZpcnN0IG9uZVxuICAgICAgICBsaTpmaXJzdC1jaGlsZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICB9XG5cbiAgICAgIC5vcmJpdC1jb250YWluZXIgeyBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcblxuICAgICAgICAvLyBTaG93IGltYWdlcyB3aGVuIC5vcmJpdC1jb250YWluZXIgaXMgbG9hZGVkXG4gICAgICAgIGxpIHsgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgICAub3JiaXQtY2FwdGlvbiB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAgIH1cbiAgICAgICAgLm9yYml0LWJ1bGxldHMgbGkge1xuICAgICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBPcmJpdCBwcmVsb2FkZXJcbiAgICAgIC4jeyRwcmVsb2FkZXItY2xhc3N9IHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKDEwMDBweCk7XG4gICAgICAgIGFuaW1hdGlvbi1kdXJhdGlvbjogMS41cztcbiAgICAgICAgYW5pbWF0aW9uLWl0ZXJhdGlvbi1jb3VudDogaW5maW5pdGU7XG4gICAgICAgIGFuaW1hdGlvbi1uYW1lOiByb3RhdGU7XG4gICAgICAgIGFuaW1hdGlvbi10aW1pbmctZnVuY3Rpb246IGxpbmVhcjtcbiAgICAgICAgYm9yZGVyLWNvbG9yOiAkY2hhcmNvYWwgJHdoaXRlO1xuICAgICAgICBib3JkZXI6IHNvbGlkIDNweDtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGhlaWdodDogNDBweDtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICBtYXJnaW4tbGVmdDogLTIwcHg7XG4gICAgICAgIG1hcmdpbi10b3A6IC0yMHB4O1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogNTAlO1xuICAgICAgICB3aWR0aDogNDBweDtcbiAgICAgIH1cbiAgICB9XG5cblxuICAgIC5vcmJpdC1jb250YWluZXIge1xuICAgICAgYmFja2dyb3VuZDogJG9yYml0LWNvbnRhaW5lci1iZztcbiAgICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgLm9yYml0LXNsaWRlcy1jb250YWluZXIge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgIHBhZGRpbmc6IDA7XG4gICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgICAvLyBQcmV2ZW50cyBpbWFnZXMgKGFuZCBjYXB0aW9ucykgZnJvbSBkaXNhcHBlYXJpbmcgYWZ0ZXIgZmlyc3Qgcm90YXRpb24gb24gQ2hyb21lIGZvciBBbmRyb2lkXG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogdHJhbnNsYXRlWigwKTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiB0cmFuc2xhdGVaKDApO1xuICAgICAgICB0cmFuc2Zvcm06IHRyYW5zbGF0ZVooMCk7XG5cbiAgICAgICAgaW1nIHsgZGlzcGxheTogYmxvY2s7IG1heC13aWR0aDogMTAwJTsgfVxuXG4gICAgICAgID4gKiB7XG4gICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgICAgICBAaWYgJHRleHQtZGlyZWN0aW9uID09IHJ0bCB7XG4gICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDEwMCU7XG4gICAgICAgICAgfVxuICAgICAgICAgIEBlbHNlIHtcbiAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAxMDAlO1xuICAgICAgICAgIH1cblxuICAgICAgICAgICY6Zmlyc3QtY2hpbGQge1xuICAgICAgICAgICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgICAgICAgICBtYXJnaW4tcmlnaHQ6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAZWxzZSB7XG4gICAgICAgICAgICAgIG1hcmdpbi1sZWZ0OiAwO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIC5vcmJpdC1jYXB0aW9uIHtcbiAgICAgICAgICAgIEBpZiAkb3JiaXQtY2FwdGlvbi1wb3NpdGlvbiA9PSBcImJvdHRvbVwiIHtcbiAgICAgICAgICAgICAgYm90dG9tOiAwO1xuICAgICAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgICB9IEBlbHNlIGlmICRvcmJpdC1jYXB0aW9uLXBvc2l0aW9uID09IFwidW5kZXJcIiB7XG4gICAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LWNhcHRpb24tYmc7XG4gICAgICAgICAgICBjb2xvcjogJG9yYml0LWNhcHRpb24tZm9udC1jb2xvcjtcbiAgICAgICAgICAgIGZvbnQtc2l6ZTogJG9yYml0LWNhcHRpb24tZm9udC1zaXplO1xuICAgICAgICAgICAgcGFkZGluZzogJG9yYml0LWNhcHRpb24tcGFkZGluZztcbiAgICAgICAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAub3JiaXQtc2xpZGUtbnVtYmVyIHtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDEwcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvcmJpdC1zbGlkZS1udW1iZXItYmc7XG4gICAgICAgIGNvbG9yOiAkb3JiaXQtc2xpZGUtbnVtYmVyLWZvbnQtY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogMTJweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICBzcGFuIHsgZm9udC13ZWlnaHQ6IDcwMDsgcGFkZGluZzogJG9yYml0LXNsaWRlLW51bWJlci1wYWRkaW5nO31cbiAgICAgICAgdG9wOiAxMHB4O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgIH1cblxuICAgICAgLm9yYml0LXRpbWVyIHtcbiAgICAgICAgXG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgdG9wOiAxMnB4O1xuICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAxMHB4O1xuICAgICAgICBoZWlnaHQ6IDZweDtcbiAgICAgICAgd2lkdGg6IDEwMHB4O1xuICAgICAgICB6LWluZGV4OiAxMDtcbiAgICAgICAgXG5cbiAgICAgICAgLm9yYml0LXByb2dyZXNzIHtcbiAgICAgICAgICBAaWYgJG9yYml0LXRpbWVyLXNob3ctcHJvZ3Jlc3MtYmFyIHtcbiAgICAgICAgICAgIGhlaWdodDogM3B4O1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LXRpbWVyLWJnO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICAgIHJpZ2h0OiAyMHB4O1xuICAgICAgICAgICAgdG9wOiA1cHg7XG4gICAgICAgICAgICBcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQbGF5IGJ1dHRvblxuICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyOiBzb2xpZCA0cHggJHdoaXRlO1xuICAgICAgICAgIGJvcmRlci1ib3R0b206IG5vbmU7XG4gICAgICAgICAgYm9yZGVyLXRvcDogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICAgIGhlaWdodDogMTRweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiAwO1xuICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBQYXVzZSBidXR0b25cbiAgICAgICAgJi5wYXVzZWQge1xuICAgICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICAgIHRvcDogMDtcbiAgICAgICAgICAgIHdpZHRoOiAxMXB4O1xuICAgICAgICAgICAgaGVpZ2h0OiAxNHB4O1xuICAgICAgICAgICAgYm9yZGVyOiBpbnNldCA4cHg7XG4gICAgICAgICAgICBib3JkZXItbGVmdC1zdHlsZTogc29saWQ7XG4gICAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50O1xuICAgICAgICAgICAgYm9yZGVyLWxlZnQtY29sb3I6ICR3aGl0ZTtcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IC00cHg7XG5cbiAgICAgICAgICAgICYuZGFyayB7XG4gICAgICAgICAgICAgIGJvcmRlci1sZWZ0LWNvbG9yOiAkb2lsO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG5cblxuICAgICAgJjpob3ZlciAub3JiaXQtdGltZXIgPiBzcGFuIHsgZGlzcGxheTogYmxvY2s7IH1cblxuICAgICAgLy8gTGV0J3MgZ2V0IHRob3NlIGNvbnRyb2xzIHRvIGJlIHJpZ2h0IGluIHRoZSBjZW50ZXIgb24gZWFjaCBzaWRlXG4gICAgICAub3JiaXQtcHJldixcbiAgICAgIC5vcmJpdC1uZXh0IHtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJG9yYml0LW5hdi1iZztcbiAgICAgICAgY29sb3I6IHdoaXRlO1xuICAgICAgICBoZWlnaHQ6IDYwcHg7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiA1MHB4O1xuICAgICAgICBtYXJnaW4tdG9wOiAtMjVweDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0ZXh0LWluZGVudDogLTk5OTlweCAhaW1wb3J0YW50O1xuICAgICAgICB0b3A6IDQ1JTtcbiAgICAgICAgd2lkdGg6IDM2cHg7XG4gICAgICAgIHotaW5kZXg6IDEwO1xuXG4gICAgICAgICY6aG92ZXIge1xuICAgICAgICAgIGJhY2tncm91bmQtY29sb3I6ICRvcmJpdC1uYXYtYmctaG92ZXI7XG4gICAgICAgIH1cblxuICAgICAgICAmID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyOiBpbnNldCAxMHB4O1xuICAgICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICAgIGhlaWdodDogMDtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTBweDtcbiAgICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgd2lkdGg6IDA7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5vcmJpdC1wcmV2IHsgI3skZGVmYXVsdC1mbG9hdH06IDA7XG4gICAgICAgICYgPiBzcGFuIHtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1zdHlsZTogc29saWQ7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3JkZXItI3skb3Bwb3NpdGUtZGlyZWN0aW9ufS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgICAmOmhvdmVyID4gc3BhbiB7XG4gICAgICAgICAgYm9yZGVyLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn0tY29sb3I6ICRvcmJpdC1uYXYtYXJyb3ctY29sb3ItaG92ZXI7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIC5vcmJpdC1uZXh0IHsgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDtcbiAgICAgICAgJiA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgICAgYm9yZGVyLSN7JGRlZmF1bHQtZmxvYXR9LXN0eWxlOiBzb2xpZDtcbiAgICAgICAgICBib3JkZXItI3skZGVmYXVsdC1mbG9hdH0tY29sb3I6ICRvcmJpdC1uYXYtYXJyb3ctY29sb3I7XG4gICAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDUwJTtcbiAgICAgICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06IC00cHg7XG4gICAgICAgIH1cbiAgICAgICAgJjpob3ZlciA+IHNwYW4ge1xuICAgICAgICAgIGJvcmRlci0jeyRkZWZhdWx0LWZsb2F0fS1jb2xvcjogJG9yYml0LW5hdi1hcnJvdy1jb2xvci1ob3ZlcjtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC5vcmJpdC1idWxsZXRzLWNvbnRhaW5lciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxuICAgIC5vcmJpdC1idWxsZXRzIHtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICBtYXJnaW46IDAgYXV0byAzMHB4IGF1dG87XG4gICAgICBvdmVyZmxvdzogaGlkZGVuO1xuICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgdGV4dC1hbGlnbjogY2VudGVyO1xuICAgICAgdG9wOiAxMHB4O1xuXG4gICAgICBsaSB7XG4gICAgICAgIGJhY2tncm91bmQ6ICRvcmJpdC1idWxsZXQtbmF2LWNvbG9yO1xuICAgICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICAgIGRpc3BsYXk6IGlubGluZS1ibG9jaztcbiAgICAgICAgLy8gZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgaGVpZ2h0OiAkb3JiaXQtYnVsbGV0LXJhZGl1cztcbiAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDZweDtcbiAgICAgICAgd2lkdGg6ICRvcmJpdC1idWxsZXQtcmFkaXVzO1xuXG4gICAgICAgIEBpbmNsdWRlIHJhZGl1cygxMDAwcHgpO1xuXG4gICAgICAgICYuYWN0aXZlIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkb3JiaXQtYnVsbGV0LW5hdi1jb2xvci1hY3RpdmU7XG4gICAgICAgIH1cblxuICAgICAgICAmOmxhc3QtY2hpbGQgeyBtYXJnaW4tI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogMDsgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50b3VjaCB7XG4gICAgICAub3JiaXQtY29udGFpbmVyIHtcbiAgICAgICAgLm9yYml0LXByZXYsXG4gICAgICAgIC5vcmJpdC1uZXh0IHsgZGlzcGxheTogbm9uZTsgfVxuICAgICAgfVxuXG4gICAgICAub3JiaXQtYnVsbGV0cyB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICB9XG5cblxuICAgIEBtZWRpYSAjeyRtZWRpdW0tdXB9IHtcblxuICAgICAgLnRvdWNoIHtcbiAgICAgICAgLm9yYml0LWNvbnRhaW5lciB7XG4gICAgICAgICAgLm9yYml0LXByZXYsXG4gICAgICAgICAgLm9yYml0LW5leHQgeyBkaXNwbGF5OiBpbmhlcml0OyB9XG4gICAgICAgIH1cblxuICAgICAgICAub3JiaXQtYnVsbGV0cyB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICB9XG5cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skc21hbGwtb25seX0ge1xuICAgICAgLm9yYml0LXN0YWNrLW9uLXNtYWxsIHtcbiAgICAgICAgLm9yYml0LXNsaWRlcy1jb250YWluZXIge2hlaWdodDogYXV0byAhaW1wb3J0YW50O31cbiAgICAgICAgLm9yYml0LXNsaWRlcy1jb250YWluZXIgPiAqIHtcbiAgICAgICAgICBtYXJnaW46MCAgIWltcG9ydGFudDtcbiAgICAgICAgICBvcGFjaXR5OiAxICFpbXBvcnRhbnQ7XG4gICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICB9XG5cbiAgICAgICAgLm9yYml0LXNsaWRlLW51bWJlciB7XG4gICAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICBAaWYgJG9yYml0LXRpbWVyLWhpZGUtZm9yLXNtYWxsIHtcbiAgICAgICAgIC5vcmJpdC10aW1lcntkaXNwbGF5OiBub25lO31cbiAgICAgIH1cbiAgICAgIEBpZiAkb3JiaXQtbmF2LWhpZGUtZm9yLXNtYWxsIHtcbiAgICAgICAgIC5vcmJpdC1uZXh0LC5vcmJpdC1wcmV2e2Rpc3BsYXk6IG5vbmU7fVxuICAgICAgfVxuICAgICAgQGlmICRvcmJpdC1idWxsZXQtaGlkZS1mb3Itc21hbGwge1xuICAgICAgICAgLm9yYml0LWJ1bGxldHN7ZGlzcGxheTogbm9uZTt9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLXBhZ2luYXRpb24tY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgcGFnaW5hdGlvbiBjb250YWluZXJcbiRwYWdpbmF0aW9uLWhlaWdodDogcmVtLWNhbGMoMjQpICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbWFyZ2luOiByZW0tY2FsYygtNSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgdGhlIGxpc3QtaXRlbSBwcm9wZXJ0aWVzXG4kcGFnaW5hdGlvbi1saS1mbG9hdDogJGRlZmF1bHQtZmxvYXQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saS1oZWlnaHQ6IHJlbS1jYWxjKDI0KSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saS1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpLW1hcmdpbjogcmVtLWNhbGMoNSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSBmb3IgdGhlIHBhZ2luYXRpb24gYW5jaG9yIGxpbmtzXG4kcGFnaW5hdGlvbi1saW5rLXBhZDogcmVtLWNhbGMoMSAxMCAxKSAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmstZm9udC1jb2xvcjogJGFsdW1pbnVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1hY3RpdmUtYmc6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTEwJSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSBmb3IgZGlzYWJsZWQgYW5jaG9yIGxpbmtzXG4kcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWN1cnNvcjogZGVmYXVsdCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtZm9udC1jb2xvcjogJGFsdW1pbnVtICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay11bmF2YWlsYWJsZS1iZy1hY3RpdmU6IHRyYW5zcGFyZW50ICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgZm9yIGN1cnJlbnRseSBzZWxlY3RlZCBhbmNob3IgbGlua3NcbiRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1iYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvciAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWN1cnNvcjogZGVmYXVsdCAhZGVmYXVsdDtcbiRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1hY3RpdmUtYmc6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuXG4vLyBAbWl4aW5zXG4vL1xuLy8gU3R5bGUgdGhlIHBhZ2luYXRpb24gY29udGFpbmVyLiBDdXJyZW50bHkgb25seSB1c2VkIHdoZW4gY2VudGVyaW5nIGVsZW1lbnRzLlxuLy8gJGNlbnRlciAtIERlZmF1bHQ6IGZhbHNlLCBPcHRpb25zOiB0cnVlXG5AbWl4aW4gcGFnaW5hdGlvbi1jb250YWluZXIoJGNlbnRlcjpmYWxzZSkge1xuICBAaWYgJGNlbnRlciB7IHRleHQtYWxpZ246IGNlbnRlcjsgfVxufVxuXG4vLyBAbWl4aW5zXG4vLyBTdHlsZSB1bmF2YWlsYWJsZSBsaXN0IGl0ZW1zXG5AbWl4aW4gcGFnaW5hdGlvbi11bmF2YWlsYWJsZS1pdGVtIHtcbiAgYSwgYnV0dG9uIHtcbiAgICBjdXJzb3I6ICRwYWdpbmF0aW9uLWxpbmstdW5hdmFpbGFibGUtY3Vyc29yO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1saW5rLXVuYXZhaWxhYmxlLWZvbnQtY29sb3I7XG4gIH1cbiAgJjpob3ZlciBhLFxuICAmIGE6Zm9jdXMsXG5cbiAgJjpob3ZlciBidXR0b24sXG4gICYgYnV0dG9uOmZvY3VzXG4gIHsgYmFja2dyb3VuZDogJHBhZ2luYXRpb24tbGluay11bmF2YWlsYWJsZS1iZy1hY3RpdmU7IH1cbn1cbi8vIEBtaXhpbnNcbi8vIFN0eWxlIHRoZSBjdXJyZW50IGxpc3QgaXRlbS4gRG8gbm90IGFzc3VtZSB0aGF0IHRoZSBjdXJyZW50IGl0ZW0gaGFzXG4vLyBhbiBhbmNob3IgPGE+IGVsZW1lbnQuXG4vLyAkaGFzLWFuY2hvciAtIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXG5AbWl4aW4gcGFnaW5hdGlvbi1jdXJyZW50LWl0ZW0oJGhhcy1hbmNob3I6IHRydWUpIHtcbiAgQGlmICRoYXMtYW5jaG9yIHtcbiAgICBhLCBidXR0b24ge1xuICAgICAgYmFja2dyb3VuZDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWJhY2tncm91bmQ7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtY29sb3I7XG4gICAgICBjdXJzb3I6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1jdXJzb3I7XG4gICAgICBmb250LXdlaWdodDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWZvbnQtd2VpZ2h0O1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7IGJhY2tncm91bmQ6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1hY3RpdmUtYmc7IH1cbiAgICB9XG4gIH0gQGVsc2Uge1xuICAgIGJhY2tncm91bmQ6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1iYWNrZ3JvdW5kO1xuICAgIGNvbG9yOiAkcGFnaW5hdGlvbi1saW5rLWN1cnJlbnQtZm9udC1jb2xvcjtcbiAgICBjdXJzb3I6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1jdXJzb3I7XG4gICAgZm9udC13ZWlnaHQ6ICRwYWdpbmF0aW9uLWxpbmstY3VycmVudC1mb250LXdlaWdodDtcbiAgICBoZWlnaHQ6IGF1dG87XG4gICAgcGFkZGluZzogJHBhZ2luYXRpb24tbGluay1wYWQ7XG4gICAgQGluY2x1ZGUgcmFkaXVzO1xuXG4gICAgJjpob3ZlcixcbiAgICAmOmZvY3VzIHsgYmFja2dyb3VuZDogJHBhZ2luYXRpb24tbGluay1jdXJyZW50LWFjdGl2ZS1iZzsgfVxuICB9XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBzZXQgdGhlIHByb3BlcnRpZXMgZm9yIHRoZSBjcmVhdGluZyBGb3VuZGF0aW9uIHBhZ2luYXRpb25cbi8vICRjZW50ZXIgLSBMZWZ0IG9yIGNlbnRlciBhbGlnbiB0aGUgbGkgZWxlbWVudHMuIERlZmF1bHQ6IGZhbHNlXG4vLyAkYmFzZS1zdHlsZSAtIFNldHMgYmFzZSBzdHlsZXMgZm9yIHBhZ2luYXRpb24uIERlZmF1bHQ6IHRydWUsIE9wdGlvbnM6IGZhbHNlXG4vLyAkdXNlLWRlZmF1bHQtY2xhc3NlcyAtIE1ha2VzIHVuYXZhaWxhYmxlICYgY3VycmVudCBjbGFzc2VzIGF2YWlsYWJsZSBmb3IgdXNlLiBEZWZhdWx0OiB0cnVlXG5AbWl4aW4gcGFnaW5hdGlvbigkY2VudGVyOmZhbHNlLCAkYmFzZS1zdHlsZTp0cnVlLCAkdXNlLWRlZmF1bHQtY2xhc3Nlczp0cnVlKSB7XG5cbiAgQGlmICRiYXNlLXN0eWxlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRwYWdpbmF0aW9uLW1hcmdpbjtcbiAgICBtaW4taGVpZ2h0OiAkcGFnaW5hdGlvbi1oZWlnaHQ7XG5cbiAgICBsaSB7XG4gICAgICBjb2xvcjogJHBhZ2luYXRpb24tbGktZm9udC1jb2xvcjtcbiAgICAgIGZvbnQtc2l6ZTogJHBhZ2luYXRpb24tbGktZm9udC1zaXplO1xuICAgICAgaGVpZ2h0OiAkcGFnaW5hdGlvbi1saS1oZWlnaHQ7XG4gICAgICBtYXJnaW4tI3skZGVmYXVsdC1mbG9hdH06ICRwYWdpbmF0aW9uLWxpLW1hcmdpbjtcblxuICAgICAgYSwgYnV0dG9uIHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzO1xuICAgICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihiYWNrZ3JvdW5kLWNvbG9yKTtcbiAgICAgICAgYmFja2dyb3VuZDogbm9uZTtcbiAgICAgICAgY29sb3I6ICRwYWdpbmF0aW9uLWxpbmstZm9udC1jb2xvcjtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogMWVtO1xuICAgICAgICBmb250LXdlaWdodDogbm9ybWFsO1xuICAgICAgICBsaW5lLWhlaWdodDogaW5oZXJpdDtcbiAgICAgICAgcGFkZGluZzogJHBhZ2luYXRpb24tbGluay1wYWQ7XG4gICAgICB9XG5cbiAgICAgICY6aG92ZXIgYSxcbiAgICAgIGE6Zm9jdXMsXG4gICAgICAmOmhvdmVyIGJ1dHRvbixcbiAgICAgIGJ1dHRvbjpmb2N1c1xuICAgICAgeyBiYWNrZ3JvdW5kOiAkcGFnaW5hdGlvbi1saW5rLWFjdGl2ZS1iZzsgfVxuXG4gICAgICBAaWYgJHVzZS1kZWZhdWx0LWNsYXNzZXMge1xuICAgICAgICAmLnVuYXZhaWxhYmxlIHsgQGluY2x1ZGUgcGFnaW5hdGlvbi11bmF2YWlsYWJsZS1pdGVtKCk7IH1cbiAgICAgICAgJi5jdXJyZW50IHsgQGluY2x1ZGUgcGFnaW5hdGlvbi1jdXJyZW50LWl0ZW0oKTsgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIC8vIExlZnQgb3IgY2VudGVyIGFsaWduIHRoZSBsaSBlbGVtZW50c1xuICBsaSB7XG4gICAgQGlmICRjZW50ZXIge1xuICAgICAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgfSBAZWxzZSB7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIGZsb2F0OiAkcGFnaW5hdGlvbi1saS1mbG9hdDtcbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcInBhZ2luYXRpb25cIikge1xuICBAaWYgJGluY2x1ZGUtcGFnaW5hdGlvbi1jbGFzc2VzIHtcbiAgICB1bC5wYWdpbmF0aW9uIHtcbiAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb247XG4gICAgfVxuXG4gICAgLyogUGFnaW5hdGlvbiBjZW50cmVkIHdyYXBwZXIgKi9cbiAgICAucGFnaW5hdGlvbi1jZW50ZXJlZCB7XG4gICAgICBAaW5jbHVkZSBwYWdpbmF0aW9uLWNvbnRhaW5lcih0cnVlKTtcblxuICAgICAgdWwucGFnaW5hdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIHBhZ2luYXRpb24odHJ1ZSwgZmFsc2UpO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLXBhbmVsLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGJhY2tncm91bmQgYW5kIGJvcmRlciBzdHlsZXNcbiRwYW5lbC1iZzogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0O1xuJHBhbmVsLWJvcmRlci1zdHlsZTogc29saWQgIWRlZmF1bHQ7XG4kcGFuZWwtYm9yZGVyLXNpemU6IDFweCAhZGVmYXVsdDtcbiRjYWxsb3V0LXBhbmVsLWJnOiBzY2FsZS1jb2xvcigkcHJpbWFyeS1jb2xvciwgJGxpZ2h0bmVzczogOTQlKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgJSB0byBjb250cm9sIGhvdyBtdWNoIHdlIGRhcmtlbiB0aGluZ3Mgb24gaG92ZXJcbiRwYW5lbC1ib3JkZXItY29sb3I6IHNjYWxlLWNvbG9yKCRwYW5lbC1iZywgJGxpZ2h0bmVzczogLTExJSkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzZXQgZGVmYXVsdCBpbm5lciBwYWRkaW5nIGFuZCBib3R0b20gbWFyZ2luXG4kcGFuZWwtbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMjApICFkZWZhdWx0O1xuJHBhbmVsLXBhZGRpbmc6IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIHNldCBkZWZhdWx0IGZvbnQgY29sb3JzXG4kcGFuZWwtZm9udC1jb2xvcjogJG9pbCAhZGVmYXVsdDtcbiRwYW5lbC1mb250LWNvbG9yLWFsdDogJHdoaXRlICFkZWZhdWx0O1xuXG4kcGFuZWwtaGVhZGVyLWFkanVzdDogdHJ1ZSAhZGVmYXVsdDtcbiRjYWxsb3V0LXBhbmVsLWxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvci1ob3Zlcjogc2NhbGUtY29sb3IoJGNhbGxvdXQtcGFuZWwtbGluay1jb2xvciwgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG4vL1xuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSBwYW5lbHMuXG4vLyAkYmcgLSBTZXRzIHRoZSBwYW5lbCBiYWNrZ3JvdW5kIGNvbG9yLiBEZWZhdWx0OiAkcGFuZWwtcGcgfHwgc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAtNSUpICFkZWZhdWx0XG4vLyAkcGFkZGluZyAtIFNldHMgdGhlIHBhbmVsIHBhZGRpbmcgYW1vdW50LiBEZWZhdWx0OiAkcGFuZWwtcGFkZGluZyB8fCByZW0tY2FsYygyMClcbi8vICRhZGp1c3QgLSBTZXRzIHRoZSBmb250IGNvbG9yIGJhc2VkIG9uIHRoZSBkYXJrbmVzcyBvZiB0aGUgYmcgJiByZXNldHMgaGVhZGVyIGxpbmUtaGVpZ2h0cyBmb3IgcGFuZWxzLiBEZWZhdWx0OiAkcGFuZWwtaGVhZGVyLWFkanVzdCB8fCB0cnVlXG5AbWl4aW4gcGFuZWwoJGJnOiRwYW5lbC1iZywgJHBhZGRpbmc6JHBhbmVsLXBhZGRpbmcsICRhZGp1c3Q6JHBhbmVsLWhlYWRlci1hZGp1c3QsICRib3JkZXI6dHJ1ZSkge1xuXG4gIEBpZiAkYmcge1xuICAgICRiZy1saWdodG5lc3M6IGxpZ2h0bmVzcygkYmcpO1xuXG4gICAgQGlmICRib3JkZXIge1xuICAgICAgYm9yZGVyLXN0eWxlOiAkcGFuZWwtYm9yZGVyLXN0eWxlO1xuICAgICAgYm9yZGVyLXdpZHRoOiAkcGFuZWwtYm9yZGVyLXNpemU7XG4gICAgICBib3JkZXItY29sb3I6ICRwYW5lbC1ib3JkZXItY29sb3I7XG4gICAgfSBAZWxzZSB7XG4gICAgICBib3JkZXItc3R5bGU6IG5vbmU7XG4gICAgICBib3JkZXItd2lkdGg6IDA7XG4gICAgfVxuXG4gICAgbWFyZ2luLWJvdHRvbTogJHBhbmVsLW1hcmdpbi1ib3R0b207XG4gICAgcGFkZGluZzogJHBhZGRpbmc7XG5cbiAgICBiYWNrZ3JvdW5kOiAkYmc7XG4gICAgQGlmICRiZy1saWdodG5lc3MgPj0gNTAlIHsgY29sb3I6ICRwYW5lbC1mb250LWNvbG9yOyB9XG4gICAgQGVsc2UgeyBjb2xvcjogJHBhbmVsLWZvbnQtY29sb3ItYWx0OyB9XG5cbiAgICAvLyBSZXNwZWN0IHRoZSBwYWRkaW5nLCBmb29sLlxuICAgID4gOmZpcnN0LWNoaWxkIHsgbWFyZ2luLXRvcDogMDsgfVxuICAgID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG5cbiAgICBAaWYgJGFkanVzdCB7XG4gICAgICAvLyBXZSBzZXQgdGhlIGZvbnQgY29sb3IgYmFzZWQgb24gdGhlIGRhcmtuZXNzIG9mIHRoZSBiZy5cbiAgICAgIEBpZiAkYmctbGlnaHRuZXNzID49IDUwJSB7XG4gICAgICAgIGgxLCBoMiwgaDMsIGg0LCBoNSwgaDYsIHAsIGxpLCBkbCB7IGNvbG9yOiAkcGFuZWwtZm9udC1jb2xvcjsgfVxuICAgICAgfVxuICAgICAgQGVsc2Uge1xuICAgICAgICBoMSwgaDIsIGgzLCBoNCwgaDUsIGg2LCBwLCBsaSwgZGwgeyBjb2xvcjogJHBhbmVsLWZvbnQtY29sb3ItYWx0OyB9XG4gICAgICB9XG5cbiAgICAgIC8vIHJlc2V0IGhlYWRlciBsaW5lLWhlaWdodHMgZm9yIHBhbmVsc1xuICAgICAgaDEsIGgyLCBoMywgaDQsIGg1LCBoNiB7XG4gICAgICAgIGxpbmUtaGVpZ2h0OiAxOyBtYXJnaW4tYm90dG9tOiByZW0tY2FsYygyMCkgLyAyO1xuICAgICAgICAmLnN1YmhlYWRlciB7IGxpbmUtaGVpZ2h0OiAxLjQ7IH1cbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcInBhbmVsXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtcGFuZWwtY2xhc3NlcyB7XG5cbiAgICAvKiBQYW5lbHMgKi9cbiAgICAucGFuZWwgeyBAaW5jbHVkZSBwYW5lbDtcblxuICAgICAgJi5jYWxsb3V0IHtcbiAgICAgICAgQGluY2x1ZGUgcGFuZWwoJGNhbGxvdXQtcGFuZWwtYmcpO1xuICAgICAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICAgICAgY29sb3I6ICRjYWxsb3V0LXBhbmVsLWxpbmstY29sb3I7XG5cbiAgICAgICAgICAmOmhvdmVyLFxuICAgICAgICAgICY6Zm9jdXMge1xuICAgICAgICAgICAgY29sb3I6ICRjYWxsb3V0LXBhbmVsLWxpbmstY29sb3ItaG92ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucmFkaXVzIHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzO1xuICAgICAgfVxuXG4gICAgfVxuXG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAdmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC1wcmljaW5nLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgYm9yZGVyIGNvbG9yXG4kcHJpY2UtdGFibGUtYm9yZGVyOiBzb2xpZCAxcHggJGdhaW5zYm9ybyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCB0aGUgYm90dG9tIG1hcmdpbiBvZiB0aGUgcHJpY2luZyB0YWJsZVxuJHByaWNlLXRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIHRpdGxlIHN0eWxlc1xuJHByaWNlLXRpdGxlLWJnOiAkb2lsICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLXBhZGRpbmc6IHJlbS1jYWxjKDE1IDIwKSAhZGVmYXVsdDtcbiRwcmljZS10aXRsZS1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLWNvbG9yOiAkc21va2UgIWRlZmF1bHQ7XG4kcHJpY2UtdGl0bGUtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHByaWNlLXRpdGxlLXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiRwcmljZS10aXRsZS1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBwcmljZSBzdHlsZXNcbiRwcmljZS1tb25leS1iZzogJHZhcG9yICFkZWZhdWx0O1xuJHByaWNlLW1vbmV5LXBhZGRpbmc6IHJlbS1jYWxjKDE1IDIwKSAhZGVmYXVsdDtcbiRwcmljZS1tb25leS1hbGlnbjogY2VudGVyICFkZWZhdWx0O1xuJHByaWNlLW1vbmV5LWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJHByaWNlLW1vbmV5LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRwcmljZS1tb25leS1zaXplOiByZW0tY2FsYygzMikgIWRlZmF1bHQ7XG4kcHJpY2UtbW9uZXktZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBkZXNjcmlwdGlvbiBzdHlsZXNcbiRwcmljZS1iZzogJHdoaXRlICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtY29sb3I6ICRtb25zb29uICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtcGFkZGluZzogcmVtLWNhbGMoMTUpICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcbiRwcmljZS1kZXNjLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuJHByaWNlLWRlc2Mtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHByaWNlLWRlc2MtbGluZS1oZWlnaHQ6IDEuNCAhZGVmYXVsdDtcbiRwcmljZS1kZXNjLWJvdHRvbS1ib3JkZXI6IGRvdHRlZCAxcHggJGdhaW5zYm9ybyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIGxpc3QgaXRlbSBzdHlsZXNcbiRwcmljZS1pdGVtLWNvbG9yOiAkb2lsICFkZWZhdWx0O1xuJHByaWNlLWl0ZW0tcGFkZGluZzogcmVtLWNhbGMoMTUpICFkZWZhdWx0O1xuJHByaWNlLWl0ZW0tYWxpZ246IGNlbnRlciAhZGVmYXVsdDtcbiRwcmljZS1pdGVtLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHByaWNlLWl0ZW0td2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHByaWNlLWl0ZW0tYm90dG9tLWJvcmRlcjogZG90dGVkIDFweCAkZ2FpbnNib3JvICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgQ1RBIGFyZWEgc3R5bGVzXG4kcHJpY2UtY3RhLWJnOiAkd2hpdGUgIWRlZmF1bHQ7XG4kcHJpY2UtY3RhLWFsaWduOiBjZW50ZXIgIWRlZmF1bHQ7XG4kcHJpY2UtY3RhLXBhZGRpbmc6IHJlbS1jYWxjKDIwIDIwIDApICFkZWZhdWx0O1xuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIHRoZSBjb250YWluZXIgZWxlbWVudCBmb3IgdGhlIHByaWNpbmcgdGFibGVzXG5AbWl4aW4gcHJpY2luZy10YWJsZS1jb250YWluZXIge1xuICBib3JkZXI6ICRwcmljZS10YWJsZS1ib3JkZXI7XG4gIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgbWFyZ2luLWJvdHRvbTogJHByaWNlLXRhYmxlLW1hcmdpbi1ib3R0b207XG5cbiAgJiAqIHtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICB9XG59XG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY3JlYXRlIHRoZSBwcmljaW5nIHRhYmxlIHRpdGxlIHN0eWxlc1xuQG1peGluIHByaWNpbmctdGFibGUtdGl0bGUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpY2UtdGl0bGUtYmc7XG4gIGNvbG9yOiAkcHJpY2UtdGl0bGUtY29sb3I7XG4gIGZvbnQtZmFtaWx5OiAkcHJpY2UtdGl0bGUtZm9udC1mYW1pbHk7XG4gIGZvbnQtc2l6ZTogJHByaWNlLXRpdGxlLXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkcHJpY2UtdGl0bGUtd2VpZ2h0O1xuICBwYWRkaW5nOiAkcHJpY2UtdGl0bGUtcGFkZGluZztcbiAgdGV4dC1hbGlnbjogJHByaWNlLXRpdGxlLWFsaWduO1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gY29udHJvbCB0aGUgcHJpY2luZyB0YWJsZSBwcmljZSBzdHlsZXNcbkBtaXhpbiBwcmljaW5nLXRhYmxlLXByaWNlIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaWNlLW1vbmV5LWJnO1xuICBjb2xvcjogJHByaWNlLW1vbmV5LWNvbG9yO1xuICBmb250LWZhbWlseTogJHByaWNlLW1vbmV5LWZvbnQtZmFtaWx5O1xuICBmb250LXNpemU6ICRwcmljZS1tb25leS1zaXplO1xuICBmb250LXdlaWdodDogJHByaWNlLW1vbmV5LXdlaWdodDtcbiAgcGFkZGluZzogJHByaWNlLW1vbmV5LXBhZGRpbmc7XG4gIHRleHQtYWxpZ246ICRwcmljZS1tb25leS1hbGlnbjtcbn1cblxuLy8gQG1peGluc1xuLy9cbi8vIFdlIHVzZSB0aGlzIG1peGluIHRvIGNyZWF0ZSB0aGUgZGVzY3JpcHRpb24gc3R5bGVzIGZvciB0aGUgcHJpY2luZyB0YWJsZVxuQG1peGluIHByaWNpbmctdGFibGUtZGVzY3JpcHRpb24ge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpY2UtYmc7XG4gIGJvcmRlci1ib3R0b206ICRwcmljZS1kZXNjLWJvdHRvbS1ib3JkZXI7XG4gIGNvbG9yOiAkcHJpY2UtZGVzYy1jb2xvcjtcbiAgZm9udC1zaXplOiAkcHJpY2UtZGVzYy1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkcHJpY2UtZGVzYy13ZWlnaHQ7XG4gIGxpbmUtaGVpZ2h0OiAkcHJpY2UtZGVzYy1saW5lLWhlaWdodDtcbiAgcGFkZGluZzogJHByaWNlLWRlc2MtcGFkZGluZztcbiAgdGV4dC1hbGlnbjogJHByaWNlLWRlc2MtYWxpZ247XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBzdHlsZSB0aGUgYnVsbGV0IGl0ZW1zIGluIHRoZSBwcmljaW5nIHRhYmxlXG5AbWl4aW4gcHJpY2luZy10YWJsZS1idWxsZXQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJpY2UtYmc7XG4gIGJvcmRlci1ib3R0b206ICRwcmljZS1pdGVtLWJvdHRvbS1ib3JkZXI7XG4gIGNvbG9yOiAkcHJpY2UtaXRlbS1jb2xvcjtcbiAgZm9udC1zaXplOiAkcHJpY2UtaXRlbS1mb250LXNpemU7XG4gIGZvbnQtd2VpZ2h0OiAkcHJpY2UtaXRlbS13ZWlnaHQ7XG4gIHBhZGRpbmc6ICRwcmljZS1pdGVtLXBhZGRpbmc7XG4gIHRleHQtYWxpZ246ICRwcmljZS1pdGVtLWFsaWduO1xufVxuXG4vLyBAbWl4aW5zXG4vL1xuLy8gV2UgdXNlIHRoaXMgbWl4aW4gdG8gc3R5bGUgdGhlIENUQSBhcmVhIG9mIHRoZSBwcmljaW5nIHRhYmxlc1xuQG1peGluIHByaWNpbmctdGFibGUtY3RhIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogJHByaWNlLWN0YS1iZztcbiAgcGFkZGluZzogJHByaWNlLWN0YS1wYWRkaW5nO1xuICB0ZXh0LWFsaWduOiAkcHJpY2UtY3RhLWFsaWduO1xufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwicHJpY2luZy10YWJsZVwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLXByaWNpbmctY2xhc3NlcyB7XG5cbiAgICAvKiBQcmljaW5nIFRhYmxlcyAqL1xuICAgIC5wcmljaW5nLXRhYmxlIHtcbiAgICAgIEBpbmNsdWRlIHByaWNpbmctdGFibGUtY29udGFpbmVyO1xuXG4gICAgICAudGl0bGUgeyBAaW5jbHVkZSBwcmljaW5nLXRhYmxlLXRpdGxlOyB9XG4gICAgICAucHJpY2UgeyBAaW5jbHVkZSBwcmljaW5nLXRhYmxlLXByaWNlOyB9XG4gICAgICAuZGVzY3JpcHRpb24geyBAaW5jbHVkZSBwcmljaW5nLXRhYmxlLWRlc2NyaXB0aW9uOyB9XG4gICAgICAuYnVsbGV0LWl0ZW0geyBAaW5jbHVkZSBwcmljaW5nLXRhYmxlLWJ1bGxldDsgfVxuICAgICAgLmN0YS1idXR0b24geyBAaW5jbHVkZSBwcmljaW5nLXRhYmxlLWN0YTsgfVxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cbiRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIHByb2dyZXNzIGJhciBoZWlnaHRcbiRwcm9ncmVzcy1iYXItaGVpZ2h0OiByZW0tY2FsYygyNSkgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtYmFyLWNvbG9yOiAkdmFwb3IgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBib3JkZXIgc3R5bGVzXG4kcHJvZ3Jlc3MtYmFyLWJvcmRlci1jb2xvcjogc2NhbGUtY29sb3IoJHdoaXRlLCAkbGlnaHRuZXNzOiAyMCUpICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHByb2dyZXNzLWJhci1ib3JkZXItcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIG1hcmdpbiAmIHBhZGRpbmdcbiRwcm9ncmVzcy1iYXItcGFkOiByZW0tY2FsYygyKSAhZGVmYXVsdDtcbiRwcm9ncmVzcy1iYXItbWFyZ2luLWJvdHRvbTogcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gc2V0IHRoZSBtZXRlciBjb2xvcnNcbiRwcm9ncmVzcy1tZXRlci1jb2xvcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kcHJvZ3Jlc3MtbWV0ZXItc2Vjb25kYXJ5LWNvbG9yOiAkc2Vjb25kYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHByb2dyZXNzLW1ldGVyLXN1Y2Nlc3MtY29sb3I6ICRzdWNjZXNzLWNvbG9yICFkZWZhdWx0O1xuJHByb2dyZXNzLW1ldGVyLWFsZXJ0LWNvbG9yOiAkYWxlcnQtY29sb3IgIWRlZmF1bHQ7XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdXAgdGhlIHByb2dyZXNzIGJhciBjb250YWluZXJcbkBtaXhpbiBwcm9ncmVzcy1jb250YWluZXIge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiAkcHJvZ3Jlc3MtYmFyLWNvbG9yO1xuICBib3JkZXI6ICRwcm9ncmVzcy1iYXItYm9yZGVyLXNpemUgJHByb2dyZXNzLWJhci1ib3JkZXItc3R5bGUgJHByb2dyZXNzLWJhci1ib3JkZXItY29sb3I7XG4gIGhlaWdodDogJHByb2dyZXNzLWJhci1oZWlnaHQ7XG4gIG1hcmdpbi1ib3R0b206ICRwcm9ncmVzcy1iYXItbWFyZ2luLWJvdHRvbTtcbiAgcGFkZGluZzogJHByb2dyZXNzLWJhci1wYWQ7XG59XG5cbi8vIEBtaXhpbnNcbi8vXG4vLyAkYmcgLSBEZWZhdWx0OiAkcHJvZ3Jlc3MtbWV0ZXItY29sb3IgfHwgJHByaW1hcnktY29sb3JcbkBtaXhpbiBwcm9ncmVzcy1tZXRlcigkYmc6JHByb2dyZXNzLW1ldGVyLWNvbG9yKSB7XG4gIGJhY2tncm91bmQ6ICRiZztcbiAgZGlzcGxheTogYmxvY2s7XG4gIGhlaWdodDogMTAwJTtcbn1cblxuXG5AaW5jbHVkZSBleHBvcnRzKFwicHJvZ3Jlc3MtYmFyXCIpIHtcbiAgQGlmICRpbmNsdWRlLWh0bWwtbWVkaWEtY2xhc3NlcyB7XG5cbiAgICAvKiBQcm9ncmVzcyBCYXIgKi9cbiAgICAucHJvZ3Jlc3Mge1xuICAgICAgQGluY2x1ZGUgcHJvZ3Jlc3MtY29udGFpbmVyO1xuXG4gICAgICAvLyBNZXRlclxuICAgICAgLm1ldGVyIHtcbiAgICAgICAgQGluY2x1ZGUgcHJvZ3Jlc3MtbWV0ZXI7XG4gICAgICB9XG4gICAgICAmLnNlY29uZGFyeSAubWV0ZXIgeyBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcigkYmc6JHByb2dyZXNzLW1ldGVyLXNlY29uZGFyeS1jb2xvcik7IH1cbiAgICAgICYuc3VjY2VzcyAubWV0ZXIgeyBAaW5jbHVkZSBwcm9ncmVzcy1tZXRlcigkYmc6JHByb2dyZXNzLW1ldGVyLXN1Y2Nlc3MtY29sb3IpOyB9XG4gICAgICAmLmFsZXJ0IC5tZXRlciB7IEBpbmNsdWRlIHByb2dyZXNzLW1ldGVyKCRiZzokcHJvZ3Jlc3MtbWV0ZXItYWxlcnQtY29sb3IpOyB9XG5cbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCRwcm9ncmVzcy1iYXItYm9yZGVyLXJhZGl1cyk7XG4gICAgICAgIC5tZXRlciB7IEBpbmNsdWRlIHJhZGl1cygkcHJvZ3Jlc3MtYmFyLWJvcmRlci1yYWRpdXMgLSAxKTsgfVxuICAgICAgfVxuXG4gICAgICAmLnJvdW5kIHsgQGluY2x1ZGUgcmFkaXVzKDEwMDBweCk7XG4gICAgICAgIC5tZXRlciB7IEBpbmNsdWRlIHJhZGl1cyg5OTlweCk7IH1cbiAgICAgIH1cblxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZ3JpZCc7XG5cbi8vXG4vLyBAbmFtZSBfcmV2ZWFsLnNjc3Ncbi8vIEBkZXBlbmRlbmNpZXMgX2dsb2JhbC5zY3NzXG4vL1xuXG4kaW5jbHVkZS1odG1sLXJldmVhbC1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIHRoZSBzdHlsZSBvZiB0aGUgcmV2ZWFsIG92ZXJsYXkuXG4kcmV2ZWFsLW92ZXJsYXktYmc6IHJnYmEoJGJsYWNrLCAuNDUpICFkZWZhdWx0O1xuJHJldmVhbC1vdmVybGF5LWJnLW9sZDogJGJsYWNrICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgc3R5bGUgb2YgdGhlIG1vZGFsIGl0c2VsZi5cbiRyZXZlYWwtbW9kYWwtYmc6ICR3aGl0ZSAhZGVmYXVsdDtcbiRyZXZlYWwtcG9zaXRpb24tdG9wOiByZW0tY2FsYygxMDApICFkZWZhdWx0O1xuJHJldmVhbC1kZWZhdWx0LXdpZHRoOiA4MCUgIWRlZmF1bHQ7XG4kcmV2ZWFsLW1heC13aWR0aDogJHJvdy13aWR0aCAhZGVmYXVsdDtcbiRyZXZlYWwtbW9kYWwtcGFkZGluZzogcmVtLWNhbGMoMzApICFkZWZhdWx0O1xuJHJldmVhbC1ib3gtc2hhZG93OiAwIDAgMTBweCByZ2JhKCRibGFjaywuNCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBzdHlsZSB0aGUgcmV2ZWFsIGNsb3NlIGJ1dHRvblxuJHJldmVhbC1jbG9zZS1mb250LXNpemU6IHJlbS1jYWxjKDQwKSAhZGVmYXVsdDtcbiRyZXZlYWwtY2xvc2UtdG9wOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kcmV2ZWFsLWNsb3NlLXNpZGU6IHJlbS1jYWxjKDIyKSAhZGVmYXVsdDtcbiRyZXZlYWwtY2xvc2UtY29sb3I6ICRiYXNlICFkZWZhdWx0O1xuJHJldmVhbC1jbG9zZS13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBzZXQgdGhlIGRlZmF1bHQgcmFkaXVzIHVzZWQgdGhyb3VnaG91dCB0aGUgY29yZS5cbiRyZXZlYWwtcmFkaXVzOiAkZ2xvYmFsLXJhZGl1cyAhZGVmYXVsdDtcbiRyZXZlYWwtcm91bmQ6ICRnbG9iYWwtcm91bmRlZCAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgdGhlIG1vZGFsIGJvcmRlclxuJHJldmVhbC1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHJldmVhbC1ib3JkZXItd2lkdGg6IDFweCAhZGVmYXVsdDtcbiRyZXZlYWwtYm9yZGVyLWNvbG9yOiAkc3RlZWwgIWRlZmF1bHQ7XG5cbiRyZXZlYWwtbW9kYWwtY2xhc3M6IFwicmV2ZWFsLW1vZGFsXCIgIWRlZmF1bHQ7XG4kY2xvc2UtcmV2ZWFsLW1vZGFsLWNsYXNzOiBcImNsb3NlLXJldmVhbC1tb2RhbFwiICFkZWZhdWx0O1xuXG4vLyBTZXQgYmFzZSB6LWluZGV4XG4kei1pbmRleC1iYXNlOiAxMDA1O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIHRoZSByZXZlYWwgYmFja2dyb3VuZCBvdmVybGF5IHN0eWxlc1xuQG1peGluIHJldmVhbC1iZyggJGluY2x1ZGUtei1pbmRleC12YWx1ZTogdHJ1ZSApIHtcbiAgLy8gcG9zaXRpb246IGFic29sdXRlOyAvLyBhbGxvd3MgbW9kYWwgYmFja2dyb3VuZCB0byBleHRlbmQgYmV5b25kIHdpbmRvdyBwb3NpdGlvblxuICBiYWNrZ3JvdW5kOiAkcmV2ZWFsLW92ZXJsYXktYmctb2xkOyAvLyBBdXRvcHJlZml4ZXIgc2hvdWxkIGJlIHVzZWQgdG8gYXZvaWQgc3VjaCB2YXJpYWJsZXMgbmVlZGVkIHdoZW4gRm91bmRhdGlvbiBmb3IgU2l0ZXMgY2FuIGRvIHNvIGluIHRoZSBuZWFyIGZ1dHVyZS5cbiAgYmFja2dyb3VuZDogJHJldmVhbC1vdmVybGF5LWJnO1xuICBib3R0b206IDA7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIGxlZnQ6IDA7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgcmlnaHQ6IDA7XG4gIHRvcDogMDtcbiAgei1pbmRleDogaWYoICRpbmNsdWRlLXotaW5kZXgtdmFsdWUsICR6LWluZGV4LWJhc2UgLSAxLCBhdXRvICk7XG4gICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xufVxuXG4vLyBXZSB1c2UgdGhpcyBtaXhpbiB0byBjcmVhdGUgdGhlIHN0cnVjdHVyZSBvZiBhIHJldmVhbCBtb2RhbFxuLy9cbi8vICRiYXNlLXN0eWxlIC0gUHJvdmlkZXMgcmV2ZWFsIGJhc2Ugc3R5bGVzLCBjYW4gYmUgc2V0IHRvIGZhbHNlIHRvIG92ZXJyaWRlLiBEZWZhdWx0OiB0cnVlLCBPcHRpb25zOiBmYWxzZVxuLy8gJHdpZHRoIC0gU2V0cyByZXZlYWwgd2lkdGggRGVmYXVsdDogJHJldmVhbC1kZWZhdWx0LXdpZHRoIHx8IDgwJVxuLy9cbkBtaXhpbiByZXZlYWwtbW9kYWwtYmFzZSggJGJhc2Utc3R5bGU6IHRydWUsICR3aWR0aDokcmV2ZWFsLWRlZmF1bHQtd2lkdGgsICRtYXgtd2lkdGg6JHJldmVhbC1tYXgtd2lkdGgsICRib3JkZXItcmFkaXVzOiAkcmV2ZWFsLXJhZGl1cykge1xuICBAaWYgJGJhc2Utc3R5bGUge1xuICAgIGJvcmRlci1yYWRpdXM6ICRib3JkZXItcmFkaXVzO1xuICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgIHRvcDowO1xuICAgIHZpc2liaWxpdHk6IGhpZGRlbjtcbiAgICB3aWR0aDogMTAwJTtcbiAgICB6LWluZGV4OiAkei1pbmRleC1iYXNlO1xuICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuXG4gICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcbiAgICAgIG1pbi1oZWlnaHQ6MTAwdmg7XG4gICAgfVxuXG4gICAgLy8gTWFrZSBzdXJlIHJvd3MgZG9uJ3QgaGF2ZSBhIG1pbi13aWR0aCBvbiB0aGVtXG4gICAgLmNvbHVtbiwgLmNvbHVtbnMgeyBtaW4td2lkdGg6IDA7IH1cblxuICAgIC8vIEdldCByaWQgb2YgbWFyZ2luIGZyb20gZmlyc3QgYW5kIGxhc3QgZWxlbWVudCBpbnNpZGUgbW9kYWxcbiAgICA+IDpmaXJzdC1jaGlsZCB7IG1hcmdpbi10b3A6IDA7IH1cblxuICAgID4gOmxhc3QtY2hpbGQgeyBtYXJnaW4tYm90dG9tOiAwOyB9XG4gIH1cblxuICBAaWYgJHdpZHRoIHtcbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICBsZWZ0OiAwO1xuICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICBtYXgtd2lkdGg6ICRtYXgtd2lkdGg7XG4gICAgICByaWdodDogMDtcbiAgICAgIHdpZHRoOiAkd2lkdGg7XG4gICAgfVxuICB9XG59XG5cbi8vIFdlIHVzZSB0aGlzIHRvIHN0eWxlIHRoZSByZXZlYWwgbW9kYWwgZGVmYXVsdHNcbi8vXG4vLyAkYmcgLSBTZXRzIGJhY2tncm91bmQgY29sb3Igb2YgcmV2ZWFsIG1vZGFsLiBEZWZhdWx0OiAkcmV2ZWFsLW1vZGFsLWJnIHx8ICR3aGl0ZVxuLy8gJHBhZGRpbmcgLSBQYWRkaW5nIHRvIGFwcGx5IHRvIHJldmVhbCBtb2RhbC4gRGVmYXVsdDogJHJldmVhbC1tb2RhbC1wYWRkaW5nLlxuLy8gJGJvcmRlciAtIENob29zZSB3aGV0aGVyIHJldmVhbCB1c2VzIGEgYm9yZGVyLiBEZWZhdWx0OiB0cnVlLCBPcHRpb25zOiBmYWxzZVxuLy8gJGJvcmRlci1zdHlsZSAtIFNldCByZXZlYWwgYm9yZGVyIHN0eWxlLiBEZWZhdWx0OiAkcmV2ZWFsLWJvcmRlci1zdHlsZSB8fCBzb2xpZFxuLy8gJGJvcmRlci13aWR0aCAtIFdpZHRoIG9mIGJvcmRlciAoaS5lLiAxcHgpLiBEZWZhdWx0OiAkcmV2ZWFsLWJvcmRlci13aWR0aC5cbi8vICRib3JkZXItY29sb3IgLSBDb2xvciBvZiBib3JkZXIuIERlZmF1bHQ6ICRyZXZlYWwtYm9yZGVyLWNvbG9yLlxuLy8gJGJveC1zaGFkb3cgLSBDaG9vc2Ugd2hldGhlciBvciBub3QgdG8gaW5jbHVkZSB0aGUgZGVmYXVsdCBib3gtc2hhZG93LiBEZWZhdWx0OiB0cnVlLCBPcHRpb25zOiBmYWxzZVxuLy8gJHJhZGl1cyAtIElmIHRydWUsIHNldCB0byBtb2RhbCByYWRpdXMgd2hpY2ggaXMgJGdsb2JhbC1yYWRpdXMgfHwgZXhwbGljaXRseSBzZXQgcmFkaXVzIGFtb3VudCBpbiBweCAoZXguICRyYWRpdXM6MTBweCkuIERlZmF1bHQ6IGZhbHNlXG4vLyAkdG9wLW9mZnNldCAtIERlZmF1bHQ6ICRyZXZlYWwtcG9zaXRpb24tdG9wIHx8IDUwcHhcbkBtaXhpbiByZXZlYWwtbW9kYWwtc3R5bGUoXG4gICRiZzpmYWxzZSxcbiAgJHBhZGRpbmc6ZmFsc2UsXG4gICRib3JkZXI6ZmFsc2UsXG4gICRib3JkZXItc3R5bGU6JHJldmVhbC1ib3JkZXItc3R5bGUsXG4gICRib3JkZXItd2lkdGg6JHJldmVhbC1ib3JkZXItd2lkdGgsXG4gICRib3JkZXItY29sb3I6JHJldmVhbC1ib3JkZXItY29sb3IsXG4gICRib3gtc2hhZG93OmZhbHNlLFxuICAkcmFkaXVzOmZhbHNlLFxuICAkdG9wLW9mZnNldDpmYWxzZSkge1xuXG4gIEBpZiAkYmcgeyBiYWNrZ3JvdW5kLWNvbG9yOiAkYmc7IH1cbiAgQGlmICRwYWRkaW5nICE9IGZhbHNlIHsgcGFkZGluZzogJHBhZGRpbmc7IH1cblxuICBAaWYgJGJvcmRlciB7IGJvcmRlcjogJGJvcmRlci1zdHlsZSAkYm9yZGVyLXdpZHRoICRib3JkZXItY29sb3I7IH1cblxuICAvLyBXZSBjYW4gY2hvb3NlIHdoZXRoZXIgb3Igbm90IHRvIGluY2x1ZGUgdGhlIGRlZmF1bHQgYm94LXNoYWRvdy5cbiAgQGlmICRib3gtc2hhZG93IHtcbiAgICBib3gtc2hhZG93OiAkcmV2ZWFsLWJveC1zaGFkb3c7XG4gIH1cblxuICAvLyBXZSBjYW4gY29udHJvbCBob3cgbXVjaCByYWRpdXMgaXMgdXNlZCBvbiB0aGUgbW9kYWxcbiAgQGlmICRyYWRpdXMgPT0gdHJ1ZSB7IEBpbmNsdWRlIHJhZGl1cygkcmV2ZWFsLXJhZGl1cyk7IH1cbiAgQGVsc2UgaWYgJHJhZGl1cyB7IEBpbmNsdWRlIHJhZGl1cygkcmFkaXVzKTsgfVxuXG4gIEBpZiAkdG9wLW9mZnNldCB7XG4gICAgQG1lZGlhICN7JG1lZGl1bS11cH0ge1xuICAgICAgdG9wOiAkdG9wLW9mZnNldDtcbiAgICB9XG4gIH1cbn1cblxuLy8gV2UgdXNlIHRoaXMgdG8gY3JlYXRlIGEgY2xvc2UgYnV0dG9uIGZvciB0aGUgcmV2ZWFsIG1vZGFsXG4vL1xuLy8gJGNvbG9yIC0gRGVmYXVsdDogJHJldmVhbC1jbG9zZS1jb2xvciB8fCAkYmFzZVxuQG1peGluIHJldmVhbC1jbG9zZSgkY29sb3I6JHJldmVhbC1jbG9zZS1jb2xvcikge1xuICBjb2xvcjogJGNvbG9yO1xuICBjdXJzb3I6ICRjdXJzb3ItcG9pbnRlci12YWx1ZTtcbiAgZm9udC1zaXplOiAkcmV2ZWFsLWNsb3NlLWZvbnQtc2l6ZTtcbiAgZm9udC13ZWlnaHQ6ICRyZXZlYWwtY2xvc2Utd2VpZ2h0O1xuICBsaW5lLWhlaWdodDogMTtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICB0b3A6ICRyZXZlYWwtY2xvc2UtdG9wO1xuICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkcmV2ZWFsLWNsb3NlLXNpZGU7XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJyZXZlYWxcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1yZXZlYWwtY2xhc3NlcyB7XG5cbiAgICAvLyBSZXZlYWwgTW9kYWxzXG4gICAgLnJldmVhbC1tb2RhbC1iZyB7IEBpbmNsdWRlIHJldmVhbC1iZzsgfVxuXG4gICAgLiN7JHJldmVhbC1tb2RhbC1jbGFzc30ge1xuICAgICAgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLWJhc2U7XG4gICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtc3R5bGUoXG4gICAgICAgICRiZzokcmV2ZWFsLW1vZGFsLWJnLFxuICAgICAgICAkcGFkZGluZzokcmV2ZWFsLW1vZGFsLXBhZGRpbmcsXG4gICAgICAgICRib3JkZXI6dHJ1ZSxcbiAgICAgICAgJGJveC1zaGFkb3c6dHJ1ZSxcbiAgICAgICAgJHJhZGl1czpmYWxzZSxcbiAgICAgICAgJHRvcC1vZmZzZXQ6JHJldmVhbC1wb3NpdGlvbi10b3BcbiAgICAgICk7XG5cbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXN0eWxlKCRyYWRpdXM6dHJ1ZSk7IH1cbiAgICAgICYucm91bmQgIHsgQGluY2x1ZGUgcmV2ZWFsLW1vZGFsLXN0eWxlKCRyYWRpdXM6JHJldmVhbC1yb3VuZCk7IH1cbiAgICAgICYuY29sbGFwc2UgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtc3R5bGUoJHBhZGRpbmc6MCk7IH1cbiAgICAgICYudGlueSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZShmYWxzZSwgMzAlKTsgfVxuICAgICAgJi5zbWFsbCB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA0MCUpOyB9XG4gICAgICAmLm1lZGl1bSAgeyBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZShmYWxzZSwgNjAlKTsgfVxuICAgICAgJi5sYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA3MCUpOyB9XG4gICAgICAmLnhsYXJnZSB7IEBpbmNsdWRlIHJldmVhbC1tb2RhbC1iYXNlKGZhbHNlLCA5NSUpOyB9XG4gICAgICAmLmZ1bGwge1xuICAgICAgICBAaW5jbHVkZSByZXZlYWwtbW9kYWwtYmFzZShmYWxzZSwgMTAwJSk7XG4gICAgICAgIGhlaWdodDogMTAwdmg7XG4gICAgICAgIGhlaWdodDoxMDAlO1xuICAgICAgICBsZWZ0OjA7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAwICFpbXBvcnRhbnQ7XG4gICAgICAgIG1heC13aWR0aDogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgICBtaW4taGVpZ2h0OjEwMHZoO1xuICAgICAgICB0b3A6MDtcbiAgICAgIH1cblxuICAgICAgLy8gTW9kYWxzIHB1c2hlZCB0byBiYWNrXG4gICAgICAmLnRvYmFjayB7XG4gICAgICAgIHotaW5kZXg6ICR6LWluZGV4LWJhc2UgLSAyO1xuICAgICAgfVxuXG4gICAgICAuI3skY2xvc2UtcmV2ZWFsLW1vZGFsLWNsYXNzfSB7IEBpbmNsdWRlIHJldmVhbC1jbG9zZTsgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtbmF2LWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoaXMgdG8gY29udHJvbCBwYWRkaW5nLlxuJHNpZGUtbmF2LXBhZGRpbmc6IHJlbS1jYWxjKDE0IDApICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBsaXN0IHN0eWxlcy5cbiRzaWRlLW5hdi1saXN0LXR5cGU6IG5vbmUgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtbGlzdC1wb3NpdGlvbjogb3V0c2lkZSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1saXN0LW1hcmdpbjogcmVtLWNhbGMoMCAwIDcgMCkgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGxpbmsgc3R5bGVzLlxuJHNpZGUtbmF2LWxpbmstY29sb3I6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstY29sb3ItYWN0aXZlOiBzY2FsZS1jb2xvcigkc2lkZS1uYXYtbGluay1jb2xvciwgJGxpZ2h0bmVzczogMzAlKSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1saW5rLWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkc2lkZS1uYXYtbGluay1jb2xvciwgJGxpZ2h0bmVzczogMzAlKSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1saW5rLWJnLWhvdmVyOiBoc2xhKDAsIDAsIDAsIC4wMjUpICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstbWFyZ2luOiAwICFkZWZhdWx0O1xuJHNpZGUtbmF2LWxpbmstcGFkZGluZzogcmVtLWNhbGMoNyAxNCkgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC1zaXplOiByZW0tY2FsYygxNCkgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC13ZWlnaHQtYWN0aXZlOiAkc2lkZS1uYXYtZm9udC13ZWlnaHQgIWRlZmF1bHQ7XG4kc2lkZS1uYXYtZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuJHNpZGUtbmF2LWZvbnQtZmFtaWx5LWFjdGl2ZTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBoZWFkaW5nIHN0eWxlcy5cbiRzaWRlLW5hdi1oZWFkaW5nLWNvbG9yOiAkc2lkZS1uYXYtbGluay1jb2xvciAhZGVmYXVsdDtcbiRzaWRlLW5hdi1oZWFkaW5nLWZvbnQtc2l6ZTogJHNpZGUtbmF2LWZvbnQtc2l6ZSAhZGVmYXVsdDtcbiRzaWRlLW5hdi1oZWFkaW5nLWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuJHNpZGUtbmF2LWhlYWRpbmctdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZSAhZGVmYXVsdDtcblxuLy8gV2UgdXNlIHRoZXNlIHRvIGNvbnRyb2wgYm9yZGVyIHN0eWxlc1xuJHNpZGUtbmF2LWRpdmlkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJHNpZGUtbmF2LWRpdmlkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHNpZGUtbmF2LWRpdmlkZXItY29sb3I6IHNjYWxlLWNvbG9yKCR3aGl0ZSwgJGxpZ2h0bmVzczogLTEwJSkgIWRlZmF1bHQ7XG5cblxuLy9cbi8vIEBtaXhpbnNcbi8vXG5cblxuLy8gV2UgdXNlIHRoaXMgdG8gc3R5bGUgdGhlIHNpZGUtbmF2XG4vL1xuLy8gJGRpdmlkZXItY29sb3IgLSBCb3JkZXIgY29sb3Igb2YgZGl2aWRlci4gRGVmYXVsdDogJHNpZGUtbmF2LWRpdmlkZXItY29sb3IuXG4vLyAkZm9udC1zaXplIC0gRm9udCBzaXplIG9mIG5hdiBpdGVtcy4gRGVmYXVsdDogJHNpZGUtbmF2LWZvbnQtc2l6ZS5cbi8vICRsaW5rLWNvbG9yIC0gQ29sb3Igb2YgbmF2aWdhdGlvbiBsaW5rcy4gRGVmYXVsdDogJHNpZGUtbmF2LWxpbmstY29sb3IuXG4vLyAkbGluay1jb2xvci1ob3ZlciAtIENvbG9yIG9mIG5hdmlnYXRpb24gbGlua3Mgd2hlbiBob3ZlcmVkLiBEZWZhdWx0OiAkc2lkZS1uYXYtbGluay1jb2xvci1ob3Zlci5cbkBtaXhpbiBzaWRlLW5hdihcbiAgJGRpdmlkZXItY29sb3I6JHNpZGUtbmF2LWRpdmlkZXItY29sb3IsXG4gICRmb250LXNpemU6JHNpZGUtbmF2LWZvbnQtc2l6ZSxcbiAgJGxpbmstY29sb3I6JHNpZGUtbmF2LWxpbmstY29sb3IsXG4gICRsaW5rLWNvbG9yLWFjdGl2ZTokc2lkZS1uYXYtbGluay1jb2xvci1hY3RpdmUsXG4gICRsaW5rLWNvbG9yLWhvdmVyOiRzaWRlLW5hdi1saW5rLWNvbG9yLWhvdmVyLFxuICAkbGluay1iZy1ob3Zlcjokc2lkZS1uYXYtbGluay1iZy1ob3Zlcikge1xuICBkaXNwbGF5OiBibG9jaztcbiAgZm9udC1mYW1pbHk6ICRzaWRlLW5hdi1mb250LWZhbWlseTtcbiAgbGlzdC1zdHlsZS1wb3NpdGlvbjogJHNpZGUtbmF2LWxpc3QtcG9zaXRpb247XG4gIGxpc3Qtc3R5bGUtdHlwZTogJHNpZGUtbmF2LWxpc3QtdHlwZTtcbiAgbWFyZ2luOiAwO1xuICBwYWRkaW5nOiAkc2lkZS1uYXYtcGFkZGluZztcblxuICBsaSB7XG4gICAgZm9udC1zaXplOiAkZm9udC1zaXplO1xuICAgIGZvbnQtd2VpZ2h0OiAkc2lkZS1uYXYtZm9udC13ZWlnaHQ7XG4gICAgbWFyZ2luOiAkc2lkZS1uYXYtbGlzdC1tYXJnaW47XG5cbiAgICBhOm5vdCguYnV0dG9uKSB7XG4gICAgICBjb2xvcjogJGxpbmstY29sb3I7XG4gICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgIG1hcmdpbjogJHNpZGUtbmF2LWxpbmstbWFyZ2luO1xuICAgICAgcGFkZGluZzogJHNpZGUtbmF2LWxpbmstcGFkZGluZztcbiAgICAgICY6aG92ZXIsXG4gICAgICAmOmZvY3VzIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGxpbmstYmctaG92ZXI7XG4gICAgICAgIGNvbG9yOiAkbGluay1jb2xvci1ob3ZlcjtcbiAgICAgIH1cbiAgICAgICY6YWN0aXZlIHtcbiAgICAgICAgY29sb3I6ICRsaW5rLWNvbG9yLWFjdGl2ZTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSA+IGE6Zmlyc3QtY2hpbGQ6bm90KC5idXR0b24pIHtcbiAgICAgIGNvbG9yOiAkc2lkZS1uYXYtbGluay1jb2xvci1hY3RpdmU7XG4gICAgICBmb250LWZhbWlseTogJHNpZGUtbmF2LWZvbnQtZmFtaWx5LWFjdGl2ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkc2lkZS1uYXYtZm9udC13ZWlnaHQtYWN0aXZlO1xuICAgIH1cblxuICAgICYuZGl2aWRlciB7XG4gICAgICBib3JkZXItdG9wOiAkc2lkZS1uYXYtZGl2aWRlci1zaXplICRzaWRlLW5hdi1kaXZpZGVyLXN0eWxlO1xuICAgICAgaGVpZ2h0OiAwO1xuICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgIHBhZGRpbmc6IDA7XG4gICAgICBib3JkZXItdG9wLWNvbG9yOiAkZGl2aWRlci1jb2xvcjtcbiAgICB9XG5cbiAgICAmLmhlYWRpbmcge1xuICAgICAgY29sb3I6ICRzaWRlLW5hdi1oZWFkaW5nLWNvbG9yO1xuICAgICAgZm9udDoge1xuICAgICAgICBzaXplOiAkc2lkZS1uYXYtaGVhZGluZy1mb250LXNpemU7XG4gICAgICAgIHdlaWdodDogJHNpZGUtbmF2LWhlYWRpbmctZm9udC13ZWlnaHQ7XG4gICAgICB9XG4gICAgICB0ZXh0LXRyYW5zZm9ybTogJHNpZGUtbmF2LWhlYWRpbmctdGV4dC10cmFuc2Zvcm07XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJzaWRlLW5hdlwiKSB7XG4gIEBpZiAkaW5jbHVkZS1odG1sLW5hdi1jbGFzc2VzIHtcbiAgICAuc2lkZS1uYXYge0BpbmNsdWRlIHNpZGUtbmF2O31cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEBuYW1lIF9zdWItbmF2LnNjc3Ncbi8vIEBkZXBlbmRlbmNpZXMgX2dsb2JhbC5zY3NzXG4vL1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cblxuJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCBtYXJnaW4gYW5kIHBhZGRpbmdcbiRzdWItbmF2LWxpc3QtbWFyZ2luOiByZW0tY2FsYygtNCAwIDE4KSAhZGVmYXVsdDtcbiRzdWItbmF2LWxpc3QtcGFkZGluZy10b3A6IHJlbS1jYWxjKDQpICFkZWZhdWx0O1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjb250cm9sIHRoZSBkZWZpbml0aW9uXG4kc3ViLW5hdi1mb250LWZhbWlseTogJGJvZHktZm9udC1mYW1pbHkgIWRlZmF1bHQ7XG4kc3ViLW5hdi1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiRzdWItbmF2LWZvbnQtY29sb3I6ICRhbHVtaW51bSAhZGVmYXVsdDtcbiRzdWItbmF2LWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHN1Yi1uYXYtdGV4dC1kZWNvcmF0aW9uOiBub25lICFkZWZhdWx0O1xuJHN1Yi1uYXYtcGFkZGluZzogcmVtLWNhbGMoMyAxNikgIWRlZmF1bHQ7XG4kc3ViLW5hdi1ib3JkZXItcmFkaXVzOiAzcHggIWRlZmF1bHQ7XG4kc3ViLW5hdi1mb250LWNvbG9yLWhvdmVyOiBzY2FsZS1jb2xvcigkc3ViLW5hdi1mb250LWNvbG9yLCAkbGlnaHRuZXNzOiAtMjUlKSAhZGVmYXVsdDtcblxuXG4vLyBXZSB1c2UgdGhlc2UgdG8gY29udHJvbCB0aGUgYWN0aXZlIGl0ZW0gc3R5bGVzXG5cbiRzdWItbmF2LWFjdGl2ZS1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiRzdWItbmF2LWFjdGl2ZS1iZzogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kc3ViLW5hdi1hY3RpdmUtYmctaG92ZXI6IHNjYWxlLWNvbG9yKCRzdWItbmF2LWFjdGl2ZS1iZywgJGxpZ2h0bmVzczogLTE0JSkgIWRlZmF1bHQ7XG4kc3ViLW5hdi1hY3RpdmUtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiRzdWItbmF2LWFjdGl2ZS1wYWRkaW5nOiAkc3ViLW5hdi1wYWRkaW5nICFkZWZhdWx0O1xuJHN1Yi1uYXYtYWN0aXZlLWN1cnNvcjogZGVmYXVsdCAhZGVmYXVsdDtcblxuJHN1Yi1uYXYtaXRlbS1kaXZpZGVyOiBcIlwiICFkZWZhdWx0O1xuJHN1Yi1uYXYtaXRlbS1kaXZpZGVyLW1hcmdpbjogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuXG4vLyBDcmVhdGUgYSBzdWItbmF2IGl0ZW1cbi8vXG4vLyAkZm9udC1jb2xvciAtIEZvbnQgY29sb3IuIERlZmF1bHQ6ICRzdWItbmF2LWZvbnQtY29sb3IuXG4vLyAkZm9udC1zaXplIC0gRm9udCBzaXplLiBEZWZhdWx0OiAkc3ViLW5hdi1mb250LXNpemUuXG4vLyAkYWN0aXZlLWJnIC0gQmFja2dyb3VuZCBvZiBhY3RpdmUgbmF2IGl0ZW0uIERlZmF1bHQ6ICRzdWItbmF2LWFjdGl2ZS1iZy5cbi8vICRhY3RpdmUtYmctaG92ZXIgLSBCYWNrZ3JvdW5kIG9mIGFjdGl2ZSBuYXYgaXRlbSwgd2hlbiBob3ZlcmVkLiBEZWZhdWx0OiAkc3ViLW5hdi1hY3RpdmUtYmctaG92ZXIuXG5AbWl4aW4gc3ViLW5hdihcbiAgJGZvbnQtY29sb3I6ICRzdWItbmF2LWZvbnQtY29sb3IsXG4gICRmb250LXNpemU6ICRzdWItbmF2LWZvbnQtc2l6ZSxcbiAgJGFjdGl2ZS1iZzogJHN1Yi1uYXYtYWN0aXZlLWJnLFxuICAkYWN0aXZlLWJnLWhvdmVyOiAkc3ViLW5hdi1hY3RpdmUtYmctaG92ZXIpIHtcbiAgZGlzcGxheTogYmxvY2s7XG4gIG1hcmdpbjogJHN1Yi1uYXYtbGlzdC1tYXJnaW47XG4gIG92ZXJmbG93OiBoaWRkZW47XG4gIHBhZGRpbmctdG9wOiAkc3ViLW5hdi1saXN0LXBhZGRpbmctdG9wO1xuICB3aWR0aDogYXV0bztcblxuICBkdCB7XG4gICAgdGV4dC10cmFuc2Zvcm06IHVwcGVyY2FzZTtcbiAgfVxuXG4gIGR0LFxuICBkZCxcbiAgbGkge1xuICAgIGNvbG9yOiAkZm9udC1jb2xvcjtcbiAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgZm9udC1mYW1pbHk6ICRzdWItbmF2LWZvbnQtZmFtaWx5O1xuICAgIGZvbnQtc2l6ZTogJGZvbnQtc2l6ZTtcbiAgICBmb250LXdlaWdodDogJHN1Yi1uYXYtZm9udC13ZWlnaHQ7XG4gICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiByZW0tY2FsYygxNik7XG4gICAgbWFyZ2luLWJvdHRvbTogMDtcblxuICAgIGEge1xuICAgICAgY29sb3I6ICRzdWItbmF2LWZvbnQtY29sb3I7XG4gICAgICBwYWRkaW5nOiAkc3ViLW5hdi1wYWRkaW5nO1xuICAgICAgdGV4dC1kZWNvcmF0aW9uOiAkc3ViLW5hdi10ZXh0LWRlY29yYXRpb247XG5cbiAgICAgICY6aG92ZXIge1xuICAgICAgICBjb2xvcjogJHN1Yi1uYXYtZm9udC1jb2xvci1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAmLmFjdGl2ZSBhIHtcbiAgICAgIEBpbmNsdWRlIHJhZGl1cygkc3ViLW5hdi1ib3JkZXItcmFkaXVzKTtcbiAgICAgIGJhY2tncm91bmQ6ICRhY3RpdmUtYmc7XG4gICAgICBjb2xvcjogJHN1Yi1uYXYtYWN0aXZlLWNvbG9yO1xuICAgICAgY3Vyc29yOiAkc3ViLW5hdi1hY3RpdmUtY3Vyc29yO1xuICAgICAgZm9udC13ZWlnaHQ6ICRzdWItbmF2LWFjdGl2ZS1mb250LXdlaWdodDtcbiAgICAgIHBhZGRpbmc6ICRzdWItbmF2LWFjdGl2ZS1wYWRkaW5nO1xuXG4gICAgICAmOmhvdmVyIHtcbiAgICAgICAgYmFja2dyb3VuZDogJGFjdGl2ZS1iZy1ob3ZlcjtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBAaWYgJHN1Yi1uYXYtaXRlbS1kaXZpZGVyICE9IFwiXCIge1xuICAgICAgbWFyZ2luLSN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuXG4gICAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiI3skc3ViLW5hdi1pdGVtLWRpdmlkZXJ9XCI7XG4gICAgICAgIG1hcmdpbjogMCAkc3ViLW5hdi1pdGVtLWRpdmlkZXItbWFyZ2luO1xuICAgICAgfVxuXG4gICAgICAmOmZpcnN0LWNoaWxkOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXCI7XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgIH1cbiAgICB9XG4gIH1cbn1cblxuQGluY2x1ZGUgZXhwb3J0cyhcInN1Yi1uYXZcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1uYXYtY2xhc3NlcyB7XG4gICAgLnN1Yi1uYXYgeyBAaW5jbHVkZSBzdWItbmF2OyB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5cbi8vXG4vLyBAbmFtZSBfdGFibGVzLnNjc3Ncbi8vIEBkZXBlbmRlbmNpZXMgX2dsb2JhbC5zY3NzXG4vL1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cblxuJGluY2x1ZGUtaHRtbC10YWJsZS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIGJhY2tncm91bmQgY29sb3IgZm9yIHRoZSB0YWJsZSBhbmQgZXZlbiByb3dzXG4kdGFibGUtYmc6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0YWJsZS1ldmVuLXJvdy1iZzogJHNub3cgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIHRhYmxlIGNlbGwgYm9yZGVyIHN0eWxlXG4kdGFibGUtYm9yZGVyLXN0eWxlOiBzb2xpZCAhZGVmYXVsdDtcbiR0YWJsZS1ib3JkZXItc2l6ZTogMXB4ICFkZWZhdWx0O1xuJHRhYmxlLWJvcmRlci1jb2xvcjogJGdhaW5zYm9ybyAhZGVmYXVsdDtcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgaGVhZCBzdHlsZXNcbiR0YWJsZS1oZWFkLWJnOiAkd2hpdGUtc21va2UgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiR0YWJsZS1oZWFkLWZvbnQtY29sb3I6ICRqZXQgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1mb250LXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kdGFibGUtaGVhZC1wYWRkaW5nOiByZW0tY2FsYyg4IDEwIDEwKSAhZGVmYXVsdDtcblxuLy8gVGhlc2UgY29udHJvbCB0aGUgdGFibGUgZm9vdCBzdHlsZXNcbiR0YWJsZS1mb290LWJnOiAkdGFibGUtaGVhZC1iZyAhZGVmYXVsdDtcbiR0YWJsZS1mb290LWZvbnQtc2l6ZTogJHRhYmxlLWhlYWQtZm9udC1zaXplICFkZWZhdWx0O1xuJHRhYmxlLWZvb3QtZm9udC1jb2xvcjogJHRhYmxlLWhlYWQtZm9udC1jb2xvciAhZGVmYXVsdDtcbiR0YWJsZS1mb290LWZvbnQtd2VpZ2h0OiAkdGFibGUtaGVhZC1mb250LXdlaWdodCAhZGVmYXVsdDtcbiR0YWJsZS1mb290LXBhZGRpbmc6ICR0YWJsZS1oZWFkLXBhZGRpbmcgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGNvbnRyb2wgdGhlIGNhcHRpb25cbiR0YWJsZS1jYXB0aW9uLWJnOiB0cmFuc3BhcmVudCAhZGVmYXVsdDtcbiR0YWJsZS1jYXB0aW9uLWZvbnQtY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3IgIWRlZmF1bHQ7XG4kdGFibGUtY2FwdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiR0YWJsZS1jYXB0aW9uLWZvbnQtd2VpZ2h0OiBib2xkICFkZWZhdWx0O1xuXG4vLyBUaGVzZSBjb250cm9sIHRoZSByb3cgcGFkZGluZyBhbmQgZm9udCBzdHlsZXNcbiR0YWJsZS1yb3ctcGFkZGluZzogcmVtLWNhbGMoOSAxMCkgIWRlZmF1bHQ7XG4kdGFibGUtcm93LWZvbnQtc2l6ZTogcmVtLWNhbGMoMTQpICFkZWZhdWx0O1xuJHRhYmxlLXJvdy1mb250LWNvbG9yOiAkamV0ICFkZWZhdWx0O1xuJHRhYmxlLWxpbmUtaGVpZ2h0OiByZW0tY2FsYygxOCkgIWRlZmF1bHQ7XG5cbi8vIFRoZXNlIGFyZSBmb3IgY29udHJvbGxpbmcgdGhlIGxheW91dCwgZGlzcGxheSBhbmQgbWFyZ2luIG9mIHRhYmxlc1xuJHRhYmxlLWxheW91dDogYXV0byAhZGVmYXVsdDtcbiR0YWJsZS1kaXNwbGF5OiB0YWJsZS1jZWxsICFkZWZhdWx0O1xuJHRhYmxlLW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDIwKSAhZGVmYXVsdDtcblxuXG4vL1xuLy8gQG1peGluc1xuLy9cblxuQG1peGluIHRhYmxlIHtcbiAgYmFja2dyb3VuZDogJHRhYmxlLWJnO1xuICBib3JkZXI6ICR0YWJsZS1ib3JkZXItc3R5bGUgJHRhYmxlLWJvcmRlci1zaXplICR0YWJsZS1ib3JkZXItY29sb3I7XG4gIG1hcmdpbi1ib3R0b206ICR0YWJsZS1tYXJnaW4tYm90dG9tO1xuICB0YWJsZS1sYXlvdXQ6ICR0YWJsZS1sYXlvdXQ7XG5cbiAgY2FwdGlvbiB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWNhcHRpb24tYmc7XG4gICAgY29sb3I6ICR0YWJsZS1jYXB0aW9uLWZvbnQtY29sb3I7XG4gICAgZm9udDoge1xuICAgICAgc2l6ZTogJHRhYmxlLWNhcHRpb24tZm9udC1zaXplO1xuICAgICAgd2VpZ2h0OiAkdGFibGUtY2FwdGlvbi1mb250LXdlaWdodDtcbiAgICB9XG4gIH1cblxuICB0aGVhZCB7XG4gICAgYmFja2dyb3VuZDogJHRhYmxlLWhlYWQtYmc7XG5cbiAgICB0ciB7XG4gICAgICB0aCxcbiAgICAgIHRkIHtcbiAgICAgICAgY29sb3I6ICR0YWJsZS1oZWFkLWZvbnQtY29sb3I7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRhYmxlLWhlYWQtZm9udC1zaXplO1xuICAgICAgICBmb250LXdlaWdodDogJHRhYmxlLWhlYWQtZm9udC13ZWlnaHQ7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJsZS1oZWFkLXBhZGRpbmc7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgdGZvb3Qge1xuICAgIGJhY2tncm91bmQ6ICR0YWJsZS1mb290LWJnO1xuXG4gICAgdHIge1xuICAgICAgdGgsXG4gICAgICB0ZCB7XG4gICAgICAgIGNvbG9yOiAkdGFibGUtZm9vdC1mb250LWNvbG9yO1xuICAgICAgICBmb250LXNpemU6ICR0YWJsZS1mb290LWZvbnQtc2l6ZTtcbiAgICAgICAgZm9udC13ZWlnaHQ6ICR0YWJsZS1mb290LWZvbnQtd2VpZ2h0O1xuICAgICAgICBwYWRkaW5nOiAkdGFibGUtZm9vdC1wYWRkaW5nO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHRyIHtcbiAgICB0aCxcbiAgICB0ZCB7XG4gICAgICBjb2xvcjogJHRhYmxlLXJvdy1mb250LWNvbG9yO1xuICAgICAgZm9udC1zaXplOiAkdGFibGUtcm93LWZvbnQtc2l6ZTtcbiAgICAgIHBhZGRpbmc6ICR0YWJsZS1yb3ctcGFkZGluZztcbiAgICAgIHRleHQtYWxpZ246ICRkZWZhdWx0LWZsb2F0O1xuICAgIH1cblxuICAgICYuZXZlbixcbiAgICAmLmFsdCxcbiAgICAmOm50aC1vZi10eXBlKGV2ZW4pIHsgYmFja2dyb3VuZDogJHRhYmxlLWV2ZW4tcm93LWJnOyB9XG4gIH1cblxuICB0aGVhZCB0ciB0aCxcbiAgdGZvb3QgdHIgdGgsXG4gIHRmb290IHRyIHRkLFxuICB0Ym9keSB0ciB0aCxcbiAgdGJvZHkgdHIgdGQsXG4gIHRyIHRkIHsgZGlzcGxheTogJHRhYmxlLWRpc3BsYXk7IGxpbmUtaGVpZ2h0OiAkdGFibGUtbGluZS1oZWlnaHQ7IH1cbn1cblxuXG5AaW5jbHVkZSBleHBvcnRzKFwidGFibGVcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC10YWJsZS1jbGFzc2VzIHtcbiAgICB0YWJsZSB7XG4gICAgICBAaW5jbHVkZSB0YWJsZTtcbiAgICB9XG4gIH1cbn1cbiIsIi8vIEZvdW5kYXRpb24gYnkgWlVSQlxuLy8gZm91bmRhdGlvbi56dXJiLmNvbVxuLy8gTGljZW5zZWQgdW5kZXIgTUlUIE9wZW4gU291cmNlXG5cbkBpbXBvcnQgJ2dsb2JhbCc7XG5AaW1wb3J0ICdncmlkJztcblxuLy9cbi8vIEB2YXJpYWJsZXNcbi8vXG5cbiRpbmNsdWRlLWh0bWwtdGFicy1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbiR0YWJzLW5hdmlnYXRpb24tcGFkZGluZzogcmVtLWNhbGMoMTYpICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1iZy1jb2xvcjogJHNpbHZlciAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tYWN0aXZlLWJnLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdGFicy1uYXZpZ2F0aW9uLWhvdmVyLWJnLWNvbG9yOiBzY2FsZS1jb2xvcigkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNiUpICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yOiAkamV0ICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtZm9udC1jb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1mb250LWNvbG9yICFkZWZhdWx0O1xuJHRhYnMtbmF2aWdhdGlvbi1mb250LXNpemU6IHJlbS1jYWxjKDE2KSAhZGVmYXVsdDtcbiR0YWJzLW5hdmlnYXRpb24tZm9udC1mYW1pbHk6ICRib2R5LWZvbnQtZmFtaWx5ICFkZWZhdWx0O1xuXG4kdGFicy1jb250ZW50LW1hcmdpbi1ib3R0b206IHJlbS1jYWxjKDI0KSAhZGVmYXVsdDtcbiR0YWJzLWNvbnRlbnQtcGFkZGluZzogKCRjb2x1bW4tZ3V0dGVyLzIpICFkZWZhdWx0O1xuXG4kdGFicy12ZXJ0aWNhbC1uYXZpZ2F0aW9uLW1hcmdpbi1ib3R0b206IDEuMjVyZW0gIWRlZmF1bHQ7XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJ0YWJcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC10YWJzLWNsYXNzZXMge1xuICAgIC50YWJzIHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgbWFyZ2luLWxlZnQ6IDA7XG5cbiAgICAgIGRkLFxuICAgICAgLnRhYi10aXRsZSB7XG4gICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgbGlzdC1zdHlsZTogbm9uZTtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG5cbiAgICAgICAgPiBhIHtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWJnLWNvbG9yO1xuICAgICAgICAgIGNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtY29sb3I7XG4gICAgICAgICAgZm9udC1mYW1pbHk6ICR0YWJzLW5hdmlnYXRpb24tZm9udC1mYW1pbHk7XG4gICAgICAgICAgZm9udC1zaXplOiAkdGFicy1uYXZpZ2F0aW9uLWZvbnQtc2l6ZTtcbiAgICAgICAgICBwYWRkaW5nOiAkdGFicy1uYXZpZ2F0aW9uLXBhZGRpbmcgJHRhYnMtbmF2aWdhdGlvbi1wYWRkaW5nICogMjtcblxuICAgICAgICAgICY6aG92ZXIge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1ob3Zlci1iZy1jb2xvcjtcbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAmLmFjdGl2ZSBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdGFicy1uYXZpZ2F0aW9uLWFjdGl2ZS1iZy1jb2xvcjtcbiAgICAgICAgICBjb2xvcjogJHRhYnMtbmF2aWdhdGlvbi1hY3RpdmUtZm9udC1jb2xvcjtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnJhZGl1cyB7XG4gICAgICAgIGRkOmZpcnN0LWNoaWxkLFxuICAgICAgICAudGFiOmZpcnN0LWNoaWxkIHtcbiAgICAgICAgICBhIHsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJGRlZmF1bHQtZmxvYXQsICRnbG9iYWwtcmFkaXVzKTsgfVxuICAgICAgICB9XG5cbiAgICAgICAgZGQ6bGFzdC1jaGlsZCxcbiAgICAgICAgLnRhYjpsYXN0LWNoaWxkIHtcbiAgICAgICAgICBhIHsgQGluY2x1ZGUgc2lkZS1yYWRpdXMoJG9wcG9zaXRlLWRpcmVjdGlvbiwgJGdsb2JhbC1yYWRpdXMpOyB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgIGRkLFxuICAgICAgICAudGFiLXRpdGxlIHtcbiAgICAgICAgICBwb3NpdGlvbjogaW5oZXJpdDtcbiAgICAgICAgICBmbG9hdDogbm9uZTtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAudGFicy1jb250ZW50IHtcbiAgICAgIEBpbmNsdWRlIGNsZWFyZml4O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHRhYnMtY29udGVudC1tYXJnaW4tYm90dG9tO1xuICAgICAgd2lkdGg6IDEwMCU7XG5cbiAgICAgID4gLmNvbnRlbnQge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgICAgICBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7XG4gICAgICAgIHBhZGRpbmc6ICR0YWJzLWNvbnRlbnQtcGFkZGluZyAwO1xuICAgICAgICB3aWR0aDogMTAwJTtcblxuICAgICAgICAmLmFjdGl2ZSB7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZmxvYXQ6IG5vbmU7XG4gICAgICAgIH1cbiAgICAgICAgJi5jb250YWluZWQge1xuICAgICAgICAgIHBhZGRpbmc6ICR0YWJzLWNvbnRlbnQtcGFkZGluZztcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAmLnZlcnRpY2FsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG5cbiAgICAgICAgPiAuY29udGVudCB7XG4gICAgICAgICAgcGFkZGluZzogMCAkdGFicy1jb250ZW50LXBhZGRpbmc7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBAbWVkaWEgI3skbWVkaXVtLXVwfSB7XG4gICAgICAudGFicyB7XG4gICAgICAgICYudmVydGljYWwge1xuICAgICAgICAgIGZsb2F0OiAkZGVmYXVsdC1mbG9hdDtcbiAgICAgICAgICBtYXJnaW46IDA7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogJHRhYnMtdmVydGljYWwtbmF2aWdhdGlvbi1tYXJnaW4tYm90dG9tICFpbXBvcnRhbnQ7XG4gICAgICAgICAgbWF4LXdpZHRoOiAyMCU7XG4gICAgICAgICAgd2lkdGg6IDIwJTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAudGFicy1jb250ZW50IHtcbiAgICAgICAgJi52ZXJ0aWNhbCB7XG4gICAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgICAgIG1hcmdpbi0jeyRkZWZhdWx0LWZsb2F0fTogLTFweDtcbiAgICAgICAgICBtYXgtd2lkdGg6IDgwJTtcbiAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAxcmVtO1xuICAgICAgICAgIHdpZHRoOiA4MCU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAubm8tanMge1xuICAgICAgLnRhYnMtY29udGVudCA+IC5jb250ZW50IHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZsb2F0OiBub25lO1xuICAgICAgfVxuICAgIH1cbiAgfVxufVxuIiwiLy8gRm91bmRhdGlvbiBieSBaVVJCXG4vLyBmb3VuZGF0aW9uLnp1cmIuY29tXG4vLyBMaWNlbnNlZCB1bmRlciBNSVQgT3BlbiBTb3VyY2VcblxuQGltcG9ydCAnZ2xvYmFsJztcblxuLy9cbi8vIEBuYW1lIF90aHVtYnMuc2Nzc1xuLy8gQGRlcGVuZGVuY2llcyBfZ2xvYmFscy5zY3NzXG4vL1xuXG4vL1xuLy8gQHZhcmlhYmxlc1xuLy9cblxuJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzOiAkaW5jbHVkZS1odG1sLWNsYXNzZXMgIWRlZmF1bHQ7XG5cbi8vIFdlIHVzZSB0aGVzZSB0byBjb250cm9sIGJvcmRlciBzdHlsZXNcbiR0aHVtYi1ib3JkZXItc3R5bGU6IHNvbGlkICFkZWZhdWx0O1xuJHRodW1iLWJvcmRlci13aWR0aDogNHB4ICFkZWZhdWx0O1xuJHRodW1iLWJvcmRlci1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRodW1iLWJveC1zaGFkb3c6IDAgMCAwIDFweCByZ2JhKCRibGFjaywuMikgIWRlZmF1bHQ7XG4kdGh1bWItYm94LXNoYWRvdy1ob3ZlcjogMCAwIDZweCAxcHggcmdiYSgkcHJpbWFyeS1jb2xvciwwLjUpICFkZWZhdWx0O1xuXG4vLyBSYWRpdXMgYW5kIHRyYW5zaXRpb24gc3BlZWQgZm9yIHRodW1ic1xuJHRodW1iLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG4kdGh1bWItdHJhbnNpdGlvbi1zcGVlZDogMjAwbXMgIWRlZmF1bHQ7XG5cbi8vXG4vLyBAbWl4aW5zXG4vL1xuXG4vLyBXZSB1c2UgdGhpcyB0byBjcmVhdGUgaW1hZ2UgdGh1bWJuYWlsIHN0eWxlcy5cbi8vXG4vLyAkYm9yZGVyLXdpZHRoIC0gV2lkdGggb2YgYm9yZGVyIGFyb3VuZCB0aHVtYm5haWwuIERlZmF1bHQ6ICR0aHVtYi1ib3JkZXItd2lkdGguXG4vLyAkYm94LXNoYWRvdyAtIEJveCBzaGFkb3cgdG8gYXBwbHkgdG8gdGh1bWJuYWlsLiBEZWZhdWx0OiAkdGh1bWItYm94LXNoYWRvdy5cbi8vICRib3gtc2hhZG93LWhvdmVyIC0gQm94IHNoYWRvdyB0byBhcHBseSBvbiBob3Zlci4gRGVmYXVsdDogJHRodW1iLWJveC1zaGFkb3ctaG92ZXIuXG5AbWl4aW4gdGh1bWIoXG4gICRib3JkZXItd2lkdGg6JHRodW1iLWJvcmRlci13aWR0aCxcbiAgJGJveC1zaGFkb3c6JHRodW1iLWJveC1zaGFkb3csXG4gICRib3gtc2hhZG93LWhvdmVyOiR0aHVtYi1ib3gtc2hhZG93LWhvdmVyKSB7XG4gIGJvcmRlcjogJHRodW1iLWJvcmRlci1zdHlsZSAkYm9yZGVyLXdpZHRoICR0aHVtYi1ib3JkZXItY29sb3I7XG4gIGJveC1zaGFkb3c6ICRib3gtc2hhZG93O1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGxpbmUtaGVpZ2h0OiAwO1xuICBtYXgtd2lkdGg6IDEwMCU7XG5cbiAgJjpob3ZlcixcbiAgJjpmb2N1cyB7XG4gICAgYm94LXNoYWRvdzogJGJveC1zaGFkb3ctaG92ZXI7XG4gIH1cbn1cblxuXG5AaW5jbHVkZSBleHBvcnRzKFwidGh1bWJcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC1tZWRpYS1jbGFzc2VzIHtcblxuICAgIC8qIEltYWdlIFRodW1ibmFpbHMgKi9cbiAgICAudGgge1xuICAgICAgQGluY2x1ZGUgdGh1bWI7XG4gICAgICBAaW5jbHVkZSBzaW5nbGUtdHJhbnNpdGlvbihhbGwsICR0aHVtYi10cmFuc2l0aW9uLXNwZWVkLCBlYXNlLW91dCk7XG5cbiAgICAgICYucmFkaXVzIHsgQGluY2x1ZGUgcmFkaXVzKCR0aHVtYi1yYWRpdXMpOyB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gVG9vbHRpcCBWYXJpYWJsZXNcbi8vXG4kaW5jbHVkZS1odG1sLXRvb2x0aXAtY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuXG4kaGFzLXRpcC1ib3JkZXItYm90dG9tOiBkb3R0ZWQgMXB4ICRpcm9uICFkZWZhdWx0O1xuJGhhcy10aXAtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ib2xkICFkZWZhdWx0O1xuJGhhcy10aXAtZm9udC1jb2xvcjogJG9pbCAhZGVmYXVsdDtcbiRoYXMtdGlwLWJvcmRlci1ib3R0b20taG92ZXI6IGRvdHRlZCAxcHggc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6IC01NSUpICFkZWZhdWx0O1xuJGhhcy10aXAtZm9udC1jb2xvci1ob3ZlcjogJHByaW1hcnktY29sb3IgIWRlZmF1bHQ7XG4kaGFzLXRpcC1jdXJzb3ItdHlwZTogaGVscCAhZGVmYXVsdDtcblxuJHRvb2x0aXAtcGFkZGluZzogcmVtLWNhbGMoMTIpICFkZWZhdWx0O1xuJHRvb2x0aXAtYmc6ICRvaWwgIWRlZmF1bHQ7XG4kdG9vbHRpcC1mb250LXNpemU6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiR0b29sdGlwLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHRvb2x0aXAtZm9udC1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvb2x0aXAtbGluZS1oZWlnaHQ6IDEuMyAhZGVmYXVsdDtcbiR0b29sdGlwLWNsb3NlLWZvbnQtc2l6ZTogcmVtLWNhbGMoMTApICFkZWZhdWx0O1xuJHRvb2x0aXAtY2xvc2UtZm9udC13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kdG9vbHRpcC1jbG9zZS1mb250LWNvbG9yOiAkbW9uc29vbiAhZGVmYXVsdDtcbiR0b29sdGlwLWZvbnQtc2l6ZS1zbWw6IHJlbS1jYWxjKDE0KSAhZGVmYXVsdDtcbiR0b29sdGlwLXJhZGl1czogJGdsb2JhbC1yYWRpdXMgIWRlZmF1bHQ7XG4kdG9vbHRpcC1yb3VuZGVkOiAkZ2xvYmFsLXJvdW5kZWQgIWRlZmF1bHQ7XG4kdG9vbHRpcC1waXAtc2l6ZTogNXB4ICFkZWZhdWx0O1xuJHRvb2x0aXAtbWF4LXdpZHRoOiAzMDBweCAhZGVmYXVsdDtcblxuQGluY2x1ZGUgZXhwb3J0cyhcInRvb2x0aXBcIikge1xuICBAaWYgJGluY2x1ZGUtaHRtbC10b29sdGlwLWNsYXNzZXMge1xuXG4gICAgLyogVG9vbHRpcHMgKi9cbiAgICAuaGFzLXRpcCB7XG4gICAgICBib3JkZXItYm90dG9tOiAkaGFzLXRpcC1ib3JkZXItYm90dG9tO1xuICAgICAgY29sb3I6ICRoYXMtdGlwLWZvbnQtY29sb3I7XG4gICAgICBjdXJzb3I6ICRoYXMtdGlwLWN1cnNvci10eXBlO1xuICAgICAgZm9udC13ZWlnaHQ6ICRoYXMtdGlwLWZvbnQtd2VpZ2h0O1xuXG4gICAgICAmOmhvdmVyLFxuICAgICAgJjpmb2N1cyB7XG4gICAgICAgIGJvcmRlci1ib3R0b206ICRoYXMtdGlwLWJvcmRlci1ib3R0b20taG92ZXI7XG4gICAgICAgIGNvbG9yOiAkaGFzLXRpcC1mb250LWNvbG9yLWhvdmVyO1xuICAgICAgfVxuXG4gICAgICAmLnRpcC1sZWZ0LFxuICAgICAgJi50aXAtcmlnaHQgeyBmbG9hdDogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgLnRvb2x0aXAge1xuICAgICAgYmFja2dyb3VuZDogJHRvb2x0aXAtYmc7XG4gICAgICBjb2xvcjogJHRvb2x0aXAtZm9udC1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICBmb250LXNpemU6ICR0b29sdGlwLWZvbnQtc2l6ZTtcbiAgICAgIGZvbnQtd2VpZ2h0OiAkdG9vbHRpcC1mb250LXdlaWdodDtcbiAgICAgIGxpbmUtaGVpZ2h0OiAkdG9vbHRpcC1saW5lLWhlaWdodDtcbiAgICAgIG1heC13aWR0aDogJHRvb2x0aXAtbWF4LXdpZHRoO1xuICAgICAgcGFkZGluZzogJHRvb2x0aXAtcGFkZGluZztcbiAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgIHdpZHRoOiAxMDAlO1xuICAgICAgei1pbmRleDogMTAwNjtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiA1MCU7XG5cbiAgICAgID4gLm51YiB7XG4gICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRvb2x0aXAtYmcgdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJvcmRlcjogc29saWQgJHRvb2x0aXAtcGlwLXNpemU7XG4gICAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgICBoZWlnaHQ6IDA7XG4gICAgICAgIHBvaW50ZXItZXZlbnRzOiBub25lO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIHRvcDogLSgkdG9vbHRpcC1waXAtc2l6ZSAqIDIpO1xuICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06ICR0b29sdGlwLXBpcC1zaXplO1xuXG4gICAgICAgICYucnRsIHtcbiAgICAgICAgICBsZWZ0OiBhdXRvO1xuICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b29sdGlwLXBpcC1zaXplO1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgICYucmFkaXVzIHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKCR0b29sdGlwLXJhZGl1cyk7XG4gICAgICB9XG4gICAgICAmLnJvdW5kIHtcbiAgICAgICAgQGluY2x1ZGUgcmFkaXVzKCR0b29sdGlwLXJvdW5kZWQpO1xuICAgICAgICA+IC5udWIge1xuICAgICAgICAgIGxlZnQ6IDJyZW07XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgJi5vcGVuZWQge1xuICAgICAgICBib3JkZXItYm90dG9tOiAkaGFzLXRpcC1ib3JkZXItYm90dG9tLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICAgIGNvbG9yOiAkaGFzLXRpcC1mb250LWNvbG9yLWhvdmVyICFpbXBvcnRhbnQ7XG4gICAgICB9XG4gICAgfVxuXG4gICAgLnRhcC10by1jbG9zZSB7XG4gICAgICBjb2xvcjogJHRvb2x0aXAtY2xvc2UtZm9udC1jb2xvcjtcbiAgICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgICAgZm9udC1zaXplOiAkdG9vbHRpcC1jbG9zZS1mb250LXNpemU7XG4gICAgICBmb250LXdlaWdodDogJHRvb2x0aXAtY2xvc2UtZm9udC13ZWlnaHQ7XG4gICAgfVxuXG4gICAgQG1lZGlhICN7JHNtYWxsfSB7XG4gICAgICAudG9vbHRpcCB7XG4gICAgICAgID4gLm51YiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCAkdG9vbHRpcC1iZyB0cmFuc3BhcmVudDtcbiAgICAgICAgICB0b3A6IC0oJHRvb2x0aXAtcGlwLXNpemUgKiAyKTtcbiAgICAgICAgfVxuICAgICAgICAmLnRpcC10b3A+Lm51YiB7XG4gICAgICAgICAgYm9yZGVyLWNvbG9yOiAkdG9vbHRpcC1iZyB0cmFuc3BhcmVudCB0cmFuc3BhcmVudCB0cmFuc3BhcmVudDtcbiAgICAgICAgICBib3R0b206IC0oJHRvb2x0aXAtcGlwLXNpemUgKiAyKTtcbiAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgIH1cblxuICAgICAgICAmLnRpcC1sZWZ0LFxuICAgICAgICAmLnRpcC1yaWdodCB7IGZsb2F0OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgICAgICAmLnRpcC1sZWZ0Pi5udWIge1xuICAgICAgICAgIGJvcmRlci1jb2xvcjogdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgdHJhbnNwYXJlbnQgJHRvb2x0aXAtYmc7XG4gICAgICAgICAgbGVmdDogYXV0bztcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtcGlwLXNpemU7XG4gICAgICAgICAgcmlnaHQ6IC0oJHRvb2x0aXAtcGlwLXNpemUgKiAyKTtcbiAgICAgICAgICB0b3A6IDUwJTtcbiAgICAgICAgfVxuICAgICAgICAmLnRpcC1yaWdodD4ubnViIHtcbiAgICAgICAgICBib3JkZXItY29sb3I6IHRyYW5zcGFyZW50ICR0b29sdGlwLWJnIHRyYW5zcGFyZW50IHRyYW5zcGFyZW50O1xuICAgICAgICAgIGxlZnQ6IC0oJHRvb2x0aXAtcGlwLXNpemUgKiAyKTtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtJHRvb2x0aXAtcGlwLXNpemU7XG4gICAgICAgICAgcmlnaHQ6IGF1dG87XG4gICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgIH1cblxuICAgICAgfVxuICAgIH1cblxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuQGltcG9ydCAnZ3JpZCc7XG5AaW1wb3J0ICdidXR0b25zJztcbkBpbXBvcnQgJ2Zvcm1zJztcblxuLy9cbi8vIFRvcCBCYXIgVmFyaWFibGVzXG4vL1xuJGluY2x1ZGUtaHRtbC10b3AtYmFyLWNsYXNzZXM6ICRpbmNsdWRlLWh0bWwtY2xhc3NlcyAhZGVmYXVsdDtcblxuLy8gQmFja2dyb3VuZCBjb2xvciBmb3IgdGhlIHRvcCBiYXJcbiR0b3BiYXItYmctY29sb3I6ICRvaWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWJnOiAkdG9wYmFyLWJnLWNvbG9yICFkZWZhdWx0O1xuXG4vLyBIZWlnaHQgYW5kIG1hcmdpblxuJHRvcGJhci1oZWlnaHQ6IHJlbS1jYWxjKDQ1KSAhZGVmYXVsdDtcbiR0b3BiYXItbWFyZ2luLWJvdHRvbTogMCAhZGVmYXVsdDtcblxuLy8gQ29udHJvbGxpbmcgdGhlIHN0eWxlcyBmb3IgdGhlIHRpdGxlIGluIHRoZSB0b3AgYmFyXG4kdG9wYmFyLXRpdGxlLXdlaWdodDogJGZvbnQtd2VpZ2h0LW5vcm1hbCAhZGVmYXVsdDtcbiR0b3BiYXItdGl0bGUtZm9udC1zaXplOiByZW0tY2FsYygxNykgIWRlZmF1bHQ7XG5cbi8vIFNldCB0aGUgbGluayBjb2xvcnMgYW5kIHN0eWxlcyBmb3IgdG9wLWxldmVsIG5hdlxuJHRvcGJhci1saW5rLWNvbG9yOiAkd2hpdGUgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstY29sb3ItaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvci1hY3RpdmU6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay13ZWlnaHQ6ICRmb250LXdlaWdodC1ub3JtYWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstZm9udC1zaXplOiByZW0tY2FsYygxMykgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstaG92ZXItbGlnaHRuZXNzOiAtMTAlICFkZWZhdWx0OyAvLyBEYXJrZW4gYnkgMTAlXG4kdG9wYmFyLWxpbmstYmc6ICR0b3BiYXItYmcgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstYmctaG92ZXI6ICRqZXQgIWRlZmF1bHQ7XG4kdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI6ICRjaGFyY29hbCAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1iZy1hY3RpdmU6ICRwcmltYXJ5LWNvbG9yICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWJnLWFjdGl2ZS1ob3Zlcjogc2NhbGUtY29sb3IoJHByaW1hcnktY29sb3IsICRsaWdodG5lc3M6IC0xNCUpICFkZWZhdWx0O1xuJHRvcGJhci1saW5rLWZvbnQtZmFtaWx5OiAkYm9keS1mb250LWZhbWlseSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay10ZXh0LXRyYW5zZm9ybTogbm9uZSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1wYWRkaW5nOiAoJHRvcGJhci1oZWlnaHQgLyAzKSAhZGVmYXVsdDtcbiR0b3BiYXItYmFjay1saW5rLXNpemU6IHJlbS1jYWxjKDE4KSAhZGVmYXVsdDtcbiR0b3BiYXItbGluay1kcm9wZG93bi1wYWRkaW5nOiByZW0tY2FsYygyMCkgIWRlZmF1bHQ7XG4kdG9wYmFyLWJ1dHRvbi1mb250LXNpemU6IC43NXJlbSAhZGVmYXVsdDtcbiR0b3BiYXItYnV0dG9uLXRvcDogN3B4ICFkZWZhdWx0O1xuXG4vLyBTdHlsZSB0aGUgdG9wIGJhciBkcm9wZG93biBlbGVtZW50c1xuJHRvcGJhci1kcm9wZG93bi1iZzogJG9pbCAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yLWhvdmVyOiAkdG9wYmFyLWxpbmstY29sb3ItaG92ZXIgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstYmc6ICRvaWwgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstYmctaG92ZXI6ICRqZXQgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxpbmstd2VpZ2h0OiAkZm9udC13ZWlnaHQtbm9ybWFsICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZTogNXB4ICFkZWZhdWx0O1xuJHRvcGJhci1kcm9wZG93bi10b2dnbGUtY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWFscGhhOiAuNCAhZGVmYXVsdDtcblxuJHRvcGJhci1kcm9wZG93bi1sYWJlbC1jb2xvcjogJG1vbnNvb24gIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLXRleHQtdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWZvbnQtd2VpZ2h0OiAkZm9udC13ZWlnaHQtYm9sZCAhZGVmYXVsdDtcbiR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC1zaXplOiByZW0tY2FsYygxMCkgIWRlZmF1bHQ7XG4kdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWJnOiAkb2lsICFkZWZhdWx0O1xuXG4vLyBUb3AgbWVudSBpY29uIHN0eWxlc1xuJHRvcGJhci1tZW51LWxpbmstdHJhbnNmb3JtOiB1cHBlcmNhc2UgIWRlZmF1bHQ7XG4kdG9wYmFyLW1lbnUtbGluay1mb250LXNpemU6IHJlbS1jYWxjKDEzKSAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1saW5rLXdlaWdodDogJGZvbnQtd2VpZ2h0LWJvbGQgIWRlZmF1bHQ7XG4kdG9wYmFyLW1lbnUtbGluay1jb2xvcjogJHdoaXRlICFkZWZhdWx0O1xuJHRvcGJhci1tZW51LWljb24tY29sb3I6ICR3aGl0ZSAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1saW5rLWNvbG9yLXRvZ2dsZWQ6ICRqdW1ibyAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1pY29uLWNvbG9yLXRvZ2dsZWQ6ICRqdW1ibyAhZGVmYXVsdDtcbiR0b3BiYXItbWVudS1pY29uLXBvc2l0aW9uOiAkb3Bwb3NpdGUtZGlyZWN0aW9uICFkZWZhdWx0OyAvLyBDaGFuZ2UgdG8gJGRlZmF1bHQtZmxvYXQgZm9yIGEgbGVmdCBtZW51IGljb25cblxuLy8gVHJhbnNpdGlvbnMgYW5kIGJyZWFrcG9pbnQgc3R5bGVzXG4kdG9wYmFyLXRyYW5zaXRpb24tc3BlZWQ6IDMwMG1zICFkZWZhdWx0O1xuLy8gVXNpbmcgcmVtLWNhbGMgZm9yIHRoZSBiZWxvdyBicmVha3BvaW50IGNhdXNlcyBpc3N1ZXMgd2l0aCB0b3AgYmFyXG4kdG9wYmFyLWJyZWFrcG9pbnQ6ICN7bG93ZXItYm91bmQoJG1lZGl1bS1yYW5nZSl9ICFkZWZhdWx0OyAvLyBDaGFuZ2UgdG8gOTk5OXB4IGZvciBhbHdheXMgbW9iaWxlIGxheW91dFxuJHRvcGJhci1tZWRpYS1xdWVyeTogXCIjeyRzY3JlZW59IGFuZCAobWluLXdpZHRoOiN7bG93ZXItYm91bmQoJHRvcGJhci1icmVha3BvaW50KX0pXCI7XG5cbi8vIFRvcC1iYXIgaW5wdXQgc3R5bGVzXG4kdG9wYmFyLWlucHV0LWhlaWdodDogcmVtLWNhbGMoMjgpICFkZWZhdWx0O1xuXG4vLyBEaXZpZGVyIFN0eWxlc1xuJHRvcGJhci1kaXZpZGVyLWJvcmRlci1ib3R0b206IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAxMyUpICFkZWZhdWx0O1xuJHRvcGJhci1kaXZpZGVyLWJvcmRlci10b3A6IHNvbGlkIDFweCBzY2FsZS1jb2xvcigkdG9wYmFyLWJnLWNvbG9yLCAkbGlnaHRuZXNzOiAtNTAlKSAhZGVmYXVsdDtcblxuLy8gU3RpY2t5IENsYXNzXG4kdG9wYmFyLXN0aWNreS1jbGFzczogXCIuc3RpY2t5XCIgIWRlZmF1bHQ7XG4kdG9wYmFyLWFycm93czogdHJ1ZSAhZGVmYXVsdDsgLy9TZXQgZmFsc2UgdG8gcmVtb3ZlIHRoZSB0cmlhbmdsZSBpY29uIGZyb20gdGhlIG1lbnUgaXRlbVxuJHRvcGJhci1kcm9wZG93bi1hcnJvd3M6IHRydWUgIWRlZmF1bHQ7IC8vU2V0IGZhbHNlIHRvIHJlbW92ZSB0aGUgXFwwMGJiID4+IHRleHQgZnJvbSBkcm9wZG93biBzdWJuYXZpZ2F0aW9uIGxpXG5cbi8vIEFjY2Vzc2liaWxpdHkgbWl4aW5zIGZvciBoaWRpbmcgYW5kIHNob3dpbmcgdGhlIG1lbnUgZHJvcGRvd24gaXRlbXNcbkBtaXhpbiB0b3BiYXItaGlkZS1kcm9wZG93biB7XG4gIC8vIE1ha2VzIGFuIGVsZW1lbnQgdmlzdWFsbHkgaGlkZGVuIGJ5IGRlZmF1bHQsIGJ1dCB2aXNpYmxlIHdoZW4gZm9jdXNlZC5cbiAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUoKTtcbiAgZGlzcGxheTogYmxvY2s7XG59XG5cbkBtaXhpbiB0b3BiYXItc2hvdy1kcm9wZG93biB7XG4gIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZigpO1xuICBkaXNwbGF5OiBibG9jaztcbiAgcG9zaXRpb246IGFic29sdXRlICFpbXBvcnRhbnQ7IC8vIFJlc2V0IHRoZSBwb3NpdGlvbiBmcm9tIHN0YXRpYyB0byBhYnNvbHV0ZVxufVxuXG5AaW5jbHVkZSBleHBvcnRzKFwidG9wLWJhclwiKSB7XG5cbiAgQGlmICRpbmNsdWRlLWh0bWwtdG9wLWJhci1jbGFzc2VzIHtcblxuICAgIC8vIFVzZWQgdG8gcHJvdmlkZSBtZWRpYSBxdWVyeSB2YWx1ZXMgZm9yIGphdmFzY3JpcHQgY29tcG9uZW50cy5cbiAgICAvLyBUaGlzIGNsYXNzIGlzIGdlbmVyYXRlZCBkZXNwaXRlIHRoZSB2YWx1ZSBvZiAkaW5jbHVkZS1odG1sLXRvcC1iYXItY2xhc3Nlc1xuICAgIC8vIHRvIGVuc3VyZSB3aWR0aCBjYWxjdWxhdGlvbnMgd29yayBjb3JyZWN0bHkuXG4gICAgbWV0YS5mb3VuZGF0aW9uLW1xLXRvcGJhciB7XG4gICAgICBmb250LWZhbWlseTogXCIvXCIgKyB1bnF1b3RlKCR0b3BiYXItbWVkaWEtcXVlcnkpICsgXCIvXCI7XG4gICAgICB3aWR0aDogJHRvcGJhci1icmVha3BvaW50O1xuICAgIH1cblxuICAgIC8qIFdyYXBwZWQgYXJvdW5kIC50b3AtYmFyIHRvIGNvbnRhaW4gdG8gZ3JpZCB3aWR0aCAqL1xuICAgIC5jb250YWluLXRvLWdyaWQge1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWJnO1xuXG4gICAgICAudG9wLWJhciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICR0b3BiYXItbWFyZ2luLWJvdHRvbTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBXcmFwcGVkIGFyb3VuZCAudG9wLWJhciB0byBtYWtlIGl0IHN0aWNrIHRvIHRoZSB0b3BcbiAgICAuZml4ZWQge1xuICAgICAgcG9zaXRpb246IGZpeGVkO1xuICAgICAgdG9wOiAwO1xuICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB6LWluZGV4OiA5OTtcbiAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuXG4gICAgICAmLmV4cGFuZGVkOm5vdCgudG9wLWJhcikge1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1heC1oZWlnaHQ6IDEwMCU7XG4gICAgICAgIG92ZXJmbG93LXk6IGF1dG87XG4gICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgIC50aXRsZS1hcmVhIHtcbiAgICAgICAgICBwb3NpdGlvbjogZml4ZWQ7XG4gICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgei1pbmRleDogOTk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBFbnN1cmUgeW91IGNhbiBzY3JvbGwgdGhlIG1lbnUgb24gc21hbGwgc2NyZWVuc1xuICAgICAgICAudG9wLWJhci1zZWN0aW9uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICB6LWluZGV4OiA5ODtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIC50b3AtYmFyIHtcbiAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XG4gICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgbWFyZ2luLWJvdHRvbTogJHRvcGJhci1tYXJnaW4tYm90dG9tO1xuICAgICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcblxuICAgICAgLy8gVG9wYmFyIEdsb2JhbCBsaXN0IFN0eWxlc1xuICAgICAgdWwge1xuICAgICAgICBsaXN0LXN0eWxlOiBub25lO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgfVxuXG4gICAgICAucm93IHtcbiAgICAgICAgbWF4LXdpZHRoOiBub25lO1xuICAgICAgfVxuXG4gICAgICBmb3JtLFxuICAgICAgaW5wdXQsIFxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgIH1cblxuICAgICAgaW5wdXQsIFxuICAgICAgc2VsZWN0IHtcbiAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWJ1dHRvbi1mb250LXNpemU7XG4gICAgICAgIGhlaWdodDogJHRvcGJhci1pbnB1dC1oZWlnaHQ7XG4gICAgICAgIHBhZGRpbmctYm90dG9tOiAuMzVyZW07XG4gICAgICAgIHBhZGRpbmctdG9wOiAuMzVyZW07XG4gICAgICB9XG5cbiAgICAgIC5idXR0b24sIGJ1dHRvbiB7XG4gICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1idXR0b24tZm9udC1zaXplO1xuICAgICAgICBtYXJnaW4tYm90dG9tOiAwO1xuICAgICAgICBwYWRkaW5nLWJvdHRvbTogLjM1cmVtICsgcmVtLWNhbGMoMSk7XG4gICAgICAgIHBhZGRpbmctdG9wOiAuMzVyZW0gKyByZW0tY2FsYygxKTtcbiAgICAgICAgLy8gcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAvLyB0b3A6IC0xcHg7XG5cbiAgICAgICAgLy8gQ29ycmVjdHMgYSBzbGlnaHQgbWlzYWxpZ25tZW50IHdoZW4gcHV0IG5leHQgdG8gYW4gaW5wdXQgZmllbGRcbiAgICAgICAgQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcbiAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgdG9wOiAtMXB4O1xuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFRpdGxlIEFyZWFcbiAgICAgIC50aXRsZS1hcmVhIHtcbiAgICAgICAgbWFyZ2luOiAwO1xuICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICB9XG5cbiAgICAgIC5uYW1lIHtcbiAgICAgICAgZm9udC1zaXplOiAkcmVtLWJhc2U7XG4gICAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgIG1hcmdpbjogMDtcblxuICAgICAgICBoMSwgaDIsIGgzLCBoNCwgcCwgc3BhbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLXRpdGxlLWZvbnQtc2l6ZTtcbiAgICAgICAgICBsaW5lLWhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgICAgbWFyZ2luOiAwO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yO1xuICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci10aXRsZS13ZWlnaHQ7XG4gICAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgd2lkdGg6IDc1JTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLy8gTWVudSB0b2dnbGUgYnV0dG9uIG9uIHNtYWxsIGRldmljZXNcbiAgICAgIC50b2dnbGUtdG9wYmFyIHtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAjeyR0b3BiYXItbWVudS1pY29uLXBvc2l0aW9ufTogMDtcbiAgICAgICAgdG9wOiAwO1xuXG4gICAgICAgIGEge1xuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XG4gICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLW1lbnUtbGluay1mb250LXNpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItbWVudS1saW5rLXdlaWdodDtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJHRvcGJhci1tZW51LWxpbmstdHJhbnNmb3JtO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gQWRkaW5nIHRoZSBjbGFzcyBcIm1lbnUtaWNvblwiIHdpbGwgYWRkIHRoZSAzLWxpbmUgaWNvbiBwZW9wbGUgbG92ZSBhbmQgYWRvcmUuXG4gICAgICAgICYubWVudS1pY29uIHtcbiAgICAgICAgICBtYXJnaW4tdG9wOiAtMTZweDtcbiAgICAgICAgICB0b3A6IDUwJTtcblxuICAgICAgICAgIGEge1xuICAgICAgICAgICAgQGluY2x1ZGUgaGFtYnVyZ2VyKDE2cHgsIGZhbHNlLCAwLCAxcHgsIDZweCwgJHRvcGJhci1tZW51LWljb24tY29sb3IsIFwiXCIsIGZhbHNlKTtcblxuICAgICAgICAgICAgQGlmICR0ZXh0LWRpcmVjdGlvbiA9PSBydGwge1xuICAgICAgICAgICAgICB0ZXh0LWluZGVudDogLTU4cHg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1tZW51LWxpbmstY29sb3I7XG4gICAgICAgICAgICBoZWlnaHQ6IDM0cHg7XG4gICAgICAgICAgICBsaW5lLWhlaWdodDogMzNweDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDAgJHRvcGJhci1saW5rLXBhZGRpbmcrcmVtLWNhbGMoMjUpIDAgJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIENoYW5nZSB0aGluZ3MgdXAgd2hlbiB0aGUgdG9wLWJhciBpcyBleHBhbmRlZFxuICAgICAgJi5leHBhbmRlZCB7XG4gICAgICAgIGJhY2tncm91bmQ6IHRyYW5zcGFyZW50O1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG5cbiAgICAgICAgLnRpdGxlLWFyZWEge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XG4gICAgICAgIH1cblxuICAgICAgICAudG9nZ2xlLXRvcGJhciB7XG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBjb2xvcjogJHRvcGJhci1tZW51LWxpbmstY29sb3ItdG9nZ2xlZDtcblxuICAgICAgICAgICAgc3Bhbjo6YWZ0ZXIge1xuICAgICAgICAgICAgICAvLyBTaGgsIGRvbid0IHRlbGwsIGJ1dCBib3gtc2hhZG93cyBjcmVhdGUgdGhlIG1lbnUgaWNvbiA6KVxuICAgICAgICAgICAgICAvLyBDaGFuZ2UgdGhlIGNvbG9yIG9mIHRoZSBiYXJzIHdoZW4gdGhlIG1lbnUgaXMgZXhwYW5kZWQsIHVzaW5nIGdpdmVuIHRoaWNrbmVzcyBmcm9tIGhhbWJ1cmdlcigpIGFib3ZlXG4gICAgICAgICAgICAgIGJveC1zaGFkb3c6IDAgMCAwIDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAwIDdweCAwIDFweCAkdG9wYmFyLW1lbnUtaWNvbi1jb2xvci10b2dnbGVkLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAwIDE0cHggMCAxcHggJHRvcGJhci1tZW51LWljb24tY29sb3ItdG9nZ2xlZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBGaXhlcyBhbiBpc3N1ZSB3aXRoIERlc2t0b3AgYW5kIE1vYmlsZSBTYWZhcmkgd2hlcmUgZGVlcGx5LW5lc3RlZCBtZW51cyBkb24ndCBhcHBlYXJcbiAgICAgICAgQG1lZGlhIHNjcmVlbiBhbmQgKC13ZWJraXQtbWluLWRldmljZS1waXhlbC1yYXRpbzowKSB7XG4gICAgICAgICAgLnRvcC1iYXItc2VjdGlvbiB7XG4gICAgICAgICAgICAuaGFzLWRyb3Bkb3duLm1vdmVkID4gLmRyb3Bkb3duLFxuICAgICAgICAgICAgLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgY2xpcDogaW5pdGlhbDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgLy8gVGhpcyB3YXMgbmVlZGVkIGFzIHBhcmVudCB1bCdzIGhhZCBwYWRkaW5nLCBhbmQgdGhlIGNsaXA6IHdhcyBhbGxvd2luZyBjb250ZW50IHRvIHBlYWsgdGhyb3VnaFxuICAgICAgICAgICAgLmhhcy1kcm9wZG93bjpub3QoLm1vdmVkKSA+IHVsIHtcbiAgICAgICAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBSaWdodCBhbmQgTGVmdCBOYXZpZ2F0aW9uIHRoYXQgc3RhY2tlZCBieSBkZWZhdWx0XG4gICAgLnRvcC1iYXItc2VjdGlvbiB7XG4gICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgQGluY2x1ZGUgc2luZ2xlLXRyYW5zaXRpb24oJGRlZmF1bHQtZmxvYXQsICR0b3BiYXItdHJhbnNpdGlvbi1zcGVlZCk7XG5cbiAgICAgIHVsIHtcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIGZvbnQtc2l6ZTogJHJlbS1iYXNlO1xuICAgICAgICBoZWlnaHQ6IGF1dG87XG4gICAgICAgIG1hcmdpbjogMDtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICB9XG5cbiAgICAgIC5kaXZpZGVyLFxuICAgICAgW3JvbGU9XCJzZXBhcmF0b3JcIl0ge1xuICAgICAgICBib3JkZXItdG9wOiAkdG9wYmFyLWRpdmlkZXItYm9yZGVyLXRvcDtcbiAgICAgICAgY2xlYXI6IGJvdGg7XG4gICAgICAgIGhlaWdodDogMXB4O1xuICAgICAgICB3aWR0aDogMTAwJTtcbiAgICAgIH1cblxuICAgICAgdWwgbGkge1xuICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWRyb3Bkb3duLWJnO1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvcjtcbiAgICAgICAgICBkaXNwbGF5OiBibG9jaztcbiAgICAgICAgICBmb250LWZhbWlseTogJHRvcGJhci1saW5rLWZvbnQtZmFtaWx5O1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1saW5rLWZvbnQtc2l6ZTtcbiAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1saW5rLXdlaWdodDtcbiAgICAgICAgICBwYWRkaW5nLSN7JGRlZmF1bHQtZmxvYXR9OiAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICBwYWRkaW5nOiAxMnB4IDAgMTJweCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICB0ZXh0LXRyYW5zZm9ybTogJHRvcGJhci1saW5rLXRleHQtdHJhbnNmb3JtO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgJi5idXR0b24ge1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWxpbmstZm9udC1zaXplO1xuICAgICAgICAgICAgcGFkZGluZy0jeyRkZWZhdWx0LWZsb2F0fTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgICBwYWRkaW5nLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokcHJpbWFyeS1jb2xvcik7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5idXR0b24uc2Vjb25kYXJ5IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokc2Vjb25kYXJ5LWNvbG9yKTsgfVxuICAgICAgICAgICYuYnV0dG9uLnN1Y2Nlc3MgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgICAgICYuYnV0dG9uLmFsZXJ0IHsgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokYWxlcnQtY29sb3IpOyB9XG4gICAgICAgICAgJi5idXR0b24ud2FybmluZyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHdhcm5pbmctY29sb3IpOyB9XG4gICAgICAgICAgJi5idXR0b24uaW5mbyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGluZm8tY29sb3IpOyB9XG4gICAgICAgIH1cblxuICAgICAgICA+IGJ1dHRvbiB7XG4gICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWxpbmstZm9udC1zaXplO1xuICAgICAgICAgIHBhZGRpbmctI3skZGVmYXVsdC1mbG9hdH06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICAgICAgQGluY2x1ZGUgYnV0dG9uLXN0eWxlKCRiZzokcHJpbWFyeS1jb2xvcik7XG5cbiAgICAgICAgICAmLnNlY29uZGFyeSB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JHNlY29uZGFyeS1jb2xvcik7IH1cbiAgICAgICAgICAmLnN1Y2Nlc3MgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRzdWNjZXNzLWNvbG9yKTsgfVxuICAgICAgICAgICYuYWxlcnQgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiRhbGVydC1jb2xvcik7IH1cbiAgICAgICAgICAmLndhcm5pbmcgeyBAaW5jbHVkZSBidXR0b24tc3R5bGUoJGJnOiR3YXJuaW5nLWNvbG9yKTsgfVxuICAgICAgICAgICYuaW5mbyB7IEBpbmNsdWRlIGJ1dHRvbi1zdHlsZSgkYmc6JGluZm8tY29sb3IpOyB9XG4gICAgICAgIH1cblxuICAgICAgICAvLyBBcHBseSB0aGUgaG92ZXIgbGluayBjb2xvciB3aGVuIGl0IGhhcyB0aGF0IGNsYXNzXG4gICAgICAgICY6aG92ZXI6bm90KC5oYXMtZm9ybSkgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI7XG4gICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcblxuICAgICAgICAgIEBpZiAoJHRvcGJhci1saW5rLWJnLWhvdmVyKSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctaG92ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gQXBwbHkgdGhlIGFjdGl2ZSBsaW5rIGNvbG9yIHdoZW4gaXQgaGFzIHRoYXQgY2xhc3NcbiAgICAgICAgJi5hY3RpdmUgPiBhIHtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlO1xuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlO1xuXG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlLWhvdmVyO1xuICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmUtaG92ZXI7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIEFkZCBzb21lIGV4dHJhIHBhZGRpbmcgZm9yIGxpc3QgaXRlbXMgY29udGFpbnMgYnV0dG9uc1xuICAgICAgLmhhcy1mb3JtIHtcbiAgICAgICAgcGFkZGluZzogJHRvcGJhci1saW5rLXBhZGRpbmc7XG4gICAgICB9XG5cbiAgICAgIC8vIFN0eWxpbmcgZm9yIGxpc3QgaXRlbXMgdGhhdCBoYXZlIGEgZHJvcGRvd24gd2l0aGluIHRoZW0uXG4gICAgICAuaGFzLWRyb3Bkb3duIHtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuXG4gICAgICAgID4gYSB7XG4gICAgICAgICAgJjphZnRlciB7XG4gICAgICAgICAgICBAaWYgKCR0b3BiYXItYXJyb3dzKSB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIGNzcy10cmlhbmdsZSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplLCByZ2JhKCR0b3BiYXItZHJvcGRvd24tdG9nZ2xlLWNvbG9yLCAkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1hbHBoYSksICRkZWZhdWx0LWZsb2F0KTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgbWFyZ2luLSN7JG9wcG9zaXRlLWRpcmVjdGlvbn06ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgbWFyZ2luLXRvcDogLSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1zaXplIC8gMikgLSAyO1xuICAgICAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICAgICAgdG9wOiA1MCU7XG4gICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAwO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgICYubW92ZWQge1xuICAgICAgICAgIHBvc2l0aW9uOiBzdGF0aWM7XG5cbiAgICAgICAgICA+IC5kcm9wZG93biB7XG4gICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItc2hvdy1kcm9wZG93bigpO1xuICAgICAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPiBhOmFmdGVyIHtcbiAgICAgICAgICAgIGRpc3BsYXk6IG5vbmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG5cbiAgICAgIC8vIFN0eWxpbmcgZWxlbWVudHMgaW5zaWRlIG9mIGRyb3Bkb3duc1xuICAgICAgLmRyb3Bkb3duIHtcbiAgICAgICAgQGluY2x1ZGUgdG9wYmFyLWhpZGUtZHJvcGRvd24oKTtcbiAgICAgICAgcGFkZGluZzogMDtcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIHotaW5kZXg6IDk5O1xuICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMTAwJTtcblxuICAgICAgICBsaSB7XG4gICAgICAgICAgaGVpZ2h0OiBhdXRvO1xuICAgICAgICAgIHdpZHRoOiAxMDAlO1xuXG4gICAgICAgICAgYSB7XG4gICAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1kcm9wZG93bi1saW5rLXdlaWdodDtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICYucGFyZW50LWxpbmsge1xuICAgICAgICAgICAgICBmb250LXdlaWdodDogJHRvcGJhci1saW5rLXdlaWdodDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLnRpdGxlIGg1LFxuICAgICAgICAgICYucGFyZW50LWxpbmsge1xuICAgICAgICAgICAgLy8gQmFjayBCdXR0b25cbiAgICAgICAgICAgIG1hcmdpbi1ib3R0b206IDA7XG4gICAgICAgICAgICBtYXJnaW4tdG9wOiAwO1xuICAgICAgICAgICAgZm9udC1zaXplOiAkdG9wYmFyLWJhY2stbGluay1zaXplO1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3I7XG4gICAgICAgICAgICAgIC8vIGxpbmUtaGVpZ2h0OiAoJHRvcGJhci1oZWlnaHQgLyAyKTtcbiAgICAgICAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgICAgICAgICY6aG92ZXIgeyBiYWNrZ3JvdW5kOm5vbmU7IH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLmhhcy1mb3JtIHtcbiAgICAgICAgICAgIHBhZGRpbmc6IDhweCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuYnV0dG9uLFxuICAgICAgICAgIGJ1dHRvbiB7XG4gICAgICAgICAgICB0b3A6IGF1dG87XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgbGFiZWwge1xuICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLWNvbG9yO1xuICAgICAgICAgIGZvbnQtc2l6ZTogJHRvcGJhci1kcm9wZG93bi1sYWJlbC1mb250LXNpemU7XG4gICAgICAgICAgZm9udC13ZWlnaHQ6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtZm9udC13ZWlnaHQ7XG4gICAgICAgICAgbWFyZ2luLWJvdHRvbTogMDtcbiAgICAgICAgICBwYWRkaW5nOiA4cHggJHRvcGJhci1saW5rLXBhZGRpbmcgMnB4O1xuICAgICAgICAgIHRleHQtdHJhbnNmb3JtOiAkdG9wYmFyLWRyb3Bkb3duLWxhYmVsLXRleHQtdHJhbnNmb3JtO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgLmpzLWdlbmVyYXRlZCB7IGRpc3BsYXk6IGJsb2NrOyB9XG5cblxuICAgIC8vIFRvcCBCYXIgc3R5bGVzIGludGVuZGVkIGZvciBzY3JlZW4gc2l6ZXMgYWJvdmUgdGhlIGJyZWFrcG9pbnQuXG4gICAgQG1lZGlhICN7JHRvcGJhci1tZWRpYS1xdWVyeX0ge1xuICAgICAgLnRvcC1iYXIge1xuICAgICAgICBAaW5jbHVkZSBjbGVhcmZpeDtcbiAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1iZztcbiAgICAgICAgb3ZlcmZsb3c6IHZpc2libGU7XG5cbiAgICAgICAgLnRvZ2dsZS10b3BiYXIgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgLnRpdGxlLWFyZWEgeyBmbG9hdDogJGRlZmF1bHQtZmxvYXQ7IH1cbiAgICAgICAgLm5hbWUgaDEgYSxcbiAgICAgICAgLm5hbWUgaDIgYSxcbiAgICAgICAgLm5hbWUgaDMgYSxcbiAgICAgICAgLm5hbWUgaDQgYSxcbiAgICAgICAgLm5hbWUgaDUgYSxcbiAgICAgICAgLm5hbWUgaDYgYSB7IHdpZHRoOiBhdXRvOyB9XG5cbiAgICAgICAgaW5wdXQsXG4gICAgICAgIHNlbGVjdCxcbiAgICAgICAgLmJ1dHRvbixcbiAgICAgICAgYnV0dG9uIHtcbiAgICAgICAgICBmb250LXNpemU6IHJlbS1jYWxjKDE0KTtcbiAgICAgICAgICBoZWlnaHQ6ICR0b3BiYXItaW5wdXQtaGVpZ2h0O1xuICAgICAgICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICAgICAgICB0b3A6ICgoJHRvcGJhci1oZWlnaHQgLSAkdG9wYmFyLWlucHV0LWhlaWdodCkgLyAyKTtcbiAgICAgICAgfVxuXG4gICAgICAgICYuZXhwYW5kZWQge1xuICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItYmc7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgLmNvbnRhaW4tdG8tZ3JpZCAudG9wLWJhciB7XG4gICAgICAgIG1hcmdpbi1ib3R0b206ICR0b3BiYXItbWFyZ2luLWJvdHRvbTtcbiAgICAgICAgbWFyZ2luOiAwIGF1dG87XG4gICAgICAgIG1heC13aWR0aDogJHJvdy13aWR0aDtcbiAgICAgIH1cblxuICAgICAgLnRvcC1iYXItc2VjdGlvbiB7XG4gICAgICAgIEBpbmNsdWRlIHNpbmdsZS10cmFuc2l0aW9uKG5vbmUsMCwwKTtcbiAgICAgICAgI3skZGVmYXVsdC1mbG9hdH06IDAgIWltcG9ydGFudDtcblxuICAgICAgICB1bCB7XG4gICAgICAgICAgZGlzcGxheTogaW5saW5lO1xuICAgICAgICAgIGhlaWdodDogYXV0byAhaW1wb3J0YW50O1xuICAgICAgICAgIHdpZHRoOiBhdXRvO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgZmxvYXQ6ICRkZWZhdWx0LWZsb2F0O1xuICAgICAgICAgICAgLmpzLWdlbmVyYXRlZCB7IGRpc3BsYXk6IG5vbmU7IH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICBsaSB7XG4gICAgICAgICAgJi5ob3ZlciB7XG4gICAgICAgICAgICA+IGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1saW5rLWJnLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgICBAaWYgKCR0b3BiYXItbGluay1iZy1ob3Zlcikge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItbGluay1iZy1ob3ZlcjtcbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICY6bm90KC5oYXMtZm9ybSkge1xuICAgICAgICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmc7XG4gICAgICAgICAgICAgIGxpbmUtaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1saW5rLWJnLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgICAgIEBpZiAoJHRvcGJhci1saW5rLWJnLWhvdmVyKSB7XG4gICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctaG92ZXI7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgJi5hY3RpdmU6bm90KC5oYXMtZm9ybSkge1xuICAgICAgICAgICAgYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlO1xuICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1saW5rLWNvbG9yLWFjdGl2ZTtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAwICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgICAmOmhvdmVyIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlLWhvdmVyO1xuICAgICAgICAgICAgICAgIGNvbG9yOiAkdG9wYmFyLWxpbmstY29sb3ItYWN0aXZlLWhvdmVyO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhhcy1kcm9wZG93biB7XG4gICAgICAgICAgQGlmICR0b3BiYXItYXJyb3dzIHtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgIHBhZGRpbmctI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogJHRvcGJhci1saW5rLXBhZGRpbmcgKyAkdG9wYmFyLWxpbmstZHJvcGRvd24tcGFkZGluZyAhaW1wb3J0YW50O1xuICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICBAaW5jbHVkZSBjc3MtdHJpYW5nbGUoJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZSwgcmdiYSgkdG9wYmFyLWRyb3Bkb3duLXRvZ2dsZS1jb2xvciwgJHRvcGJhci1kcm9wZG93bi10b2dnbGUtYWxwaGEpLCB0b3ApO1xuICAgICAgICAgICAgICAgIG1hcmdpbi10b3A6IC0oJHRvcGJhci1kcm9wZG93bi10b2dnbGUtc2l6ZSAvIDIpO1xuICAgICAgICAgICAgICAgIHRvcDogKCR0b3BiYXItaGVpZ2h0IC8gMik7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICAmLm1vdmVkIHsgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgPiAuZHJvcGRvd24ge1xuICAgICAgICAgICAgICBAaW5jbHVkZSB0b3BiYXItaGlkZS1kcm9wZG93bigpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgICYuaG92ZXIsICYubm90LWNsaWNrOmhvdmVyIHtcbiAgICAgICAgICAgID4gLmRyb3Bkb3duIHtcbiAgICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLXNob3ctZHJvcGRvd24oKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG5cbiAgICAgICAgICA+IGE6Zm9jdXMgKyAuZHJvcGRvd24ge1xuICAgICAgICAgICAgQGluY2x1ZGUgdG9wYmFyLXNob3ctZHJvcGRvd24oKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAuZHJvcGRvd24gbGkuaGFzLWRyb3Bkb3duIHtcbiAgICAgICAgICAgID4gYSB7XG4gICAgICAgICAgICAgIEBpZiAoJHRvcGJhci1kcm9wZG93bi1hcnJvd3MpIHtcbiAgICAgICAgICAgICAgICAmOmFmdGVyIHtcbiAgICAgICAgICAgICAgICAgIGJvcmRlcjogbm9uZTtcbiAgICAgICAgICAgICAgICAgIGNvbnRlbnQ6IFwiXFwwMGJiXCI7XG4gICAgICAgICAgICAgICAgICB0b3A6IHJlbS1jYWxjKDMpO1xuXG4gICAgICAgICAgICAgICAgICAjeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiA1cHg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmRyb3Bkb3duIHtcbiAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogMDtcbiAgICAgICAgICBiYWNrZ3JvdW5kOiB0cmFuc3BhcmVudDtcbiAgICAgICAgICBtaW4td2lkdGg6IDEwMCU7XG4gICAgICAgICAgdG9wOiBhdXRvO1xuXG4gICAgICAgICAgbGkge1xuICAgICAgICAgICAgYSB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGluay1iZztcbiAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvcjtcbiAgICAgICAgICAgICAgbGluZS1oZWlnaHQ6ICR0b3BiYXItaGVpZ2h0O1xuICAgICAgICAgICAgICBwYWRkaW5nOiAxMnB4ICR0b3BiYXItbGluay1wYWRkaW5nO1xuICAgICAgICAgICAgICB3aGl0ZS1zcGFjZTogbm93cmFwO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAmOm5vdCguaGFzLWZvcm0pOm5vdCguYWN0aXZlKSB7XG4gICAgICAgICAgICAgID4gYTpub3QoLmJ1dHRvbikge1xuICAgICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGluay1iZztcbiAgICAgICAgICAgICAgICBjb2xvcjogJHRvcGJhci1kcm9wZG93bi1saW5rLWNvbG9yO1xuICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgJjpob3ZlciA+IGE6bm90KC5idXR0b24pIHtcbiAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kLWNvbG9yOiAkdG9wYmFyLWxpbmstYmctY29sb3ItaG92ZXI7XG4gICAgICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItZHJvcGRvd24tbGluay1jb2xvci1ob3ZlcjtcbiAgICAgICAgICAgICAgICBAaWYgKCR0b3BiYXItZHJvcGRvd24tbGluay1iZy1ob3Zlcikge1xuICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1kcm9wZG93bi1saW5rLWJnLWhvdmVyO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBsYWJlbCB7XG4gICAgICAgICAgICAgIGJhY2tncm91bmQ6ICR0b3BiYXItZHJvcGRvd24tbGFiZWwtYmc7XG4gICAgICAgICAgICAgIHdoaXRlLXNwYWNlOiBub3dyYXA7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIC8vIFNlY29uZCBMZXZlbCBEcm9wZG93bnNcbiAgICAgICAgICAgIC5kcm9wZG93biB7XG4gICAgICAgICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAxMDAlO1xuICAgICAgICAgICAgICB0b3A6IDA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgPiB1bCA+IC5kaXZpZGVyLFxuICAgICAgICA+IHVsID4gW3JvbGU9XCJzZXBhcmF0b3JcIl0ge1xuICAgICAgICAgIGJvcmRlci0jeyRvcHBvc2l0ZS1kaXJlY3Rpb259OiAkdG9wYmFyLWRpdmlkZXItYm9yZGVyLWJvdHRvbTtcbiAgICAgICAgICBib3JkZXItYm90dG9tOiBub25lO1xuICAgICAgICAgIGJvcmRlci10b3A6IG5vbmU7XG4gICAgICAgICAgY2xlYXI6IG5vbmU7XG4gICAgICAgICAgaGVpZ2h0OiAkdG9wYmFyLWhlaWdodDtcbiAgICAgICAgICB3aWR0aDogMDtcbiAgICAgICAgfVxuXG4gICAgICAgIC5oYXMtZm9ybSB7XG4gICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnO1xuICAgICAgICAgIGhlaWdodDogJHRvcGJhci1oZWlnaHQ7XG4gICAgICAgICAgcGFkZGluZzogMCAkdG9wYmFyLWxpbmstcGFkZGluZztcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIFBvc2l0aW9uIG92ZXJyaWRlcyBmb3IgdWwucmlnaHQgYW5kIHVsLmxlZnRcbiAgICAgICAgLiN7JG9wcG9zaXRlLWRpcmVjdGlvbn0ge1xuICAgICAgICAgIGxpIC5kcm9wZG93biB7XG4gICAgICAgICAgICAjeyRkZWZhdWx0LWZsb2F0fTogYXV0bztcbiAgICAgICAgICAgICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDA7XG5cbiAgICAgICAgICAgIGxpIC5kcm9wZG93biB7ICN7JG9wcG9zaXRlLWRpcmVjdGlvbn06IDEwMCU7IH1cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgLiN7JGRlZmF1bHQtZmxvYXR9IHtcbiAgICAgICAgICBsaSAuZHJvcGRvd24ge1xuICAgICAgICAgICAgI3skb3Bwb3NpdGUtZGlyZWN0aW9ufTogYXV0bztcbiAgICAgICAgICAgICN7JGRlZmF1bHQtZmxvYXR9OiAwO1xuXG4gICAgICAgICAgICBsaSAuZHJvcGRvd24geyAjeyRkZWZhdWx0LWZsb2F0fTogMTAwJTsgfVxuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgICAvLyBEZWdyYWRlIGdyYWNlZnVsbHkgd2hlbiBKYXZhc2NyaXB0IGlzIGRpc2FibGVkLiBEaXNwbGF5cyBkcm9wZG93biBhbmQgY2hhbmdlc1xuICAgICAgLy8gYmFja2dyb3VuZCAmIHRleHQgY29sb3Igb24gaG92ZXIuXG4gICAgICAubm8tanMgLnRvcC1iYXItc2VjdGlvbiB7XG4gICAgICAgIHVsIGxpIHtcbiAgICAgICAgICAvLyBBcHBseSB0aGUgaG92ZXIgbGluayBjb2xvciB3aGVuIGl0IGhhcyB0aGF0IGNsYXNzXG4gICAgICAgICAgJjpob3ZlciA+IGEge1xuICAgICAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogJHRvcGJhci1saW5rLWJnLWNvbG9yLWhvdmVyO1xuICAgICAgICAgICAgQGlmICgkdG9wYmFyLWxpbmstYmctaG92ZXIpIHtcbiAgICAgICAgICAgICAgYmFja2dyb3VuZDogJHRvcGJhci1saW5rLWJnLWhvdmVyO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1ob3ZlcjtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBBcHBseSB0aGUgYWN0aXZlIGxpbmsgY29sb3Igd2hlbiBpdCBoYXMgdGhhdCBjbGFzc1xuICAgICAgICAgICY6YWN0aXZlID4gYSB7XG4gICAgICAgICAgICBiYWNrZ3JvdW5kOiAkdG9wYmFyLWxpbmstYmctYWN0aXZlO1xuICAgICAgICAgICAgY29sb3I6ICR0b3BiYXItbGluay1jb2xvci1hY3RpdmU7XG4gICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLmhhcy1kcm9wZG93biB7XG4gICAgICAgICAgJjpob3ZlciB7XG4gICAgICAgICAgICA+IC5kcm9wZG93biB7XG4gICAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgPiBhOmZvY3VzICsgLmRyb3Bkb3duIHtcbiAgICAgICAgICAgIEBpbmNsdWRlIHRvcGJhci1zaG93LWRyb3Bkb3duKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCIvLyBGb3VuZGF0aW9uIGJ5IFpVUkJcbi8vIGZvdW5kYXRpb24uenVyYi5jb21cbi8vIExpY2Vuc2VkIHVuZGVyIE1JVCBPcGVuIFNvdXJjZVxuXG5AaW1wb3J0ICdnbG9iYWwnO1xuXG4vL1xuLy8gRm91bmRhdGlvbiBWaXNpYmlsaXR5IENsYXNzZXNcbi8vXG4kaW5jbHVkZS1odG1sLXZpc2liaWxpdHktY2xhc3NlczogJGluY2x1ZGUtaHRtbC1jbGFzc2VzICFkZWZhdWx0O1xuJGluY2x1ZGUtYWNjZXNzaWJpbGl0eS1jbGFzc2VzOiB0cnVlICFkZWZhdWx0O1xuJGluY2x1ZGUtdGFibGUtdmlzaWJpbGl0eS1jbGFzc2VzOiB0cnVlICFkZWZhdWx0O1xuJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlczogdHJ1ZSAhZGVmYXVsdDtcblxuLy9cbi8vIE1lZGlhIENsYXNzIE5hbWVzXG4vL1xuLy8gVmlzaWJpbGl0eSBCcmVha3BvaW50c1xuJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplczpcbiAgc21hbGwsXG4gIG1lZGl1bSxcbiAgbGFyZ2UsXG4gIHhsYXJnZSxcbiAgeHhsYXJnZTtcblxuJHZpc2liaWxpdHktYnJlYWtwb2ludC1xdWVyaWVzOlxuICB1bnF1b3RlKCRzbWFsbC11cCksXG4gIHVucXVvdGUoJG1lZGl1bS11cCksXG4gIHVucXVvdGUoJGxhcmdlLXVwKSxcbiAgdW5xdW90ZSgkeGxhcmdlLXVwKSxcbiAgdW5xdW90ZSgkeHhsYXJnZS11cCk7XG5cbkBtaXhpbiB2aXNpYmlsaXR5LWxvb3Age1xuICBAZWFjaCAkY3VycmVudC12aXNpYmlsaXR5LWJyZWFrcG9pbnQgaW4gJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcyB7XG4gICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS1ub25lLWxpc3Q6ICgpO1xuXG4gICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogKCk7XG5cbiAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogKCk7XG4gICAgJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3Q6ICgpO1xuICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiAoKTtcbiAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6ICgpO1xuXG4gICAgQGVhY2ggJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50IGluICR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMge1xuICAgICAgQGlmIGluZGV4KCR2aXNpYmlsaXR5LWJyZWFrcG9pbnQtc2l6ZXMsICR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludCkgPCBpbmRleCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzLCAkY3VycmVudC12aXNpYmlsaXR5LWJyZWFrcG9pbnQpIHtcbiAgICAgICAgLy8gU21hbGxlciB0aGFuIGN1cnJlbnQgYnJlYWtwb2ludFxuXG4gICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktaGlkZGVuLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgLy8gRm91bmRhdGlvbiA0IGNvbXBhdGliaWxpdHk6XG4gICAgICAgIC8vIEluY2x1ZGUgLnNob3cvaGlkZS1mb3ItW3NpemVdIGFuZCAuc2hvdy9oaWRlLWZvci1bc2l6ZV0tZG93biBjbGFzc2VzXG4gICAgICAgIC8vIGZvciBzbWFsbCwgbWVkaXVtLCBhbmQgbGFyZ2UgYnJlYWtwb2ludHMgb25seVxuICAgICAgICBAaWYgJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlcyBhbmQgaW5kZXgoKHNtYWxsLCBtZWRpdW0sIGxhcmdlKSwgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSAhPSBmYWxzZSB7XG4gICAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdmlzaWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAnLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duLCB0ZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgIH1cblxuICAgICAgfSBAZWxzZSBpZiBpbmRleCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzLCAkdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnQpID4gaW5kZXgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1zaXplcywgJGN1cnJlbnQtdmlzaWJpbGl0eS1icmVha3BvaW50KSB7XG4gICAgICAgIC8vIExhcmdlciB0aGFuIGN1cnJlbnQgYnJlYWtwb2ludFxuXG4gICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGRlbi1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWhpZGRlbi1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICcudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgLy8gRm91bmRhdGlvbiA0IGNvbXBhdGliaWxpdHk6XG4gICAgICAgIC8vIEluY2x1ZGUgLnNob3cvaGlkZS1mb3ItW3NpemVdIGFuZCAuc2hvdy9oaWRlLWZvci1bc2l6ZV0tZG93biBjbGFzc2VzXG4gICAgICAgIC8vIGZvciBzbWFsbCwgbWVkaXVtLCBhbmQgbGFyZ2UgYnJlYWtwb2ludHMgb25seVxuICAgICAgICBAaWYgJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlcyBhbmQgaW5kZXgoKHNtYWxsLCBtZWRpdW0sIGxhcmdlKSwgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSAhPSBmYWxzZSB7XG4gICAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdmlzaWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWhpZGRlbi1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0YWJsZS5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoZWFkLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGJvZHkuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0ci5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGguaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ZC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duLCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgIH1cblxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIC8vIEN1cnJlbnQgYnJlYWtwb2ludFxuXG4gICAgICAgICR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LWluaGVyaXQtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LW5vbmUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LW5vbmUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLmhpZGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXZpc2libGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXZpc2libGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAnLnZpc2libGUtZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAudmlzaWJsZS1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LWhpZGRlbi1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaGlkZGVuLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJy5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCAuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtaGVhZGVyLWdyb3VwLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAndGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCdcbiAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1yb3ctZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgJ3RyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1vbmx5LCB0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tdXAnXG4gICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICd0aC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tb25seSwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LW9ubHksIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS11cCwgdGQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LXVwJ1xuICAgICAgICApLCBjb21tYSk7XG5cbiAgICAgICAgLy8gRm91bmRhdGlvbiA0IGNvbXBhdGliaWxpdHk6XG4gICAgICAgIC8vIEluY2x1ZGUgLnNob3cvaGlkZS1mb3ItW3NpemVdIGFuZCAuc2hvdy9oaWRlLWZvci1bc2l6ZV0tZG93biBjbGFzc2VzXG4gICAgICAgIC8vIGZvciBzbWFsbCwgbWVkaXVtLCBhbmQgbGFyZ2UgYnJlYWtwb2ludHMgb25seVxuICAgICAgICBAaWYgJGluY2x1ZGUtbGVnYWN5LXZpc2liaWxpdHktY2xhc3NlcyBhbmQgaW5kZXgoKHNtYWxsLCBtZWRpdW0sIGxhcmdlKSwgJHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50KSAhPSBmYWxzZSB7XG4gICAgICAgICAgJHZpc2liaWxpdHktaW5oZXJpdC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktaW5oZXJpdC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktbm9uZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktbm9uZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdmlzaWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdmlzaWJsZS1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJy52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC52aXNpYmxlLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktaGlkZGVuLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS1oaWRkZW4tbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICcuaGlkZGVuLWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIC5oaWRkZW4tZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0YWJsZS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRhYmxlLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdDogYXBwZW5kKCR2aXNpYmlsaXR5LXRhYmxlLWhlYWRlci1ncm91cC1saXN0LCB1bnF1b3RlKFxuICAgICAgICAgICAgJ3RoZWFkLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fSwgdGhlYWQuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LWRvd24nXG4gICAgICAgICAgKSwgY29tbWEpO1xuICAgICAgICAgICR2aXNpYmlsaXR5LXRhYmxlLXJvdy1ncm91cC1saXN0OiBhcHBlbmQoJHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGJvZHkuc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0Ym9keS5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgICAgJHZpc2liaWxpdHktdGFibGUtcm93LWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1yb3ctbGlzdCwgdW5xdW90ZShcbiAgICAgICAgICAgICd0ci5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRyLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duJ1xuICAgICAgICAgICksIGNvbW1hKTtcbiAgICAgICAgICAkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3Q6IGFwcGVuZCgkdmlzaWJpbGl0eS10YWJsZS1jZWxsLWxpc3QsIHVucXVvdGUoXG4gICAgICAgICAgICAndGguc2hvdy1mb3ItI3skdmlzaWJpbGl0eS1jb21wYXJpc29uLWJyZWFrcG9pbnR9LCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0sIHRoLnNob3ctZm9yLSN7JHZpc2liaWxpdHktY29tcGFyaXNvbi1icmVha3BvaW50fS1kb3duLCB0ZC5zaG93LWZvci0jeyR2aXNpYmlsaXR5LWNvbXBhcmlzb24tYnJlYWtwb2ludH0tZG93bidcbiAgICAgICAgICApLCBjb21tYSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICAvKiAjeyRjdXJyZW50LXZpc2liaWxpdHktYnJlYWtwb2ludH0gZGlzcGxheXMgKi9cbiAgICBAbWVkaWEgI3tudGgoJHZpc2liaWxpdHktYnJlYWtwb2ludC1xdWVyaWVzLCBpbmRleCgkdmlzaWJpbGl0eS1icmVha3BvaW50LXNpemVzLCAkY3VycmVudC12aXNpYmlsaXR5LWJyZWFrcG9pbnQpKX0ge1xuICAgICAgI3skdmlzaWJpbGl0eS1pbmhlcml0LWxpc3R9IHtcbiAgICAgICAgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgI3skdmlzaWJpbGl0eS1ub25lLWxpc3R9IHtcbiAgICAgICAgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50O1xuICAgICAgfVxuICAgICAgQGlmICRpbmNsdWRlLWFjY2Vzc2liaWxpdHktY2xhc3NlcyAhPSBmYWxzZSB7XG4gICAgICAgICN7JHZpc2liaWxpdHktdmlzaWJsZS1saXN0fSB7XG4gICAgICAgICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGUtb2ZmO1xuICAgICAgICB9XG4gICAgICAgICN7JHZpc2liaWxpdHktaGlkZGVuLWxpc3R9IHtcbiAgICAgICAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgQGlmICRpbmNsdWRlLXRhYmxlLXZpc2liaWxpdHktY2xhc3NlcyAhPSBmYWxzZSB7XG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtbGlzdH0ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7XG4gICAgICAgIH1cbiAgICAgICAgI3skdmlzaWJpbGl0eS10YWJsZS1oZWFkZXItZ3JvdXAtbGlzdH0ge1xuICAgICAgICAgIGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtcm93LWdyb3VwLWxpc3R9IHtcbiAgICAgICAgICBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAjeyR2aXNpYmlsaXR5LXRhYmxlLXJvdy1saXN0fSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtcm93O1xuICAgICAgICB9XG4gICAgICAgICN7JHZpc2liaWxpdHktdGFibGUtY2VsbC1saXN0fSB7XG4gICAgICAgICAgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICB9XG59XG5cbkBpbmNsdWRlIGV4cG9ydHMoXCJ2aXNpYmlsaXR5XCIpe1xuICBAaWYgJGluY2x1ZGUtaHRtbC12aXNpYmlsaXR5LWNsYXNzZXMgIT0gZmFsc2Uge1xuXG4gIEBpbmNsdWRlIHZpc2liaWxpdHktbG9vcDtcblxuICAvKiBPcmllbnRhdGlvbiB0YXJnZXRpbmcgKi9cbiAgLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgLmhpZGUtZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gIC5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuXG4gIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xuICB0YWJsZSB7XG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgJi5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgfVxuICB0aGVhZCB7XG4gICAgJi5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgJi5zaG93LWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gIH1cbiAgdGJvZHkge1xuICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgICYuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB9XG4gIHRyIHtcbiAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSxcbiAgICAmLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgfVxuICB0ZCxcbiAgdGgge1xuICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlLFxuICAgICYuc2hvdy1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgfVxuXG4gIEBtZWRpYSAjeyRsYW5kc2NhcGV9IHtcbiAgICAuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgIC5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgIC5oaWRlLWZvci1sYW5kc2NhcGUsXG4gICAgLnNob3ctZm9yLXBvcnRyYWl0IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgICAvKiBTcGVjaWZpYyB2aXNpYmlsaXR5IGZvciB0YWJsZXMgKi9cbiAgICB0YWJsZSB7XG4gICAgICAmLnNob3ctZm9yLWxhbmRzY2FwZSxcbiAgICAgICYuaGlkZS1mb3ItcG9ydHJhaXQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRoZWFkIHtcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRib2R5IHtcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLXJvdy1ncm91cCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRyIHtcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgfVxuICAgIHRkLFxuICAgIHRoIHtcbiAgICAgICYuc2hvdy1mb3ItbGFuZHNjYXBlLFxuICAgICAgJi5oaWRlLWZvci1wb3J0cmFpdCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxuXG4gIEBtZWRpYSAjeyRwb3J0cmFpdH0ge1xuICAgIC5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogaW5oZXJpdCAhaW1wb3J0YW50OyB9XG4gICAgLmhpZGUtZm9yLXBvcnRyYWl0LFxuICAgIC5zaG93LWZvci1sYW5kc2NhcGUgeyBkaXNwbGF5OiBub25lICFpbXBvcnRhbnQ7IH1cblxuICAgIC8qIFNwZWNpZmljIHZpc2liaWxpdHkgZm9yIHRhYmxlcyAqL1xuICAgIHRhYmxlIHtcbiAgICAgICYuc2hvdy1mb3ItcG9ydHJhaXQsXG4gICAgICAmLmhpZGUtZm9yLWxhbmRzY2FwZSB7IGRpc3BsYXk6IHRhYmxlICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGhlYWQge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGJvZHkge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtcm93LWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdHIge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtcm93ICFpbXBvcnRhbnQ7IH1cbiAgICB9XG4gICAgdGQsXG4gICAgdGgge1xuICAgICAgJi5zaG93LWZvci1wb3J0cmFpdCxcbiAgICAgICYuaGlkZS1mb3ItbGFuZHNjYXBlIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgfVxuICB9XG5cbiAgLyogVG91Y2gtZW5hYmxlZCBkZXZpY2UgdGFyZ2V0aW5nICovXG4gIC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAuaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiBpbmhlcml0ICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAudG91Y2ggLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG5cbiAgLyogU3BlY2lmaWMgdmlzaWJpbGl0eSBmb3IgdGFibGVzICovXG4gIHRhYmxlLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdGFibGUuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gIHRoZWFkLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgLnRvdWNoIHRoZWFkLnNob3ctZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgdGJvZHkuaGlkZS1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdGJvZHkuc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICB0ci5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIC50b3VjaCB0ci5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gIHRkLmhpZGUtZm9yLXRvdWNoIHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gIC50b3VjaCB0ZC5zaG93LWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICB0aC5oaWRlLWZvci10b3VjaCB7IGRpc3BsYXk6IHRhYmxlLWNlbGwgIWltcG9ydGFudDsgfVxuICAudG91Y2ggdGguc2hvdy1mb3ItdG91Y2ggeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cblxuICAvKiBTY3JlZW4gcmVhZGVyLXNwZWNpZmljIGNsYXNzZXMgKi9cbiAgLnNob3ctZm9yLXNyIHtcbiAgICBAaW5jbHVkZSBlbGVtZW50LWludmlzaWJsZTtcbiAgfVxuICAuc2hvdy1vbi1mb2N1cyB7XG4gICAgQGluY2x1ZGUgZWxlbWVudC1pbnZpc2libGU7XG5cbiAgICAmOmZvY3VzLFxuICAgICY6YWN0aXZlIHtcbiAgICAgIEBpbmNsdWRlIGVsZW1lbnQtaW52aXNpYmxlLW9mZjtcbiAgICB9XG4gIH1cblxuICAvLyBPbmx5IGluY2x1ZGUgdGhlc2Ugc3R5bGVzIGlmIHlvdSB3YW50IHRoZW0uXG4gICAgQGlmICRpbmNsdWRlLXByaW50LXN0eWxlcyB7XG4gICAgICAvKlxuICAgICAgICogUHJpbnQgc3R5bGVzLlxuICAgICAgICpcbiAgICAgICAqIElubGluZWQgdG8gYXZvaWQgcmVxdWlyZWQgSFRUUCBjb25uZWN0aW9uOiB3d3cucGhwaWVkLmNvbS9kZWxheS1sb2FkaW5nLXlvdXItcHJpbnQtY3NzL1xuICAgICAgICogQ3JlZGl0IHRvIFBhdWwgSXJpc2ggYW5kIEhUTUw1IEJvaWxlcnBsYXRlIChodG1sNWJvaWxlcnBsYXRlLmNvbSlcbiAgICAgICovXG4gICAgICAucHJpbnQtb25seSB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgQG1lZGlhIHByaW50IHtcbiAgICAgICAgKiB7XG4gICAgICAgICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQgIWltcG9ydGFudDtcbiAgICAgICAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgICAgICAgY29sb3I6ICRibGFjayAhaW1wb3J0YW50OyAvKiBCbGFjayBwcmludHMgZmFzdGVyOiBoNWJwLmNvbS9zICovXG4gICAgICAgICAgdGV4dC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICAgICAgfVxuICAgICAgICAuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiBibG9jazsgfVxuICAgICAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgICAgdGFibGUuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIHRoZWFkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtaGVhZGVyLWdyb3VwICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgICAgICB0ci5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IHRhYmxlLXJvdyAhaW1wb3J0YW50OyB9XG4gICAgICAgIHRkLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgYSxcbiAgICAgICAgYTp2aXNpdGVkIHsgdGV4dC1kZWNvcmF0aW9uOiB1bmRlcmxpbmU7fVxuICAgICAgICBhW2hyZWZdOmFmdGVyIHsgY29udGVudDogXCIgKFwiIGF0dHIoaHJlZikgXCIpXCI7IH1cblxuICAgICAgICBhYmJyW3RpdGxlXTphZnRlciB7IGNvbnRlbnQ6IFwiIChcIiBhdHRyKHRpdGxlKSBcIilcIjsgfVxuXG4gICAgICAgIC8vIERvbid0IHNob3cgbGlua3MgZm9yIGltYWdlcywgb3IgamF2YXNjcmlwdC9pbnRlcm5hbCBsaW5rc1xuICAgICAgICAuaXIgYTphZnRlcixcbiAgICAgICAgYVtocmVmXj1cImphdmFzY3JpcHQ6XCJdOmFmdGVyLFxuICAgICAgICBhW2hyZWZePVwiI1wiXTphZnRlciB7IGNvbnRlbnQ6IFwiXCI7IH1cblxuICAgICAgICBwcmUsXG4gICAgICAgIGJsb2NrcXVvdGUge1xuICAgICAgICAgIGJvcmRlcjogMXB4IHNvbGlkICRhbHVtaW51bTtcbiAgICAgICAgICBwYWdlLWJyZWFrLWluc2lkZTogYXZvaWQ7XG4gICAgICAgIH1cblxuICAgICAgICB0aGVhZCB7IGRpc3BsYXk6IHRhYmxlLWhlYWRlci1ncm91cDsgLyogaDVicC5jb20vdCAqLyB9XG5cbiAgICAgICAgdHIsXG4gICAgICAgIGltZyB7IHBhZ2UtYnJlYWstaW5zaWRlOiBhdm9pZDsgfVxuXG4gICAgICAgIGltZyB7IG1heC13aWR0aDogMTAwJSAhaW1wb3J0YW50OyB9XG5cbiAgICAgICAgQHBhZ2UgeyBtYXJnaW46IC41Y207IH1cblxuICAgICAgICBwLFxuICAgICAgICBoMixcbiAgICAgICAgaDMge1xuICAgICAgICAgIG9ycGhhbnM6IDM7XG4gICAgICAgICAgd2lkb3dzOiAzO1xuICAgICAgICB9XG5cbiAgICAgICAgaDIsXG4gICAgICAgIGgzIHsgcGFnZS1icmVhay1hZnRlcjogYXZvaWQ7IH1cblxuICAgICAgICAuaGlkZS1vbi1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgICAgICAucHJpbnQtb25seSB7IGRpc3BsYXk6IGJsb2NrICFpbXBvcnRhbnQ7IH1cbiAgICAgICAgLmhpZGUtZm9yLXByaW50IHsgZGlzcGxheTogbm9uZSAhaW1wb3J0YW50OyB9XG4gICAgICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGluaGVyaXQgIWltcG9ydGFudDsgfVxuICAgICAgfVxuICAgIH1cblxuICAvKiBQcmludCB2aXNpYmlsaXR5ICovXG4gICAgQG1lZGlhIHByaW50IHtcbiAgICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IGJsb2NrOyB9XG4gICAgICAuaGlkZS1mb3ItcHJpbnQgeyBkaXNwbGF5OiBub25lOyB9XG5cbiAgICAgIHRhYmxlLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUgIWltcG9ydGFudDsgfVxuICAgICAgdGhlYWQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1oZWFkZXItZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgICAgdGJvZHkuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3ctZ3JvdXAgIWltcG9ydGFudDsgfVxuICAgICAgdHIuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1yb3cgIWltcG9ydGFudDsgfVxuICAgICAgdGQuc2hvdy1mb3ItcHJpbnQgeyBkaXNwbGF5OiB0YWJsZS1jZWxsICFpbXBvcnRhbnQ7IH1cbiAgICAgIHRoLnNob3ctZm9yLXByaW50IHsgZGlzcGxheTogdGFibGUtY2VsbCAhaW1wb3J0YW50OyB9XG4gICAgfVxuXG4gICAgQG1lZGlhIG5vdCBwcmludHtcbiAgICAgIC5zaG93LWZvci1wcmludCB7IGRpc3BsYXk6IG5vbmUgIWltcG9ydGFudDsgfVxuICAgIH1cbiAgfVxufVxuIiwiLyohXG4gKiAgRm9udCBBd2Vzb21lIDQuNC4wIGJ5IEBkYXZlZ2FuZHkgLSBodHRwOi8vZm9udGF3ZXNvbWUuaW8gLSBAZm9udGF3ZXNvbWVcbiAqICBMaWNlbnNlIC0gaHR0cDovL2ZvbnRhd2Vzb21lLmlvL2xpY2Vuc2UgKEZvbnQ6IFNJTCBPRkwgMS4xLCBDU1M6IE1JVCBMaWNlbnNlKVxuICovXG5cbkBpbXBvcnQgXCJ2YXJpYWJsZXNcIjtcbkBpbXBvcnQgXCJtaXhpbnNcIjtcbkBpbXBvcnQgXCJwYXRoXCI7XG5AaW1wb3J0IFwiY29yZVwiO1xuQGltcG9ydCBcImxhcmdlclwiO1xuQGltcG9ydCBcImZpeGVkLXdpZHRoXCI7XG5AaW1wb3J0IFwibGlzdFwiO1xuQGltcG9ydCBcImJvcmRlcmVkLXB1bGxlZFwiO1xuQGltcG9ydCBcImFuaW1hdGVkXCI7XG5AaW1wb3J0IFwicm90YXRlZC1mbGlwcGVkXCI7XG5AaW1wb3J0IFwic3RhY2tlZFwiO1xuQGltcG9ydCBcImljb25zXCI7XG4iLCIvKiBGT05UIFBBVEhcbiAqIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tICovXG5cbkBmb250LWZhY2Uge1xuICBmb250LWZhbWlseTogJ0ZvbnRBd2Vzb21lJztcbiAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC5lb3Q/dj0jeyRmYS12ZXJzaW9ufScpO1xuICBzcmM6IHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LmVvdD8jaWVmaXgmdj0jeyRmYS12ZXJzaW9ufScpIGZvcm1hdCgnZW1iZWRkZWQtb3BlbnR5cGUnKSxcbiAgICB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vZm9udGF3ZXNvbWUtd2ViZm9udC53b2ZmMj92PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCd3b2ZmMicpLFxuICAgIHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LndvZmY/dj0jeyRmYS12ZXJzaW9ufScpIGZvcm1hdCgnd29mZicpLFxuICAgIHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LnR0Zj92PSN7JGZhLXZlcnNpb259JykgZm9ybWF0KCd0cnVldHlwZScpLFxuICAgIHVybCgnI3skZmEtZm9udC1wYXRofS9mb250YXdlc29tZS13ZWJmb250LnN2Zz92PSN7JGZhLXZlcnNpb259I2ZvbnRhd2Vzb21lcmVndWxhcicpIGZvcm1hdCgnc3ZnJyk7XG4vLyAgc3JjOiB1cmwoJyN7JGZhLWZvbnQtcGF0aH0vRm9udEF3ZXNvbWUub3RmJykgZm9ybWF0KCdvcGVudHlwZScpOyAvLyB1c2VkIHdoZW4gZGV2ZWxvcGluZyBmb250c1xuICBmb250LXdlaWdodDogbm9ybWFsO1xuICBmb250LXN0eWxlOiBub3JtYWw7XG59XG4iLCIvLyBCYXNlIENsYXNzIERlZmluaXRpb25cbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9IHtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICBmb250OiBub3JtYWwgbm9ybWFsIG5vcm1hbCAjeyRmYS1mb250LXNpemUtYmFzZX0vI3skZmEtbGluZS1oZWlnaHQtYmFzZX0gRm9udEF3ZXNvbWU7IC8vIHNob3J0ZW5pbmcgZm9udCBkZWNsYXJhdGlvblxuICBmb250LXNpemU6IGluaGVyaXQ7IC8vIGNhbid0IGhhdmUgZm9udC1zaXplIGluaGVyaXQgb24gbGluZSBhYm92ZSwgc28gbmVlZCB0byBvdmVycmlkZVxuICB0ZXh0LXJlbmRlcmluZzogYXV0bzsgLy8gb3B0aW1pemVsZWdpYmlsaXR5IHRocm93cyB0aGluZ3Mgb2ZmICMxMDk0XG4gIC13ZWJraXQtZm9udC1zbW9vdGhpbmc6IGFudGlhbGlhc2VkO1xuICAtbW96LW9zeC1mb250LXNtb290aGluZzogZ3JheXNjYWxlO1xuXG59XG4iLCIvLyBJY29uIFNpemVzXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi8qIG1ha2VzIHRoZSBmb250IDMzJSBsYXJnZXIgcmVsYXRpdmUgdG8gdGhlIGljb24gY29udGFpbmVyICovXG4uI3skZmEtY3NzLXByZWZpeH0tbGcge1xuICBmb250LXNpemU6ICg0ZW0gLyAzKTtcbiAgbGluZS1oZWlnaHQ6ICgzZW0gLyA0KTtcbiAgdmVydGljYWwtYWxpZ246IC0xNSU7XG59XG4uI3skZmEtY3NzLXByZWZpeH0tMnggeyBmb250LXNpemU6IDJlbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LTN4IHsgZm9udC1zaXplOiAzZW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS00eCB7IGZvbnQtc2l6ZTogNGVtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tNXggeyBmb250LXNpemU6IDVlbTsgfVxuIiwiLy8gRml4ZWQgV2lkdGggSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cbi4jeyRmYS1jc3MtcHJlZml4fS1mdyB7XG4gIHdpZHRoOiAoMThlbSAvIDE0KTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuIiwiLy8gTGlzdCBJY29uc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tdWwge1xuICBwYWRkaW5nLWxlZnQ6IDA7XG4gIG1hcmdpbi1sZWZ0OiAkZmEtbGktd2lkdGg7XG4gIGxpc3Qtc3R5bGUtdHlwZTogbm9uZTtcbiAgPiBsaSB7IHBvc2l0aW9uOiByZWxhdGl2ZTsgfVxufVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpIHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAtJGZhLWxpLXdpZHRoO1xuICB3aWR0aDogJGZhLWxpLXdpZHRoO1xuICB0b3A6ICgyZW0gLyAxNCk7XG4gIHRleHQtYWxpZ246IGNlbnRlcjtcbiAgJi4jeyRmYS1jc3MtcHJlZml4fS1sZyB7XG4gICAgbGVmdDogLSRmYS1saS13aWR0aCArICg0ZW0gLyAxNCk7XG4gIH1cbn1cbiIsIi8vIFZhcmlhYmxlc1xuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuJGZhLWZvbnQtcGF0aDogICAgICAgIFwiLi4vZm9udHNcIiAhZGVmYXVsdDtcbiRmYS1mb250LXNpemUtYmFzZTogICAxNHB4ICFkZWZhdWx0O1xuJGZhLWxpbmUtaGVpZ2h0LWJhc2U6IDEgIWRlZmF1bHQ7XG4vLyRmYS1mb250LXBhdGg6ICAgICAgICBcIi8vbmV0ZG5hLmJvb3RzdHJhcGNkbi5jb20vZm9udC1hd2Vzb21lLzQuNC4wL2ZvbnRzXCIgIWRlZmF1bHQ7IC8vIGZvciByZWZlcmVuY2luZyBCb290c3RyYXAgQ0ROIGZvbnQgZmlsZXMgZGlyZWN0bHlcbiRmYS1jc3MtcHJlZml4OiAgICAgICBmYSAhZGVmYXVsdDtcbiRmYS12ZXJzaW9uOiAgICAgICAgICBcIjQuNC4wXCIgIWRlZmF1bHQ7XG4kZmEtYm9yZGVyLWNvbG9yOiAgICAgI2VlZSAhZGVmYXVsdDtcbiRmYS1pbnZlcnNlOiAgICAgICAgICAjZmZmICFkZWZhdWx0O1xuJGZhLWxpLXdpZHRoOiAgICAgICAgICgzMGVtIC8gMTQpICFkZWZhdWx0O1xuXG4kZmEtdmFyLTUwMHB4OiBcIlxcZjI2ZVwiO1xuJGZhLXZhci1hZGp1c3Q6IFwiXFxmMDQyXCI7XG4kZmEtdmFyLWFkbjogXCJcXGYxNzBcIjtcbiRmYS12YXItYWxpZ24tY2VudGVyOiBcIlxcZjAzN1wiO1xuJGZhLXZhci1hbGlnbi1qdXN0aWZ5OiBcIlxcZjAzOVwiO1xuJGZhLXZhci1hbGlnbi1sZWZ0OiBcIlxcZjAzNlwiO1xuJGZhLXZhci1hbGlnbi1yaWdodDogXCJcXGYwMzhcIjtcbiRmYS12YXItYW1hem9uOiBcIlxcZjI3MFwiO1xuJGZhLXZhci1hbWJ1bGFuY2U6IFwiXFxmMGY5XCI7XG4kZmEtdmFyLWFuY2hvcjogXCJcXGYxM2RcIjtcbiRmYS12YXItYW5kcm9pZDogXCJcXGYxN2JcIjtcbiRmYS12YXItYW5nZWxsaXN0OiBcIlxcZjIwOVwiO1xuJGZhLXZhci1hbmdsZS1kb3VibGUtZG93bjogXCJcXGYxMDNcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLWxlZnQ6IFwiXFxmMTAwXCI7XG4kZmEtdmFyLWFuZ2xlLWRvdWJsZS1yaWdodDogXCJcXGYxMDFcIjtcbiRmYS12YXItYW5nbGUtZG91YmxlLXVwOiBcIlxcZjEwMlwiO1xuJGZhLXZhci1hbmdsZS1kb3duOiBcIlxcZjEwN1wiO1xuJGZhLXZhci1hbmdsZS1sZWZ0OiBcIlxcZjEwNFwiO1xuJGZhLXZhci1hbmdsZS1yaWdodDogXCJcXGYxMDVcIjtcbiRmYS12YXItYW5nbGUtdXA6IFwiXFxmMTA2XCI7XG4kZmEtdmFyLWFwcGxlOiBcIlxcZjE3OVwiO1xuJGZhLXZhci1hcmNoaXZlOiBcIlxcZjE4N1wiO1xuJGZhLXZhci1hcmVhLWNoYXJ0OiBcIlxcZjFmZVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bjogXCJcXGYwYWJcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLWxlZnQ6IFwiXFxmMGE4XCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWRvd246IFwiXFxmMDFhXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLWxlZnQ6IFwiXFxmMTkwXCI7XG4kZmEtdmFyLWFycm93LWNpcmNsZS1vLXJpZ2h0OiBcIlxcZjE4ZVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtby11cDogXCJcXGYwMWJcIjtcbiRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0OiBcIlxcZjBhOVwiO1xuJGZhLXZhci1hcnJvdy1jaXJjbGUtdXA6IFwiXFxmMGFhXCI7XG4kZmEtdmFyLWFycm93LWRvd246IFwiXFxmMDYzXCI7XG4kZmEtdmFyLWFycm93LWxlZnQ6IFwiXFxmMDYwXCI7XG4kZmEtdmFyLWFycm93LXJpZ2h0OiBcIlxcZjA2MVwiO1xuJGZhLXZhci1hcnJvdy11cDogXCJcXGYwNjJcIjtcbiRmYS12YXItYXJyb3dzOiBcIlxcZjA0N1wiO1xuJGZhLXZhci1hcnJvd3MtYWx0OiBcIlxcZjBiMlwiO1xuJGZhLXZhci1hcnJvd3MtaDogXCJcXGYwN2VcIjtcbiRmYS12YXItYXJyb3dzLXY6IFwiXFxmMDdkXCI7XG4kZmEtdmFyLWFzdGVyaXNrOiBcIlxcZjA2OVwiO1xuJGZhLXZhci1hdDogXCJcXGYxZmFcIjtcbiRmYS12YXItYXV0b21vYmlsZTogXCJcXGYxYjlcIjtcbiRmYS12YXItYmFja3dhcmQ6IFwiXFxmMDRhXCI7XG4kZmEtdmFyLWJhbGFuY2Utc2NhbGU6IFwiXFxmMjRlXCI7XG4kZmEtdmFyLWJhbjogXCJcXGYwNWVcIjtcbiRmYS12YXItYmFuazogXCJcXGYxOWNcIjtcbiRmYS12YXItYmFyLWNoYXJ0OiBcIlxcZjA4MFwiO1xuJGZhLXZhci1iYXItY2hhcnQtbzogXCJcXGYwODBcIjtcbiRmYS12YXItYmFyY29kZTogXCJcXGYwMmFcIjtcbiRmYS12YXItYmFyczogXCJcXGYwYzlcIjtcbiRmYS12YXItYmF0dGVyeS0wOiBcIlxcZjI0NFwiO1xuJGZhLXZhci1iYXR0ZXJ5LTE6IFwiXFxmMjQzXCI7XG4kZmEtdmFyLWJhdHRlcnktMjogXCJcXGYyNDJcIjtcbiRmYS12YXItYmF0dGVyeS0zOiBcIlxcZjI0MVwiO1xuJGZhLXZhci1iYXR0ZXJ5LTQ6IFwiXFxmMjQwXCI7XG4kZmEtdmFyLWJhdHRlcnktZW1wdHk6IFwiXFxmMjQ0XCI7XG4kZmEtdmFyLWJhdHRlcnktZnVsbDogXCJcXGYyNDBcIjtcbiRmYS12YXItYmF0dGVyeS1oYWxmOiBcIlxcZjI0MlwiO1xuJGZhLXZhci1iYXR0ZXJ5LXF1YXJ0ZXI6IFwiXFxmMjQzXCI7XG4kZmEtdmFyLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM6IFwiXFxmMjQxXCI7XG4kZmEtdmFyLWJlZDogXCJcXGYyMzZcIjtcbiRmYS12YXItYmVlcjogXCJcXGYwZmNcIjtcbiRmYS12YXItYmVoYW5jZTogXCJcXGYxYjRcIjtcbiRmYS12YXItYmVoYW5jZS1zcXVhcmU6IFwiXFxmMWI1XCI7XG4kZmEtdmFyLWJlbGw6IFwiXFxmMGYzXCI7XG4kZmEtdmFyLWJlbGwtbzogXCJcXGYwYTJcIjtcbiRmYS12YXItYmVsbC1zbGFzaDogXCJcXGYxZjZcIjtcbiRmYS12YXItYmVsbC1zbGFzaC1vOiBcIlxcZjFmN1wiO1xuJGZhLXZhci1iaWN5Y2xlOiBcIlxcZjIwNlwiO1xuJGZhLXZhci1iaW5vY3VsYXJzOiBcIlxcZjFlNVwiO1xuJGZhLXZhci1iaXJ0aGRheS1jYWtlOiBcIlxcZjFmZFwiO1xuJGZhLXZhci1iaXRidWNrZXQ6IFwiXFxmMTcxXCI7XG4kZmEtdmFyLWJpdGJ1Y2tldC1zcXVhcmU6IFwiXFxmMTcyXCI7XG4kZmEtdmFyLWJpdGNvaW46IFwiXFxmMTVhXCI7XG4kZmEtdmFyLWJsYWNrLXRpZTogXCJcXGYyN2VcIjtcbiRmYS12YXItYm9sZDogXCJcXGYwMzJcIjtcbiRmYS12YXItYm9sdDogXCJcXGYwZTdcIjtcbiRmYS12YXItYm9tYjogXCJcXGYxZTJcIjtcbiRmYS12YXItYm9vazogXCJcXGYwMmRcIjtcbiRmYS12YXItYm9va21hcms6IFwiXFxmMDJlXCI7XG4kZmEtdmFyLWJvb2ttYXJrLW86IFwiXFxmMDk3XCI7XG4kZmEtdmFyLWJyaWVmY2FzZTogXCJcXGYwYjFcIjtcbiRmYS12YXItYnRjOiBcIlxcZjE1YVwiO1xuJGZhLXZhci1idWc6IFwiXFxmMTg4XCI7XG4kZmEtdmFyLWJ1aWxkaW5nOiBcIlxcZjFhZFwiO1xuJGZhLXZhci1idWlsZGluZy1vOiBcIlxcZjBmN1wiO1xuJGZhLXZhci1idWxsaG9ybjogXCJcXGYwYTFcIjtcbiRmYS12YXItYnVsbHNleWU6IFwiXFxmMTQwXCI7XG4kZmEtdmFyLWJ1czogXCJcXGYyMDdcIjtcbiRmYS12YXItYnV5c2VsbGFkczogXCJcXGYyMGRcIjtcbiRmYS12YXItY2FiOiBcIlxcZjFiYVwiO1xuJGZhLXZhci1jYWxjdWxhdG9yOiBcIlxcZjFlY1wiO1xuJGZhLXZhci1jYWxlbmRhcjogXCJcXGYwNzNcIjtcbiRmYS12YXItY2FsZW5kYXItY2hlY2stbzogXCJcXGYyNzRcIjtcbiRmYS12YXItY2FsZW5kYXItbWludXMtbzogXCJcXGYyNzJcIjtcbiRmYS12YXItY2FsZW5kYXItbzogXCJcXGYxMzNcIjtcbiRmYS12YXItY2FsZW5kYXItcGx1cy1vOiBcIlxcZjI3MVwiO1xuJGZhLXZhci1jYWxlbmRhci10aW1lcy1vOiBcIlxcZjI3M1wiO1xuJGZhLXZhci1jYW1lcmE6IFwiXFxmMDMwXCI7XG4kZmEtdmFyLWNhbWVyYS1yZXRybzogXCJcXGYwODNcIjtcbiRmYS12YXItY2FyOiBcIlxcZjFiOVwiO1xuJGZhLXZhci1jYXJldC1kb3duOiBcIlxcZjBkN1wiO1xuJGZhLXZhci1jYXJldC1sZWZ0OiBcIlxcZjBkOVwiO1xuJGZhLXZhci1jYXJldC1yaWdodDogXCJcXGYwZGFcIjtcbiRmYS12YXItY2FyZXQtc3F1YXJlLW8tZG93bjogXCJcXGYxNTBcIjtcbiRmYS12YXItY2FyZXQtc3F1YXJlLW8tbGVmdDogXCJcXGYxOTFcIjtcbiRmYS12YXItY2FyZXQtc3F1YXJlLW8tcmlnaHQ6IFwiXFxmMTUyXCI7XG4kZmEtdmFyLWNhcmV0LXNxdWFyZS1vLXVwOiBcIlxcZjE1MVwiO1xuJGZhLXZhci1jYXJldC11cDogXCJcXGYwZDhcIjtcbiRmYS12YXItY2FydC1hcnJvdy1kb3duOiBcIlxcZjIxOFwiO1xuJGZhLXZhci1jYXJ0LXBsdXM6IFwiXFxmMjE3XCI7XG4kZmEtdmFyLWNjOiBcIlxcZjIwYVwiO1xuJGZhLXZhci1jYy1hbWV4OiBcIlxcZjFmM1wiO1xuJGZhLXZhci1jYy1kaW5lcnMtY2x1YjogXCJcXGYyNGNcIjtcbiRmYS12YXItY2MtZGlzY292ZXI6IFwiXFxmMWYyXCI7XG4kZmEtdmFyLWNjLWpjYjogXCJcXGYyNGJcIjtcbiRmYS12YXItY2MtbWFzdGVyY2FyZDogXCJcXGYxZjFcIjtcbiRmYS12YXItY2MtcGF5cGFsOiBcIlxcZjFmNFwiO1xuJGZhLXZhci1jYy1zdHJpcGU6IFwiXFxmMWY1XCI7XG4kZmEtdmFyLWNjLXZpc2E6IFwiXFxmMWYwXCI7XG4kZmEtdmFyLWNlcnRpZmljYXRlOiBcIlxcZjBhM1wiO1xuJGZhLXZhci1jaGFpbjogXCJcXGYwYzFcIjtcbiRmYS12YXItY2hhaW4tYnJva2VuOiBcIlxcZjEyN1wiO1xuJGZhLXZhci1jaGVjazogXCJcXGYwMGNcIjtcbiRmYS12YXItY2hlY2stY2lyY2xlOiBcIlxcZjA1OFwiO1xuJGZhLXZhci1jaGVjay1jaXJjbGUtbzogXCJcXGYwNWRcIjtcbiRmYS12YXItY2hlY2stc3F1YXJlOiBcIlxcZjE0YVwiO1xuJGZhLXZhci1jaGVjay1zcXVhcmUtbzogXCJcXGYwNDZcIjtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtZG93bjogXCJcXGYxM2FcIjtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtbGVmdDogXCJcXGYxMzdcIjtcbiRmYS12YXItY2hldnJvbi1jaXJjbGUtcmlnaHQ6IFwiXFxmMTM4XCI7XG4kZmEtdmFyLWNoZXZyb24tY2lyY2xlLXVwOiBcIlxcZjEzOVwiO1xuJGZhLXZhci1jaGV2cm9uLWRvd246IFwiXFxmMDc4XCI7XG4kZmEtdmFyLWNoZXZyb24tbGVmdDogXCJcXGYwNTNcIjtcbiRmYS12YXItY2hldnJvbi1yaWdodDogXCJcXGYwNTRcIjtcbiRmYS12YXItY2hldnJvbi11cDogXCJcXGYwNzdcIjtcbiRmYS12YXItY2hpbGQ6IFwiXFxmMWFlXCI7XG4kZmEtdmFyLWNocm9tZTogXCJcXGYyNjhcIjtcbiRmYS12YXItY2lyY2xlOiBcIlxcZjExMVwiO1xuJGZhLXZhci1jaXJjbGUtbzogXCJcXGYxMGNcIjtcbiRmYS12YXItY2lyY2xlLW8tbm90Y2g6IFwiXFxmMWNlXCI7XG4kZmEtdmFyLWNpcmNsZS10aGluOiBcIlxcZjFkYlwiO1xuJGZhLXZhci1jbGlwYm9hcmQ6IFwiXFxmMGVhXCI7XG4kZmEtdmFyLWNsb2NrLW86IFwiXFxmMDE3XCI7XG4kZmEtdmFyLWNsb25lOiBcIlxcZjI0ZFwiO1xuJGZhLXZhci1jbG9zZTogXCJcXGYwMGRcIjtcbiRmYS12YXItY2xvdWQ6IFwiXFxmMGMyXCI7XG4kZmEtdmFyLWNsb3VkLWRvd25sb2FkOiBcIlxcZjBlZFwiO1xuJGZhLXZhci1jbG91ZC11cGxvYWQ6IFwiXFxmMGVlXCI7XG4kZmEtdmFyLWNueTogXCJcXGYxNTdcIjtcbiRmYS12YXItY29kZTogXCJcXGYxMjFcIjtcbiRmYS12YXItY29kZS1mb3JrOiBcIlxcZjEyNlwiO1xuJGZhLXZhci1jb2RlcGVuOiBcIlxcZjFjYlwiO1xuJGZhLXZhci1jb2ZmZWU6IFwiXFxmMGY0XCI7XG4kZmEtdmFyLWNvZzogXCJcXGYwMTNcIjtcbiRmYS12YXItY29nczogXCJcXGYwODVcIjtcbiRmYS12YXItY29sdW1uczogXCJcXGYwZGJcIjtcbiRmYS12YXItY29tbWVudDogXCJcXGYwNzVcIjtcbiRmYS12YXItY29tbWVudC1vOiBcIlxcZjBlNVwiO1xuJGZhLXZhci1jb21tZW50aW5nOiBcIlxcZjI3YVwiO1xuJGZhLXZhci1jb21tZW50aW5nLW86IFwiXFxmMjdiXCI7XG4kZmEtdmFyLWNvbW1lbnRzOiBcIlxcZjA4NlwiO1xuJGZhLXZhci1jb21tZW50cy1vOiBcIlxcZjBlNlwiO1xuJGZhLXZhci1jb21wYXNzOiBcIlxcZjE0ZVwiO1xuJGZhLXZhci1jb21wcmVzczogXCJcXGYwNjZcIjtcbiRmYS12YXItY29ubmVjdGRldmVsb3A6IFwiXFxmMjBlXCI7XG4kZmEtdmFyLWNvbnRhbzogXCJcXGYyNmRcIjtcbiRmYS12YXItY29weTogXCJcXGYwYzVcIjtcbiRmYS12YXItY29weXJpZ2h0OiBcIlxcZjFmOVwiO1xuJGZhLXZhci1jcmVhdGl2ZS1jb21tb25zOiBcIlxcZjI1ZVwiO1xuJGZhLXZhci1jcmVkaXQtY2FyZDogXCJcXGYwOWRcIjtcbiRmYS12YXItY3JvcDogXCJcXGYxMjVcIjtcbiRmYS12YXItY3Jvc3NoYWlyczogXCJcXGYwNWJcIjtcbiRmYS12YXItY3NzMzogXCJcXGYxM2NcIjtcbiRmYS12YXItY3ViZTogXCJcXGYxYjJcIjtcbiRmYS12YXItY3ViZXM6IFwiXFxmMWIzXCI7XG4kZmEtdmFyLWN1dDogXCJcXGYwYzRcIjtcbiRmYS12YXItY3V0bGVyeTogXCJcXGYwZjVcIjtcbiRmYS12YXItZGFzaGJvYXJkOiBcIlxcZjBlNFwiO1xuJGZhLXZhci1kYXNoY3ViZTogXCJcXGYyMTBcIjtcbiRmYS12YXItZGF0YWJhc2U6IFwiXFxmMWMwXCI7XG4kZmEtdmFyLWRlZGVudDogXCJcXGYwM2JcIjtcbiRmYS12YXItZGVsaWNpb3VzOiBcIlxcZjFhNVwiO1xuJGZhLXZhci1kZXNrdG9wOiBcIlxcZjEwOFwiO1xuJGZhLXZhci1kZXZpYW50YXJ0OiBcIlxcZjFiZFwiO1xuJGZhLXZhci1kaWFtb25kOiBcIlxcZjIxOVwiO1xuJGZhLXZhci1kaWdnOiBcIlxcZjFhNlwiO1xuJGZhLXZhci1kb2xsYXI6IFwiXFxmMTU1XCI7XG4kZmEtdmFyLWRvdC1jaXJjbGUtbzogXCJcXGYxOTJcIjtcbiRmYS12YXItZG93bmxvYWQ6IFwiXFxmMDE5XCI7XG4kZmEtdmFyLWRyaWJiYmxlOiBcIlxcZjE3ZFwiO1xuJGZhLXZhci1kcm9wYm94OiBcIlxcZjE2YlwiO1xuJGZhLXZhci1kcnVwYWw6IFwiXFxmMWE5XCI7XG4kZmEtdmFyLWVkaXQ6IFwiXFxmMDQ0XCI7XG4kZmEtdmFyLWVqZWN0OiBcIlxcZjA1MlwiO1xuJGZhLXZhci1lbGxpcHNpcy1oOiBcIlxcZjE0MVwiO1xuJGZhLXZhci1lbGxpcHNpcy12OiBcIlxcZjE0MlwiO1xuJGZhLXZhci1lbXBpcmU6IFwiXFxmMWQxXCI7XG4kZmEtdmFyLWVudmVsb3BlOiBcIlxcZjBlMFwiO1xuJGZhLXZhci1lbnZlbG9wZS1vOiBcIlxcZjAwM1wiO1xuJGZhLXZhci1lbnZlbG9wZS1zcXVhcmU6IFwiXFxmMTk5XCI7XG4kZmEtdmFyLWVyYXNlcjogXCJcXGYxMmRcIjtcbiRmYS12YXItZXVyOiBcIlxcZjE1M1wiO1xuJGZhLXZhci1ldXJvOiBcIlxcZjE1M1wiO1xuJGZhLXZhci1leGNoYW5nZTogXCJcXGYwZWNcIjtcbiRmYS12YXItZXhjbGFtYXRpb246IFwiXFxmMTJhXCI7XG4kZmEtdmFyLWV4Y2xhbWF0aW9uLWNpcmNsZTogXCJcXGYwNmFcIjtcbiRmYS12YXItZXhjbGFtYXRpb24tdHJpYW5nbGU6IFwiXFxmMDcxXCI7XG4kZmEtdmFyLWV4cGFuZDogXCJcXGYwNjVcIjtcbiRmYS12YXItZXhwZWRpdGVkc3NsOiBcIlxcZjIzZVwiO1xuJGZhLXZhci1leHRlcm5hbC1saW5rOiBcIlxcZjA4ZVwiO1xuJGZhLXZhci1leHRlcm5hbC1saW5rLXNxdWFyZTogXCJcXGYxNGNcIjtcbiRmYS12YXItZXllOiBcIlxcZjA2ZVwiO1xuJGZhLXZhci1leWUtc2xhc2g6IFwiXFxmMDcwXCI7XG4kZmEtdmFyLWV5ZWRyb3BwZXI6IFwiXFxmMWZiXCI7XG4kZmEtdmFyLWZhY2Vib29rOiBcIlxcZjA5YVwiO1xuJGZhLXZhci1mYWNlYm9vay1mOiBcIlxcZjA5YVwiO1xuJGZhLXZhci1mYWNlYm9vay1vZmZpY2lhbDogXCJcXGYyMzBcIjtcbiRmYS12YXItZmFjZWJvb2stc3F1YXJlOiBcIlxcZjA4MlwiO1xuJGZhLXZhci1mYXN0LWJhY2t3YXJkOiBcIlxcZjA0OVwiO1xuJGZhLXZhci1mYXN0LWZvcndhcmQ6IFwiXFxmMDUwXCI7XG4kZmEtdmFyLWZheDogXCJcXGYxYWNcIjtcbiRmYS12YXItZmVlZDogXCJcXGYwOWVcIjtcbiRmYS12YXItZmVtYWxlOiBcIlxcZjE4MlwiO1xuJGZhLXZhci1maWdodGVyLWpldDogXCJcXGYwZmJcIjtcbiRmYS12YXItZmlsZTogXCJcXGYxNWJcIjtcbiRmYS12YXItZmlsZS1hcmNoaXZlLW86IFwiXFxmMWM2XCI7XG4kZmEtdmFyLWZpbGUtYXVkaW8tbzogXCJcXGYxYzdcIjtcbiRmYS12YXItZmlsZS1jb2RlLW86IFwiXFxmMWM5XCI7XG4kZmEtdmFyLWZpbGUtZXhjZWwtbzogXCJcXGYxYzNcIjtcbiRmYS12YXItZmlsZS1pbWFnZS1vOiBcIlxcZjFjNVwiO1xuJGZhLXZhci1maWxlLW1vdmllLW86IFwiXFxmMWM4XCI7XG4kZmEtdmFyLWZpbGUtbzogXCJcXGYwMTZcIjtcbiRmYS12YXItZmlsZS1wZGYtbzogXCJcXGYxYzFcIjtcbiRmYS12YXItZmlsZS1waG90by1vOiBcIlxcZjFjNVwiO1xuJGZhLXZhci1maWxlLXBpY3R1cmUtbzogXCJcXGYxYzVcIjtcbiRmYS12YXItZmlsZS1wb3dlcnBvaW50LW86IFwiXFxmMWM0XCI7XG4kZmEtdmFyLWZpbGUtc291bmQtbzogXCJcXGYxYzdcIjtcbiRmYS12YXItZmlsZS10ZXh0OiBcIlxcZjE1Y1wiO1xuJGZhLXZhci1maWxlLXRleHQtbzogXCJcXGYwZjZcIjtcbiRmYS12YXItZmlsZS12aWRlby1vOiBcIlxcZjFjOFwiO1xuJGZhLXZhci1maWxlLXdvcmQtbzogXCJcXGYxYzJcIjtcbiRmYS12YXItZmlsZS16aXAtbzogXCJcXGYxYzZcIjtcbiRmYS12YXItZmlsZXMtbzogXCJcXGYwYzVcIjtcbiRmYS12YXItZmlsbTogXCJcXGYwMDhcIjtcbiRmYS12YXItZmlsdGVyOiBcIlxcZjBiMFwiO1xuJGZhLXZhci1maXJlOiBcIlxcZjA2ZFwiO1xuJGZhLXZhci1maXJlLWV4dGluZ3Vpc2hlcjogXCJcXGYxMzRcIjtcbiRmYS12YXItZmlyZWZveDogXCJcXGYyNjlcIjtcbiRmYS12YXItZmxhZzogXCJcXGYwMjRcIjtcbiRmYS12YXItZmxhZy1jaGVja2VyZWQ6IFwiXFxmMTFlXCI7XG4kZmEtdmFyLWZsYWctbzogXCJcXGYxMWRcIjtcbiRmYS12YXItZmxhc2g6IFwiXFxmMGU3XCI7XG4kZmEtdmFyLWZsYXNrOiBcIlxcZjBjM1wiO1xuJGZhLXZhci1mbGlja3I6IFwiXFxmMTZlXCI7XG4kZmEtdmFyLWZsb3BweS1vOiBcIlxcZjBjN1wiO1xuJGZhLXZhci1mb2xkZXI6IFwiXFxmMDdiXCI7XG4kZmEtdmFyLWZvbGRlci1vOiBcIlxcZjExNFwiO1xuJGZhLXZhci1mb2xkZXItb3BlbjogXCJcXGYwN2NcIjtcbiRmYS12YXItZm9sZGVyLW9wZW4tbzogXCJcXGYxMTVcIjtcbiRmYS12YXItZm9udDogXCJcXGYwMzFcIjtcbiRmYS12YXItZm9udGljb25zOiBcIlxcZjI4MFwiO1xuJGZhLXZhci1mb3J1bWJlZTogXCJcXGYyMTFcIjtcbiRmYS12YXItZm9yd2FyZDogXCJcXGYwNGVcIjtcbiRmYS12YXItZm91cnNxdWFyZTogXCJcXGYxODBcIjtcbiRmYS12YXItZnJvd24tbzogXCJcXGYxMTlcIjtcbiRmYS12YXItZnV0Ym9sLW86IFwiXFxmMWUzXCI7XG4kZmEtdmFyLWdhbWVwYWQ6IFwiXFxmMTFiXCI7XG4kZmEtdmFyLWdhdmVsOiBcIlxcZjBlM1wiO1xuJGZhLXZhci1nYnA6IFwiXFxmMTU0XCI7XG4kZmEtdmFyLWdlOiBcIlxcZjFkMVwiO1xuJGZhLXZhci1nZWFyOiBcIlxcZjAxM1wiO1xuJGZhLXZhci1nZWFyczogXCJcXGYwODVcIjtcbiRmYS12YXItZ2VuZGVybGVzczogXCJcXGYyMmRcIjtcbiRmYS12YXItZ2V0LXBvY2tldDogXCJcXGYyNjVcIjtcbiRmYS12YXItZ2c6IFwiXFxmMjYwXCI7XG4kZmEtdmFyLWdnLWNpcmNsZTogXCJcXGYyNjFcIjtcbiRmYS12YXItZ2lmdDogXCJcXGYwNmJcIjtcbiRmYS12YXItZ2l0OiBcIlxcZjFkM1wiO1xuJGZhLXZhci1naXQtc3F1YXJlOiBcIlxcZjFkMlwiO1xuJGZhLXZhci1naXRodWI6IFwiXFxmMDliXCI7XG4kZmEtdmFyLWdpdGh1Yi1hbHQ6IFwiXFxmMTEzXCI7XG4kZmEtdmFyLWdpdGh1Yi1zcXVhcmU6IFwiXFxmMDkyXCI7XG4kZmEtdmFyLWdpdHRpcDogXCJcXGYxODRcIjtcbiRmYS12YXItZ2xhc3M6IFwiXFxmMDAwXCI7XG4kZmEtdmFyLWdsb2JlOiBcIlxcZjBhY1wiO1xuJGZhLXZhci1nb29nbGU6IFwiXFxmMWEwXCI7XG4kZmEtdmFyLWdvb2dsZS1wbHVzOiBcIlxcZjBkNVwiO1xuJGZhLXZhci1nb29nbGUtcGx1cy1zcXVhcmU6IFwiXFxmMGQ0XCI7XG4kZmEtdmFyLWdvb2dsZS13YWxsZXQ6IFwiXFxmMWVlXCI7XG4kZmEtdmFyLWdyYWR1YXRpb24tY2FwOiBcIlxcZjE5ZFwiO1xuJGZhLXZhci1ncmF0aXBheTogXCJcXGYxODRcIjtcbiRmYS12YXItZ3JvdXA6IFwiXFxmMGMwXCI7XG4kZmEtdmFyLWgtc3F1YXJlOiBcIlxcZjBmZFwiO1xuJGZhLXZhci1oYWNrZXItbmV3czogXCJcXGYxZDRcIjtcbiRmYS12YXItaGFuZC1ncmFiLW86IFwiXFxmMjU1XCI7XG4kZmEtdmFyLWhhbmQtbGl6YXJkLW86IFwiXFxmMjU4XCI7XG4kZmEtdmFyLWhhbmQtby1kb3duOiBcIlxcZjBhN1wiO1xuJGZhLXZhci1oYW5kLW8tbGVmdDogXCJcXGYwYTVcIjtcbiRmYS12YXItaGFuZC1vLXJpZ2h0OiBcIlxcZjBhNFwiO1xuJGZhLXZhci1oYW5kLW8tdXA6IFwiXFxmMGE2XCI7XG4kZmEtdmFyLWhhbmQtcGFwZXItbzogXCJcXGYyNTZcIjtcbiRmYS12YXItaGFuZC1wZWFjZS1vOiBcIlxcZjI1YlwiO1xuJGZhLXZhci1oYW5kLXBvaW50ZXItbzogXCJcXGYyNWFcIjtcbiRmYS12YXItaGFuZC1yb2NrLW86IFwiXFxmMjU1XCI7XG4kZmEtdmFyLWhhbmQtc2Npc3NvcnMtbzogXCJcXGYyNTdcIjtcbiRmYS12YXItaGFuZC1zcG9jay1vOiBcIlxcZjI1OVwiO1xuJGZhLXZhci1oYW5kLXN0b3AtbzogXCJcXGYyNTZcIjtcbiRmYS12YXItaGRkLW86IFwiXFxmMGEwXCI7XG4kZmEtdmFyLWhlYWRlcjogXCJcXGYxZGNcIjtcbiRmYS12YXItaGVhZHBob25lczogXCJcXGYwMjVcIjtcbiRmYS12YXItaGVhcnQ6IFwiXFxmMDA0XCI7XG4kZmEtdmFyLWhlYXJ0LW86IFwiXFxmMDhhXCI7XG4kZmEtdmFyLWhlYXJ0YmVhdDogXCJcXGYyMWVcIjtcbiRmYS12YXItaGlzdG9yeTogXCJcXGYxZGFcIjtcbiRmYS12YXItaG9tZTogXCJcXGYwMTVcIjtcbiRmYS12YXItaG9zcGl0YWwtbzogXCJcXGYwZjhcIjtcbiRmYS12YXItaG90ZWw6IFwiXFxmMjM2XCI7XG4kZmEtdmFyLWhvdXJnbGFzczogXCJcXGYyNTRcIjtcbiRmYS12YXItaG91cmdsYXNzLTE6IFwiXFxmMjUxXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy0yOiBcIlxcZjI1MlwiO1xuJGZhLXZhci1ob3VyZ2xhc3MtMzogXCJcXGYyNTNcIjtcbiRmYS12YXItaG91cmdsYXNzLWVuZDogXCJcXGYyNTNcIjtcbiRmYS12YXItaG91cmdsYXNzLWhhbGY6IFwiXFxmMjUyXCI7XG4kZmEtdmFyLWhvdXJnbGFzcy1vOiBcIlxcZjI1MFwiO1xuJGZhLXZhci1ob3VyZ2xhc3Mtc3RhcnQ6IFwiXFxmMjUxXCI7XG4kZmEtdmFyLWhvdXp6OiBcIlxcZjI3Y1wiO1xuJGZhLXZhci1odG1sNTogXCJcXGYxM2JcIjtcbiRmYS12YXItaS1jdXJzb3I6IFwiXFxmMjQ2XCI7XG4kZmEtdmFyLWlsczogXCJcXGYyMGJcIjtcbiRmYS12YXItaW1hZ2U6IFwiXFxmMDNlXCI7XG4kZmEtdmFyLWluYm94OiBcIlxcZjAxY1wiO1xuJGZhLXZhci1pbmRlbnQ6IFwiXFxmMDNjXCI7XG4kZmEtdmFyLWluZHVzdHJ5OiBcIlxcZjI3NVwiO1xuJGZhLXZhci1pbmZvOiBcIlxcZjEyOVwiO1xuJGZhLXZhci1pbmZvLWNpcmNsZTogXCJcXGYwNWFcIjtcbiRmYS12YXItaW5yOiBcIlxcZjE1NlwiO1xuJGZhLXZhci1pbnN0YWdyYW06IFwiXFxmMTZkXCI7XG4kZmEtdmFyLWluc3RpdHV0aW9uOiBcIlxcZjE5Y1wiO1xuJGZhLXZhci1pbnRlcm5ldC1leHBsb3JlcjogXCJcXGYyNmJcIjtcbiRmYS12YXItaW50ZXJzZXg6IFwiXFxmMjI0XCI7XG4kZmEtdmFyLWlveGhvc3Q6IFwiXFxmMjA4XCI7XG4kZmEtdmFyLWl0YWxpYzogXCJcXGYwMzNcIjtcbiRmYS12YXItam9vbWxhOiBcIlxcZjFhYVwiO1xuJGZhLXZhci1qcHk6IFwiXFxmMTU3XCI7XG4kZmEtdmFyLWpzZmlkZGxlOiBcIlxcZjFjY1wiO1xuJGZhLXZhci1rZXk6IFwiXFxmMDg0XCI7XG4kZmEtdmFyLWtleWJvYXJkLW86IFwiXFxmMTFjXCI7XG4kZmEtdmFyLWtydzogXCJcXGYxNTlcIjtcbiRmYS12YXItbGFuZ3VhZ2U6IFwiXFxmMWFiXCI7XG4kZmEtdmFyLWxhcHRvcDogXCJcXGYxMDlcIjtcbiRmYS12YXItbGFzdGZtOiBcIlxcZjIwMlwiO1xuJGZhLXZhci1sYXN0Zm0tc3F1YXJlOiBcIlxcZjIwM1wiO1xuJGZhLXZhci1sZWFmOiBcIlxcZjA2Y1wiO1xuJGZhLXZhci1sZWFucHViOiBcIlxcZjIxMlwiO1xuJGZhLXZhci1sZWdhbDogXCJcXGYwZTNcIjtcbiRmYS12YXItbGVtb24tbzogXCJcXGYwOTRcIjtcbiRmYS12YXItbGV2ZWwtZG93bjogXCJcXGYxNDlcIjtcbiRmYS12YXItbGV2ZWwtdXA6IFwiXFxmMTQ4XCI7XG4kZmEtdmFyLWxpZmUtYm91eTogXCJcXGYxY2RcIjtcbiRmYS12YXItbGlmZS1idW95OiBcIlxcZjFjZFwiO1xuJGZhLXZhci1saWZlLXJpbmc6IFwiXFxmMWNkXCI7XG4kZmEtdmFyLWxpZmUtc2F2ZXI6IFwiXFxmMWNkXCI7XG4kZmEtdmFyLWxpZ2h0YnVsYi1vOiBcIlxcZjBlYlwiO1xuJGZhLXZhci1saW5lLWNoYXJ0OiBcIlxcZjIwMVwiO1xuJGZhLXZhci1saW5rOiBcIlxcZjBjMVwiO1xuJGZhLXZhci1saW5rZWRpbjogXCJcXGYwZTFcIjtcbiRmYS12YXItbGlua2VkaW4tc3F1YXJlOiBcIlxcZjA4Y1wiO1xuJGZhLXZhci1saW51eDogXCJcXGYxN2NcIjtcbiRmYS12YXItbGlzdDogXCJcXGYwM2FcIjtcbiRmYS12YXItbGlzdC1hbHQ6IFwiXFxmMDIyXCI7XG4kZmEtdmFyLWxpc3Qtb2w6IFwiXFxmMGNiXCI7XG4kZmEtdmFyLWxpc3QtdWw6IFwiXFxmMGNhXCI7XG4kZmEtdmFyLWxvY2F0aW9uLWFycm93OiBcIlxcZjEyNFwiO1xuJGZhLXZhci1sb2NrOiBcIlxcZjAyM1wiO1xuJGZhLXZhci1sb25nLWFycm93LWRvd246IFwiXFxmMTc1XCI7XG4kZmEtdmFyLWxvbmctYXJyb3ctbGVmdDogXCJcXGYxNzdcIjtcbiRmYS12YXItbG9uZy1hcnJvdy1yaWdodDogXCJcXGYxNzhcIjtcbiRmYS12YXItbG9uZy1hcnJvdy11cDogXCJcXGYxNzZcIjtcbiRmYS12YXItbWFnaWM6IFwiXFxmMGQwXCI7XG4kZmEtdmFyLW1hZ25ldDogXCJcXGYwNzZcIjtcbiRmYS12YXItbWFpbC1mb3J3YXJkOiBcIlxcZjA2NFwiO1xuJGZhLXZhci1tYWlsLXJlcGx5OiBcIlxcZjExMlwiO1xuJGZhLXZhci1tYWlsLXJlcGx5LWFsbDogXCJcXGYxMjJcIjtcbiRmYS12YXItbWFsZTogXCJcXGYxODNcIjtcbiRmYS12YXItbWFwOiBcIlxcZjI3OVwiO1xuJGZhLXZhci1tYXAtbWFya2VyOiBcIlxcZjA0MVwiO1xuJGZhLXZhci1tYXAtbzogXCJcXGYyNzhcIjtcbiRmYS12YXItbWFwLXBpbjogXCJcXGYyNzZcIjtcbiRmYS12YXItbWFwLXNpZ25zOiBcIlxcZjI3N1wiO1xuJGZhLXZhci1tYXJzOiBcIlxcZjIyMlwiO1xuJGZhLXZhci1tYXJzLWRvdWJsZTogXCJcXGYyMjdcIjtcbiRmYS12YXItbWFycy1zdHJva2U6IFwiXFxmMjI5XCI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlLWg6IFwiXFxmMjJiXCI7XG4kZmEtdmFyLW1hcnMtc3Ryb2tlLXY6IFwiXFxmMjJhXCI7XG4kZmEtdmFyLW1heGNkbjogXCJcXGYxMzZcIjtcbiRmYS12YXItbWVhbnBhdGg6IFwiXFxmMjBjXCI7XG4kZmEtdmFyLW1lZGl1bTogXCJcXGYyM2FcIjtcbiRmYS12YXItbWVka2l0OiBcIlxcZjBmYVwiO1xuJGZhLXZhci1tZWgtbzogXCJcXGYxMWFcIjtcbiRmYS12YXItbWVyY3VyeTogXCJcXGYyMjNcIjtcbiRmYS12YXItbWljcm9waG9uZTogXCJcXGYxMzBcIjtcbiRmYS12YXItbWljcm9waG9uZS1zbGFzaDogXCJcXGYxMzFcIjtcbiRmYS12YXItbWludXM6IFwiXFxmMDY4XCI7XG4kZmEtdmFyLW1pbnVzLWNpcmNsZTogXCJcXGYwNTZcIjtcbiRmYS12YXItbWludXMtc3F1YXJlOiBcIlxcZjE0NlwiO1xuJGZhLXZhci1taW51cy1zcXVhcmUtbzogXCJcXGYxNDdcIjtcbiRmYS12YXItbW9iaWxlOiBcIlxcZjEwYlwiO1xuJGZhLXZhci1tb2JpbGUtcGhvbmU6IFwiXFxmMTBiXCI7XG4kZmEtdmFyLW1vbmV5OiBcIlxcZjBkNlwiO1xuJGZhLXZhci1tb29uLW86IFwiXFxmMTg2XCI7XG4kZmEtdmFyLW1vcnRhci1ib2FyZDogXCJcXGYxOWRcIjtcbiRmYS12YXItbW90b3JjeWNsZTogXCJcXGYyMWNcIjtcbiRmYS12YXItbW91c2UtcG9pbnRlcjogXCJcXGYyNDVcIjtcbiRmYS12YXItbXVzaWM6IFwiXFxmMDAxXCI7XG4kZmEtdmFyLW5hdmljb246IFwiXFxmMGM5XCI7XG4kZmEtdmFyLW5ldXRlcjogXCJcXGYyMmNcIjtcbiRmYS12YXItbmV3c3BhcGVyLW86IFwiXFxmMWVhXCI7XG4kZmEtdmFyLW9iamVjdC1ncm91cDogXCJcXGYyNDdcIjtcbiRmYS12YXItb2JqZWN0LXVuZ3JvdXA6IFwiXFxmMjQ4XCI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2k6IFwiXFxmMjYzXCI7XG4kZmEtdmFyLW9kbm9rbGFzc25pa2ktc3F1YXJlOiBcIlxcZjI2NFwiO1xuJGZhLXZhci1vcGVuY2FydDogXCJcXGYyM2RcIjtcbiRmYS12YXItb3BlbmlkOiBcIlxcZjE5YlwiO1xuJGZhLXZhci1vcGVyYTogXCJcXGYyNmFcIjtcbiRmYS12YXItb3B0aW4tbW9uc3RlcjogXCJcXGYyM2NcIjtcbiRmYS12YXItb3V0ZGVudDogXCJcXGYwM2JcIjtcbiRmYS12YXItcGFnZWxpbmVzOiBcIlxcZjE4Y1wiO1xuJGZhLXZhci1wYWludC1icnVzaDogXCJcXGYxZmNcIjtcbiRmYS12YXItcGFwZXItcGxhbmU6IFwiXFxmMWQ4XCI7XG4kZmEtdmFyLXBhcGVyLXBsYW5lLW86IFwiXFxmMWQ5XCI7XG4kZmEtdmFyLXBhcGVyY2xpcDogXCJcXGYwYzZcIjtcbiRmYS12YXItcGFyYWdyYXBoOiBcIlxcZjFkZFwiO1xuJGZhLXZhci1wYXN0ZTogXCJcXGYwZWFcIjtcbiRmYS12YXItcGF1c2U6IFwiXFxmMDRjXCI7XG4kZmEtdmFyLXBhdzogXCJcXGYxYjBcIjtcbiRmYS12YXItcGF5cGFsOiBcIlxcZjFlZFwiO1xuJGZhLXZhci1wZW5jaWw6IFwiXFxmMDQwXCI7XG4kZmEtdmFyLXBlbmNpbC1zcXVhcmU6IFwiXFxmMTRiXCI7XG4kZmEtdmFyLXBlbmNpbC1zcXVhcmUtbzogXCJcXGYwNDRcIjtcbiRmYS12YXItcGhvbmU6IFwiXFxmMDk1XCI7XG4kZmEtdmFyLXBob25lLXNxdWFyZTogXCJcXGYwOThcIjtcbiRmYS12YXItcGhvdG86IFwiXFxmMDNlXCI7XG4kZmEtdmFyLXBpY3R1cmUtbzogXCJcXGYwM2VcIjtcbiRmYS12YXItcGllLWNoYXJ0OiBcIlxcZjIwMFwiO1xuJGZhLXZhci1waWVkLXBpcGVyOiBcIlxcZjFhN1wiO1xuJGZhLXZhci1waWVkLXBpcGVyLWFsdDogXCJcXGYxYThcIjtcbiRmYS12YXItcGludGVyZXN0OiBcIlxcZjBkMlwiO1xuJGZhLXZhci1waW50ZXJlc3QtcDogXCJcXGYyMzFcIjtcbiRmYS12YXItcGludGVyZXN0LXNxdWFyZTogXCJcXGYwZDNcIjtcbiRmYS12YXItcGxhbmU6IFwiXFxmMDcyXCI7XG4kZmEtdmFyLXBsYXk6IFwiXFxmMDRiXCI7XG4kZmEtdmFyLXBsYXktY2lyY2xlOiBcIlxcZjE0NFwiO1xuJGZhLXZhci1wbGF5LWNpcmNsZS1vOiBcIlxcZjAxZFwiO1xuJGZhLXZhci1wbHVnOiBcIlxcZjFlNlwiO1xuJGZhLXZhci1wbHVzOiBcIlxcZjA2N1wiO1xuJGZhLXZhci1wbHVzLWNpcmNsZTogXCJcXGYwNTVcIjtcbiRmYS12YXItcGx1cy1zcXVhcmU6IFwiXFxmMGZlXCI7XG4kZmEtdmFyLXBsdXMtc3F1YXJlLW86IFwiXFxmMTk2XCI7XG4kZmEtdmFyLXBvd2VyLW9mZjogXCJcXGYwMTFcIjtcbiRmYS12YXItcHJpbnQ6IFwiXFxmMDJmXCI7XG4kZmEtdmFyLXB1enpsZS1waWVjZTogXCJcXGYxMmVcIjtcbiRmYS12YXItcXE6IFwiXFxmMWQ2XCI7XG4kZmEtdmFyLXFyY29kZTogXCJcXGYwMjlcIjtcbiRmYS12YXItcXVlc3Rpb246IFwiXFxmMTI4XCI7XG4kZmEtdmFyLXF1ZXN0aW9uLWNpcmNsZTogXCJcXGYwNTlcIjtcbiRmYS12YXItcXVvdGUtbGVmdDogXCJcXGYxMGRcIjtcbiRmYS12YXItcXVvdGUtcmlnaHQ6IFwiXFxmMTBlXCI7XG4kZmEtdmFyLXJhOiBcIlxcZjFkMFwiO1xuJGZhLXZhci1yYW5kb206IFwiXFxmMDc0XCI7XG4kZmEtdmFyLXJlYmVsOiBcIlxcZjFkMFwiO1xuJGZhLXZhci1yZWN5Y2xlOiBcIlxcZjFiOFwiO1xuJGZhLXZhci1yZWRkaXQ6IFwiXFxmMWExXCI7XG4kZmEtdmFyLXJlZGRpdC1zcXVhcmU6IFwiXFxmMWEyXCI7XG4kZmEtdmFyLXJlZnJlc2g6IFwiXFxmMDIxXCI7XG4kZmEtdmFyLXJlZ2lzdGVyZWQ6IFwiXFxmMjVkXCI7XG4kZmEtdmFyLXJlbW92ZTogXCJcXGYwMGRcIjtcbiRmYS12YXItcmVucmVuOiBcIlxcZjE4YlwiO1xuJGZhLXZhci1yZW9yZGVyOiBcIlxcZjBjOVwiO1xuJGZhLXZhci1yZXBlYXQ6IFwiXFxmMDFlXCI7XG4kZmEtdmFyLXJlcGx5OiBcIlxcZjExMlwiO1xuJGZhLXZhci1yZXBseS1hbGw6IFwiXFxmMTIyXCI7XG4kZmEtdmFyLXJldHdlZXQ6IFwiXFxmMDc5XCI7XG4kZmEtdmFyLXJtYjogXCJcXGYxNTdcIjtcbiRmYS12YXItcm9hZDogXCJcXGYwMThcIjtcbiRmYS12YXItcm9ja2V0OiBcIlxcZjEzNVwiO1xuJGZhLXZhci1yb3RhdGUtbGVmdDogXCJcXGYwZTJcIjtcbiRmYS12YXItcm90YXRlLXJpZ2h0OiBcIlxcZjAxZVwiO1xuJGZhLXZhci1yb3VibGU6IFwiXFxmMTU4XCI7XG4kZmEtdmFyLXJzczogXCJcXGYwOWVcIjtcbiRmYS12YXItcnNzLXNxdWFyZTogXCJcXGYxNDNcIjtcbiRmYS12YXItcnViOiBcIlxcZjE1OFwiO1xuJGZhLXZhci1ydWJsZTogXCJcXGYxNThcIjtcbiRmYS12YXItcnVwZWU6IFwiXFxmMTU2XCI7XG4kZmEtdmFyLXNhZmFyaTogXCJcXGYyNjdcIjtcbiRmYS12YXItc2F2ZTogXCJcXGYwYzdcIjtcbiRmYS12YXItc2Npc3NvcnM6IFwiXFxmMGM0XCI7XG4kZmEtdmFyLXNlYXJjaDogXCJcXGYwMDJcIjtcbiRmYS12YXItc2VhcmNoLW1pbnVzOiBcIlxcZjAxMFwiO1xuJGZhLXZhci1zZWFyY2gtcGx1czogXCJcXGYwMGVcIjtcbiRmYS12YXItc2VsbHN5OiBcIlxcZjIxM1wiO1xuJGZhLXZhci1zZW5kOiBcIlxcZjFkOFwiO1xuJGZhLXZhci1zZW5kLW86IFwiXFxmMWQ5XCI7XG4kZmEtdmFyLXNlcnZlcjogXCJcXGYyMzNcIjtcbiRmYS12YXItc2hhcmU6IFwiXFxmMDY0XCI7XG4kZmEtdmFyLXNoYXJlLWFsdDogXCJcXGYxZTBcIjtcbiRmYS12YXItc2hhcmUtYWx0LXNxdWFyZTogXCJcXGYxZTFcIjtcbiRmYS12YXItc2hhcmUtc3F1YXJlOiBcIlxcZjE0ZFwiO1xuJGZhLXZhci1zaGFyZS1zcXVhcmUtbzogXCJcXGYwNDVcIjtcbiRmYS12YXItc2hla2VsOiBcIlxcZjIwYlwiO1xuJGZhLXZhci1zaGVxZWw6IFwiXFxmMjBiXCI7XG4kZmEtdmFyLXNoaWVsZDogXCJcXGYxMzJcIjtcbiRmYS12YXItc2hpcDogXCJcXGYyMWFcIjtcbiRmYS12YXItc2hpcnRzaW5idWxrOiBcIlxcZjIxNFwiO1xuJGZhLXZhci1zaG9wcGluZy1jYXJ0OiBcIlxcZjA3YVwiO1xuJGZhLXZhci1zaWduLWluOiBcIlxcZjA5MFwiO1xuJGZhLXZhci1zaWduLW91dDogXCJcXGYwOGJcIjtcbiRmYS12YXItc2lnbmFsOiBcIlxcZjAxMlwiO1xuJGZhLXZhci1zaW1wbHlidWlsdDogXCJcXGYyMTVcIjtcbiRmYS12YXItc2l0ZW1hcDogXCJcXGYwZThcIjtcbiRmYS12YXItc2t5YXRsYXM6IFwiXFxmMjE2XCI7XG4kZmEtdmFyLXNreXBlOiBcIlxcZjE3ZVwiO1xuJGZhLXZhci1zbGFjazogXCJcXGYxOThcIjtcbiRmYS12YXItc2xpZGVyczogXCJcXGYxZGVcIjtcbiRmYS12YXItc2xpZGVzaGFyZTogXCJcXGYxZTdcIjtcbiRmYS12YXItc21pbGUtbzogXCJcXGYxMThcIjtcbiRmYS12YXItc29jY2VyLWJhbGwtbzogXCJcXGYxZTNcIjtcbiRmYS12YXItc29ydDogXCJcXGYwZGNcIjtcbiRmYS12YXItc29ydC1hbHBoYS1hc2M6IFwiXFxmMTVkXCI7XG4kZmEtdmFyLXNvcnQtYWxwaGEtZGVzYzogXCJcXGYxNWVcIjtcbiRmYS12YXItc29ydC1hbW91bnQtYXNjOiBcIlxcZjE2MFwiO1xuJGZhLXZhci1zb3J0LWFtb3VudC1kZXNjOiBcIlxcZjE2MVwiO1xuJGZhLXZhci1zb3J0LWFzYzogXCJcXGYwZGVcIjtcbiRmYS12YXItc29ydC1kZXNjOiBcIlxcZjBkZFwiO1xuJGZhLXZhci1zb3J0LWRvd246IFwiXFxmMGRkXCI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1hc2M6IFwiXFxmMTYyXCI7XG4kZmEtdmFyLXNvcnQtbnVtZXJpYy1kZXNjOiBcIlxcZjE2M1wiO1xuJGZhLXZhci1zb3J0LXVwOiBcIlxcZjBkZVwiO1xuJGZhLXZhci1zb3VuZGNsb3VkOiBcIlxcZjFiZVwiO1xuJGZhLXZhci1zcGFjZS1zaHV0dGxlOiBcIlxcZjE5N1wiO1xuJGZhLXZhci1zcGlubmVyOiBcIlxcZjExMFwiO1xuJGZhLXZhci1zcG9vbjogXCJcXGYxYjFcIjtcbiRmYS12YXItc3BvdGlmeTogXCJcXGYxYmNcIjtcbiRmYS12YXItc3F1YXJlOiBcIlxcZjBjOFwiO1xuJGZhLXZhci1zcXVhcmUtbzogXCJcXGYwOTZcIjtcbiRmYS12YXItc3RhY2stZXhjaGFuZ2U6IFwiXFxmMThkXCI7XG4kZmEtdmFyLXN0YWNrLW92ZXJmbG93OiBcIlxcZjE2Y1wiO1xuJGZhLXZhci1zdGFyOiBcIlxcZjAwNVwiO1xuJGZhLXZhci1zdGFyLWhhbGY6IFwiXFxmMDg5XCI7XG4kZmEtdmFyLXN0YXItaGFsZi1lbXB0eTogXCJcXGYxMjNcIjtcbiRmYS12YXItc3Rhci1oYWxmLWZ1bGw6IFwiXFxmMTIzXCI7XG4kZmEtdmFyLXN0YXItaGFsZi1vOiBcIlxcZjEyM1wiO1xuJGZhLXZhci1zdGFyLW86IFwiXFxmMDA2XCI7XG4kZmEtdmFyLXN0ZWFtOiBcIlxcZjFiNlwiO1xuJGZhLXZhci1zdGVhbS1zcXVhcmU6IFwiXFxmMWI3XCI7XG4kZmEtdmFyLXN0ZXAtYmFja3dhcmQ6IFwiXFxmMDQ4XCI7XG4kZmEtdmFyLXN0ZXAtZm9yd2FyZDogXCJcXGYwNTFcIjtcbiRmYS12YXItc3RldGhvc2NvcGU6IFwiXFxmMGYxXCI7XG4kZmEtdmFyLXN0aWNreS1ub3RlOiBcIlxcZjI0OVwiO1xuJGZhLXZhci1zdGlja3ktbm90ZS1vOiBcIlxcZjI0YVwiO1xuJGZhLXZhci1zdG9wOiBcIlxcZjA0ZFwiO1xuJGZhLXZhci1zdHJlZXQtdmlldzogXCJcXGYyMWRcIjtcbiRmYS12YXItc3RyaWtldGhyb3VnaDogXCJcXGYwY2NcIjtcbiRmYS12YXItc3R1bWJsZXVwb246IFwiXFxmMWE0XCI7XG4kZmEtdmFyLXN0dW1ibGV1cG9uLWNpcmNsZTogXCJcXGYxYTNcIjtcbiRmYS12YXItc3Vic2NyaXB0OiBcIlxcZjEyY1wiO1xuJGZhLXZhci1zdWJ3YXk6IFwiXFxmMjM5XCI7XG4kZmEtdmFyLXN1aXRjYXNlOiBcIlxcZjBmMlwiO1xuJGZhLXZhci1zdW4tbzogXCJcXGYxODVcIjtcbiRmYS12YXItc3VwZXJzY3JpcHQ6IFwiXFxmMTJiXCI7XG4kZmEtdmFyLXN1cHBvcnQ6IFwiXFxmMWNkXCI7XG4kZmEtdmFyLXRhYmxlOiBcIlxcZjBjZVwiO1xuJGZhLXZhci10YWJsZXQ6IFwiXFxmMTBhXCI7XG4kZmEtdmFyLXRhY2hvbWV0ZXI6IFwiXFxmMGU0XCI7XG4kZmEtdmFyLXRhZzogXCJcXGYwMmJcIjtcbiRmYS12YXItdGFnczogXCJcXGYwMmNcIjtcbiRmYS12YXItdGFza3M6IFwiXFxmMGFlXCI7XG4kZmEtdmFyLXRheGk6IFwiXFxmMWJhXCI7XG4kZmEtdmFyLXRlbGV2aXNpb246IFwiXFxmMjZjXCI7XG4kZmEtdmFyLXRlbmNlbnQtd2VpYm86IFwiXFxmMWQ1XCI7XG4kZmEtdmFyLXRlcm1pbmFsOiBcIlxcZjEyMFwiO1xuJGZhLXZhci10ZXh0LWhlaWdodDogXCJcXGYwMzRcIjtcbiRmYS12YXItdGV4dC13aWR0aDogXCJcXGYwMzVcIjtcbiRmYS12YXItdGg6IFwiXFxmMDBhXCI7XG4kZmEtdmFyLXRoLWxhcmdlOiBcIlxcZjAwOVwiO1xuJGZhLXZhci10aC1saXN0OiBcIlxcZjAwYlwiO1xuJGZhLXZhci10aHVtYi10YWNrOiBcIlxcZjA4ZFwiO1xuJGZhLXZhci10aHVtYnMtZG93bjogXCJcXGYxNjVcIjtcbiRmYS12YXItdGh1bWJzLW8tZG93bjogXCJcXGYwODhcIjtcbiRmYS12YXItdGh1bWJzLW8tdXA6IFwiXFxmMDg3XCI7XG4kZmEtdmFyLXRodW1icy11cDogXCJcXGYxNjRcIjtcbiRmYS12YXItdGlja2V0OiBcIlxcZjE0NVwiO1xuJGZhLXZhci10aW1lczogXCJcXGYwMGRcIjtcbiRmYS12YXItdGltZXMtY2lyY2xlOiBcIlxcZjA1N1wiO1xuJGZhLXZhci10aW1lcy1jaXJjbGUtbzogXCJcXGYwNWNcIjtcbiRmYS12YXItdGludDogXCJcXGYwNDNcIjtcbiRmYS12YXItdG9nZ2xlLWRvd246IFwiXFxmMTUwXCI7XG4kZmEtdmFyLXRvZ2dsZS1sZWZ0OiBcIlxcZjE5MVwiO1xuJGZhLXZhci10b2dnbGUtb2ZmOiBcIlxcZjIwNFwiO1xuJGZhLXZhci10b2dnbGUtb246IFwiXFxmMjA1XCI7XG4kZmEtdmFyLXRvZ2dsZS1yaWdodDogXCJcXGYxNTJcIjtcbiRmYS12YXItdG9nZ2xlLXVwOiBcIlxcZjE1MVwiO1xuJGZhLXZhci10cmFkZW1hcms6IFwiXFxmMjVjXCI7XG4kZmEtdmFyLXRyYWluOiBcIlxcZjIzOFwiO1xuJGZhLXZhci10cmFuc2dlbmRlcjogXCJcXGYyMjRcIjtcbiRmYS12YXItdHJhbnNnZW5kZXItYWx0OiBcIlxcZjIyNVwiO1xuJGZhLXZhci10cmFzaDogXCJcXGYxZjhcIjtcbiRmYS12YXItdHJhc2gtbzogXCJcXGYwMTRcIjtcbiRmYS12YXItdHJlZTogXCJcXGYxYmJcIjtcbiRmYS12YXItdHJlbGxvOiBcIlxcZjE4MVwiO1xuJGZhLXZhci10cmlwYWR2aXNvcjogXCJcXGYyNjJcIjtcbiRmYS12YXItdHJvcGh5OiBcIlxcZjA5MVwiO1xuJGZhLXZhci10cnVjazogXCJcXGYwZDFcIjtcbiRmYS12YXItdHJ5OiBcIlxcZjE5NVwiO1xuJGZhLXZhci10dHk6IFwiXFxmMWU0XCI7XG4kZmEtdmFyLXR1bWJscjogXCJcXGYxNzNcIjtcbiRmYS12YXItdHVtYmxyLXNxdWFyZTogXCJcXGYxNzRcIjtcbiRmYS12YXItdHVya2lzaC1saXJhOiBcIlxcZjE5NVwiO1xuJGZhLXZhci10djogXCJcXGYyNmNcIjtcbiRmYS12YXItdHdpdGNoOiBcIlxcZjFlOFwiO1xuJGZhLXZhci10d2l0dGVyOiBcIlxcZjA5OVwiO1xuJGZhLXZhci10d2l0dGVyLXNxdWFyZTogXCJcXGYwODFcIjtcbiRmYS12YXItdW1icmVsbGE6IFwiXFxmMGU5XCI7XG4kZmEtdmFyLXVuZGVybGluZTogXCJcXGYwY2RcIjtcbiRmYS12YXItdW5kbzogXCJcXGYwZTJcIjtcbiRmYS12YXItdW5pdmVyc2l0eTogXCJcXGYxOWNcIjtcbiRmYS12YXItdW5saW5rOiBcIlxcZjEyN1wiO1xuJGZhLXZhci11bmxvY2s6IFwiXFxmMDljXCI7XG4kZmEtdmFyLXVubG9jay1hbHQ6IFwiXFxmMTNlXCI7XG4kZmEtdmFyLXVuc29ydGVkOiBcIlxcZjBkY1wiO1xuJGZhLXZhci11cGxvYWQ6IFwiXFxmMDkzXCI7XG4kZmEtdmFyLXVzZDogXCJcXGYxNTVcIjtcbiRmYS12YXItdXNlcjogXCJcXGYwMDdcIjtcbiRmYS12YXItdXNlci1tZDogXCJcXGYwZjBcIjtcbiRmYS12YXItdXNlci1wbHVzOiBcIlxcZjIzNFwiO1xuJGZhLXZhci11c2VyLXNlY3JldDogXCJcXGYyMWJcIjtcbiRmYS12YXItdXNlci10aW1lczogXCJcXGYyMzVcIjtcbiRmYS12YXItdXNlcnM6IFwiXFxmMGMwXCI7XG4kZmEtdmFyLXZlbnVzOiBcIlxcZjIyMVwiO1xuJGZhLXZhci12ZW51cy1kb3VibGU6IFwiXFxmMjI2XCI7XG4kZmEtdmFyLXZlbnVzLW1hcnM6IFwiXFxmMjI4XCI7XG4kZmEtdmFyLXZpYWNvaW46IFwiXFxmMjM3XCI7XG4kZmEtdmFyLXZpZGVvLWNhbWVyYTogXCJcXGYwM2RcIjtcbiRmYS12YXItdmltZW86IFwiXFxmMjdkXCI7XG4kZmEtdmFyLXZpbWVvLXNxdWFyZTogXCJcXGYxOTRcIjtcbiRmYS12YXItdmluZTogXCJcXGYxY2FcIjtcbiRmYS12YXItdms6IFwiXFxmMTg5XCI7XG4kZmEtdmFyLXZvbHVtZS1kb3duOiBcIlxcZjAyN1wiO1xuJGZhLXZhci12b2x1bWUtb2ZmOiBcIlxcZjAyNlwiO1xuJGZhLXZhci12b2x1bWUtdXA6IFwiXFxmMDI4XCI7XG4kZmEtdmFyLXdhcm5pbmc6IFwiXFxmMDcxXCI7XG4kZmEtdmFyLXdlY2hhdDogXCJcXGYxZDdcIjtcbiRmYS12YXItd2VpYm86IFwiXFxmMThhXCI7XG4kZmEtdmFyLXdlaXhpbjogXCJcXGYxZDdcIjtcbiRmYS12YXItd2hhdHNhcHA6IFwiXFxmMjMyXCI7XG4kZmEtdmFyLXdoZWVsY2hhaXI6IFwiXFxmMTkzXCI7XG4kZmEtdmFyLXdpZmk6IFwiXFxmMWViXCI7XG4kZmEtdmFyLXdpa2lwZWRpYS13OiBcIlxcZjI2NlwiO1xuJGZhLXZhci13aW5kb3dzOiBcIlxcZjE3YVwiO1xuJGZhLXZhci13b246IFwiXFxmMTU5XCI7XG4kZmEtdmFyLXdvcmRwcmVzczogXCJcXGYxOWFcIjtcbiRmYS12YXItd3JlbmNoOiBcIlxcZjBhZFwiO1xuJGZhLXZhci14aW5nOiBcIlxcZjE2OFwiO1xuJGZhLXZhci14aW5nLXNxdWFyZTogXCJcXGYxNjlcIjtcbiRmYS12YXIteS1jb21iaW5hdG9yOiBcIlxcZjIzYlwiO1xuJGZhLXZhci15LWNvbWJpbmF0b3Itc3F1YXJlOiBcIlxcZjFkNFwiO1xuJGZhLXZhci15YWhvbzogXCJcXGYxOWVcIjtcbiRmYS12YXIteWM6IFwiXFxmMjNiXCI7XG4kZmEtdmFyLXljLXNxdWFyZTogXCJcXGYxZDRcIjtcbiRmYS12YXIteWVscDogXCJcXGYxZTlcIjtcbiRmYS12YXIteWVuOiBcIlxcZjE1N1wiO1xuJGZhLXZhci15b3V0dWJlOiBcIlxcZjE2N1wiO1xuJGZhLXZhci15b3V0dWJlLXBsYXk6IFwiXFxmMTZhXCI7XG4kZmEtdmFyLXlvdXR1YmUtc3F1YXJlOiBcIlxcZjE2NlwiO1xuXG4iLCIvLyBCb3JkZXJlZCAmIFB1bGxlZFxuLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tYm9yZGVyIHtcbiAgcGFkZGluZzogLjJlbSAuMjVlbSAuMTVlbTtcbiAgYm9yZGVyOiBzb2xpZCAuMDhlbSAkZmEtYm9yZGVyLWNvbG9yO1xuICBib3JkZXItcmFkaXVzOiAuMWVtO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG5cbi4jeyRmYS1jc3MtcHJlZml4fSB7XG4gICYuI3skZmEtY3NzLXByZWZpeH0tcHVsbC1sZWZ0IHsgbWFyZ2luLXJpZ2h0OiAuM2VtOyB9XG4gICYuI3skZmEtY3NzLXByZWZpeH0tcHVsbC1yaWdodCB7IG1hcmdpbi1sZWZ0OiAuM2VtOyB9XG59XG5cbi8qIERlcHJlY2F0ZWQgYXMgb2YgNC40LjAgKi9cbi5wdWxsLXJpZ2h0IHsgZmxvYXQ6IHJpZ2h0OyB9XG4ucHVsbC1sZWZ0IHsgZmxvYXQ6IGxlZnQ7IH1cblxuLiN7JGZhLWNzcy1wcmVmaXh9IHtcbiAgJi5wdWxsLWxlZnQgeyBtYXJnaW4tcmlnaHQ6IC4zZW07IH1cbiAgJi5wdWxsLXJpZ2h0IHsgbWFyZ2luLWxlZnQ6IC4zZW07IH1cbn1cbiIsIi8vIFNwaW5uaW5nIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLVxuXG4uI3skZmEtY3NzLXByZWZpeH0tc3BpbiB7XG4gIC13ZWJraXQtYW5pbWF0aW9uOiBmYS1zcGluIDJzIGluZmluaXRlIGxpbmVhcjtcbiAgICAgICAgICBhbmltYXRpb246IGZhLXNwaW4gMnMgaW5maW5pdGUgbGluZWFyO1xufVxuXG4uI3skZmEtY3NzLXByZWZpeH0tcHVsc2Uge1xuICAtd2Via2l0LWFuaW1hdGlvbjogZmEtc3BpbiAxcyBpbmZpbml0ZSBzdGVwcyg4KTtcbiAgICAgICAgICBhbmltYXRpb246IGZhLXNwaW4gMXMgaW5maW5pdGUgc3RlcHMoOCk7XG59XG5cbkAtd2Via2l0LWtleWZyYW1lcyBmYS1zcGluIHtcbiAgMCUge1xuICAgIC13ZWJraXQtdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgwZGVnKTtcbiAgfVxuICAxMDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDM1OWRlZyk7XG4gICAgICAgICAgICB0cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICB9XG59XG5cbkBrZXlmcmFtZXMgZmEtc3BpbiB7XG4gIDAlIHtcbiAgICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKDBkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMGRlZyk7XG4gIH1cbiAgMTAwJSB7XG4gICAgLXdlYmtpdC10cmFuc2Zvcm06IHJvdGF0ZSgzNTlkZWcpO1xuICAgICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoMzU5ZGVnKTtcbiAgfVxufVxuIiwiLy8gUm90YXRlZCAmIEZsaXBwZWQgSWNvbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS05MCAgeyBAaW5jbHVkZSBmYS1pY29uLXJvdGF0ZSg5MGRlZywgMSk7ICB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLTE4MCB7IEBpbmNsdWRlIGZhLWljb24tcm90YXRlKDE4MGRlZywgMik7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMjcwIHsgQGluY2x1ZGUgZmEtaWNvbi1yb3RhdGUoMjcwZGVnLCAzKTsgfVxuXG4uI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ob3Jpem9udGFsIHsgQGluY2x1ZGUgZmEtaWNvbi1mbGlwKC0xLCAxLCAwKTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwgICB7IEBpbmNsdWRlIGZhLWljb24tZmxpcCgxLCAtMSwgMik7IH1cblxuLy8gSG9vayBmb3IgSUU4LTlcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS05MCxcbjpyb290IC4jeyRmYS1jc3MtcHJlZml4fS1yb3RhdGUtMTgwLFxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS0yNzAsXG46cm9vdCAuI3skZmEtY3NzLXByZWZpeH0tZmxpcC1ob3Jpem9udGFsLFxuOnJvb3QgLiN7JGZhLWNzcy1wcmVmaXh9LWZsaXAtdmVydGljYWwge1xuICBmaWx0ZXI6IG5vbmU7XG59XG4iLCIvLyBNaXhpbnNcbi8vIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbkBtaXhpbiBmYS1pY29uKCkge1xuICBkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG4gIGZvbnQ6IG5vcm1hbCBub3JtYWwgbm9ybWFsICN7JGZhLWZvbnQtc2l6ZS1iYXNlfS8jeyRmYS1saW5lLWhlaWdodC1iYXNlfSBGb250QXdlc29tZTsgLy8gc2hvcnRlbmluZyBmb250IGRlY2xhcmF0aW9uXG4gIGZvbnQtc2l6ZTogaW5oZXJpdDsgLy8gY2FuJ3QgaGF2ZSBmb250LXNpemUgaW5oZXJpdCBvbiBsaW5lIGFib3ZlLCBzbyBuZWVkIHRvIG92ZXJyaWRlXG4gIHRleHQtcmVuZGVyaW5nOiBhdXRvOyAvLyBvcHRpbWl6ZWxlZ2liaWxpdHkgdGhyb3dzIHRoaW5ncyBvZmYgIzEwOTRcbiAgLXdlYmtpdC1mb250LXNtb290aGluZzogYW50aWFsaWFzZWQ7XG4gIC1tb3otb3N4LWZvbnQtc21vb3RoaW5nOiBncmF5c2NhbGU7XG5cbn1cblxuQG1peGluIGZhLWljb24tcm90YXRlKCRkZWdyZWVzLCAkcm90YXRpb24pIHtcbiAgZmlsdGVyOiBwcm9naWQ6RFhJbWFnZVRyYW5zZm9ybS5NaWNyb3NvZnQuQmFzaWNJbWFnZShyb3RhdGlvbj0jeyRyb3RhdGlvbn0pO1xuICAtd2Via2l0LXRyYW5zZm9ybTogcm90YXRlKCRkZWdyZWVzKTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHJvdGF0ZSgkZGVncmVlcyk7XG4gICAgICAgICAgdHJhbnNmb3JtOiByb3RhdGUoJGRlZ3JlZXMpO1xufVxuXG5AbWl4aW4gZmEtaWNvbi1mbGlwKCRob3JpeiwgJHZlcnQsICRyb3RhdGlvbikge1xuICBmaWx0ZXI6IHByb2dpZDpEWEltYWdlVHJhbnNmb3JtLk1pY3Jvc29mdC5CYXNpY0ltYWdlKHJvdGF0aW9uPSN7JHJvdGF0aW9ufSk7XG4gIC13ZWJraXQtdHJhbnNmb3JtOiBzY2FsZSgkaG9yaXosICR2ZXJ0KTtcbiAgICAgIC1tcy10cmFuc2Zvcm06IHNjYWxlKCRob3JpeiwgJHZlcnQpO1xuICAgICAgICAgIHRyYW5zZm9ybTogc2NhbGUoJGhvcml6LCAkdmVydCk7XG59XG4iLCIvLyBTdGFja2VkIEljb25zXG4vLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjayB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogaW5saW5lLWJsb2NrO1xuICB3aWR0aDogMmVtO1xuICBoZWlnaHQ6IDJlbTtcbiAgbGluZS1oZWlnaHQ6IDJlbTtcbiAgdmVydGljYWwtYWxpZ246IG1pZGRsZTtcbn1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0xeCwgLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLTJ4IHtcbiAgcG9zaXRpb246IGFic29sdXRlO1xuICBsZWZ0OiAwO1xuICB3aWR0aDogMTAwJTtcbiAgdGV4dC1hbGlnbjogY2VudGVyO1xufVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YWNrLTF4IHsgbGluZS1oZWlnaHQ6IGluaGVyaXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay0yeCB7IGZvbnQtc2l6ZTogMmVtOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW52ZXJzZSB7IGNvbG9yOiAkZmEtaW52ZXJzZTsgfVxuIiwiLyogRm9udCBBd2Vzb21lIHVzZXMgdGhlIFVuaWNvZGUgUHJpdmF0ZSBVc2UgQXJlYSAoUFVBKSB0byBlbnN1cmUgc2NyZWVuXG4gICByZWFkZXJzIGRvIG5vdCByZWFkIG9mZiByYW5kb20gY2hhcmFjdGVycyB0aGF0IHJlcHJlc2VudCBpY29ucyAqL1xuXG4uI3skZmEtY3NzLXByZWZpeH0tZ2xhc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nbGFzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW11c2ljOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbXVzaWM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zZWFyY2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZW52ZWxvcGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGVhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RhcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbG07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aC1sYXJnZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRoLWxhcmdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRoLWxpc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aC1saXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGVjazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlbW92ZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2xvc2U6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbWVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGltZXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZWFyY2gtcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlYXJjaC1wbHVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VhcmNoLW1pbnVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2VhcmNoLW1pbnVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcG93ZXItb2ZmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcG93ZXItb2ZmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbmFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2lnbmFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2VhcjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY29nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29nOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhc2gtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyYXNoLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob21lOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG9tZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb2NrLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG9jay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJvYWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb3dubG9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRvd25sb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1vLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtby11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1vLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5ib3g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmJveDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYXktY2lyY2xlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbGF5LWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcm90YXRlLXJpZ2h0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBlYXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZXBlYXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWZyZXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVmcmVzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3QtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdC1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9jazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsYWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGFnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGVhZHBob25lczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYWRwaG9uZXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtb2ZmOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLW9mZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZvbHVtZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdm9sdW1lLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12b2x1bWUtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12b2x1bWUtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xcmNvZGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1xcmNvZGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXJjb2RlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFyY29kZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhZzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRhZ3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10YWdzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9vazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvb2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib29rbWFyazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvb2ttYXJrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHJpbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wcmludDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbWVyYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb250OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYm9sZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJvbGQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pdGFsaWM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pdGFsaWM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10ZXh0LWhlaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRleHQtaGVpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGV4dC13aWR0aDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRleHQtd2lkdGg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1sZWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWxpZ24tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLWNlbnRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFsaWduLWNlbnRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFsaWduLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWxpZ24tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbGlnbi1qdXN0aWZ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYWxpZ24tanVzdGlmeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGVkZW50OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1vdXRkZW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb3V0ZGVudDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZGVudDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluZGVudDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpZGVvLWNhbWVyYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpZGVvLWNhbWVyYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBob3RvOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pbWFnZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcGljdHVyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGljdHVyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuY2lsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGVuY2lsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLW1hcmtlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcC1tYXJrZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hZGp1c3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hZGp1c3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGludDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVkaXQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXBlbmNpbC1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBlbmNpbC1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoYXJlLXNxdWFyZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hhcmUtc3F1YXJlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZWNrLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3dzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlcC1iYWNrd2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0ZXAtYmFja3dhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYXN0LWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmFzdC1iYWNrd2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhY2t3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFja3dhcmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wbGF5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxheTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhdXNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGF1c2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdG9wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RvcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcndhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb3J3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFzdC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmFzdC1mb3J3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RlcC1mb3J3YXJkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RlcC1mb3J3YXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWplY3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lamVjdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZXZyb24tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGx1cy1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbHVzLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1pbnVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pbnVzLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbWVzLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRpbWVzLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZWNrLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZWNrLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uLWNpcmNsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1ZXN0aW9uLWNpcmNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluZm8tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5mby1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jcm9zc2hhaXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3Jvc3NoYWlyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRpbWVzLWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGltZXMtY2lyY2xlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGVjay1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoZWNrLWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmFuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmFuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFpbC1mb3J3YXJkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zaGFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXhwYW5kOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhwYW5kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tcHJlc3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21wcmVzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbHVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWludXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taW51czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFzdGVyaXNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXN0ZXJpc2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNsYW1hdGlvbi1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leGNsYW1hdGlvbi1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1naWZ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2lmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlYWY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sZWFmOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leWUtc2xhc2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leWUtc2xhc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13YXJuaW5nOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1leGNsYW1hdGlvbi10cmlhbmdsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4Y2xhbWF0aW9uLXRyaWFuZ2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGxhbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbGFuZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yYW5kb206YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yYW5kb207IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb21tZW50OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hZ25ldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hZ25ldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcmV0d2VldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJldHdlZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaG9wcGluZy1jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hvcHBpbmctY2FydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvbGRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvbGRlci1vcGVuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9sZGVyLW9wZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvd3MtdjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93cy12OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLWg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvd3MtaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhci1jaGFydC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXItY2hhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYXItY2hhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0dGVyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXR3aXR0ZXItc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmFjZWJvb2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmFjZWJvb2stc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FtZXJhLXJldHJvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FtZXJhLXJldHJvOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2V5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIta2V5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2VhcnM6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZ3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2dzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudHM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1icy1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWJzLW8tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aHVtYnMtby1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWJzLW8tZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YXItaGFsZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYXJ0LW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFydC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2lnbi1vdXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zaWduLW91dDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpbmtlZGluLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbmtlZGluLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRodW1iLXRhY2s6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aHVtYi10YWNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXh0ZXJuYWwtbGluazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4dGVybmFsLWxpbms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaWduLWluOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2lnbi1pbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyb3BoeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyb3BoeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdGh1Yi1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXRodWItc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdXBsb2FkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXBsb2FkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGVtb24tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxlbW9uLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waG9uZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBob25lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcXVhcmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvb2ttYXJrLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib29rbWFyay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGhvbmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGhvbmUtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHdpdHRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXR3aXR0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vay1mOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1mYWNlYm9vazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZhY2Vib29rOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0aHViOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0aHViOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdW5sb2NrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5sb2NrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlZGl0LWNhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jcmVkaXQtY2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlZWQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhkZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGRkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWxsaG9ybjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1bGxob3JuOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlbGw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jZXJ0aWZpY2F0ZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNlcnRpZmljYXRlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1vLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1vLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1vLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLW8tbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtby11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtby11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtby1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1vLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hcnJvdy1jaXJjbGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93LWNpcmNsZS1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYXJyb3ctY2lyY2xlLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdsb2JlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2xvYmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13cmVuY2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13cmVuY2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YXNrczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhc2tzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsdGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsdGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnJpZWZjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnJpZWZjYXNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3dzLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFycm93cy1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ncm91cDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdXNlcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYWluOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1saW5rOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGluazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2xvdWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFzazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZsYXNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3V0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1zY2lzc29yczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNjaXNzb3JzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29weTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZXMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGVzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYXBlcmNsaXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYXBlcmNsaXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zYXZlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1mbG9wcHktbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZsb3BweS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbmF2aWNvbjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcmVvcmRlcjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmFyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saXN0LXVsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlzdC11bDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpc3Qtb2w6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saXN0LW9sOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RyaWtldGhyb3VnaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0cmlrZXRocm91Z2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmRlcmxpbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bmRlcmxpbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10YWJsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRhYmxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFnaWM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYWdpYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRydWNrOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJ1Y2s7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waW50ZXJlc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waW50ZXJlc3Q7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waW50ZXJlc3Qtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGludGVyZXN0LXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdvb2dsZS1wbHVzLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZS1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ29vZ2xlLXBsdXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb25leTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vbmV5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC11cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYXJldC1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29sdW1uczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbHVtbnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bnNvcnRlZDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc29ydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LWRvd246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtZGVzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtdXA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYXNjOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc29ydC1hc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1lbnZlbG9wZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVudmVsb3BlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGlua2VkaW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1saW5rZWRpbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvdGF0ZS1sZWZ0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS11bmRvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdW5kbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxlZ2FsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1nYXZlbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdhdmVsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGFzaGJvYXJkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10YWNob21ldGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFjaG9tZXRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbW1lbnQtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50cy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmxhc2g6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJvbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ib2x0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2l0ZW1hcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNpdGVtYXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bWJyZWxsYTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVtYnJlbGxhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFzdGU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsaXBib2FyZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsaXBib2FyZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZ2h0YnVsYi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlnaHRidWxiLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leGNoYW5nZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4Y2hhbmdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvdWQtZG93bmxvYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG91ZC1kb3dubG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNsb3VkLXVwbG9hZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNsb3VkLXVwbG9hZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItbWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLW1kOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RldGhvc2NvcGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGV0aG9zY29wZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1aXRjYXNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3VpdGNhc2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWxsLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2ZmZWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2ZmZWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jdXRsZXJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3V0bGVyeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtdGV4dC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS10ZXh0LW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1idWlsZGluZy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVpbGRpbmctbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvc3BpdGFsLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3NwaXRhbC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW1idWxhbmNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW1idWxhbmNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVka2l0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWVka2l0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlnaHRlci1qZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWdodGVyLWpldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXMtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGx1cy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3VibGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZ2xlLWRvdWJsZS1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtZG91YmxlLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtZG91YmxlLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtZG91YmxlLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1kb3VibGUtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hbmdsZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuZ2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1hbmdsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nbGUtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlc2t0b3A6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kZXNrdG9wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFwdG9wOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGFwdG9wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGFibGV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGFibGV0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9iaWxlLXBob25lOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1tb2JpbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb2JpbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaXJjbGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcXVvdGUtbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1b3RlLWxlZnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xdW90ZS1yaWdodDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXF1b3RlLXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Bpbm5lcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNwaW5uZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaXJjbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tYWlsLXJlcGx5OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yZXBseTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlcGx5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0aHViLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdpdGh1Yi1hbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb2xkZXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvbGRlci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZm9sZGVyLW9wZW4tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZvbGRlci1vcGVuLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbWlsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc21pbGUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZyb3duLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mcm93bi1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWVoLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tZWgtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdhbWVwYWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nYW1lcGFkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0ta2V5Ym9hcmQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWtleWJvYXJkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mbGFnLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mbGFnLWNoZWNrZXJlZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZsYWctY2hlY2tlcmVkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVybWluYWw6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10ZXJtaW5hbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvZGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2RlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFpbC1yZXBseS1hbGw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlcGx5LWFsbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlcGx5LWFsbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZi1lbXB0eTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc3Rhci1oYWxmLWZ1bGw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0YXItaGFsZi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Rhci1oYWxmLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb2NhdGlvbi1hcnJvdzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvY2F0aW9uLWFycm93OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNyb3A7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlLWZvcms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb2RlLWZvcms7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS11bmxpbms6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoYWluLWJyb2tlbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoYWluLWJyb2tlbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXF1ZXN0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcXVlc3Rpb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1pbmZvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW5mbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV4Y2xhbWF0aW9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXhjbGFtYXRpb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdXBlcnNjcmlwdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1cGVyc2NyaXB0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Vic2NyaXB0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3Vic2NyaXB0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZXJhc2VyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZXJhc2VyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcHV6emxlLXBpZWNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcHV6emxlLXBpZWNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWljcm9waG9uZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pY3JvcGhvbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taWNyb3Bob25lLXNsYXNoOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWljcm9waG9uZS1zbGFzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaWVsZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoaWVsZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhci1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlyZS1leHRpbmd1aXNoZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maXJlLWV4dGluZ3Vpc2hlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJvY2tldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJvY2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1heGNkbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1heGNkbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hldnJvbi1jaXJjbGUtcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaGV2cm9uLWNpcmNsZS1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNoZXZyb24tY2lyY2xlLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1jaXJjbGUtdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGV2cm9uLWNpcmNsZS1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hldnJvbi1jaXJjbGUtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWh0bWw1OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaHRtbDU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jc3MzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY3NzMzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFuY2hvcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuY2hvcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVubG9jay1hbHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bmxvY2stYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVsbHNleWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1idWxsc2V5ZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWVsbGlwc2lzLWg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1lbGxpcHNpcy1oOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZWxsaXBzaXMtdjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVsbGlwc2lzLXY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yc3Mtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcnNzLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsYXktY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGxheS1jaXJjbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10aWNrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aWNrZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1taW51cy1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1taW51cy1zcXVhcmUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1pbnVzLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGV2ZWwtdXA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sZXZlbC11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxldmVsLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sZXZlbC1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2hlY2stc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2hlY2stc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGVuY2lsLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBlbmNpbC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHRlcm5hbC1saW5rLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWV4dGVybmFsLWxpbmstc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hhcmUtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tcGFzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbXBhc3M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtZG93bjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tY2FyZXQtc3F1YXJlLW8tZG93bjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcmV0LXNxdWFyZS1vLWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtdXA6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1vLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtc3F1YXJlLW8tdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtcmlnaHQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1vLXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FyZXQtc3F1YXJlLW8tcmlnaHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ldXJvOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ldXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ldXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nYnA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nYnA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1kb2xsYXI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJ1cGVlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pbnI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbnI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jbnk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXJtYjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0teWVuOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1qcHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1qcHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ydWJsZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tcm91YmxlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ydWI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ydWI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13b246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWtydzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWtydzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdGNvaW46YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ0YzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ0YzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS10ZXh0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS10ZXh0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1hbHBoYS1hc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFscGhhLWFzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYWxwaGEtZGVzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYWxwaGEtZGVzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LWFzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtYW1vdW50LWFzYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvcnQtYW1vdW50LWRlc2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zb3J0LWFtb3VudC1kZXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc29ydC1udW1lcmljLWFzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtbnVtZXJpYy1hc2M7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3J0LW51bWVyaWMtZGVzYzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNvcnQtbnVtZXJpYy1kZXNjOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdGh1bWJzLXVwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGh1bWJzLWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10aHVtYnMtZG93bjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteW91dHViZS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15b3V0dWJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteW91dHViZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXhpbmc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci14aW5nOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teGluZy1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci14aW5nLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXlvdXR1YmUtcGxheTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXlvdXR1YmUtcGxheTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRyb3Bib3g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kcm9wYm94OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RhY2stb3ZlcmZsb3c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGFjay1vdmVyZmxvdzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWluc3RhZ3JhbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWluc3RhZ3JhbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZsaWNrcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZsaWNrcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFkbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFkbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdGJ1Y2tldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJpdGJ1Y2tldDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpdGJ1Y2tldC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iaXRidWNrZXQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVtYmxyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHVtYmxyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHVtYmxyLXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXR1bWJsci1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LWRvd246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb25nLWFycm93LWRvd247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sb25nLWFycm93LXVwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbG9uZy1hcnJvdy11cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctbGVmdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxvbmctYXJyb3ctbGVmdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxvbmctYXJyb3ctcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sb25nLWFycm93LXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXBwbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcHBsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdpbmRvd3M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aW5kb3dzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5kcm9pZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFuZHJvaWQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW51eDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxpbnV4OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJpYmJibGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kcmliYmJsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNreXBlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2t5cGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb3Vyc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm91cnNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyZWxsbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyZWxsbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZlbWFsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZlbWFsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0dGlwOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ncmF0aXBheTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdyYXRpcGF5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3VuLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdW4tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vb24tbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1vb24tbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFyY2hpdmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcmNoaXZlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnVnOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdms6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12azsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXdlaWJvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2VpYm87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZW5yZW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZW5yZW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1wYWdlbGluZXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYWdlbGluZXM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGFjay1leGNoYW5nZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0YWNrLWV4Y2hhbmdlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJyb3ctY2lyY2xlLW8tcmlnaHQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby1yaWdodDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWFycm93LWNpcmNsZS1vLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hcnJvdy1jaXJjbGUtby1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLWxlZnQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcmV0LXNxdWFyZS1vLWxlZnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYXJldC1zcXVhcmUtby1sZWZ0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZG90LWNpcmNsZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZG90LWNpcmNsZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hlZWxjaGFpcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXdoZWVsY2hhaXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12aW1lby1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aW1lby1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dXJraXNoLWxpcmE6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdXMtc3F1YXJlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbHVzLXNxdWFyZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3BhY2Utc2h1dHRsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNwYWNlLXNodXR0bGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zbGFjazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNsYWNrOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZW52ZWxvcGUtc3F1YXJlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZW52ZWxvcGUtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td29yZHByZXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd29yZHByZXNzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3BlbmlkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb3BlbmlkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5zdGl0dXRpb246YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbms6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LXVuaXZlcnNpdHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11bml2ZXJzaXR5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbW9ydGFyLWJvYXJkOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ncmFkdWF0aW9uLWNhcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdyYWR1YXRpb24tY2FwOyB9XG4uI3skZmEtY3NzLXByZWZpeH0teWFob286YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15YWhvbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdvb2dsZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdvb2dsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlZGRpdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZGRpdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWRkaXQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3R1bWJsZXVwb24tY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3R1bWJsZXVwb24tY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3R1bWJsZXVwb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdHVtYmxldXBvbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRlbGljaW91czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRlbGljaW91czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRpZ2c6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kaWdnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGllZC1waXBlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpZWQtcGlwZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWVkLXBpcGVyLWFsdDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpZWQtcGlwZXItYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZHJ1cGFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZHJ1cGFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tam9vbWxhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItam9vbWxhOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbGFuZ3VhZ2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sYW5ndWFnZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZheDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZheDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1aWxkaW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYnVpbGRpbmc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jaGlsZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNoaWxkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF3OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGF3OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3Bvb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcG9vbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWN1YmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jdWJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3ViZXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jdWJlczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlaGFuY2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWhhbmNlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVoYW5jZS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWhhbmNlLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0ZWFtOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RlYW07IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGVhbS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zdGVhbS1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1yZWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcmVjeWNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWF1dG9tb2JpbGU6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhYjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGF4aTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRheGk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmVlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJlZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNwb3RpZnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zcG90aWZ5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGV2aWFudGFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRldmlhbnRhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zb3VuZGNsb3VkOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc291bmRjbG91ZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWRhdGFiYXNlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZGF0YWJhc2U7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXBkZi1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1wZGYtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtd29yZC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS13b3JkLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWV4Y2VsLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLWV4Y2VsLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXBvd2VycG9pbnQtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtcG93ZXJwb2ludC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1waG90by1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXBpY3R1cmUtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1pbWFnZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1pbWFnZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS16aXAtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1hcmNoaXZlLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLWFyY2hpdmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpbGUtc291bmQtbzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1hdWRpby1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmlsZS1hdWRpby1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZmlsZS1tb3ZpZS1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLXZpZGVvLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maWxlLXZpZGVvLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1maWxlLWNvZGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWZpbGUtY29kZS1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmluZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZpbmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb2RlcGVuOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29kZXBlbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWpzZmlkZGxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItanNmaWRkbGU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saWZlLWJvdXk6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWxpZmUtYnVveTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbGlmZS1zYXZlcjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc3VwcG9ydDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tbGlmZS1yaW5nOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGlmZS1yaW5nOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlLW8tbm90Y2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaXJjbGUtby1ub3RjaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJhOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1yZWJlbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXJlYmVsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2U6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWVtcGlyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWVtcGlyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdpdC1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1naXQtc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2l0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2l0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0teS1jb21iaW5hdG9yLXNxdWFyZTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0teWMtc3F1YXJlOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1oYWNrZXItbmV3czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhY2tlci1uZXdzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdGVuY2VudC13ZWlibzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRlbmNlbnQtd2VpYm87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1xcTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXFxOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2VjaGF0OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS13ZWl4aW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13ZWl4aW47IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zZW5kOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1wYXBlci1wbGFuZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhcGVyLXBsYW5lOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2VuZC1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1wYXBlci1wbGFuZS1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGFwZXItcGxhbmUtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhpc3Rvcnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oaXN0b3J5OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2lyY2xlLXRoaW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jaXJjbGUtdGhpbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhlYWRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhlYWRlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBhcmFncmFwaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBhcmFncmFwaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNsaWRlcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1zbGlkZXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmUtYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hhcmUtYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2hhcmUtYWx0LXNxdWFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoYXJlLWFsdC1zcXVhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ib21iOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYm9tYjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNvY2Nlci1iYWxsLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWZ1dGJvbC1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZnV0Ym9sLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10dHk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10dHk7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaW5vY3VsYXJzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmlub2N1bGFyczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXBsdWc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wbHVnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc2xpZGVzaGFyZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNsaWRlc2hhcmU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10d2l0Y2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10d2l0Y2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS15ZWxwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXIteWVscDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW5ld3NwYXBlci1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbmV3c3BhcGVyLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS13aWZpOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItd2lmaTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGN1bGF0b3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxjdWxhdG9yOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItcGF5cGFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ29vZ2xlLXdhbGxldDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdvb2dsZS13YWxsZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy12aXNhOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtdmlzYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLW1hc3RlcmNhcmQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1tYXN0ZXJjYXJkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtZGlzY292ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1kaXNjb3ZlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNjLWFtZXg6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1hbWV4OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2MtcGF5cGFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2MtcGF5cGFsOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2Mtc3RyaXBlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2Mtc3RyaXBlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmVsbC1zbGFzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlbGwtc2xhc2g7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iZWxsLXNsYXNoLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iZWxsLXNsYXNoLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10cmFzaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyYXNoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29weXJpZ2h0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29weXJpZ2h0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1hdDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWV5ZWRyb3BwZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leWVkcm9wcGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tcGFpbnQtYnJ1c2g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1wYWludC1icnVzaDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJpcnRoZGF5LWNha2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iaXJ0aGRheS1jYWtlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYXJlYS1jaGFydDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWFyZWEtY2hhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waWUtY2hhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1waWUtY2hhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1saW5lLWNoYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGluZS1jaGFydDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhc3RmbTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWxhc3RmbTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWxhc3RmbS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1sYXN0Zm0tc3F1YXJlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdG9nZ2xlLW9mZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRvZ2dsZS1vZmY7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10b2dnbGUtb246YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10b2dnbGUtb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iaWN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmljeWNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJ1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWlveGhvc3Q6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pb3hob3N0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW5nZWxsaXN0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW5nZWxsaXN0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2M6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoZWtlbDpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tc2hlcWVsOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1pbHM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbHM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZWFucGF0aDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lYW5wYXRoOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYnV5c2VsbGFkczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJ1eXNlbGxhZHM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb25uZWN0ZGV2ZWxvcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNvbm5lY3RkZXZlbG9wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGFzaGN1YmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1kYXNoY3ViZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZvcnVtYmVlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZm9ydW1iZWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1sZWFucHViOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbGVhbnB1YjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlbGxzeTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlbGxzeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNoaXJ0c2luYnVsazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNoaXJ0c2luYnVsazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNpbXBseWJ1aWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2ltcGx5YnVpbHQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1za3lhdGxhczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNreWF0bGFzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FydC1wbHVzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FydC1wbHVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FydC1hcnJvdy1kb3duOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FydC1hcnJvdy1kb3duOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZGlhbW9uZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWRpYW1vbmQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zaGlwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc2hpcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItc2VjcmV0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdXNlci1zZWNyZXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tb3RvcmN5Y2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbW90b3JjeWNsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN0cmVldC12aWV3OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItc3RyZWV0LXZpZXc7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1oZWFydGJlYXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oZWFydGJlYXQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS12ZW51czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXZlbnVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1tZXJjdXJ5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWVyY3VyeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludGVyc2V4OmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS10cmFuc2dlbmRlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyYW5zZ2VuZGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhbnNnZW5kZXItYWx0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdHJhbnNnZW5kZXItYWx0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdmVudXMtZG91YmxlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmVudXMtZG91YmxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFycy1kb3VibGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzLWRvdWJsZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZlbnVzLW1hcnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12ZW51cy1tYXJzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFycy1zdHJva2U6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzLXN0cm9rZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcnMtc3Ryb2tlLXY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXJzLXN0cm9rZS12OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFycy1zdHJva2UtaDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcnMtc3Ryb2tlLWg7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1uZXV0ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1uZXV0ZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZW5kZXJsZXNzOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2VuZGVybGVzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZhY2Vib29rLW9mZmljaWFsOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZmFjZWJvb2stb2ZmaWNpYWw7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1waW50ZXJlc3QtcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXBpbnRlcmVzdC1wOyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2hhdHNhcHA6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aGF0c2FwcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNlcnZlcjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNlcnZlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItcGx1czpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXVzZXItcGx1czsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXVzZXItdGltZXM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci11c2VyLXRpbWVzOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG90ZWw6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJlZDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJlZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpYWNvaW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci12aWFjb2luOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJhaW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmFpbjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXN1YndheTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN1YndheTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1lZGl1bTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1lZGl1bTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXljOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS15LWNvbWJpbmF0b3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci15LWNvbWJpbmF0b3I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1vcHRpbi1tb25zdGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb3B0aW4tbW9uc3RlcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9wZW5jYXJ0OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb3BlbmNhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1leHBlZGl0ZWRzc2w6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1leHBlZGl0ZWRzc2w7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTQ6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktZnVsbDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktZnVsbDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMzpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS10aHJlZS1xdWFydGVyczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktdGhyZWUtcXVhcnRlcnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LTI6YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktaGFsZjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWJhdHRlcnktaGFsZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhdHRlcnktMTpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS1xdWFydGVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmF0dGVyeS1xdWFydGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYmF0dGVyeS0wOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1iYXR0ZXJ5LWVtcHR5OmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYmF0dGVyeS1lbXB0eTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1vdXNlLXBvaW50ZXI6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tb3VzZS1wb2ludGVyOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taS1jdXJzb3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pLWN1cnNvcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9iamVjdC1ncm91cDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW9iamVjdC1ncm91cDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9iamVjdC11bmdyb3VwOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItb2JqZWN0LXVuZ3JvdXA7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1zdGlja3ktbm90ZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0aWNreS1ub3RlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tc3RpY2t5LW5vdGUtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXN0aWNreS1ub3RlLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1qY2I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYy1qY2I7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYy1kaW5lcnMtY2x1YjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNjLWRpbmVycy1jbHViOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2xvbmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jbG9uZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWJhbGFuY2Utc2NhbGU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1iYWxhbmNlLXNjYWxlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3VyZ2xhc3MtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy0xOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3Mtc3RhcnQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3VyZ2xhc3Mtc3RhcnQ7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtMjpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0taG91cmdsYXNzLWhhbGY6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3VyZ2xhc3MtaGFsZjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzcy0zOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1ob3VyZ2xhc3MtZW5kOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaG91cmdsYXNzLWVuZDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhvdXJnbGFzczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhvdXJnbGFzczsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtZ3JhYi1vOmJlZm9yZSxcbi4jeyRmYS1jc3MtcHJlZml4fS1oYW5kLXJvY2stbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtcm9jay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1zdG9wLW86YmVmb3JlLFxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcGFwZXItbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtcGFwZXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtc2Npc3NvcnMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtc2Npc3NvcnMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtbGl6YXJkLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLWxpemFyZC1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1zcG9jay1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaGFuZC1zcG9jay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taGFuZC1wb2ludGVyLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1oYW5kLXBvaW50ZXItbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWhhbmQtcGVhY2UtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWhhbmQtcGVhY2UtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXRyYWRlbWFyazpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRyYWRlbWFyazsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXJlZ2lzdGVyZWQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1yZWdpc3RlcmVkOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY3JlYXRpdmUtY29tbW9uczpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNyZWF0aXZlLWNvbW1vbnM7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1nZzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWdnOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tZ2ctY2lyY2xlOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItZ2ctY2lyY2xlOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tdHJpcGFkdmlzb3I6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci10cmlwYWR2aXNvcjsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW9kbm9rbGFzc25pa2k6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vZG5va2xhc3NuaWtpOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb2Rub2tsYXNzbmlraS1zcXVhcmU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vZG5va2xhc3NuaWtpLXNxdWFyZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWdldC1wb2NrZXQ6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1nZXQtcG9ja2V0OyB9XG4uI3skZmEtY3NzLXByZWZpeH0td2lraXBlZGlhLXc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci13aWtpcGVkaWEtdzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXNhZmFyaTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXNhZmFyaTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNocm9tZTpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNocm9tZTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWZpcmVmb3g6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1maXJlZm94OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tb3BlcmE6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1vcGVyYTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWludGVybmV0LWV4cGxvcmVyOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItaW50ZXJuZXQtZXhwbG9yZXI7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS10djpiZWZvcmUsXG4uI3skZmEtY3NzLXByZWZpeH0tdGVsZXZpc2lvbjpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLXRlbGV2aXNpb247IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jb250YW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb250YW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS01MDBweDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLTUwMHB4OyB9XG4uI3skZmEtY3NzLXByZWZpeH0tYW1hem9uOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItYW1hem9uOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItcGx1cy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItcGx1cy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY2FsZW5kYXItbWludXMtbzpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLWNhbGVuZGFyLW1pbnVzLW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1jYWxlbmRhci10aW1lcy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY2FsZW5kYXItdGltZXMtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNhbGVuZGFyLWNoZWNrLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jYWxlbmRhci1jaGVjay1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taW5kdXN0cnk6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1pbmR1c3RyeTsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcC1waW46YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXAtcGluOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLXNpZ25zOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItbWFwLXNpZ25zOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tbWFwLW86YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1tYXAtbzsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LW1hcDpiZWZvcmUgeyBjb250ZW50OiAkZmEtdmFyLW1hcDsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LWNvbW1lbnRpbmc6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1jb21tZW50aW5nOyB9XG4uI3skZmEtY3NzLXByZWZpeH0tY29tbWVudGluZy1vOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItY29tbWVudGluZy1vOyB9XG4uI3skZmEtY3NzLXByZWZpeH0taG91eno6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ob3V6ejsgfVxuLiN7JGZhLWNzcy1wcmVmaXh9LXZpbWVvOmJlZm9yZSB7IGNvbnRlbnQ6ICRmYS12YXItdmltZW87IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1ibGFjay10aWU6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1ibGFjay10aWU7IH1cbi4jeyRmYS1jc3MtcHJlZml4fS1mb250aWNvbnM6YmVmb3JlIHsgY29udGVudDogJGZhLXZhci1mb250aWNvbnM7IH1cbiIsIi8vIE1PQklMRSBGSVJTVFxuXG4udG9wLWJhcixcbi5oZWFkZXItY29udGFpbmVyLFxuLmRlbW8tbm90aWNlLFxuLmZvb3Rlci1jb250YWluZXIsXG4uY29sMS1sYXlvdXQsXG4uY29sMi1sZWZ0LWxheW91dCxcbi5jb2wyLXJpZ2h0LWxheW91dCxcbi5jb2wzLWxheW91dHtcblx0QGluY2x1ZGUgZ3JpZC1yb3coKTtcbn1cblxuLy8gTGF5b3V0XG4uY29sMS1sYXlvdXR7XG5cdC5jb2wtd3JhcHBlcntcblx0XHRAaW5jbHVkZSBncmlkLXJvdyhuZXN0KTtcblx0XHQuY29sLW1haW57XG5cdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0fVxuXHR9XG59XG5cbi5jb2wyLWxlZnQtbGF5b3V0LFxuLmNvbDItcmlnaHQtbGF5b3V0e1xuXHQuY29sLXdyYXBwZXJ7XG5cdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0LnNpZGViYXIsXG5cdFx0LmNvbC1tYWluLFxuXHRcdD4gYXtcblx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHR9XG5cdH1cbn1cblxuLmNvbDMtbGF5b3V0e1xuXHQuY29sLXdyYXBwZXJ7XG5cdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0LnNpZGViYXIsXG5cdFx0LmNvbC1tYWlue1xuXHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdH1cblx0XHQ+IHNwYW57XG5cdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcdFxuXHRcdH1cblx0fVxufVxuXG4vL0JyZWFkY3J1bWJzXG4uYnJlYWRjcnVtYnN7XG5cdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcbn1cblxuLy9IZWFkZXJcbi5oZWFkZXItY29udGFpbmVye1xuXHQuc3VwZXItaGVhZGVye1xuXHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdC53ZWxjb21lLFxuXHRcdC5zd2l0Y2hlcnMsXG5cdFx0LnRvcC1saW5rc3tcblx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHR9XG5cdH1cblx0LmhlYWRlcntcblx0XHRAaW5jbHVkZSBncmlkLXJvdyhuZXN0KTtcblx0XHQubG9nbyxcblx0XHQucXVpY2stYWNjZXNze1xuXHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1x0XG5cdFx0XHRpbnB1dHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oOSk7XHRcblx0XHRcdH1cblx0XHRcdGJ1dHRvbntcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vQ2F0YWxvZ1xuLnByb2R1Y3RzLWxpc3R7XG5cdGxpe1xuXHRcdGEsXG5cdFx0LnByb2R1Y3Qtc2hvcHtcblx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHR9XG5cdH1cbn1cblxuLnByb2R1Y3RzLWdyaWR7XG5cdEBpbmNsdWRlIGJsb2NrLWdyaWQoXG5cdFx0Ly8gVGhpcyBjb250cm9scyBob3cgbWFueSBlbGVtZW50cyB3aWxsIGJlIG9uIGVhY2ggcm93IG9mIHRoZSBibG9jayBncmlkLiBTZXQgdGhpcyB0byB3aGF0ZXZlciBudW1iZXIgeW91IG5lZWQsIHVwIHRvIHRoZSBtYXggYWxsb3dlZCBpbiB0aGUgdmFyaWFibGUuXG5cdFx0Ly8gQXZhaWxhYmxlIG9wdGlvbnM6IDEtMTIgYnkgZGVmYXVsdCwgYW5kIGZhbHNlLlxuXHRcdCRwZXItcm93OiAyLFxuXG5cdFx0Ly8gVGhpcyBjb250cm9scyBob3cgbXVjaCBzcGFjZSBpcyBiZXR3ZWVuIGVhY2ggaXRlbSBpbiB0aGUgYmxvY2sgZ3JpZC5cblx0XHQvLyBVc2UgYSB2YXJpYWJsZSBvciBhbnkgcGl4ZWwgb3IgZW0gdmFsdWVzLlxuXHRcdCRzcGFjaW5nOiAkYmxvY2stZ3JpZC1kZWZhdWx0LXNwYWNpbmcsXG5cblx0XHQvLyBUaGlzIGNvbnRyb2xzIHdoZXRoZXIgb3Igbm90IGJhc2Ugc3R5bGVzIGNvbWUgdGhyb3VnaCwgc2V0IHRvIGZhbHNlIHRvIGxlYXZlIG91dC5cblx0XHQkYmFzZS1zdHlsZTogdHJ1ZVxuXHQpO1xufVxuXG4vL1Byb2R1Y3Rcbi5wcm9kdWN0LXZpZXd7XG5cdC5wcm9kdWN0LWVzc2VudGlhbHtcblx0XHQjcHJvZHVjdF9hZGR0b2NhcnRfZm9ybXtcblx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdFx0LnByb2R1Y3QtaW1nLWJveCxcblx0XHRcdC5wcm9kdWN0LXNob3B7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LnByb2R1Y3QtY29sbGF0ZXJhbHtcblx0XHQjY3VzdG9tZXItcmV2aWV3c3tcblx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdFx0PiBoMiwgZGwsIC5mb3JtLWFkZHtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0fVxuXHRcdFx0LmZvcm0tYWRke1xuXHRcdFx0XHRmb3Jte1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdFx0XHRcdHNlY3Rpb257XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdC5idXR0b25zLXNldHtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdH1cblx0XHRcdFx0XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5ib3gtdXAtc2VsbCxcbi5ibG9jay1yZWxhdGVkLFxuLmNyb3Nzc2VsbHtcblx0dWx7XG5cdFx0QGluY2x1ZGUgYmxvY2stZ3JpZChcblx0XHRcdCRwZXItcm93OiAyXG5cdFx0KTtcblx0fVxufVxuXG4vL0NhcnRcbi5jYXJ0e1xuXHQmID4gZm9ybSB7XG5cdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0LmNhcnQtdGFibGUtd3JhcHBlcntcblx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHR9XG5cdH1cblx0LmNhcnQtY29sbGF0ZXJhbHN7XG5cdFx0LmNvbC1jb2xsYXRlcmFsc3tcblx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdFx0LnNoaXBwaW5nLFxuXHRcdFx0I2Rpc2NvdW50LWNvdXBvbi1mb3JtLFxuXHRcdFx0LnRvdGFsc3tcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufVxuXG4vL0Zvb3RlclxuLmZvb3Rlci1jb250YWluZXJ7XG5cdC5mb290ZXJ7XG5cdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0LmZvb3Rlci1saW5rcyxcblx0XHRhZGRyZXNze1xuXHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdH1cblx0XHQuYmxvY2stc3Vic2NyaWJle1xuXHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHRcdFx0Zm9ybXtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0XHRcdC5ibG9jay1jb250ZW50e1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHRcdFx0XHQuZm9ybS1zdWJzY3JpYmUtaGVhZGVye1xuXHRcdFx0XHRcdFx0Ly9AaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5pbnB1dC1ib3h7XG5cdFx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigkY29sdW1uczo4LCAkY29sbGFwc2U6dHJ1ZSk7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdC5hY3Rpb25ze1xuXHRcdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oJGNvbHVtbnM6NCwgJGNvbGxhcHNlOiB0cnVlKTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLy9Mb2dpblxuLmFjY291bnQtbG9naW57XG5cdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHQucGFnZS10aXRsZXtcblx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdH1cblx0LnJlZ2lzdGVyZWQtdXNlcnMsXG5cdC5uZXctdXNlcnN7XG5cdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMTIpO1xuXHR9XG59XG5cbi8vQ2hlY2tvdXRcbiNjaGVja291dC1zdGVwLWxvZ2lue1xuXHQuY29sMi1zZXR7XG5cdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0LmNvbC0xLFxuXHRcdC5jb2wtMntcblx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEyKTtcblx0XHR9XG5cdH1cbn1cblxuQG1lZGlhICN7JG1lZGl1bS11cH17XG5cdC5jb2wyLWxlZnQtbGF5b3V0LFxuXHQuY29sMi1yaWdodC1sYXlvdXR7XG5cdFx0LmNvbC13cmFwcGVye1xuXHRcdFx0LnNpZGViYXJ7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDUpO1xuXHRcdFx0fVxuXHRcdFx0LmNvbC1tYWlue1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig3KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuY29sMy1sYXlvdXR7XG5cdC5jb2wtd3JhcHBlcntcblx0XHRcdC5zaWRlYmFye1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigzKTtcblx0XHRcdH1cblx0XHRcdC5jb2wtbWFpbntcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmhlYWRlci1jb250YWluZXJ7XG5cdFx0LnN1cGVyLWhlYWRlcntcblx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdFx0LndlbGNvbWV7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDQpO1xuXHRcdFx0fVxuXHRcdFx0LnN3aXRjaGVyc3tcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oOCk7XG5cdFx0XHR9XG5cdFx0XHQudG9wLWxpbmtze1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5oZWFkZXJ7XG5cdFx0XHRAaW5jbHVkZSBncmlkLXJvdyhuZXN0KTtcblx0XHRcdC5sb2dve1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig1KTtcblx0XHRcdH1cblx0XHRcdC5xdWljay1hY2Nlc3N7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDcpO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5wcm9kdWN0LXZpZXd7XG5cdFx0LnByb2R1Y3QtZXNzZW50aWFse1xuXHRcdFx0I3Byb2R1Y3RfYWRkdG9jYXJ0X2Zvcm17XG5cdFx0XHRcdC5wcm9kdWN0LWltZy1ib3h7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNSk7XG5cdFx0XHRcdH1cblx0XHRcdFx0LnByb2R1Y3Qtc2hvcHtcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig3KTtcdFxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHRcdC5wcm9kdWN0LWNvbGxhdGVyYWx7XG5cdFx0XHQjY3VzdG9tZXItcmV2aWV3c3tcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0XHRcdGRsLFxuXHRcdFx0XHQuZm9ybS1hZGR7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNik7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuYm94LXVwLXNlbGwsXG5cdC5ibG9jay1yZWxhdGVkLFxuXHQuY3Jvc3NzZWxse1xuXHRcdHVse1xuXHRcdFx0QGluY2x1ZGUgYmxvY2stZ3JpZChcblx0XHRcdFx0JHBlci1yb3c6IDNcblx0XHRcdCk7XG5cdFx0fVxuXHR9XG5cblx0Ly9DYXJ0XG5cdC5jYXJ0e1xuXHRcdC5jYXJ0LWNvbGxhdGVyYWxze1xuXHRcdFx0LmNvbC1jb2xsYXRlcmFsc3tcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0XHRcdCNkaXNjb3VudC1jb3Vwb24tZm9ybSxcblx0XHRcdFx0LnRvdGFsc3tcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC8vTG9naW5cblx0LmFjY291bnQtbG9naW57XG5cdFx0LnJlZ2lzdGVyZWQtdXNlcnMsXG5cdFx0Lm5ldy11c2Vyc3tcblx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHRcdH1cblx0fVxuXHQuYWNjb3VudC1jcmVhdGV7XG5cdFx0LnBhZ2UtdGl0bGV7XG5cdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigxMik7XG5cdFx0fVxuXHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdC5maWVsZHNldHtcblx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDYpO1xuXHRcdH1cblx0fVxuXG5cdC8vRm9vdGVyXG5cdC5mb290ZXItY29udGFpbmVye1xuXHRcdC5mb290ZXJ7XG5cdFx0XHQuYmxvY2stc3Vic2NyaWJle1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxufVxuXG5AbWVkaWEgI3skbGFyZ2UtdXB9e1xuXHQuY29sMi1sZWZ0LWxheW91dCxcblx0LmNvbDItcmlnaHQtbGF5b3V0e1xuXHRcdC5jb2wtd3JhcHBlcntcblx0XHRcdC5zaWRlYmFye1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigzKTtcblx0XHRcdH1cblx0XHRcdC5jb2wtbWFpbntcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oOSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cblx0LmhlYWRlci1jb250YWluZXJ7XG5cdFx0LnN1cGVyLWhlYWRlcntcblx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdFx0LndlbGNvbWV7XG5cdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDIpO1xuXHRcdFx0fVxuXHRcdFx0LnN3aXRjaGVyc3tcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG5cdFx0XHR9XG5cdFx0XHQudG9wLWxpbmtze1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdH1cblx0XHR9XG5cdFx0LmhlYWRlcntcblx0XHRcdC5xdWljay1hY2Nlc3N7XG5cdFx0XHRcdGlucHV0e1xuXHRcdFx0XHRcdEBpbmNsdWRlIGdyaWQtY29sdW1uKDEwKTtcdFxuXHRcdFx0XHR9XG5cdFx0XHRcdGJ1dHRvbntcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbigyKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdC5wcm9kdWN0cy1ncmlke1xuXHRcdEBpbmNsdWRlIGJsb2NrLWdyaWQoXG5cdFx0JHBlci1yb3c6IDMsXG5cdFx0JHNwYWNpbmc6ICRibG9jay1ncmlkLWRlZmF1bHQtc3BhY2luZyxcblx0XHQkYmFzZS1zdHlsZTogdHJ1ZVxuXHRcdCk7XG5cdH1cblxuXHQucHJvZHVjdHMtbGlzdHtcblx0XHRsaXtcblx0XHRcdD4gYXtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNCk7XG5cdFx0XHR9XG5cdFx0XHQucHJvZHVjdC1zaG9we1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig4KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQuYm94LXVwLXNlbGwsXG5cdC5ibG9jay1yZWxhdGVkLFxuXHQuY3Jvc3NzZWxse1xuXHRcdHVse1xuXHRcdFx0QGluY2x1ZGUgYmxvY2stZ3JpZChcblx0XHRcdFx0JHBlci1yb3c6IDRcblx0XHRcdCk7XG5cdFx0fVxuXHR9XG5cblx0Ly9DYXJ0XG5cdC5jYXJ0e1xuXHRcdC5jYXJ0LWNvbGxhdGVyYWxze1xuXHRcdFx0LmNvbC1jb2xsYXRlcmFsc3tcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1yb3cobmVzdCk7XG5cdFx0XHRcdC5zaGlwcGluZ3tcblx0XHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdFx0fVxuXHRcdFx0XHQjZGlzY291bnQtY291cG9uLWZvcm0sXG5cdFx0XHRcdC50b3RhbHN7XG5cdFx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oMyk7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvL0NoZWNrb3V0XG5cdCNjaGVja291dC1zdGVwLWxvZ2lue1xuXHRcdC5jb2wyLXNldHtcblx0XHRcdEBpbmNsdWRlIGdyaWQtcm93KG5lc3QpO1xuXHRcdFx0LmNvbC0xLFxuXHRcdFx0LmNvbC0ye1xuXHRcdFx0XHRAaW5jbHVkZSBncmlkLWNvbHVtbig2KTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHQvL0Zvb3RlclxuXHQuZm9vdGVyLWNvbnRhaW5lcntcblx0XHQuZm9vdGVye1xuXHRcdFx0LmJsb2NrLXN1YnNjcmliZXtcblx0XHRcdFx0QGluY2x1ZGUgZ3JpZC1jb2x1bW4oNSk7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdFx0XG59IiwiI3dpc2hsaXN0LXRhYmxle1xuXHRpbWd7XG5cdFx0bWF4LXdpZHRoOiBpbmhlcml0O1xuXHR9XG59XG4jd2lzaGxpc3Qtdmlldy1mb3Jte1xuXHRidXR0b257XG5cdFx0QGV4dGVuZCAudGlueTtcblx0fVxufSIsIi5kZW1vLW5vdGljZXtcblx0QGV4dGVuZCAuaGlkZS1mb3Itc21hbGw7XG5cdC5ub3RpY2UtaW5uZXJ7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHRcdGNvbG9yOiAkd2FybmluZy1jb2xvcjtcblx0fVxufVxuLndlbGNvbWUtbXNne1xuXHRAZXh0ZW5kIC5oaWRlLWZvci1zbWFsbDtcbn1cblxuI2luY2hvb19nbG9iYWxfbWVzc2FnZXMge1xuXHRiYWNrZ3JvdW5kOiAkc25vdztcblx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHR6LWluZGV4OiA5OTk5O1xufVxuXG4jaW5jaG9vX2dsb2JhbF9tZXNzYWdlc19jbG9zZSB7XG5cdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0dG9wOiAwO1xuXHRyaWdodDogMTVweDtcblx0ei1pbmRleDogMTAwMDA7XG5cdGRpc3BsYXk6IGJsb2NrO1xuXHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdGZvbnQtc2l6ZTogMjRweDtcblx0bGluZS1oZWlnaHQ6IDE1cHg7XG5cdC13ZWJraXQtYm9yZGVyLXJhZGl1czogMTVweDtcblx0LW1vei1ib3JkZXItcmFkaXVzOiAxNXB4O1xuXHRib3JkZXItcmFkaXVzOiAxNXB4O1xufVxuXG4udmFsaWRhdGlvbi1hZHZpY2UsXG4ucmVxdWlyZWR7XG5cdGNvbG9yOiAkd2FybmluZy1jb2xvcjtcbn1cblxuLnN1Y2Nlc3MtbXNne1xuXHR1bHtcblx0XHRsaXtcblx0XHRcdHNwYW57XG5cdFx0XHRcdGNvbG9yOiAkc3VjY2Vzcy1jb2xvcjtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn1cblxuLmVycm9yLW1zZ3tcblx0dWx7XG5cdFx0bGl7XG5cdFx0XHRzcGFue1xuXHRcdFx0XHRjb2xvcjogJHdhcm5pbmctY29sb3I7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLmJyZWFkY3J1bWJze1xuXHRtYXJnaW4tdG9wOiAxZW07XG5cdHVse1xuXHRcdGxpe1xuXHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdH1cblx0fVxufSIsIi8vVGFyZ2V0IHNwZWNpZmljIGJyb3dzZXJzIGlmIHlvdSBuZWVkIHRvXG5cbkAtbW96LWRvY3VtZW50IHVybC1wcmVmaXgoKSB7XG5cdC8vTW96aWxsYVxuXG59XG5cbi8vVW5jb21tZW50IGpzIGNvZGUgZm9yIGZvbGxvd2luZyBicm93c2VycyBpbiBzcmMvanMvYXBwLmpzIChsaW5lOiA5LTE4KVxuXG4uaWUtdGFyZ2V0e1xuXG59XG5cbi5zYWZhcmktdGFyZ2V0e1xuXG59XG5cbi5jaHJvbWUtdGFyZ2V0e1xuXG59IiwiLy9TY3JvbGwgdG8gdG9wXG4uc2Nyb2xsVG9Ub3B7XG4gIGRpc3BsYXk6IG5vbmU7XG4gIHBvc2l0aW9uOiBmaXhlZDtcbiAgY3Vyc29yOiBwb2ludGVyO1xuICByaWdodDogMWVtO1xuICBib3R0b206IDEwMHB4O1xufVxuIiwiLmNhcnR7XG5cdC5wYWdlLXRpdGxle1xuXHRcdGgxe1xuXHRcdFx0JiArIHVse1xuXHRcdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHRmb3Jte1xuXHRcdG92ZXJmbG93LXg6IGhpZGRlbjtcblx0XHRmaWVsZHNldHtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0XHQjc2hvcHBpbmctY2FydC10YWJsZXtcblx0XHRcdFx0dGJvZHl7XG5cdFx0XHRcdFx0aW1ne1xuXHRcdFx0XHRcdFx0bWF4LXdpZHRoOiBpbmhlcml0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHR3aWR0aDogMTAwJTtcblx0XHRcdFx0dGZvb3R7XG5cdFx0XHRcdFx0YnV0dG9ue1xuXHRcdFx0XHRcdFx0QGV4dGVuZCAudGlueTtcblx0XHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDFlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0LmJ0bi1lbXB0eXtcblx0XHRcdFx0XHRcdGZsb2F0OiBsZWZ0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuYnRuLXVwZGF0ZSxcblx0XHRcdFx0XHQuYnRuLWNvbnRpbnVle1xuXHRcdFx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQuYnRuLXVwZGF0ZXtcblx0XHRcdFx0XHRcdG1hcmdpbjogMCAwLjVlbTtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0QG1lZGlhICN7JHNtYWxsLW9ubHl9e1xuXHRcdFx0XHRcdFx0YnV0dG9ue1xuXHRcdFx0XHRcdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHRcdC5idG4tZW1wdHl7XG5cdFx0XHRcdFx0XHRcdG1hcmdpbjogMWVtIDA7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG5cdC5jYXJ0LWNvbGxhdGVyYWxze1xuXHRcdC5zaGlwcGluZ3tcblx0XHRcdC5idXR0b25zLXNldHtcblx0XHRcdFx0LmJ1dHRvbntcblx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0I2Rpc2NvdW50LWNvdXBvbi1mb3Jte1xuXHRcdFx0LmRpc2NvdW50e1xuXHRcdFx0XHRoMntcblx0XHRcdFx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRcdFx0fVxuXHRcdFx0XHQuZGlzY291bnQtZm9ybXtcblx0XHRcdFx0XHRsYWJlbCxcblx0XHRcdFx0XHRpbnB1dCxcblx0XHRcdFx0XHQuYnV0dG9ucy1zZXR7XG5cdFx0XHRcdFx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0XHRcdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0aW5wdXR7XG5cdFx0XHRcdFx0XHRtYXJnaW46IDFlbSAwO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0XHQudG90YWxze1xuXHRcdFx0dGFibGUsXG5cdFx0XHR1bHtcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdFx0Y2xlYXI6IGJvdGg7XG5cdFx0XHR9XG5cdFx0XHR0YWJsZXtcblx0XHRcdFx0bWFyZ2luLXRvcDogMWVtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi8vVG9vbGJhclxuLnRvb2xiYXJ7XG5cdG92ZXJmbG93OiBhdXRvO1xuXHRtYXJnaW4tYm90dG9tOiAxZW07XG5cdC5wYWdlcntcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0LmFtb3VudCwgLmxpbWl0ZXJ7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1x0XG5cdFx0XHRtYXJnaW46IDA7XG5cdFx0fVxuXHRcdC5hbW91bnR7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwLjVlbTtcblx0XHRcdHBvc2l0aW9uOiByZWxhdGl2ZTtcblx0XHRcdHRvcDogNHB4O1xuXHRcdH1cblx0XHQubGltaXRlcntcblx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdHNlbGVjdCwgc3Bhbntcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRtYXJnaW46IDA7XG5cdFx0XHRcdHdpZHRoOiA3MHB4O1xuXHRcdFx0fVxuXHRcdH1cblx0XHQucGFnZXN7XG5cdFx0XHRzdHJvbmd7XG5cdFx0XHRcdGRpc3BsYXk6IG5vbmU7XG5cdFx0XHR9XG5cdFx0XHRvbCBsaXtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQuc29ydGVye1xuXHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRmbG9hdDogcmlnaHQ7XG5cdFx0LnZpZXctbW9kZSwgLnNvcnQtYnl7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR2ZXJ0aWNhbC1hbGlnbjogbWlkZGxlO1xuXHRcdFx0bWFyZ2luOiAwO1xuXHRcdH1cblx0XHQudmlldy1tb2Rle1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0dG9wOiA0cHg7XG5cdFx0fVxuXHRcdC5zb3J0LWJ5e1xuXHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0c2VsZWN0LCBhe1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdG1hcmdpbjogMDtcblx0XHRcdH1cblx0XHRcdHNlbGVjdHtcblx0XHRcdFx0d2lkdGg6IDgwcHg7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi8vUHJvZHVjdHMgbGlzdFxuLnByb2R1Y3RzLWxpc3R7XG5cdGxpe1xuXHRcdG92ZXJmbG93OiBoaWRkZW47XG5cdFx0Y2xlYXI6IGJvdGg7XG5cdFx0bWFyZ2luLWJvdHRvbTogMWVtO1xuXHR9XG59XG4ucHJvZHVjdHMtZ3JpZHtcblx0aDJ7XG5cdFx0YXtcblx0XHRcdGZvbnQtc2l6ZTogMC42NWVtO1xuXHRcdH1cblx0fVxufVxuLnByb2R1Y3RzLWxpc3QsXG4ucHJvZHVjdHMtZ3JpZHtcblx0LmJ0bi1jYXJ0e1xuXHRcdG1hcmdpbi1ib3R0b206IDAuNWVtO1xuXHR9XG5cdC5wcm9kdWN0LXNob3B7XG5cdFx0YXtcblx0XHRcdHBhZGRpbmc6IDA7XG5cdFx0fVxuXHR9XG5cdC5idG4tY2FydHtcblx0XHRAZXh0ZW5kIC5zbWFsbDtcblx0fVxufVxuLmFkZC10by1saW5rc3tcblx0bWFyZ2luOiAwO1xuXHRsaXtcblx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHQuc2VwYXJhdG9ye1xuXHRcdFx0ZGlzcGxheTogbm9uZTtcblx0XHR9XG5cdFx0YXtcblx0XHRcdGZvbnQtc2l6ZTogMDtcblx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdH1cblx0XHR9XG5cdFx0JjpmaXJzdC1jaGlsZHtcblx0XHRcdGE6YmVmb3Jle1xuXHRcdFx0XHRwYWRkaW5nOiAwIDAuNWVtIDAgMDtcblx0XHRcdFx0Y29udGVudDogXCJcXGYwMDRcIjtcblx0XHRcdH1cblx0XHR9XG5cdFx0JjpudGgtY2hpbGQoMil7XG5cdFx0XHRhOmJlZm9yZXtcblx0XHRcdFx0cGFkZGluZzogMCAwIDAgMC41ZW07XG5cdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMGVjXCI7XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiI2NoZWNrb3V0LXN0ZXAtYmlsbGluZyxcbiNjaGVja291dC1zdGVwLXNoaXBwaW5nLFxuI2NoZWNrb3V0LXN0ZXAtbG9naW4sXG4jY2hlY2tvdXQtc3RlcC1zaGlwcGluZ19tZXRob2QsXG4jY2hlY2tvdXQtc3RlcC1wYXltZW50e1xuXHR1bCxcblx0ZmllbGRzZXR7XG5cdFx0bWFyZ2luOiAwO1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cbn1cblxuLm9wY3sgXG5cdC5zZWN0aW9ueyBcblx0XHQuc3RlcC10aXRsZXsgXG5cdFx0XHRjbGVhcjogYm90aDtcblx0XHRcdGgye1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR9XG5cdFx0XHRhe1xuICBcdFx0XHRcdGRpc3BsYXk6IG5vbmU7XHRcblx0XHRcdH1cblx0XHR9XG5cdFx0Ji5hbGxvdzpub3QoLmFjdGl2ZSl7XG5cdFx0XHQuc3RlcC10aXRsZSBhe1xuXHRcdFx0XHRkaXNwbGF5OiBibG9jaztcblx0XHRcdCAgICBmbG9hdDogcmlnaHQ7XG5cdFx0XHQgICAgbGluZS1oZWlnaHQ6IDQwcHg7XG5cdFx0XHQgICAgaGVpZ2h0OiA0MHB4O1xuXHRcdFx0ICAgIHBhZGRpbmc6IDAgMTBweDtcblx0XHRcdH1cblx0XHR9XG5cdH1cbn0iLCIuY21zLWluZGV4LWluZGV4e1xuXHQubWFpbi1jb250YWluZXJ7XG5cdFx0cGFkZGluZzogMS4yZW0gMCAwIDA7XG5cdH1cbn1cblxuIiwiLmZvb3Rlci1jb250YWluZXJ7XG5cdG1hcmdpbi10b3A6IDJlbTtcblx0dWwubGlua3N7XG5cdFx0dGV4dC1hbGlnbjogcmlnaHQ7XG5cdH1cblx0YWRkcmVzc3tcblx0XHR0ZXh0LWFsaWduOiByaWdodDtcblx0XHRjbGVhcjogYm90aDtcblx0fVxuXHQuYmxvY2stc3Vic2NyaWJle1xuXHRcdC5pbnB1dC1ib3h7XG5cdFx0XHRwYWRkaW5nLXJpZ2h0OiAwO1xuXHRcdFx0aW5wdXR7XG5cdFx0XHRcdGhlaWdodDogMi4zNWVtO1xuXHRcdFx0fVxuXHRcdH1cblx0XHQuYWN0aW9uc3tcblx0XHRcdHBhZGRpbmctbGVmdDogMDtcblx0XHRcdGJ1dHRvbntcblx0XHRcdFx0QGV4dGVuZCAudGlueTtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGhlaWdodDogM2VtO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi8vTGlzdHNcblxudWwsIG9se1xuXHRsaXN0LXN0eWxlLXR5cGU6IG5vbmU7XG59XG51bC5saW5rcyBsaXtcblx0ZGlzcGxheTogaW5saW5lO1xufVxudWwsIG9sLCBkZHtcblx0bWFyZ2luOiAwO1xufVxuXG4vL0xpbmtzXG5cbmF7XG5cdHRleHQtZGVjb3JhdGlvbjogbm9uZTtcbn1cblxuLnNpZGViYXJ7XG5cdC5ibG9ja3tcblx0XHRiYWNrZ3JvdW5kOiAkc25vdztcblx0XHRtYXJnaW4tdG9wOiAxZW07XG5cdFx0cGFkZGluZzogMWVtO1xuXHR9XG59IiwiLmhlYWRlci1jb250YWluZXJ7XG5cdC5zdXBlci1oZWFkZXJ7XG5cdFx0LndlbGNvbWV7XG5cblx0XHR9XG5cdFx0LnN3aXRjaGVyc3tcblx0XHRcdC5zdG9yZS1zd2l0Y2hlcixcblx0XHRcdC5mb3JtLWxhbmd1YWdlLFxuXHRcdFx0LmJsb2NrLWN1cnJlbmN5e1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdHZlcnRpY2FsLWFsaWduOiB0b3A7XG5cdFx0XHRcdHdpZHRoOiA1LjRlbTtcblx0XHRcdFx0c2VsZWN0e1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAuMWVtIDEuNGVtIDAuMWVtIDAuMWVtO1xuXHRcdFx0XHRcdGhlaWdodDogMS42ZW07XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LnRvcC1saW5rc3tcblx0XHRcdHRleHQtYWxpZ246IGNlbnRlcjtcblx0XHRcdHVse1xuXHRcdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHRcdGxpe1xuXHRcdFx0XHRcdG1hcmdpbjogMCAwIDAgMWVtO1xuXHRcdFx0XHRcdGF7XG5cdFx0XHRcdFx0XHRmb250LXNpemU6IDA7XG5cdFx0XHRcdFx0XHQmOmJlZm9yZXtcblx0XHRcdFx0XHRcdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuXHRcdFx0XHRcdFx0XHRmb250LXNpemU6IDIwcHg7XG5cdFx0XHRcdFx0XHRcdHBhZGRpbmc6IDAgMC41ZW0gMCAwO1xuXHRcdFx0XHRcdFx0fVxuXHRcdFx0XHRcdH1cblx0XHRcdFx0XHQmOmZpcnN0LWNoaWxke1xuXHRcdFx0XHRcdFx0YTpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMDA3XCI7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKDIpe1xuXHRcdFx0XHRcdFx0YTpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMDA0XCI7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKDMpe1xuXHRcdFx0XHRcdFx0YTpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMGVjXCI7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdCY6bnRoLWNoaWxkKDQpe1xuXHRcdFx0XHRcdFx0YTpiZWZvcmV7XG5cdFx0XHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMDkwXCI7XG5cdFx0XHRcdFx0XHR9XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdEBtZWRpYSAjeyRtZWRpdW0tdXB9e1xuXHRcdFx0XHRcdGZsb2F0OiByaWdodDtcblx0XHRcdFx0XHRsaXtcblx0XHRcdFx0XHRcdG1hcmdpbjogMCAwIDAgMmVtO1xuXHRcdFx0XHRcdFx0YXtcblx0XHRcdFx0XHRcdFx0Zm9udC1zaXplOiAwLjhlbTtcblx0XHRcdFx0XHRcdH1cblx0XHRcdFx0XHR9XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmJ0bi1jYXJ0e1xuXHRcdFx0cG9zaXRpb246IGZpeGVkO1xuXHRcdFx0dG9wOiAyLjVlbTtcblx0XHRcdHJpZ2h0OiAwO1xuXHRcdFx0cGFkZGluZzogMC41ZW07XG5cdFx0XHRtYXJnaW4tdG9wOiAtMC41ZW07XG5cdFx0XHRiYWNrZ3JvdW5kOiAkcHJpbWFyeS1jb2xvcjtcblx0XHRcdHotaW5kZXg6IDU7XG5cdFx0XHRzcGFue1xuXHRcdFx0XHRiYWNrZ3JvdW5kOiAkd2hpdGU7XG5cdFx0XHRcdGJvcmRlci1yYWRpdXM6IDUwJTtcblx0XHRcdFx0cGFkZGluZzogMCAwLjNlbTtcblx0XHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0XHRib3R0b206IDdweDtcblx0XHRcdH1cblx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRjb250ZW50OiBcIlxcZjA3YVwiO1xuXHRcdFx0XHRmb250LWZhbWlseTogRm9udEF3ZXNvbWU7XG5cdFx0XHRcdGNvbG9yOiAkd2hpdGU7XG5cdFx0XHRcdGZvbnQtc2l6ZTogMjBweDtcblx0XHRcdFx0cGFkZGluZzogMCAwLjNlbSAwIDA7XG5cdFx0XHR9XG5cdFx0XHRAbWVkaWEgI3skbWVkaXVtLXVwfXtcblx0XHRcdFx0dG9wOiAyLjhlbTtcblx0XHRcdH1cblx0XHR9XG5cdH1cblx0LmhlYWRlcntcblx0XHRtYXJnaW4tdG9wOiAwLjVlbTtcblx0XHRtYXJnaW4tYm90dG9tOiAwLjVlbTtcblx0XHQucXVpY2stYWNjZXNze1xuXHRcdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdFx0LmZvcm0tc2VhcmNoe1xuXHRcdFx0XHRmbG9hdDogbGVmdDtcblx0XHRcdFx0bWFyZ2luOiAwLjVlbSAwIDAgMDtcblx0XHRcdFx0d2lkdGg6IDEwMCU7XG5cdFx0XHRcdGlucHV0e1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRoZWlnaHQ6IDIuMzVlbTtcblx0XHRcdFx0fVxuXHRcdFx0XHRidXR0b257XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdG1hcmdpbi1ib3R0b206IDA7XG5cdFx0XHRcdFx0dmVydGljYWwtYWxpZ246IHRvcDtcblx0XHRcdFx0XHRAZXh0ZW5kIC50aW55O1xuXHRcdFx0XHRcdGhlaWdodDogM2VtO1xuXHRcdFx0XHR9XG5cdFx0XHRcdEBtZWRpYSAjeyRtZWRpdW0tdXB9e1xuXHRcdFx0XHRcdG1hcmdpbjogMS4zZW0gMCAwIDA7XG5cdFx0XHRcdH1cblx0XHRcdFx0I3NlYXJjaF9hdXRvY29tcGxldGV7XG5cdFx0XHRcdFx0dWwgbGl7XG5cdFx0XHRcdFx0XHRib3JkZXI6IDFweCBzb2xpZCAkaXJvbjtcblx0XHRcdFx0XHRcdGJvcmRlci10b3A6IDA7XG5cdFx0XHRcdFx0XHRjb2xvcjogJHByaW1hcnktY29sb3I7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHRcdHotaW5kZXg6IDEwO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59IiwiLnJhdGluZy1ib3h7IFxuXHR3aWR0aDogNjlweDtcblx0aGVpZ2h0OiAxM3B4O1xuXHRmb250LXNpemU6IDA7XG5cdGxpbmUtaGVpZ2h0OiAwO1xuXHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JrZ19yYXRpbmcuZ2lmKSAwIDAgcmVwZWF0LXg7XG5cdHRleHQtaW5kZW50OiAtOTk5ZW07XG5cdG92ZXJmbG93OiBoaWRkZW47XG5cdGNsZWFyOiBib3RoO1xuXHQucmF0aW5ne1xuXHRcdGZsb2F0OiBsZWZ0O1xuXHRcdGhlaWdodDogMTNweDtcblx0XHRiYWNrZ3JvdW5kOiB1cmwoLi4vaW1hZ2VzL2JrZ19yYXRpbmcuZ2lmKSAwIDEwMCUgcmVwZWF0LXg7XG5cdH1cbn1cblxuLy9Qcm9kdWN0IGltYWdlIGdhbGxlcnlcblxuLnByb2R1Y3QtaW1hZ2UtZ2FsbGVyeXtcblx0LmdhbGxlcnktaW1hZ2V7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxuXHQuZ2FsbGVyeS1pbWFnZS52aXNpYmxle1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG59IiwiLmZvcm0tbGFuZ3VhZ2UsIFxuLmZvcm0tc2VhcmNoLCBcbi5zdG9yZS1zd2l0Y2hlciwgXG4udG9vbGJhcntcblx0bGFiZWx7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuLnZpZXctbW9kZSwgLmJsb2NrLXRpdGxle1xuXHRzdHJvbmd7XG5cdFx0ZGlzcGxheTogbm9uZTtcblx0fVxufVxuLmJsb2NrLWN1cnJlbmN5IC5ibG9jay10aXRsZXtcblx0ZGlzcGxheTogbm9uZTtcbn1cbiIsIi5jb2wyLWxlZnQtbGF5b3V0e1xuXHQubGVmdC1vZmYtY2FudmFzLXRvZ2dsZXtcblx0XHRAZXh0ZW5kIC5oaWRkZW4tZm9yLW1lZGl1bS11cDtcblx0fVxufVxuLmNvbDItcmlnaHQtbGF5b3V0e1xuXHQucmlnaHQtb2ZmLWNhbnZhcy10b2dnbGV7XG5cdFx0QGV4dGVuZCAuaGlkZGVuLWZvci1tZWRpdW0tdXA7XG5cdH1cbn1cbi5jb2wzLWxheW91dHtcblx0LmxlZnQtb2ZmLWNhbnZhcy10b2dnbGV7XG5cdFx0QGV4dGVuZCAuaGlkZGVuLWZvci1tZWRpdW0tdXA7XG5cdH1cblx0LnJpZ2h0LW9mZi1jYW52YXMtdG9nZ2xle1xuXHRcdEBleHRlbmQgLmhpZGRlbi1mb3ItbWVkaXVtLXVwO1xuXHR9XG5cdHNwYW4gKyBzcGFue1xuXHRcdHRleHQtYWxpZ246IHJpZ2h0O1xuXHR9XG59XG5AbWVkaWEgI3skc21hbGwtb25seX17XG5cdC5jb2wtbGVmdCxcblx0LmNvbC1yaWdodHtcblx0XHR3aWR0aDogMjA1cHghaW1wb3J0YW50O1xuXHR9XG59XG4ucmlnaHQtb2ZmLWNhbnZhcy10b2dnbGV7XG5cdHRleHQtYWxpZ246IHJpZ2h0O1xufVxuXG5cbi5vZmZjYW52YXMtb3ZlcmxhcCB7XG4gICAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUsIC5yaWdodC1vZmYtY2FudmFzLW1lbnUge1xuICAgICAgICAtbXMtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtd2Via2l0LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW1vei10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1vLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB6LWluZGV4OiAxMDAzO1xuICAgICAgfVxuICAgICAgLmV4aXQtb2ZmLWNhbnZhcyB7IEBpbmNsdWRlIGJhY2stbGluazsgfVxuICAgIH1cbiAgICAub2ZmY2FudmFzLW92ZXJsYXAtbGVmdCB7XG4gICAgICAucmlnaHQtb2ZmLWNhbnZhcy1tZW51IHtcbiAgICAgICAgLW1zLXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLXdlYmtpdC10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC1tb3otdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtby10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgei1pbmRleDogMTAwMztcbiAgICAgIH1cbiAgICAgIC5leGl0LW9mZi1jYW52YXMgeyBAaW5jbHVkZSBiYWNrLWxpbms7IH1cbiAgICB9XG4gICAgLm9mZmNhbnZhcy1vdmVybGFwLXJpZ2h0IHtcbiAgICAgIC5sZWZ0LW9mZi1jYW52YXMtbWVudSB7XG4gICAgICAgIC1tcy10cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIC13ZWJraXQtdHJhbnNmb3JtOiBub25lO1xuICAgICAgICAtbW96LXRyYW5zZm9ybTogbm9uZTtcbiAgICAgICAgLW8tdHJhbnNmb3JtOiBub25lO1xuICAgICAgICB0cmFuc2Zvcm06IG5vbmU7XG4gICAgICAgIHotaW5kZXg6IDEwMDM7XG4gICAgICB9XG4gICAgICAuZXhpdC1vZmYtY2FudmFzIHsgQGluY2x1ZGUgYmFjay1saW5rOyB9XG4gICAgfVxuXG4gICAgLy8gT2xkZXIgYnJvd3NlcnNcbiAgICAubm8tY3NzdHJhbnNmb3JtcyB7XG4gICAgICAubGVmdC1vZmYtY2FudmFzLW1lbnUgeyBsZWZ0OiAtKCRvZmYtY2FudmFzLXdpZHRoKTsgfVxuICAgICAgLnJpZ2h0LW9mZi1jYW52YXMtbWVudSB7IHJpZ2h0OiAtKCRvZmYtY2FudmFzLXdpZHRoKTsgfVxuXG4gICAgICAubW92ZS1sZWZ0ID4gLmlubmVyLXdyYXAgeyByaWdodDogJG9mZi1jYW52YXMtd2lkdGg7IH1cbiAgICAgIC5tb3ZlLXJpZ2h0ID4gLmlubmVyLXdyYXAgeyBsZWZ0OiAkb2ZmLWNhbnZhcy13aWR0aDsgfVxuICAgIH1cblxuICAgIC5sZWZ0LXN1Ym1lbnUge1xuICAgICAgQGluY2x1ZGUgb2ZmLWNhbnZhcy1zdWJtZW51KCRwb3NpdGlvbjogbGVmdCk7XG4gICAgICAmLm1vdmUtcmlnaHQsICYub2ZmY2FudmFzLW92ZXJsYXAtcmlnaHQsICYub2ZmY2FudmFzLW92ZXJsYXAge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwJSwwLDApO1xuICAgICAgfVxuICAgIH1cblxuICAgIC5yaWdodC1zdWJtZW51IHtcbiAgICAgIEBpbmNsdWRlIG9mZi1jYW52YXMtc3VibWVudSgkcG9zaXRpb246IHJpZ2h0KTtcbiAgICAgICYubW92ZS1sZWZ0LCAmLm9mZmNhbnZhcy1vdmVybGFwLWxlZnQsICYub2ZmY2FudmFzLW92ZXJsYXAge1xuICAgICAgICBAaW5jbHVkZSB0cmFuc2xhdGUzZCgwJSwwLDApO1xuICAgICAgfVxuICAgIH1cbiAgICBcbiAgICBcbiAgICB1bC5vZmYtY2FudmFzLWxpc3QgbGkgYSB7XG4gICAgICAgIGJvcmRlci1ib3R0b206IDFweCBzb2xpZCAjYmJiYmJiO1xuICAgICAgICBjb2xvcjogIzMzMztcbiAgICAgICAgZGlzcGxheTogYmxvY2s7XG4gICAgICAgIHBhZGRpbmc6IDAuNjY2NjdyZW07XG4gICAgICAgIHRyYW5zaXRpb246IGJhY2tncm91bmQgMzAwbXMgZWFzZTtcbiAgICB9XG4iLCIvL1Byb2R1Y3QgcGFnZVxuXG5cblxuLnByb2R1Y3QtaW5mby1oZWFkaW5ne3BhZGRpbmc6NHB4IDIwcHggMHB4IDEycHg7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2JhY2tncm91bmQtY29sb3I6I2NmZDRlNDtjb2xvcjojMTExO2ZvbnQtd2VpZ2h0OmJvbGQ7bWFyZ2luOjA7bGluZS1oZWlnaHQ6MS42NjY2ZW07Zm9udC1zaXplOjE2cHg7bWFyZ2luLWJvdHRvbTo4cHg7bWFyZ2luLXRvcDo4cHh9XG5cblxuXG5cbi5wcm9kdWN0LWNvbGxhdGVyYWwgLnJvdyB7XG4gICAgbWFyZ2luOiAwIGF1dG87XG4gICAgbWF4LXdpZHRoOiA5OCU7XG4gICAgd2lkdGg6IDEwMCU7XG59XG5cbiAgICBcbiAgICBcbiAgICAgLnByb2R1Y3QtaW5mby1oZWFkaW5nMiB7XG4gICAgICAgIGhlaWdodDogMzdweDtcbiAgICAgICAgYm9yZGVyOiAwcHg7XG4gICAgICAgIHBhZGRpbmc6IDdweCAxNXB4IDBweDtcbiAgICAgICAgYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnQ7XG4gICAgICAgIGJhY2tncm91bmQtcmVwZWF0OiBuby1yZXBlYXQ7XG4gICAgICAgIGJhY2tncm91bmQtaW1hZ2U6IHVybChcIi4uL2ltYWdlcy9wZHBfYmFyXzkwMC5wbmdcIik7XG4gICAgfVxuICAgIFxuICAgIFxuICAgIFxuICAgIFxuICAgIFxuICAgIFxuICAgIFxuICAgIFxuICAgXG5cbi5wcm9kdWN0LWltZy1ib3h7IFxuXHQucHJvZHVjdC1pbWFnZS1nYWxsZXJ5e1xuXHRcdGltZ3tcblx0XHRcdG1heC13aWR0aDogMTAwJTtcblx0XHRcdG1heC1oZWlnaHQ6IDc1MHB4O1xuXHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0fVxuXHR9XG59XG5cbi5wcm9kdWN0LXNsaWRlcntcblx0LmJ4LXdyYXBwZXJ7XG5cdFx0cG9zaXRpb246IHJlbGF0aXZlO1xuXHRcdG1hcmdpbjogMCBhdXRvO1xuXHRcdC5zbGlkZXN7XG5cdFx0XHRsaXtcblx0XHRcdFx0YXtcblx0XHRcdFx0XHR3aWR0aDogNzBweDtcblx0XHRcdFx0XHRkaXNwbGF5OiBibG9jazsgXG5cdFx0XHRcdFx0bWFyZ2luOiAwIGF1dG87XG5cdFx0XHRcdH1cblx0XHRcdH1cblx0XHR9XG5cdFx0LmJ4LWNvbnRyb2xzLWRpcmVjdGlvbntcblx0XHRcdC5ieC1wcmV2e1xuXHRcdFx0XHRwb3NpdGlvbjogYWJzb2x1dGU7XG5cdFx0XHRcdHRvcDogMTJweDtcblx0XHRcdFx0bGVmdDogLTEwcHg7XG5cdFx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMTA0XCI7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1xuXHRcdFx0XHRcdGZvbnQtc2l6ZTogMzBweDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdFx0LmJ4LW5leHR7XG5cdFx0XHRcdHBvc2l0aW9uOiBhYnNvbHV0ZTtcblx0XHRcdFx0dG9wOiAxMnB4O1xuXHRcdFx0XHRyaWdodDogLTEwcHg7XG5cdFx0XHRcdCY6YmVmb3Jle1xuXHRcdFx0XHRcdGNvbnRlbnQ6IFwiXFxmMTA1XCI7XG5cdFx0XHRcdFx0Zm9udC1mYW1pbHk6IEZvbnRBd2Vzb21lO1x0XG5cdFx0XHRcdFx0Zm9udC1zaXplOiAzMHB4O1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fVxuXHR9XG59XG5cbi5wcm9kdWN0LWNvbGxhdGVyYWx7XG5cdGNsZWFyOiBib3RoO1xufVxuXG4uYWRkLXRvLWNhcnQsXG4uYWRkLXRvLWNhcnQtYWx0e1xuXHQucXVhbnRpdHl7XG5cdFx0aXtcblx0XHRcdGN1cnNvcjogcG9pbnRlcjtcblx0XHR9XG5cdFx0aW5wdXR7XG5cdFx0XHRkaXNwbGF5OiBpbmxpbmUtYmxvY2s7XG5cdFx0XHR3aWR0aDogNTBweDtcblx0XHR9XG5cdH1cbn1cblxuLmJveC1yZXZpZXdze1xuXHQuZm9ybS1hZGR7XG5cdFx0LmJ1dHRvbnMtc2V0e1xuXHRcdFx0LmJ1dHRvbntcblx0XHRcdFx0ZmxvYXQ6IHJpZ2h0O1xuXHRcdFx0fVxuXHRcdH1cblx0fVxufSIsIi8vUmVzcG9uc2l2ZSB0YWJsZXNcblxuQG1lZGlhICN7JHNtYWxsLW9ubHl9IHtcblx0I3Nob3BwaW5nLWNhcnQtdGFibGUsXG5cdCN3aXNobGlzdC10YWJsZSxcblx0I215LXRhZ3MtdGFibGV7XG5cdFx0dGhlYWR7XG5cdFx0XHRkaXNwbGF5OiBub25lO1xuXHRcdH1cblx0XHR0Ym9keXtcblx0XHRcdHRye1xuXHRcdFx0XHRwb3NpdGlvbjogcmVsYXRpdmU7XG5cdFx0XHRcdGJhY2tncm91bmQ6ICR3aGl0ZTtcblx0XHRcdFx0Ym9yZGVyLWJvdHRvbTogMXB4IHNvbGlkICRzaWx2ZXI7XG5cdFx0XHR9XG5cdFx0XHR0ZHtcblx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHR0ZXh0LWFsaWduOiBsZWZ0O1xuXHRcdFx0fVxuXHRcdFx0ZGx7XG5cdFx0XHRcdGR0e1xuXHRcdFx0XHRcdGRpc3BsYXk6IGlubGluZS1ibG9jaztcblx0XHRcdFx0XHRwYWRkaW5nOiAwIDAgMCAxZW07XG5cdFx0XHRcdH1cblx0XHRcdFx0ZGR7XG5cdFx0XHRcdFx0ZGlzcGxheTogaW5saW5lLWJsb2NrO1xuXHRcdFx0XHRcdHBhZGRpbmc6IDAgMWVtIDAgMDtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXHQjbXktb3JkZXJzLXRhYmxlLFxuXHQjbXktZG93bmxvYWRhYmxlLXByb2R1Y3RzLXRhYmxlLFxuXHQjbXktcmV2aWV3cy10YWJsZSxcblx0I3Byb2R1Y3RfY29tcGFyaXNvbntcblx0XHRvdmVyZmxvdy14OiBhdXRvO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1xuXHR9XG5cbn1cblxuQG1lZGlhICN7JG1lZGl1bS1vbmx5fSB7XG5cdCNteS1vcmRlcnMtdGFibGUsXG5cdCNteS1kb3dubG9hZGFibGUtcHJvZHVjdHMtdGFibGUsXG5cdCNteS1yZXZpZXdzLXRhYmxlLFxuXHQuY2FydC10YWJsZS13cmFwcGVyLFxuXHQud2lzaGxpc3QtdGFibGUtd3JhcHBlcixcblx0I3Byb2R1Y3RfY29tcGFyaXNvbntcblx0XHRvdmVyZmxvdy14OiBhdXRvO1xuXHRcdGRpc3BsYXk6IGJsb2NrO1x0XG5cdH1cbn1cblxuQG1lZGlhIG9ubHkgc2NyZWVuIGFuZCAobWF4LXdpZHRoOiAkbWVkaXVtLWJyZWFrcG9pbnQpe1xuXHQjcHJvZHVjdC1yZXZpZXctdGFibGV7XG5cdFx0d2lkdGg6IDEwMCU7XG5cdFx0dGh7XG5cdFx0XHRmb250LXdlaWdodDogMjAwO1xuXHRcdFx0cGFkZGluZzogMC4zcmVtO1xuXHRcdH1cblx0fVxufVxuXG4jbXktdGFncy10YWJsZXtcblx0d2lkdGg6IDEwMCU7XG5cdGltZ3tcblx0XHRtYXgtd2lkdGg6IGluaGVyaXQ7XG5cdH1cbn1cblxuLndpc2hsaXN0LXRhYmxlLXdyYXBwZXJ7XG5cdGZpZWxkc2V0e1xuXHRcdHBhZGRpbmc6IDA7XG5cdH1cbn0iLCIudG9wLWNhcnR7XG5cdHBhZGRpbmc6IDFlbTtcblx0d2lkdGg6IDIyMHB4O1xuXHQucmlnaHQtb2ZmLWNhbnZhcy10b2dnbGV7XG5cdFx0dGV4dC1hbGlnbjogbGVmdDtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHQuYnRuLXJlbW92ZXtcblx0XHRkaXNwbGF5OiBibG9jaztcblx0fVxuXHQucHJpY2UtdG90YWx7XG5cdFx0bWFyZ2luOiAxZW0gMDtcblx0XHRjb2xvcjogJHN1Y2Nlc3MtY29sb3I7XG5cdFx0dGV4dC1hbGlnbjogY2VudGVyO1xuXHR9XG5cdC5idG4tY2FydCxcblx0LmJ0bi1jaGVja291dHtcblx0XHRAZXh0ZW5kIC5idXR0b247XG5cdFx0QGV4dGVuZCAudGlueTtcblx0fVxuXHQuYnRuLWNoZWNrb3V0e1xuXHRcdGZsb2F0OiByaWdodDtcblx0fVxufSIsIlxuLy9JbXBvcnQgRm91bmRhdGlvbiBieSBaVVJCXG5AaW1wb3J0IFwic2V0dGluZ3NcIjtcbkBpbXBvcnQgXCJmb3VuZGF0aW9uXCI7XG5cbi8vSW1wb3J0IEZvbnQgQXdlc29tZVxuJGZhLWZvbnQtcGF0aDogXCIuLi9ib3dlcl9jb21wb25lbnRzL2NvbXBvbmVudHMtZm9udC1hd2Vzb21lL2ZvbnRzXCI7XG5AaW1wb3J0IFwiLi4vLi4vYm93ZXJfY29tcG9uZW50cy9jb21wb25lbnRzLWZvbnQtYXdlc29tZS9zY3NzL2ZvbnQtYXdlc29tZVwiO1xuXG4vL0N1c3RvbSBzY3NzXG5AaW1wb3J0IFwiY3VzdG9tL2dyaWRcIjtcbkBpbXBvcnQgXCJjdXN0b20vYWNjb3VudFwiO1xuQGltcG9ydCBcImN1c3RvbS9hbGVydHNcIjtcbkBpbXBvcnQgXCJjdXN0b20vYnJlYWRjcnVtYnNcIjtcbkBpbXBvcnQgXCJjdXN0b20vYnJvd3NlclwiO1xuQGltcG9ydCBcImN1c3RvbS9idXR0b25zXCI7XG5AaW1wb3J0IFwiY3VzdG9tL2NhcnRcIjtcbkBpbXBvcnQgXCJjdXN0b20vY2F0YWxvZ1wiO1xuQGltcG9ydCBcImN1c3RvbS9jaGVja291dFwiO1xuQGltcG9ydCBcImN1c3RvbS9jbXNcIjtcbkBpbXBvcnQgXCJjdXN0b20vZm9vdGVyXCI7XG5AaW1wb3J0IFwiY3VzdG9tL2dsb2JhbHNcIjtcbkBpbXBvcnQgXCJjdXN0b20vaGVhZGVyXCI7XG5AaW1wb3J0IFwiY3VzdG9tL2ltZ1wiO1xuQGltcG9ydCBcImN1c3RvbS9sYWJlbHNcIjtcbkBpbXBvcnQgXCJjdXN0b20vb2ZmY2FudmFzXCI7XG5AaW1wb3J0IFwiY3VzdG9tL3Byb2R1Y3RcIjtcbkBpbXBvcnQgXCJjdXN0b20vdGFibGVzXCI7XG5AaW1wb3J0IFwiY3VzdG9tL3RvcC1jYXJ0XCI7XG5cblxuXG5cblxuXG5cblxuLnRvcC1jYXJ0IHtcbiAgcGFkZGluZzogMWVtO1xuICB3aWR0aDogMjIwcHg7IH1cbiAgLnRvcC1jYXJ0IC5yaWdodC1vZmYtY2FudmFzLXRvZ2dsZSB7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICBkaXNwbGF5OiBibG9jazsgfVxuICAudG9wLWNhcnQgLmJ0bi1yZW1vdmUge1xuICAgIGRpc3BsYXk6IGJsb2NrOyB9XG4gIC50b3AtY2FydCAucHJpY2UtdG90YWwge1xuICAgIG1hcmdpbjogMWVtIDA7XG4gICAgY29sb3I6ICM0M0FDNkE7XG4gICAgdGV4dC1hbGlnbjogY2VudGVyOyB9XG4gIC50b3AtY2FydCAuYnRuLWNoZWNrb3V0IHtcbiAgICBmbG9hdDogcmlnaHQ7IH1cbiAgICBcblxuLnByb2R1Y3QtaW5mby1oZWFkaW5nIHtcbiAgICBwYWRkaW5nOiA0cHggMjBweCAwcHggMTJweDtcbiAgICB0ZXh0LXRyYW5zZm9ybTogdXBwZXJjYXNlO1xuICAgIGJhY2tncm91bmQtY29sb3I6ICNjZmQ0ZTQ7XG4gICAgY29sb3I6ICMxMTE7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gICAgbWFyZ2luOiAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY2NjZlbTtcbiAgICBmb250LXNpemU6IDE2cHg7XG4gICAgbWFyZ2luLWJvdHRvbTogOHB4O1xuICAgIG1hcmdpbi10b3A6IDhweDtcbn1cbi5wcm9kdWN0LW9wdGlvbnMtYm90dG9tIHtcbiAgICBiYWNrZ3JvdW5kLWNvbG9yOiAjZjRmNGY0O1xuICAgIHBhZGRpbmc6IDE1cHggMjBweDsgXG4gICAgYm9yZGVyOiAxcHggc29saWQgI2NjY2NjYztcbiAgICBib3JkZXItdG9wOiAwO1xuICAgIG1hcmdpbi1ib3R0b206IDEwcHg7XG59XG5cblxuXG4ucmVsYXRlZC1pbmZvIHtcblx0d2lkdGg6IDEwMCU7XHRjbGVhcjogYm90aDtcbn1cbiAgICBcbiAgIFxuICAgXG4gICAgXG4gICAgXG4gICAgXG4gICAudGFiLWJhciAuYnRuLWNhcnQge1xuICAgICAgIHBvc2l0aW9uOiBmaXhlZDtcbiAgICAgICAvKiB0b3A6IDIuNWVtOyAqL1xuICAgICAgIHJpZ2h0OiAwO1xuICAgICAgIHBhZGRpbmc6IDAuNWVtO1xuICAgICAgIG1hcmdpbi10b3A6IC0wLjVlbTtcbiAgICAgICBiYWNrZ3JvdW5kOiAjMDA4Q0JBO1xuICAgICAgIHotaW5kZXg6IDU7XG4gICAgICAgbWF4LWhlaWdodDogNTNweDtcbiAgIH1cbiAgICAgIFxuICAgICAgXG4gICAgICAudGFiLWJhciAuYnRuLWNhcnQgc3BhbiB7XG4gICAgICAgIGJhY2tncm91bmQ6ICNGRkZGRkY7XG4gICAgICAgIGJvcmRlci1yYWRpdXM6IDUwJTtcbiAgICAgICAgcGFkZGluZzogMCAwLjNlbTtcbiAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICBib3R0b206IDdweDsgfVxuICAgICAgLnRhYi1iYXIgLmJ0bi1jYXJ0OmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6IFwiXFxmMDdhXCI7XG4gICAgICAgIGZvbnQtZmFtaWx5OiBGb250QXdlc29tZTtcbiAgICAgICAgY29sb3I6ICNGRkZGRkY7XG4gICAgICAgIGZvbnQtc2l6ZTogMjBweDtcbiAgICAgICAgcGFkZGluZzogMCAwLjNlbSAwIDA7IH1cbiAgICAgIEBtZWRpYSBvbmx5IHNjcmVlbiBhbmQgKG1pbi13aWR0aDogNDAuMDYyNWVtKSB7XG4gICAgICAgIC5oZWFkZXItY29udGFpbmVyIC50YWItYmFyIC5idG4tY2FydCB7XG4gICAgICAgICAgdG9wOiAyLjhlbTsgfSB9XG4gICAgXG4gICAgXG4gICAgXG4gICAgXG4gICAgIC5mb290ZXItd3JhcHBlcntiYWNrZ3JvdW5kLWltYWdlOnVybChcIi4uL2ltYWdlcy9iZ19mb290ZXItcGF0dGVybi5qcGdcIil9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMtc2hhZG93e2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiLi4vaW1hZ2VzL2JnX2Zvb3Rlcl9zaGFkb3cucG5nXCIpO2JhY2tncm91bmQtcmVwZWF0OnJlcGVhdC15O2JhY2tncm91bmQtcG9zaXRpb246dG9wIGNlbnRlcn0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9uc3t3aWR0aDo5NDBweDttYXJnaW46MCBhdXRvO21pbi1oZWlnaHQ6MTg1cHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmZvb3Rlci10b3AtY29udGFpbmVye3dpZHRoOjkwMHB4O21hcmdpbjowIGF1dG87Y2xlYXI6Ym90aH0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuZm9vdGVyLXRvcC1pdGVte2Zsb2F0OmxlZnQ7Y29sb3I6I2NjYzttaW4taGVpZ2h0OjE1MHB4O3RleHQtYWxpZ246bGVmdDtwYWRkaW5nOjIycHggMjBweCAwIDEwcHg7YmFja2dyb3VuZC1pbWFnZTp1cmwoXCIuLi9pbWFnZXMvZnRfbGlnaHQucG5nXCIpO2JhY2tncm91bmQtcmVwZWF0Om5vLXJlcGVhdDtiYWNrZ3JvdW5kLXBvc2l0aW9uOnJpZ2h0IC0ycHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmZvb3Rlci10b3AtaXRlbSBoM3tjb2xvcjojNjRDQ0Y5O2ZvbnQtc2l6ZToxNnB4O21hcmdpbi1ib3R0b206MTVweH0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuZm9vdGVyLXRvcC1pdGVtIHNwYW57Zm9udC1zaXplOjEuMTVlbTttYXJnaW4tYm90dG9tOjlweDtkaXNwbGF5OmlubGluZS1ibG9ja30gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuZm9vdGVyLXRvcC1pdGVtIHNwYW4gYXtjb2xvcjojY2NjfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5mb290ZXItdG9wLWl0ZW0gc3Bhbi5kZXRhaWx7d2lkdGg6MTAwJTtmb250LXNpemU6MS4wNWVtfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5mb290ZXItdG9wLWl0ZW0gc3Bhbi5wcml2YWN5e2hlaWdodDoxN3B4O2xpbmUtaGVpZ2h0OjE3cHg7cGFkZGluZy1sZWZ0OjE5cHg7bWFyZ2luLXRvcDo3cHg7YmFja2dyb3VuZC1pbWFnZTp1cmwoXCIuLi9pbWFnZXMvcGFkbG9jay5wbmdcIik7YmFja2dyb3VuZC1yZXBlYXQ6bm8tcmVwZWF0O2JhY2tncm91bmQtcG9zaXRpb246bGVmdCAwcHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmZvb3Rlci10b3AtaXRlbSBhLnN1cnZleXt3aWR0aDoxMzhweDtoZWlnaHQ6MjVweDtkaXNwbGF5OmlubGluZS1ibG9jaztiYWNrZ3JvdW5kLWltYWdlOnVybChcIi4uL2ltYWdlcy9idG5fc3VydmV5LnBuZ1wiKTt0ZXh0LWRlY29yYXRpb246bm9uZX0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuZm9vdGVyLXRvcC1pdGVtIGEucXVvdGV7d2lkdGg6MTYzcHg7aGVpZ2h0OjI1cHg7bWFyZ2luOi0zcHggMCAzcHggMDtkaXNwbGF5OmlubGluZS1ibG9jaztiYWNrZ3JvdW5kLWltYWdlOnVybChcIi4uL2ltYWdlcy9idG5fcXVvdGUucG5nXCIpfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5mb290ZXItdG9wLWl0ZW0gYS5mb290ZXItdG9wLWJ0bnttaW4td2lkdGg6NzBweDtoZWlnaHQ6MjBweDtwYWRkaW5nOjRweCAyMHB4IDA7bWFyZ2luOi0zcHggMCAzcHggMDtkaXNwbGF5OmlubGluZS1ibG9jaztib3JkZXItcmFkaXVzOjNweDtjb2xvcjojZmZmO3RleHQtdHJhbnNmb3JtOnVwcGVyY2FzZTt0ZXh0LWRlY29yYXRpb246bm9uZTtmb250LXNpemU6MTJweDtmb250LWZhbWlseTpcIlJvYm90b19CbGFja1wiLFwidmVyZGFuYVwiLHNhbnMtc2VyaWY7YmFja2dyb3VuZC1jb2xvcjojMDA4Q0M4fSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5mb290ZXItdG9wLWl0ZW0gZm9ybXt3aWR0aDoxMDAlO2Rpc3BsYXk6aW5saW5lLWJsb2NrfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5mb290ZXItdG9wLWl0ZW0gZm9ybSAuZm9ybS1zdWJzY3JpYmV7d2lkdGg6MTAwJX0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuZm9vdGVyLXRvcC1pdGVtIGZvcm0gLmZvcm0tc3Vic2NyaWJlLWhlYWRlcntkaXNwbGF5Om5vbmV9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmZvb3Rlci10b3AtaXRlbSBmb3JtIGlucHV0e3dpZHRoOjE3NXB4O2hlaWdodDoyMHB4O2xpbmUtaGVpZ2h0OjIwcHg7Ym9yZGVyOjFweCBzb2xpZCAjMzMzfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5mb290ZXItdG9wLWl0ZW0gZm9ybSBidXR0b257d2lkdGg6NzdweDtoZWlnaHQ6MjVweDttYXJnaW46MCAxNXB4IDAgMDtiYWNrZ3JvdW5kLWltYWdlOnVybChcIi4uL2ltYWdlcy9idG5fc2lnbnVwLnBuZ1wiKX0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuZm9vdGVyLXRvcC1pdGVtIGZvcm0gYnV0dG9uIHNwYW57ZGlzcGxheTpub25lfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5mb290ZXItdG9wLWl0ZW0gLnNvY2lhbHtvdmVyZmxvdy14OmhpZGRlbjttaW4taGVpZ2h0OjMwcHg7bWF4LXdpZHRoOjEyMHB4fSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5mb290ZXItdG9wLWl0ZW0gLnNvY2lhbCBzcGFue2Zsb2F0OmxlZnQ7ZGlzcGxheTpibG9ja30gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuZm9vdGVyLXRvcC1pdGVtIC5zb2NpYWwgc3BhbiBhe2Rpc3BsYXk6YmxvY2s7d2lkdGg6MjhweDtoZWlnaHQ6MjhweDttYXJnaW46MCAxNHB4IDVweCAwO3RleHQtaW5kZW50Oi05OTk5cHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmZvb3Rlci10b3AtaXRlbSAuc29jaWFsIHNwYW4gLnl0e2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiLi4vaW1hZ2VzL3NvY2lhbC5wbmdcIik7YmFja2dyb3VuZC1wb3NpdGlvbjowcHggMHB4O21hcmdpbi1yaWdodDoxcHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmZvb3Rlci10b3AtaXRlbSAuc29jaWFsIHNwYW4gLnR3e2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiLi4vaW1hZ2VzL3NvY2lhbC5wbmdcIik7YmFja2dyb3VuZC1wb3NpdGlvbjotNDBweCAwcHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmZvb3Rlci10b3AtaXRlbSAuc29jaWFsIHNwYW4gLmZie2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiLi4vaW1hZ2VzL3NvY2lhbC5wbmdcIik7YmFja2dyb3VuZC1wb3NpdGlvbjowcHggLTQxcHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmZvb3Rlci10b3AtaXRlbSAuc29jaWFsIHNwYW4gLmxue2JhY2tncm91bmQtaW1hZ2U6dXJsKFwiLi4vaW1hZ2VzL3NvY2lhbC5wbmdcIik7YmFja2dyb3VuZC1wb3NpdGlvbjotNDBweCAtNDBweH0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuYmxvY2sxe3dpZHRoOjEyMHB4fSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5ibG9jazJ7d2lkdGg6MjgwcHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmJsb2NrM3t3aWR0aDoxNzBweH0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItYWN0aW9ucyAuYmxvY2szIHNwYW57d2lkdGg6OTIlfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1hY3Rpb25zIC5ibG9jazR7d2lkdGg6MjMwcHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWFjdGlvbnMgLmxhc3R7cGFkZGluZy1yaWdodDowcHg7YmFja2dyb3VuZC1pbWFnZTpub25lfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXN7YmFja2dyb3VuZC1jb2xvcjojREFEQkREO3BhZGRpbmctYm90dG9tOjMwcHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWNtcyAuZm9vdGVyLWNvbnRhaW5lciwgLmZvb3Rlci13cmFwcGVyIC5mb290ZXItY21zIC5jb3B5cmlnaHR7d2lkdGg6OTQwcHg7bWFyZ2luOjAgYXV0bztiYWNrZ3JvdW5kOm5vbmU7Ym9yZGVyOm5vbmU7Zm9udC1zaXplOjEuMDdlbTt0ZXh0LWFsaWduOmxlZnR9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWNtcyAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyLCAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmNvcHlyaWdodCAuZm9vdGVye3BhZGRpbmctbGVmdDoxLjMlO3BhZGRpbmctYm90dG9tOjEwcHg7YmFja2dyb3VuZC1pbWFnZTpub25lfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmZvb3Rlci1jb250YWluZXIgLmZvb3RlciBmb3JtLCAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmNvcHlyaWdodCAuZm9vdGVyIGZvcm17ZGlzcGxheTpub25lfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmZvb3Rlci1jb250YWluZXIgLmZvb3RlciAuY29sbGFwc2libGUsIC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWNtcyAuY29weXJpZ2h0IC5mb290ZXIgLmNvbGxhcHNpYmxle3dpZHRoOmF1dG87ZmxvYXQ6bGVmdDtwYWRkaW5nOjAgNC41JSAwIDIlfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmZvb3Rlci1jb250YWluZXIgLmZvb3RlciAuY29sbGFwc2libGUgLmJsb2NrLXRpdGxlLCAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmNvcHlyaWdodCAuZm9vdGVyIC5jb2xsYXBzaWJsZSAuYmxvY2stdGl0bGV7dGV4dC10cmFuc2Zvcm06dXBwZXJjYXNlO2ZvbnQtc2l6ZToxMnB4O2NvbG9yOiMxMTE7cGFkZGluZy1ib3R0b206NXB4fSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmZvb3Rlci1jb250YWluZXIgLmZvb3RlciAuY29sbGFwc2libGUgdWwsIC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWNtcyAuY29weXJpZ2h0IC5mb290ZXIgLmNvbGxhcHNpYmxlIHVse3dpZHRoOmF1dG87bWFyZ2luOjB9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWNtcyAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIC5jb2xsYXBzaWJsZSB1bCBsaSwgLmZvb3Rlci13cmFwcGVyIC5mb290ZXItY21zIC5jb3B5cmlnaHQgLmZvb3RlciAuY29sbGFwc2libGUgdWwgbGl7bWFyZ2luLWJvdHRvbTo0cHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWNtcyAuZm9vdGVyLWNvbnRhaW5lciAuZm9vdGVyIC5jb2xsYXBzaWJsZSB1bCBsaSBhLCAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmNvcHlyaWdodCAuZm9vdGVyIC5jb2xsYXBzaWJsZSB1bCBsaSBhe2NvbG9yOiMzMzM7Zm9udC1zaXplOjEycHg7bGluZS1oZWlnaHQ6MTNweDt0ZXh0LXRyYW5zZm9ybTpjYXBpdGFsaXplfSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmNvcHlyaWdodHtkaXNwbGF5OmJsb2NrO3BhZGRpbmctbGVmdDozNXB4fSAuZm9vdGVyLXdyYXBwZXIgLmZvb3Rlci1jbXMgLmNvcHlyaWdodCBzcGFue2Rpc3BsYXk6aW5saW5lLWJsb2NrO21hcmdpbjo0cHggMCAwIDIwcHh9IC5mb290ZXItd3JhcHBlciAuZm9vdGVyLWNtcyAuY29weXJpZ2h0IHNwYW4gcHtmbG9hdDpyaWdodH0gLmZvb3Rlci13cmFwcGVyIC5mb290ZXItY21zIC5jb3B5cmlnaHQgc3BhbiBzcGFue21hcmdpbjowIDAgMCA5cHg7cGFkZGluZy1sZWZ0OjlweDtib3JkZXItbGVmdDoxcHggc29saWQgIzc3N31cbiAgICBcbiAgICAgICAgXG4gICAgXG4gICAgXG4gICAgXG4gICAgXG4gICAgXG4gICAgXG5cblxuXG5cblxuIl0sInNvdXJjZVJvb3QiOiIvc291cmNlLyJ9 */